用C++生成以下代码:使用OpenCV中的stitcher函数完成两张图片的拼接,其中特征点检测使用SURF算法
时间: 2023-06-10 10:05:50 浏览: 132
下面是使用C语言生成OpenCV中的stitcher函数实现两张图片拼接,SURF算法进行特征点检测的代码:
#include <opencv2/opencv.hpp>
#include <opencv2/stitching.hpp>
#include <vector>
#include <string>
using namespace cv;
using namespace std;
int main(int argc, char* argv[])
{
vector<Mat> images;
Mat result;
images.push_back(imread("image1.jpg"));
images.push_back(imread("image2.jpg"));
Ptr<Stitcher> stitcher = Stitcher::create(Stitcher::SCANS);
stitcher->setFeaturesFinder(makePtr<detail::SurfFeaturesFinder>());
Stitcher::Status status = stitcher->stitch(images, result);
if (status != Stitcher::OK)
{
cout << "Error: cannot stitch images, status = " << status << endl;
return -1;
}
imshow("Result", result);
waitKey(0);
return 0;
}
这段代码使用OpenCV的Stitcher类实现了两张图片的拼接,其中使用了SurfFeaturesFinder类进行SURF算法特征点检测。
阅读全文