当前位置:   article > 正文

Opencv2示例_opencv2 示例

opencv2 示例

Opencv1.0版本于2006年面世,主要基于C语言。2009年发布opencv2,主要基于C++。此时opencv库被划分成多个模块:

Opencv_core模块:包含核心功能,尤其是底层数据结构和算法函数。  

Opencv_improc模块:包含图像处理函数。   

Opencv_highgui模块:包含读写图像及视频的函数,以及操作图形用户界面函数。   

Opencv_features2d模块:包含兴趣点检测子,描述子以及兴趣点匹配框架。   

Opencv_calib3d模块:包含相机标定,双目几何估计以及立体视觉函数。   

Opencv_video模块:包含运动估算,特征跟踪以及前景提取函数与类。   

Opencv_objdetect模块:包括物体检测函数,如脸部和行人检测。   

库中还包含其它的工具模块,如机器学习(opencv_ml),计算几何(opencv_flann),第三方代码(opencv_contrib)等。这些模块都对有一个单独的头文件(位于include文件夹)。推荐的声明方式如下:

#include<opencv2\core\core.hpp>  
#include<opencv2\highgui\highgui.hpp>  
#include<opencv2\imgproc\imgproc.hpp>  
而#include "cv.h"是旧的代码方式

………………………………………………………………

读取、显示和保存图片

  1. #include "stdafx.h"
  2. #include "opencv2/core/core.hpp"
  3. #include "opencv2/imgproc/imgproc.hpp"
  4. #include "opencv2/highgui/highgui.hpp"
  5. #include <iostream>
  6. using namespace std;
  7. using namespace cv;
  8. int _tmain(int argc, _TCHAR* argv[])
  9. {
  10. Mat image=imread("D:\\document_x64\\documents\\visual studio 2012\\Projects\\ConsoleApplication1\\Debug\\lena.jpg",1);//读取图片
  11. if(!image.data)// data指向已分配内存块的指针
  12. {
  13. cout<<"fail to load image"<<endl;
  14. }
  15. cout <<"image size: "<<image.size().height<<","<<image.size().width<<endl;//size()返回的是一个结构体
  16. namedWindow("show");
  17. imshow("show",image);// 显示图片
  18. imwrite("D:\\document_x64\\documents\\visual studio 2012\\Projects\\ConsoleApplication1\\Debug\\lena2.jpg",image);
  19. Mat result;
  20. flip(image,result,0);
  21. namedWindow("result",0);
  22. imshow("result",result);
  23. waitKey(0);
  24. return 0;
  25. }


声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号