Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I reading an article about an Automatic scale selection It is used in image feature extraction. But what I need is the mathematical part of it. I have a problem with understanding the following:

Given an image: $f: \mathbb{R}^D \rightarrow \mathbb{R}$

And its scale-space representation: $L: \mathbb{R}^D \times \mathbb{R}_+ \rightarrow \mathbb{R}$

$L(x;t) = \int_{\xi\in\mathbb{R}^N}f(x - \xi)g(\xi)d \xi$ (convolution)

where $g: \mathbb{R}^N \times \mathbb{R}_+ \rightarrow \mathbb{R}$ denotes the Gaussian kernel.

$g(x;t) = \frac{1}{(2 \pi \sigma^2)^{\frac{D}{2}}} exp{\frac{-(x_1^2+\cdots x_D^2)}{2 t}}$

t is reffered to as the scale parameter.

So, edge detection: At each scale level, edges are definedfrom points at which the gradient magnitude assumes a local maximum in the gradient direction.

If the $\delta_v$ denotes a directional derivative in the gradient direction, (suppose the direction is $v$) this edge definition can be written as:

$\tilde{L}_{vv} = L_v^2 L_{vv} = L_x^2 L_xx + 2 L_x L_y L_{xy} + L_y^2 L_{yy} = 0$ $\tilde{L}_{vvv} = L_v^3 L_{vvv} = L_x^3 L_xxx + 3 L_x^2 L_y L_{xxy} + 3 L_x L_y^2 L_{xyy} + L_y^3 L_{yyy} < 0$

What I need to understand is how was the directional derivative taken? And why do they need second order and third order directional derivatives (not first and the second order)?

EDIT 1: By the way, how is it possible, that in the definition of $g$ it says that $g: \mathbb{R}^N \times \mathbb{R}_+ \rightarrow \mathbb{R}$

But then: $g(x;t) = \frac{1}{(2 \pi \sigma^2)^{\frac{D}{2}}} exp{\frac{-(x_1^2+\cdots x_D^2)}{2 t}}$

So we have $N + 1$ dimentional function in first case and then it looks like we have a $D + 1$ dimentions in the second case. Isn't it a mistake? This is an offitial article however..

share|cite|improve this question
up vote 1 down vote accepted

I'm assuming $N=D=2$; otherwise I can't make sense of your equations.

We have a function $L(x,y,t): \mathbb{R}^2\times \mathbb{R^+} \to \mathbb{R}$. The $t$ coordinate we don't care about at all since it is held fixed for all of the derivatives we take in the definition of an edge.

We can make a couple of observations:

  1. The directional derivative of a function in direction $v$ is the gradient of that function dot $v$.
  2. A maximum of $\sqrt{f(x,y)}$ along a direction $v$ is also a maximum of $f(x,y)$ along $v$, so we may replace the magnitude of the gradient with the square magnitude of the gradient, and save ourselves having to deal with annoying square roots.

To find where the directional derivative of $\|\nabla L\|^2$in the direction $\nabla L$ is zero we solve $$\begin{align*}\nabla( \nabla L \cdot \nabla L) \cdot \nabla L &= 0\\ \nabla(L_x^2 + L_y^2) \cdot (L_x,L_y) &= 0\\ (2L_x L_{xx} + 2L_y L_{xy},\ 2L_y L_{yy} + 2L_{x}L_{xy})\cdot(L_x,L_y) &= 0\\ L_x^2 L_{xx} + L_xL_y L_{xy} + L_y^2 L_{yy} + L_xL_yL_{xy}&= 0, \end{align*}$$ which is exactly your first equation.

To get your second equation, apply the second derivative test to verify the critical point is a maximum.

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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