【问题标题】:OpenCV-3 with inbuilt CUDA libraries/functionality具有内置 CUDA 库/功能的 OpenCV-3
【发布时间】:2015-09-11 15:59:26
【问题描述】:

我已经下载了官网提供的opencv.exe。我按照 video 配置了我的 Visual Studio 10。

现在,我可以编译并运行下面给出的简单代码:

#include <cstdio>
#include <opencv2\opencv.hpp>

int main (int argc, char* argv[])
{
    std::cout<<"opencv Version: "<<CV_VERSION <<std::endl;
    return 0;
}

问题:但只要我尝试包含 cuda 的标头(即 #include "cuda.hpp"),就会引发错误 fatal error C1083: Cannot open include file: 'cuda.h': No such file or directory

PS:我能够编译和运行一个独立的 cuda 程序,如 video 所示。

我检查了cuda.h 存在于文件夹C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\include 中。

【问题讨论】:

  • #include &lt;opencv2/cuda.hpp&gt; 怎么样?如果这不能解决您的问题,您必须更具体。 “不认识”是什么意思?发布确切的错误消息。
  • @m.s. : 不,它也没有帮助。我已经更新了我的问题,以更具体地说明“它无法识别它”。
  • 是否将 CUDA 包含目录添加到 Visual Studio?
  • @m.s. :正如我在原始帖子中提到的那样,我尝试为 cuda 运行独立代码,并且成功了。
  • 是的,但是结合 OpenCV 和 CUDA 的项目是否设置了正确的包含路径?还是这是同一个项目?

标签: c++ visual-studio-2010 cuda opencv3.0


【解决方案1】:

如果您将 OpenCV 库与 CUDA 库一起构建,则无需显式设置 CUDA 库/头文件的路径。我按照suggested here 的安装方法。

我在我的 OpenCV 代码中包含以下标头,它们运行良好。

#include "opencv2\core\core.hpp"
#include "opencv2\core\cuda.hpp"
#include "opencv2\core\cuda\filters.hpp"
#include "opencv2\cudaarithm.hpp"
#include "opencv2\cudafilters.hpp"
#include "opencv2\cudaimgproc.hpp"
#include "opencv2\cudalegacy.hpp"

【讨论】:

    猜你喜欢
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 2018-03-31
    • 1970-01-01
    • 2016-11-19
    • 1970-01-01
    • 2016-06-28
    • 1970-01-01
    相关资源
    最近更新 更多