1、image.copyTo(imageROI),作用是把image的内容粘贴到imageROI,imageROI是源文件上的区域
2、image.copyTo(imageROI,mask),作用是把mask和image重叠以后把mask中像素值为0(black)的点对应的image中的点变为透明,而保留其他点。
mask:即掩模。掩模是由0和1组成的一个二进制图像。当在某一功能中应用掩模时,1值区域被处理,被屏蔽的0值区域不被包括在计算中。通过指定的数据值、数据范围、有限或无限值、感兴趣区和注释文件来定义图像掩模,也可以应用上述选项的任意组合作为输入来建立掩模。

{
Mat src = imread("E:\\1.jpg"); //source的意思
Mat log = imread("E:\\out.png");
Mat ROI = src(Rect(100, 100, log.cols, log.rows));//给要拷贝进来的图像画好的区域
log.copyTo(ROI);//将log图像拷贝到ROI区域,ROI区域在src上,这一点容易搞混
//log和src 的类型必须一致,否则会出错
imshow("1", src);
imshow("2", log);
return true;
}
bool ROI_AddImage1()
{
Mat src = imread("E:\\1.jpg"); //source的意思
Mat log = imread("E:\\out.png");
Mat ROI = src(Rect(0, 0, log.cols, log.rows));//给要拷贝进来的图像画好的区域
Mat mask = imread("E:\\out.png", 0);
log.copyTo(ROI, mask); //将log图像拷贝到ROI区域,ROI区域在src上,这一点容易搞混
//将黑色部分透明化处理
imshow("3", src);
imshow("4", log);
return true;
}
void main()
{
ROI_AddImage1();
ROI_AddImage();
waitKey();
}