- 検出器 / Detector
Index
空間フィルタリングとは
検出器の基本となる空間フィルタリング / Spatial Filtering という操作・処理がある.
空間フィルタリングとは、注目画素の値とその近傍領域の画素値を入力として
出力画像に対応する画素値を計算する処理のこと.
数学的定義
空間フィルタリングは、線形と非線形におおまかに分類できるが、
線形空間フィルタリングを考える.
入力画像を 、注目する画素の座標を とする.
周辺の画素の座標は、 のように表せる.
また、画素値は、 や のように書ける.
そして、空間フィルタリングによって出力される座標を としたとき、
その画素値は とする.
周辺 (近傍) の範囲を とすると、(例では、)
近傍領域の大きさは、 となる. (例では、 である.)
そして、空間フィルタリングで出力される画素値の値は以下のように計算される.
ここで、計算に利用されている が登場している.
は、画素に対する重みを表現している の行列で、
カーネル、マスク、と呼ばれる.
相関 / Correlation
ここまで、空間フォルタリングの処理を記したが、式 (1) の計算方法で出力する処理を
相関 / Correlation と呼ぶ.
上の例では、
と計算できる.
畳み込み / Convolution
また、相関とは別の計算方法として、畳み込み / Convolution がある.
上の例では、
と計算できる.
また、畳み込み演算は、 を利用して、以下のように表現する.
畳み込み演算では、交換則や結合法則が成立する.
様々な空間フィルタ
- 平均化フィルタ / Averaging Filter
- ガウシアンフィルタ / Gaussian Filter
- バイラテラルフィルタ / Bilateral Filter
平均化フィルタ / Averaging Filter
平均化フィルタは、以下のカーネルを用いる.
このカーネルを画像に適用すると。画像が平滑化される.
画像のノイズを低減させる.
カーネルサイズを大きくすると平滑化の効果が大きくなる.
ガウシアンフィルタ / Gaussian Filter
注目画像とその周辺の画素に均等に重み付けを行うフィルタとは異なり、
各画素の重みを調整した平滑化を考える.
注目画像の重みを最大として、そこから遠い画素ほど重みを小さくするような加重平均を
用いる方法として、ガウシアンフィルタ / Gaussian Filter がある.
は、分散、スケールなどと呼ばれる.
バイラテラルフィルタ / Bilateral Filter
ガウシアンフィルタなどを用いて、画像を平滑化すると、
ノイズを低減させるが、エッジなどの有用な情報も低減させてしまう.
そこで、エッジ情報を維持しつつ平滑化を行う手法として、バイラテラルフィルタ / Bilateral Filter がある.
- OpenCV – バイラテラルフィルタの仕組みと cv2.bilateralFilter の使い方
応用アルゴリズム
- 畳み込みニューラルネットワーク / Convolution Neural Network ; CNN
参考
- 画像認識
- 2 局所特徴
- 2.3 空間フィルタリング
- 2.3.1 空間フィルタリングの数学的定義
- 2.3.2 様々な空間フィルタ
- 2.3 空間フィルタリング
- 2 局所特徴