首页 > 作文

深入浅析OpenCV copyTo()函数

更新时间:2023-04-04 10:21:32 阅读: 评论:0

目录
copyto()函数原型简单示例mask参数深入探究

copyto()

函数原型

copyto这个函数有两种定义方式,分别是:

void copyto( outputarray m ) const;void copyto( outputarray m, inputarray mask ) cocranberry saucenst;

参数:

一个参数:一张输出图像两个参数:一张输出图像一个掩码图

简单示例

例如:

image_in.copyto(image_out);

就是把image_in这张图复制(copy to)到image_out上。

又例如:

image_in.copyto(image_out,mask);

则是不仅把image_in这张图复制(copy to)到image_out上,且image_in对应mask中像素值为0的像素点都不会贴到image_out上。

总结上述两个函数用法的作用:

一个参数:表示将image_in矩阵复制到image_out中。两个参数:表示得到一个附加掩膜mask的矩阵image_out

一个参数的很简单就是复制图像,上面读mask用法探究不深,那么我们继续来探究一下mask参数的用法

mask参数深入探究

例如下面用法代码:

a.copyto(b, mask)

mask作为一个掩模板,如果在某个像素点(i, j)其值为1(只看第一通道,所以mask单通道即可),则把a.at(i, j)处的值直接赋给b.at(i, j),如果其值为0则b.at(i, j)处保留其原始像素值。这样能够使得图标边缘的颜色和原图保持一致。

例如下面具体用法

#i西游记小故事nclude <iostream>#include <math.h>#include <opencv2/opencv.hpp>#include <opencv2/highgui.hpp>#include <opencv2/highgui/highgui_c.h>  using namespace cv;using namespace std;int main上海海洋大学分数线(){mat srcimage = imread("./test1.jpg");mat dstimage = imread("./test.jpg");if (!srcimage.data || !dstimage.data){cout << "could not load image !";return -1;}// namedwindow("图1原始图",);imshow("input_src1", srcimage);imshow("input_src2", dstimage);// 创建一个感兴趣区域mat imageroi = srcimage(r老狼的歌ect(0, 0,有哪些农谚 dstimage.cols, dstimage.rows));// 加载掩模板mat mask = imread("./test.jpg", 0);// 进行复制dstimage.copyto(imageroi, mask);// 显示效果图imshow("out_put", srcimage);waitkey(0);return 0;}

运行效果图:

到此这篇关于opencvcopyto()函数的文章就介绍到这了,更多相关opencvcopyto()函数内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

本文发布于:2023-04-04 10:21:30,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/9d2ff71970a59cf6bf522558a5acee96.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:深入浅析OpenCV copyTo()函数.doc

本文 PDF 下载地址:深入浅析OpenCV copyTo()函数.pdf

标签:参数   函数   像素   值为
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图