Deblurring과 Deconvolution 완벽 정리 | 흐릿한 이미지를 선명하게 복구하는 방법





Deblurring(디블러링) 이란?

이번 글에서는
Deblurring / Deconvolution 에 대하여
살펴보겠습니다.

이전 글에서 Blur 에 대하여 살펴봤었습니다. ​

Deblurring 은 발생한
Blur 를 제거하여
선명한 이미지를
복구하는 작업입니다.

deblurring1

블러의 다양한 원인은
이미 살펴봤었습니다.

​ 이것을 어떻게 제거할 수 있을까요?

많은 Deblurring 방법 중
Deconvolution 에 대하여
살펴보겠습니다.







Deconvolution(디컨볼루션)이란?

deconvolution2

Deconvolution 은 이미지를 흐리게
만드는 컨볼루션 커널을 알고 있다면,

​ 촬영된 이미지에서 역산으로
계산하여 깔끔한 이미지를
복구할 수 있습니다. ​

우리가 어떠한 필터
효과를 적용했다가,

다시 되돌린다고
생각하시면
될 것 같습니다. ​

convollution theorem3

Deconvolution 방법은
Convolution Theorem 을 사용합니다.


​ Convolution Theorem 은
이미지를 푸리에 변환을
통하여 주파수 도메인으로 변경했을 때, ​

이미지에 컨볼루션을 적용하는 것을
단순히 곱셉으로 표현할 수 있습니다.

​ F() 함수는 푸리에 변환을 통하여
Intensity domain 에서 Frequency domain 으로
이동시키는 역활을 합니다.

​ x = 깔끔한 이미지
c = 컨볼루션
b = 관측된 이미지 입니다. ​


이렇게 수학적으로 푸리에 변환으로
주파수 도메인으로 변경하여
곱셉으로 역산을 진행하여
깔끔한 이미지를 얻을 수 있습니다.




Deconvolution의 한계와 Wiener Deconvolution

inverse filtering4

단, 컨볼루션과 관측된 이미지에
노이즈가 섞여 있다면,

노이즈가 증폭되어
좋은 결과를 얻지 못합니다. ​

푸리에 변환 중 특정 주파수 영역은
0 값이 나오게 되는데
노이즈가 이 값들과
문제를 발생시킵니다.

wiener deconvolution5

그래서 Noise 에 강인한
Wiener Deconvolution 이라는
방법도 있습니다. ​

단순히. 0 으로 나눠지는 것을
막아서 Noise 가 증폭되지 않도록
했다고 생각하시면
될 듯 합니다.

항목DeconvolutionWiener Deconvolution
기본 방식커널 기반 역산커널 기반 + 노이즈 억제
장점이론적으로 정확한 복원 가능노이즈에 강하고 현실적 복원 가능
단점노이즈 증폭 문제 발생 가능약간의 디테일 손실 가능


그런 건 난 잘 모르겠고,
Deblurring 은 흐려진 이미지를
수학적으로 “거꾸로 풀어”
선명하게 만드는 방법



참고자료

references6

Leave a Comment