gen_highpassgen_highpassGenHighpassGenHighpassgen_highpass (Operator)

Name

gen_highpassgen_highpassGenHighpassGenHighpassgen_highpass — Erzeugen eines idealen Hochpassfilters.

Signatur

gen_highpass( : ImageHighpass : Frequency, Norm, Mode, Width, Height : )

Herror gen_highpass(Hobject* ImageHighpass, double Frequency, const char* Norm, const char* Mode, const Hlong Width, const Hlong Height)

Herror T_gen_highpass(Hobject* ImageHighpass, const Htuple Frequency, const Htuple Norm, const Htuple Mode, const Htuple Width, const Htuple Height)

void GenHighpass(HObject* ImageHighpass, const HTuple& Frequency, const HTuple& Norm, const HTuple& Mode, const HTuple& Width, const HTuple& Height)

void HImage::GenHighpass(double Frequency, const HString& Norm, const HString& Mode, Hlong Width, Hlong Height)

void HImage::GenHighpass(double Frequency, const char* Norm, const char* Mode, Hlong Width, Hlong Height)

void HImage::GenHighpass(double Frequency, const wchar_t* Norm, const wchar_t* Mode, Hlong Width, Hlong Height)   ( Nur Windows)

static void HOperatorSet.GenHighpass(out HObject imageHighpass, HTuple frequency, HTuple norm, HTuple mode, HTuple width, HTuple height)

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

def gen_highpass(frequency: float, norm: str, mode: str, width: int, height: int) -> HObject

Beschreibung

gen_highpassgen_highpassGenHighpassGenHighpassGenHighpassgen_highpass erzeugt einen idealen Hochpassfilter im Frequenzraum. Die Frequenz gibt der Parameter FrequencyFrequencyFrequencyFrequencyfrequencyfrequency vor. Die Frequenz wird als Bruchteil der maximalen (horizontalen und vertikalen) 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_genericFftGenericFftGenericFftGenericfft_generic 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_genericFftGenericFftGenericFftGenericfft_generic verwendet wird, kann zur Effizienzsteigerung 'dc_edge'"dc_edge""dc_edge""dc_edge""dc_edge""dc_edge" verwendet werden. Falls fft_imagefft_imageFftImageFftImageFftImagefft_image und fft_image_invfft_image_invFftImageInvFftImageInvFftImageInvfft_image_inv 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_genericRftGenericRftGenericRftGenericrft_generic verwendet wird, muss ModeModeModeModemodemode = 'rft'"rft""rft""rft""rft""rft" verwendet werden. Das Ergebnis ist ein Bild, das im inneren Bereich den Wert Null hat und außerhalb dieses Bereiches auf den Normierungsfaktor gesetzt ist.

Ausführungsinformationen

Parameter

ImageHighpassImageHighpassImageHighpassImageHighpassimageHighpassimage_highpass (output_object)  image objectHImageHObjectHImageHobject * (real)

Hochpassfilter im Frequenzraum.

FrequencyFrequencyFrequencyFrequencyfrequencyfrequency (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Trennfrequenz.

Default: 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 HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Normierung des Filters.

Default: 'none' "none" "none" "none" "none" "none"

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

ModeModeModeModemodemode (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Position der Nullfrequenz im Frequenzraum.

Default: '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 HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Breite des Bildes (Filters).

Default: 512

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

HeightHeightHeightHeightheightheight (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Höhe des Bildes (Filters).

Default: 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_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 Parameter korrekt, dann liefert gen_highpassgen_highpassGenHighpassGenHighpassGenHighpassgen_highpass den Wert 2 ( H_MSG_TRUE) . Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Nachfolger

convol_fftconvol_fftConvolFftConvolFftConvolFftconvol_fft

Siehe auch

convol_fftconvol_fftConvolFftConvolFftConvolFftconvol_fft, gen_lowpassgen_lowpassGenLowpassGenLowpassGenLowpassgen_lowpass, gen_bandpassgen_bandpassGenBandpassGenBandpassGenBandpassgen_bandpass, gen_bandfiltergen_bandfilterGenBandfilterGenBandfilterGenBandfiltergen_bandfilter, gen_gauss_filtergen_gauss_filterGenGaussFilterGenGaussFilterGenGaussFiltergen_gauss_filter, gen_mean_filtergen_mean_filterGenMeanFilterGenMeanFilterGenMeanFiltergen_mean_filter, gen_derivative_filtergen_derivative_filterGenDerivativeFilterGenDerivativeFilterGenDerivativeFiltergen_derivative_filter

Modul

Foundation