Name
gen_lowpassgen_lowpassGenLowpassgen_lowpassGenLowpassGenLowpass — Erzeugen eines idealen Tiefpassfilters.
Herror gen_lowpass(Hobject* ImageLowpass, double Frequency, const char* Norm, const char* Mode, const Hlong Width, const Hlong Height)
Herror T_gen_lowpass(Hobject* ImageLowpass, const Htuple Frequency, const Htuple Norm, const Htuple Mode, const Htuple Width, const Htuple Height)
void GenLowpass(HObject* ImageLowpass, const HTuple& Frequency, const HTuple& Norm, const HTuple& Mode, const HTuple& Width, const HTuple& Height)
void HImage::GenLowpass(double Frequency, const HString& Norm, const HString& Mode, Hlong Width, Hlong Height)
void HImage::GenLowpass(double Frequency, const char* Norm, const char* Mode, Hlong Width, Hlong Height)
gen_lowpassgen_lowpassGenLowpassgen_lowpassGenLowpassGenLowpass erzeugt einen idealen Tiefpassfilter im
Frequenzraum. Die Frequenz gibt der Parameter FrequencyFrequencyFrequencyFrequencyFrequencyfrequency
vor. Die Frequenz wird als Bruchteil der maximalen (horizontalen
und verikalen) Frequenz, die in einem Bild der Größe
WidthWidthWidthWidthWidthwidth x HeightHeightHeightHeightHeightheight möglich ist,
angegeben, d.h. FrequencyFrequencyFrequencyFrequencyFrequencyfrequency sollte zwischen 0 und 1 liegen.
Um eine maximale Effizienz der gesamten Filterung zu erreichen, kann
mit NormNormNormNormNormnorm der Normierungsfaktor des Filters festgelegt
werden. Somit kann eine Normierung in der FFT unterbleiben, falls
fft_genericfft_genericFftGenericfft_genericFftGenericFftGeneric verwendet wird, falls NormNormNormNormNormnorm =
'n'"n""n""n""n""n" verwendet wird. Mit ModeModeModeModeModemode kann festgelegt
werden, wo der Nullfrequenz der FFT liegen soll bzw. ob der Filter
für die reelle FFT erzeugt werden soll. Falls fft_genericfft_genericFftGenericfft_genericFftGenericFftGeneric
verwendet wird, kann zur Effizienzsteigerung 'dc_edge'"dc_edge""dc_edge""dc_edge""dc_edge""dc_edge"
verwendet werden. Falls fft_imagefft_imageFftImagefft_imageFftImageFftImage und fft_image_invfft_image_invFftImageInvfft_image_invFftImageInvFftImageInv
zur Filterung verwendet werden, muss NormNormNormNormNormnorm =
'none'"none""none""none""none""none" und ModeModeModeModeModemode = 'dc_center'"dc_center""dc_center""dc_center""dc_center""dc_center" verwendet
werden. Falls rft_genericrft_genericRftGenericrft_genericRftGenericRftGeneric verwendet wird, muss
ModeModeModeModeModemode = 'rft'"rft""rft""rft""rft""rft" verwendet werden. Das Ergebnis ist
ein Bild, das im inneren Bereich als Wert den Normierungsfaktor hat
und außerhalb dieses Bereiches auf 0 gesetzt ist.
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Tiefpass im Frequenzraum.
Trennfrequenz.
Defaultwert: 0.1
Wertevorschläge: 0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0
Restriktion: Frequency >= 0
Normierung des Filters.
Defaultwert:
'none'
"none"
"none"
"none"
"none"
"none"
Werteliste: 'n'"n""n""n""n""n", 'none'"none""none""none""none""none"
Position der Nullfrequenz im Frequenzraum.
Defaultwert:
'dc_center'
"dc_center"
"dc_center"
"dc_center"
"dc_center"
"dc_center"
Werteliste: 'dc_center'"dc_center""dc_center""dc_center""dc_center""dc_center", 'dc_edge'"dc_edge""dc_edge""dc_edge""dc_edge""dc_edge", 'rft'"rft""rft""rft""rft""rft"
Breite des Bildes (Filters).
Defaultwert: 512
Wertevorschläge: 128, 160, 192, 256, 320, 384, 512, 640, 768, 1024, 2048, 4096, 8192
Höhe des Bildes (Filters).
Defaultwert: 512
Wertevorschläge: 120, 128, 144, 240, 256, 288, 480, 512, 576, 1024, 2048, 4096, 8192
* Filtering with maximum efficiency with fft_generic.
gen_lowpass(Lowpass,0.2,'n','dc_edge',Width,Height)
fft_generic(Image,ImageFFT,'to_freq',-1,'none','dc_edge','complex')
convol_fft(ImageFFT,Lowpass,ImageConvol)
fft_generic(ImageConvol,ImageResult,'from_freq',1,'none','dc_edge','byte')
Sind die Parameter korrekt, dann liefert gen_lowpassgen_lowpassGenLowpassgen_lowpassGenLowpassGenLowpass den
Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung
durchgeführt.
convol_fftconvol_fftConvolFftconvol_fftConvolFftConvolFft
gen_highpassgen_highpassGenHighpassgen_highpassGenHighpassGenHighpass,
gen_bandpassgen_bandpassGenBandpassgen_bandpassGenBandpassGenBandpass,
gen_bandfiltergen_bandfilterGenBandfiltergen_bandfilterGenBandfilterGenBandfilter,
gen_gauss_filtergen_gauss_filterGenGaussFiltergen_gauss_filterGenGaussFilterGenGaussFilter,
gen_mean_filtergen_mean_filterGenMeanFiltergen_mean_filterGenMeanFilterGenMeanFilter,
gen_derivative_filtergen_derivative_filterGenDerivativeFiltergen_derivative_filterGenDerivativeFilterGenDerivativeFilter
Foundation