1.vc++配置opencv

2.简单常用的图片处理函数

3.图像修复函数

环境:

vs2013

opencv2.4.13

准备工作:

1.安装opencv。

opencv各版本间存在API差异,opencv提供相应版本的vc文件,在其安装目录 ..opencv\build\x86 目录下,个人觉得引用与当前使用vs版本最接近的目录文件就可以。opencv安装目录下的引用lib及bin文件 提供x86和x64

2.配置环境变量。

首先在 我的电脑 右键 属性,在系统属性中 选择高级,打开设置环境变量的界面。其中 上半部分为用户变量,下半部分为系统变量。

(1)在用户变量中添加PATH变量,值为:安装目录\opencv\build\x86\vc12\bin;安装目录\opencv\build\x64\vc12\bin

(2)在用户变量中添加OPENCV,值为:安装目录\opencv\build

过程中变量如果存在,将值添加至末尾,以;间隔

配置好了环境变量,接下来配置的是vc++的工程项目了,用来在vc++中使用opencv。

打开vs,新建项目,选择vc++,32位控制台应用程序,工程命名为opencvTest。

在项目工程上右键,属性,打开属性页面。

属性中选择配置信息,配置中配置选项选择为Debug。点击左侧导航中的 vc++目录。编辑其中的包含目录和库目录。

注:此处为单独的项目配置信息,如果想将此配置导出属性文件供各个项目使用,选择vs中的视图-》其他窗口-》属性管理器

在属性管理器项目上右键 =》添加新项目属性表,为属性表命名并存放于公共目录下,以方便后面的项目引用,在属性管理器中双击新建的属性其具体配置和下面的一样。配置好属性表之后,下次使用就可以在属性管理器中 右键=》添加现有属性表,找到属性文件,添加即可使用。此处以单独项目的配置信息为例:

其中,包含目录中引入的路径是 opencv安装路径\opencv\build\include 及其子项。库目录是其lib文件的所在目录,这里把x86和x64的都引入进来了。如出现“error C1083: 无法打开包括文件:“opencv2/core/core_c.h”: No such file or directory”类错误 说明包含目录中的引用出现问题,可能是路径错了,调整引用路径就ok。

这个地方要注意的是,根据当前项目的实际情况选择相应版本的lib目录,本次设置将两个版本的lib文件全部引用了,但实际项目中系统如果发现有两个一样的引用,会默认使用第一个版本,所以如果为32位的应用程序,则x86的放在首位,如果为64位应用程序x64放在首位。如出现错误“ 无法解析的外部符号_XXXXX,该符号在函数_main 中被引用”则是此处位置的问题,调整位置后就ok了。

之后设置连接器的输入项,设置其附加依赖项,此处为opencv的引用lib文件名称。opencv3.4.13附加依赖项

点击应用并确定。至此,opencv在vs中的配置完成,下面我们开始测试在vc++中调用opencv函数完成图片操作。

(1)在项目源文件目录下,点击opencvTest.cpp,修改其代码为:

// opencvTest.cpp : 定义控制台应用程序的入口点。
// #include "stdafx.h"
#include "cv.h"
#include "highgui.h" using namespace std; int main()
{
IplImage* test;
test = cvLoadImage("图片路径", );
cvNamedWindow("opencv_demo", );
cvShowImage("opencv_demo", test);
cvWaitKey();
cvDestroyWindow("opencv_demo");
}

此处需要注意的是:

#include "stdafx.h" 需放在文件的第一行,否则会得到跳过引用的警告错误,和找不到相关引用方法的错误。

运行项目,执行结果为打开了在项目中引用路径的图片文件。

运行期间 遇到“无法启动此程序,因为计算机中丢失xxx.dll”文件问题,解决方法:项目=》c\c++=》预处理器  ,在预处理器定义中添加_CRT_SECURE_NO_WARNINGS,然后重新启动vs,完成修改。

