本机配置:
- 操作系统:windows 10
- 编译环境:Visual Studio 2013
- 编译工具:CMake
- 安装版本:OpenCV 3.4.0
安装流程如下:
一、从OpenCV官网下载OpenCV 3.4.0版本的源码。
下载得到.exe文件,双击并设置安装位置(用于存放源码),我设置在D:\OpenCV_3.4.0。安装后如下图所示。
二、使用CMake工具编译项目,并在VS2013环境中编译OpenCV
1 在OpenCV_3.4.0文件夹中新建文件夹opencv_vs2013_x64,用于存放CMake编译后的代码。
2 打开CMake,源码文件选择OpenCV的sources文件夹,保存的位置选择刚刚创建的opencv_vs2013_x64文件夹。
3 点击Configure,并选择Visual Studio 12 2013 Win64编译器,其余保持默认。
4 在初次编译完成后,取消勾选WITH_CUDA,再次点击Configure,开始配置,直到下方提示Configure done表示配置完成。
5 点击Generate开始生成,直到下方提示Generate done表示生成完成。
6 点击Open Project,进入VS2013,开始在VS环境中编译OpenCV。
7 在解决方案管理器中,右键ALL_BUILD,选择生成(build),接着等待生成完成。
8 再右键INSTALL,选择生成(build),接着等待生成完成。时间可能会很长,稳住能赢。
注意:
我的电脑是64位的,所以在VS中,选择Debug和x64进行编译(没有x64时,需在解决方案 → 属性页 → 通用设置 → 配置管理器 → 活动解决方案平台中,新建x64)。
否则可能会出现:“ fatal error LNK1112: 模块计算机类型 ‘x86’ 与目标计算机类型 ‘x64’ 冲突 ”。
三、设置环境变量路径,加载.lib静态库和.dll动态库
1 在系统环境变量path中添加…\opencv_vs2013_x64\install\x64\vc12\bin。
2 在VS 2013中新建控制台应用程序OpencvTest
3 在视图中打开属性管理器,依次打开OpencvTest → Debug|x64 → Microsoft.Cpp.x64.user,右击Microsoft.Cpp.x64.user并打开属性窗口。
4 在通用属性 → VC++目录 → 包含目录中,添加以下三个路径:
5 在通用属性 → VC++目录 → 库目录中,添加以下路径:
6 在通用属性 → 链接器 → 输入 → 附加依赖库中,添加以下17个.lib静态库,可直接复制。
opencv_calib3d340d.lib
opencv_core340d.lib
opencv_dnn340d.lib
opencv_features2d340d.lib
opencv_flann340d.lib
opencv_highgui340d.lib
opencv_imgcodecs340d.lib
opencv_imgproc340d.lib
opencv_ml340d.lib
opencv_objdetect340d.lib
opencv_photo340d.lib
opencv_shape340d.lib
opencv_stitching340d.lib
opencv_superres340d.lib
opencv_video340d.lib
opencv_videoio340d.lib
opencv_videostab340d.lib
7 将…\opencv_vs2013_x64\install\x64\vc12\bin中的.dll动态库文件全部复制到C:\Windows\System32目录下。
至此,OpenCV 3.4.0安装完成
利用上述创建的控制台应用程序OpencvTest,测试安装结果:
#include "stdafx.h"
#include<iostream>
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
using namespace cv;
using namespace std;
int main()
{
Mat image = imread("lenna.jpg");
imshow("lenna", image);
waitKey(0);
return 0;
}
将下图保存至新建工程的目录…\Visual Studio 2013\Projects\OpencvTest\OpencvTest下,命名为lenna.jpg,并运行上述程序。
完结撒花