ClassesClassesClassesClasses | | | | Operators

gen_principal_comp_transT_gen_principal_comp_transGenPrincipalCompTransgen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTrans (Operator)

Name

gen_principal_comp_transT_gen_principal_comp_transGenPrincipalCompTransgen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTrans — Compute the transformation matrix of the principal component analysis of multichannel images.

Signature

gen_principal_comp_trans(MultichannelImage : : : Trans, TransInv, Mean, Cov, InfoPerComp)

Herror T_gen_principal_comp_trans(const Hobject MultichannelImage, Htuple* Trans, Htuple* TransInv, Htuple* Mean, Htuple* Cov, Htuple* InfoPerComp)

Herror gen_principal_comp_trans(Hobject MultichannelImage, HTuple* Trans, HTuple* TransInv, HTuple* Mean, HTuple* Cov, HTuple* InfoPerComp)

HTuple HImage::GenPrincipalCompTrans(HTuple* TransInv, HTuple* Mean, HTuple* Cov, HTuple* InfoPerComp) const

HTuple HImageArray::GenPrincipalCompTrans(HTuple* TransInv, HTuple* Mean, HTuple* Cov, HTuple* InfoPerComp) const

void GenPrincipalCompTrans(const HObject& MultichannelImage, HTuple* Trans, HTuple* TransInv, HTuple* Mean, HTuple* Cov, HTuple* InfoPerComp)

HTuple HImage::GenPrincipalCompTrans(HTuple* TransInv, HTuple* Mean, HTuple* Cov, HTuple* InfoPerComp) const

void HOperatorSetX.GenPrincipalCompTrans(
[in] IHUntypedObjectX* MultichannelImage, [out] VARIANT* Trans, [out] VARIANT* TransInv, [out] VARIANT* Mean, [out] VARIANT* Cov, [out] VARIANT* InfoPerComp)

VARIANT HImageX.GenPrincipalCompTrans(
[out] VARIANT* TransInv, [out] VARIANT* Mean, [out] VARIANT* Cov, [out] VARIANT* InfoPerComp)

static void HOperatorSet.GenPrincipalCompTrans(HObject multichannelImage, out HTuple trans, out HTuple transInv, out HTuple mean, out HTuple cov, out HTuple infoPerComp)

HTuple HImage.GenPrincipalCompTrans(out HTuple transInv, out HTuple mean, out HTuple cov, out HTuple infoPerComp)

Description

gen_principal_comp_transgen_principal_comp_transGenPrincipalCompTransgen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTrans computes the transformation matrix of a principal components analysis of multichannel images. This is useful for images obtained, e.g., with the thematic mapper of the Landsat satellite. Because the spectral bands are highly correlated, it is desirable to transform them to uncorrelated images. This can be used to save storage, since the bands containing little information can be discarded, and with respect to a later classification step.

The operator gen_principal_comp_transgen_principal_comp_transGenPrincipalCompTransgen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTrans takes one or more multichannel images MultichannelImageMultichannelImageMultichannelImageMultichannelImageMultichannelImagemultichannelImage and computes the transformation matrix TransTransTransTransTranstrans for the principal components analysis, as well as its inverse TransInvTransInvTransInvTransInvTransInvtransInv. All input images must have the same number of channels. The principal components analysis is performed based on the collection of data of all images. Hence, gen_principal_comp_transgen_principal_comp_transGenPrincipalCompTransgen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTrans facilitates using the statistics of multiple images.

If n is the number of channels, TransTransTransTransTranstrans and TransInvTransInvTransInvTransInvTransInvtransInv are matrices of dimension n × (n+1), which describe an affine transformation of the multichannel gray values. They can be used to transform a multichannel image with linear_trans_colorlinear_trans_colorLinearTransColorlinear_trans_colorLinearTransColorLinearTransColor. For information purposes, the mean gray value of the channels and the n × n covariance matrix of the channels are returned in MeanMeanMeanMeanMeanmean and CovCovCovCovCovcov, respectively. The parameter InfoPerCompInfoPerCompInfoPerCompInfoPerCompInfoPerCompinfoPerComp contains the relative information content of each output channel.

Parallelization

Parameters

MultichannelImageMultichannelImageMultichannelImageMultichannelImageMultichannelImagemultichannelImage (input_object)  (multichannel-)image(-array) objectHImageHImageHImageHImageXHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4 / real)

Multichannel input image.

TransTransTransTransTranstrans (output_control)  real-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Transformation matrix for the computation of the PCA.

TransInvTransInvTransInvTransInvTransInvtransInv (output_control)  real-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Transformation matrix for the computation of the inverse PCA.

MeanMeanMeanMeanMeanmean (output_control)  real-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Mean gray value of the channels.

CovCovCovCovCovcov (output_control)  real-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Covariance matrix of the channels.

InfoPerCompInfoPerCompInfoPerCompInfoPerCompInfoPerCompinfoPerComp (output_control)  real-array HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Information content of the transformed channels.

Result

The operator gen_principal_comp_transgen_principal_comp_transGenPrincipalCompTransgen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTrans returns the value 2 (H_MSG_TRUE) if the parameters are correct. Otherwise an exception is raised.

Possible Successors

linear_trans_colorlinear_trans_colorLinearTransColorlinear_trans_colorLinearTransColorLinearTransColor

Alternatives

principal_compprincipal_compPrincipalCompprincipal_compPrincipalCompPrincipalComp

Module

Foundation


ClassesClassesClassesClasses | | | | Operators