这里假设看到这篇文章的人都已经对OpenCV以及机器视觉等最基础的概念有了一定的认识,因此本文不会对OpenCV做任何的介绍,而是直接介绍OpenCV2.4.9的安装与测试。此外本文只是简单的介绍如何配置OpenCV,目的是在最短的时间里将开发环境配置出来。至于详细的配置思路,网上实在太多,百度一下类似:VS2012+openCV2.4.9就能找到你想要的结果。

一、环境篇

  首先简单的介绍一下使用的开发环境,本文将在Windows8.1平台下使用VS2012开发C++程序,所使用的OpenCV版本为2.4.9。

  从http://opencv.org/ 下载了2.4.9版本后,将其解压到合适的路径。此处本人将其解压到了E:\openCV\2.4.9中,解压后的文件结构应该是这样的。

二、开始配置

  环境的配置分为几个方面

  1. 环境变量配置;
  2. VS中【包含目录】、【引用目录】、【库目录】的添加;
  3. VS中【连接器】->【输入】中附加依赖项。

  那么接下来就开始配置开发环境,首先确定OpenCV的目录为E:\openCV\2.4.9(或者你自己设定的目录)。

2.1 环境变量配置

  在计算机的【系统属性】->【环境变量】->【系统变量】中

  将"E:\OpenCV\2.4.9\build\x86\vc11\bin"添加至末尾,如果你的解压路径与我不同,请参考着修改,如图所示。

2.2 【包含目录】、【引用目录】、【库目录】的添加

  打开VS2012,任意创建一个C++工程。在项目的【属性管理器】中,找到"MicroSoft.Cpp.Win32.user",右击其选择属性(这里有Debug和Release两个目录中都有"MicroSoft.Cpp.Win32.user",记得都要添加)。如果找不到【属性管理器】,在【视图】->【其他窗口】->【属性管理器】中打开。

  在打开的属性页中,找到【VC++目录】,在其中的【包含目录】和【库目录】中添加以下路径,如图所示(记得Debug和Release都要添加这些路径):

包含目录:

E:\OpenCV\2.4.9\build\include;

E:\OpenCV\2.4.9\build\include\opencv;

E:\OpenCV\2.4.9\build\include\opencv2;

库目录:

E:\OpenCV\2.4.9\build\x86\vc11\lib;

2.3 依赖项的添加

  同样是在MicroSoft.Cpp.Win32.user属性页中,找到【链接器】->【输入】。在【输入】中的【附加依赖项】中,添加以下代码:

  1. opencv_calib3d249d.lib
  2. opencv_contrib249d.lib
  3. opencv_core249d.lib
  4. opencv_features2d249d.lib
  5. opencv_flann249d.lib
  6. opencv_gpu249d.lib
  7. opencv_highgui249d.lib
  8. opencv_imgproc249d.lib
  9. opencv_legacy249d.lib
  10. opencv_ml249d.lib
  11. opencv_objdetect249d.lib
  12. opencv_ts249d.lib
  13. opencv_video249d.lib
  14. opencv_calib3d249.lib
  15. opencv_contrib249.lib
  16. opencv_core249.lib
  17. opencv_features2d249.lib
  18. opencv_flann249.lib
  19. opencv_gpu249.lib
  20. opencv_highgui249.lib
  21. opencv_imgproc249.lib
  22. opencv_legacy249.lib
  23. opencv_ml249.lib
  24. opencv_objdetect249.lib
  25. opencv_ts249.lib
  26. opencv_video249.lib

  

  如图所示:

  如此就完成了开发环境的配置。

三、测试程序

  新建一个C++ Win32控制台程序,输入以下代码,运行,可得结果。

  1. #include "stdafx.h"
  2. #include "cv.h"
  3. #include "highgui.h"
  4. #include <opencv2/core/core.hpp>
  5. #include <iostream>
  6. using namespace std;
  7. using namespace cv;
  8.  
  9. int _tmain(int argc, _TCHAR* argv[])
  10. {
  11. Mat img = imread("D:\\testImg\\boldt.jpg");
  12. cv::namedWindow("win1");
  13. moveWindow("win1",,);
  14. cv::imshow("win1",img);
  15. waitKey();
  16. }

四、【丢失MSVCP110.DLL】

  运行程序后可能提示【丢失MSVCP110.DLL】的错误,这个问题只需安装各个版的vcredist即可(因为忘记具体是哪一个版本了,所以这里说各个版本,可能是2012版的)。

