OpenCV ORB detector finds very few keypoints

我的未来我决定 提交于 2019-12-04 02:03:23

Increasing nfeatures increases the number of detected corners. The type of keypoint extractor seems irrelevant. I'm not sure how this parameter is passed to FAST or Harris but it seems to work.

orb = cv2.ORB_create(scoreType=cv2.ORB_FAST_SCORE)

orb = cv2.ORB_create(nfeatures=100000, scoreType=cv2.ORB_FAST_SCORE)

Even though this thread is quite old, i hope this may help someone with the same question:

I'm not sure how this parameter is passed to FAST or Harris but it seems to work.

That is explained very well by Rublee et al. in their paper "ORB: an efficient alternative to SIFT or SURF". Since i don't think to be able to explain it better, here's a direct quote from page 2565 of "2011 International Conference on Computer Vision":

FAST does not produce a measure of cornerness, and we have found that it has large responses along edges. We employ a Harris corner measure [11] to order the FAST keypoints. For a target number N of keypoints, we first set the threshold low enough to get more than N keypoints, then order them according to the Harris measure, and pick the top N points.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!