opencv

编译cuda opencv + opencv_contrib

by nineone, 2022-03-25


软硬件环境

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/

  1. 第一步去下载opencv和opencv_contrib的源代码(github上下载需要版本),将opencv_contrib解压到opencv目录
  2. 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
opencv

作者: nineone

2025 © typecho & elise 24 ms