OpenCV图像直接拼接方法下面链接已做介绍,OpenCV常用图像拼接方法(一) :直接拼接 ,只是这次我们将使用现成的函数实现,它们是vconcat()和hconcat(),当然也有一些细微差异。
vconcat()---垂直方向拼接,要求待拼接图像有相同的宽度;
hconcat()---水平方向拼接,要求待拼接图像有相同的高度。
这里的区别可以明显看出,上次介绍的直接拼接方法是自定义最终拼接图像的大小,所以对待拼接图像的尺寸没有要求。但是使用vconcat()和hconcat()拼接则要求待拼接图像有相同的宽度或高度。两种方法对于相同的待拼接图像,耗时差异不大(笔者做过对比),所以如果你的待拼接图像宽度或高度满足要求时,可以直接使用vconcat()和hconcat(),既简单又方便。
C OpenCV Demo实例如下:
代码语言:javascript复制
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
Mat img = imread("1.jpg");
vector<Mat>vImgs;
Mat result;
vImgs.push_back(img);
vImgs.push_back(img);
vImgs.push_back(img);
vconcat(vImgs, result); //垂直方向拼接
//hconcat(vImgs, result); //水平方向拼接
imwrite("result.jpg", result);
return 0;
}
拼接结果: