VS2010+OpenCV编译环境环境配置

2024-09-05 07:08

本文主要是介绍VS2010+OpenCV编译环境环境配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

_______________________________________________________________________________________________

今天在公司花了一天的时间安装OpenCV,遇到了各种错误,直到现在才安装成功,

趁热打铁,把安装过程记录下来!百度安装过程,各种牛人的教程很多,但是,

我搜索的结果都是版本低,现在官网都是版本3以上,我针对我自己的安装中遇到的

各种问题记录下来!

———————————————————————————————————————————————————----------

第一:版本要一一致

VS使用的是2010,OpenCV使用的是OpenCV3.0.0-alpha.。因为OpenCV安装包里边有对VS版本的要求,在OpenCV子文件夹中,VC10代表是VS2010;VC11代表的是VS2011;VC12代表是VS2013。

注意:从官网的下载的OpenCV-3.2.0-vc14里边只有VC14。具体各个版本之间能不能相互使用,我没有深究。在这里我只是针对VS2010+OpenCV3.0.0-alpha.


第二下载地址

OpenCV3.0.0-alpha下载地址:

http://sourceforge.net/projects/opencvlibrary/files/latest/download?source=top3_dlp_t5


第三环境的配置

 配置系统环境变量:计算机 > 属性 >  高级系统设置 > 环境变量

(1) 首先创建opencv的环境变量, 变量名:OPENCV,  变量值:D:\mysoft\opencv\build (你的opencv解压目录的 build目录)。一定要定位到自己的build文件夹位置,版本的不同,目录结构还是有差别,切记不要按照教材或者网上的资源复制!



2)添加到Path变量。双击 Path, 在变量值末尾添加: %OPENCV%\x86\vc12\bin,

注意:

①在OpenCV子文件夹中,VC10代表是VS2010;VC11代表的是VS2011;VC12代表是VS2013,打算使用哪个版本的VS就把中间进行修改。

②无论是64位还是32位操作系统,都默认使用X86,否则在后边VS中还需要修改。

③:不要把Path中的路径删了,要保留之前的路径,把OpenCV的路径加进去。


第四在VS2010中加入OpenCV

新建一个VS解决方案并且添加一个C文件。如下图所示:


其实OpenCV提供给我们一些.dll文件和头文件,我们需要加入我们的VS工程中,但是这有一个问题,就是我们每次新建一个工程时候,都需要添加一些头文件目录和库目录以及连接的文件,所以我们需要使用VS的一个功能,就是属性资源管理器。在属性管理器中配置好以后,下次我们新建工程后,不需要配置这些繁琐的环境。

属性资源管理器位置:视图>其他窗口>属性管理器


点开属性管理器,点击项目->Debug|Win32->Microsoft.Cpp.Win32.user,如下图所示:



右击,选择最下边的属性,如下图所示:



打开VC++目录,其中标黄的需要修改。

(1)包含的目录添加:$(opencv)\include\opencv2;$(IncludePath);$(opencv)\include\opencv;$(opencv)\include.

注意:

①不要删除本有有的目录,否则就会出现找不到“stdio.h或者iostream”等。如果不笑心删除了,在后边添加$(IncludePath).

②不要复制我的,一定要预览到自己的安装目录下。

(2)库文件添加:$(opencv)\x86\vc10\lib

①不要删除本有有的目录,如果不小心删除,添加:$(LibraryPath)

②不要复制我的,一定要预览到自己的安装目录下。

(3)添加附加依赖项,如下图所示:



 附加依赖项修改为:opencv_ts320d.lib;opencv_world320d.lib

其中opencv_ts320.lib;opencv_world320d.lib是调试版本,如果是发布版本则是:opencv_ts320.lib;opencv_world320.lib


好了,到此所有的配置都完成了。


第五:测试程序

#include<iostream>  
#include <opencv2/core/core.hpp>  
#include <opencv2/highgui/highgui.hpp>  using namespace cv;  int main()  
{  // 读入一张图片(原画)  Mat img=imread("1.jpg");  // 创建一个名为 "原画"窗口  namedWindow("原画");  // 在窗口中显示原画  imshow("原画",img);  // 等待6000 ms后窗口自动关闭  waitKey(6000);  
}  
注意:图片1.jpg放在工程的目录下。




附录:

参考博客

http://blog.163.com/chen_dawn/blog/static/1125063201461695238801/.


后记:

这次配置花了两天的时间,遇到了好多问题,有时候脾气都控制不住了,感觉哪里都有问题,各种问题,每次都是信心满满的,最后还是不行,

不过我每次都提醒自己,这才是万里长征的第一步,这里的困难就解决不了,就不要来学习图像处理了,我觉得以后的算法更难,我相信我自己,

我相信2017我会更加勇敢!我相信2017我会更加坚强!我相信2017我会更加拼!

最后把这个标准测试图像Lenna.故事转载给大家

1973年的六七月份,Alexander Sawchuk,当时是SIPI 电机工程系的助教,正和一研究生、SIPI的实验室主任,在实验室里匆匆忙忙找一幅用于会议论文的图像.而他们早已厌烦了库存里那些乏味的测试图像,他们需要一张人脸的图像.

恰恰就在那时,一人夹着新出的Play boy走了进来.

他们这些工程师拿过杂志,顺手将中间的裸 体 插页的上1/3撕了下来,嘿嘿,正好可以卷在Muirhead扫描仪的复印鼓上...于是这幅512X512的经典就诞生了.一直很困惑为什么大家都选这张美女照片来测试分析,难道有什么特别之处吗?神秘的Lenna到底又是谁呢?直到昨天我找到了答案。美女Lenna的照片源于著名的Play boy杂志。在1973年6月,美国南加州大学的信号图像处理研究所的一个助理教授和他的一个研究生打算为了一个学术会议找一张数字照片,而他们对于手头现有成堆"无聊"照片感到厌烦。事实上他们需要的是一个人脸照片,同时又能让人眼前一亮。这时正好有人走进实验室,手上带着一本当时的Play boy杂志,结果故事发生了... ...而限于当时实验室设备和测试图片的需要,lenna的图片只抠到了原图的肩膀部分。

从那以后,该照片就被广泛应用。漂亮的Play boy女郎Lenna在计算机视觉领域名声大噪,以至于她本人被邀请为嘉宾,参加了数字图像科学技术50周年学术会议。在该会议上,Lenna成了最受欢迎的人之一,她做了关于自己介绍的简要发言,并被无数的fans索取签名。Lenna标准测试图像的由来莱娜图在数字图像处理学习与研究中颇为知名,常被用作数字图像处理各种实验的例图。

该图原本是刊于1972年11月号Play boy杂志上的一张裸体插图照片的一部分,这期Play boy也是历年来最畅销的一期,销量达7,161,561本。1973年6月,美国南加州大学的信号图像处理研究所的一个助理教授和他的一个研究生打算为了一个学术会议找一张数字照片,而他们对于手头现有成堆"无聊"照片感到厌烦。事实上他们需要的是一个人脸照片,同时又能让人眼前一亮。这时正好有人走进实验室,手上带着一本当时的Play boy杂志,结果故事发生了……而限于当时实验室设备和测试图片的需要,lenna的图片只抠到了原图的肩膀部分。

图中人为瑞典模特儿 Lena Soderberg (ne Sj&ouml;&ouml;blom)。现在被广泛使用的英文化名字"Lenna"最初是由Play boy杂志发表此照片时命名的,以方便英语读者近似正确地读出瑞典语中"Lena"的发音。Lena Soderberg 女士现在仍住在她的家乡瑞典,拥有一个有三个孩子的家庭,并且在国家酒类专卖局工作。在1988年的时候,她接受了瑞典一些计算机相关出版社的访问,她对于她的照片有这样的奇遇感到非常的惊奇与兴奋。这是她首次得知她的照片被应用在计算机行业。Lena Soderberg于1997年被邀请为嘉宾,参加了数字图像科学技术50周年学术会议。在该会议上,Lenna成了最受欢迎的人之一,她做了关于自己介绍的简要发言,并被无数的fans索取签名。

莱娜图在图像压缩算法是最广泛应用的标准测试图——她的脸部与裸露的肩部已经变成了事实上的工业标准。然而,这张图像的使用也引起了一些争议。一些人担心它的色情内容;《Play boy》杂志曾经威胁要起诉对莱娜图未经授权的使用。不过这家杂志已经放弃了这种威胁,取而代之的是鼓励因为公众利益使用莱娜图。

