33412
What's New in ENVI 5.3
ENVI 5.3 is packed full of new features and functionality that will help you do more with your geospatial data than ever before. Learn how the newest version of ENVI can help you improve your geospatial analysis!
ENVI 5.3 includes the new and enhanced features listed below.
See the
following sections:
Sensors and Data
Formats
ENVI reads and displays imagery from the following sensors and
data
formats:
- Deimos-2
- DubaiSat-2
- Pleiades-HR and SPOT mosaic tiles
- GeoPackage vectors
- Google-formatted SkySat-2
- Sentinel-2
Image
Processing
Point Clouds
Use the Generate
Point Clouds by Dense Image Matching tool to
create
point clouds in LAS format from two or more satellite images taken from
different view points. The following sensors are supported:
- DPPDB with a generic RPC sensor model
- GeoEye-1 in DigitalGlobe format (
.til
)
and PVL format
- Pleiades-1A
- QuickBird
- SPOT-6
- WorldView-1 through -3
This tool runs on Windows 64-bit platforms and requires a
separate
license for the ENVI Photogrammetry Module (formerly the
ENVI Orthorectification Module), which also includes access to
Rigorous Orthorectification.
QUAC
The QUick Atmospheric Correction (QUAC)® algorithm was updated
to the
latest baseline source code from Spectral Sciences, Inc. The following
reference summarizes the updated algorithm:
Bernstein, L. S., X. Jin, B. Gregor, and S. Adler-Golden.
"Quick
Atmospheric Correction Code: Algorithm Description and Recent
Upgrades." Optical
Engineering 51, No. 11 (2012): 111719-1 to 111719-11.
It contains the following enhancements to improve the accuracy
of
atmospheric correction:
- Applies mud filtering to exclude highly structured
materials.
- Selects endmembers based on a small subset of available
bands for most
sensors. When a sensor spans both the visible and NIR-SWIR spectral
regions, the algorithm excludes bands in the visible region.
- Constrains the gain curve to be constant for wavelengths
below 650 nm.
- Suppresses the effects of dense vegetation.
- Removes cloud endmembers for hyperspectral sensors with 940
to 1020 nm
water absorption bands.
QUAC also works with images where pixels are masked out or set
to
NoData, NaN, and Infinity.
GMTED2010
A higher-resolution version of the GMTED2010
DEM (7.5 arc seconds) is
available for download from the Exelis VIS website. We recommend using
this version for RPC Orthorectification and automatic tie-point
generation in Image Registration because it will significantly improve
the accuracy of the results.
New Spectral Indices
The Normalized Difference Mud Index (NDMI) highlights muddy or
shallow-water pixels. This index was originally designed as a filter to
exclude those pixels and to improve the accuracy of QUick Atmospheric
Correction (QUAC)®.
The Modified Normalized Difference Water Index (MNDWI)
enhances open
water features while suppressing noise from built-up land, vegetation,
and soil. Xu (2006) reported that the MNDWI produced better results
than the Normalized Difference Water Index originally developed by
McFeeters (1996) in enhancing and extracting water from a background
that is dominated by built-up land areas.
The Spectral Indices tool now lists only the spectral indices
that are
available to compute from an input raster, based on its wavelength
metadata. It previously listed all
spectral indices, then issued an
error message if you selected any that could not be computed for the
input raster.
User Interface
Numerous performance enhancements have been included in this
release,
improving the speed and efficiency of ENVI when working with multiple
datasets and raster series animation.
ENVI imagery can now be saved to Geospatial PDF
files. Select
File > Chip View
To > Geospatial PDF to capture all georeferenced
data
layers displayed in the current view, or use File > Export View To
> Geospatial
PDF to select and export entire georeferenced raster
layers.
Use the Regrid
Raster Series tool (under the Spatiotemporal Analysis
folder in the Toolbox) to define a custom grid and to regrid a raster
series to it. A custom grid definition is a combination of a coordinate
system, spatial extent, pixel size, number of rows and columns, and/or
tie-point pixel and map coordinates.
Right-click on the Classes folder of an
ENVI classification
image and select Edit
Class Names and Colors to edit the default names
and colors of individual classes.
The Clump Classes and Sieve Classes dialogs allow you to
preview
processing results.
The Edit ENVI Header dialog has been replaced by the
Set
Raster Metadata dialog. Use this to edit the values of
ENVI header fields and to save the results to an
ENVI header file. In the Toolbox, select Raster Management > Edit
ENVI Header to access the Set Raster Metadata tool.
The Jagwire product, available from Exelis VIS, provides a
server that streams
imagery and video for display and analysis. Use the redesigned and
simplified Remote Connection Manager to connect to Jagwire servers,
perform spatial and time queries on their contents, and open raster
data that represents properties of geographic locations.
The File Selection dialog now includes buttons for subsetting
by
raster, by vector, by region of interest (ROI), or by map coordinates.
Click the Spatial Subset
button in the File Selection dialog to access
these options.
The File
> Save As menu option now includes buttons
for creating a masked raster file. A mask can be defined from another
raster, a vector, or one or more ROIs. Click the Mask button in the
File Selection dialog to access these options.
The ENVI LiDAR application has been merged into ENVI. To open
the
ENVI LiDAR window select LiDAR
> Launch ENVI LiDAR
from the Toolbox, or select Display
> ENVI LiDAR
from the ENVI menu bar.
Analyze data over time with a spatiotemporal Series Profile.
From the
main menu, select Display
> Profiles > Series to launch the plot
window.
ENVI profiles now provide adjustable smoothing to plotted
data. Select
Options > Curve
Smoothing to display the slider
control.
Programming
ENVIQUACTask and ENVI_QUAC_DOIT were updated to the latest
algorithm
from Spectral Sciences, Inc., documented in the following reference:
Bernstein, L. S., X. Jin, B. Gregor, and S. Adler-Golden.
"Quick
Atmospheric Correction Code: Algorithm Description and Recent
Upgrades." Optical
Engineering 51, No. 11 (2012): 111719-1 to 111719-11.
Tasks
The following table lists new ENVITasks. You can also publish
these
tasks to client applications using ENVI Services Engine.
Task
|
Description
|
ENVIAdditiveLeeAdaptiveFilter
|
Apply a Lee adaptive filter to smooth noisy data that
has an additive component.
|
ENVIAdditiveMultiplicativeLeeAdaptiveFilterTask
|
Apply a Lee adaptive filter to smooth noisy data that
has an additive and multiplicative component.
|
ENVIBinaryGTThresholdRasterTask
|
Create a raster where values above a specified threshold
are set to 1 and all other values are set to 0.
|
ENVIBinaryLTThresholdRasterTask
|
Create a raster where values below a specified threshold
are set to 1 and all other values are set to 0.
|
ENVIBitErrorAdaptiveFilterTask
|
Apply a bit error adaptive filter to a raster.
|
ENVIBuildMosaicRasterTask
|
Build a mosaic raster based on a set of input rasters.
|
ENVICalculateQUACGainOffsetTask
|
Calculate the gain and offset for QUAC on multispectral
or hyperspectral imagery.
|
ENVIDataValuesMaskRasterTask
|
Export a data values mask raster to an ENVI-format file.
|
ENVIDirectionalFilterTask
|
Apply a directional filter to a raster.
|
ENVIDirectionalKernelTask
|
Define a directional kernel for use with convolution
filtering.
|
ENVIEnhancedFrostAdaptiveFilterTask
|
Apply an enhanced Frost filter to a raster, to reduce
speckling while preserving edges.
|
ENVIEnhancedLeeAdaptiveFilterTask
|
Apply an enhanced Lee filter to a raster, to reduce
speckling while preserving texture information.
|
ENVIExportColorSlicesTask
|
Export raster color slices to a density slice range
(DSR) file.
|
ENVIFrostAdaptiveFilterTask
|
Apply a Frost filter to a raster, to reduce speckling
while preserving edges.
|
ENVIGammaAdaptiveFilterTask
|
Apply a gamma filter to a raster, to reduce speckling
while preserving edges.
|
ENVIGaussianHighPassFilterTask
|
Apply a Gaussian high pass filter to a raster.
|
ENVIGaussianHighPassKernelTask
|
Define a Gaussian high pass filter for use with
convolution filtering.
|
ENVIGaussianLowPassFilterTask
|
Apply a Gaussian low pass filter to a raster.
|
ENVIGaussianLowPassKernelTask
|
Define a Gaussian low pass filter for use with
convolution filtering.
|
ENVIGeneratePointCloudsByDenseImageMatchingTask
|
Generate 3D point clouds from two or more images taken
from different view points using a dense image matching method.
|
ENVIGeoJSONToROITask
|
Convert GeoJSON features to a region of interest (ROI).
|
ENVIGeoPackageToShapefileTask
|
Convert GeoPackage vector files to Shapefile format.
|
ENVIGetColorSlicesTask
|
Get data ranges and colors from a density slice range
(DSR) file.
|
ENVIGetSpectrumFromLibraryTask
|
Retrieve the details of a specified material from a
spectral library.
|
ENVIHighClipRasterTask
|
Create a new raster where values above a threshold are
set to the threshold.
|
ENVIHighPassFilterTask
|
Apply a high pass filter to a raster.
|
ENVIHighPassKernelTask
|
Define a high pass kernel for use with convolution
filtering.
|
ENVIKuanAdaptiveFilterTask
|
Apply a Kuan adaptive filter to a raster.
|
ENVILocalSigmaAdaptiveFilterTask
|
Apply a Local Sigma adaptive filter to a raster.
|
ENVILaplacianFilterTask
|
Apply a Laplacian filter to a raster.
|
ENVILaplacianKernelTask
|
Define a Laplacian kernel for use with convolution
filtering.
|
ENVILowClipRasterTask
|
Create a new raster where values below a threshold are
set to the threshold.
|
ENVILowPassFilterTask |
Apply
a low pass filter to a raster. |
ENVILowPassKernelTask |
Define
a low pass kernel for use with convolution filtering. |
ENVIMaskRasterTask |
Export
a mask raster to an ENVI-format file. |
ENVIMedianFilterTask |
Apply
a median filter to a raster. |
ENVIMultiplicativeLeeAdaptiveFilterTask |
Apply
a Lee adaptive filter to smooth noisy data that has a multiplicative
component. |
ENVIROIMaskRasterTask |
Export
an ROI mask raster to an ENVI-format file. |
ENVIQuerySpectralLibraryTask |
Query
a spectral library, returning the names of all spectra in the library. |
ENVIQueryTaskTask |
View
property descriptions for a selected ENVITask. |
ENVIQueryTaskCatalogTask |
View
a list of available tasks in ENVI. |
ENVIRasterConvolutionTask |
Apply
a convolution filter to a raster. |
ENVIRasterHistogramTask |
Compute
the histogram of a raster. |
ENVIRasterMetadataItemTask |
Retrieve
the value of a given raster metadata key. |
ENVIRegridRasterSeriesTask |
Reproject
a series of rasters to a common spatial grid, using a custom grid
definition. |
ENVIReprojectRasterTask |
Reproject
a raster from one coordinate system to another. |
ENVIResampleSpectrumTask |
Resample
a given spectrum to a different set of wavelengths, typically from a
hyperspectral image. |
ENVIRobertsFilterTask |
Apply
a Roberts filter to a raster. |
ENVISetRasterMetadataTask |
Set
metadata values for a raster that does not have an associated ENVI
header file (.hdr). This task creates a new header file and saves it to
a specified location on disk. |
ENVISobelFilterTask |
Apply
a Sobel filter to a raster. |
ENVISpectralAdaptiveCoherenceEstimatorUsingSubspaceBackgroundStatisticsTask |
Perform
Adaptive Coherence Estimator (ACE) target detection analysis, using the
mean and covariance from subspace background statistics. |
ENVISpectralSubspaceBackgroundStatisticsTask |
Compute
background statistics by excluding anomalous pixels. |
ENVIVectorMaskRasterTask |
Export
a vector mask raster to an ENVI-format file. |
ENVIVectorRecordsToSeparateROITask |
Create
individual ROIs from each geometry record in a vector. |
Objects and Methods
Object/Method
|
Description
|
ENVIBinaryGTThresholdRaster |
Construct an ENVIRaster from a source raster where
pixel values above a specified threshold are set to 1 and all others
are set to 0. |
ENVIBinaryLTThresholdRaster |
Construct an ENVIRaster from a source raster where
pixel values below a specified threshold are set to 1 and all others
are set to 0. |
ENVIDataValuesMaskRaster |
Construct an ENVIRaster from a source raster and a
specified data range, where each pixel within the data range will not
be masked. |
ENVIGainOffsetWithThresholdRaster |
Construct an ENVIRaster from a source raster with gains
and offsets applied. Optionally constrain the resulting pixel
values to a specified range. |
ENVIHighClipRaster |
Construct an ENVIRaster from a source raster where
values above a threshold are set to the threshold. |
ENVIJagwireServer |
Reference an ENVIJagwireServer object. You can:
- Query a hash table of raster datasets available on
the Jagwire server
- Query a hash table of dataset metadata
- Close the Jagwire server connection in ENVI
|
ENVILowClipRaster |
Construct an ENVIRaster from a source raster where
values below a threshold are set to the threshold. |
ENVIQUACRaster |
Construct an ENVIRaster from a source raster that has
QUick Atmospheric Correction (QUAC) applied. |
ENVIReprojectRaster |
Construct an ENVIRaster from a source raster that has
been reprojected to a different coordinate system. |
ENVIRoi::GetExtent |
Return the pixel coordinates boundary of the ROI for a
given ENVIRaster. |
ENVISpectralLibrary |
Create an ENVI spectral library object. |
ENVIView::Chip |
Create a new ENVIRaster from the contents of a view. |
ENVIView::ChipToFile |
Chip the contents of a view directly to a file. |
ENVI LiDAR Objects, Methods, and Tasks
Object/Method/Task |
Description |
ENVI::OpenPointCloud |
This method opens one or more point cloud files. It
also opens a single ENVI LiDAR project file. |
ENVI::QueryPointCloud |
The QueryPointCloud function method opens a single
point cloud file. |
ENVICreatePointCloudSubProjectTask |
This task divides an existing ENVI LiDAR project into a
number of subprojects for simultaneous processing by a number of ENVI
Services Engine (ESE) workers. |
ENVIPointCloud |
This method is a reference to a point cloud object, to
which you can:
- Get points within a circle region
- Get points within a polygon region
- Get spatially sorted points within a given range
- Get points within a rectangle region
- Get points within a specified tile
- Save the ENVIPointCloud object
- Write points to a new
.las
file
- Close the ENVIPointCloud object
|
ENVIPointCloudFeatureExtractionTask |
This task performs feature extraction on point cloud
data. Building, tree, and power line feature extraction can
be performed with the purchase of the ENVI Feature Extraction license.
It also includes a validate task. |
ENVIPointCloudFilter |
This is a reference to an ENVIPointCloud point filter
object. It is used to filter the point data that will be returned from
the point query methods of the ENVIPointCloud object. |
ENVIPointCloudMetadata |
This is a reference to a point cloud metadata object. |
ENVIPointCloudProductsInfo |
This object stores the fully-qualified filenames for
all products generated by ENVIPointCloudFeatureExtractionTask. |
ENVIPointCloudQuery |
This method is a reference to a point cloud object that
has not been built into an optimized file format (i.e., an ENVI LiDAR .ini
file). You can:
- Get spatially sorted points within a given range
- Close the ENVIPointCloudQuery object
|
ENVIPointCloudSpatialRef |
This method creates an ENVIPointCloudSpatialRef object,
to which you can:
- Convert lon/lat coordinates to map
- Convert map coordinates to lon/lat
- Convert coordinates map to map
|
ENVIPointCloudViewer |
This method starts the ENVI LiDAR application and
returns an object reference to the instance of the application. You can:
- Open an ENVIPointCloud object in the viewer
- Open a shapefile in the viewer
- Get an ENVIPointCloud object that is already open in
the viewer
- Get the view extents
- Set the location of the progress bar in the viewer
- Set the view extents
- Close the viewer
|
ENVISpatialSubsetPointCloud |
This method creates a new ENVISpatialSubsetPointCloud
object which is a spatial subset of an existing ENVIPointCloud object. |
Messaging
Use the following objects and methods to add progress
notification, or messaging, to ENVI API scripts.
Object/Method |
Description |
ENVI::GetBroadcastChannel |
This method returns an object reference to the system's
broadcast channel. |
ENVIAbortable |
Use this class to communicate if an abort is requested. |
ENVIAbortableTaskFromProcedure |
Use this base class when writing custom tasks that will
have a progress dialog with an option to abort the process. This base
class has its own set of PreExecute, DoExecute, and PostExecute methods. |
ENVIBroadcastChannel |
This is a reference to a broadcast channel object, to
which you can:
- Send messages using the Broadcast method
- Subscribe using the Subscribe method
- Unsubscribe using the Unsubscribe method
|
ENVIMessage |
This is an abstract class used as a superclass for
other message classes. |
ENVIMessageHandler |
This is an abstract class used as a super class for
other message classes. ENVIBroadcastChannel calls the
ENVIMessageHandler::OnMessage method to forward messages to all of its
subscribers. |
ENVIStartMessage |
This function constructs an ENVIStartMessage object to
send to the ENVIBroadcastChannel. If the ENVI user interface is
running, then a progress dialog will appear. |
ENVIProgressMessage |
This function constructs an ENVIProgressMessage object
to send to the ENVIBroadcastChannel. If the ENVI user interface is
running with a progress dialog, the dialog will update.
|
ENVIFinishMessage |
This function constructs an ENVIFinishMessage object to
send to the ENVIBroadcastChannel. If the ENVI user interface is running
with a progress dialog, the dialog will close. |
See the "Custom Tasks with Abortable Progress Reports" topic
in ENVI Help for
instructions on creating custom tasks with the option to display a
progress report and an option to abort (cancel) the task.
© 2015 Exelis Visual Information Solutions, Inc., a subsidiary
of Harris Corporation.
All Rights Reserved. This information is not subject to the controls of
the International Traffic in Arms Regulations (ITAR) or the Export
Administration Regulations (EAR). However, this information may be
restricted from transfer to various embargoed countries under U.S. laws
and regulations.