打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
OpenCV 2.1+VS2010+Win7 配置
 环境:windows 7+visual studio 2010+opencv 2.1

各位进行操作时,最好把其它无关的程序均关掉,最好把杀毒软件关掉,360也都关掉,否则会出现未知的错误

1、下载文件
OpenCV2.1
http://www.opencv.org.cn/download/OpenCV-2.1.0-win32-vs2008.exe
CMAKE 2.8.1
[url]http://www.cmake.org/files/v2.8/cmake-2.8.1-win32-86.exe
INTELTBB3.0[/url]
http://www.threadingbuildingblocks.org/uploads/77/151/3.0/tbb30_20100406oss_win.zip

2、首先安装CMAKE2.8.1,然后将OpenCV2.1安装到你将要放置OPENCV的地方,接着,解压INTEL TBB 3.0,比如将OPENCV和TBB都放在D:\Program Files里面。并在OpenCV文件夹下创建子目录D:\vs2010,用于存放编译结果。

检查D:\Program Files\OpenCV2.1\bin和D:\Intel TBB 3.0\bin\ia32\vc10是否已经被加入到环境变量(我的电脑-属性-环境变量)PATH,如果没有,请加入。加入后需要注销当前Windows用户(或重启)后重新登陆才生效。(可以在任务管理器里重启explorer.exe)

打开CMAKE 2.8.1,在Where is the source code后面填写(或者选择)OPENCV 2.1的安装目录,如D:\Program Files\OpenCV2.1,在Where to build the binaries里填写刚创建的子目录D:\vs2010。接着点击Configure按钮,在出现的对话框中选择Visual Studio 10,下面的选项选择Use default native compilers,点击Finish继续。

过一会儿之后会出现一个配置窗口(此处注意在CMAKE配置的时候是不能够打开VS2010的),然后勾选BUILD_SHARED_LIBS,BUILD_TESTS,OPENCV_BUILD_3DPARTY_LIBS,以及下面的WITH_JASPER,WITH_JPEG,WITH_PNG,WITH_TBB(一般这个没默认选上),和WITH_TIFF选项

这是我配置出现的错误,现在还没有办法解决,继续,
勾好后再次点击Configure,之后再配置窗口最上面会出现TBB_INCLUDE_DIR-NOTFOUND字样的红色选项,此处为CMAKE找不到INTEL TBB的包含文件为之所致,将INTEL TBB 3.0里面的INCLUDE文件夹路径(注意是INCLUDE,不是INCLUDE里面的子文件夹)定位到该配置属性的路径里(就在这一项的Value列,你点击一下就会出现选择文件夹的对话框),再次点击Configure,在TBB_LIB_DIR处又会出现红色一行,此处为INTEL TBB的库文件位置,此处必须将路径定位到含有LIB文件的位置(就在这一项的Value列,你点击一下就会出现选择文件夹的对话框,别找不到),比如我的安装位置是D:/Program Files/Intel TBB 3.0/lib/ia32/vc10,也就是说,在lib文件夹下会有子文件夹,必须定位到子文件夹对应的VC版本文件夹里去,这里由于是配置VS2010,所以我们选择VC10文件夹,ia32子文件夹是32位系统,此处应根据对应操作系统选择。

然后,我们再次点击Configure,此时所有红色行已经变为白色,同时在下方的信息里面会有一条为Use TBB:YES的字样,证明我们已经将INTEL TBB配置完毕,然后点击Generate。

3、完成后在刚创建的子文件夹D:\vs2010下会出现一个VS2010的解决方案文件OPENCV.sln,双击打开后,出现OPENCV 2.1的所有工程项目,先不要着急编译。

首先点击Solution Explorer(解决方案资源管理器)里面Property Manager(属性管理器)(在视图--》其它窗口--》属性管理器)下的选项卡,依次展开ALL_BUILD—Debug|Win32—右键单击Microsoft.Cpp.Win32.user,选择Properties(属性),然后选择VC++ Directories(VC++目录),在Executable Directories(可执行文件目录)里面将INTEL TBB 3.0的可执行路径(bin)填写到里面,此处与LIB一样,必须定位到VC10才可以,例如我的是D:\Program Files\Intel TBB 3.0\bin\ia32\vc10,将Include Directories(包含目录)定位到Intel TBB的Include文件夹即可,无需再往深入定位,在Library Directories(库目录)里填写Intel TBB的LIB文件位置,定位到VC10文件夹。

