Help for EIGEN

PURPOSE:
        EIGEN will compute the principal component (aka the eigenvector or
Karhunen-Loeve) transformation matrix of up to 300 input channels.
The covariance (and, optionally, correlation) matrix, the transformation
matrix of eigen-vectors, and the eigen-values are printed, unless the user
requests otherwise.  If an output is provided, the principal component 
transformation is applied to the input image.

THEORY:

        The measure of inter-dimensional correlation in the multi-variate
system is usually defined by the covariance matrix of the multi-variate
data.  The linear transformation that diagonalizes the covariance matrix
can also be applied to the original data and produce a multi-variate
system with an inter-dimensional correlation of zero, i.e.; completely
uncorrelated multi-variate data.  The linear transformation that
accomplishes this is the matrix of eigen-vectors or characteristic vectors.

        A common application of this transformation is to reduce the
dimensionality of a multi-variate system.  The objective is to summarize
most of the variance, or information content, in a system with a
lessor number of 'artificial' variates, i.e.; principal components.
Effectively, by uncorrelating the system, we are compressing most of the
information into a system with lower dimensionality.

        Assume an n-variate system ( n channels of data ).  Let K be the
n x n covariance matrix of this data and A be the matrix of eigen-vectors
of K.  Associated with each eigen-vector A(j) there is an eigen-value or
characteristic root, e(j).

        Let A(j) = (a(1j),a(2j),...,a(nj)) be the eigen-vector corresponding
        to the jth largest eigen-value.

        Let X = (x(1),x(2),...,x(n)) be the n-variate observation
        ( n-dimensional pixel ).

        Then the jth principal component is: v(j) = A(j)  X = a(ij)x(i)

NOTE:  The jth eigen-value is actually the variance in the jth
principal component dimension.  Therefore, the eigen-values are useful
as a measure the information content that can be expected in the output
pictures.

OPERATION:

The input image is first statistically sampled, using the INC and AREA, 
parameters to select the sampling grid and region(s) of interest. The
user may choose to exclude all pixels that have a specified (by the 
parameter EXCLUDE) value in all input channels.  The channel by channel 
means and variances are computed, as well as the interchannel covariance 
(optionally, correlation) matrix.

From the calculated matrix, the related eigenvalues and eigenvectors are
computed. The matrix of these eigenvectors is often called the principal
component rotation matrix.

A "stretching vector" (or Normalization vector) is formed by taking the
reciprocal of the square root of each element of the eigenvalue vector,
and multiplying it by the SIGMA parameter. This has the effect of 
rescaling the output pixels in such a way that the standard deviation
of each output channel is equal to SIGMA.

Next, an offset value is computed for each output component. The offset
is seleceted to force the mean pixel value in each output channel to be
equal to the target value specified by the MEAN parameter.

Finally, if an output dataset has been provided, this transformation is
applied to the input dataset, and written to the output dataset.

The user may select a subset of the input bands to process, by using the
USEBANDS parameter.  Similarly, the user may save or use a subset of the
principal components, by using the OUTPUT_PCS parameter.

WRTTEN BY:   John Addington
             Ron Alley

COGNIZANT PROGRAMMER: Ron Alley

REVISION:        8 December  2003    REA   Rewritten, adapted from
                                           DESTRETCH, XFORM, and EIGENVEC


PARAMETERS:


INP

input dataset

OUT

(Optional) output dataset

SIZE

The standard Vicar size field (sl,ss,nl,ns)

SL

Starting line

SS

Starting sample

NL

Number of lines

NS

Number of samples

MATRIX

Use correlation or covariance statistics? (Valid: CORR, COV)

INC

Compute statistics from every nth line and nth sample

USEBANDS

Use only these bands in the calculation. (Default is to use all bands.)

OUTPUT_PCS

Restrict the output to the following principal components. (Default is to output all components.)

AREA

The subareas to be used to compute statistics. Up to 50 regions (SL,SS,NL,NS) may be entered. Default is to use the entire image.

MEAN

Desired image mean for each output channel.

SIGMA

Desired image standard deviation for each output channel.

EXCLUDE

Pixels with this DN in all bands will be excluded from all computations.

PRINT

Determines the detail of the printed information output (Valid: ALL, SUMMARY, NOPRINT)

XFORM_PARMS

The name for the parameter dataset to hold the transformation matrix.

See Examples:


Cognizant Programmer: