SOMClassification - SOM Classification¶
SOM image classification.
Detailed description¶
Unsupervised Self Organizing Map image classification.
Parameters¶
This section describes in details the parameters available for this application. Table [1] presents a summary of these parameters and the parameters keys to be used in command-line and programming languages. Application key is SOMClassification .
| [1] | Table: Parameters table for SOM Classification. |
| Parameter Key | Parameter Name | Parameter Type |
|---|---|---|
| in | InputImage | Input image |
| out | OutputImage | Output image |
| vm | ValidityMask | Input image |
| tp | TrainingProbability | Float |
| ts | TrainingSetSize | Int |
| som | SOM Map | Output image |
| sx | SizeX | Int |
| sy | SizeY | Int |
| nx | NeighborhoodX | Int |
| ny | NeighborhoodY | Int |
| ni | NumberIteration | Int |
| bi | BetaInit | Float |
| bf | BetaFinal | Float |
| iv | InitialValue | Float |
| ram | Available RAM (Mb) | Int |
| rand | set user defined seed | Int |
| inxml | Load otb application from xml file | XML input parameters file |
| outxml | Save otb application to xml file | XML output parameters file |
- InputImage: Input image to classify.
- OutputImage: Output classified image (each pixel contains the index of its corresponding vector in the SOM).
- ValidityMask: Validity mask (only pixels corresponding to a mask value greater than 0 will be used for learning).
- TrainingProbability: Probability for a sample to be selected in the training set.
- TrainingSetSize: Maximum training set size (in pixels).
- SOM Map: Output image containing the Self-Organizing Map.
- SizeX: X size of the SOM map.
- SizeY: Y size of the SOM map.
- NeighborhoodX: X size of the initial neighborhood in the SOM map.
- NeighborhoodY: Y size of the initial neighborhood in the SOM map.
- NumberIteration: Number of iterations for SOM learning.
- BetaInit: Initial learning coefficient.
- BetaFinal: Final learning coefficient.
- InitialValue: Maximum initial neuron weight.
- Available RAM (Mb): Available memory for processing (in MB).
- set user defined seed: Set specific seed. with integer value.
- Load otb application from xml file: Load otb application from xml file.
- Save otb application to xml file: Save otb application to xml file.
Example¶
To run this example in command-line, use the following:
otbcli_SOMClassification -in QB_1_ortho.tif -out SOMClassification.tif -tp 1.0 -ts 16384 -sx 32 -sy 32 -nx 10 -ny 10 -ni 5 -bi 1.0 -bf 0.1 -iv 0
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 SOMClassification application
SOMClassification = otbApplication.Registry.CreateApplication("SOMClassification")
# The following lines set all the application parameters:
SOMClassification.SetParameterString("in", "QB_1_ortho.tif")
SOMClassification.SetParameterString("out", "SOMClassification.tif")
SOMClassification.SetParameterFloat("tp", 1.0)
SOMClassification.SetParameterInt("ts", 16384)
SOMClassification.SetParameterInt("sx", 32)
SOMClassification.SetParameterInt("sy", 32)
SOMClassification.SetParameterInt("nx", 10)
SOMClassification.SetParameterInt("ny", 10)
SOMClassification.SetParameterInt("ni", 5)
SOMClassification.SetParameterFloat("bi", 1.0)
SOMClassification.SetParameterFloat("bf", 0.1)
SOMClassification.SetParameterFloat("iv", 0)
# The following line execute the application
SOMClassification.ExecuteAndWriteOutput()
Limitations¶
None
Authors¶
This application has been written by OTB-Team.