Advanced Hyperspectral Analysis Using ENVI - Tutorial of ENVI Software - Completely GIS, GPS, and Remote Sensing Lecture Material -
Advanced Hyperspectral Analysis Using ENVI

Overview of This Tutorial

This tutorial is designed to introduce you to advanced concepts and procedures for analysis of imaging spectrometer data or hyperspectral images . We will use 1995 Airborne Visible/Infrared Imaging Spectrometer (AVIRIS) data from Cuprite, Nevada, to investigate sub-pixel properties of hyperspectral data and advanced techniques for identification and quantification of mineralogy. We will use "Effort" "polished" ATREM-calibrated data, and review matched filter and spectral unmixing results. This tutorial is designed to be completed in two to four hours.

Files Used in This Tutorial

You must have the ENVI TUTORIALS & DATA CD-ROM mounted on your system to access the files used by this tutorial, or copy the files to your disk.

The files used in this tutorial are contained in the C95AVSUB subdirectory of the ENVIDATA directory on the ENVI TUTORIALS & DATA CD-ROM.

The files listed below, along with their associated .hdr files, are required to run this exercise. Optional spectral library files listed below may also be used if more detailed comparisons are desired. Selected data files have been converted to integer format by multiplying the reflectance values by 1000 because of disk space considerations. Values of 1000 in the files represent reflectance values of 1.0.

Required Files

CUP95EFF.INT	"Effort" corrected ATREM apparent reflectance data, 56 bands, 1.96 - 2.51 mm.
CUP95MNF.DAT	First 25 MNF bands.
CUP95MNF.ASC	MNF eigenvalue spectrum
CUP95PPI.DAT	Pixel Purity Index (PPI) Image
CUP95PPI.ROI	Region of Interest for PPI values greater than 1750
CUP95PPI.NDV	N-D Visualizer Saved State File.
CUP95NDV.ROI	ASCII file spectral endmembers corresponding to the N-D Visualizer Saved State File
CUP95_EM.ASC	ASCII file of 11 spectral endmembers elected using the PPI threshold, MNF images, and n-D   Visualization - used in Matched Filtering and Unmixing
CUP95MAT.DAT	Match Filter Results--Mineral Images
CUP95UNM.DAT	Unmixing Results--Fractional Abundance images.

Optional Files

JPL1.SLI	JPL Spectral Library in ENVI format.
USGS_MIN.SLI	USGS Spectral Library in ENVI format.

Open and Load the 1995 Effort-Corrected Data

  1. Open the file CUP95EFF.INT.

This is the 1995 AVIRIS ATREM-calibrated apparent reflectance data with the Effort correction applied.

  1. Start a new display by clicking on the "New" button in the Available Bands List.
  2. Load band 193 as a grayscale image in the new image display by clicking on the "Load Band" button.

These data will be used for comparison with MNF bands and to extract spectral endmembers for PPI results.

MNF Transform Data, Endmembers, and Spectral Unmixing

Background: Minimum Noise Fraction

The minimum noise fraction (MNF) transformation is used to determine the inherent dimensionality of image data, to segregate noise in the data, and to reduce the computational requirements for subsequent processing (See Boardman and Kruse, 1994). The MNF transform as modified from Green et al . (1988) and implemented in ENVI is essentially two cascaded Principal Components transformations. The first transformation, based on an estimated noise covariance matrix, decorrelates and rescales the noise in the data. This first step results in transformed data in which the noise has unit variance and no band-to-band correlations. The second step is a standard Principal Components transformation of the noise-whitened data. For the purposes of further spectral processing, the inherent dimensionality of the data is determined by examination of the final eigenvalues and the associated images. The data space can be divided into two parts: one part associated with large eigenvalues and coherent eigenimages, and a complementary part with near-unity eigenvalues and noise-dominated images. By using only the coherent portions, the noise is separated from the data, thus improving spectral processing results.

