KlassenKlassenKlassenKlassen | | | | Operatoren

correlation_fftcorrelation_fftCorrelationFftcorrelation_fftCorrelationFftCorrelationFft (Operator)

Name

correlation_fftcorrelation_fftCorrelationFftcorrelation_fftCorrelationFftCorrelationFft — Korrelation zweier Bilder im Frequenzraum.

Signatur

correlation_fft(ImageFFT1, ImageFFT2 : ImageCorrelation : : )

Herror correlation_fft(const Hobject ImageFFT1, const Hobject ImageFFT2, Hobject* ImageCorrelation)

Herror T_correlation_fft(const Hobject ImageFFT1, const Hobject ImageFFT2, Hobject* ImageCorrelation)

Herror correlation_fft(Hobject ImageFFT1, Hobject ImageFFT2, Hobject* ImageCorrelation)

HImage HImage::CorrelationFft(const HImage& ImageFFT2) const

HImageArray HImageArray::CorrelationFft(const HImageArray& ImageFFT2) const

void CorrelationFft(const HObject& ImageFFT1, const HObject& ImageFFT2, HObject* ImageCorrelation)

HImage HImage::CorrelationFft(const HImage& ImageFFT2) const

void HOperatorSetX.CorrelationFft(
[in] IHUntypedObjectX* ImageFFT1, [in] IHUntypedObjectX* ImageFFT2, [out] IHUntypedObjectX*ImageCorrelation)

IHImageX* HImageX.CorrelationFft([in] IHImageX* ImageFFT2)

static void HOperatorSet.CorrelationFft(HObject imageFFT1, HObject imageFFT2, out HObject imageCorrelation)

HImage HImage.CorrelationFft(HImage imageFFT2)

Beschreibung

correlation_fftcorrelation_fftCorrelationFftcorrelation_fftCorrelationFftCorrelationFft führt eine Korrelation der fouriertransformierten Eingabebilder im Frequenzraum durch. Eine Korrelation im Frequenzraum bedeutet eine Multiplikation von ImageFFT1ImageFFT1ImageFFT1ImageFFT1ImageFFT1imageFFT1 mit dem komplex-konjugierten Bild von ImageFFT2ImageFFT2ImageFFT2ImageFFT2ImageFFT2imageFFT2. Es ist zu beachten, dass die korrekte Skalierung der Korrelation im Ortsraum nur erreicht werden kann, falls für die Hintransformation die Operatoren fft_genericfft_genericFftGenericfft_genericFftGenericFftGeneric oder rft_genericrft_genericRftGenericrft_genericRftGenericRftGeneric mit Norm = 'none'"none""none""none""none""none" und für die Rücktransformation fft_genericfft_genericFftGenericfft_genericFftGenericFftGeneric oder rft_genericrft_genericRftGenericrft_genericRftGenericRftGeneric mit Norm = 'n'"n""n""n""n""n" verwendet werden. Falls ImageFFT1ImageFFT1ImageFFT1ImageFFT1ImageFFT1imageFFT1 und ImageFFT2ImageFFT2ImageFFT2ImageFFT2ImageFFT2imageFFT2 dieselbe Anzahl Bilder enthalten, werden die entsprechenden Bilder paarweise korreliert. Ansonsten darf ImageFFT2ImageFFT2ImageFFT2ImageFFT2ImageFFT2imageFFT2 nur ein einziges Bild enthalten. In diesem Fall wird die Korrelation für jedes Bild von ImageFFT1ImageFFT1ImageFFT1ImageFFT1ImageFFT1imageFFT1 mit ImageFFT2ImageFFT2ImageFFT2ImageFFT2ImageFFT2imageFFT2 ausgeführt.

Achtung

Die Filterung erfolgt immer im Vollbild (Region wird ignoriert).

Parallelisierung

Parameter

ImageFFT1ImageFFT1ImageFFT1ImageFFT1ImageFFT1imageFFT1 (input_object)  (multichannel-)image(-array) objectHImageHImageHImageHImageXHobject (complex)

Fouriertransformiertes Eingabebild 1.

ImageFFT2ImageFFT2ImageFFT2ImageFFT2ImageFFT2imageFFT2 (input_object)  (multichannel-)image(-array) objectHImageHImageHImageHImageXHobject (complex)

Fouriertransformiertes Eingabebild 2.

Parameteranzahl: ImageFFT2 == ImageFFT1 || ImageFFT2 == 1

ImageCorrelationImageCorrelationImageCorrelationImageCorrelationImageCorrelationimageCorrelation (output_object)  image(-array) objectHImageHImageHImageHImageXHobject * (complex)

Korrelation der Eingabebilder im Frequenzraum.

Beispiel (HDevelop)

* Compute the auto-correlation of an image.
get_image_size(Image,Width,Height)
rft_generic(Image,ImageFFT,'to_freq','none','complex',Width)
correlation_fft(ImageFFT,ImageFFT,Correlation)
rft_generic(Correlation,AutoCorrelation,'from_freq','n','real',Width)

Ergebnis

Sind die Parameterwerte korrekt, dann liefert correlation_fftcorrelation_fftCorrelationFftcorrelation_fftCorrelationFftCorrelationFft den Wert 2 (H_MSG_TRUE). Das Verhalten bei leerer Eingabe (keine Eingabebilder vorhanden) lässt sich mittels set_system(::'no_object_result',<Result>:)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

fft_genericfft_genericFftGenericfft_genericFftGenericFftGeneric, fft_imagefft_imageFftImagefft_imageFftImageFftImage, rft_genericrft_genericRftGenericrft_genericRftGenericRftGeneric

Nachfolger

fft_genericfft_genericFftGenericfft_genericFftGenericFftGeneric, fft_image_invfft_image_invFftImageInvfft_image_invFftImageInvFftImageInv, rft_genericrft_genericRftGenericrft_genericRftGenericRftGeneric

Alternativen

phase_correlation_fftphase_correlation_fftPhaseCorrelationFftphase_correlation_fftPhaseCorrelationFftPhaseCorrelationFft

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren