SIFT Keypoints Octave value really large

1,282 views
Skip to first unread message

Hans-Christian Sperker

unread,
Oct 6, 2012, 1:11:41 PM10/6/12
to jav...@googlegroups.com
Hi there,

I just saw, that keypoints calculated by SIFT have really huge values for there octaves on which they where found (sometimes as big as 9896192). Keypoints calculated by ORB however have values in the range from 0 to nlevels which I also expected for SIFT. How are the high octave value of SIFT keypoints calculated and why are they so opaque?

Thanks

Samuel Audet

unread,
Oct 7, 2012, 9:26:33 AM10/7/12
to jav...@googlegroups.com
Are you sure the values are actually correctly calculated? Recent
versions of OpenCV have issues with KeyPoint stuff:
http://code.opencv.org/issues/2219

Hans-Christian Sperker

unread,
Oct 7, 2012, 10:20:18 AM10/7/12
to jav...@googlegroups.com
I think they are actually correct yes. I found the code of the sift algorithm where the octave of each keypoint is set and it gets calculated by kpt.octave = octv + (layer << 8) + (cvRound((xi + 0.5)*255) << 16);  and in reverse the octave is calculated from a keypoint by int octv=kpt.octave & 255.


So for using SIFT Keypoints with ORB simply calculating the octave with 'octave & 255' should work. But calculating SIFT descriptors for ORB Keypoints seems hard.

But thanks for the hint with the bug :-/ so since I also use SURF I should use the older version of OpenCV.


2012/10/7 Samuel Audet <samuel...@gmail.com>

Samuel Audet

unread,
Jan 19, 2013, 4:19:31 AM1/19/13
to jav...@googlegroups.com
The CvSURFParams struct is described here:
http://opencv.willowgarage.com/documentation/feature_detection.html#cvExtractSURF
CvSURFParams(0) probably won't work no...

Samuel

On 01/14/2013 02:05 PM, Ashish Shivhare wrote:
> @Samual
> in your code of Object detection using SURF feature..
> i am having problem with
> CvSURFParams parameters = CvSURFParams(500,1);
>
> here CvCvSURFParams(500,1); is a method but you haven't given its definition.
> insted of this i made it new CvSURFParams(0);
> which is yielding me to have descriptor total 0..
> please help me...
>
>
> i am using opencv 2.3.1 with windows xp

Reply all
Reply to author
Forward
0 new messages