Advanced Hyperspectral Analysis Using ENVI - facegis.comFigure 1 summarizes the MNF procedure in ENVI. The noise estimate can come from one of three sources; from the dark current image acquired with the data (for example AVIRIS), from noise statistics calculated from the data themselves, or from statistics saved from a previous transform. Both the eigenvalues and the MNF images (eigenimages) are used to evaluate the dimensionality of the data. Eigenvalues for bands that contain information will be an order of magnitude larger than those that contain only noise. The corresponding images will be spatially coherent, while the noise images will not contain any spatial information.

Open and Load MNF Image

  1. Open the file CUP95MNF.DAT .

This dataset contains the first 25 MNF bands (floating point) from the 1995 Cuprite Effort data.

  1. Load the first MNF band as a grayscale image in a new image display by clicking on the band name, clicking "New", and then "Load Band" in the Available Bands List.

Compare MNF Images

  1. Load several other MNF bands, either one at a time for individual examination or in RGB composites for intercomparison.
  2. Use the Z-Profile, image linking, and Dynamic Overlay tools to compare MNF-spectra with Apparent Reflectance spectra from the Effort image.
  3. Try to determine the relation(s) between the MNF image and the apparent reflectance images. Relate MNF band number to MNF image quality.

Examine MNF Scatterplots

  1. Use 2-D scatter plots in forward and inverse mapping modes to understand the MNF images.
  2. Be sure to examine the high variance (low band number) MNF bands. Also be sure to examine at least one scatterplot of a low variance (high band number) MNF band (change the bands by selecting Options->Change Bands in the Scatter Plot window).

Note the "corners" on some MNF scatterplots (Figure 2).Advanced Hyperspectral Analysis Using ENVI -

  1. Use linked windows, overlays, and Z-profiles to understand the reflectance spectra of the MNF corner pixels.

Note when the MNF data stops being "pointy" and begins being "fuzzy" and the relation between scatterplot pixel location and spectral mixing as determined from image color and individual reflectance spectra.

  • How do you explain these patterns? How can you exploit them?

Use Scatterplots to Select Endmembers

We will now investigate the possibilities of deriving unmixing endmembers from the data using MNF images and the 2-D scatterplot tools.

  1. Load a scatterplot of MNF bands 1 and 2.
  2. In the scatter plot, use the ROI drawing functions to circle the extreme few pixels in one or more of the corners or arms of the data cloud.

