Class FullyConstrainedLSU

java.lang.Object
org.esa.snap.core.util.math.FullyConstrainedLSU
All Implemented Interfaces:
SpectralUnmixing

public class FullyConstrainedLSU extends Object implements SpectralUnmixing
Performs a fully constrained linear spectral unmixing, where all abundances are non-negative and their sum is equal to unity.
Since:
4.1
  • Constructor Summary

    Constructors
    Constructor
    Description
    FullyConstrainedLSU(double[][] endmembers)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    double[][]
    mix(double[][] abundances)
    Calculates the spectra for a set of abundances.
    double[][]
    unmix(double[][] spectra)
    Performs a linear spectral unmixing of a set of spectra.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • FullyConstrainedLSU

      public FullyConstrainedLSU(double[][] endmembers)
  • Method Details

    • unmix

      public double[][] unmix(double[][] spectra)
      Description copied from interface: SpectralUnmixing
      Performs a linear spectral unmixing of a set of spectra.
      Specified by:
      unmix in interface SpectralUnmixing
      Parameters:
      spectra - the spectra, where number of rows = number of spectral channels number of cols = number of spectra
      Returns:
      the abundances, where number of rows = number of endmembers number of cols = number of spectra
    • mix

      public double[][] mix(double[][] abundances)
      Description copied from interface: SpectralUnmixing
      Calculates the spectra for a set of abundances.
      Specified by:
      mix in interface SpectralUnmixing
      Parameters:
      abundances - the abundances, where number of rows = number of endmembers number of cols = number of spectra
      Returns:
      the resulting spectra, where number of rows = number of spectral channels number of cols = number of spectra