文档章节

VC 2008 Express下安装OpenCV2.3.1

雷霄骅
 雷霄骅
发布于 2014/08/16 13:57
字数 1682
阅读 26
收藏 0

注意:

  1. 下列文档以VC2008 Express为例,VC2010下的配置应与本文档类似。

  2. VC 6.0不被OpenCV 2.3.1支持。

  3. VC Express是微软提供的免费版,可从此处下载: http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express

  4. 建议先不要自己编译,如果使用预编译好的库有问题,再尝试自己编译。


安装所需要的软件

 

下载OpenCV

  1. 从本站下载栏目 http://www.opencv.org.cn/index.php/Download 下载 OpenCV for Windows(也即 OpenCV-2.3.1-win-superpack.exe 文件)。

  2. 将 OpenCV-2.3.1-win-superpack.exe 解压并放到某个目录下,例如 D:\Program Files\OpenCV2.3.1 (无需运行setup.exe,解压则可)。解压后的目录结构如下图。

  • 点击看大图


       


 

安装CMake(不打算自己编译无需安装)

http://www.cmake.org/cmake/resources/software.html 下载 Windows (Win32 Installer) 安装。


 

编译OpenCV(非必需步骤)


 

用CMake导出VC++项目文件

  • 运行cmake-gui,设置where is the source code路径为OpenCV安装路径(本文档假定安装位置为:D:\Program Files\OpenCV2.3.1\opencv),并创建子目录D:\Program Files\OpenCV2.3.1\opencv\build\my,并将cmake的"where to build the binaries"设置为这个目录。

  • 然后点 configure,在弹出的对话框内选择 Visual Studio 9 2008。

  • 你可根据你的系统修改选项,修改后再次选择“Congfigure”,完成后选择“Generate”。

(注: 此处Open CV文件放的目录不能包含汉字,否则“Congfigure”和“Generate”无法成功;同时需要关闭已经打开的VS,否则CMake与VS的宏无法配置。 by:Jackyzzy 赵振阳)

2.0版本截图仅供参考,点击看大图      


     
     


   

2.0版本截图仅供参考,点击看大图      


     
     


   


   





 


编译 OpenCV Debug和Release版本库

完成上一步骤后,将在D:\Program Files\OpenCV2.3.1\opencv\build\my目录下生成OpenCV.sln的VC Solution File,请用VC++ 2008 Express打开OpenCV.sln,然后执行如下操作:

  • 在Debug下,选择Solution Explorer(解决方案资源管理器)里的 Solution OpenCV(解决方案“OpenCV”),点右键,运行"Rebuild Solution";如编译无错误,再选择INSTALL项目,运行"Build"。

  • 在Release下,选择Solution Explorer里的 Solution OpenCV,点右键,运行"Rebuild Solution";如编译无错误,再选择INSTALL项目,运行"Build"。

全部运行完毕后,针对你的系统的OpenCV库就生成了。

 

配置VC

 

配置include路径

也即告诉VC去什么地方寻找OpenCV的头文件,打开VC,选择菜单“工具”->“选项”->“项目和解决方案”->“VC++目录”->“包含文件”,包含 D:\Program Files\OpenCV2.3.1\opencv\build\include;D:\Program Files\OpenCV2.3.1\opencv\build\include\opencv;D:\Program Files\OpenCV2.3.1\opencv\build\include\opencv2 如果是自己编译的则输入D:\Program Files\OpenCV2.3.1\opencv\build\my\install\include

  • 点击看大图


       


 

配置lib路径

也即告诉VC去什么地方寻找OpenCV的库文件。

在刚才下载的文件OpenCV-2.3.1-win-superpack.exe 里,已经为VC2008和VC2010预先编译好了动态库和静态库。因此我们不需要如早先版本那样,自己用cmake编译OpenCV。

  • 自己编译的库,库目录为:D:\Program Files\OpenCV2.3.1\opencv\build\my\install\lib

(注:由于自己编译成功,lib文件在Debug和Release两个文件中,加载库时需到Debug和Release中,
  我配置的库目录为:D:\Program Files\OpenCV2.3.1\opencv\build\my\install\lib\Debug,否则调试时无法进入Open CV代码中。 by:Jackyzzy 赵振阳)

  • 32位系统 & VC2008,库目录为:D:\Program Files\OpenCV2.3.1\opencv\build\x86\vc9\lib

  • 32位系统 & VC2010,库目录为:D:\Program Files\OpenCV2.3.1\opencv\build\x86\vc10\lib

  • 64位系统 & VC2008,库目录为:D:\Program Files\OpenCV2.3.1\opencv\build\x64\vc9\lib

  • 64位系统 & VC2010,库目录为:D:\Program Files\OpenCV2.3.1\opencv\build\x64\vc10\lib

