Mat和IplImage相互转换

本文介绍OpenCV中Mat与IplImage之间的相互转换方法,包括浅拷贝和深拷贝的过程。Mat是C++接口的矩阵类,而IplImage是C语言接口的结构体,两者在不同场景下有着不同的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Mat OpenCV C++ 的接口矩阵类, ImlImage OpenCV C 语言的接口的结构体,但是C++程序有时候时候还是要用到 ImlImage

相互转化:
            IplImage->Mat
                        
  1. //浅拷贝:
  2. IplImage* pBinary=cvLoadImage( "c://temp.jpg", 0);
  3. Mat Img;
  4. Img=cvarrToMat(pBinary);
  5. //深拷贝只需要再在Mat里创建一个新的Mat对象,然后进行数据的复制,再用上述的函数进行数据头的复制(浅拷贝):
  6. IplImage* pBinary=cvLoadImage( "c://temp.jpg"0);
  7. Mat ImgTemp;
  8. Img=cvarrToMat(pBinary);
  9. Mat Img = ImgTemp.clone();

  1. //浅拷贝:
  2. Mat Img=imread( "1.jpg");
  3. IplImage* pBinary = &IplImage(Img);
  4. //深拷贝只要再加一次复制数据:
  5. IplImage *input = cvCloneImage(pBinary);

            Mat->IplImage

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值