gen_mean_filtergen_mean_filterGenMeanFilterGenMeanFilter (Operator)

Name

gen_mean_filtergen_mean_filterGenMeanFilterGenMeanFilter — Erzeugen eines Mittelwertfilters im Frequenzraum.

Signatur

gen_mean_filter( : ImageMean : MaskShape, Diameter1, Diameter2, Phi, Norm, Mode, Width, Height : )

Herror gen_mean_filter(Hobject* ImageMean, const char* MaskShape, double Diameter1, double Diameter2, double Phi, const char* Norm, const char* Mode, const Hlong Width, const Hlong Height)

Herror T_gen_mean_filter(Hobject* ImageMean, const Htuple MaskShape, const Htuple Diameter1, const Htuple Diameter2, const Htuple Phi, const Htuple Norm, const Htuple Mode, const Htuple Width, const Htuple Height)

void GenMeanFilter(HObject* ImageMean, const HTuple& MaskShape, const HTuple& Diameter1, const HTuple& Diameter2, const HTuple& Phi, const HTuple& Norm, const HTuple& Mode, const HTuple& Width, const HTuple& Height)

void HImage::GenMeanFilter(const HString& MaskShape, double Diameter1, double Diameter2, double Phi, const HString& Norm, const HString& Mode, Hlong Width, Hlong Height)

void HImage::GenMeanFilter(const char* MaskShape, double Diameter1, double Diameter2, double Phi, const char* Norm, const char* Mode, Hlong Width, Hlong Height)

void HImage::GenMeanFilter(const wchar_t* MaskShape, double Diameter1, double Diameter2, double Phi, const wchar_t* Norm, const wchar_t* Mode, Hlong Width, Hlong Height)   (Nur Windows)

static void HOperatorSet.GenMeanFilter(out HObject imageMean, HTuple maskShape, HTuple diameter1, HTuple diameter2, HTuple phi, HTuple norm, HTuple mode, HTuple width, HTuple height)

void HImage.GenMeanFilter(string maskShape, double diameter1, double diameter2, double phi, string norm, string mode, int width, int height)

Beschreibung

gen_mean_filtergen_mean_filterGenMeanFilterGenMeanFilterGenMeanFilter erzeugt einen Mittelwertfilter im Frequenzraum. Die Form des Mittelwertfilters wird mit MaskShapeMaskShapeMaskShapeMaskShapemaskShape festgelegt. Für MaskShapeMaskShapeMaskShapeMaskShapemaskShape = 'rectangle'"rectangle""rectangle""rectangle""rectangle" wird ein rechteckiger Mittelwertfilter erzeugt. Für MaskShapeMaskShapeMaskShapeMaskShapemaskShape = 'ellipse'"ellipse""ellipse""ellipse""ellipse" wird ein ellipsenförmiger Mittelwertfilter erzeugt. Die Durchmesser (d.h. die Stärke der Glättung) des Mittelwertfilters im Ortsraum werden durch Diameter1Diameter1Diameter1Diameter1diameter1 und Diameter2Diameter2Diameter2Diameter2diameter2 festgelegt. Dabei ist Diameter1Diameter1Diameter1Diameter1diameter1 der Durchmesser in Richtung der durch den Winkel PhiPhiPhiPhiphi gegebenen Hauptrichtung des Filters im Ortsraum. 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

Parameter

ImageMeanImageMeanImageMeanImageMeanimageMean (output_object)  image objectHImageHImageHobject * (real)

Mittelwertfilter als Bild in Frequenzraum.

MaskShapeMaskShapeMaskShapeMaskShapemaskShape (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Form der Filtermaske im Ortsraum.

Defaultwert: 'ellipse' "ellipse" "ellipse" "ellipse" "ellipse"

Werteliste: 'ellipse'"ellipse""ellipse""ellipse""ellipse", 'rectangle'"rectangle""rectangle""rectangle""rectangle"

Diameter1Diameter1Diameter1Diameter1diameter1 (input_control)  real HTupleHTupleHtuple (real) (double) (double) (double)

Durchmesser des Mittelwertfilters in der Hauptrichtung des Filters im Ortsraum.

Defaultwert: 11.0

Wertevorschläge: 3.0, 5.0, 7.0, 9.0, 11.0, 15.0, 21.0, 31.0, 51.0

Restriktion: Diameter1 > 0

Diameter2Diameter2Diameter2Diameter2diameter2 (input_control)  real HTupleHTupleHtuple (real) (double) (double) (double)

Durchmesser des Mittelwertfilters senkrecht zur Hauptrichtung des Filters im Ortsraum.

Defaultwert: 11.0

Wertevorschläge: 3.0, 5.0, 7.0, 9.0, 11.0, 15.0, 21.0, 31.0, 51.0

Restriktion: Diameter2 > 0

PhiPhiPhiPhiphi (input_control)  angle.rad HTupleHTupleHtuple (real) (double) (double) (double)

Hauptrichtung des Filters im Ortsraum.

Defaultwert: 0.0

Wertevorschläge: 0.0, 0.523599, 0.785398, 1.047198, 1.570796, 2.094395, 2.356194, 2.617994, 3.141593

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

Beispiel (HDevelop)

* Generate a circular mean filter.
gen_mean_filter (FilterMean, 'ellipse', 15, 15, 0, 'n', 'dc_edge', 512, 512)
* Filter an image with the circular mean filter.
fft_generic (Image, ImageFFT, 'to_freq', -1, 'none', 'dc_edge', 'complex')
convol_fft (ImageFFT, FilterMean, Filtered)
fft_generic (Filtered, ImageMean, 'from_freq', 1, 'none', 'dc_edge', 'real')

Ergebnis

Sind die Parameterwerte korrekt, dann liefert gen_mean_filtergen_mean_filterGenMeanFilterGenMeanFilterGenMeanFilter 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

Siehe auch

fft_image_invfft_image_invFftImageInvFftImageInvFftImageInv, gen_gauss_filtergen_gauss_filterGenGaussFilterGenGaussFilterGenGaussFilter, gen_derivative_filtergen_derivative_filterGenDerivativeFilterGenDerivativeFilterGenDerivativeFilter, gen_lowpassgen_lowpassGenLowpassGenLowpassGenLowpass, gen_bandpassgen_bandpassGenBandpassGenBandpassGenBandpass, gen_bandfiltergen_bandfilterGenBandfilterGenBandfilterGenBandfilter, gen_highpassgen_highpassGenHighpassGenHighpassGenHighpass

Modul

Foundation