Ask Your Question
0

Low framerate with ORB detector

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

Fred Mili gravatar image

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

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
2

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

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

Comments

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 -0600 )edit

Question Tools

Stats

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

Seen: 539 times

Last updated: May 09 '14