2012-09-13 29 views
5

Trình phát hiện nhanh được hiển thị bên dưới không cho tôi điểm chính. Ai đó có thể đề nghị một vấn đề. Tôi sẽ cố gắng giải thích những gì tôi đang làm bên dưới với một số mã.Trình phát hiện tính năng BRISK phát hiện các điểm chính bằng không

#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); 

Vì vậy, khi tôi gỡ lỗi này và kiểm tra các keypoint (kp) nó nói < 0 sản phẩm>

với tương tự đang dò khác như ORB, SIFT hoặc làm việc SURF như dự định!

Ai đó có thể đề xuất giải pháp.

Tôi đang sử dụng OpenCV 2.4.9 với Qt tạo 2.5.2

Cảm ơn

Trả lời

3

Được rồi, tôi đã nhận nó bản thân mình!

Đối với ai đó quan tâm, giá trị mặc định của tham số cho BriskFeatureDetector tức là octaves = 3 và thres = 30 không cho tôi điểm chính nào cả. Nhưng khi tôi thay đổi quãng tám = 0 như thể hiện trong bản demo của tác giả gốc để sử dụng máy dò AGAST của Brisk, nó đã cho tôi một số lượng đáng kể các điểm chính.

Cảm ơn và tận hưởng!

Các vấn đề liên quan