0

平均画像フィルタリングは、非常に一般的な画像前処理機能です。平均フィルタリングの簡単な紹介は、こちらにあります。Opencv では、これはcv::blurによって行われます。

平均フィルターのサイズが大きくなると、この処理にかかる時間も増加します。平均フィルターの速度を向上させる一般的な方法は、次の 2 つのカテゴリに分けることができます。

ここで私の質問は次のとおりです。平均的な画像フィルタリングの速度を向上させるためによく使用される方法は何ですか? 誰かがこのトピックに取り組んだことがある場合、各方法の長所と短所は何ですか? cv::blur の速度と改善された平均画像フィルタリングを比較した人はいますか? ありがとう。

4

1 に答える 1

2

単純な平均フィルターの場合、最適なオプションは、リンクしたような高速空間ドメイン最適化を使用することです。もう 1 つの例はIntegral Imagesです。

基本的な考え方は、フィルター ボックス内では、隣接するボックス間で特定の合計が共有され、再度計算する必要がないというものです。欠点は、これらの中間値を格納するために追加のメモリが必要になることです。利点は、複雑さがカーネル サイズに依存しないことです (N x N の画像を考えると、複雑さは ですN * N * constant)。

周波数ドメイン技術の使用は、おそらく他の種類の処理に必要なため、画像 FFT の準備が整っている場合にのみ便利です。それ以外の場合、2D FFT の計算はN * N * logN * constant操作であるため、空間最適化フィルタリングよりも優れています。

于 2013-11-15T10:35:21.480 に答える