【发布时间】:2016-02-28 21:58:12
【问题描述】:
我有一个关于 OpenCV 3 中的 CUDA 模块的问题。以前在 OpenCV 2 中有 opencv_gpu 模块,并且在包含文件夹中总是有一个 opencv2/gpu/gpu.hpp 文件。无论 OpenCV 是否使用 CUDA 构建,它都会在安装过程中移到那里。然而,在后一种情况下,CUDA 函数在代码的后面部分将无法使用,可以通过调用 cv::gpu::getCudaEnabledDeviceCount() 来检查,然后总是返回 0。这样,使用 CUDA 的程序可以使用已构建的 OpenCV 版本进行编译使用 CUDA,以及没有使用 CUDA 构建的。
在 Opencv 3.0 中,CUDA 函数已移至模块 cudaarithm、cudaimgproc、cudafilters、cudawarping 等。它们仅在您添加 opencv contrib 存储库时可用。
现在,我正在创建一个使用 cuda 的程序。然后我意识到,在没有CUDA的情况下构建和安装OpenCV时,意味着机器不支持CUDA并且没有安装NVIDIA cuda工具包,安装时CUDA模块的头文件没有复制到include文件夹中。这样程序不会编译。您如何使用 OpenCV CUDA 模块编译一个程序,并且在 OpenCV 3 中构建一个没有 CUDA 的构建?
【问题讨论】:
标签: opencv3.0