1. 如何使用
#include <opencv2/opencv.hpp>
#include <opencv2/xfeatures2d.hpp> // 添加SURF
#include <iostream>
using namespace std;
using namespace cv;
using namespace cv::xfeatures2d; // 添加SURF相关命名空间
int main(int argc, char** argv)
{
Mat src = imread("test.jpg", IMREAD_COLOR);
imshow("src", src);
int minHessian = 5000;
Ptr<SURF> detector = SURF::create(minHessian);
vector<KeyPoint> keypoints1;
detector->detect(src, keypoints1);
Mat img_keypoints1;
drawKeypoints(src, keypoints1, img_keypoints1, Scalar::all(-1), DrawMatchesFlags::DRAW_RICH_KEYPOINTS);
imshow("DrawMatchesFlags", img_keypoints1);
waitKey(0);
return 0;
}
2.官方文档
Public Types
enum {
DEFAULT = 0,
DRAW_OVER_OUTIMG = 1,
NOT_DRAW_SINGLE_POINTS = 2,
DRAW_RICH_KEYPOINTS = 4
}

3. 代码测试



这篇博客介绍了如何利用OpenCV库和SURF(Speeded Up Robust Features)算法来检测图像的关键点。代码示例展示了读取图片、设置SURF参数、检测关键点并显示带有关键点的图像的过程。关键词包括OpenCV、SURF、图像处理、关键点检测。
840

被折叠的 条评论
为什么被折叠?



