当前位置:   article > 正文

Opencv中如何将两幅图像连接成一幅图像(Mat操作)_mat 不同尺寸两张照片拼接成一张 opencv c#

mat 不同尺寸两张照片拼接成一张 opencv c#

问题如下:

1、定义两幅图像Mat image1image2,假设两幅图像同样大小

2、定义一幅图像Mat result,要将image1image2连接到一起放到result中,假设image1image2左右排列

//读取两幅图像
  1. Mat image_one=imread("1.jpg");
  2. Mat image_two=imread("2.jpg");
  1. //创建连接后存入的图像,两幅图像按左右排列,所以列数+1
  2. Mat result(image_one.rows,image_one.cols+
  3. image_two.cols+1,image_one.type());
//图像拷贝,不能用Mat中的clone和copyTo函数,单幅图像拷贝可用,clone和copyTo不仅拷贝图像数据,还拷贝一///些其他的信息
//而现在是将两幅图像的数据拷贝到一副图像中,只拷贝图像数据
//因此用colRange来访问图像的列数据colRange第一参数是起始列,是从0开始索引,而第二个参数是结束列,
  1. //从1开始索引,与我们以前使用的不同,因此,参数分别为0和image_one.cols
  2. image_one.colRange(0,image_one.cols).
  3. copyTo(result.colRange(0,image_one.cols));
  1. //第二幅图像拷贝,中间的一行作为两幅图像的分割线
  2. image_two.colRange(0,image_two.cols).copyTo(
  3. result.colRange(image_one.cols+1,result.cols));
  4. imshow("result",result);
  5. waitKey(0);





 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/81340
推荐阅读
相关标签
  

闽ICP备14008679号