I’ve been implementing several hyperspectral target detection algorithms for the Matlab Hyperspectral Toolbox. I am going to use this post to summarize my research and implementations. It will take me a few days to get all my thoughts together, so this note will be a “living post” over the next week or so. Please email me if you find any errors or something is not explained clearly. I can be contacted at first.last-At-gergltd.com. Thanks, Isaac Gerg

**Notation**

– Number of bands. E.g. for AVIRIS p = 224.

– Number of pixels.

– Number of materials in the scene.

– Matrix of hyperspectral imagery (HSI) data. Size is (p x N).

– Observation vector, a pixel. Size is (p x 1).

– Data mean. Size is (p x 1).

– Target of interest. Size is (p x 1).

– Covariance matrix of M. Size is (p x p).

– Correlation matrix of M. Size is (p x p).

– Matrix of background endmembers. Size is (p x q).

– Orthogonal projection of .

**Kernels**

Assume the mean has been removed from the data unless otherwise noted.** **Assume these kernels work on radiance or reflectance data unless otherwise noted.** **

**RX Detector**

**Matched Filter (MF)**

**Adaptive Coherent/Cosine Estimator (ACE)**

**Constrained Energy Minimization (CEM)**

and are not centered for this algorithm. I.e. Do not remove the mean of the data when computing this kernel.

**Generalized Likelihood Ratio Test (GLRT)**

**Orthogonal Subspace Projection (OSP)**

**Adaptive Matched Subspace Detector (AMDS)**

B is a matrix of background signatures. Size is (p x q). Z is a matrix of background and target signatures. Size is (p x (q + # targets)).

More to come…..