KlassenKlassenKlassenKlassen | | | | Operatoren

gen_lowpassgen_lowpassGenLowpassgen_lowpassGenLowpassGenLowpass (Operator)

Name

gen_lowpassgen_lowpassGenLowpassgen_lowpassGenLowpassGenLowpass — Erzeugen eines idealen Tiefpassfilters.

Signatur

gen_lowpass( : ImageLowpass : Frequency, Norm, Mode, Width, Height : )

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)

Herror gen_lowpass(Hobject* ImageLowpass, const HTuple& Frequency, const HTuple& Norm, const HTuple& Mode, const HTuple& Width, const HTuple& Height)

HImage HImage::GenLowpass(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)

void HOperatorSetX.GenLowpass(
[out] IHUntypedObjectX*ImageLowpass, [in] VARIANT Frequency, [in] VARIANT Norm, [in] VARIANT Mode, [in] VARIANT Width, [in] VARIANT Height)

void HImageX.GenLowpass(
[in] double Frequency, [in] BSTR Norm, [in] BSTR Mode, [in] Hlong Width, [in] Hlong Height)

static void HOperatorSet.GenLowpass(out HObject imageLowpass, HTuple frequency, HTuple norm, HTuple mode, HTuple width, HTuple height)

void HImage.GenLowpass(double frequency, string norm, string mode, int width, int height)

Beschreibung

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.

Parallelisierung

Parameter

ImageLowpassImageLowpassImageLowpassImageLowpassImageLowpassimageLowpass (output_object)  image objectHImageHImageHImageHImageXHobject * (real)

Tiefpass im Frequenzraum.

FrequencyFrequencyFrequencyFrequencyFrequencyfrequency (input_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

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

NormNormNormNormNormnorm (input_control)  string HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Normierung des Filters.

Defaultwert: 'none' "none" "none" "none" "none" "none"

Werteliste: 'n'"n""n""n""n""n", 'none'"none""none""none""none""none"

ModeModeModeModeModemode (input_control)  string HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

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"

WidthWidthWidthWidthWidthwidth (input_control)  integer HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Breite des Bildes (Filters).

Defaultwert: 512

Wertevorschläge: 128, 160, 192, 256, 320, 384, 512, 640, 768, 1024, 2048, 4096, 8192

HeightHeightHeightHeightHeightheight (input_control)  integer HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Höhe des Bildes (Filters).

Defaultwert: 512

Wertevorschläge: 120, 128, 144, 240, 256, 288, 480, 512, 576, 1024, 2048, 4096, 8192

Beispiel (HDevelop)

* 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')

Ergebnis

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

Nachfolger

convol_fftconvol_fftConvolFftconvol_fftConvolFftConvolFft

Siehe auch

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

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren