hxxImg,hxyImg,hyyImg = | gaussianHessian2dImg (inImg,inStdDev) |
hxxImg,hxyImg,hyyImg = | gaussianHessian2dImg (inImg,inStdDevX,inStdDevY,inOptHessianGaussianCoverage) |
Gaussian filter used to compute Hessian on a 2d image.
Used Gaussian Hessian kernel ,
and
coefficients are defined as follow :
where is defined by InStdDev attribute. The size
of this finite kernel is controlled by InOptGradientGaussianCoverage attribute and is at least
in each direction.
This parameter defined the minimum distribution spread ratio which should be reach regards to an infinite Gaussian distribution. We define for example such that :
where :
The algorithm uses a separable approach in order to reduce the number of operations. Let's consider the three 1d filters ,
and
along the x-axis:
Where correspond to the x- or y-direction. The filters are transposed to get the filter along the y-axis.
For a given standard deviation , the output images OutHxxImg, OutHyyImg and OutHxyImg are calculated as follows:
Where is the convolution operator.
Here is an example of a Gaussian Hessian operation applied to an 8-bits grey levels input image (with ):