Constrained Energy Minimization (CEM) Classification is similar to Matched Filtering in that the only required knowledge is the target spectra to be detected. Using a specific constraint, CEM uses a finite impulse response (FIR) filter to pass through the desired target while minimizing its output energy resulting from a background other than the desired targets. A correlation or covariance matrix is used to characterize the composite unknown background. In a mathematical sense, MF is a mean-centered version of CEM, where the data mean is subtracted from all pixel vectors.

You can also write a script to perform CEM classification using the ConstrainedEnergyMinimization task.

  1. From the Toolbox, select Classification > Supervised Classification > Constrained Energy Minimization Classification. The Constrained Energy Minimization Classification dialog appears.
  2. Select an Input Raster and perform optional spatial and spectral subsetting, and/or masking.
  3. Select the Input ROIs file that represents the classes. Statistics from the ROIs are used as input to the Adaptive Coherence Estimator calculation.
  4. To remove anomalous pixels before calculating background statistics, select Yes for Use Subspace Background.
  5. Specify the fraction of the background in the anomalous image to use for calculating the subspace background statistics in the Background Threshold field. The threshold range is 0.500 to 1.000 (the entire image). The default is 0.9.
  6. Specify a filename and location for the Output Raster (the classification raster).
  7. Enable the Preview check box to preview the settings before processing the data. The preview is calculated only on the area in the view and uses the resolution level at which you are viewing the image. To preview a different area in your image, pan and zoom to the area of interest and re-enable the Preview option. Depending on the algorithm being used by the tool, the preview result might be different from the final result of processing on the full extent, full resolution of the input image in the following scenarios: 1) If you zoomed out of the input raster in the view by 50%, or a percentage less than 50%, ENVI uses a downsampled image at the closest resolution level to calculate the preview, or 2) If the entire image is not visible in the view, ENVI uses the subset in the viewable area of the input image to calculate the preview.
  8. Enable the Display result check box to display the output in the view when processing is complete. Otherwise, if the check box is disabled, the result can be loaded from the Data Manager.
  9. To see a model-based version of this tool that shows how the tool is constructed from individual tasks, click Open in Modeler.

  10. To reuse these task settings in future ENVI sessions, save them to a file. Click the down arrow next to the OK button and select Save Parameter Values, then specify the path and filename to save to. Note that some parameter types, such as rasters, vectors, and ROIs, will not be saved with the file. To apply the saved task settings, click the down arrow and select Restore Parameter Values, then select the file where you previously stored your settings.

  11. To run the process in the background, click the down arrow next to the OK button and select Run Task in the Background. If an ENVI Server has been set up on the network, the Run Task on remote ENVI Server name is also available. The ENVI Server Job Console will show the progress of the job and will provide a link to display the result when processing is complete. See ENVI Servers for more information.

  12. To see a model-based version of this tool that shows how the tool is constructed from individual tasks, click Open in Modeler.

  13. Click OK.