【画像処理】ガウシアンフィルタの原理・特徴・計算式

この記事では、画像処理におけるガウシアンフィルタの原理や計算式についてまとめました。

ガウシアンフィルタ

ガウシアンフィルタは、画像の平滑化に使われるフィルタの1つです。
考え方は簡単で、「注目画素からの距離に応じて近傍の画素値に重みをかける」ということをガウス分布を利用して行います。
それにより、自然な平滑化をおこなうことができます。

■入力画像(左)、出力画像(右)

ガウシアンフィルタのカーネル

ガウシアンフィルタでは、次のようなガウス分布を用いて近傍画素値に重み付けを行います。

(1) \begin{eqnarray*} g(x,y,\sigma )=\frac{1}{\sqrt{2\pi}\sigma}exp(\frac{x^2+y^2}{2\sigma^2}) \end{eqnarray*}

標準偏差\sigma =1.3で8近傍ガウシアンフィルタの場合、カーネルKは次のようになります。

(2) \begin{eqnarray*} K&=&\frac{1}{16} \left[ \begin{array}{ccccc} 1 & 2 & 1\\ 2 & 4 & 2\\ 1 & 2 & 1\\ \end{array} \right] \end{eqnarray*}

注目画素(中心)からの距離が近い程、重みの値が大きくなっていることがわかります。
標準偏差\sigmaの値が大きくなるほど、ガウス分布が平たくなり重みの差が小さくなるため、平滑化の効果も大きくなります。

プログラミングで実装

プログラミングによる実装例について下記事で解説しています。

言語 解説記事
Python 【Python/OpenCV】ガウシアンフィルタでぼかし・平滑化
C# 【C#】ガウシアンフィルタで画像のぼかし(ノイズ除去)
まとめ 【画像処理入門】アルゴリズム&プログラミング
関連記事