4
$\begingroup$

In scale-adapted Harris detector, the scale adapted second moment matrix is defined by: $$\mu(x, \sigma_I, \sigma_D) = \sigma_D^2\ g(\sigma_I) *\left[ \begin{array}{cc} L_x^2(x, \sigma_D) &L_xL_y(x, \sigma_D) \\ L_xL_y(x, \sigma_D) &L_y^2(x, \sigma_D) \end{array} \right]$$, while $\sigma_I$ is the integration scale, and $\sigma_D$ is the differentiation scale. What are they? Why use them?

UPDATE

According to @Dima's answer, I think $\mu(x,\sigma_I, \sigma_D)$ is actually something like this, $$\mu(x,\sigma_I,\sigma_D) = \sigma_D^2\cdot g(\sigma_I)*\left(g(\sigma_D)*\begin{bmatrix}I_x^2(x) &I_xI_y(x) \\ I_xI_y(x) &I_y^2(x)\end{bmatrix}\right)$$, where $I_x,I_y$ are the 1st order derivatives. Is it right? If so, why bother convolving twice? And why multiply $\sigma_D^2$?

$\endgroup$

3 Answers 3

3
$\begingroup$

The original question was well posed, while the edit made it wrong. Let's clarify things first: the term scale normalized derivative was introduced (to my knowledge) in

Mikolajczyk, K. and Schmid, C. 2001. Indexing based on scale invariant interest points. In Proceedings of the 8th International Conference on Computer Vision, Vancouver, Canada, pp. 525– 531.

referring to a derivative of order $m$ of image $I(\mathbf{x})$, obtained by convolving with the corresponding derivative of a Gaussian function, multiplied by the derivation scale at the power of $m$. In formulas this is $$ D_{i_1 \dots i_m}(\mathbf{x},\sigma_D) = \sigma_D^m L_{i_1 \dots i_m}(\mathbf{x},\sigma_D) $$ The indexes are generic because of the order is $m$. If you use order $m=1$, then you get just the two first order partial derivatives: $$ D_x(\mathbf{x},\sigma_D) = \sigma_D L_x(\mathbf{x},\sigma_D)\\ D_y(\mathbf{x},\sigma_D) = \sigma_D L_y(\mathbf{x},\sigma_D) $$ Why do you multiply by $\sigma_D^m$? Because, in this way, the scale normalized derivatives behave nicely under scaling of the intensity pattern. The derivatives obtained on a scaled image will have the same value of those on another scale but with the right derivation scale, that is a different level on the scale space.

Now, just look at $L_x$, since for the other one is exactly the same. This is defined as: $$ L_x(\mathbf{x},\sigma_D) = g_x(\sigma_D)*I(\mathbf{x}) $$ In your edited answer you observe that derivation and convolution may be exchanged, and in fact you can write: $$ g_x(\sigma_D)*I(\mathbf{x}) = g(\sigma_D)*I_x(\mathbf{x}) $$ The problem is that in the Harris technique you introduce a non-linear operation: square and product of the two partial derivatives. So you get: $$ \left[ \begin{array}{cc} L_x^2(\mathbf{x},\sigma_D) & L_xL_y(\mathbf{x},\sigma_D)\\ L_xL_y(\mathbf{x},\sigma_D)&L_y^2(\mathbf{x},\sigma_D) \end{array} \right] \neq g(\sigma_D)* \left[ \begin{array}{cc} I_x^2(\mathbf{x},\sigma_D) & I_xI_y(\mathbf{x},\sigma_D)\\ I_xI_y(\mathbf{x},\sigma_D)&I_y^2(\mathbf{x},\sigma_D) \end{array} \right] $$ So, to conclude, the first convolution is used to compute the derivatives (obtaining a representation in the scale space at the derivatin scale), then you need to integrate over a window for the Harris algorithm, with the so called integration scale.

Who introduced the two terms providing a good distinction of the two values? I believe that the first appearance of the terms is in

Mikolajczyk, K., & Schmid, C. (2004). Scale & affine invariant interest point detectors. International Journal of Computer Vision, 60(1), 63-86.

In the paper, they set $\sigma_D = 0.7\sigma_I$. Then the paper begins describing how the Harris-Laplace Detector works, but it's really complex and I still do not understand it very well (10 years after the appearance of the paper...).

$\endgroup$
1
  • $\begingroup$ @avocado You never picked an accepted answer. $\endgroup$ May 14, 2022 at 16:26
3
$\begingroup$

The $\sigma_I$ determines the scale level at which the Harris corners are computed. Coarser scales (higher values of $\sigma_I$) correspond to larger corners.

The $\sigma_D$ is effectively the window size, over which the derivatives are summed to generate the entries of the matrix. If $\sigma_D$ is too small, then the detector will be seriously affected by noise. If it is too large, then small corners may wash out. In the original non-scale-adapted Harris detector you only have $\sigma_D$.

By the way, this is the first time I see the terms "integration scale" and "differentiation scale", and I am not sure I like them. The "differentiation scale" is actually the Gaussian envelope, over which the derivatives are integrated. :)

$\endgroup$
2
  • $\begingroup$ Thank you, and it's also the first I see these terms, just trying to figure out their meanings. $\endgroup$
    – avocado
    Aug 26, 2013 at 23:39
  • $\begingroup$ I have updated my post, please see my update. $\endgroup$
    – avocado
    Sep 7, 2013 at 6:51
2
$\begingroup$

Such scale parameters identify the resolution at which features of interest are detected. With decreasing scale parameters, finer features are detected. The integration parameter determines the scale of the Gaussian smoothing function (used to attenuate finer features). The differentiation parameter specifies the scale of the derivative operators (used to detect rapid image intensity changes)

Parameter values are determined empirically and can be set using iterative procedures.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.