请根据自己的情况四选一,将库目录输入菜单“工具”->“选项”->“项目和解决方案”->“VC++目录”->“库文件” 。如下图所示:

点击看大图      


     
     

点击看大图      


     
     


   


   


 

设置环境变量

刚才设置的是动态库,因此还需要将OpenCV的dll文件所在的目录加入Path环境变量。dll文件目录如下,请根据自己情况五选一:

  • 自己编译的库,dll目录为:D:\Program Files\OpenCV2.3.1\opencv\build\my\install\bin

  • 32位系统 & VC2008,dll目录为:D:\Program Files\OpenCV2.3.1\opencv\build\x86\vc9\bin

(注:此处环境变量应与上边库目录一致,这样能够调试时能够进入代码,我自己的目录是:D:\Program Files\OpenCV2.3.1\opencv\build\x86\vc9\bin\Debug。 by:Jackyzzy 赵振阳)

  • 32位系统 & VC2010,dll目录为:D:\Program Files\OpenCV2.3.1\opencv\build\x86\vc10\bin

  • 64位系统 & VC2008,dll目录为:D:\Program Files\OpenCV2.3.1\opencv\build\x64\vc9\bin

  • 64位系统 & VC2010,dll目录为:D:\Program Files\OpenCV2.3.1\opencv\build\x64\vc10\bin

由于有些函数需要TBB,所以需要将tbb所在的目录也加入到环境变量Path中。TBB相关的DLL路径为:

  • 32位系统 & VC2008:D:\Program Files\OpenCV2.3.1\opencv\build\common\tbb\ia32\vc9

  • 32位系统 & VC2010:D:\Program Files\OpenCV2.3.1\opencv\build\common\tbb\ia32\vc10

  • 64位系统 & VC2008:D:\Program Files\OpenCV2.3.1\opencv\build\common\tbb\intel64\vc9

  • 64位系统 & VC2010:D:\Program Files\OpenCV2.3.1\opencv\build\common\tbb\intel64\vc10

如下图所示将OpenCV和TBB的dll文件所在的目录系统环境变量Path中。加入后可能需要注销当前Windows用户(或重启)后重新登陆才生效。

点击看大图      


     
     

点击看大图      


     
     


 

使用OpenCV 2.3.1编程

  • 打开VC++ 2008 Express,创建一个Win32控制台程序helloopencv;

  • 点击看大图


       

  • 选择Solution Explorer里的opencvhello项目,点击鼠标右键,选择Properties。

  • 点击看大图


       

  • ,在[链接器 LINKER]的[输入INPUT]中,为项目的Debug配置增加 [附加依赖项 Additional Dependencies]:opencv_calib3d231d.lib; opencv_contrib231d.lib; opencv_core231d.lib; opencv_features2d231d.lib; opencv_flann231d.lib; opencv_gpu231d.lib; opencv_highgui231d.lib; opencv_imgproc231d.lib; opencv_legacy231d.lib; opencv_ml231d.lib; opencv_objdetect231d.lib; opencv_ts231d.lib; opencv_video231d.lib (可根据实际需要删减)注意,请打开了新编辑窗口(即点击了“...”按钮)“附加依赖项”,并一条一条分别加入,一条一行(一个回车),(注意行末不要加";")否则会出现类似以下错误:1>LINK : fatal error LNK1104: 无法打开文件“…….lib”

  • 如果下载的OpenCV不是2.3.1版本,请将"XXX231d.lib"中的"231"更改为对应的版本号,例如:下载OpenCV 2.4.0,则统一改为"XXX240d.lib",否则会出现类似以下错误:1>LINK : fatal error LNK1104: 无法打开文件“XXX.lib”

  • 点击看大图


       

  • 为项目的Release配置增加[附加依赖项 Additional Dependencies]:opencv_calib3d231.lib; opencv_contrib231.lib; opencv_core231.lib; opencv_features2d231.lib; opencv_flann231.lib; opencv_gpu231.lib; opencv_highgui231.lib; opencv_imgproc231.lib; opencv_legacy231.lib; opencv_ml231.lib; opencv_objdetect231.lib; opencv_ts231.lib; opencv_video231.lib (可根据实际需要删减)*

  • 点击看大图


       

  • 编译运行下面的例程(需要将lena.jpg文件放在项目目录下,即与生成的.exe文件同位置)(这里有误。双击exe的话,图片放在.exe同一文件夹内;按F5直接运行程序的话,lena.jpg要放在helloopencv\helloopencv里)。

  • /***********************************************************************
     * OpenCV 2.3.1 测试例程
     * 于仕琪 提供
     ***********************************************************************/
    #include "stdafx.h"
     
    #include <opencv2/opencv.hpp>
     
    using namespace std;
    using namespace cv;
     
    int main(int argc, char* argv[])
    {
    	const char* imagename = "lena.jpg";
     
    	//从文件中读入图像
    	Mat img = imread(imagename);
     
    	//如果读入图像失败
    	if(img.empty())
    	{
    		fprintf(stderr, "Can not load image %s\n", imagename);
    		return -1;
    	}
     
    	//显示图像
    	imshow("image", img);
     
    	//此函数等待按键,按键盘任意键就返回
    	waitKey();
     
    	return 0;
    }



     

    程序运行结果图,点击看大图


    程序运行结果图


