aihot  2017-04-28 22:44:40  OpenCV |   查看评论   

 OpenCV学习笔记(五)——2.0以上版本和以下版本的数据兼容

都知道,2.0版本对之前的OpenCV数据结构进行了大幅度的修改。但对之前版本的兼容是一个很重要的事情。这节就主要讨论这个问题
首先来看一下2.0版本对之前版本的进行了哪些修改

1.采用了新的数据结构Mat作为图像的容器,取代了之前的CvMat和lplImage,这个改动不是太复杂,只需适应一下新东西,而且可以自由转换

  1. Mat I;  
  2. IplImage pI = I;  
  3. CvMat mI = I; 
对于指针的操作要相对复杂一些,而且还要注意内存的释放,我这里不推荐用老版本的数据结构,例如:

  1. Mat I;  
  2. IplImage* pI = &I.operator IplImage();  
  3. CvMat* mI = &I.operator CvMat();  

2.对library进行了重组,将原来的一个大库根据功能结构分成具体小库,这样包含头文件的时候只需要加入你需要的库,只是原来库的子集

3.使用了cv 这个namespace来防止和其他的library 结构冲突。所以在使用的时候也要预先加上cv::关键字,这也是新版本的函数,数据都省略了cv前缀的原因,一般放在include之后,格式为:

 

  1. using namespace cv; // 新的接口API在这个命名空间内。 导入它
 

除特别注明外,本站所有文章均为 赢咖4注册 原创,转载请注明出处来自OpenCV学习笔记(五)——2.0以上版本和以下版本的数据兼容

留言与评论(共有 0 条评论)
   
验证码:
[lianlun]1[/lianlun]