가우시안 필터는 가중치가 있는 마스크를 가지고 가중 평균을 구하는 것이다.
f(x,y) = { 1, 2, 4, 5, 2,
3, 6, 6, 9, 0,
1, 8, 3, 7, 2,
2, 9, 8, 9, 9,
3, 9, 8, 8, 7 }
arr = [
[1, 2, 4, 5, 2],
[3, 6, 6, 9, 0],
[1, 8, 3, 7, 2],
[2, 9, 8, 9, 9],
[3, 9, 8, 8, 7]]
for i in range(1,4):
for j in range(1,4):
sum = 0
sum = arr[i-1][j-1] + arr[i-1][j]*2 + arr[i-1][j+1] + arr[i][j-1]*2 + arr[i][j]*4 + arr[i][j+1]*2 + arr[i+1][j-1] + arr[i+1][j]*2 + arr[i+1][j+1]
print(sum/9)
가우시안 마스크?의 값은
1/16 1/8 1/16
1/8 1/4 1/8
1/16 1/8 1/16 이므로
1 2 1
1 4 1
1 2 1 로 바꿔서 적용하면 된다.
결과는
7.888888888888889
10.0
9.222222222222221
9.88888888888889
11.444444444444445
10.777777777777779
11.666666666666666
13.555555555555555
13.333333333333334
이렇게 나오므로
결과는
{1, 2, 4, 5, 2,
3, 8, 10, 9, 0,
1, 10, 11, 11, 2,
2, 12, 14, 13, 9
3, 9, 8, 8, 7}
'과목 > 영상처리' 카테고리의 다른 글
Low Pass Filter 저주파 통과 필터 (0) | 2018.04.19 |
---|---|
Mean Filter 단순 계산을 파이썬으로 (0) | 2018.04.18 |
Median Filter 단순 계산을 파이썬으로 (0) | 2018.04.18 |