原文地址:http://wiki.opencv.org.cn/index.php/首页

本文转载自:http://blog.csdn.net/leixiaohua1020/article/details/12358401

雷霄骅
粉丝 205
博文 419
码字总数 2129
作品 4
朝阳
程序员
私信 提问
VC 2008 Express下安装OpenCV2.3.1

VC 2008 Express下安装OpenCV2.3.1 注意: 下列文档以VC2008 Express为例,VC2010下的配置应与本文档类似。 VC 6.0不被OpenCV 2.3.1支持。 VC Express是微软提供的免费版,可从此处下载: ht...

Sophia_tj
2012/09/07
0
0
python开源软件(GDSpy)怎么安装使用?

我不是计算机行业的,对python编程等之前一无所知。最近因为行业兴趣研究开源软件GDSpy,下了软件包gdspy-0.6.zip打算自己编译,结果搞了好几天都不知道怎么装上64位win7电脑。 我先在D:\下装...

xibinke
2015/03/10
502
0
Visual c++ 2008 程序部署问题

Microsoft Visual C++ 2008 发布程序的部署问题 这个问题有好多Blog和Forum已经讨论过了,但都不详尽,在具体的操作过程中还是有许多疑问。我摘录并整合了许多网络文章,希望能够做个最终了结...

文艺小青年
2017/06/30
0
0
图片识别文字--ocrstyle

Optical Character Recognition 背景 本程序最初是想用于发票识别的,目前可以通过ocrengine和imageprocess动态库进行二次开发。 功能 图片识别文字的软件。 支持截图。 支持选择识别的区域。...

vwarship
2013/03/01
9.9K
0
初用Boost+Visual Studio 2008 Express Edition

1.安装python 2.将2个文件解压缩 3.执行boost-jam-3.1.17文件下的build.bat,则在bin.ntx86下生成bjam可执行文件 4.将bjam文件放到boost_1_39_0目录下 5.在该目录下创建boost.bat并执行 SET ...

kendrick
2009/06/27
453
0

没有更多内容

加载失败,请刷新页面

加载更多

告诉大家写简历和面试的技巧(面向高级开发和架构师)

之前我也写过不少介绍面试相关的博文,有些文章的点击量还不低,这些面试相关的经验大多都是从我面试别人的过程中提炼出来了。 在18年底到19年3月,陆续面试了几家公司,有成有不成的,最终进...

java菜分享
12分钟前
0
0
SpringMVC教程3【文件上传下载,静态资源处理及数据校验】

一,文件上传 web.xml配置通用 <?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi......

薛小二
20分钟前
3
0
【跟着我们学Golang】基础结构

鉴于上篇文章我们已经讲过Go语言环境的安装,现在我们已经有了一个可以运行Go程序的环境,而且,我们还运行了'Hello World'跑出了我们的第一个Go程序。 这节我们就以'Hello World为例,讲解G...

搜云库技术团队
24分钟前
1
0
谈谈ConcurrentHashMap1.7和1.8的不同实现

ConcurrentHashMap 在多线程环境下,使用HashMap进行put操作时存在丢失数据的情况,为了避免这种bug的隐患,强烈建议使用ConcurrentHashMap代替HashMap,为了对更深入的了解,本文将对JDK1....

群星纪元
25分钟前
0
0
JBDC更新计数行以及调用存储过程返回多个结果集

在学习该知识点之前,需要了解sqlserver的一个存储过程语句:SET NOCOUNT ON; 执行该命令 表示不返回计数行,什么是计数行了,比如我们执行 DELETE ,UPDATE,INSERT的时候,对多少条数据进行了...

小v来上课
27分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部