Ask Your Question

Low framerate with ORB detector

asked 2014-05-09 07:59:43 -0500

Fred Mili gravatar image

updated 2014-05-09 08:12:50 -0500

I was playing with OpenCV Mixed Processing tutorial and I experienced a good framerate (~27) when detecting features in camera frames with FAST detector.

I changed the detector to ORB and the framerate dropped to around 10. Is this because ORB is not as fast as FAST or I'm missing something? Is there any way to tune up ORB and speed this up?

Mat& mGr  = *(Mat*)addrGray;
vector<KeyPoint> v;

OrbFeatureDetector detector(50); 
// FastFeatureDetector detector(50);
detector.detect(mGr, v);
edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2014-05-09 08:24:54 -0500

Rui Marques gravatar image

ORB is quite slower than FAST (but faster than other detectors like SIFT, SUFT). It is also much more robust than FAST, regarding view-point changes, etc.

Those frame-rates you mention seem normal, you have some degree of tunning, for example getting rid of outliers early so the rest of your code has less keypoints to deal with.

edit flag offensive delete link more


Can you give me an example of how to "get rid of outliers early"? I think outlier removal is after matching step and not in detection phase. As you see, ORB constructor already has a value of 50 which means it only consider the 50 best keypoints.

Fred Mili gravatar imageFred Mili ( 2014-05-09 08:43:45 -0500 )edit

Question Tools


Asked: 2014-05-09 07:59:43 -0500

Seen: 383 times

Last updated: May 09 '14