gen_principal_comp_transT_gen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTransgen_principal_comp_trans (Operator)

Name

gen_principal_comp_transT_gen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTransgen_principal_comp_trans — Berechnung der Transformationsmatrix der Hauptachsentransformation (Principal Components Analysis) von mehrkanaligen Bildern.

Signatur

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)

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

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)

def gen_principal_comp_trans(multichannel_image: HObject) -> Tuple[Sequence[float], Sequence[float], Sequence[float], Sequence[float], Sequence[float]]

Beschreibung

gen_principal_comp_transgen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTransGenPrincipalCompTransgen_principal_comp_trans berechnet die Transformationsmatrix für eine Hauptachsentransformation (Principal Components Analysis) von mehrkanaligen Bildern. Diese Transformation ist z.B. bei Bildern nützlich, die mit dem Thematic Mapper des Landsat Satelliten aufgenommen wurden. Da die einzelnen Kanäle zum Teil starke Korrelationen aufweisen, ist es wünschenswert, die Eingabebilder in Bilder zu transformieren, die möglichst wenig Korrelation aufweisen. Dies ist zum einen nützlich, um Speicherplatz zu sparen, da Bildkomponenten mit geringem Informationsgehalt vernachlässigt werden können, und zum anderen im Hinblick auf eine spätere Klassifikation.

Die Funktion gen_principal_comp_transgen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTransGenPrincipalCompTransgen_principal_comp_trans nimmt ein oder mehrere Eingabebilder in MultichannelImageMultichannelImageMultichannelImageMultichannelImagemultichannelImagemultichannel_image und berechnet die Transformationsmatrix TransTransTransTranstranstrans für die Hauptachsentransformation, sowie ihre Inverse TransInvTransInvTransInvTransInvtransInvtrans_inv. Alle Eingabebilder müssen dieselbe Anzahl von Kanälen haben. Die Hauptachsentransformation wird aus allen Bildern gemeinsam berechnet. Somit erlaubt es gen_principal_comp_transgen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTransGenPrincipalCompTransgen_principal_comp_trans, die Statistik mehrerer Bilder auszunutzen.

Wenn n die Anzahl der Kanäle ist, sind TransTransTransTranstranstrans und TransInvTransInvTransInvTransInvtransInvtrans_inv Matrizen der Dimension n × (n+1), die eine affine Transformation der mehrkanaligen Grauwerte beschreiben. Sie können mit dem Operator linear_trans_colorlinear_trans_colorLinearTransColorLinearTransColorLinearTransColorlinear_trans_color verwendet werden, um ein mehrkanaliges Bild zu transformieren. Als Information werden in MeanMeanMeanMeanmeanmean und CovCovCovCovcovcov die mittleren Grauwerte der einzelnen Kanäle sowie die n × n Kovarianzmatrix der Grauwerte zurückgegeben. In dem Ausgabeparameter InfoPerCompInfoPerCompInfoPerCompInfoPerCompinfoPerCompinfo_per_comp wird der jeweilige relative Informationsgehalt der einzelnen Komponenten zurückgegeben.

Achtung

Beachten Sie, dass Filteroperatoren eventuell unerwartete Resultate ausgeben, wenn ein Bild mit einer reduzierten Domäne als Input übergeben wird. Weitere Informationen können im Kapitel Filter gefunden werden.

Ausführungsinformationen

Parameter

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

Mehrkanaliges Bild.

TransTransTransTranstranstrans (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Transformationsmatrix zur Berechnung der PCA.

TransInvTransInvTransInvTransInvtransInvtrans_inv (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Transformationsmatrix zur Berechnung der inversen PCA.

MeanMeanMeanMeanmeanmean (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Mittelwert der jeweiligen Kanäle.

CovCovCovCovcovcov (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Kovarianzmatrix der Kanäle.

InfoPerCompInfoPerCompInfoPerCompInfoPerCompinfoPerCompinfo_per_comp (output_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Informationsgehalt der transformierten Kanäle.

Ergebnis

Sind die Parameterwerte korrekt, dann liefert gen_principal_comp_transgen_principal_comp_transGenPrincipalCompTransGenPrincipalCompTransGenPrincipalCompTransgen_principal_comp_trans den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Nachfolger

linear_trans_colorlinear_trans_colorLinearTransColorLinearTransColorLinearTransColorlinear_trans_color

Alternativen

principal_compprincipal_compPrincipalCompPrincipalCompPrincipalCompprincipal_comp

Modul

Foundation