本文使用OpenCV2.48在win10平台下操作。

一,关于OpenCV

OpenCV是开源C++计算机可视化处理库,它集成了很多计算机图形图像处理的功能。还有机器学习,字符识别,人脸识别,物体检测等许多算法。作为一名计算机专业的学生,不管是不是VR方向,熟练使用OpenCV是必备技能。
OpenCV支持多种语言,原生支持C++,还支持Java,Python。但是Java版的OpenCV相当难用,不仅仅是API设计的难用不灵活,而且还缺少OpenCV中的一些不太成熟的库,比如图片拼接库Stitcher。Python更别提了,Python2和Python3打的不可开交,配置十分复杂,OpenCV2不支持Python3,而OpenCV3也很坑。综上可知,OpenCV的许多特性在C++中更原汁原味,功能更多,三门语言都会自然是好上加好。
OpenCV3做出的改进还是相当多的,模块更加明确。另外,OpenCV3把一些不成熟和不开源的模块移出去了,独立成opencv_contrib库。要想使用这个库,就要自己用CMAKE把opencv和opencv_contrib一起进行编译。

二,使用java语言调用OpenCV

使用java配置起来非常简单。用eclipse打开opencv/sources/java目录下的HelloCV项目,配置jar包和dll就完事了。

三,在VisualStudio中配置OpenCV

安装好OpenCV之后,去安装目录下,把$OpenCV/build/x64/bin目录添加到PATH环境变量中,这样系统就能够找到bin目录下的各个DLL了。
打开VS,新建VC++项目,将opencv安装目录下的sources/C++/Stitching.cpp复制到VS中。此时运行当然会报错。
右键工程属性,添加包含目录和库目录,分别对应opencv/build/include和opencv/build/x64/vc12/lib

经过上述配置之后,还差最后一步。

将连接器添加附加依赖项

opencv_ml248d.lib
opencv_calib3d248d.lib
opencv_contrib248d.lib
opencv_core248d.lib
opencv_features2d248d.lib
opencv_flann248d.lib
opencv_gpu248d.lib
opencv_highgui248d.lib
opencv_imgproc248d.lib
opencv_legacy248d.lib
opencv_objdetect248d.lib
opencv_ts248d.lib
opencv_video248d.lib
opencv_nonfree248d.lib
opencv_ocl248d.lib
opencv_photo248d.lib
opencv_stitching248d.lib
opencv_superres248d.lib
opencv_videostab248d.lib

opencv_objdetect248.lib
opencv_ts248.lib
opencv_video248.lib
opencv_nonfree248.lib
opencv_ocl248.lib
opencv_photo248.lib
opencv_stitching248.lib
opencv_superres248.lib
opencv_videostab248.lib
opencv_calib3d248.lib
opencv_contrib248.lib
opencv_core248.lib
opencv_features2d248.lib
opencv_flann248.lib
opencv_gpu248.lib
opencv_highgui248.lib
opencv_imgproc248.lib
opencv_legacy248.lib
opencv_ml248.lib

这些lib其实就是x64/lib目录下的各个lib,在库目录里配置之后,这里还要再配置一次。
现在运行一下,看看有没有成功。
如果不成功,右键项目属性,更改项目的平台为x64。

终于成功了!

四,添加opencv模板

以后新建opencv项目时怎么办?总不能每次都这么折腾吧?
作为地球上最好用的IDE,VisualStudio提供了模板功能。新建一个项目,把它设置成你想要的样子,然后”文件-导出为模板“即可。
但即便如此,每次新建项目都要把项目属性改为“活动x64”,因为VS总是默认为x86。

