### Navigation

- index
- modules |
- PySptools 0.12.1 beta documentation »

# Endmembers extraction functions

## ATGP

`eea.eea.``ATGP`(data, q)

  Automatic Target Generation Process endmembers induction algorithm

  Parameters:
    data: numpy array
      2d matrix of HSI data ((m x n) x p)
    q: int
      Number of endmembers to be induced (positive integer > 0)
  Returns: tuple: numpy array, numpy array
    - Set of induced endmembers (N x p).
    - Induced endmembers indexes vector.
  References:
    A. Plaza, C.-I. Chang, “Impact of Initialization on Design of Endmember Extraction Algorithms”, Geoscience and Remote Sensing, IEEE Transactions on, vol. 44, no. 11, pgs. 3397-3407, 2006.

## FIPPI

`eea.eea.``FIPPI`(M, q=None, far=None, maxit=None)

  Fast Iterative Pixel Purity Index (FIPPI) endmqbers induction algorithm.

  Parameters:
    M: numpy array
      2d matrix of HSI data ((m x n) x p)
    q: int [default None]
      Number of endmembers to be induced, if None use HfcVd to determine the number of endmembers to induce.
    far: float [default None]
      False alarm rate(s), a parameter to HfcVd equal to 10**-5 by default.
    maxit: `int [default None]
      Maximum number of iterations. Default = 3*p.
  Returns: tuple: numpy array, numpy array
    - Set of induced endmembers (N x p).
    - Array of indices into the array data corresponding to the induced endmembers.
  References:
    Chang, C.-I., “A fast iterative algorithm for implementation of pixel purity index”, Geoscience and Remote Sensing Letters, IEEE, vol. 3, no. 1, pags. 63-67, 2006.

## NFINDR

`eea.nfindr.``NFINDR`(data, q, transform=None, maxit=None, ATGP_init=False)

  N-FINDR endmembers induction algorithm.

  Parameters:
    data: numpy array
      Column data matrix [nvariables x nsamples].
    q: int
      Number of endmembers to be induced.
    transform: numpy array [default None]
      The transformed ‘data’ matrix by MNF (N x components). In this case the number of components must == q-1. If None, the built-in call to PCA is used to transform the data.
    maxit: int [default None]
      Maximum number of iterations. Default = 3*q.
    ATGP_init: boolean [default False]
      Use ATGP to generate the first endmembers set instead of a random selection.
  Returns: tuple: numpy array, numpy array, int
    - Set of induced endmembers (N x p)
    - Set of transformed induced endmembers (N x p)
    - Array of indices into the array data corresponding to the induced endmembers
    - The number of iterations.
  References:
    Winter, M. E., “N-FINDR: an algorithm for fast autonomous spectral end-member determination in hyperspectral data”, presented at the Imaging Spectrometry V, Denver, CO, USA, 1999, vol. 3753, pgs. 266-275.

## PPI

`eea.eea.``PPI`(M, q, numSkewers, ini_skewers=None)

  Performs the pixel purity index algorithm for endmember finding.

  Parameters:
    M: numpy array
      2d matrix of HSI data ((m x n) x p).
    q: int
      Number of endmembers to find.
    numSkewers: int
      Number of “skewer” vectors to project data onto.
    ini_skewers: numpy array [default None]
      You can generate skewers from another source.
  Returns: numpy array
    Recovered endmembers (N x p).

### Navigation

- index
- modules |
- PySptools 0.12.1 beta documentation »