找不到EmguCV - nvcuda.dll

Rya*_*nch 16 opencv cuda emgucv

我被要求建立一个实时的人脸识别应用程序,经过一些环顾四周,我决定尝试使用EmguCV和OpenCV作为面部识别库.

我目前遇到的问题是尝试安装和运行SDK.我按照这里的说明尝试让它运行,但我仍然无法运行样本.每当我尝试运行它们时,我都会收到错误

The program can't start because nvcuda.dll is missing from your computer. 
Try reinstalling the program to fix this problem.
Run Code Online (Sandbox Code Playgroud)

我已经尝试了大多数常用的修复,例如将bin文件夹添加到我的环境路径并将dll复制到我的system32文件夹中,但它们似乎都没有.

  • EmguCV版本2.4.2.1777-windows-x64-gpu
  • Windows 8
  • AMD Radeon HD 6700系列显卡.

我假设这是一个问题,因为我没有nVidia显卡,但我不知道我能做些什么.现在,我将尝试重新编译源代码,而不是使用下载的.exe,看看是否有帮助.

有什么建议?

小智 11

有同样的问题,EmguCV 2.4.2(无论是x86还是x64)都是用GPU编译的,你必须拥有支持CUDA的nvidia GPU.所以,如果你想要,例如.Fisherfaces来自2.4 in C# - 等待非GPU发布或购买/借用CUDA卡;)


rol*_*007 8

我碰巧和你有完全相同的问题.我的计算机(WinXP 32位)上的一切正常,但Win7 64位计算机上没有.这是因为在我的计算机上我已经安装了OpenCV 2.4.2,当我执行程序时,OpenCV dll的路径指向OpenCV文件夹,而不是指向EmguCV文件夹中的dll.最初的OpenCV DLL不依赖于NVidia的驱动程序.

我使用Dependency Walker来帮助我找出正在发生的事情,如此处所示.

这个链接说只有-gpu包启用了gpu处理,但正如你所说的最新版本(2.4.2)只有一个gpu包而且没有no-gpu包......

在这里读到我需要的只是下载最新的NVidia驱动程序来获取nvcuda.dll文件,但是我下载了很多软件包而且从未找到过这个文件:gpu computing sdk,cuda toolkit,display drivers,device drivers ...

我的解决方法是使用OpenCV 2.4.2中的原始dll而不是使用旧版本的EmguCV/OpenCV .