|
发表于 2018-10-12 14:49:57
|
显示全部楼层
IplImage:
在OpenCV中IplImage是表示一个图像的结构体,也是从OpenCV1.0到目前最为重要的一个结构;
在之前的图像表示用IplImage,而且之前的OpenCV是用C语言编写的,提供的接口也是C语言接口;
Mat:
Mat是后来OpenCV封装的一个C++类,用来表示一个图像,和IplImage表示基本一致,但是Mat还添加了一些图像函数;
在OpenCV中, IplImage 与 Mat是可以相互转换的;
IplImage 转 Mat:
// extern IplImage * plpliamge; //假设 IplImage 已经创建;
cv::Mat * pmatImage = new cv:Mat( IplImage, 0 ): //第二个参数表示不进行像素数据copy;
Mat 转 IplImage:
//extern cv:Mat matImage; //假设已经创建cv:Mat;
IplImage limage = IplImage ( matImage );//不进行数据copy;
通常情况对于图像的读取,IplImage 通过 cvLoadImage, cv:Mat通过 cv::imread; |
|