DimensionalityReduction¶

Perform Dimension reduction of the input image.

Description¶

Performs dimensionality reduction on input image. PCA,NA-PCA,MAF,ICA methods are available. It is also possible to compute the inverse transform to reconstruct the image and to optionally export the transformation matrix to a text file.

Parameters¶

Input Image `-in image` Mandatory
The input image to apply dimensionality reduction.

Output Image `-out image [dtype]`
output image. Components are ordered by decreasing eigenvalues.

Rescale Output¶

Output min value `-rescale.outmin float` Default value: 0
Minimum value of the output image.

Output max value `-rescale.outmax float` Default value: 255
Maximum value of the output image.

** Inverse Output Image** `-outinv image [dtype]`
reconstruct output image.

Algorithm `-method [pca|napca|maf|ica]` Default value: pca
Selection of the reduction dimension method.

• PCA
Principal Component Analysis.
• NA-PCA
• MAF
Maximum Autocorrelation Factor.
• ICA
Independent Component Analysis using a stabilized fixed point FastICA algorithm.

NA-PCA options¶

Set the x radius of the sliding window `-method.napca.radiusx int` Default value: 1

Set the y radius of the sliding window `-method.napca.radiusy int` Default value: 1

ICA options¶

number of iterations `-method.ica.iter int` Default value: 20

Give the increment weight of W in [0, 1] `-method.ica.mu float` Default value: 1

Nonlinearity `-method.ica.g [tanh|exp|u3]` Default value: tanh
Nonlinearity used in the FastICA algorithm

• tanh
g(x) = tanh(x)
• exp
g(x) = -exp(-x^2/2)
• u^3
g(x) = u^3(x)

Number of Components `-nbcomp int` Default value: 0
Number of relevant components kept. By default all components are kept.

Normalize `-normalize bool` Default value: false
Center and reduce data before Dimensionality reduction.

Transformation matrix output (text format) `-outmatrix filename [dtype]`
Filename to store the transformation matrix (csv format)

Available RAM (MB) `-ram int` Default value: 256
Available memory for processing (in MB).

Examples¶

From the command-line:

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

From Python:

```import otbApplication

app = otbApplication.Registry.CreateApplication("DimensionalityReduction")

app.SetParameterString("in", "cupriteSubHsi.tif")
app.SetParameterString("out", "FilterOutput.tif")
app.SetParameterString("method","pca")

app.ExecuteAndWriteOutput()
```

Limitations¶

This application does not provide the inverse transform and the transformation matrix export for the MAF.