This release includes many new and improved features.

Highlights


  • Set up ENVI Servers to run ENVI tasks and models in the background and in parallel. Or, set up remote ENVI Servers that can be used as network resources for distributed processing.
  • Updated software libraries reduce security vulnerabilities and improve performance when running ENVI.
  • ENVI supports GOES-17 and Zhuhai-1 hyperspectral data.
  • Performance improvements: ENVI opens, displays, reads pixels from, and processes NITF files up to 50% faster. QUAC atmospheric correction is also faster due to more efficient access to data during tile processing.
  • U.S. Geological Survey Spectral Library Version 7 was added to the spectral libraries that are included with ENVI.
  • Esri integration: ENVI works with newer versions of ArcGIS software and can upload shapefiles to an ArcGIS Portal or ArcGIS Online account.
  • ENVI has better support for OGC WCS datasets.
  • Improvements to views: New layout options are available, linked views can rotate together, and task previews work much better.
  • Improvements to ROIs: New keyboard and mouse shortcuts, Magic Wand tool, masked pixels within ROIs, and other new features.
  • Four new vector tools are available for processing shapefiles.
  • The Go To tool now supports geographic lookup table (GLT) spatial reference coordinates.
  • A new API is available for creating step-by-step workflows in ENVI programs.
  • New API routines and tasks, as well as other API enhancements, are available to assist ENVI programmers.

See the detailed sections that follow.

ENVI Server


Starting with ENVI 5.6, you can upgrade your ENVI installation to become an ENVI Server at no extra cost. This will allow you to run ENVI tasks and models in the background and in parallel. Any Windows or Linux computer with both ENVI and Geospatial Services Framework 2.3 installed is considered an ENVI Server. You can monitor the status of jobs and view the results when each job is complete. You can also define remote ENVI Servers that will be used as network resources for distributed processing.

ENVI Modeler Iterator nodes have a new button that lets you define one or more ENVI Servers on which to batch-process multiple jobs.

See the Working with ENVI Servers Tutorial and ENVI Servers help topic to get started using these new features.

Finally, ENVI programmers can use the ENVIServer API routine to define ENVI Servers and run jobs in the background, in parallel, or in distributed environments.

Updated Software Libraries


IDL and ENVI use many underlying third-party software libraries, which require ongoing updates and maintenance. Most of these have been updated to the latest version. This reduce security vulnerabilities and improves performance when running the software. For a complete list of library updates, see the ENVI 5.6 release notes.

Updated USGS Spectral Libraries


ENVI now includes "U.S. Geological Survey Spectral Library Version 7" along with the other spectral libraries that were previously available. Version 7 contains a total of 2,457 individual spectra from artificial materials, coatings, liquids, minerals, organics, soils, and vegetation. Version 7 is located in the \resource\speclib\usgs_v7 directory of the ENVI installation path. For more information about this set of spectral libraries, see the readme.txt file in the usgs_v7 directory, or consult the following reference:

Kokaly, R., et al. "USGS Spectral Library Version 7." U.S. Geological Survey Data Series 1035 (2017).

Version 6 from 2007 is still available in the \resource\speclib\usgs_v6 directory.

Use the Spectral Library Viewer to access and plot the USGS Version 7 spectra, along with the other spectral libraries that ENVI provides.

Esri Integration


ENVI now works with ArcGIS Pro version 2.5 and ArcMap version 10.8.

Use the new Upload Vector to ArcGIS Portal tool to upload shapefiles from ENVI to an ArcGIS Portal or ArcGIS Online account.

Improvements to OGC WCS Support


The Remote Connection Manager and ENVI::OpenRaster API routine support Open Geospatial Consortium (OGC) Web Coverage Service (WCS) versions 1.1.x and 2.0.1; specifically, GeoServer, MapServer, Jagwire, and ArcGIS Server 10.7 and 10.8.

Improvements to Views


The File > Views & Layers menu option was renamed to File > ENVI Session.

Four new layout options are available in the Views menu:

Similarly, ENVI programmers can specify these new view layouts when invoking the ENVI display. See the Programming section below for details.

Multiple pixel-linked and geo-linked views will rotate at the same time.

Finally, the Preview experience has improved in task-based tools such as QUAC, Spectral Indices, and others. You can preview the results of a task while panning, zooming, and rotating. Refreshing the preview is much faster now.

Improvements to Regions of Interest (ROIs)


With polygon ROIs, you can use a shortcut to draw a rectangle at an angle: Click two vertices to define one side of the rectangle. These two points determine the angle at which the rectangle will be drawn. Press and hold the Shift key and drag the previewed rectangle to the end of the object. Click the mouse when you are ready to accept the rectangle.

You can also rotate a ROI as follows: Draw a shape, then right-click in the view and select Complete shape type. Move the cursor near the center handle and click the Shift key. A rotation icon appears (see the circled icon in the figure below). Click and drag to rotate the object as needed, then release the mouse key.

Examples:

Use the new Magic Wand tool to grow ROI polygons from one or more "seed" pixels. This tool facilitates drawing ROI polygons around complex objects such as clouds, tree crowns, and lakes. With the Region of Interest (ROI) Tool displayed, hold down the Ctrl key and click on a pixel inside of the object. An initial polygon is drawn, and the Magic Wand Parameters dialog appears. You can adjust the threshold and experiment with other parameters to better refine the shape of the object.

If one or more ROIs include pixels that are masked in the source image (i.e., they have a Data Ignore Value set), a new "Mask Count" column reports the number of those ROI pixels that were omitted from the statistics computation. The "Mask Count" column is located in the ROI Statistics dialog; for example:

Finally, a new Remove Holes right-click option is available for multi-part ROIs.

Vector Processing Tools


Four new tools are available in the ENVI Toolbox:

  • Filter Vector: Create a new shapefile containing only vector records that fall within specified minimum and/or maximum values.
  • Smooth Vector: Reduce the number of vertices in each input record of a polyline or polygon vector. The output is a new shapefile.
  • Vector to Bounding Box: Create a new polygon shapefile containing the bounding box of each input vector record.
  • Vector to Centroid: Create a new point shapefile containing the centroid of each input vector record.

This image shows bounding boxes and centroids around aircraft:

Programming


Workflow API

You can use the ENVI API to create workflows, which are comprised of multiple steps—presented as user interface (UI) dialogs—that guide users through a sequence of data-processing operations.

With workflows, you can interact with the ENVI application as you progress through each step. Workflow steps are based on ENVITasks, where each task performs an atomic piece of functionality. At each step, you are presented with a timeline of where you are in the context of all of the steps. You can move back and forth between steps as needed.

See the Creating Workflows topic for details. Several code examples demonstrate how to create full workflows.

The following are new routines and methods for creating workflows:

Workflow Routine/Method

Description

ENVIUI::CreateWorkflowDialog

This method invokes and displays a workflow.

ENVIWorkflow

This routine builds a data-processing workflow consisting of multiple steps.

ENVIWorkflowStep

This function defines a specific step within a workflow.

New Routines and Methods

Routine/Method

Description

ENVIDataContainer

This is a group of data objects such as rasters and vectors as well as variables of any data type (strings, numbers, etc.) A data container keeps track of the state of data objects in a program. This way, you can close or save a data object and retrieve it later if you need it again.

ENVIParameterUI

This is a base class for all user interface (UI) classes. Use UI classes to create dialogs where users can fill in values for task parameters before executing the task. ENVI and IDL provide a wide variety of UI classesthat inherit from ENVIParameterUI, and you as a programmer must also inherit from it when creating custom UI classes.

ENVIUI::RunTask

This method displays a dialog where users can select parameters for a given ENVITask. Unlike the ENVIUI::SelectTaskParameters method, it automatically runs the task after the user clicks OK; it displays a non-modal dialog; and it lets the user choose to run the task on an ENVI Server.

ENVIUI::ShowJobConsole

This method displays the ENVI Server Job Console for monitoring jobs submitted to an ENVIServer.

ENVIServer

This function creates an ENVIServer object so that you can run multiple, concurrent ENVI processes in the background, in parallel, or distributed among different computers.

New ENVITasks

You can use these new ENVITasks to perform data-processing operations in your own ENVI+IDL programs. They are also available as task nodes in the ENVI Modeler so that you can combine them with other tasks to build a custom data-processing workflow.

Task

Description

ClassificationToPixelROI

This task creates pixel ROIs from a classification raster.

ClassificationToPolygonROI

This task creates polygon ROIs from a classification raster.

ExtractColumnFromArray

This task extracts a single column from an array.

ExtractRowFromArray

This task extracts a single row from an array.

FeatureCountToROI

This task creates point ROIs from a saved feature count file (.efc).

FilterVector

This task creates a new shapefile containing only vector records that fall within specified minimum and/or maximum values.

SmoothVector

This task uses the Douglas-Peucker smoothing algorithm to reduce the number of vertices in each input record of a polyline or polygon vector. The output is a new shapefile.

UploadVectorToArcGISPortal

This task uploads a shapefile from ENVI to an ArcGIS Portal or ArcGIS Online account.
VectorRecordsToCentroid

This task creates a new point shapefile containing the centroid of each input vector record.

VectorRecordsToBoundingBox

This task creates a new polygon shapefile containing the bounding box of each input vector record.

Other API Updates

The LAYOUT property of the ENVI function has four new values:

  • [3,1]: Three vertical views
  • [1,3]: Three horizontal views
  • [4,1]: Four vertical views
  • [1,4]: Four horizontal views

The ENVIView::GeoLink and ENVIView::PixelLink methods have two new keywords, ROTATE_LINK and UPDATE_ROTATE_LINK, that let you rotate selected views at the same time.

The following are new user interface API classes that ENVI programmers can use to display dialogs in their programs:

  • IDLContainer_UI: This is a container that holds multiple UI classes so that they can be displayed at once.
  • IDLPassword_UI: This displays a dialog for users to enter passwords with hidden characters.

See Also


What's New in ENVI 5.5.3

What's New in ENVI 5.5.2

What's New in ENVI 5.5.1

What's New in ENVI 5.5

What's New in ENVI 5.4.1

What's New in ENVI 5.4

What's New in ENVI 5.3.2

What's New in ENVI 5.3.1

What's New in ENVI 5.3

What's New in ENVI 5.2.1

What's New in ENVI 5.2

What's New in ENVI 5.1