I know that both SIFT and SURF descriptor vectors are normalized with (unit vectors) to deal with illumination changes, but as far as I can see, the SIFT descriptors are also normalized with the major orientation of the keypoint.

Does anyone know if the SURF descriptor does this, as I cant find anything about this in the SURF paper by Herbet et al?

I would appreciate any help with this! I am currently using SURF descriptor as included with matlab computer vision toolbox.


1 Answer 1


The SURF descriptor implicitly accounts for orientation of the interest points based on the distribution of edge intensities around it. So yes it is invariant to rotation. This is also mentioned in the description of the SURFPoints class:


Describes the orientation of the detected feature. This value must be specified as an angle, in radians. The angle is measured from the X-axis with the origin at the point given by the Location property. Typically, this value gets set during the descriptor extraction process. The extractFeatures function modifies the default value of 0. Do not set this property manually. Rely instead on the call to extractFeatures to fill in this value. The Orientation is mainly useful for visualization purposes.

Default: 0.0

  • $\begingroup$ Thanks for your answer, I know that it is invariant to rotation, I was however asking about the actual descriptors, weather or not the actual descriptors are normalized with respect to orientation. In a SIFT descriptor, once it has the key point, it will find the strongest gradient angle, then normalize the image patch about that angle, then get the descriptor. But with SURF does it simply get the angle and describe it for that angle? I could just be missing something obvious.. $\endgroup$
    – Alex
    Jun 15, 2013 at 7:58
  • $\begingroup$ Ah I see. AFAIK, the SURF descriptor is computed after rotating the reference coordinate system to match the keypoint's orientation. So no normalisation is required after computation of the descriptor. $\endgroup$
    – Zaphod
    Jun 16, 2013 at 10:20

Your Answer

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

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