I'm studying the SIFT algorithm and I have some problem understanding its operation, in particular I don't understand how the results vary according to the parameters: number of octaves, number of levels and sigma0.

I've read Lowe's original paper and I've done searches online but I still have doubts, I hope you can solve them.

I'm currently using this MatLab library.

This is what I get by editing the number of octave, layers, and window size (called also sigma0, if I have correctly understood the APIs).

enter image description here

What I see is that by increasing the number of octaves, it increases the number of features and adds larger features.

By increasing the number of levels, it seems to me the same thing happens when the octaves increase, ie the number of features increases and these are larger.

What should happen to the increasing number of octaves? Does it mean that increasing the series of halved images and hence? While increasing the number of levels means increasing the number of DoGs and hence in practice?

Instead, the features don't change varying sigma0, why? As the sigma0 increases, it should increase the degree of blur of the image and hence I should get fewer features, right? I have tried with many values and with different images and I always get the same features.

I don't understand how the results vary based on the variation of these parameters. Can anyone help me?

Thank you very much


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.