【问题标题】:Opencv Error: no GPU support (library is compiled without CUDA support)Opencv 错误:没有 GPU 支持(库在没有 CUDA 支持的情况下编译)
【发布时间】:2012-10-06 07:53:28
【问题描述】:

我正在尝试使用 CUDA 在 GPU 上使用 opencv 处理一些图像处理任务。我正在使用 ubuntu。我毫无问题地设置了我的两个产品 Opencv 和 Cuda,我对此很确定。但是,当我尝试在 Eclipse 中运行 sampleCOde 时,出现错误:

OpenCV Error: No GPU support (The library is compiled without CUDA support) in mallocPitch, file /home/muad/Source/OpenCV-2.4.2/modules/core/src/gpumat.cpp, line 749

我重新制作了我的 opencv,但我仍然明白。

【问题讨论】:

  • mmm.. 我建议重新编译 OpenCV 并确定 CUDA 支持
  • 来自here:“要启用 CUDA 支持,请使用带有 WITH_CUDA=ON 的 CMake 配置 OpenCV。设置标志并且如果安装了 CUDA,则会构建全功能 OpenCV GPU 模块。”

标签: c++ c opencv cuda


【解决方案1】:

如文档中所述,您必须使用 CMake 构建 OpenCV 并设置标志 WITH_CUDA=ON。然后您将获得功能齐全的 OpenCV GPU 模块。否则,该模块仍会构建,但您会收到 CV_GpuNotSupported 异常。

欲了解更多信息,请在此处阅读:http://docs.opencv.org/modules/gpu/doc/introduction.html

【讨论】:

  • ok 我解决了问题:我的机器看不到 cuda,因为我忘记在 bashrc 文件中添加导出命令。现在我要再次制作 opencv 我希望我不会遇到任何问题
  • 好的。这基本上就是我和 Robert Crovella 所说的,你没有正确构建你的 GPU 模块。很高兴听到您解决了问题。
  • 这里有一个很好的 gist 如何传递标志:gist.github.com/raulqf/f42c718a658cddc16f9df07ecc627be7
  • 如何将导出命令添加到 bashrc 文件。在 Windows 10 中?
  • 请注意,如果您尝试编译 WITH_CUDA=ON 并收到以下错误:CUDA: OpenCV requires enabled 'cudev' module from 'opencv_contrib' repository: https://github.com/opencv/opencv_contrib,您将需要使用额外的模块(特别是 cudev 模块)构建 OpenCV。完成此操作的说明可以从上面错误消息中的 GitHub 链接的 README 中获得。
【解决方案2】:

我遇到了同样的问题。我修复了它 使用 .exe 将 opencv_core243d.dll 从 E:\opencv\build\gpu\x64\vc10\lib 文件夹复制到工作目录。 不知道为什么这很重要,但确实如此。

【讨论】:

    【解决方案3】:

    我猜你的系统路径仍然设置为以前没有用 gpu 编译的 dll。重建opencv后,你应该先改变你的系统路径。

    【讨论】:

    • 如果库是用 WITH_CUDA 标志构建的,我有什么方法可以找到。
    • 如何在windows10中做这个
    猜你喜欢
    • 1970-01-01
    • 2020-09-19
    • 1970-01-01
    • 1970-01-01
    • 2020-05-05
    • 2013-02-22
    • 1970-01-01
    • 2013-02-16
    • 1970-01-01
    相关资源
    最近更新 更多