未经本人允许,不得转载

先直接上代码,文末会有具体分析,代码也有相应注释。

本文是以三张图片横向排列拼接为例 ,其他的也是类似

IplImage* paletteImageRam1, paletteImageRam2, paletteImageRam3;   //此处是定义了三个图片,实际使用时应当载入自己的三幅图片

//将三个图片拼接在一起
double width,height;
width = double(paletteImageRam1->width) *3.0;   //第一幅图片的宽度乘以3就是拼接完的图像宽度,此处假设三张图的宽高都一样,实际使用可以将各自图像的宽度相加
height = double(paletteImageRam1->height);        //第一幅图像的高度

IplImage* des = cvCreateImage(cvSize(width,height), paletteImageRam1->depth, paletteImageRam1->nChannels);   //生成一个三幅拼接用的容器图片
cvSetImageROI(des, cvRect(0, 0,paletteImageRam1->width, height)); //设置容器图片中感兴趣的部分,前两个左边0,0代表感兴趣的区域的起点,后两个代表感兴趣区域的宽高                                                 
cvCopy(paletteImageRam1, des);      //将第一幅图像放到感兴趣的区域里面,也就是第一个方格
cvResetImageROI(des);                   
cvSetImageROI(des, cvRect(paletteImageRam1->width, 0,paletteImageRam1->width,height));
cvCopy(paletteImageRam2, des);
cvResetImageROI(des);
cvSetImageROI(des, cvRect(paletteImageRam1->width*2, 0,paletteImageRam1->width,height));
cvCopy(paletteImageRam3, des);
cvResetImageROI(des);

//des就是最后拼接得到的图像

/************************/

// opencv里面cvSetImageROI(感兴趣的区域的起点x,感兴趣的区域的起点y,感兴趣的区域宽度w,感兴趣的区域高度h)函数,是用来设置一个操作区域的,就是说设定了这个区域然后再将图复制到这个里面来,然后再分割第二个区域,填进去

/***********************/

转载于:https://www.cnblogs.com/rain-drop/p/6828059.html

Opencv实现多幅图片拼接在一起相关推荐

  1. opencv实现图像的拼接功能

    opencv 图像拼接. 代码来自版本2.4.9,stitching.cpp /*M/// // // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INS ...

  2. OpenCV 进行图像融合拼接

    环境: 运行环境:Win10 x64 OpenCV 版本: 4.5.1 源代码: #include <iostream> #include <vector> #include ...

  3. opencv Stitcher多图拼接

    Opencv使用Stitcher类图像拼接生成全景图像 Opencv中自带的Stitcher类可以实现全景图像,效果不错.下边的例子是Opencv Samples中的stitching.cpp的简化, ...

  4. 【数字图像处理】基于opencv的图像采集与拼接

    最近准备开始着手学习计算机视觉,首先还是从opencv开始学起. 在opencv平台首先实现摄像头实时采集图像,按下空格拍照,拍完四张图片后实现图像的简单拼接. 1.图像的采集 #include &l ...

  5. Python OpenCV 图片拆分与拼接

    本文主要实现图片的简单拼接与拆分 一.拆分 示例图片: 拆分代码如下: 主要思路:读取图片后拆分为两个矩阵,再显示即可 import numpy as np import cv2path = './1 ...

  6. OpenCV中图像水平拼接函数hconcat的使用

    OPenCV版本:4.4 IDE:VS2019 功能描述 对给定的矩阵应用进行水平连接. 函数垂直连接两个或更多的cv::Mat矩阵 (具有相同的行数). 函数原型1 CV_EXPORTS void ...

  7. OpenCV中图像垂直拼接函数vconcat的使用

    OPenCV版本:4.4 IDE:VS2019 功能描述 对给定的矩阵应用进行垂直连接 函数垂直连接两个或更多的cv::Mat矩阵 (具有相同的列数). 函数原型1 CV_EXPORTS void v ...

  8. opencv中的矩阵拼接

    hconcat.vconcat Mat_<float> T_L = (Mat_<float>(3, 1) << -518.97666, 01.20629, 9.14 ...

  9. OpenCV读取多幅图片,读取系列图片,读取文件夹中指定图像类型的系列图片

    读取系列图片通常是将文件夹中的所有文件名保存在txt中,再读取,如链接和链接所示.这是通常的操作方法. 之前写过一篇利用OpenCV读取系列图片的例子,参见链接,但是,实际应用中并不能改变文件名,本文 ...

最新文章

  1. php识别下载图片类型,php识别jpg图片exif信息中Photoshop格式 类型
  2. linux进程map,linux下unordered_map和map在小数据下性能差异
  3. 2021-05-10 如何修改Docker的默认镜像存储位置
  4. 大厅安排(normal)
  5. SAP Fiori Elements List Report 里的表格类型(tableType)是如何决定出来的
  6. MySQL_存储过程
  7. Asp.Net把word文件转换为html文件
  8. zuul源码分析之Request生命周期管理
  9. CSDN小秘书 测试版
  10. 时序逻辑电路的设计与分析
  11. 自动控制原理学习笔记--反馈控制系统的动态模型
  12. 计算机网络应用ppt,1分钟骚操作顶别人10分钟!不可不懂的PPT神技
  13. iptables: No config file解决方法
  14. python词性标注_自然语言处理基础技术之词性标注
  15. 如何回答“你没有经验,我们为什么录用你”
  16. RGB和CIELAB颜色空间转换及偏色检测
  17. Android Studio显示“Hardcoded String XXX,should use @string resource”的解决方法2-1
  18. pixiv爬虫,下载关注的所有画师的所有插画----解决谷歌人机,模拟登录,SSL错误与反反爬
  19. 横向越权与纵向越权区别
  20. Echarts 柱状图上方显示值

热门文章

  1. mysql连接28000错误代码_mysql 在登陆的时候出现error 1045 (28000): 错误解决办法
  2. linux选择usb功能,USB gadget设备驱动解析(1)——功能体验
  3. C++socket编程(八):8.1 UDP讲解,用户数据报协议
  4. 辰皇怎么过鸿蒙,诛仙3职业全面解析 各职业副本优缺点介绍
  5. linux设置ntp开机同步时间同步,linux ntp时间同步
  6. mysql经典四表查询_mysql经典问题四表查询(教师,学生,成绩,课程表)
  7. 获取roi内的xld_提升ROI是王道,这几种推广获客渠道与形式你还不知道?
  8. python打包exe黑框一闪而过,解决pyinstaller打包exe文件出现命令窗口一闪而过的问题...
  9. html中的声明的作用域,Html/CSS 作用域
  10. Flink WriteRedis