Vs2010创建第一个Opencv项目的总结

工具

1、opencv-3.4.6-vc14_vc15

链接:https://pan.baidu.com/s/1WtTKqBbXYxvgK0_ledEHTA 提取码:712b

2、Vs2010

链接:https://pan.baidu.com/s/1axL1Srkks0cyBWb7zQsmUw 提取码:nirl


在 Windows 系统下安装 OpenCV

注意:尽管 Windows 环境拥有预编译的 release 版本的库,但是它并不包含 debug 版本的库。所以,在开发 OpenCV 之前,需要打开解决方案并且自行编译那些库。

1、静态链接 OpenCV,添加一个名为OPENCV_DIR的环境变量

告诉编译器在哪里找到 OpenCV 的二进制文件,可以通过命令行工具(cmd)对此进行设置。

setx -m OPENCV_DIR D:\OpenCV\Build\x64\vc10

2、动态链接库(DLL),在库路径中添加%OPENCV_DIR%\bin

以 Windows 10 为例,具体操作步骤是:右击计算机图标,选择“属性”,然后单击“高级系统设置”,最后选择“环境变量”,把 OpenCV 二进制文件的路径%OPENCV_DIR%\bin添加到 path 变量中。

3、从源代码编译 OpenCV

可以按照如下操作从源码编译 OpenCV,具体步骤是:

  • 运行 CMake GUI。

  • 指定 OpenCV 源码所在路径以及构建目标文件夹(必须和源码所在路径不同)。

  • 按两次 Configure 键(选择可以使用的 Visual Studio 编译器或者 MinGW 构建文件,如果正在使用 MinGW 的话),直到所有条目没有红色警示。

  • 使用 Visual Studio 打开生成的解决方案并构建。如果使用的是 MinGW,则按照 Linux 的安装指导进行。


利用 Vs2010 创建第一个 OpenCv 项目

1、创建Hello C++项目,打开项目

2、选择项目->xxx属性->配置属性->VC++ 目录修改包含目录和库目录

  • “包含目录”中加入OpenCv的头文件目录,我的头文件目录是在

    D:\opencv\opencv\build\include

  • “库目录”中加入OpenCv的链接库目录,我的链接库目录是在

    D:\opencv\opencv\build\x64\vc15\lib

3、代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//C++输入输出库头文件
#include "StdAfx.h"
#include <iostream>
//OpenCV核心库头文件
#include <opencv2\core\core.hpp>
//OpenCV图形处理头文件
#include <opencv2\highgui\highgui.hpp>

//OpenCV核心动态链接库,和core.hpp头文件对应,d代表调试版本
#pragma comment(lib,"opencv_world346.lib")
//OpenCV图形处理动态链接库,和highgui.hpp头文件对应,d代表调试版本
#pragma comment(lib,"opencv_world346d.lib")

int _tmain(int argc, _TCHAR* argv[])
{
//窗口名称
std::string windowName = "Hello";
//图像名称
std::string imgFile = "opencv-logo.png";
//读入图像
cv::Mat image = cv::imread(imgFile,CV_LOAD_IMAGE_COLOR);
//如果无法读取图形
if(!image.data)
{
std::cout << "无法打开图像文件" <<std::endl;
system("PAUSE");//暂停窗口
return -1;
}
//创建一个新窗口
cv::namedWindow(windowName,CV_WINDOW_AUTOSIZE);
//将图像显示都新创建的窗口中
cv::imshow(windowName,image);
//等待,直到用户按任意键时退出
cv::waitKey(0);

return 0;
}

4、放置图片

我这里是将opencv的doc目录下的opencv-logo.png放到项目文件夹下

5、添加OpenCV运行时所需的动态运行库

将“build\x64\vc15\bin”目录下的.dll文件复制一份到项目Debug文件夹下,我这里是放在
Hello\Hello\Debug目录下。

6、效果展示


OpenCv fatal error LNK1112: 模块计算机类型“x86”与目标计算机类型“x64”冲突——解决方案

1、选择项目->xxx属性;

2、点击右上角的配置管理器为活动方案配置选择,分别为 Debug、Release 活动方案选择 x64 的活动解决方案平台。


Vs2010 显示不出图片问题的解决方法

1、配置opencv的动态链接库

选择项目->xxx属性->连接器->输入->忽略所有默认库中

  • 在左上面的配置选择Debug模式,再将忽略所有默认库中的库添加opencv的xxxd.lib库,我这里opencv的xxxd.lib库是在

    D:\opencv\opencv\build\x64\vc15\lib\opencv_world346d.lib;

  • 在左上面的配置选择release模式,再将忽略所有默认库中的库添加opencv的xxx.lib库,我这里opencv的xxx.lib库是在

    D:\opencv\opencv\build\x64\vc15\lib\opencv_world346.lib

2、添加opencV运行时所需的动态运行库

将“build\x64\vc15\bin”目录下的.dll文件复制一份到项目Debug文件夹下,我这里是放在
Hello\Hello\Debug

3、将所显示的图片放置到项目文件夹下

我这里是将opencv的doc目录下的opencv-logo.png放到项目文件夹下,例如:
Hello\Hello\opencv-logo.png


-------------文章结束啦 ~\(≧▽≦)/~ 感谢您的阅读-------------
嵌入式视觉 部落
欢迎你扫一扫上面的微信公众号,订阅我的博客!


本文标题:Vs2010创建第一个Opencv项目的总结

文章作者:XIAO

发布时间:2019年05月07日 - 08:29:08

最后更新:2020年02月05日 - 21:30:37

原始链接:https://lantian6.github.io/1/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。