The Matlab program:
   [E,Lambda,SMTArray]=SMTCovarEst(Y)
estimates the covariance of the vectors in the columns
of the matrix Y. E is the matrix of eigenvectors and 
Lambda is the diagonal matrix of eigenvalues so that
the estimated covariance is given by:
    Rsmt = E*Lambda*E';

The Matlab program:
   [E,Lambda]=SMTShrk(Y,alpha)
estimates the covariance of the vectors in the columns
of the matrix Y. The SMT shrinkage estmator given by
   Rshrk = alpha*Rsmt + (1-alpha)*S, 
where Rsmt is the SMT covariance estimator of the covariance
(given by SMTCovarEst) and S is the sample covariance matrix.
The shrinkage intensity alpha can either be specified,
or determined automatically. E is the matrix of eigenvectors 
and Lambda is the diagonal matrix of eigenvalues so that 
the estimated SMT shrinkage covariance is given by:
    Rshrk = E*Lambda*E'; 

In order to see a demonstration of these methods,
execute the script "Run.m" in matlab. 
This will show their application to the estimation
of hyperspectral data covariance.


Guangzhi Cao
Purdue University
Electrical and Computer Engineering
gcao@purdue.edu

Charles A. Bouman
Purdue University
Electrical and Computer Engineering
bouman@purdue.edu
2008-07-07

