iLMS知識社群(Sites)師生部落格(Blogs)朝陽首頁(Homepage)TronClass教學平台登入
如何才能將兩張影像合併在一張影像顯示?
by 鄭文昌 2017-11-17 14:40:21, 回應(1), 人氣(1085)
今天專題生問我,如何才能將兩張影像分別放置左右合併在一張影像顯示?這可以利用ROI設定方式來完成。
Step 1 : 讀入Lena影像。
Step 2 : 建構一張與Lena相同列數但有兩倍行數的空白影像。
Step 3 : 設定一張暫時影像,並讓暫時影像利用ROI設定指向合併影像邊ROI,複製lena到暫時影像。
Step 4 : 接著設定暫時影像指向合併影像的邊ROI,複製lena到暫時影像。
Step 5 : 顯示結果。

C++程式如下:
//----------------------------------------------------
#include <opencv2\opencv.hpp>

using namespace cv;

void main()
{
Mat img = imread("C:\\opencv\\sources\\samples\\cpp\\lena.jpg");
Mat newimg = Mat(img.rows, img.cols*2, CV_8UC3);

Mat tmpimg;
tmpimg = newimg(Rect(0, 0, img.rows, img.cols));
img.copyTo(tmpimg);

tmpimg = newimg(Rect(img.cols, 0, img.rows, img.cols));
img.copyTo(tmpimg);

imshow("image", img);
imshow("new_image", newimg);

waitKey();
}


附件:
1. result.jpg (312 KB)
標籤: opencv2
回應(1)
感謝,非常實用的教學
回應