0、引言
最近工作中需要用到使用CUDA加速后的opencv进行传统算法的开发,在编程之前,需要先解决环境编译和lib库问题,本文就是记录自己编译opencv-4.7.0的全过程。
1、CUDA下载和安装
可参考我之前的博客WIN10安装配置TensorRT详解中的前几节,可以清楚的知道如何在Windows10系统上安装适合自己的CUDA以及验证CUDA是否可用
2、opencv-4.7.0+opencv-contrib-4.7.0下载
opencv的官方网站release了很多版本的opencv,如下图所示:
博主选择opencv-4.7.0的sources进行下载。
opencv-contrib-4.7.0的下载地址如下:opencv-contrib下载地址,或者如下网址:
https://github.com/opencv/opencv_contrib/tags
下载好的opencv-4.7.0以及opencv-contrib-4.7.0如下图所示:
3、配置cmake-gui
在where is source code中选择刚下载好的opencv-4.7.0路径下的source文件夹,在where to build the binaries中选择你希望编译的文件放置的地址,我的文件路劲是同目录下的opencv_4.7.0_cuda。配置好后直接点击config
其次,在search栏中输入extr,找到OPENCV_EXTRA_MODULES_PATH,在它的value中填入opencv-contrib-4.7.0文件夹下的module地址。
接着,在search栏中输入CUDA,勾选其中的WITH_CUDA以及BUILD_CUDA_STUBS。如果你需要使用opencv中dnn模块来进行CUDA的加速,那么请一并勾选OPENCV_DNN_CUDA。
其次,在search中输入world,勾选其中的BUILD_opencv_world,主要将所有lib文件都编入一个文件,防止在添加链接器lib的时候,需要去输入很多的lib文件名。
然后就是点击Configure进行配置,极大可能是配置不成功的,主要原因就是下载某些必须的cache不成功,具体来讲就是https://raw.githubusercontent.com访问失败。这里分享一个在windosw上可以完成下载的方法。
- 进入 IPAddress.com 网站查询raw.githubusercontent.com真实地址
- 使用管理员权限打开C:\Windows\System32\drivers\etc\hosts
- 在文件的末尾添加199.232.4.133 raw.githubusercontent.com并保存
这样即可正常下载完成并配置成功。PS:如果还是不成功,那么我也将.cache文件打包上传了,等审核通过给大家上地址。
最后点击Generate完成生成。
4、visual studio 2019中完成编译
在cmake-gui中点击Opencv Project,直接打开工程,配置工程属于release还是debug,博主配置的是release,原因是使用debug会出现很多意想不到的问题,干脆弃用。
接着就是使用ALL_BUILD以及INSTALL分别生成,总计耗时不少于2小时,慢慢等着就行。
以上就是opencv-4.7.0编译安装CUDA以及opencv-contrib-4.7.0的完整过程。
END