关于opencv 图像掩膜操作srcImage.copyto(dstImage, mask)说明

原创 2016年08月31日 16:28:14

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>

#include <iostream>
using namespace std;
using namespace cv;


bool ROI_AddImage()
{
	Mat srcImage=imread("4.jpg");
	Mat logoImage = imread("1.png");
	Mat imgROI = srcImage(Rect(200,250,logoImage.cols,logoImage.rows));
	Mat mask = imread("1.png",0);
	logoImage.copyTo(imgROI,mask);
	namedWindow("1");
	imshow("1",srcImage);
	return true;
}
int main()
{
	
	ROI_AddImage();
	waitKey(0);
}

对于函数srcImage.copyto(dstImage, mask),mask作为一个掩模板,如果在某个像素点(i, j)其值为1(只看第一通道,所以mask单通道即可)则把srcImage.at(i, j)处的值直接赋给dstImage.at(i, j),如果其值为0则dstImage.at(i, j)处保留其原始像素值。

下面我给大家附上书籍opencv3上的测试代码:

opencv中copyTo函数的使用

我们已经知道的是,使用copyTo函数可以得到一个复制的矩阵。 A.copyTo(B); 就可以得到和A一毛一样的矩阵B。当然需要事先声明B。并且两者可以互不相关的做各种操作。 copyTo还有...
  • moiraz
  • moiraz
  • 2016年12月06日 17:03
  • 3765

opencv之图像mat复制copyTo,clone=

函数原型 Mat clone() const; void copyTo( OutputArray m ) const; void copyTo( OutputArray m, InputArray m...

opencv中感兴趣区域以及mask的使用

在图像处理的过程中,我们时常需要对指定区域或目标进行操作,这个区域我们称之为感兴趣区域。在学习opencv的初级阶段,对于感兴趣区域的操作方法是必须要掌握的。 比如下图: 我们获取到一帧图...

opencv学习篇(6)mask操作

矩阵的掩码操作很简单。其思想是:根据掩码矩阵(也称作核)重新计算图像中每个像素的值。掩码矩阵中的值表示近邻像素值(包括该像素自身的值)对新像素值有多大影响。从数学观点看,我们用自己设置的权值,对像素邻...

opencv中感兴趣区域以及mask的使用

在图像处理的过程中,我们时常需要对指定区域或目标进行操作,这个区域我们称之为感兴趣区域。在学习opencv的初级阶段,对于感兴趣区域的操作方法是必须要掌握的。 Mat image,mask;   ...

用mask掩码处理图片,Mat::copyTo函数第一个用于输出的传入参数不能是原图片

例如src.copyTo(src,mask)是绝对不能成功的。原本只想把理由粗略说一下,但是后来想一想看一看源代码还是有好处的,于是去源代码里面看了看,怎么知道由于本人的过于才疏学浅,就这么一看就看了...
  • jdpshq
  • jdpshq
  • 2013年06月02日 18:13
  • 10462

OpenCV中图像及子图像ROI之间的复制

opencv的图像及子图像复制1.x版本与2.x版本的使用方式有很大不同。 1.x版本采用cvCopy或cvSetImageROI, cvCopy, cvResetImageROI的方式实现。 ...
  • viewcode
  • viewcode
  • 2012年08月02日 16:11
  • 29222

【OpenCV学习笔记】十三、ROI与mask掩码

这一章内容简介: 1.感兴趣区域ROI 2.掩码 3.几种演示:初级融合(直接将logo复制到图像的感兴趣区域)     圆形ROI(首先新建一个掩码图像,再将logo复制到图像的感兴趣区域,只有掩码...

详解语句srcImage(cv::Rect(xRoi,yRoi,widthRoi,heightRoi)).copyTo(roiImage);

对语句srcImage(cv::Rect(xRoi,yRoi,widthRoi,heightRoi)).copyTo(roiImage);理解的前提是正确划分语句,首先把这句话分成两段,如下: sr...

图像处理中掩膜(mask)的意义

刚开始涉及到图像处理的时候,在opencv等库中总会看到mask这么一个参数,非常的不理解,在查询一系列资料之后,写下它们,以供翻阅。 数字图像处理中的掩膜的概念是借鉴于PCB制版的过程,在半导体制...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于opencv 图像掩膜操作srcImage.copyto(dstImage, mask)说明
举报原因:
原因补充:

(最多只允许输入30个字)