下载opencv源码包(当前项目使用的是4.5.5版本,但是这里有个坑,由于是cuda12.x的版本,所以后面会出现编译问题,所以后来的opencv版本被升级到了4.10.0)
https://github.com/opencv/opencv/tags
下载opencv依赖模块
https://github.com/opencv/opencv_contrib/tags
Cmake可视化gui安装(看个人爱好)
sudo apt-get install cmake-curses-gui
Ippicv的下载问题
当前的编译暂时没有使用ippicv的库(理论上使用该库在cpu上的计算会有性能提升,但是由于下载问题,暂时未使用)
下载不成功,就等下,会自动跳过本次下载,或者cmake生成的时候直接禁用掉ipp的选项
(当前编译禁用掉了)
ADE的下载问题
同上
本次编译有一个cmake错误,原因是编译服务器上没有安装对应的cudnn库,但是cmake失败
如果构建过程中遇到类似的问题,请下载相应版本的cudnn库
https://developer.nvidia.com/cudnn-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=22.04&target_type=deb_network
接下来的cmake构建有可能还会遇到一个光流包的下载NVIDIA_OPTICAL_FLOW
同样的道理,可以将cmake中光流相关的给屏蔽掉
当前cmake成功
但是出现编译问题
error:texture is not a template
这个是由于版本的问题(cuda12.0开始cuda就放弃了对旧版纹理引用的支持,任何使用纹理引用的代码,都编译不过)
因此前面源码作废,当前下载了最新版本的opencv4.10.0
Cmake构建时遇到一个xfeature2d依赖文件的下载,一直卡住不会跳过,由于现在项目中没有使用到该模块,因此暂时直接屏蔽