戴维·C·蒙森(David C.Munson),IEEE图像处理汇刊(IEEE Transactions on Image Processing)的主编, 在1996年1月引用了两个原因来说明莱娜图在科研领域流行的原因:1.该图适度的混合了细节、平滑区域、阴影和纹理,从而能很好的测试各种图像处理算法。2.Lenna是个美女,对于图象处理界的研究者(大部分都是男性)来说,美女图可以有效的吸引他们来做研究。








这篇关于VS2010+OpenCV编译环境环境配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1138287

相关文章

Spring配置扩展之JavaConfig的使用小结

《Spring配置扩展之JavaConfig的使用小结》JavaConfig是Spring框架中基于纯Java代码的配置方式,用于替代传统的XML配置,通过注解(如@Bean)定义Spring容器的组... 目录JavaConfig 的概念什么是JavaConfig?为什么使用 JavaConfig?Jav

Spring Boot Interceptor的原理、配置、顺序控制及与Filter的关键区别对比分析

《SpringBootInterceptor的原理、配置、顺序控制及与Filter的关键区别对比分析》本文主要介绍了SpringBoot中的拦截器(Interceptor)及其与过滤器(Filt... 目录前言一、核心功能二、拦截器的实现2.1 定义自定义拦截器2.2 注册拦截器三、多拦截器的执行顺序四、过

springboot的controller中如何获取applicatim.yml的配置值

《springboot的controller中如何获取applicatim.yml的配置值》本文介绍了在SpringBoot的Controller中获取application.yml配置值的四种方式,... 目录1. 使用@Value注解(最常用)application.yml 配置Controller 中

springboot中配置logback-spring.xml的方法

《springboot中配置logback-spring.xml的方法》文章介绍了如何在SpringBoot项目中配置logback-spring.xml文件来进行日志管理,包括如何定义日志输出方式、... 目录一、在src/main/resources目录下,也就是在classpath路径下创建logba

python项目环境切换的几种实现方式

《python项目环境切换的几种实现方式》本文主要介绍了python项目环境切换的几种实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 如何在不同python项目中,安装不同的依赖2. 如何切换到不同项目的工作空间3.创建项目

C++多线程开发环境配置方法

《C++多线程开发环境配置方法》文章详细介绍了如何在Windows上安装MinGW-w64和VSCode,并配置环境变量和编译任务,使用VSCode创建一个C++多线程测试项目,并通过配置tasks.... 目录下载安装 MinGW-w64下载安装VS code创建测试项目配置编译任务创建 tasks.js

Nginx概念、架构、配置与虚拟主机实战操作指南

《Nginx概念、架构、配置与虚拟主机实战操作指南》Nginx是一个高性能的HTTP服务器、反向代理服务器、负载均衡器和IMAP/POP3/SMTP代理服务器,它支持高并发连接,资源占用低,功能全面且... 目录Nginx 深度解析:概念、架构、配置与虚拟主机实战一、Nginx 的概念二、Nginx 的特点

2025最新版Android Studio安装及组件配置教程(SDK、JDK、Gradle)

《2025最新版AndroidStudio安装及组件配置教程(SDK、JDK、Gradle)》:本文主要介绍2025最新版AndroidStudio安装及组件配置(SDK、JDK、Gradle... 目录原生 android 简介Android Studio必备组件一、Android Studio安装二、A

前端Visual Studio Code安装配置教程之下载、汉化、常用组件及基本操作

《前端VisualStudioCode安装配置教程之下载、汉化、常用组件及基本操作》VisualStudioCode是微软推出的一个强大的代码编辑器,功能强大,操作简单便捷,还有着良好的用户界面,... 目录一、Visual Studio Code下载二、汉化三、常用组件1、Auto Rename Tag2

SpringBoot18 redis的配置方法

《SpringBoot18redis的配置方法》本文介绍在SpringBoot项目中集成和使用Redis的方法,包括添加依赖、配置文件、自定义序列化方式、使用方式、实际使用示例、常见操作总结以及注意... 目录一、Spring Boot 中使用 Redis1. 添加依赖2. 配置文件3. Redis 配置类