CMake OpenCV源代码编译

本文详细介绍如何在Windows XP系统环境下,利用Visual Studio 2010和CMake工具配置并编译OpenCV 2.4.2版本。文章包括下载安装OpenCV与CMake、通过CMake生成VS2010项目、编译OpenCV源码、配置VS2010工程等步骤,并提供了一个简单的OpenCV示例程序。
摘要由CSDN通过智能技术生成
要点:
           1) XP+ Visual Stuio 2010 + OpenCV-2.4.2.exe + cmake-2.8.8-win32-x86.exe 
           2) 如何CMake OpenCV源代码得到可编译的VS2010项目
           3) 如何使用VS2010编译OpenCV源码
           4) 如何配置OpenCV工程

1. 下载OpenCV 安装包

2. 解压安装包
    双击OpenCV-2.4.2.exe 解压,比如解压安装到C:\openCV_extract
    【这里面是OpenCV自带的dll库,无法用来在VS中调试OpenCV,所以需要使用CMake重新编译】

3.  安装CMake
     cmake-2.8.8-win32-x86.exe ( http://www.cmake.org/cmake/resources/software.html

4. CMake OpenCV
    源代码选择OpenCV安装目录C:/openCV_extract/opencv
    Build目录可以设置为C:/openCV-extract/opencv_build
    点击Configure
    完成后,出现红色背景,
    勾选 BUILD_SHARED_LIBS,BUILD_TESTS,OPENCV_BUILD_3DPARTY_LIBS,以及下面的WITH_JASPER,WITH_JPEG,WITH_PNG, WITH_TBB(一般这个没默认选上), 和WITH_TIFF选项
    点击Generate
    

5.  编译CMake出来的工程
    (1)打开C:/openCV-extract/opencv_build目录下的VS2010工程文件OpenV.sln
    (2)分别使用Debug和Release模式,编译生成。
    (3) 复制opencv_build目录下的bin和lib文件夹,到C:\openCV_extract\opencv目录下
              复制opencv\build\include 目录下的两个文件夹,到opencv\include 下,覆盖。
             
    这样得到的库文件,就可以被VS2010调用了。
      
6.  配置系统环境变量
    在PATH变量中添加:
    C:\openCV_extract\opencv\build\x86\vc10\bin;C:\ openCV_extract \opencv\bin\Debug\;C:\ openCV_extract \opencv\bin\Release\

7.  新建Win32工程,配置工程属性
     (1)VC++ Directories 下的Include Directories 
        (bin\debug可以不用加)
        
      (2)VC++ Directories 下的Library Directories 
             Debug模式为:lib\Debug
             Release模式为:lib\Release
         
     
      (3)添加库文件  Linker --> Input --> Additional Dependencies  (注意:lib文件名根据不同的opencv版本而定)
        Debug模式添加:
             opencv_calib3d242d.lib
opencv_contrib242d.lib
opencv_core242d.lib
opencv_features2d242d.lib
opencv_flann242d.lib
opencv_gpu242d.lib
opencv_haartraining_engined.lib
opencv_highgui242d.lib
opencv_imgproc242d.lib
opencv_legacy242d.lib
opencv_ml242d.lib
opencv_objdetect242d.lib
opencv_ts242d.lib
opencv_video242d.lib
       Release模式添加:    
          opencv_calib3d242.lib
opencv_contrib242.lib
opencv_core242.lib
opencv_features2d242.lib
opencv_flann242.lib
opencv_gpu242.lib
opencv_haartraining_engine.lib
opencv_highgui242.lib
opencv_imgproc242.lib
opencv_legacy242.lib
opencv_ml242.lib
opencv_objdetect242.lib
opencv_ts242.lib
opencv_video242.lib

8. 编码运行
    
[cpp]  view plain copy
  1. #include "stdafx.h"  
  2. #include "highgui.h"  
  3. //using namespace cv;  
  4.  int _tmain(int argc, _TCHAR* argv[])  
  5. {    const char* imagename = "D:/Images/jc.jpg";  
  6.     cv::Mat img = cv::imread(imagename);  
  7.     if(img.empty())  
  8.     {  fprintf(stderr, "Can not load image %s\n", imagename);  
  9.         return -1;  
  10.     }  
  11.     if( !img.data )  
  12.         return -1;  
  13.     cv::namedWindow("image", CV_WINDOW_AUTOSIZE);  
  14.     cv::imshow("image", img);  
  15.     cv::waitKey();  
  16.     return 0;  
  17. //(代码来自http://blog.sina.com.cn/s/blog_68ed8b21010163uc.html)  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值