HyperSpectral Image Analysis - cpshooter/geoML GitHub Wiki
HyperSpectral Image Analysis: The science team of the Mars Reconnaissance Orbiter (MRO) CRISM hyperspectral instrument has published more than 40 algorithms to create derived spectral parameter products [e.g., 8]. Many of these are sufficiently complex that a command-line implementation is most suitable. Others are ideal for interactive data exploration. For example, ICER2 is a simple band ratio of the CRISM 2350µm band and the 2600µm band to highlight CO2 ice on the Mars surface. Although the CRISM team uses Exelis' ENVI application, the opensource IPython suite provides a simple, cost-effective solution for deriving these CRISM spectral data products. IPython offers an interactive Python shell and an integrated command line shell, so one can access a text editor (vim, nano), GDAL command line tools, and all available Python modules. To perform the ICER2 band ratio, users can simply download their desired image, determine the band numbers that represent 2350µm and 2600µm using the appropriate wavelength.tab lookup table, read each band as a NumPy array, derive the ratio using standard mathematical notation (Array_1/Array_2), and write the output to disk using GDAL's Python bindings. A user needing only to visualize the results could plot the data using MatPlotLib without having to write the results to disk. This use case example highlights the suitability of Python to operate as an interactive data analysis environment that provides usage familiar to scientists in an open-source package.