예제: Wiener 필터링
wiener2d 함수를 사용하여 이미지에서 부가적으로 발생하는 임의 노이즈를 줄입니다.
Wiener 필터링은 이미지에 부가적으로 발생한 임의 노이즈를 줄이기 위해 개발된 초기 방법 중 하나입니다. 이 필터링 방법은 픽셀의 위치와 무관하게 정적인 임의 프로세스로 부가적인 노이즈가 발생한다는 가정을 바탕으로 하며, 원본 이미지와 재구축된 이미지 간의 제곱 오류를 최소화하는 알고리즘입니다.
이 예제를 사용하는 것에 대한 자세한 내용은
이미지 처리 예제 정보 를 참조하십시오.
임의의 균일 분포 노이즈 사용
1. 단순한 직사각형 상자 이미지를 생성합니다.
2.
runif 함수를 사용하여 상자 이미지에 노이즈를 추가합니다.
3. 이미지에서 7 x 7 창 Wiener 필터를 사용합니다.
4.
scale 함수를 사용하여 두 이미지의 배율을 조정한 다음 이미지를 표시합니다.
(wiener_sl.bmp)
(wiener_sf77.bmp)
사각형의 윤곽선은 흐릿해지지 않았지만 노이즈는 평활화되었습니다. 하지만 필터 창 크기 부근의 사각형 윤곽선 근처에서 노이즈가 필터링되지 않습니다.
5. 이미지에서 3 x 3 창을 사용합니다.
이 이미지의 경우 전체적인 평활도는 줄어들지만 사각형 윤곽선 근처까지 필터링이 확장됩니다.
가우시안 노이즈 사용
1. 이미지 파일을 읽고 임의의 흰색 가우시안 노이즈를 추가합니다.
2.
rnorm 함수를 사용하여 이미지에 가우스 노이즈를 추가합니다.
3. scale 함수를 사용하여 두 이미지의 배율을 조정합니다.
(fruit_sm.bmp)
(fruit_sl.bmp)
4. 5 x 5 창의 Wiener 필터링을 사용하여 노이즈를 억제합니다.
식 복사