空里流霜不觉飞,汀上白沙看不见。——张若虚《春江花月夜》
软硬件环境
windows 10 64bit
nvidia gtx 1070Ti
opencv 4.2.0-dev
cuda 10.2
cudnn 7.6.5.32
visual studio 2019
本文的目标是在window10的系统上编译opencv的最新源码版本(4.2.0),使能cuda和cudnn加速。关于cuda和cudnn在windows10上的安装,请参考之前的文章 https://xugaoxiang.com/2019/12/18/windows-10-cuda-cudnn/。
- 第一步去下载opencv和opencv_contrib的源代码(github上下载需要版本),将opencv_contrib解压到opencv目录
mkdir build cd build cmake-gui ..
修改 OPENCV_EXTRA_MODULES_PATH
opencv_contrib的路径指定,点击cmake-gui上的Add Entry,添加OPENCV_EXTRA_MODULES_PATH,指向下载好的opencv_contrib下的modules然后 点击 Configure
会出现两个下载错误
一个是ippicv,另一个是ffmpeg,我尝试过几次反复下载,都没有成功。所以只能另想办法,根据错误提示,打开文件build目录下的
CMakeDownloadLog.txt
,找到下载地址 手动 下载 ,根据CMakeDownloadLog.txt
中的名字重新命名,放入 opencv 目录下 的.cache
文件夹中对应的位置,出现其他下载失败也是一样
(我遇到的问题是ffmpeg_version.cmake
文件替换后 Configure 还是报下载失败 导致Configure 后 ffmpeg没有 都是No )解决办法
修改opencv目录下的 `3rdparty\ffmpeg\ffmpeg.cmake`文件
然后继续 Configure
然后Generate
点击open projecct
在右侧解决方案里的CMakeTargets下的INSTALL,右键选择生成
#### 参考资料
https://xugaoxiang.com/2019/12/26/build-opencv-with-cuda-for-windows/
https://xugaoxiang.com/2019/12/18/windows-10-cuda-cudnn/
https://xugaoxiang.com/2019/12/08/anaconda/
https://github.com/opencv/opencv
https://github.com/opencv/opencv_contrib
https://www.cnblogs.com/yongy1030/p/10293178.html