单击确定之后,将选项卡切回到Solution Explorer(解决方案资源管理器),将编译模式切换为Debug模式,右键单击Solution OpenCV(解决方案OpenCV),选择Rebuild Solution(重新生成解决方案),编译后再右键单击INSTALL项目,选择Build(生成),之后将编译模式切换为Release,重复debug模式下的步骤。完成后在你的解决方案文件夹D:\Program Files\OpenCV2.1\vs2010里面会生成bin目录,include目录,lib目录。

      此时,OpenCV的*d.dll文件(for debug)和*.dll文件(for release)将出现在D:\vs2010\bin目录中;OpenCV的*d.lib文件(for debug)和*.lib文件(for release)将出现在D:\vc2010\lib目录;头文件*.h出现在D:\vc2010\include\opencv中。

  • 配置Windows环境变量Path

将D:\vs2010\bin加入Windows系统环境变量Path中。


到此OPENCV 2.1配置完成,
 
以后建立OPENCV项目时都需在项目里面添加依赖库,
 
方法是先建立一个C++项目,
 
  • 配置OpenCV环境

菜单 点击Solution Explorer(解决方案资源管理器)里面Property Manager(属性管理器)(在视图--》其它窗口--》属性管理器)下的选项卡
—Debug|Win32—右键单击Microsoft.Cpp.Win32.user,选择Properties(属性),然后选择VC++ Directories(VC++目录),

         VC++目录中  选择包含目录,加入目录 D:\vs2010\include\opencv

         VC++目录中 选择库目录,加入目录 D:\vs2010\lib

在Solution Explorer(解决方案资源管理器)里面右键选择项目,选择Properties(属性),然后在Linker(链接器)里面选择Input(输入),在依赖库里添加OPENCV的LIB文件夹里的LIB文件名称即可,文件名后面有小写字母“d”的为Debug库(调试模式库),没有“d”的为Release库(发布模式库)。例如active(debug)[活动(debug)]里添加cv210d.lib cvaux210d.lib cxcore210d.lib highgui210d.lib ml210d.lib,release里添加cv210.lib cvaux210.lib cxcore210.lib highgui210.lib ml210.lib

新建win32控制台项目,修改主文件为:


Java代码
  1. #include "stdafx.h"  
  2. #include "highgui.h"  
  3.   
  4. //所有的以新风格命名的函数都在 cv 命名空间中   
  5. using namespace cv;   
  6.   
  7. int _tmain(int argc, _TCHAR* argv[])   
  8. {   
  9.   
  10.     const char* imagename = "E:\\lena.jpg";   
  11.   
  12.     Mat img = imread(imagename); // Matlab风格的 cvLoadImage 函数的另一种调用   
  13.     if(img.empty())   
  14.     {   
  15.         fprintf(stderr, "Can not load image %s\n", imagename);   
  16.         return -1;   
  17.     }   
  18.   
  19.     if( !img.data ) // 检查是否正确载入图像   
  20.         return -1;   
  21.   
  22.     namedWindow("image", CV_WINDOW_AUTOSIZE); //创建窗口   
  23.     imshow("image", img); //显示图像   
  24.   
  25.     waitKey();   
  26.   
  27.     return 0;   
  28. }  
前面有几个人在debug模式下调试出问题,原因其实在于:在OPENCV 2.1配置完成并编译后,需要再把环境变量里面的“PATH = D:\Program Files\OpenCV2.1\bin”项删除掉。否则,会在工程里面,把本应该在目录“D:\vs2010\bin”下读取的依赖库文件,错读到“D:\Program Files\OpenCV2.1\bin”目录下。环境变量里面默认“path = D:\vs2010\bin”

在VS2010中,图片路径一定要写成"E:\\lena.jpg";  这种形式



其中E:\\lena.jpg是一张十分经典的lena图片。也可以随便换成其他的。运行程序,看到图片就好了。
但是这样配置的话,当加载视频的话会出现  丢失msvcr90d.dll  这种错误,所以你们试一下用OpenCV-2.2.0-win32-vs2010这个, 
我现在在试这个
 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
opencv+2010配置
VS2010(VS2008)下安装配置OpenCV
在VS2008下安装openCV
VS2008(10及以上版本)opencv2.413的配置
VC 2008 Express下安装OpenCV2.3.1
Windows下使用VS2008编译OpenCV 2.1 添加Intel TBB和Pyth...
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服