vs2017+opencv+qt+cuda,使用cmake编译opencv的库

Posted hands0mer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vs2017+opencv+qt+cuda,使用cmake编译opencv的库相关的知识,希望对你有一定的参考价值。

环境:
cuda 10.2
opencv 3.4.13
qt 5.12.9
cmake 3.24
vs 2017
x64系统


vs安装时勾选与c++相关的组件,依次安装opencv、 qt、cuda(cuda安装时尽量安装在c盘,以便于配置系统环境)与cmake,需要配置qt与cuda的环境变量。
 

C:\\Program Files\\NVIDIA Corporation\\NVIDIA NvDLISR

C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v10.2\\bin

C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v10.2\\libnvvp

C:\\Program Files (x86)\\NVIDIA Corporation\\PhysX\\Common

C:\\Program Files\\NVIDIA Corporation\\NVIDIA NvDLISR

C:\\Program Files\\NVIDIA Corporation\\Nsight Compute 2019.5.0\\

‪D:\\qt\\5.12.9\\msvc2017_64\\bin

以上地址视自己情况而定!!!!!

网上下载opencv和opencv-contrib源码的安装包,

git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git

解压缩(放在同一个文件夹内),在这个文件夹内新建一个vs文件夹(留有后用)。


以上步骤结束后 打开vs2017,打开工具-扩展与更新-安装qt插件(与之前的qt不冲突),安装很慢,可以去镜像网站去下载相应的版本。

https://mirrors.tuna.tsinghua.edu.cn/qt/archive/vsaddin/

下载安装完之后重启vs2017,发现上面菜单栏出现qt vs tools ,打开这个选项,点击qt versions,配置qt版本号和地址(如图)。

 

新建一个空项目,右击项目,生成依赖项-生成自定义,勾选cuda。


打开安装完的cmake,找到解压缩的opencv与opencv-contrib文件,下面标红的分别选择一下文件(就是自己解压缩的和新建的文件)。

 点击configure,configure选择自己vs的版本(我选的是2017),选择x64系统,然后finish

 过程由于网络问题,有些文件可能下不了,一个是ippicv,另一个是ffmpeg,我尝试过几次反复下载,都没有成功。所以只能另想办法,这里提供网盘链接供你们下载,只需把opencv源文件中的.cache中ffmpeg、ippicv、xfeatures2d、data复制替换就行。然后在search栏中搜索cuda,相关的项目全部勾选,在搜索栏中搜索path,添加OPENCV_EXTRA_MODULES_PATH,指向下载好的opencv_contrib下的modules文件夹。再次configure,直到没有错误与红色框为止(应该已经差不多了)。然后generate,结束后,在vs文件中找到opencv.sln文件打开(加载时间稍长),右击项目中的install文件,生成(视电脑配置而定,生成时间略有不同,很长,期间可能有乱码出现,无所谓)。

生成结束后,配置环境变量

然后配置包含目录,库目录,和链接库(附加依赖项);以下的与opencv相关的链接全部在vs/install中的include与x64-vc15-lib中

 

 

 附加依赖项中除了基本的项,把……\\vs\\install\\x64\\vc15\\lib中的所有项的名称全部复制到附加依赖项中。重启vs,至此,配置基本完成。

 第一次写文章的新人,配置了好久,希望后面的人少走弯路。

 

 

以上是关于vs2017+opencv+qt+cuda,使用cmake编译opencv的库的主要内容,如果未能解决你的问题,请参考以下文章

在 Windows 上使用 CUDA、TBB、MKL、VTK 构建 OpenCV

Win10+VS2017+opencv3.4.1+cuda8.0配置

win10 vs2017 opevcv3.4 yolov3

如何根据 cmak 在 qt creator 中使用 opencv Cuda

使用 Qt 和 Cuda for Python 构建 OpenCV,在 build_all cmake 目标上运行到 LNK2019

OpenCV 3.2.0 +Win10+ CUDA 8.0+ VS2013 编译