gen_gaborgen_gaborGenGaborGenGabor (Operator)

Name

gen_gaborgen_gaborGenGaborGenGabor — Erzeugen eines Gaborfilters.

Signatur

gen_gabor( : ImageFilter : Angle, Frequency, Bandwidth, Orientation, Norm, Mode, Width, Height : )

Herror gen_gabor(Hobject* ImageFilter, double Angle, double Frequency, double Bandwidth, double Orientation, const char* Norm, const char* Mode, const Hlong Width, const Hlong Height)

Herror T_gen_gabor(Hobject* ImageFilter, const Htuple Angle, const Htuple Frequency, const Htuple Bandwidth, const Htuple Orientation, const Htuple Norm, const Htuple Mode, const Htuple Width, const Htuple Height)

void GenGabor(HObject* ImageFilter, const HTuple& Angle, const HTuple& Frequency, const HTuple& Bandwidth, const HTuple& Orientation, const HTuple& Norm, const HTuple& Mode, const HTuple& Width, const HTuple& Height)

void HImage::GenGabor(double Angle, double Frequency, double Bandwidth, double Orientation, const HString& Norm, const HString& Mode, Hlong Width, Hlong Height)

void HImage::GenGabor(double Angle, double Frequency, double Bandwidth, double Orientation, const char* Norm, const char* Mode, Hlong Width, Hlong Height)

void HImage::GenGabor(double Angle, double Frequency, double Bandwidth, double Orientation, const wchar_t* Norm, const wchar_t* Mode, Hlong Width, Hlong Height)   (Nur Windows)

static void HOperatorSet.GenGabor(out HObject imageFilter, HTuple angle, HTuple frequency, HTuple bandwidth, HTuple orientation, HTuple norm, HTuple mode, HTuple width, HTuple height)

void HImage.GenGabor(double angle, double frequency, double bandwidth, double orientation, string norm, string mode, int width, int height)

Beschreibung

gen_gaborgen_gaborGenGaborGenGaborGenGabor erzeugt einen Gaborfilter, dessen Bandpassverhalten und die zugehörigen Signumwerte für die Berechnung der Hilberttransformierten durch die Eingabeparameter einstellbar ist. Dazu wird ein symmetrischer Filter im Frequenzraum errechnet, der sich durch die Parameter AngleAngleAngleAngleangle, FrequencyFrequencyFrequencyFrequencyfrequency, BandwidthBandwidthBandwidthBandwidthbandwidth und OrientationOrientationOrientationOrientationorientation so einstellen lässt, dass ein bestimmter Frequenzbereich in einem bestimmten Richtungsbereich eines Bildes im Ortsraum durch die Faltung im Ortsfrequenzraum herausgefiltert wird.

Die Parameter FrequencyFrequencyFrequencyFrequencyfrequency (Mittenfrequenz = Abstand vom Mittelpunkt) und OrientationOrientationOrientationOrientationorientation (Winkel) geben das Zentrum des Filters an. Größere Werte von FrequencyFrequencyFrequencyFrequencyfrequency ergeben höhere Frequenzen. Ein Wert von 0 bei OrientationOrientationOrientationOrientationorientation erzeugt eine „Sichel“ die horizontal ausgerichtet ist (Öffnung nach „unten“). Höhere Winkelwerte lassen die Sichel in mathematisch positiver Richtung rotieren.

Mit den Parametern AngleAngleAngleAngleangle und BandwidthBandwidthBandwidthBandwidthbandwidth kann die Größe des Richtungsbereiches und des Frequenzbereiches geändert werden. Je größer der Parameter AngleAngleAngleAngleangle ist, desto kleiner wird der Winkelbereich (kürzere Sichel), das heißt, desto kleiner wird der Richtungsbereich. Je größer der Parameter BandwidthBandwidthBandwidthBandwidthbandwidth, desto kleiner wird der Frequenzbereich (dünnere Sichel).

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. 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. Es ist zu beachten, dass gen_gaborgen_gaborGenGaborGenGaborGenGabor keinen Filter für rft_genericrft_genericRftGenericRftGenericRftGeneric erzeugen kann.

Die Berechnung liefert ein zweikanaliges Real-Bild, welches im ersten Kanal den Gaborfilter und im zweiten Kanal den zugehörigen Hilbertfilter enthält.

