Herror ::energy_gabor (
    Hobject ImageGabor,
    Hobject ImageHilbert,
    Hobject *Energy
)
HImage HImage::EnergyGabor (
    const HImageArray &ImageHilbert
) const
HImageArray HImageArray::EnergyGabor (
    const HImageArray &ImageHilbert
) const

Calculate the energy of a two-channel image.

::energy_gabor calculates the local contrast (Energy) of the two input images. The energy of the resulting image is then defined as energy = channel1 ^2 + channel2 ^2 . Often the calculation of the energy is preceded by the convolution of an image with a Gabor filter and the Hilbert transform of the Gabor filter (see ::convol_gabor). In this case, the first channel of the image passed to ::energy_gabor is the Gabor-filtered image, transformed back into the spatial domain (see ::fft_image_inv), and the second channel the result of the convolution with the Hilbert transform, also transformed back into the spatial domain. The local energy is a measure for the local contrast of structures (e.g., edges and lines) in the image.


Parameters

ImageGabor (input_object)
image(-array) -> Hobject: HImage(Array) ( byte / real )
1st channel of input image (usually: Gabor image).

ImageHilbert (input_object)
image(-array) -> Hobject: HImage(Array) ( byte / real )
2nd channel of input image (usually: Hilbert image).

Energy (output_object)
image(-array) -> Hobject * : HImage(Array) ( real )
Image containing the local energy.


Example
fft_image(Image,&FFT);
gen_gabor(&Filter,1.4,0.4,1.0,1.5,512);
convol_gabor(FFT,Filter,&Gabor,&Hilbert);
fft_image_inv(Gabor,&GaborInv);
fft_image_inv(Hilbert,&HilbertInv);
energy_gabor(GaborInv,HilbertInv,&Energy);

Result

::energy_gabor returns H_MSG_TRUE if all parameters are correct. If the input is empty the behaviour can be set via ::set_system('no_object_result',<Result>). If necessary, an exception handling is raised.


Possible Predecessors

::gen_gabor, ::convol_gabor, ::fft_image_inv


Module

Image filters



Copyright © 1996-2002 MVTec Software GmbH