SURF和SIFT原理部分见:https://blog.youkuaiyun.com/qq_36689119/article/details/89413197
https://www.cnblogs.com/wangguchangqing/p/4853263.html
//24 sift算子
void StartOp2::ImageProcess2_24()
{
Mat src;
src = imread("../../Images/20.jpg", 1);
if (!src.data) {
cout << "文件打开失败" << endl;
}
namedWindow("input", WINDOW_AUTOSIZE);
imshow("input", src);
//SIFT特征检测
int minHessian = 400;
//注意要添加#include <opencv2/xfeatures2d.hpp>/using namespace cv::xfeatures2d;
Ptr<SIFT> detector = SIFT::create(minHessian);
vector<KeyPoint> keypoints;
detector->detect(src, keypoints, Mat());
//绘制关键点
Mat keypointImg;
drawKeypoints(src, keypoints, keypointImg, Scalar::all(-1), DrawMatchesFlags::DEFAULT);
imshow("KeyPoints Image", keypointImg);
}