convol_fftconvol_fftConvolFftConvolFftconvol_fft (Operator)
Name
convol_fftconvol_fftConvolFftConvolFftconvol_fft — Multiplizieren eines Bildes mit einem Filterbild im Frequenzraum.
Signatur
Beschreibung
Als Teil der Faltung eines Bildes mit einem Filterbild multipliziert
convol_fftconvol_fftConvolFftConvolFftConvolFftconvol_fft das fouriertransformierte Bild ImageFFTImageFFTImageFFTImageFFTimageFFTimage_fft
mit der Fouriertransformation ImageFilterImageFilterImageFilterImageFilterimageFilterimage_filter eines zweiten Bildes,
welches als Filter dient.
Laut Faltungstheorem erfolgt die nicht-normalisierte Faltung zweier Bilder
im Pixelraum in drei Schritten:
-
Transformieren der Bilder in den Frequenzraum mittels
Fouriertransformation (siehe z.B. fft_genericfft_genericFftGenericFftGenericFftGenericfft_generic).
-
Multiplizieren eines transformierten Bildes mit dem transformierten
Filterbild (pixelweise).
-
Rücktransformieren des Ergebnisses in den Pixelraum mittels inverser
Fouriertransformation (siehe z.B. fft_genericfft_genericFftGenericFftGenericFftGenericfft_generic).
Der Operator convol_fftconvol_fftConvolFftConvolFftConvolFftconvol_fft wird zur Ausführung des zweiten Schrittes
verwendet, d.h. ImageFFTImageFFTImageFFTImageFFTimageFFTimage_fft wird pixelweise mit ImageFilterImageFilterImageFilterImageFilterimageFilterimage_filter
multipliziert.
Achtung
Die Filterung erfolgt immer für das gesamte Bild, d.h., der
Definitionsbereich des Eingabebildes wird ignoriert.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Automatisch parallelisiert auf Tupelebene.
- Automatisch parallelisiert auf Kanalebene.
Parameter
ImageFFTImageFFTImageFFTImageFFTimageFFTimage_fft (input_object) (multichannel-)image(-array) → objectHImageHObjectHImageHobject (complex)
Komplexes Eingabebild.
ImageFilterImageFilterImageFilterImageFilterimageFilterimage_filter (input_object) (multichannel-)image → objectHImageHObjectHImageHobject (real / complex)
Filter im Frequenzraum.
ImageConvolImageConvolImageConvolImageConvolimageConvolimage_convol (output_object) image(-array) → objectHImageHObjectHImageHobject * (complex)
Ergebnis im Frequenzraum.
Beispiel (HDevelop)
gen_highpass(Highpass,0.2,'n','dc_edge',Width,Height)
fft_generic(Image,ImageFFT,'to_freq',-1,'none','dc_edge','complex')
convol_fft(ImageFFT,Highpass,ImageConvol)
fft_generic(ImageConvol,ImageResult,'from_freq',1,'none','dc_edge','byte')
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
convol_fftconvol_fftConvolFftConvolFftConvolFftconvol_fft 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>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>) festlegen.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
fft_imagefft_imageFftImageFftImageFftImagefft_image,
fft_genericfft_genericFftGenericFftGenericFftGenericfft_generic,
rft_genericrft_genericRftGenericRftGenericRftGenericrft_generic,
gen_highpassgen_highpassGenHighpassGenHighpassGenHighpassgen_highpass,
gen_lowpassgen_lowpassGenLowpassGenLowpassGenLowpassgen_lowpass,
gen_bandpassgen_bandpassGenBandpassGenBandpassGenBandpassgen_bandpass,
gen_bandfiltergen_bandfilterGenBandfilterGenBandfilterGenBandfiltergen_bandfilter
Nachfolger
power_bytepower_bytePowerBytePowerBytePowerBytepower_byte,
power_realpower_realPowerRealPowerRealPowerRealpower_real,
power_lnpower_lnPowerLnPowerLnPowerLnpower_ln,
fft_image_invfft_image_invFftImageInvFftImageInvFftImageInvfft_image_inv,
fft_genericfft_genericFftGenericFftGenericFftGenericfft_generic,
rft_genericrft_genericRftGenericRftGenericRftGenericrft_generic
Alternativen
convol_gaborconvol_gaborConvolGaborConvolGaborConvolGaborconvol_gabor
Siehe auch
gen_gaborgen_gaborGenGaborGenGaborGenGaborgen_gabor,
gen_highpassgen_highpassGenHighpassGenHighpassGenHighpassgen_highpass,
gen_lowpassgen_lowpassGenLowpassGenLowpassGenLowpassgen_lowpass,
gen_bandpassgen_bandpassGenBandpassGenBandpassGenBandpassgen_bandpass,
convol_gaborconvol_gaborConvolGaborConvolGaborConvolGaborconvol_gabor,
fft_image_invfft_image_invFftImageInvFftImageInvFftImageInvfft_image_inv
Modul
Foundation