先安装vs2015 update 3,具体打开网站https://msdn.itellyou.cn/
接着安装cmake
为了使用opencv dnn模块,安装了opencv 3.4.1预编译版,安装很简单,但有一个问题,程序运行的时候无法进入到函数内部实现中,这给刚接触dnn模块的我增加了调试的难度,出问题了无法进行调试,因此还是决定自己编译一下。所有涉及到的文件均给出百度云下载路径!
opencv3.4.1百度网盘下载链接:https://pan.baidu.com/s/17Vilcmlw5Ce6KK2mfsmcWQ 密码:rl5c
opencv_contrib-3.4.1百度网盘下载链接:https://pan.baidu.com/s/131yLMC96Bo-YKv1omXVVPQ 密码:mg8d
如果嫌弃下面一个一个下载太麻烦,我这有一个下载好的包:
链接:https://pan.baidu.com/s/1U7EzsSy3-QBZdMPbc6lIVQ 提取码:wkp8
ffmpeg_version.cmake百度网盘下载链接:https://pan.baidu.com/s/1H6uxba0cgRUsdBcI69axow 密码:xsbb
opencv_ffmpeg.dll百度网盘下载链接:https://pan.baidu.com/s/1bTzOMjDDGrvcaZWIvsdSlw 密码:rynu
opencv_ffmpeg_64.dll百度网盘下载链接:https://pan.baidu.com/s/1k5iBc1-vYBGCYtSWXSG2_g 密码:epan
face_landmark_model.dat百度网盘下载链接:https://pan.baidu.com/s/1vyYrn66GjXYpZvbtve5azg 密码:km0k
ICCIPV:https://github.com/opencv/opencv_3rdparty/tree/ippicv/master_20170822/ippicv
1、下载opencv3.4与opencv_contrib3.4相对应的版本,上文已给出百度云下载链接;
2、Cmake编译Opencv3.4,选定 源码路径 和 编译输出路径,下图是我的源码路径和编译输出路径,然后单击configure;
单击configure后,弹出一个界面,我的选择如下图设置,单击“Finish”即可开始编译;
这个过程会出现很多错误需耐心反复编译,主要原因是他要从国外网站下载文件,若下载失败就编译不通过,以红色显示;
解决办法:手动下载。查看D:\software\opencv3.4.1\build中打开CMakeDownloadLog.txt文件,里面有下载失败文件的链接及下载文件要保存到本地的路径,将文件覆盖到保存的本地路径和D:\software\opencv3.4.1\opencv-3.4.1\.cache相应的路径中,并按照我下载失败的分别为opencv_ffmpeg.dll、opencv_ffmpeg_64.dll、ffmpeg_version.cmake、face_landmark_model.dat,上文已给出百度网盘下载路径。
以opencv_ffmpeg_64.dll下载失败为例:打开CMakeDownloadLog.txt,将手动下载的pencv_ffmpeg_64.dll复制到下图两个标红线路径中(下图从别人博客中下载,因此与我的路径对不上),并将第二个路径下复制过去的opencv_ffmpeg_64.dll名字改为下 图cashe下的名字,前面有一串数字的那个名字。
所有下载失败的的文件都完成上述操作后,勾选 BUILD_opemcv_world;主要是把所有的lib文件都弄到一opencv_world340d.lib中方便配置,若不勾选在最后会产生大概38个.lib文件;勾选 BUILD_EXAMPLES;就是编译OPencv自带的例程,完成后再次单击“Configure”即可。单击“Configure”直到Cmake3.10没有红色显示为止。
选择OPENCV_EXTRA_MODULES_PATH 把路径选择为解压的opencv_contrib3.4文件中的“modules”即D:\software\opencv3.4.1\opencv_contrib-3.4.1\modules 。如下图:
再次单击“Configure”,如若出现下载失败的情况,解决办法如上文, 再次单击“Configure”直到Cmake3.10没有红色显示为止。最后单击“Generate”完成Cmake编译的最后工作。
打来编译输出文件D:\software\opencv3.4.1\build找到 Opencv.sln打开工程文件,选择debug x64点击解决方案,点击右键,选择生成解决方案;随后漫长的等待。那个错误是与Python有关不用考虑;选择 CMakeTargets下的INSTALL右键选择仅用于项目->仅生成INSTALL即可,之后会在D:\software\opencv3.4.1\build 找到一个install文件夹即为最后编译生成的Opencv3.4配置需要文件。
具体操作如下,下图是从其他人那边截取过来,实际路径请自行比对
用VS 2015打开OpenCV.sln工程,在解决方案中可以查看工程目录:
编译生成debug版本的库,记得在此之前要选择编译的平台信息,这就是编译生成debug版本和release版本的区别,也可以选择release,因为自己的工程可能要用到相应的动态链接库:
在解决方案中选中工程,右键选择重新生成解决方案:
编译成功:
.找到CMakeTargets中的INSTALL,然后右键选择“仅限于项目”-->“仅生成INSTALL”:
完成编译后,Release模式下同理。此时,有了install目录。该目录包含了我们需要的头文件、库文件。
opencv系统变量设置
在本文中,使用的是64位编译器。故而需要将x64目录下的vc14导入系统变量中。
vs2015工程配置
1.需要注意的是,在附加选项那要勾选空项目。
2.新建工程后,需要点中工程名称,然后点击视图>其他窗口>资源管理窗口,然后在右边展开。选中Debug | x64 【因为选用x64编译器进行debug,故而选择此选项进行配置】,然后点击右键,选择属性。即可进入debug属性页。
3.点击VC++目录,对包含目录和库目录进行配置。在本文中,包含目录为:
H:\OpenCV\opencv\build\include
H:\OpenCV\opencv\build\include\opencv
H:\OpenCV\opencv\build\include\opencv2
库目录为:
H:\OpenCV\opencv\build\x64\vc14\lib
4.依次添加包含目录
H:\OpenCV\opencv\build\include
H:\OpenCV\opencv\build\include\opencv
H:\OpenCV\opencv\build\include\opencv2
5.添加库目录H:\OpenCV\opencv\build\x64\vc14\lib
6.包含目录和库目录配置好之后,点击链接器,选中附加依赖项。此处导入H:\OpenCV\opencv\build\x64\vc14\lib中的opencv_world310d.lib库即可。
测试配置是否成功
首先,点击 解决方案资源管理器,在源文件那点击右键。选择添加项>新建项。在Visual中选择C++文件,更改文件名。最后点击添加。
#include
#include
using namespace cv;
int main(int argc, char** argv) {
Mat src = imread("G://1.jpg");
if (src.empty()) {
printf("could not load image...\n");
return -1;
}
namedWindow("test opencv setup",CV_WINDOW_AUTOSIZE);
imshow("test opencv setup", src);
waitKey(0);
return 0;
}
注意:G://1.jpg是小编中电脑的一张图片,此处须改成本机电脑存在的图片路径。因为配置的是dubug | x64模式,故而中红圈中须选择Debug和x64,否则编译失败。
出现opencv_world341d.dll缺失的问题?
原因:
那基本就是你的bin路径未添加,或者就是你先打开了vs,后添加了环境变量,那么vs就找不到bin中的opencv_world341d.dll文件。
第一种方案:
重启vs,就是这么简单
第二种方案:
把相关的dll都拷贝到Windows操作系统的目录下。如果你的Windows安装在C盘,那么路径就是c:\Windows\System32。按照之前我的OpenCV的存放环境,这些dll存放在D:\soft\opencv\opencv3.4.1\opencv-3.4.1\build\install\x64\vc14\bin目录下。
到这个目录下,【Alt+A】全选,【Alt+C】拷贝,然后转到c:\Windows\System32下面,【Alt+V】复制,简单粗暴地就完成了。
PS:对于Windows 8,则要放在要在SysWOW64文件夹中。
效果图为:
1.在配置vs2015一定要确定编译器位数
2.下载的opencv版本一定要跟vs版本对应
3.配置完系统变量最好重启
4.图片格式须使用opencv支持的图片格式
5.debug模式和releases模式一定要选对
最后,小编祝大家配置成功。
https://www.cnblogs.com/fx-blog/p/8214724.html
https://blog.csdn.net/qq_37658979/article/details/82707968
https://blog.csdn.net/niuyuanye/article/details/79607770