Ausführungsinformationen

Parameter

ImageFilterImageFilterImageFilterImageFilterimageFilter (output_object)  multichannel-image objectHImageHImageHobject * (real)

Gabor- und Hilbertfilter.

AngleAngleAngleAngleangle (input_control)  real HTupleHTupleHtuple (real) (double) (double) (double)

Winkel, indirekt proportional zur Größe des Richtungsbereichs.

Defaultwert: 1.4

Wertevorschläge: 1.0, 1.2, 1.4, 1.6, 2.0, 2.5, 3.0, 5.0, 6.0, 10.0, 20.0, 30.0, 50.0, 70.0, 100.0

Typischer Wertebereich: 1.0 ≤ Angle Angle Angle Angle angle ≤ 500.0

Minimale Schrittweite: 0.001

Empfohlene Schrittweite: 0.1

FrequencyFrequencyFrequencyFrequencyfrequency (input_control)  real HTupleHTupleHtuple (real) (double) (double) (double)

Abstand des Filterschwerpunktes vom Mittelpunkt.

Defaultwert: 0.4

Wertevorschläge: 0.0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.50, 0.55, 0.60, 0.65, 0.699

Typischer Wertebereich: 0.0 ≤ Frequency Frequency Frequency Frequency frequency ≤ 0.7

Minimale Schrittweite: 0.00001

Empfohlene Schrittweite: 0.005

BandwidthBandwidthBandwidthBandwidthbandwidth (input_control)  real HTupleHTupleHtuple (real) (double) (double) (double)

Bandbreite, indirekt proportional zur Größe des Frequenzbereichs.

Defaultwert: 1.0

Wertevorschläge: 0.1, 0.3, 0.7, 1.0, 1.5, 2.0, 3.0, 5.0, 7.0, 10.0, 15.0, 20.0, 30.0, 50.0

Typischer Wertebereich: 0.05 ≤ Bandwidth Bandwidth Bandwidth Bandwidth bandwidth ≤ 100.0

Minimale Schrittweite: 0.001

Empfohlene Schrittweite: 0.1

OrientationOrientationOrientationOrientationorientation (input_control)  real HTupleHTupleHtuple (real) (double) (double) (double)

Richtung, legt zusammen mit Frequency die Lage des Filterschwerpunktes fest.

Defaultwert: 1.5

Wertevorschläge: 0.0, 0.2, 0.4, 0.6, 0.8, 1.0, 1.2, 1.4, 1.6, 1.8, 2.0, 2.2, 2.4, 2.6, 2.8, 3.0, 3.14

Typischer Wertebereich: 0.0 ≤ Orientation Orientation Orientation Orientation orientation ≤ 3.1416

Minimale Schrittweite: 0.0001

Empfohlene Schrittweite: 0.05

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"

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)

gen_gabor(Filter,1.4,0.4,1.0,1.5,'n','dc_edge',512,512)
fft_generic(Image,ImageFFT,'to_freq',-1,'none','dc_edge','complex')
convol_gabor(ImageFFT,Filter,Gabor,Hilbert)
fft_generic(Gabor,GaborInv,'from_freq',1,'none','dc_edge','byte')
fft_generic(Hilbert,HilbertInv,'from_freq',1,'none','dc_edge','byte')
energy_gabor(GaborInv,HilbertInv,Energy)

Ergebnis

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

Vorgänger

fft_imagefft_imageFftImageFftImageFftImage, fft_genericfft_genericFftGenericFftGenericFftGeneric

Nachfolger

convol_gaborconvol_gaborConvolGaborConvolGaborConvolGabor

Alternativen

gen_bandpassgen_bandpassGenBandpassGenBandpassGenBandpass, gen_bandfiltergen_bandfilterGenBandfilterGenBandfilterGenBandfilter, gen_highpassgen_highpassGenHighpassGenHighpassGenHighpass, gen_lowpassgen_lowpassGenLowpassGenLowpassGenLowpass

Siehe auch

fft_image_invfft_image_invFftImageInvFftImageInvFftImageInv, energy_gaborenergy_gaborEnergyGaborEnergyGaborEnergyGabor

Modul

Foundation