CUDA opencv 构建失败 - 缺少实际存在的文件
Posted
技术标签:
【中文标题】CUDA opencv 构建失败 - 缺少实际存在的文件【英文标题】:CUDA opencv building fails - missing file that is actually there 【发布时间】:2018-08-14 08:42:54 【问题描述】:我正在尝试做以下事情:开始工作
CUDA 9.1 与 openCV 3.4.2 和 Visual Studio Enterprise 2015 (v 14.0 Update 3) 开启 Windows 7 Enterprise x64 SP 1 使用 CMake 3.12.0并且还在寻找有同样问题的其他人 - 那里没有成功。
我已经通过this tutorial 让软件协同工作。我不打算使用英特尔 MKL 和 TBB。
我成功了
安装 CUDA 使用 CMake 为 openCV 生成 Makefile,并且包含 CUDA 库而没有任何错误(除非下载可选内容,因为我正在使用的 PC 是为了远离互联网) 为在 Visual Studio 中构建 openCV 生成 .sln 解决方案文件问题在下一步 - 构建 openCV。 编译器在尝试构建opencv_world时声称“opencv2/opencv_modules.hpp”不能被gpu_mat_cu打开。问题是包含路径根据 Visual Studio 工作 - 它在 gpu_mat.cu 中检测到正确的文件。项目(opencv_world)在其包含路径中有正确的目录作为静态路径。
我是 Visual Studio 的新手(我之前在 Linux 中使用 QT、CUDA 和 openCV 工作过),所以我不太确定我是否错过了一些我应该更改的设置。 opencv_world.hpp 只包含#define 指令。我曾尝试删除 opencv_world.hpp 的包含,而只是在 gpu_mat.cu 本身中定义参数,但如果我这样做了,下一个包含(同样,VS 找到没有问题的路径)将无法解决。 我想我缺少一些明显的东西,但我似乎无法解决这个问题,所以提前感谢您的帮助。
Cr4sh
P.S.:CMake 想要为 openCV 下载并失败的文件(显然;没有互联网连接)是:opencv_ffmpeg.dll、opencv_ffmped64.dll、ffmpeg_version.cmake、ippicv_2017u3_win_intel64_general_20180518.zip、res10_300x300_ssd_iter_140000_fp16.ca p>
我会在剧透标签中添加 CMakeCache.txt 文件,但它的字符太多。如果您认为这有帮助,请告诉我,我会上传到某个地方。
【问题讨论】:
【参考方案1】:我得到了解决方案,以防万一有人遇到同样的问题:这是每个人都知道的最简单的事情,直到他们不知道 - 我的包含路径包含一个空格 显然某处被视为字符串分隔符,用于解释该路径。
【讨论】:
以上是关于CUDA opencv 构建失败 - 缺少实际存在的文件的主要内容,如果未能解决你的问题,请参考以下文章
在 Windows 上使用 CUDA、TBB、MKL、VTK 构建 OpenCV
使用 OpenCV3.4.5 在 Qt5 中与 Cuda 相关的编译错误
getCudaEnabledDeviceCount() 返回 -1:使用 vcpkg 构建的 OpenCV [cuda]