IplImage是计算机视觉处理数字图像的一种重要的抽象数据类型,最初来源于Intel公司的IPL(Image Processing Library)库。OpenCV1.0在实现该数据类型时使用了C语言风格的结构体,在以后高版本的OpenCV库中,该结构体得以保留。
IplImage作为初代OpenCV的最主要的抽象数据类型,在今时今日,仍然有很大的影响力,由于很多嵌入式设备只支持C语言,因此,C语言风格的OpenCV1.X仍然具有很大的生命力。我们在享受OpenCV最新版本带来的便捷的同时,不得不考虑OpenCV不同版本之间数据类型的转换问题。
2 IplImage转换成Mat类型
IplImage *img = cvLoadImage("Test.jpg", CV_LOAD_IMAGE_COLOR);
Mat src = cvarrToMat(img,true);
3 Mat类型转换成IplImage类型
Mat src = imread("Test.jpg", IMREAD_COLOR);
IplImage im = IplImage(src);