感兴趣区域:ROI

对感兴趣区域进行的一系列操作,相当于直接在原图相应部分进行操作。

  • srcImage 为原图像
  • Rect(0,0,dstImage.cols, dstImage.rows) 在原图像上寻一片矩形区域,左上角坐标为(0,0),长为 dstImage.cols,宽为 dstImage.rows

src.copyTo(dst, mask) 或 src.copyTo(dst)

可将 src 拷贝到 dst 上

  • 若有 mask,将原图(src)与 mask 进行运算后得到的结果拷贝给 dst。其中,mask 必须为 CV_8U 类型,且大小与 src、dst 一致。

在位置(x,y)时,如果 mask 的像素值不等于 0,则 dst(x,y) = src(x,y);

如果 mask 的像素值等于 0,则 dst(x,y) = 0;(对于三通道的彩色图也适用)

opencv —— copyTo 设置与操作感兴趣区域(ROI)-LMLPHP

  • 若没有 mask,直接将 src 拷贝给 dst,同时要求 src 与 dst 大小一致。

代码示例:

#include <opencv.hpp>
using namespace cv;
int main(){
Mat srcImage = imread("1.jpg");
Mat dstImage = imread("2.jpg");
imshow("图1原始图", srcImage);
imshow("图2原始图", dstImage); //创建一个感兴趣区域
Mat imageROI = srcImage(Rect(,,dstImage.cols, dstImage.rows)); //加载掩模板
Mat mask = imread("2.jpg", ); //进行复制
dstImage.copyTo(imageROI, mask);
//显示效果图
imshow("效果图为",srcImage); waitKey(); }

opencv —— copyTo 设置与操作感兴趣区域(ROI)-LMLPHPopencv —— copyTo 设置与操作感兴趣区域(ROI)-LMLPHP

opencv —— copyTo 设置与操作感兴趣区域(ROI)-LMLPHP

05-11 10:50