The module is a wrapper around the pysptools Python library, that integrates its functionality for Endmember Extraction and Spectral Unmixing into GRASS GIS.
It requires that the Python libraries pysptools and scikit-learn are installed.
Supported algorithms for Endmember Extraction are:
Supported algorithms for Spectral Unmixing are:
Number of endmembers to extract (endmember_n) is supposed to be lower than the number of bands in the imagery group. Only the PPI method can extract more endmembers than there are bands in the imagery group.
# List bands bands=`g.list type=raster pattern=lsat7_2002* separator=','` # Create imagery group i.group group=lsat_2002 input="$bands" # Extract Endmembers and perform spectral unmixing using pysptools i.pysptools.unmix input=lsat_2002 endmembers=endmembers endmember_n=5 \ output=spectrum.txt prefix=lsat_spectra --v # Compare to result from i.spec.unmix i.spec.unmix group=lsat7_2002 matrix=sample/spectrum.dat result=lsat7_2002_unmix \ error=lsat7_2002_unmix_err iter=lsat7_2002_unmix_iterations
Chang, C.-I. 2006: A fast iterative algorithm for implementation of pixel purity index. Geoscience and Remote Sensing Letters, IEEE, 3(1): 63-67.
Plaza, A. & Chang, C.-I. 2006: Impact of Initialization on Design of Endmember Extraction Algorithms. Geoscience and Remote Sensing, IEEE Transactions. 44(11): 3397-3407.
Winter, M. E. 1999: N-FINDR: an algorithm for fast autonomous spectral end-member determination in hyperspectral data. Presented at the Imaging Spectrometry V, Denver, CO, USA, (3753): 266-275.