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 << "读取图像有误,请重新输入正确路径!
";
		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;
}

  

原文地址:https://www.cnblogs.com/fcfc940503/p/11254607.html