Name
gen_gaborgen_gaborGenGaborgen_gaborGenGaborGenGabor — Generate a Gabor filter.
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)
Herror 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)
HImage HImage::GenGabor(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 HOperatorSetX.GenGabor(
[out] IHUntypedObjectX** ImageFilter, [in] VARIANT Angle, [in] VARIANT Frequency, [in] VARIANT Bandwidth, [in] VARIANT Orientation, [in] VARIANT Norm, [in] VARIANT Mode, [in] VARIANT Width, [in] VARIANT Height)
void HImageX.GenGabor(
[in] double Angle, [in] double Frequency, [in] double Bandwidth, [in] double Orientation, [in] BSTR Norm, [in] BSTR Mode, [in] Hlong Width, [in] Hlong Height)
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)
gen_gaborgen_gaborGenGaborgen_gaborGenGaborGenGabor generates a Gabor filter with a user-definable
bandpass frequency range and sign for the Hilbert transform. This
is done by calculating a symmetrical filter in the frequency domain,
which can be adapted by the parameters AngleAngleAngleAngleAngleangle,
FrequencyFrequencyFrequencyFrequencyFrequencyfrequency, BandwidthBandwidthBandwidthBandwidthBandwidthbandwidth and OrientationOrientationOrientationOrientationOrientationorientation such
that a certain frequency band and a certain direction range in the
spatial domain is filtered out in the frequency domain.
The parameters FrequencyFrequencyFrequencyFrequencyFrequencyfrequency (central frequency = distance from
the DC term) and OrientationOrientationOrientationOrientationOrientationorientation (direction) determine the
center of the filter. Larger values of FrequencyFrequencyFrequencyFrequencyFrequencyfrequency result in
higher frequencies being passed. A value of 0 for
OrientationOrientationOrientationOrientationOrientationorientation generates a horizontally oriented “crescent”
(the bulge of the crescent points upward). Higher values of
OrientationOrientationOrientationOrientationOrientationorientation result in the counterclockwise rotation of the
crescent.
The parameters AngleAngleAngleAngleAngleangle and BandwidthBandwidthBandwidthBandwidthBandwidthbandwidth are used to
determine the range of frequencies and angles being passed by the
filter. The larger AngleAngleAngleAngleAngleangle is, the smaller the range of
angles passed by the filter gets (because the “crescent” gets
narrower). The larger BandwidthBandwidthBandwidthBandwidthBandwidthbandwidth is, the smaller the
frequency band being passed gets (because the “crescent” gets
thinner).
To achieve a maximum overall efficiency of the filtering operation,
the parameter NormNormNormNormNormnorm can be used to specify the normalization
factor of the filter. If fft_genericfft_genericFftGenericfft_genericFftGenericFftGeneric and NormNormNormNormNormnorm =
'n'"n""n""n""n""n" is used the normalization in the FFT can be avoided.
ModeModeModeModeModemode can be used to determine where the DC term of the
filter lies. If fft_genericfft_genericFftGenericfft_genericFftGenericFftGeneric is used, 'dc_edge'"dc_edge""dc_edge""dc_edge""dc_edge""dc_edge" can
be used to gain efficiency. If fft_imagefft_imageFftImagefft_imageFftImageFftImage and
fft_image_invfft_image_invFftImageInvfft_image_invFftImageInvFftImageInv are used for filtering, NormNormNormNormNormnorm =
'none'"none""none""none""none""none" and ModeModeModeModeModemode = 'dc_center'"dc_center""dc_center""dc_center""dc_center""dc_center" must be
used. Note that gen_gaborgen_gaborGenGaborgen_gaborGenGaborGenGabor cannot create a filter that can
be used with rft_genericrft_genericRftGenericrft_genericRftGenericRftGeneric.
The resulting image is a two-channel real-image, containing the
Gabor filter in the first channel and the corresponding Hilbert
filter in the second channel.
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Gabor and Hilbert filter.
Angle range, inversely proportional to the range
of orientations.
Default value: 1.4
Suggested values: 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
Typical range of values: 1.0
≤
Angle
Angle
Angle
Angle
Angle
angle
≤
500.0
Minimum increment: 0.001
Recommended increment: 0.1
Distance of the center of the filter to the DC term.
Default value: 0.4
Suggested values: 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
Typical range of values: 0.0
≤
Frequency
Frequency
Frequency
Frequency
Frequency
frequency
≤
0.7
Minimum increment: 0.00001
Recommended increment: 0.005
Bandwidth range, inversely proportional to the range
of frequencies being passed.
Default value: 1.0
Suggested values: 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
Typical range of values: 0.05
≤
Bandwidth
Bandwidth
Bandwidth
Bandwidth
Bandwidth
bandwidth
≤
100.0
Minimum increment: 0.001
Recommended increment: 0.1
Angle of the principal orientation.
Default value: 1.5
Suggested values: 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
Typical range of values: 0.0
≤
Orientation
Orientation
Orientation
Orientation
Orientation
orientation
≤
3.1416
Minimum increment: 0.0001
Recommended increment: 0.05
Normalizing factor of the filter.
Default value:
'none'
"none"
"none"
"none"
"none"
"none"
List of values: 'n'"n""n""n""n""n", 'none'"none""none""none""none""none"
Location of the DC term in the frequency domain.
Default value:
'dc_center'
"dc_center"
"dc_center"
"dc_center"
"dc_center"
"dc_center"
List of values: 'dc_center'"dc_center""dc_center""dc_center""dc_center""dc_center", 'dc_edge'"dc_edge""dc_edge""dc_edge""dc_edge""dc_edge"
Width of the image (filter).
Default value: 512
List of values: 128, 160, 192, 256, 320, 384, 512, 640, 768, 1024, 2048, 4096, 8192
Height of the image (filter).
Default value: 512
List of values: 120, 128, 144, 240, 256, 288, 480, 512, 576, 1024, 2048, 4096, 8192
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)
gen_gaborgen_gaborGenGaborgen_gaborGenGaborGenGabor returns 2 (H_MSG_TRUE) if all parameters are correct. If
necessary, an exception is raised.
fft_imagefft_imageFftImagefft_imageFftImageFftImage,
fft_genericfft_genericFftGenericfft_genericFftGenericFftGeneric
convol_gaborconvol_gaborConvolGaborconvol_gaborConvolGaborConvolGabor
gen_bandpassgen_bandpassGenBandpassgen_bandpassGenBandpassGenBandpass,
gen_bandfiltergen_bandfilterGenBandfiltergen_bandfilterGenBandfilterGenBandfilter,
gen_highpassgen_highpassGenHighpassgen_highpassGenHighpassGenHighpass,
gen_lowpassgen_lowpassGenLowpassgen_lowpassGenLowpassGenLowpass
fft_image_invfft_image_invFftImageInvfft_image_invFftImageInvFftImageInv,
energy_gaborenergy_gaborEnergyGaborenergy_gaborEnergyGaborEnergyGabor
Foundation