16

私はリアルタイムの顔認識アプリケーションを構築するように依頼されました。いろいろ調べた結果、顔認識ライブラリとして EmguCV と OpenCV を試すことにしました。

私が現在抱えている問題は、SDK をインストールして動作させることです。ここにある手順に従って実行してみましたが、まだサンプルを実行できません。それらを実行しようとするたびに、エラーが発生します

The program can't start because nvcuda.dll is missing from your computer. 
Try reinstalling the program to fix this problem.

bin フォルダーを環境パスに追加し、dll を system32 フォルダーにコピーするなど、通常の修正のほとんどを試しましたが、どれも機能していないようです。

  • EmguCV バージョン 2.4.2.1777-windows-x64-gpu
  • ウィンドウズ8
  • AMD Radeon HD 6700 シリーズ グラフィックス カード。

これは、nVidia グラフィックス カードを持っていないという事実の問題だと思いますが、どうすればよいかわかりません。とりあえず、ダウンロードした .exe を使用するのではなく、ソースを再コンパイルして、それが役立つかどうかを確認します。

助言がありますか?

4

8 に答える 8

11

同じ問題があり、EmguCV 2.4.2 (x86 か x64 かに関係なく) は GPU でコンパイルされており、CUDA をサポートする nvidia GPU が必要です。したがって、たとえば、必要に応じて。C# の 2.4 からの Fisherfaces - GPU 以外のリリースを待つか、CUDA カードを購入/借りる ;)

于 2012-10-05T18:56:17.780 に答える
8

私はたまたまあなたとまったく同じ問題を抱えています。私のコンピューター(WinXP 32ビット)ではすべて正常に動作していますが、Win764ビットコンピューターでは正常に動作していません。これは、私のコンピューターにすでにOpenCV 2.4.2がインストールされており、プログラムを実行すると、OpenCV dllへのパスがEmguCVフォルダー内のdllではなく、OpenCVフォルダーを指すためです。元のOpenCVdllには、NVidiaのドライバーへのこの依存関係はありません。

ここで提案されているように、私はDependencyWalkerを使用して何が起こっているのかを見つけるのを手伝いました。

このリンクは、-gpuパッケージのみがgpu処理を有効にしていることを示していますが、最新バージョン(2.4.2)は、gpuパッケージのみであり、no-gpuパッケージはありません...

ここで必要なのは、最新のNVidiaドライバーをダウンロードしてnvcuda.dllファイルを取得することだけでしたが、多くのパッケージをダウンロードしましたが、このファイルは見つかりませんでした:gpuコンピューティングsdk、cudaツールキット、ディスプレイドライバー、デバイスドライバー...

私の回避策は、古いバージョンのEmguCV / OpenCVを使用する代わりに、OpenCV2.4.2の元のdllを使用することです。

于 2012-09-27T03:59:39.963 に答える
4

dll-files.comの nvcuda.dll を使用しました。

于 2012-10-22T13:46:42.497 に答える
3

同様の問題がありました。NVIDIA GPU を搭載したコンピューターでアプリケーションをコンパイルして実行すると、正常に動作します。問題は、アプリを別のコンピューターに移動したときでした。この 2 台目のコンピューターには NVIDIA GPU がなく、'Emgu.CV.CvInvoke' 例外がスローされました。何度も試みた後、幸いなことにこの問題を解決しました。前に述べたように、今のところバージョン 2.4.2 の GPU パッケージしかありません。私は前にこれに気づきませんでした。

私にとっての解決策は次のとおりです。

  • ファイルをコピーします: 'cudart64_42_9.dll' および 'npp_42_9.dll' をデバッグ (アプリケーション) フォルダーにコピーします。
  • ファイル 'nvcuda.dll' を System32 フォルダーにコピーします。この手順を実行すると、NVIDIA GPU/CUDA がなくてもすべてのコンピューターでアプリケーションが動作します。

他の解決策は、opencv ユニバーサル GPU バージョン (現在はアルファ 2.4.9) リンクを使用している可能性があります: http://sourceforge.net/projects/emgucv/files/emgucv/2.4.9-alpha/

于 2013-06-02T02:02:16.483 に答える
3

問題は、サイトの最新バージョンに非 GPU 拡張ダウンロードが含まれていないことと、GPU 拡張ダウンロードには CUDA 統合用の nVidia グラフィック カードが必要であることです。

GPU が強化されていない以前のバージョンを正常にダウンロードして実行しました。

于 2012-09-27T02:24:23.347 に答える
0

ソース EmguCV を GIT からダウンロードしてコンパイルすることができます。

http://www.emgu.com/wiki/index.php/Download_And_Installation#Building_from_Git

dll の非 GPU バージョンを生成します。

よろしく。

于 2012-12-09T22:19:47.827 に答える
0

顔認識に EmguCV を使用して論文を作成する際にも、いくつかの問題がありました。最も安定したバージョン libemgucv-windows-x86-2.4.0.1717.exe を使用してみてください。gpu ダウンロードは使用しないでください。このバージョンにはバグが最も少なく、x64 よりも 32 ビットの方が優れています。初めてコンパイルするときは、Visual Studio 2012 を使用します。このバージョンでは、上記のすべてをインストールする必要はありません。この例を見て、実際に機能することを確認できます: http://sourceforge.net/projects/emgufacerecog/

于 2014-11-19T13:03:48.497 に答える