gen_std_bandpassgen_std_bandpassGenStdBandpassGenStdBandpass (Operator)
Name
gen_std_bandpassgen_std_bandpassGenStdBandpassGenStdBandpass — Erzeugen eines Bandpassfilter in der Form einer Gaußmaske oder
Sinusfunktion.
Signatur
Herror gen_std_bandpass(Hobject* ImageFilter, double Frequency, double Sigma, const char* Type, const char* Norm, const char* Mode, const Hlong Width, const Hlong Height)
Herror T_gen_std_bandpass(Hobject* ImageFilter, const Htuple Frequency, const Htuple Sigma, const Htuple Type, const Htuple Norm, const Htuple Mode, const Htuple Width, const Htuple Height)
void GenStdBandpass(HObject* ImageFilter, const HTuple& Frequency, const HTuple& Sigma, const HTuple& Type, const HTuple& Norm, const HTuple& Mode, const HTuple& Width, const HTuple& Height)
void HImage::GenStdBandpass(double Frequency, double Sigma, const HString& Type, const HString& Norm, const HString& Mode, Hlong Width, Hlong Height)
void HImage::GenStdBandpass(double Frequency, double Sigma, const char* Type, const char* Norm, const char* Mode, Hlong Width, Hlong Height)
void HImage::GenStdBandpass(double Frequency, double Sigma, const wchar_t* Type, const wchar_t* Norm, const wchar_t* Mode, Hlong Width, Hlong Height)
(Nur Windows)
static void HOperatorSet.GenStdBandpass(out HObject imageFilter, HTuple frequency, HTuple sigma, HTuple type, HTuple norm, HTuple mode, HTuple width, HTuple height)
void HImage.GenStdBandpass(double frequency, double sigma, string type, string norm, string mode, int width, int height)
Beschreibung
gen_std_bandpassgen_std_bandpassGenStdBandpassGenStdBandpassGenStdBandpass erzeugt einen rotationsinvarianten
Bandpassfilter, dessen Bandpassverhalten und durch zugehörige
Parameter FrequencyFrequencyFrequencyFrequencyfrequency und SigmaSigmaSigmaSigmasigma beschrieben werden:
FrequencyFrequencyFrequencyFrequencyfrequency legt den Abstand vom Nullpunkt und SigmaSigmaSigmaSigmasigma
die Ausdehnung fest. FrequencyFrequencyFrequencyFrequencyfrequency und SigmaSigmaSigmaSigmasigma werden
als Bruchteil der maximalen (horizontalen und verikalen) Frequenz,
die in einem Bild der Größe WidthWidthWidthWidthwidth x
HeightHeightHeightHeightheight möglich ist, angegeben. FrequencyFrequencyFrequencyFrequencyfrequency sollten
zwischen 0 und 1 liegen. Bei TypeTypeTypeTypetype = 'gauss'"gauss""gauss""gauss""gauss" wird
eine Gaußfunktion erzeugt. SigmaSigmaSigmaSigmasigma ist dabei die
Standardabweichung. Bei TypeTypeTypeTypetype = 'sin'"sin""sin""sin""sin" wird eine
Sinusfunktion mit dem Maximum bei FrequencyFrequencyFrequencyFrequencyfrequency und der
Ausdehnung SigmaSigmaSigmaSigmasigma berechnet. Um eine maximale Effizienz der
gesamten Filterung zu erreichen, kann mit NormNormNormNormnorm der
Normierungsfaktor des Filters festgelegt werden. Somit kann eine
Normierung in der FFT unterbleiben, falls fft_genericfft_genericFftGenericFftGenericFftGeneric
verwendet wird, falls NormNormNormNormnorm = 'n'"n""n""n""n" verwendet wird.
Mit ModeModeModeModemode 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_genericFftGenericFftGenericFftGeneric verwendet wird, kann zur
Effizienzsteigerung 'dc_edge'"dc_edge""dc_edge""dc_edge""dc_edge" verwendet werden. Falls
fft_imagefft_imageFftImageFftImageFftImage und fft_image_invfft_image_invFftImageInvFftImageInvFftImageInv zur Filterung verwendet
werden, muss NormNormNormNormnorm = 'none'"none""none""none""none" und ModeModeModeModemode =
'dc_center'"dc_center""dc_center""dc_center""dc_center" verwendet werden. Falls rft_genericrft_genericRftGenericRftGenericRftGeneric
verwendet wird, muss ModeModeModeModemode = 'rft'"rft""rft""rft""rft" verwendet
werden.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Parameter
ImageFilterImageFilterImageFilterImageFilterimageFilter (output_object) image → objectHImageHImageHobject * (real)
Bandpassfilter als Bild in Frequenzraum.
FrequencyFrequencyFrequencyFrequencyfrequency (input_control) real → HTupleHTupleHtuple (real) (double) (double) (double)
Abstand des Filtermaximums vom Mittelpunkt.
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
SigmaSigmaSigmaSigmasigma (input_control) real → HTupleHTupleHtuple (real) (double) (double) (double)
Bandbreite der Filters (Standardabweichung).
Defaultwert: 0.01
Wertevorschläge: 0.002, 0.005, 0.01, 0.02, 0.05, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1.0
Restriktion: Sigma >= 0
TypeTypeTypeTypetype (input_control) string → HTupleHTupleHtuple (string) (string) (HString) (char*)
Art des Filters.
Defaultwert:
'sin'
"sin"
"sin"
"sin"
"sin"
Werteliste: 'gauss'"gauss""gauss""gauss""gauss", 'sin'"sin""sin""sin""sin"
NormNormNormNormnorm (input_control) string → HTupleHTupleHtuple (string) (string) (HString) (char*)
Normierung des Filters.
Defaultwert:
'none'
"none"
"none"
"none"
"none"
Werteliste: 'n'"n""n""n""n", 'none'"none""none""none""none"
ModeModeModeModemode (input_control) string → HTupleHTupleHtuple (string) (string) (HString) (char*)
Position der Nullfrequenz im Frequenzraum.
Defaultwert:
'dc_center'
"dc_center"
"dc_center"
"dc_center"
"dc_center"
Werteliste: 'dc_center'"dc_center""dc_center""dc_center""dc_center", 'dc_edge'"dc_edge""dc_edge""dc_edge""dc_edge", 'rft'"rft""rft""rft""rft"
WidthWidthWidthWidthwidth (input_control) integer → HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Breite des Bildes (Filters).
Defaultwert: 512
Wertevorschläge: 128, 160, 192, 256, 320, 384, 512, 640, 768, 1024, 2048, 4096, 8192
HeightHeightHeightHeightheight (input_control) integer → HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Höhe des Bildes (Filters).
Defaultwert: 512
Wertevorschläge: 120, 128, 144, 240, 256, 288, 480, 512, 576, 1024, 2048, 4096, 8192
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
gen_std_bandpassgen_std_bandpassGenStdBandpassGenStdBandpassGenStdBandpass den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine
Fehlerbehandlung durchgeführt.
Vorgänger
fft_imagefft_imageFftImageFftImageFftImage,
fft_genericfft_genericFftGenericFftGenericFftGeneric,
rft_genericrft_genericRftGenericRftGenericRftGeneric
Nachfolger
convol_fftconvol_fftConvolFftConvolFftConvolFft
Alternativen
gen_sin_bandpassgen_sin_bandpassGenSinBandpassGenSinBandpassGenSinBandpass
Siehe auch
fft_image_invfft_image_invFftImageInvFftImageInvFftImageInv,
gen_gauss_filtergen_gauss_filterGenGaussFilterGenGaussFilterGenGaussFilter,
gen_mean_filtergen_mean_filterGenMeanFilterGenMeanFilterGenMeanFilter,
gen_derivative_filtergen_derivative_filterGenDerivativeFilterGenDerivativeFilterGenDerivativeFilter,
gen_bandpassgen_bandpassGenBandpassGenBandpassGenBandpass,
gen_bandfiltergen_bandfilterGenBandfilterGenBandfilterGenBandfilter,
gen_highpassgen_highpassGenHighpassGenHighpassGenHighpass,
gen_lowpassgen_lowpassGenLowpassGenLowpassGenLowpass
Modul
Foundation