ROI
简单说说ROI,就是抠图(美称感兴趣区域ROI)。详情内容通过讲解代码
任务:实现画面叠化效果(水印或者相同规格叠化)
/*
利用ROI将一幅图像叠加到另一幅图像的指定位置
*/
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int main()
{
//【1】读入两幅图像并检查图像是否读取成功
Mat srcImage = imread("E:\\VS2015Opencv\\vs2015\\project\\picture\\cat.jpg");
Mat signal = imread("E:\\VS2015Opencv\\vs2015\\project\\picture\\04.png");
if (!srcImage.data || !signal.data)
{
cout << "读取图像有误,请重新输入正确路径!\n";
return false;
}
imshow("【萌宠】", srcImage);
imshow("【信号】", signal);
//【2】定义一个Mat类型并给其设定ROI区域
Mat imageROI = srcImage(Rect(600, 15, signal.cols, signal.rows)); //450,20为自定义起始点坐标
//【3】加载掩模(必须是灰度图)
Mat mask = imread("E:\\VS2015Opencv\\vs2015\\project\\picture\\04.png", 0); //参数0显示为灰度图
//【4】将掩模复制到ROI
signal.copyTo(imageROI, mask);
//【5】显示结果
namedWindow("利用ROI实现图像叠加");
imshow("利用ROI实现图像叠加", srcImage);
waitKey(0);
return 0;
}


浙公网安备 33010602011771号