ICA Compression
ICA Compression reduces the spectral dimensionality of the current hyperspectral dataset using MATLAB Reconstruction Independent Component Analysis (RICA).
Overview
ICA Compression reduces the spectral dimensionality of the current hyperspectral dataset using MATLAB Reconstruction Independent Component Analysis (RICA).
Each pixel spectrum is transformed into a user-selected number of ICA component scores.
The resulting cube contains ICA components rather than physical wavelength bands.
1. Load a hyperspectral dataset.
2. Open ICA Compression from the Preprocessing Center.
3. Select the number of ICA components to retain.
4. Select the RICA regularization parameter Lambda.
5. Review the Output Preview.
6. Click Apply ICA Compression.
7. Review the ICA Compression Results window.
8. Optionally export the compression details to CSV.
9. Use Reset Preprocessing if you want to restore the original dataset.
The Number of ICA components field determines the size of the third dimension of the compressed output cube.
Use fewer components than the original number of spectral bands to reduce dimensionality.
For example, reducing 510 spectral bands to 20 ICA components corresponds to a nominal spectral dimensionality ratio of 25.5:1.
Independent Component Analysis seeks a transformed representation whose components are statistically more independent than the original variables.
IDCubePro uses MATLAB rica() followed by transform().
RICA learns a linear feature representation with a reconstruction objective and a regularization term.
PCA and ICA solve different problems.
PCA produces orthogonal components ordered by explained variance.
ICA seeks statistically independent or non-Gaussian latent features and the resulting components are not naturally ordered by explained variance.
Therefore, ICA does not use a cumulative-variance threshold like PCA.
Lambda is the RICA regularization parameter.
It controls the strength of the regularization penalty during model fitting and must be zero or greater.
The best Lambda depends on the dataset and analysis goal; there is no universal value.
IDCubePro calls RICA with Standardize=true.
Because standardized RICA cannot use constant predictors, ICA Compression checks for constant spectral bands before fitting.
If constant bands are detected, remove them first and rerun ICA Compression.
NaN or infinite values are replaced independently within each spectral band using that band's finite mean.
If an entire band contains no finite values, compression stops and reports an error.
After successful compression, myData.Images contains the ICA component-score cube.
The third axis becomes ICA component indices 1, 2, 3, and so forth.
The Wavelengths vector is replaced by component indices and IDCubePro enables band/component index mode.
ICA components must not be interpreted as new physical wavelengths.
IDCubePro stores metadata in myData.ICACompression.
- Method: Reconstruction ICA (RICA)
- Number of retained components
- Number of original spectral bands
- Model mean and standard deviation when available
- Non-Gaussianity indicator when available
- Fit information when available
- Original wavelength vector when available
After ICA finishes, IDCubePro opens a dedicated results window.
The window reports original spectral bands, retained ICA components, dimensions removed, Lambda, and dimensionality reduction ratio.
Export Details saves a CSV summary of the compression operation.
The dimensionality reduction ratio is calculated as:
Original number of bands / Number of retained ICA components This describes reduction of the spectral dimension and is not necessarily identical to file-size compression.
IDCubePro refreshes the Modern GUI after compression.
When three or more ICA components are retained, separated component indices are assigned to the RGB display.
When fewer than three components remain, the display switches to Single Band mode.
ICA components are mathematical latent features derived from all input spectral bands.
They do not automatically correspond to individual chemicals, tissues, materials, chromophores, or biological processes.
Interpret component maps and transform weights together with domain knowledge and downstream validation.
When Ica Compression Is Useful
ICA compression can be useful for:
- Reducing the number of variables before downstream analysis
- Exploring latent statistically independent spectral features
- Separating mixed spectral sources when ICA assumptions are reasonable
- Producing lower-dimensional inputs for classification or clustering
- Reducing memory requirements for later operations
ICA is applied to the current working dataset.
Background correction, normalization, scatter correction, smoothing, band removal, and other preprocessing can change the ICA solution.
Use a consistent preprocessing sequence when comparing multiple datasets.
IDCubePro initializes the RICA fitting step with a fixed random seed and restores the previous MATLAB random-number state afterward.
The progress dialog can be canceled during processing.
The ICA setup window remains available after cancellation or an error so settings can be changed and the analysis rerun.
Use Reset Preprocessing to restore myDataOriginal when the original dataset is available.
ICA Compression does not overwrite the original source file automatically.
Use the normal IDCubePro Save / Export workflow to save the ICA component cube.
Export Details saves only the compression summary, not the full cube or complete RICA model.
ICA is a linear latent-variable method and may not capture nonlinear spectral relationships.
Results depend on component number, Lambda, preprocessing, outliers, sample size, and how well the data satisfy ICA assumptions.
Unlike PCA, ICA components are not ranked by cumulative explained variance.
Strong dimensionality reduction can discard scientifically useful information.