【各方向の微分量算出】
fx = s(i+1,j) - s(i,j)
fy = s(i,j+1) - s(i,j)
【画像のエッジの強さ】
______________
y(i,j) = √fx*fx + fy*fy
又は
y(i,j) = |fx| + |fy|
【画像のエッジの方向】
θ = tan-1 (fy/fx)
実際に1次元の信号で確認をすると以下のようになります.
+-------
/
/ 【原信号】
/
------+
+
+ + 【微分】
------+ +-------
これで分かるように微分によって変化分がわかり,これがエッジとして検出されます.| 手法名 | 微分 | Sobel | Roberts |
|---|---|---|---|
| fx | +---+---+---+ | 0 | 0 | 0 | +---+---+---+ | 0 | 1 |-1 | +---+---+---+ | 0 | 0 | 0 | +---+---+---+ | +---+---+---+ |-1 | 0 | 1 | +---+---+---+ |-2 | 0 | 2 | +---+---+---+ |-1 | 0 | 1 | +---+---+---+ | +---+---+---+ | 0 | 0 | 0 | +---+---+---+ | 0 | 1 | 0 | +---+---+---+ | 0 | 0 |-1 | +---+---+---+ |
| fy | +---+---+---+ | 0 | 0 | 0 | +---+---+---+ | 0 | 1 | 0 | +---+---+---+ | 0 |-1 | 0 | +---+---+---+ | +---+---+---+ |-1 |-2 |-1 | +---+---+---+ | 0 | 0 | 0 | +---+---+---+ | 1 | 2 | 1 | +---+---+---+ | +---+---+---+ | 0 | 0 | 0 | +---+---+---+ | 0 | 0 | 1 | +---+---+---+ | 0 |-1 | 0 | +---+---+---+ |
L(i,j) = x(i.j) * 4 - { x(i-1,j)+x(i+1,j)+x(i,j-1)+x(i,j+1) }
1次元の信号では以下のようになります.
+-------
/
/ 【原信号】
/
------+
+
+ + 【1次微分】
------+ +-------
+ 【2次微分】
------+ + +-------
+
さて画像に適用する場合実際は処理点と近傍領域によるオペレータを使用してフィルタ処理を行います.| 手法名 | (1)上式手法 | (2) | (3) |
|---|---|---|---|
| 強さ | +---+---+---+ | 0 |-1 | 0 | +---+---+---+ |-1 | 4 |-1 | +---+---+---+ | 0 |-1 | 0 | +---+---+---+ | +---+---+---+ |-1 |-1 |-1 | +---+---+---+ |-1 | 8 |-1 | +---+---+---+ |-1 |-1 |-1 | +---+---+---+ | +---+---+---+ | 1 |-2 | 1 | +---+---+---+ |-2 | 4 |-2 | +---+---+---+ | 1 |-2 | 1 | +---+---+---+ |