从3.0版开始,DenseFeatureDetector不再可用.有人可以告诉我如何在OpenCV 3.0中计算密集SIFT功能吗?我在文档中找不到它.
非常感谢你提前!
解决方法
以下是我在OpenCV 3 C中使用密集SIFT的方法:
- SiftDescriptorExtractor sift;
- vector<KeyPoint> keypoints; // keypoint storage
- Mat descriptors; // descriptor storage
- // manual keypoint grid
- int step = 10; // 10 pixels spacing between kp's
- for (int y=step; y<img.rows-step; y+=step){
- for (int x=step; x<img.cols-step; x+=step){
- // x,y,radius
- keypoints.push_back(KeyPoint(float(x),float(y),float(step)));
- }
- }
- // compute descriptors
- sift.compute(img,keypoints,descriptors);
似乎运作良好