标题win10+vs2017+opencv4.0.0+opencv_contrib-4.0.0安装教程
文章目录
1 VS2017下载安装
从官网下载VS2017 https://docs.microsoft.com/en-us/visualstudio/releasenotes/vs2017-relnotes
下载安装的是Visual Studio 2017 Installer,真正需要安装的内容是通过Installer进行安装。安装后打开选择Community版本,由于下图中是已经安装好VS之后打开的Installer,可能会有些许不一样,但参照提示,问题不大。
Community版本中,常用的一般选择.NET桌面开发和使用C++的桌面开发,右面显示每一部分所包含的组件,可自行选择,一般默认即可。
2 CMake编译opencv与opencv_contrib
2.1 CMake下载安装
官网下载CMake 最新版即可
下载后直接安装,最好选择第三个,自动添加环境变量
2.2 opencv与opencv_contrib 下载
下载opencv-4.0.0-vc14_vc15.exe
下载opencv_contrib-4.0.0.zip
选择自己需要的版本,注意保持一致
新建一个文件夹并将opencv与opencv_contrib解压到该文件夹
2.3 CMake编译
- 打开CMake,第一行输入opencv的sources目录(注意:不是opencv_contrib的目录);第二行输入你自定义(新建)的输出目录(我的是D:\opencv4.0.0\opencv\build_new,注意路径不能有中文)。最后点左下角的Configure
- 然后选择对应vs的版本,64位系统选择Win64(我的是x64),默认的是Win32。点击Finish
然后就是等待了。之后显示Configuring done第一次源码配置就完成了(完成后列表不出现红色)。
要是如上述红色,需要再次单击 Configure直到不出现红色为止则完成。 - 完成上述后找到OPENCV_EXTRA_MODULES_PATH一项,添加你刚刚解压的opencv_contrib中的modules目录,最后点击Generate开始编译。完成后左下角显示Configuring done,Generating done。
完成之后如果在你的自定义输出文件夹(D:\opencv4.0.0\opencv\build_new)中找到OpenCV.sln文件,即表明编译成功完成。
3 VS2017编译
3.1 install
1 使用VS2017打开刚刚的“OpenCV.sln”文件
2 然后点击“生成—>重新生成解决方案”,这得等一段时间
完成后(我的有9个跳过)
3 解决方案资源管理器—>CMakeTargets—>INSTALL—>仅用于项目—>仅生成INSTALL(B)然后又是等好一会儿
完成后
4 最后到自定义的文件夹确认一下,找到install文件夹(注:对于后边配置环境,install文件夹作用就像配置opencv4.0时的build文件夹一样)
3.2 环境配置
-
环境变量:电脑【属性】—>【高级系统设置】—>【环境变量】—>【系统变量 Path】添加编译目录“ *\install\x64\vc15\bin” 的完整路径
环境变量配置好后,一定要重启系统!!!! -
VS2017配置
1 新建项目,属性管理器 -> 配置属性 ->VC++目录双击属性表,在通用属性—>VC++目录
包含目录中添加:
D:\opencv4.0.0\opencv\build_new\install\include
D:\opencv4.0.0\opencv\build_new\install\include\opencv2
库目录中添加:
D:\opencv4.0.0\opencv\build_new\install\x64\vc15\lib
根据你定义的路径进行修改
2 在通用属性—>链接器—>输入—>附加的依赖项中添加:
opencv_aruco400d.lib
opencv_bgsegm400d.lib
opencv_bioinspired400d.lib
opencv_calib3d400d.lib
opencv_ccalib400d.lib
opencv_core400d.lib
opencv_datasets400d.lib
opencv_dnn400d.lib
opencv_dnn_objdetect400d.lib
opencv_dpm400d.lib
opencv_face400d.lib
opencv_features2d400d.lib
opencv_flann400d.lib
opencv_fuzzy400d.lib
opencv_gapi400d.lib
opencv_hfs400d.lib
opencv_highgui400d.lib
opencv_imgcodecs400d.lib
opencv_imgproc400d.lib
opencv_img_hash400d.lib
opencv_line_descriptor400d.lib
opencv_ml400d.lib
opencv_objdetect400d.lib
opencv_optflow400d.lib
opencv_phase_unwrapping400d.lib
opencv_photo400d.lib
opencv_plot400d.lib
opencv_reg400d.lib
opencv_rgbd400d.lib
opencv_saliency400d.lib
opencv_shape400d.lib
opencv_stereo400d.lib
opencv_stitching400d.lib
opencv_structured_light400d.lib
opencv_superres400d.lib
opencv_surface_matching400d.lib
opencv_text400d.lib
opencv_tracking400d.lib
opencv_video400d.lib
opencv_videoio400d.lib
opencv_videostab400d.lib
opencv_xfeatures2d400d.lib
opencv_ximgproc400d.lib
opencv_xobjdetect400d.lib
opencv_xphoto400d.lib
具体lib文件会因为安装结果不同而不同,可通过以下方法获取安装成功的lib文件
打开cmd命令行
输入
cd /d E:\opencv4.0.0\build_new\install\x64\vc15\lib //回车 (填自己的路径)
dir /b *.lib *>0.txt //回车
在该目录下生成一个0.txt文件,里面是要连接的依赖项
4 常见问题及解决方法
4.1 在Cmake时,opencv_xfeatures2d 无法生成
参考以下博文可以解决
https://blog.csdn.net/huzhifei/article/details/110942990