BRISK feature detector detects zero keypoints

2019-04-29 12:28发布

The Brisk detector shown below gives me no keypoints. Can somebody please suggest a problem. I will try to explain what I am doing below with some of the codes.

#include "opencv2/features2d/features2d.hpp"

using namespace cv;    
using namespace std;

Ptr<FeatureDetector> detector;
detector =  FeatureDetector::create("BRISK");

// the filename is given some path

Mat img = imread(filename, 0);
CV_Assert( !img.empty() );

vector<KeyPoint> kp;

detector->detect(img, kp);

So, when I debug this and check the keypoint (kp) it says <0 items>

with similar code other detector like ORB, SIFT or SURF work as intended!

Can somebody please suggest a solution.

I am using opencv 2.4.9 with Qt creator 2.5.2

Thanks

1条回答
霸刀☆藐视天下
2楼-- · 2019-04-29 13:12

Okay, I got it myself!

For someone interested, the default values of the parameters for BriskFeatureDetector i.e octaves = 3 and thres = 30 doesn't gave me keypoints at all. But when I change the octaves = 0 as shown in the original author's demo to use AGAST detector of Brisk, it gave me a considerable amount of keypoints.

Thanks and enjoy!

查看更多
登录 后发表回答