OpenCV安装与配置的更多相关文章

  1. 基于java的OpenCV安装和配置

    目录 OpenCV简介 OpenCV下载安装 eclipse里引用jar包和配置 OpenCV简介 OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux.Window ...

  2. [异常] openCV安装和配置

    http://blog.csdn.net/mygis2005/article/details/10472717 >_<" 这个链接亲测可行,我试了很多次,找了很多个都不行,最后怀 ...

  3. OpenCV 第一课(安装与配置)

    OpenCV 第一课(安装与配置) win10,opencv-2.4.13, 安装, vs2013, 配置 下载安装软件 官网OpenCV下载地址下载最新版本,我下载的是opencv.2.4.13,然 ...

  4. OpenCV 1.0在VC6下安装与配置(附测试程序)

    步骤: 1 安装Visual C++ 6.0         2 安装OpenCV 1.0        3 配置Windows环境变量         4 配置Visual C++ 6.0     ...

  5. linux安装及配置c++的opencv库

    linux安装及配置c++的opencv库 前言: 最近想搞个机器视觉的比赛,要求是linux+opencv环境,没有做过opencv开发的我配置环境就配了两天,看来很多乱七八糟的博客,终于装好了.网 ...

  6. OpenCV的安装与配置

    1.去官网下载opencv,在本教程中选用的时opencv3.4.1,其他版本的配置方法异曲同工.下载链接http://opencv.org/releases.html,选择sources版本 2.解 ...

  7. Python版本OpenCV安装配置及简单实例

    # 2018-06-03 # 1. Python下载:https://www.python.org/downloads/ 选择对应平台对应版本的的Python进行安装. 2. Python版OpenC ...

  8. 基于深度学习的人脸识别系统Win10 环境安装与配置(python+opencv+tensorflow)

    一.需要下载的软件.环境及文件 (由于之前见识短浅,对Anaconda这个工具不了解,所以需要对安装过程做出改变:就是Python3.7.2的下载安装是可选的,因为Anaconda已经为我们解决Pyt ...

  9. OpenCV学习笔记——OpenCV安装

    关于OpenCV安装 1.下载和安装OpenCV SDK 在官网:http://opencv.org/上找到OpenCV windows版下载 . 后得到一个 opencv-2.X.X.exe的文件, ...

随机推荐

  1. 一种开发模式:ajax + ashx + UserControl

    一.ajax+ashx模式的缺点     在web开发过程中,为了提高网站的用户体验,或多或少都会用到ajax技术,甚至有的网站全部采用ajax来实现,大量使用ajax在增强用户体验的同时会带来一些负 ...

  2. EF(Entity Framework)系统学习系列

    好久没写博客了,继续开启霸屏模式,好了,废话不多说,这次准备重新系统学一下EF,一个偶然的机会找到了一个学习EF的网站(http://www.entityframeworktutorial.net/) ...

  3. [精品书单] C#/.NET 学习之路——从入门到放弃

    C#/.NET 学习之路--从入门到放弃 此系列只包含 C#/CLR 学习,不包含应用框架(ASP.NET , WPF , WCF 等)及架构设计学习书籍和资料. C# 入门 <C# 本质论&g ...

  4. c#使用Split分割换行符 \r\n

    c# 使用Split分割 换行符,方法如下(其余方法有空再添加):   string str = "aa" + "\r\n" + "bb"; ...

  5. JS 传播事件、取消事件默认行为、阻止事件传播

    1.事件处理程序的返回值 通常情况下,返回值false就是告诉浏览器不要执行这个事件相关的默认操作.例如,表单提交按钮的onclick事件处理程序能通过返回false阻止浏览器提交表单,再如a标签的o ...

  6. javascript实现键盘自动打字效果

    最近在网上看到一个字符逐个出现的打字效果,觉得挺有趣的,想一想基本实现思路就是设置一个定时器逐然后逐个向容器中添加字符,于是就基于jQuery写了一个简单版的. <!DOCTYPE html&g ...

  7. 集成shareSDK错误总结(新浪微博)

    错误1. . 以上错误是由于没有添加-ObjC的原因,在targets->Build Setting ->Other Linker Flags中添加-ObjC 添加方法如下 错误2 授权回 ...

  8. [转]HttpModule的认识

    HttpModule是向实现类提供模块初始化和处置事件.当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任何处理,也就是说此时对于H ...

  9. Linq表达式和Lambda表达式用法对比

    什么是Linq表达式?什么是Lambda表达式?前一段时间用到这个只是,在网上也没找到比较简单明了的方法,今天就整理了一下相关知识,有空了再仔细研究研究 public Program() { List ...

  10. 在本机搭建SVN服务器

    目的:在没有正式的SVN服务器的情况下,完成代码的本地备份. 参考:http://blog.csdn.net/ladofwind/article/details/2100200 以下是具体内容: 如何 ...