Mat和IplImage

Mat OpenCV C++ 的接口矩阵类
ImlImage OpenCV C 语言的接口的结构
两者都可以表述同一图像,二者之间的转换可以通过以下命令转换:

1、Mat to IplImage

cv::Mat matimg = cv::imread ("1.jpg");    //声明一个Mat对象,将图像“1.jpg”读入到实例中

IplImage* iplimg;                                     //声明一个指向iplimg的指针

*iplimg = IplImage(matimg);                  //将指针*iplimg指向由IplImage转化类型的matimg

2、IpLImage to Mat


IplImage* iplimg = cvLoadImage("2.jpg");   //用指针指向图像2.jpg

cv::Mat matimg;                                            //声明Mat格式对象

matimg = cv::Mat(iplimg);                            //将地址iplimg内的内容赋予matimg

看了上述转换的指令,个人认为,mat使用起来要方便多,本人比较怵指针地址的来回转换,可能是因为不熟练,经常出错罢了,如果熟练使用,这两个貌似不成问题。

你可能感兴趣的:(Mat和IplImage)