Gaussian

Gaussian Blur

写真にノイズ(小さな変則的な要素)が多くある場合、ガウスぼかしを使用し、画像の前処理 する。 [tex:{E=mc2}]

画像内の ピクセルを正方形(n2)のカーネルでたたみ込む ことで変換する。(全ピクセルに対し周囲のピクセルを考慮し平均値を出すことでなめらかなぼかしを表現する)

標準偏差σのガウシアンぼかしとは、n次元の入力画像A[i,j…]に対してn次元のガウス関数 [tex: \begin{math} G_\sigma(x,y,…)= \frac{1}{(\sqrt{2π\sigma2})}exp(-\frac{r2}{2\sigma2})(ここでr2=x2+y2+…) \end{math}]

の畳み込み和 [tex:( O(rn_cutoff) B[i,j,…]=\sum _{x,y,…\in Zn} G\sigma(x,y,…)A[i-x,j-y,…] )] をとることである

[tex:$ ガウス関数は中心から離れるにつれ値が小さくなり、r{cutoff} ~ 3\sigma程度で打つきり行列を作る。n次元ガウス関数はnこの一次元ガウス関数の直積によって表されることにより、ピクセルあたりの計算量を $] [tex:$ O(rn{cutoff}) $] から $ O(nr_{cutoff}) $ とぼかし処理を高速化することができる。

blurGaussian01.py

screen shot 2017-02-07 at 06 39 34

blurGaussian02.py

screen shot 2017-02-07 at 07 19 36