4.5.1 Dimensionality reduction application

Perform Dimension reduction of the input image.

Detailed description

Performs dimensionality reduction on input image. PCA,NA-PCA,MAF,ICA methods are available.

Parameters

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





Parameter key

Parameter type

Parameter description




in

Input image

Input Image

out

Output image

Output Image

rescale

Group

Rescale Output.

rescale.outmin

Float

Output min value

rescale.outmax

Float

Output max value

outinv

Output image

Inverse Output Image

method

Choices

Algorithm

method pca

Choice

PCA

method napca

Choice

NA-PCA

method maf

Choice

MAF

method ica

Choice

ICA

method.napca.radiusx

Int

Set the x radius of the sliding window.

method.napca.radiusy

Int

Set the y radius of the sliding window.

method.ica.iter

Int

number of iterations

method.ica.mu

Float

Give the increment weight of W in [0, 1]

nbcomp

Int

Number of Components.

normalize

Boolean

Normalize.





Table 4.27: Parameters table for Dimensionality reduction application.

Input Image The input image to apply dimensionality reduction.

Output Image output image. Components are ordered by decreasing eigenvalues.

Rescale Output.

Inverse Output Image reconstruct output image.

Algorithm Selection of the reduction dimension method. Available choices are:

Number of Components. Number of relevant components kept. By default all components are kept.

Normalize. center AND reduce data before Dimensionality reduction.

Example

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

otbcli_DimensionalityReduction -in cupriteSubHsi.tif -out FilterOutput.tif -method pca

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 DimensionalityReduction application 
DimensionalityReduction = otbApplication.Registry.CreateApplication("DimensionalityReduction") 
 
# The following lines set all the application parameters: 
DimensionalityReduction.SetParameterString("in", "cupriteSubHsi.tif") 
 
DimensionalityReduction.SetParameterString("out", "FilterOutput.tif") 
 
DimensionalityReduction.SetParameterString("method","pca") 
 
# The following line execute the application 
DimensionalityReduction.ExecuteAndWriteOutput()

Limitations

Though the inverse transform can be computed, this application only provides the forward transform for now.

Authors

This application has been written by OTB-Team.

See also

These additional ressources can be useful for further information: