Support Vector Machine (SVM) is a supervised classification method derived from statistical learning theory that often yields good classification results from complex and noisy data. See Support Vector Machine Background for details.

Note: SVM classification can take several hours to complete with training data that uses large regions of interest (ROIs).

  1. Use the ROI Tool to define training regions for each class. The more pixels and classes, the better the results will be.
  2. Use the ROI Tool to save the ROIs to an .roi file.
  3. Display the input image you will use for SVM classification, along with the ROI file.
  4. From the Toolbox, select Classification > Supervised Classification > Support Vector Machine Classification. The Classification Input File dialog appears.
  5. Select the input file and perform optional spatial and spectral subsetting, then click OK. The Support Vector Machine Classification Parameters dialog appears.
  6. In the Select Classes from Regions list, select at least one ROI and/or vector as training classes. The ROIs listed are derived from the available ROIs in the ROI Tool dialog. The vectors listed are derived from the open vectors in the Available Vectors List.
  7. Select the Kernel Type to use in the SVM classifier from the drop-down list. Options are Linear, Polynomial, Radial Basis Function, and Sigmoid. Depending on the option you select, additional fields may appear.
  8. If the Kernel Type is Polynomial, set the Degree of Kernel Polynomial to specify the degree use for the SVM classification. The minimum value is 1, the default is 2, and the maximum value is 6.
  9. If the Kernel Type is Polynomial or Sigmoid, specify the Bias in Kernel Function for the kernel to use in the SVM algorithm. The default is 1.
  10. If the kernel type is Polynomial, Radial Basis Function, or Sigmoid, use the Gamma in Kernel Function field to set the gamma parameter used in the kernel function. This value is a floating point value greater than or equal to 0.01. The default is the inverse of the number of bands in the input image.
  11. Specify the Penalty Parameter for the SVM algorithm to use. This value is a floating point value greater than or equal to 0.01. The penalty parameter controls the trade-off between allowing training errors and forcing rigid margins. Increasing the value of the penalty parameter increases the cost of misclassifying points and causes ENVI to create a more accurate model that may not generalize well. The default is 100.
  12. Use the Pyramid Levels field to set the number of hierarchical processing levels to apply during the SVM training and classification process. If this value is set to 0, ENVI processes the image at full resolution only. The default is 0. The maximum value is dynamic; it varies with the size of the image you select. The maximum value is determined by the criteria that the highest pyramid-level image is larger than 64 x 64. For example, for an image that is 24000 x 24000, the maximum level is 8.
  13. If the Pyramid Levels field is a value greater than zero, set the Pyramid Reclassification Threshold to specify the probability threshold that a pixel classified at a lower resolution level must meet to avoid being reclassified at a finer resolution. The range is from 0 to 1. The default is 0.9.
  14. Use the Classification Probability Threshold field to set the probability that is required for the SVM classifier to classify a pixel. Pixels where all rule probabilities are less than this threshold are unclassified. The range is from 0 to 1. The default is 0.0.
  15. Select classification output to File or Memory.
  16. Use the Output Rule Images? toggle button to select whether or not to create output 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.
  17. If you selected Yes to output rule images, select output to File or Memory.
  18. Click OK. ENVI adds the resulting output to the Layer Manager. If you selected to output rule images, ENVI creates rule images for each class with the pixel values equal to the percentage (0-100%) of bands that matched that class. Areas that satisfied the minimum threshold are carried over as classified areas into the classified image.

See Also

Support Vector Machine Background, Support Vector Machine Background in Feature Extraction