Skip to content

Spectral indices and analysis

Once you have a spectral cube, the tabs on the right of the acquisition window turn it into maps, plots and classifications.

Bands and plotting

  • Bands: step through individual wavelength images. RGB composite maps three bands to red, green and blue, with Per-channel contrast if needed.
  • Plotting: Compute mean spectrum plots the average spectrum inside each ROI. Optional Continuum removal and Savitzky-Golay smoothing make absorption features easier to compare. Use Export spectral plot (PNG) or Export CSV to save the result.

Spectral indices

The Indices tab computes one value per pixel from a few bands, giving a 2-D map that highlights a particular absorption feature.

  1. Click Fetch built-ins to load the standard indices from the backend:

    Name Type Bands (nm)
    RABD660670 RABD 590 / 665 / 730
    RABD510 RABD 460 / 510 / 560
    R590R690 Ratio 590 / 690
    RABA400700 RABA 400 – 700
    RMEAN550700 Mean 550 – 700
  2. Select one or more indices. With Multi-index mode you can compute several at once with Compute All Selected.

  3. Each result shows as a map. Index projection averages each column of the map, giving a profile across the image. This is useful for layered samples such as sediment cores.
  4. Click Export maps, Export CSV or Export PNG plot to save the results.

Custom indices

Open the Custom index editor and choose a type and wavelengths (Left, Middle, Right in nm). You can save index definitions as YAML and load them again later, or use them in batch jobs:

- name: RABD615
  type: RABD          # RATIO, RABD, RABA, RMEAN or RABD_NORM
  leftBand: 590.0
  middleBand: 615.0
  rightBand: 730.0
  description: Example trough at 615 nm
- name: R570R630      # R(570) / R(630)
  type: RATIO         # ratio = middleBand / leftBand
  middleBand: 570.0
  leftBand: 630.0

The wavelengths don't have to match a band exactly: QCLM uses the nearest band in the cube. Spectral indices gives the formula for each type.

Dimensionality reduction and end-members

The Analysis tab finds the main spectral components of a cube and its spectrally pure pixels. These computations run inside the desktop app on the loaded cube.

  1. MNF / PCA Transform: Run MNF Transform whitens the noise and then orders components by signal-to-noise. Run PCA (no noise whitening) is the plain alternative. The Eigenvalue plot shows how many components carry signal. Set Eigenvalue threshold or Reduced dims to keep only those.
  2. Correlation analysis: Compute correlation builds the band-to-band correlation matrix, shown as a heatmap, and plots each band's mean correlation. Bands that correlate poorly with the rest are usually noisy. Correlation threshold flags them so you can crop them out.
  3. Pure Pixel Index (PPI): Run PPI projects the reduced data onto many random directions (Iterations) and counts how often each pixel is an extreme. High counts mark spectrally pure pixels.
  4. End-member extraction: Extract end-members takes pixels above the Count threshold, groups them with DBSCAN (DBSCAN eps, DBSCAN minPts) and shows each group's mean spectrum under End-member profiles.

Run MNF first; PPI and end-member extraction work on the reduced data.

Classification (Inference)

The Inference tab runs a classification model on the current cube.

  1. Refresh models lists the models the backend provides. Select one to see its details.
  2. Click Run classification, then Show classification map to overlay the per-pixel classes.
  3. Export classification map saves the result.
  4. Compare models runs several models on the same cube and shows the maps side by side with a statistics table, which you can export as CSV or PNG.

Reference model only

The backend currently ships one model, Simple Threshold Classifier (simple-model). It labels pixels as high-reflectance, low-reflectance or background from their mean intensity. Use it to learn the workflow, not to draw scientific conclusions. Trained models are added on the backend through its ModelLoader interface.