首页 > 代码库 > 在Windows下用MingW 4.5.2编译OpenCV 2.3.0

在Windows下用MingW 4.5.2编译OpenCV 2.3.0

需要的工具:
1、安装QT SDK环境
2、安装CMake for Windows
3、OpenCV最新Windows源码
步骤:
1、将QT SDK安装目录下的{QtSDK}\mingw\bin添加到系统环境变量PATH中
2、打开CMake,设置源码位置和源码构造位置

3、点击configure,选择如下

5、configuer后generate
6、通过Mingw Shell进入到D:/OpenCV执行mingw32-make Makefile编译,mingw32-make install
7、完毕后D:/OpenCV下lib、bin目录会生成库文件,此时我们可以将lib、bin目录,加源码中include目录拷贝到单独目录,这些构成了OpenCV的SDK
8、打开QT Creater创建一个QT的空项目,修改pro文件添加OpenCV的include和lib

  1. INCLUDEPATH += D:\OpenCV\include
  2. LIBS += D:\OpenCV\lib\*.a

9、创建c++源文件,添加如下代码

  1. #include <highgui.h>//包含opencv库头文件
  2. #include <cv.h>
  3. int main( int argc, char** argv ) {//主函数
  4.   cvNamedWindow( "Example2", CV_WINDOW_AUTOSIZE );//创建窗口,(名字,默认大小)
  5.   CvCapture *capture = NULL;// 视频获取结构, 用来作为视频获取函数的一个参数
  6.    capture = cvCreateCameraCapture(0);//打开摄像头,从摄像头中获取视频
  7.    IplImage* frame;//申请IplImage类型指针,就是申请内存空间来存放每一帧图像
  8.     while(1) {
  9.         frame = cvQueryFrame( capture );// 从摄像头中抓取并返回每一帧 
  10.         if( !frame ) 
  11.             break;
  12.         cvShowImage( "Example2", frame );//在窗口上显示每一帧
  13.         char c = cvWaitKey(33);//延时,每秒钟约33帧;符合人眼观看速度;
  14.         if( c == 27 ) 
  15.             break;//由于是死循环,而且没有控制台,当按下键盘exc键,退出循环;
  16.     }
  17.     cvReleaseCapture( &capture );//释放内存;
  18.     cvDestroyWindow( "Example2" );//销毁窗口
  19. }

10、编译通过后执行会出现错误,这是由于缺少dll,将编译OpenCV成功后的bin目录添加到系统PAHT或者拷贝到项目目录下,再次调用成功