These will be mapped into the image as colored pixels.

  1. Use different colors for several classes by selecting the desired color from the Class pulldown menu in the Scatter Plot window.
  2. Use image and scatterplot Dancing Pixels to help identify unique areas.
  3. Select Options->Export All in the Options pulldown menu of the scatter plot to export these lists of pixels as ENVI Regions of Interest (ROI).
  4. Load these ROI into the window displaying the apparent reflectance data by choosing selecting Functions->Interactive Analysis->Region of Interest->Define Regions in the Main window.
  5. Enter the display number (#1) in the "Display #" text box to display the ROI on the Apparent Reflectance image.
  6. Continue to select MNF-corner ROIs using different combinations of the first several MNF bands.
  7. Use the "Mean All" button to extract the mean apparent reflectance spectra of the ROIs.
  8. Do the same for the MNF data by entering the display number (#2) in the Display # text box and extracting the mean MNF spectra.
  9. Use the linked windows and Z-profiles to examine the relations between the MNF and reflectance spectra.

Note that corner pixels on the scatterplots generally make good endmember estimates. However, note also the occurrence of overlapping or repeat ROIs. This is a limitation of examining the data in a pairwise fashion (2-D).

  1. Close the 2-D scatterplot by selecting File->Cancel in the Scatter Plot window.

Pixel Purity Index

In this portion of the exercise, you will examine the role of convex geometry in determining the relative purity of pixels. Separating purer from more mixed pixels reduces the number of pixels to be analyzed for endmember determination and makes separation and identification of endmembers easier.

The "Pixel-Purity-Index" (PPI) is a means of finding the most "spectrally pure," or extreme, pixels in multispectral and hyperspectral images. See Boardman et al . (1995). The most spectrally pure pixels typically correspond to mixing endmembers. The Pixel Purity Index is computed by repeatedly projecting n -dimensional scatter plots onto a random unit vector. The extreme pixels in each projection are recorded and the total number of times each pixel is marked as extreme is noted. A Pixel Purity Index (PPI) image is created in which the DN of each pixel corresponds to the number of times that pixel was recorded as extreme. Figure 3 summarizes the use of PPI in ENVI.

Advanced Hyperspectral Analysis Using ENVI -

Display and Analyze the Pixel Purity Index

  1. Open the file CUP95PPI.DAT and display it as a grayscale image.

Brighter pixels represent more spectrally extreme "hits" and indicate pixels that are more spectrally pure. Darker pixels are less spectrally pure.

  1. Try various interactive stretches from the Contrast Stretch pulldown menu under the ENVI File menu to understand the PPI image's histogram and data distribution.
  2. Why is the histogram skewed to the low values. What does this mean from a mixing point of view?
  3. If not already open and displayed, open the MNF and Effort apparent reflectance files and load bands from each of these two into two new windows.

The PPI image is the result of several thousand iterations of the PPI algorithm discussed above on the MNF data. The values in the image indicate the number of times each pixel was discovered as extreme in some projection. These numbers then indicate the degree of local convexity of the data cloud near each pixel and the proximity of each pixel to the convex hull of the data. In short, the higher values indicate pixels that are nearer "corners" of the n -Dimensional data cloud, and are thus relatively purer than pixels with lower values. Pixels with values of zero were never found to be extreme.

  1. Link all three windows and create Z-profiles in the MNF and reflectance image displays.

In this configuration, you can examine the spectral profiles of certain pixels as they are selected in the PPI display.

  1. To determine the range of values present in the image, also use the Cursor Location/Value dialog (by selecting either Basic Tools->Cursor Location/Value on the ENVI Main menu or Functions->Interactive Analysis Cursor Location/Value in the Main window).
  2. Move around the image using the Z-profiles and dynamic overlay tools to examine the purest pixels both spatially and spectrally.
  3. Do any of the high PPI values fall in the regions of the image corresponding to the 2-D scatterplot corners you picked in the previous exercise? Why?

Threshold PPI to Regions of Interest

  1. Restore the file CUP95PPI.ROI using the "Restore ROI" button in the Region of Interest Controls dialog.

This is a list of pixels where the PPI value is over 1000.

  • How many high PPI pixels are there?

Now try making some of your own thresholded PPI Regions of Interest.

  1. Select Functions->Display Enhancements->Interactive Stretching in the PPI image.
  2. Determine a threshold to use for choosing only the purest pixels by using the left mouse button to read values off the histogram.
  3. Click the middle mouse button in the histogram to zoom in on the lower end of the distribution.
  4. Select a value on the high tail of the histogram as the minimum threshold (if you have difficulty with this try a value of "2000" as a starting point).
  5. Select Functions->Region of Interest->Image Threshold to ROI in the Main window to create an ROI containing only the pixels with high PPI values.
  6. Choose the PPI file for thresholding and enter the value selected above for the minimum threshold and click "OK".

ENVI will determine the number of pixels that meet the selected criteria and post a message.

  • For the purposes of this exercise, if your threshold results in more than 2000 pixels being selected, you should select a higher minimum threshold.
  • Click "OK" and a standard ENVI ROI will be created and listed in the Region of Interest Controls dialog.

Only those pixels with values greater than the selected minimum will be included in the ROI built from the PPI image.

  1. Select and display the ROI by clicking on the name in the ROI Controls dialog.

This ROI contains the pixel locations of the purest pixels in the image regardless of the endmember to which they correspond. The n -Dimensional Visualizer will be used in the next portion of the exercise to isolate the specific pure endmembers.

n -Dimensional Visualization

Spectra can be thought of as points in an n -dimensional scatter plot, where n is the number of bands. See Boardman et al . (1995). The coordinates of the points in n -space consist of "n" values that are simply the spectral radiance or reflectance values in each band for a given pixel. The distribution of these points in n -space can be used to estimate the number of spectral endmembers and their pure spectral signatures.

ENVI's n -Dimensional Visualizer provides an interactive tool for selecting the endmembers in n -space. In this section, you will examine a Grand Tour of the n -dimensional data. Because the computer method is computer intensive, it only operates well with no more than a few thousand pixels in a few dozen bands. From a theoretical standpoint, it makes little sense to view all the mixed pixels. The most important pixels, those that best suggest the endmember materials, are the purest pixels, previously selected using the PPI thresholding. Figure 4 summarizes the steps involved in using the n -Dimensional Visualizer to select endmember spectra.

Advanced Hyperspectral Analysis Using ENVI -

Compare n -D Data Visualization with 2-D Scatterplot

  1. Select Spectral Tools->n-Dimensional Visualizer >Visualize with New Data.
  2. Select the MNF file CUP95MNF.DAT for visualization using the first 10 MNF bands and click "OK".

Remember that these bands encompass almost all the signal variability and limiting the number of bands will improve the interactive visualization performance. The other, higher-order MNF bands have already been discarded as primarily noise.

If you only have one valid ROI listed in the Regions of Interest Controls dialog, that ROI data will automatically be loaded into the n -Dimensional Visualizer. If you have more than one ROI, choose the ROI derived using the PPI threshold when queried. After a short wait, the n -D scatter plotting window and controls will appear. The numbers 1 through 10 on the n -D Controls dialog refer to the ten spectral bands chosen.

Advanced Hyperspectral Analysis Using ENVI -

  1. Click on "1" and "2" to create a 2-D scatterplot of the purest pixels of band 1 and 2 (Figure 5).
  2. Meanwhile, also start a standard 2-D scatterplot of MNF bands 1 and 2 (Figure 6) for comparison by selecting Functions->Interactive Analysis->2-D Scatterplot in the Main window.
  3. Compare the two scatterplots.
  4. Can you see how pixels were excluded from the n -D scatterplot based on pixel purity? Why is this important?

Use the n -D Visualizer

  1. Close the 2-D scatterplot and try several different 2-band combinations in the n -D Visualizer.

Note the shape of the data clouds. Be sure to examine some of the higher order MNF bands.

  1. Now try several three-band combinations by clicking on three of the band numbers.
  2. When only 3 bands are selected, you can "drive" the view of the projection by clicking on the arrow toggle button near the bottom of the n -D Controls dialog to toggle the "Drive Axes" option.
  3. Subsequently clicking and dragging with the left mouse button in the n -D Visualizer rotates the projection.

Again, note the shape of the data clouds. Be sure to examine some of the higher order MNF bands.

  1. Toggle back to "Define ROI" when finished with the 3-D visualization; we will use the ROIs in higher dimensional rotations.
  2. Click on the "Start" button to start the "Grand Tour."

This is an animation of random projections of n -Dimensional space into the scatter plot. In this mode, any number of bands can be examined simultaneously.

  1. Click on bands 1, 2, 3, 4, and 5 to view a projection of 5-D data.
  2. Click on bands again to deselect them.
  3. Try a few different combinations of 2, 3, and more different bands to get a feeling for the n -D data.
  4. Try 9 versus 10 to see how it compares to 1 versus 2.
  5. While the data are rotating, you can stop and start the rotation by clicking "Start/Stop".
  6. Click "Axes" to display the axes for the various bands in the n-Dimensional projection.

Note how the rotations seem different when more than three bands are included. This is the result of dimensions greater than 3 being "folded" in upon themselves in the projection. This should convince you that the data is truly high dimensional and why 2-D scatterplots are inadequate for dealing with hyperspectral data.

Restore n-D Visualizer Saved State

  1. Start another n-D Visualizer session using previously saved parameters and "Painted" endmembers by selecting Spectral Tools->n-D Visualizer->Visualize with Previously Saved Data.
  2. Select the file CUP95PPI.NDV .
  3. Click on the Start/Stop button to start rotating the data.

The colored pixels in the visualizer represent previously selected endmembers.

  1. Examine different projections and numbers of bands in the visualizer.
  2. Click on "Start/Stop" to stop the rotation.
  3. Click "Delete All" in the Region of Interest Controls dialog to remove all previous regions of interest.
  4. Now select Options->Export All in the n-D Visualizer Controls dialog.
  5. In the Region of Interest Controls dialog, make sure that the display is set to the Effort apparent reflectance image and then click "Mean All" to extract average reflectance spectra for all of the endmembers.
  6. Examine the relations between reflectance spectra and the painted pixels in the n-D Visualizer.

Pay particular attention to similar spectra and the positions of painted clusters.

Paint Your Own Endmembers

  1. Go back to your original n-Dimensional Visualizer Controls and restart the rotation using the "Start/Stop" button.
  2. When you see an interesting projection (one with points or corners), stop the rotation, select a color from the list under the Class pulldown menu, and use the cursor to circle the points at one or more of the corners.
  3. Use the left mouse button to define the segments of a ROI in the scatterplot, and the right mouse button to complete the ROI.
  4. Continue spinning the data and update classes as needed as they split up in further projections.

Link the n-D Visualizer to Spectral Profiles

You can view reflectance spectra for specific endmembers while you're painting endmember and rotating the scatterplot. This allows you to preview spectra before finalizing spectral classes

  1. Select Options->Z-Profile in the n-D Controls dialog. Choose the reflectance data CUP95EFF.INT from the list and click OK. A blank spectral plot appears.
  2. Click the left mouse button in the n-D Visualizer, and a spectrum will appear for the current pixel in the n-D Profile window. Dragging the cursor around the image with the left mouse button depressed allows real-time spectral browsing. When the cursor is in an n-D-defined class, the plotted spectrum will match the color of that class.
  3. Click the right mouse button in the n-D Profile window and drag to turn on (off) spectrum collection. Each subsequent spectrum will be retained in the one plot, without erasing the previous spectrum

Collapse Classes in the n-D Visualizer

Once you have identified a few endmembers, it may be difficult to find additional endmembers, even though you run the grand tour or many different 2-D projections of the n-Dimensional data.

Class Collapsing in ENVI is a means of simplifying this endmember determination problem by allowing you to group the endmembers you have already found into one group representing the background. The net result is that mixing features that were previously hidden become visible, and can be selected using ENVI's ROI drawing in the n-D Visualizer window.

  1. To collapse on means, select Options->Collapse Classes by Means from the n-D Controls menu bar to geometrically project the selected data acording to their class mean values. Alternatively select Options->Collapse Classes by Variance.
  2. Use the Z-profile to verify that you are choosing homogenious endmember classes.

Note that the bands selected are now listed in red and only two are chosen. Additionally, a MNF plot appears, estimating the dimensionality of the data, and the number of endmembers remaining to be found. Repeat the endmember selection and class collpsing process until there are no new endmembers found.

Export Your Own ROIs

You can also export mean spectra for the selected endmembers.

  1. Delete all of the previous ROIs by clicking "Delete All" in the Region of Interest Controls dialog.
  2. Export your best set of classes to ROIs by clicking on the "Export All" button.
  3. Load these ROIs onto the Effort apparent reflectance image by entering the appropriate display number in the "Display #" text box in the ROI Controls dialog.
  4. Examine their spatial locations.
  5. Extract the average spectra for the different ROIs using either the "Stats" or "Mean All" buttons.
  6. Compare these endmembers to endmembers extracted using the 2-D scatterplots and those used in the previous exercises.
  7. Use the Z-Profile in the n-D Visualizer window to compare single spectra with average spectra.

Close all Displays and Other Windows

  1. Select File->Close All Files from the ENVI Main menu to close all open files and their associated displays.
  2. Select File->Cancel in the n-D Visualizer controls to close those windows and the n-D Visualizers.

Matched Filter Background

Matched filtering is based on well-known signal processing methodologies. It maximizes the response of a known endmember and suppresses the response of the composite unknown background, thus "matching" the known signature (Chen and Reed, 1987; Stocker et al., 1990; Yu et al., 1993; Harsanyi and Chang, 1994). It provides a rapid means of detecting specific minerals based on matches to specific library or image endmember spectra. This technique produces images similar to the unmixing as described below, but with significantly less computation. Matched filter results are presented as gray-scale images with values from 0 to 1.0, which provide a means of estimating relative degree of match to the reference spectrum (where 1.0 is a perfect match).

Matched Filter Results

Open Files and Compare Matched Filter Results

  1. Open the Matched Filter Results in the file CUP95MAT.DAT.
  2. Display the match to the "Kaolinite" endmember by clicking on that name in the Available Bands List, followed by clicking "Load Band".

A grayscale image of the matched filter results for Kaolinite will be displayed. The brightest pixels represent the best match to the endmember spectrum.

  1. Open a new plot window by selecting Basic Tools->Display Controls->New Plot Window.
  2. Select File->Input->ASCII in the plot window and load the file CUP95_EM.ASC and examine the corresponding endmember spectrum.
  3. Stack the spectra by selecting Options->Stack Data in the Plot Window.
  4. Load the other Matched Filter result images, look at the pixel distributions for the various endmembers.
  5. If time and disk space permit, try your own matched filtering.

Close all Displays and Other Windows

  • To close all open files and their associated displays, select File->Close All Files from the ENVI Main menu.

Background: Unmixing

Natural surfaces are rarely composed of a single uniform material. Spectral mixing occurs when materials with different spectral properties are represented by a single image pixel. Several researchers have investigated mixing scales and linearity. Singer and McCord (1979) found that if the scale of the mixing is large (macroscopic), mixing occurs in a linear fashion (Figure 7) For microscopic or intimate mixtures, the mixing is generally nonlinear (Nash and Conel, 1974; Singer, 1981).

Advanced Hyperspectral Analysis Using ENVI - facegis.comThe linear model assumes no interaction between materials. If each photon only "sees" one material, these signals add (a linear process). Multiple scattering involving several materials can be thought of as cascaded multiplications (a non-linear process). The spatial scale of the mixing and the physical distribution of the materials governs the degree of non-linearity. Large-scale aerial mixing is very linear. Small-scale intimate mixtures are slightly non-linear. In most cases, the non-linear mixing is a second order effect. Many surface materials mix in non-linear fashions but linear unmixing techniques, while at best an approximation, appear to work well in many circumstances (Boardman and Kruse, 1994). While abundances determined using the linear techniques are not as accurate as those determined using non-linear techniques, to the first order they appear to adequately represent conditions at the surface.

What Causes Spectral Mixing

A variety of factors interact to produce the signal received by the imaging spectrometer

  • A very thin volume of material interacts with incident sunlight. All the materials present in this volume contribute to the total reflected signal.
  • Spatial mixing of materials in the area represented by a single pixel result in spectrally mixed reflected signals.
  • Variable illumination due to topography (shade) and actual shadow in the area represented by the pixel further modify the reflected signal, basically mixing with a "black" endmember.
  • The imaging spectrometer integrates the reflected light from each pixel.

Modeling Mixed Spectra

The simplest model of a mixed spectrum is a linear one, in which the spectrum is a linear combination of the "pure" spectra of the materials located in the pixel area, weighted by their fractional abundance (Figure 8).

Advanced Hyperspectral Analysis Using ENVI - facegis.comThis simple model can be formalized in three ways: a physical model a mathematical model, and a geometric model. The physical model as discussed above includes the Ground Instantaneous Field of View (GIFOV) of the pixels, the incoming irradiance, the photon-material interactions, and the resulting mixed spectra. A more abstract mathematical model is required to simplify the problem and to allow inversion, or unmixing (Figure 9).



Advanced Hyperspectral Analysis Using ENVI - facegis.comA spectral library forms the initial data matrix for the analysis. The ideal spectral library contains endmembers that when linearly combined can form all other spectra. The mathematical model is a simple one. The observed spectrum (a vector) is considered to be the product of multiplying the mixing library of pure endmember spectra (a matrix) by the endmember abundances (a vector). An inverse of the original spectral library matrix is formed by multiplying together the transposes of the orthogonal matrices and the reciprocal values of the diagonal matrix (Boardman, 1989). A simple vector-matrix multiplication between the inverse library matrix and an observed mixed spectrum gives an estimate of the abundance of the library endmembers for the unknown spectrum.

The geometric mixing model provides an alternate, intuitive means to understand spectral mixing. Mixed pixels are visualized as points in n -dimensional scatter-plot space (spectral space), where n is the number of bands. In two dimensions, if only two endmembers mix, then the mixed pixels will fall in a line (Figure 10a). The pure endmembers will fall at the two ends of the mixing line. If three endmembers mix, then the mixed pixels will fall inside a triangle (Figure 10b). Mixtures of endmembers "fill in" between the endmembers.

Advanced Hyperspectral Analysis Using ENVI - facegis.comAdvanced Hyperspectral Analysis Using ENVI -

All mixed spectra are "interior" to the pure endmembers, inside the simplex formed by the endmember vertices, because all the abundances are positive and sum to unity. This "convex set" of mixed pixels can be used to determine how many endmembers are present and to estimate their spectra. The geometric model is extensible to higher dimensions where the number of mixing endmembers is one more than the inherent dimensionality of the mixed data.

Practical Unmixing Methods

Two very different types of unmixing are typically used: Using "known" endmembers and using "derived" endmembers.

Using known endmembers, one seeks to derive the apparent fractional abundance of each endmember material in each pixel, given a set of "known" or assumed spectral endmembers. These known endmembers can be drawn from the data (averages of regions picked using previous knowledge), drawn from a library of pure materials by interactively browsing through the imaging spectrometer data to determine what pure materials exist in the image, or determined using expert systems as described above or other routines to identify materials.

The mixing endmember matrix is made up of spectra from the image or a reference library. The problem can be cast in terms of an overdetermined linear least squares problem. The mixing matrix is inverted and multiplied by the observed spectra to get least-squares estimates of the unknown endmember abundance fractions. Constraints can be placed on the solutions to give positive fractions that sum to unity. Shade and shadow are included either implicitly (fractions sum to 1 or less) or explicitly as an endmember (fractions sum to 1).

The second unmixing method uses the imaging spectrometer data themselves to "derive" the mixing endmembers (Boardman and Kruse, 1994). The inherent dimensionality of the data is determined using a special orthogonalization procedure related to principal components:

  • A linear sub-space, or "flat" that spans the entire signal in the data is derived.
  • The data are projected onto this subspace, lowering the dimensionality of the unmixing and removing most of the noise.
  • The convex hull of these projected data is found.
  • The data are "shrink-wrapped" by a simplex of n -dimensions, giving estimates of the pure endmembers.
  • These derived endmembers must give feasible abundance estimates (positive fractions that sum to unity).

Spectral unmixing is one of the most promising hyperspectral analysis research areas. Analysis procedures using the convex geometry approach already developed for AVIRIS data have produced quantitative mapping results for a a variety of materials (geology, vegetation, oceanography) without a priori knowledge. Combination of the unmixing approach with model-based data calibration and expert system identification capabilities could potentially result in an end-to-end quantitative yet automated analysis methodology.

Unmixing Results

In this section, you will examine the results of unmixing using the means of the ROIs restored above and applied to the first ten MNF bands. You will then run your own unmixing using endmember suites of your own choosing.

Open and Display the Unmixing Results

  1. Open the file CUP95UNM.DAT .
  2. Load the Kaolinite abundance image by clicking on the Kaolinite band name and then "Load Band" in the Available Bands List.

Brighter areas correspond to higher abundances.

  • Use contrast stretching, if necessary, to show only the higher values (larger apparent abundances).
  • Load the other fractional abundance images into one or more displays and compare the distribution of endmembers.

Determine Abundances

  1. Select Basic Tools->Cursor Location/Value and investigate the values at specific pixels.
  2. Open the Effort data CUP95EFF.DAT and create spectral (Z) profiles of the reflectance data to reconcile absorption band strength with apparent abundance of the various endmembers.

Display a Color Composite

  1. Choose three good unmixing result images and make an RGB color composite.
  2. Use spatial and spectral clues to evaluate the results of the unmixing.
  3. Explain the colors in the RGB composite of fraction endmembers in terms of mixing.

Note the occurrence of non-primary colors (not R, G, or B).

  • Are all of the fractions feasible?

Note areas where unreasonable results were obtained (eg. fractions greater than one or less than zero).

  1. Examine the RMS Error image and look for areas with high errors (bright areas in the image).
  2. Are there other endmembers that could be used for iterative unmixing? How do you reconcile these results if the RMS Error image doesn't have any high errors yet there are negative abundances or abundances greater than 1.0?

Optional: Perform Your Own Matched Filtering & Spectral Unmixing

  1. Choose Spectral Tools->Mapping Methods->Matched Filter or Linear Spectral Unmixing.

You can create your own endmembers from single pixels, ROI means, or import them from spectral libraries.

Using the drag and drop method from spectral plots, you can build up your own spectral suite of mixing endmembers.

  1. Click the right mouse button in the extreme right of the window that shows your desired endmember spectrum to view the spectrum name.
  2. Click and drag on the spectrum name of the desired spectrum to move it.
  3. Drop the name into the black box on the endmember selection dialog to add it to the suite of endmembers.
  4. Compare your matched filter results and/or fractional abundance images to those previously examined.

Think about how the results depend entirely on the endmember selection.


  • When you have finished your ENVI session, click "Quit" or "Exit" on the ENVI Main Menu.


Boardman, J. W., 1993, Automated spectral unmixing of AVIRIS data using convex geometry concepts: in Summaries, Fourth JPL Airborne Geoscience Workshop, JPL Publication 93-26, v. 1, p. 11 - 14.

Boardman J. W., and Kruse, F. A., 1994, Automated spectral analysis: A geologic example using AVIRIS data, north Grapevine Mountains, Nevada: in Proceedings, Tenth Thematic Conference on Geologic Remote Sensing, Environmental Research Institute of Michigan, Ann Arbor, MI, p. I-407 - I-418.

Boardman, J. W., Kruse, F. A., and Green, R. O., 1995, Mapping target signatures via partial unmixing of AVIRIS data: in Summaries, Fifth JPL Airborne Earth Science Workshop, JPL Publication 95-1, v. 1, p. 23-26.

Chen, J. Y., and Reed, I. S., 1987, A detection algorithm for optical targets in clutter, IEEE Trans. on Aerosp. Electron. Syst., vol. AES-23, no. 1.

Green, A. A., Berman, M., Switzer, P, and Craig, M. D., 1988, A transformation for ordering multispectral data in terms of image quality with implications for noise removal: IEEE Transactions on Geoscience and Remote Sensing, v. 26, no. 1, p. 65-74.

Harsanyi, J. C., and Chang, C. I., 1994, Hyperspectral image classification and dimensionality reduction: An orthogonal subspace projection approach: IEEE Trans. Geosci. and Remote Sens., v. 32, p. 779-785.

Nash, E. B., and Conel, J. E. (1974) Spectral reflectance systematics for mixtures of powdered hypersthene, labradorite, and ilmenite, Journal of Geophysical Research, 79, 1615-1621.

Singer, R. B., 1981, Near-infrared spectral reflectance of mineral mixtures: Systematic combinations of pyroxenes, olivine, and iron oxides: Journal of Geophysical Research, 86, 7967-7982.

Singer, R. B., and McCord, T. B., 1979, Mars: Large scale mixing of bright and dark surface materials and implications for analysis of spectral reflectance: in Proceedings Lunar and Planetary Science Conference, 10th, p. 1835-1848.

Stocker, A. D., Reed, I. S., and Yu, X., 1990, Mulitdimensional signal processing for electrooptical target detection, Proc, SPIE Int. Soc. Opt. Eng., vol. 1305

Yu, X., Reed, I. S., and Stocker, A. D., 1993, Comparative performance analysis of adaptive multispectral detectors, IEEE Trans. on Signal Processing, vol. 41, no. 8.