在Opencv2.X以上的处理中,大部分处理都是以Mat为主,而对于习惯了1.X的童鞋来说,有时候会带来不便,希望能采用1.X的形式来处理。经过试验,介绍一种简单的Mat与IplImage*类型间的转换:

示例代码是需要mat转换为img:

Mat mat,mat1; // mat1是临时变量

IplImage * img;

mat1=mat.clone();// 包括数据的深度复制,以防对mat数据的更改

img=cvCreateImage(cvSize(mat.cols,mat.rows),8,3); //根据实际进行初始化

img.imageData=(char*)mat1.data;

如此,Img就拥有了与mat一样的数据,在需要IplImage*类型的数据时,使用img

另外还有一种方式,没经过试验,放在下面:

IplImage *frame;

Mat frmImg;

frame=&IplImage(frmImg);

Opencv2.X以上Mat类型与IplImage*的转换相关推荐

  1. Mat 类型转 QImage 类型

    转自:https://blog.csdn.net/liyuanbhu/article/details/86307283 void Dialog::Mat2QImage(Mat image) {//图片 ...

  2. opencv mat用数组初始化_10、OpenCV中图像和Mat类型(一)

    Mat类型可以被认为是OpenCV库的核心. OpenCV库中绝大多数的函数都是Mat类的成员,以Mat作为参数,或者Mat作为返回值. Mat类用于表示任意维数的密集数组.即使对于数组中的该条目为零 ...

  3. OpenCV的Mat类型以及基本函数使用

    OpenCV的Mat类型以及基本函数使用 Mat和IplImage的区别 Mat和IplImage的主要区别 在OpenCV中IplImage是表示一个图像的结构体,也是从OpenCV1.0到目前最为 ...

  4. MFC+OPENCV+显示MAT类型图像

    MFC显示图像到界面,可以用链接中的DrawMatToPic,有时会出现IplImage*类型转换问题,因为用opencv做后续图像处理,所以统一使用Mat类型,可以showMat()函数进行显示.在 ...

  5. opencv中的Mat类型

    Mat类型主要是跟matlab中的数据类型一样.故用起来很方便. Mat最大的优势跟STL很相似,都是对内存进行动态的管理,不需要之前用户手动的管理内存,对于一些大型的开发,有时候投入的lpImage ...

  6. opencv的mat赋值_OpenCV Mat 类型定义和赋值

    1.一般的Mat定义方法:cv::Mat M(height,width,),例: cv::Mat M(480,640,CV_8UC3); 表示定义了一个480行640列的矩阵,矩阵的每个单元的由三个( ...

  7. OpenCV中图像以Mat类型保存时各通道数据在内存中的组织形式及python代码访问各通道数据的简要方式...

    OpenCV中图像以Mat类型保存时各通道数据在内存中的组织形式及python代码访问各通道数据的简要方式 以最简单的4 x 5三通道图像为例,其在内存中Mat类型的数据组织形式如下: 每一行的每一列 ...

  8. 如何将cv::Mat类型转换为imgui中的ImTextureID类型

    背景: 我原来的工程是使用opencv的,所以程序中的图像都是表示为cv::Mat类型,为了能够在imgui窗口中显示我的cv::Mat的图像,我找到了下面这个函数: void ImGui::Imag ...

  9. 关于怎么怎么把 unsingned char 数据转换为 Opencv 的Mat类型,并且吧图像显示出来

    1.定义 unsignde char* A; 2.定义cv::Mat B(cv::Size(800,500),CV_8U) 3.使用c语言的 memcpy(B.data, A,800*500)//将A ...

  10. Mat类型中的CV_8UC3、CV_32FC3以及对应的迭代器模板参数Vec3b,Vec3f的一点自己的理解

    贴上一段很简单的测试代码 int main() { Mat a(100,100,CV_8UC3,Scalar(366,366,366)); MatIterator_<Vec3b> it = ...

最新文章

  1. c++连接oracle数据库程序,无法从c++程序连接到我的oracle数据库
  2. python的编译器有哪些-python编译器有哪些
  3. cad怎么查找未闭合_CAD无法填充的这四种方法肯定能解你燃眉之急
  4. Python基础——数据分析考核(图形化版本)
  5. 【CI/CD2】actions,daocloud
  6. linux下怎么退出telnet
  7. 带圆圈大小的散点图_Python数据可视化,Matplotlib绘制“散点图”的两种方法!...
  8. 无法嵌入互操作类型 请改用适用的接口_西门子COMOS软件开发定制学习7-嵌入谷歌浏览器内核...
  9. 路由器下一跳地址怎么判断_网络基本功三:细说路由器
  10. c语言程序不能运行,C语言编程,我写了一个程序,但不能运行.
  11. 未知账户(S-1-5-21)无法删除的问题
  12. php多个 运算_php计算多个集合的笛卡尔积实例详解
  13. 微信刷投票软件手机版、微信免费刷票软件建立的原理解析
  14. 谨慎选择镭射祛斑,极易反黑!一定要做好防晒,否则会变成永无止尽的黑斑地狱!
  15. 基于51单片机病床呼叫系统proteus仿真设计(protues仿真+源码+报告)
  16. vi编辑器的常用命令
  17. 如何更新一台计算机的驱动程序,怎样更新电脑最新驱动程序? -电脑资料
  18. 18650锂电池保护板接线图_锂电池保护板的过流保护测试方案
  19. keras-yolo3-master使用记录
  20. HTML背景图片设置

热门文章

  1. 设计模式12——代理模式
  2. C# 连接sql 2005
  3. iOS开发--获取时间
  4. 数据库性能优化之SQL语句优化(下)
  5. winform对话框控件、打印控件
  6. vue父子组件间传参
  7. 【计算机网络】1.1 计算机网络的基本概念
  8. 20155320 Exp3 免杀原理与实践
  9. 12_电话拨号器_界面实现
  10. MVC源码解析 - UrlRoutingModule / 路由注册