本篇博客主要介绍OpenCV 3.4在Visual Studio 2013中的配置。
安装CMake
- 点击链接前往官网下载CMake,CMake官网;
- 解压之后,打开bin目录下的cmake-gui.exe即可;
- 效果如下:
OpenCV 3.4.0编译
- 首先,我们去官网下载源码,OpenCV下载链接;
- 我们也来下载一下OpenCV 3.4.0,解压下载的源码;
- 然后我们创建一个build目录,即重新编译后的目录,opencv3.4.0-vs2013-x86;
- 我们打开CMake,选择源目录和目标目录;
- 我们点击Configure按钮,会出现如下界面,我们选择Visual Studio 12 2013,最后点击Finish按钮;
- 我们将WITH_CUDA选项取消,然后再点击Configure;
- 最后我们看到Configuring done即表示完成配置成功;
- 我们点击Generate,生成OpenCV解决方案,当出现Generating done的提示,即表明解决方案生成成功;
- 点击Open Project,此时CMake会自行启动Visual Studio 2013,打开上述生成的解决方案;
- 我们先将解决方案修改为Debug模式,然后右击ALL_BUILD,选择生成。生成成功后,右击INSTALL,选择生成,会在opencv3.4.0-vs2013-x86目录中生成install目录,里面就是我们需要的;
- Release模式步骤与Debug模式一样,首先将解决方案修改为Release,其他步骤一样;
- 至此,OpenCV 3.4.0对应的Visual Studio 2013版本就编译完成。
配置与使用
- 我们在使用之前需要先配置环境变量。将bin目录添加到系统环境变量path中,这里我的目录为:
D:\Tools\OpenCV\opencv3.4.0-vs2013-x86\install\x86\vc12\bin
。
项目配置
- 我们先来创建一个新的项目,如下:
- 然后我们点击一下项目,选择TestOpenCV属性,点击配置属性,选择VC++目录,添加一下包含目录和库目录;
- 最后,我们同样是在属性页配置一下附加依赖库。将
D:\Tools\OpenCV\opencv3.4.0-vs2013-x86\install\x86\vc12\lib
目录下的以.lib
结尾的库添加到附加依赖项,注意不是全部添加,Debug模式下添加所有*d.lib
库,Release模式下添加所有*.lib
库。
简单使用
前面已经完成了OpenCV的简单配置,下面我们来写一个简单的代码验证一下:
#include <opencv2/opencv.hpp>
#include <string>
#include <iostream>
#include <stdlib.h>
int main() {
const char* imgName = "C:\\Users\\叁拾叁画生\\Desktop\\测试图片\\haha.JPG";
cv::Mat img = cv::imread(imgName);
if (img.empty()) {
std::cout << "Image Load Failed!\n";
system("pause");
return -1;
}
cv::imshow("image", img);
cv::waitKey();
return 0;
}
附录
Debug模式附加依赖项:
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
Release模式附加依赖项:
opencv_calib3d340.lib
opencv_core340.lib
opencv_dnn340.lib
opencv_features2d340.lib
opencv_flann340.lib
opencv_highgui340.lib
opencv_imgcodecs340.lib
opencv_imgproc340.lib
opencv_ml340.lib
opencv_objdetect340.lib
opencv_photo340.lib
opencv_shape340.lib
opencv_stitching340.lib
opencv_superres340.lib
opencv_video340.lib
opencv_videoio340.lib
opencv_videostab340.lib