5

私はロボットビジョンシステムに取り組んでおり、その主な目的はオブジェクトを検出することです。これらのライブラリ (CImg、OpenCV) のいずれかを選択したいのですが、両方についての知識があります。

私が使用しているロボットには Linux 、1GHz CPU および 1G RAM が搭載されており、画像のサイズは 320p の C++ を使用しています。

毎秒25フレームのうち20フレーム近くのリアルタイム画像処理が必要です。あなたの意見では、どちらのライブラリがより強力ですか l 私は両方をテストしましたが、処理時間は同じですが、open cv の方がわずかに優れています。これは、open cv コードでポインターを使用しているためだと思います。

あなたの考えと理由を教えてください。

ありがとう。

4

2 に答える 2

5

OpenCVとIPPを統合すると、おそらく最高のパフォーマンスが得られると思います。

このリファレンスを参照してください。

ここに別の参照がありますhttp://experienceopencv.blogspot.com/2011/07/speed-up-with-intel-integrated.html

さらに、完全に機能するアルゴリズムをフリーズすると、通常、アルゴリズムを分離して、使用する準備ができていない可能性のある深刻な最適化 (メモリの最適化、アセンブリへの移植など) を行うことができます。

于 2011-12-31T14:56:07.963 に答える
1

それは、何をしたいのか (検出したいオブジェクトの種類、精度、使用しているアルゴリズムなど) と、どれだけの時間があるかによって異なります。一般的なコンピューター ビジョン/画像処理の場合は、OpenCV を使用します。ディパンが言ったように、さらなる最適化を検討してください。Computer Vision の最適化に関する私の経験では、ボトルネックは通常、メモリ相互接続帯域幅 (またはメモリ自体) にあるため、通信を節約するためにサイクル (計算) をトレードする必要がある場合があります。アルゴリズムをさらに最適化するために、アルゴリズムをよく理解してください (これにより、コンパイラーと比較して大幅な改善が得られる場合があります)。

于 2012-02-04T19:21:30.720 に答える