OpenCV2+入门系列(一):OpenCV2.4.9的安装与测试的更多相关文章

  1. Jenkins入门系列之——02第二章 Jenkins安装与配置

    2014-12-08:已不再担任SCM和CI的职位,Jenkins的文章如无必要不会再维护. 写的我想吐血,累死了. 网页看着不爽的,自己去下载PDF.有问题请留言! Jenkins入门系列之——03 ...

  2. k8s入门系列之扩展组件(一)DNS安装篇

    DNS (domain name system),提供域名解析服务,解决了难于记忆的IP地址问题,以更人性可读可记忆可标识的方式映射对应IP地址. Cluster DNS扩展插件用于支持k8s集群系统 ...

  3. Linux入门系列1--环境准备及Linux安装

    "工欲善其事.必先利其器",本文作为"Linux零基础入门系列"开篇,将完整演示整个开发环境的安装和配置过程,为后续的开发和实验做好基础准备.如果您已安装好环境 ...

  4. OpenCV2+入门系列(四):计算图像的直方图,平均灰度,灰度方差

    本篇懒得排版,直接在网页html编辑器编辑 在图像处理时,我们常常需要求出图像的直方图.灰度平均值.灰度的方差,这里给出一个opencv2+自带程序,实现这些功能. 直方图 对于直方图,使用cv::c ...

  5. OpenCV2+入门系列(三):遍历图像的几种方法

    根据OpenCV中Mat类型的结构和内存中存储方式,此处给出三种对图像进行遍历的方法.首先给出基础的读取图片代码,在中间替换三种遍历方法即可,本文中,程序将遍历图像并将所有像素点置为255,所有运行结 ...

  6. OpenCV2+入门系列(二):图像的打开、创建与显示(命令行)

    前置知识:数字图像的简略知识 这里只是最基础的知识,上课如果稍微听了课的同学可以直接略过不不看. 彩色图像: 对于一副数字图像,对于一副RGB色彩空间的彩色数字图像,它一共有宽X高个像素格子,每个格子 ...

  7. k8s入门系列之扩展组件(二)kube-ui安装篇

    kube-ui是k8s提供的web管理界面,可以展示节点的内存.CPU.磁盘.Pod.RC.SVC等信息. 1.编辑kube-dashboard-rc.yml定义文件[root@master kube ...

  8. 【ML入门系列】(一)训练集、测试集和验证集

    训练集.验证集和测试集这三个名词在机器学习领域极其常见,但很多人并不是特别清楚,尤其是后两个经常被人混用. 在有监督(supervise)的机器学习中,数据集常被分成2~3个,即:训练集(train ...

  9. 【docker 入门 - 01】- Docker 在 Centos7 上安装与测试

    一.学习文档 官网网站: https://www.docker.com 中文网站:http://www.docker-cn.com 官方安装文档:https://docs.docker.com/ins ...

随机推荐

  1. Hadoop的核心组件和生态圈

    摘要:Hadoop是一个由Apache基金会所开发的分布式系统基础架构.Hadoop的框架最核心的设计就是:HDFS和MapReduce.HDFS为海量的数据提供了存储,则MapReduce为海量的数 ...

  2. C/C++ 结构体 指针 函数传递

    #include <stdio.h> #include <stdlib.h> struct student{ int num; ]; double dec; }; void s ...

  3. kali安装谷歌浏览器的方法及启动问题的解决

    在kali上安装谷歌浏览器的时候,遇到了很多问题,经过不懈努力,终于解决,现在把方法总结一下,希望对遇到同样问题的人能有一定帮助.这是给最白的小白参考的,大牛勿喷哈. 说明:我是在kali rolli ...

  4. Windows Phone 十九、罗盘

    磁力计概述 拥有磁力计硬件支持的设备可以根据磁力计来确定相对于北极的角度 磁力计的访问 API 定义在 Compass 类中 调用方式和加速计类似 <Grid Background=" ...

  5. 邓博泽 java最全的DateUtil工具类

    package com.kld.yijie.web.util; import org.slf4j.Logger;import org.slf4j.LoggerFactory; import java. ...

  6. ios 缺少合规证明

    现在app上传到appStore的时候,项目中如果出现加密,状态栏是:缺少合规证明. 解决的方法是在Info.plist文件中添加:ITSAppUsesNonExemptEncryption 设置为N ...

  7. 桌面显卡天梯图和桌面cpu天梯图

    桌面cpu天梯图: 桌面显卡天梯图:

  8. VMware下centos6.3minimal搭建网络环境

    VMware提供3钟连接网络的方式,参看http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/03/15/1985084.html 先确定VMw ...

  9. 货运APP雨后春笋 传统物流模式将被改变

    移动互联网正在改变我们的生活方式,各种手机APP充斥着人们的生活,物流行业也不例外.货运APP的出现,对于物流行业是一个提升的机会,也是迈向标准化和专业化的一个有效途径.有专家预测,这将为物流行业的发 ...

  10. 技术之余。。。电吉他自弹 魂斗罗 solo

    测试一下 ---恢复内容开始--- ---恢复内容结束---