在OpenCV4.6版本下,用C++生成以下代码:使用OpenCV中的stitcher函数完成两张图片的拼接
时间: 2023-06-08 15:07:00 浏览: 165
OpenCV实现多张图片自动拼接成一张大图片(C++版)
5星 · 资源好评率100%
请使用以下代码:
```
#include <opencv2/opencv.hpp>
using namespace cv;
int main()
{
Mat image1 = imread("image1.jpg"); // 读取第一张图片
Mat image2 = imread("image2.jpg"); // 读取第二张图片
// 创建拼接器对象
Ptr<Stitcher> stitcher = Stitcher::create(Stitcher::Scans);
// 创建存放拼接结果的图像
Mat result;
// 调用拼接器的拼接函数进行拼接
Stitcher::Status status = stitcher->stitch({image1, image2}, result);
if (status != Stitcher::OK)
{
// 拼接失败,输出错误信息
std::cout << "Stitching error: " << status << std::endl;
return -1;
}
// 保存拼接结果
imwrite("result.jpg", result);
return 0;
}
```
这段代码会先读取两张图片,然后创建一个拼接器对象,再调用拼接器的拼接函数进行拼接。拼接成功后,将结果保存到 result.jpg 中。
阅读全文