이번 글에서는 지난 시간에 학습한 Conversion gain을 사용해서 이미지의 Shot noise 양을 계산하는 방법을 알아보겠습니다. 혹시 Conversion gain이 무엇인지 기억나지 않는다면 PTC(Photon Transfer Curve)와 Conversion Gain 글을 한 번 더 읽어 주세요.
그동안 많은 분이 아래와 같은 문의를 해 주셨습니다.
“이미지를 촬영하는 데 모든 픽셀이 균일하지 않고 차이가 있습니다. 카메라 문제인가요?”
“좁쌀 같은 모양의 이미지가 촬영됩니다. 원래 이런가요?”
물론 카메라 문제는 아닙니다. 동일 조건에서 모든 픽셀의 값이 동일하지 않는 이유 중 하나는 Shot noise 때문입니다.
Shot noise란?
Shot noise는 무엇일까요? 센서의 일정한 영역에서 입사된 광자(Photon)의 양은 시간에 따라 일정하지 않고 랜덤합니다. 이 랜덤한 특성 때문에 이미지상에서 잡음(Noise) 형태로 나타나게 됩니다.
이러한 Noise를 “shot noise”라고 하며, 빛의 흐름을 구성하는 불연속적인 광자 에너지가 산탄총에서 발사된 작은 총알의 형태와 같다는 의미에서 붙여진 말입니다.
Shot noise와 이미지 레벨의 관계
이런 변동(오르고 내림의 정도)은 통계 법칙인 Poisson statistics로 해석할 수 있으며, 변동 폭을 나타내는 표준편차 값인 shot noise는 입사된 광자의 평균값의 제곱근과 같은 값을 가집니다. 즉, 평균 100개의 광자에서 shot noise는 root(100)=10 이 됩니다. 따라서 광자의 수는 분포(표준정규분포)를 따라 90~110 사이의 값을 갖습니다(엄밀히 말하면 1 σ 입니다. 확률의 의미이며 절대적인 값은 아닙니다).
결론적으로, 신호가 커질수록 shot noise도 증가하지만, 그 증가 폭은 입사되는 신호에 비해 점점 작아지게 됩니다. 10,000 : 100과 100 : 10의 비율로 이해할 수 있습니다. 즉 입사되는 빛이 밝을수록 shot noise의 비율은 신호에 비해 적어지게 되고 이미지의 Quality는 증가합니다. 신호대 잡음비 즉 SNR을 계산하면 신호가 커질수록 Shot noise의 비율은 줄어들게 되므로 SNR은 계속 증가합니다.
이미지에서 Shot noise 계산하는 방법
Shot noise를 이해했다면 이제 내가 촬영한 이미지에서 얼마 정도의 Shot noise가 포함되는지 알아보겠습니다.
위 이미지는 전 시간에 설명해 드린 PTC입니다. 이 그래프의 기울기 즉 Conversion gain은 0.17 DN/e- 입니다. 다들 이 의미에 대해서는 이해하고 계시죠? Saturation point의 Grey level은 약 3,897입니다. Conversion gain을 사용하면 이때의 Electron 개수는 약 23,116 electron입니다.
자 이제 아래와 같은 이미지가 있다고 합시다. 이 이미지는 Gain x4(원래의 이미지 레벨을 4배 함)에서 촬영이 되었습니다. 이미지를 통해서 알 수 있는 정보는 아래와 같습니다.
- Average : 2321
- Std Dev : 25.883(μ-σ < μ < μ+σ)
이 정보를 가지고 이 이미지의 Shot noise를 계산해 봅시다.
이미지 레벨 3,897일 때 Electron이 23,116개이므로 2321 때 해당 Electron은 약 13767이며 Gain이 4배 적용되어 있음으로 실제 Electron은 약 3441로 계산됩니다. 입사된 Electron의 개수가 3441일 때의 Shot noise는 3441의 root 약 58e입니다. Conversion gain 0.17 DN/e-을 고려하면 약 9.97DN으로 표시가 되며 Gain이 4배 적용되어 있음으로 약 40 DN(±20DN)을 shot noise로 이해 할 수 있습니다. 나머지 값은 센서에서 발생 된 Fixed pattern noise입니다.
Shot noise를 줄이는 방법
이제 Shot noise 감소 방법을 생각해 볼 시간입니다.
첫 문장에서 언급했듯이 Shot noise는 입사되는 Photon의 불규칙성에서 발생하기 때문에 근본적으로 방지할 방법은 없습니다. 다만 Median filter와 같은 Software Filtering 방법으로 Shot noise를 개선할 수는 있지만 가장 좋은 방법은 입사되는 Signal 양을 키우는 것입니다.
신호의 양을 키우는 대표적인 방법은 다음과 같습니다.
- 노출 시간을 증가시킨다
- 광량을 증가시킨다
- 이미지 여러 장의 평균을 구한다 (Frame Averaging)
Comments are closed.