研究生入学第一天,小明兴高采烈地向导师报道,导师项目多,学生少,知道小明以前学过图像处理,见到小明也是如获珍宝,随即就把其中一个项目交给他来做:图像拼接。
急于表现的小明拿到任务后眼前一亮,立马就给出了解决方案:直接拼接。
所谓地直接拼接,也叫硬拼,分别读取两张图像,然后合并成一张大图。
Opencv实现两张图像按照水平方向进行拼接:
Mat img1 = imread(“01.jpg”);
Mat img2 = imread(“02.jpg”);
int w1 = img1.cols;
int h1 = img1.rows;
int w2 = img2.cols;
int h2 = img2.rows;
int width = w1 + w2;
int height = max(h1, h2);
Mat resultImg = Mat(height, width, CV_8UC3, Scalar::all(0));
Mat ROI_1 = resultImg(Rect(0, 0, w1, h1));
Mat ROI_2 = resultImg(Rect(w1, 0, w2, h2));
img1.copyTo(ROI_1);