opencv数据类型转换

opencv数据类型转换:

1、

IplImage pImg= IplImage(imgMat);   //imgMat是Mat类型的数据

CvMat cvMat = imgMat;

2、
//CvMat-> IplImage
IplImage* img = cvCreateImage(cvGetSize(mat),8,1);
cvGetImage(matI,img);
cvSaveImage("rice1.bmp",img);

3、
//IplImage -> Mat
IplImage* pImg = cvLoadImage("lena.jpg");
Mat img(pImg,0); // 0是不複製影像,也就是pImg與img的data共用同個記憶體位置,header各自有

4、
//Mat->CvArr
Mat  img;
const  CvArr* s=(CvArr*)&img;

//上面就可以了,CvArr是Mat的虚基类,所有直接强制转换就可以了


5、mat到IplImage*

cv::mat gray;

IplImage *pImg=&IplImage(gray);


6、今天在opencv300下将Iplimage*转cv::Mat一直报错(cv::Mat colored(frame_copy,false);),没有这种构造函数,最后群里朋友给出解答

IplImage *frame_copy;

cv::Mat colored = cv::cvarrToMat(frame_copy);


最后补充一句:CvArr  *a其实就相当于void *a

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值