8

OpenCV ライブラリのマルチコア サポートがあるかどうか疑問に思っていました。Haar カスケードを試していますが、4 つのコアを持つ Raspberry 2 ではかなり遅いですが、アプリケーションは現在 1 つのコアでしか実行されていません。

何か案は?

4

3 に答える 3

6

CascadedDetectマルチコアをサポートしています。

WITH_TBBor (またはOpenCV でWITH_OPENMPサポートされているその他のスレッド フレームワーク) フラグをオンにして OpenCV を再コンパイルし、有効にします。

于 2015-03-26T20:40:59.597 に答える
1

CascadeClassifierのクラスを簡単に見てみましたが、組み込みの OpenCV マルチスレッド機能であるmodules\objdetect\src\cascadedetect.cppを使用してかなりの量の実装が行われているようです。parallel_for_

ただし、走行距離は異なる場合があります。OpenCV サポート フォーラムのこのスレッドが示唆しているように、少なくともトレーニング フェーズでは、多くの連続したコードがあるようです。

したがって、OpenCV を OpenMP (セットアップが最も簡単な場合があります)、TBB、または同様のものでコンパイルできる場合は、問題ありません。

それが役立つことを願っています!

于 2015-03-26T20:35:33.143 に答える
1

最近、HAAR および LBP カスケード分類器を実装したSimd Libraryを見つけました。OpenCV の標準 HAAR および LBP カスケードを使用できます。この実装には、SSE4.1、AVX2、および NEON(ARM) を使用した SIMD 最適化があります。

Raspberry 2 については確認していませんが、Raspberry 3 については確認しました (元の OpenCV 実装よりも ~2 倍速く動作します)。

于 2016-11-22T06:27:15.997 に答える