I found a gaussian pyramid implementation in a MOPS paper (feature detection). They use sampling rate $s=2$ and $\sigma=1$ - i.e. to generate a new level of the pyramid, the current level is smoothed with Gaussian blur of that sigma and then subsampled. The same parameters are used to build each new level.

However, I need to use smaller sampling rates, e.g. $s=1.5$, to get more pyramid levels (non-integer sampling rates would be achieved by interpolation).

How to choose appropriate sigma, knowing the sampling rate?

My first guess is to use $\sigma=\sqrt{s/2}$, since the variance of the gaussian filter is half the sampling rate (radius) and sigma (standard deviation) is square root of that quantity. But I am not sure if that's correct.

In another words: Given a sampling rate, I need to pick gaussian blur sigma preventing aliasing.

  • $\begingroup$ Why more pyramid levels? $\endgroup$ May 24, 2016 at 23:50
  • $\begingroup$ @geometrikal Because the feature detector is very sensitive to scale change so I need many scales to make it effectively scale-invariant. It would be better to use something like SIFT, which find maxima in both space and scale, but for now I need something simple. $\endgroup$
    – Libor
    May 26, 2016 at 7:38

1 Answer 1


I've spent a bit of time searching for an answer to this as well.

I suspect since the Gaussian kernel has infinite support there will always be a little bit of aliasing, as there will always be frequencies passed that are greater than 0.25 of the sampling rate. That is, in the upper half of the spectrum.

So one would choose $\sigma$ to keep the amount of energy in the aliased bands to an acceptable level. Using $\sigma = 0.25 f_s$ would give 68%, $2\sigma = 0.25 f_s$ would give 95%, and so on.

From wikipedia:

enter image description here


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.