vs c++配置opencv(1)的更多相关文章

  1. 配置OpenCV产生flann\logger.h(66): error C4996: 'fopen': This function or variable may be unsafe问题[zz]

    使用vs2012/2013配置opencv编译出现问题: 1>------ 已启动生成: 项目: Win32ForOpenCV245, 配置: Debug Win32 ------ 1> ...

  2. 使用属性表:VS2013上配置OpenCV

    以前,windows下配置OpenCV一直不太方便:总是要手动添加lib,添加include,还要配置PATH使得程序运行时候能找到dll文件. 每次新建一个使用OpenCV的工程都要手动添加,很麻烦 ...

  3. vs配置opencv

    配置OpenCv: 一.新建工程 无论是mfc还是控制台程序都可以. 二.下载opencb,安装在非空格路径下面 解压出来有两个文件夹:build和source,主要用到build,build-x86 ...

  4. 在VS2010下配置OpenCV 2.3

    一.下载OpenCV 2.3:       http://www.opencv.org.cn/download/OpenCV-2.3.0-win-superpack.exe   二.解压 将下载的Op ...

  5. VS2010 配置opencv环境

    大家在使用opencv的时候肯定会面对这样一个问题:根据官网以及大多数教程提供的方法中,似乎每一次新建一个opencv的新项目以后都需要重新再配置"VC++目录"中的"包 ...

  6. OpenCV2学习笔记03:Qt中配置OpenCV环境

    在Qt中开发基于OpenCV的应用时,需要配置对应函数库到环境变量,这时候我们需要使用到qmake能够识别的变量来指定环境变量. INCLUDEPATH: 用于指定搜索头文件到文件夹路径. LIBS: ...

  7. vs2012配置opencv及简单测试

    为visual studio2012搭建openCV平台,实现打开图片. 实现步骤: 1.1.配置环境变量 基于win7操作系统的环境配置步骤: 1.1.1 计算机—>属性—>更改设置—& ...

  8. MAC下Xcode配置opencv(2017.3.29最新实践,亲测可行)

    本文原创,未经同意,谢绝转载!(转载请告知本人并且经过本人同意--By Pacific-hong) 本人小硕一枚,因为专业方向图像相关,所以用到opencv,然后网上MAC下Xcode配置opencv ...

  9. 在Ubuntu 12.04系统中安装配置OpenCV 2.4.3的方法

    在Ubuntu 12.04系统中安装配置OpenCV 2.4.3的方法   对于,在Linux系统下做图像识别,不像在windows下面我们可以利用Matlab中的图像工具箱来实现,我们必须借助Ope ...

随机推荐

  1. mysql errno:13

    新装的mysql,创建表时报错误 errno:13,网上查了一下是权限问题.解决方式如下: 到mysql的数据目录下:即启动进程中:--datadir=/data/soft/mysql/mysqlda ...

  2. 监听器和web国际化

    一.监听器 1.监听器:监听器就是一个java程序,功能是监听另一个java对象变化(方法调用.属性变更) 2.监听器监听过程:事件源.事件对象.监听器对象.操作事件源 1).存在被监听对象(事件源) ...

  3. poj 1949 Chores 最长路

    题目链接 求出最长路..... #include <iostream> #include <vector> #include <cstdio> #include & ...

  4. ortoiseSVN无法编辑日志信息的解决方法

    提交时忘记编写日志,想重新编辑日志信息,弹出错误提示: DAV 请求失败:可能是版本库的 pre-revprop-change 钩子执行失败或者不存在 至少有一个属性变更失败:版本库未改变 设置属性  ...

  5. pl sql 无法解析指定的连接标识符

        使用PLSQL Developer时,“ORA-12154: TNS:无法解析指定的连接标识符”问题的一个解决办法< xmlnamespace prefix ="o" ...

  6. cocos2dx 字体BMFont,Atlas

    为了更加个性化,系统提供的字体,有时候没法满足我们的要求,所以cocos2dx提供了自定义字体控件. 分别是CCLabelBMFont和CCLabelAtlas,先看BMFont的效果 CCLabel ...

  7. SRM 585 DIV 1 总结

    题意:给你一棵高度为H的完全二叉树的路,问最少需要多少辆车把这路走完,车子不能返回. 那么最优的方案就是从小到上一层层的走完,就很容易地可以得到一种递推,需要注意的就是dp[0]  = 1 #incl ...

  8. 数字信号处理Day1自制电子音乐

    第一天的课程感觉比較简单,主要介绍Karplus-Strong Algorithm 给出方程 y[n]=αy[n−M]+x[n], x[n]是输入,M是延迟,α是衰弱系数 我们要衰减D次,总的採样数就 ...

  9. Android布局_LinearLayout布局

    一.LinearLayout 布局,类似于一个盒子 1. 主要属性有: (1)android:orientation 设置LinearLayout容器布局组件的方式:要么按行要么按列.只能取值:hor ...

  10. TRIZ系列-创新原理-21-高速通过原理

    高速通过原理,有的书也译为"降低有害作用的时间"原理,我比較倾向于叫高速通过原理,这个概念下,适用范围比較大些.高速通过原理的详细描写叙述例如以下:1)很高速的实施有害的或者有危急 ...