Spectral Information Divergence (SID) is a spectral classification method that uses a divergence measure to match pixels to reference spectra. The smaller the divergence, the more likely the pixels are similar. Pixels with a measurement greater than the specified maximum divergence threshold are not classified. Endmember spectra used by SID can come from ASCII files or spectral libraries, or you can extract them directly from an image (as ROI average spectra).

Reference: Du, H., C.-I. Chang, H. Ren, F. M. D’Amico, and J. O. Jensen, J. "New Hyperspectral Discrimination Measure for Spectral Characterization." Optical Engineering 43, No. 8 (2004): 1777-1786.

  1. From the Toolbox, select Classification > Supervised Classification > Spectral Information Divergence Classification. The Classification Input File dialog appears.
  2. Select an input file and perform optional spatial and spectral subsetting, and/or masking, then click OK. The Endmember Collection:SID dialog appears.
  3. From the Endmember Collection:SID dialog menu bar, select Import > spectra_source and collect endmember spectra from a variety of sources. For details, see Import Spectra and Manage Endmember Spectra.
  4. In the Endmember Collection:SID dialog, click Apply. The Spectral Information Divergence Parameters dialog appears.
  5. Select one of the following thresholding options from the Set Maximum Divergence Threshold area:
    • None: Use no threshold.
    • Single Value: Use a single threshold for all classes. Enter a value in the Maximum Divergence Threshold field. This is the minimum allowable variation between the endmember spectrum vector and the pixel vector. The default value is .05, but can vary substantially given the nature of the similarity measure. A threshold that discriminates well for one pair of spectral vectors may be either too sensitive or not sensitive enough for another pair due to the similar/dissimilar nature of their probability distributions.
    • Multiple Values: Enter a different divergence to test each class against its corresponding maximum spectral divergence. When selected, the Assign Maximum Divergence Threshold dialog appears. Use this dialog as follows:
    1. Select the class to assign a threshold value to and edit the value in the Edit Selected Value field. Click Reset to return to the default value.
    2. Repeat until the thresholds are edited as needed. Click OK when you are finished.
  6. Select classification output to File or Memory.
  7. Use the Output Rule Images? toggle button to select whether or not to create rule images. Use rule images to create intermediate classification image results before final assignment of classes. You can later use rule images in the Rule Classifier to create a new classification image without having to recalculate the entire classification.
  8. If you selected Yes to output rule images, select output to File or Memory.
  9. Click Preview to see a 256 x 256 spatial subset from the center of the output classification image. Change the parameters as needed and click Preview again to update the display.
  10. Click OK. ENVI adds the resulting output to the Layer Manager. The output from SID is a classified image and a set of rule images (one per endmember). The pixel values of the rule images represent the SID value (the output of the equation that defines SID for a pair of spectral vectors). Lower spectral divergence measures represent better matches to the endmember spectra. Areas that satisfied the maximum divergence threshold criteria are carried over as classified areas into the classified image.