1

ITK ツールキットの Canny Edge Detection を使用しています。

OpenCV Canny Detection と比較すると、かなり遅いようです。サイズ 144x176 の画像の場合、私の見積もりは 0.5 秒です。

または、フィルターをより速く実行する必要がありますか?

助けてくれてありがとう、ピート

4

2 に答える 2

2

ITK の多くのフィルタは汎用的に記述されていますが、必ずしも最適化されているわけではありません。一方、OpenCV は大幅に最適化されています。ITK がはるかに遅くなることは驚くべきことではありません。

ITK は高度にテンプレート化されているため、関数呼び出しをインライン化するコンパイラに依存しています。デバッグをコンパイルした場合 (これがデフォルトである可能性があります)、ITK は非常に遅くなります (Reaaaaaalllllllyyyyyy sssssslllooooowwwww にします)。リリース モードでコンパイルしてから再試行してください。

于 2011-09-22T21:09:24.327 に答える
2

それは私にも少し遅いように思えますが、もっと多くの情報が必要です.

  1. ハードウェアスペック?
  2. OS/IDE/どのように ITK を構築しましたか? デバッグ中ですか、それともリリース中ですか?
  3. C++ を使用していますか、それとも他の言語ラッパーを使用していますか?
  4. filter->update() 呼び出しの前後にいくつかの clock() ステートメントを配置して、エッジ検出器にかかる正確な時間と、何がオーバーヘッドになるかを確認できますか?
于 2011-01-24T03:19:40.460 に答える