4.8.5 Image Classification

Performs a classification of the input image according to a model file.

Detailed description

This application performs an image classification based on a model file produced by the TrainImagesClassifier application. Pixels of the output image will contain the class labels decided by the classifier (maximal class label = 65535). The input pixels can be optionally centered and reduced according to the statistics file produced by the ComputeImagesStatistics application. An optional input mask can be provided, in which case only input image pixels whose corresponding mask value is greater than 0 will be classified. The remaining of pixels will be given the label 0 in the output image.

Parameters

This section describes in details the parameters available for this application. Table 4.120, page 694 presents a summary of these parameters and the parameters keys to be used in command-line and programming languages. Application key is ImageClassifier.





Parameter key

Parameter type

Parameter description




in

Input image

Input Image

mask

Input image

Input Mask

model

Input File name

Model file

imstat

Input File name

Statistics file

out

Output image

Output Image

confmap

Output image

Confidence map

ram

Int

Available RAM (Mb)

inxml

XML input parameters file

Load otb application from xml file

outxml

XML output parameters file

Save otb application to xml file











Table 4.120: Parameters table for Image Classification.

Example

To run this example in command-line, use the following:

otbcli_ImageClassifier -in QB_1_ortho.tif -imstat EstimateImageStatisticsQB1.xml -model clsvmModelQB1.svm -out clLabeledImageQB1.tif

To run this example from Python, use the following code snippet:

#!/usr/bin/python 
 
# Import the otb applications package 
import otbApplication 
 
# The following line creates an instance of the ImageClassifier application 
ImageClassifier = otbApplication.Registry.CreateApplication("ImageClassifier") 
 
# The following lines set all the application parameters: 
ImageClassifier.SetParameterString("in", "QB_1_ortho.tif") 
 
ImageClassifier.SetParameterString("imstat", "EstimateImageStatisticsQB1.xml") 
 
ImageClassifier.SetParameterString("model", "clsvmModelQB1.svm") 
 
ImageClassifier.SetParameterString("out", "clLabeledImageQB1.tif") 
 
# The following line execute the application 
ImageClassifier.ExecuteAndWriteOutput()

Limitations

The input image must have the same type, order and number of bands than the images used to produce the statistics file and the SVM model file. If a statistics file was used during training by the TrainImagesClassifier, it is mandatory to use the same statistics file for classification. If an input mask is used, its size must match the input image size.

Authors

This application has been written by OTB-Team.

See also

These additional ressources can be useful for further information: