分離可能なフィルターはなぜオペレーターの計算コストを削減するのですか?


8

画像処理における分離可能なフィルターは、さらに2つの単純なフィルターの積として記述できます。通常、2次元畳み込み演算は2つの1次元フィルターに分離されます。これにより、オペレーターの計算コストが削減されます。

分離可能なフィルターを使用すると、なぜ計算コストが低くなりますか?理解できません。1つではなく2つのフィルタを使用するとパフォーマンスが向上する理由

回答:


9

あなたが持っていると仮定します N×M サイズの画像。

古典的に使用されているもの、たとえばサイズの正方形フィルターカーネルを使用していることがわかっている場合 L×L、あなたはそれを絵と畳み込む必要があります-それはあなたに与えます N×M ピクセル、それぞれが必要 L2積和。だからあなたはA2D=L2MN オペレーション。

今、あなたはそのフィルターをに分解することができるなら Lサイズの水平およびLサイズの垂直1Dフィルターでは、最初にすべての行を実行できます。 M 行ごとの値、それぞれが必要 L 操作、 LMN すべての行に対して–垂直フィルターを使用して同じことを行うので、 LNM すべての列に対して–そして、あなたは A1D=2LMN、そしてあなたはそれを示す必要があるだけです

A1D<A2D2LMN<L2MN||:LMN, legal since L,M,N>02<L

ほとんどのフィルターは2より大きいです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.