Noise in CMOS image sensor (FPN)
2023년에 네이버 블로그에 포스팅한 글입니다.
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
이번에는 노이즈를 정리해보고자 한다.
노이즈는 능동 소자인 CIS의 이미지 퀄리티를 저하시키는 요소이다.
이미지 센서는 빛이 픽셀로 들어와 광학적 신호가 전기적 신호로 전환한다.
그리고 수천만~수억개의 픽셀이 조화를 이뤄 이미지로 표현하기 까지 많은 프로세스가 적용된다.
이러한 과정을 거치면서 픽셀들이 수집한 전기적 신호는 노이즈에 영향을 받아 이미지 퀄리티가 열화되게 된다.

출처 - IMAGE SENSORS and SIGNAL PROCESSING for DIGITAL STILL CAMERAS
발생하는 원인에 따라 노이즈는 여러가지 이름으로 구분된다. 노이즈를 공부함에 있어 어려움 중 하나는 비슷한 이유로 발생하는 노이즈를 모두 다른 이름으로 설명하곤 한다.
따라서, 이번에는 커다란 묶음으로 굵직하게 나누어 노이즈를 정리하려한다.
대표적으로 정리할 노이즈는 픽셀마다 고유의 값으로 가지게 되는 fixed pattern noise와 측정할때마다 시간에 따라 바뀌는 Temporal noise로 크게 구분된다.
이에 해당하는 노이즈를 소분류해 하나씩 살펴보게되면 아래와 같다.
- 노이즈의 종류
▶ Fixed pattern noise
- DSNU
- PRNU
▶ Temporal noise
- Photon shot noise
- Dark current shot noise
- KTC noise
- 1/f noise
- RTS noise
- Thermal noise
- Fixed pattern noise와 Temporal noise의 특징
Fixed pattern noise의 경우, pixel마다 고유한 노이즈가 발생해 이미지에 구현된다.
이미지 센서는 DRAM과 같이 전자가 있으면 1 없으면 0과 같은 이분법 적인 결과물이 아니라, 전자가 수집된 양에 따라 1~100까지 수치를 나타내야한다.
하지만, 이미지 센서 내의 수천만개 이상의 모든 픽셀이 100% 같은 성능으로 제작되기는 어렵다.
따라서, 빛이 동일하게 인가되는 조건에서 모든 픽셀에 gray level이 5를 나타낸다면 가장 이상적일 것이다.
하지만, 현실적으로는 A픽셀은 gray level 10을 나타내고 B픽셀은 5를 나타내게 될 수 있다.
좀 더 자세히 들어가자면, Fixed pattern noise는 다시 두가지로 나눠진다.
빛이 없는 상태에서 픽셀 별 암전류로 인한 Offset 값이 발생하는 DSNU (Dark Signal Non-Uniformity)
빛이 인가될 때 픽셀별로 다른 감도(gain)를 가지며 발생하는 PRNU (Photon Response Non-Uniformity)
이러한 원리로 나타나는게 Fixed pattern noise이다.
픽셀마다 고유한 노이즈를 가지고 있으므로, 몇번을 촬영해 이미지로 촬영하든 같은 픽셀에서 같은 노이즈가 발생한다.
Temporal noise는 빛과 전자의 랜덤(확률)성으로 인해 발생한다. 측정하는 시간마다 전자의 수가 랜덤하게 바뀌기 때문에 시간에 따라 변하는것 처럼 보인다.
- 이미지 보정 방법
이러한 차이가 있듯이 Fixed pattern noise와 Temporal noise는 보정방법이 크게 다르다.
Fixed pattern noise는 gray scaling했을 때 pixel간의 level 편차를 줄이게 되면 노이즈가 해결된다.
이를 위해서는 픽셀들 level을 같게 해주기위해 빼주는 방식으로 이미지 퀄리티를 높여준다.
위 ppt를 참고하면, reference값과 signal 값을 모두 사용해 두 값의 차이로부터 실제 신호 값을 찾아내는 CDS(correlated double sampling)를 사용하면 offset FPN(DSNU)는 감소 할 수 있으나, gain FPN(PRNU)는 감소할 수 없다고 한다.
또한, offset FPN도 dark current variation으로 인해 완전히 없앨수는 없는것으로 보인다.

내가 찍어본 FPN 노이즈
종종 카메라에서 노이즈가 선명히 보일때는 왜 유난히 눈에 띄는가? 라는 생각을 했다.
지금 드는 생각으로는 PRNU는 억제하기 힘들기 때문으로 생각된다.
왼쪽 그림은 카메라를 보라색 천으로 완전히 가렸을때의 사진이다. 빛이 들어올 수 없으니 완전히 검게 노이즈가 없이 나온다.
이는 DSNU가 거의 감소했기 때문에 그럴것이다.
반대로 오른쪽 그림은 고의적으로 빛이 아주 조금만 들어오게 했다. 자세히보면 화면에 자글자글한 노이즈가 보인다.
밝지 않은 상황에서 signal이 noise보다 압도적으로 크지 않기 때문에 억제하기 힘든 PRNU가 그대로 화면에 보이게 된것으로 생각된다.
CIS의 이렇게 직관적으로 결과를 확인할 수 있다는게 재미있는 요소이다.
CIS 제작 및 양산을 처음 시작하는 기업에서 가장 어렵고 중요한것은 Fixed pattern noise를 없애는것이라고 한다.
pixel array를 만드는것은 비교적 쉬운 일이나, 픽셀들을 최대한 같은 성능이 나오도록 제작하고 보정하는일이 매우 까다롭기 때문이다.
또한, Fixed pattern noise가 Temporal noise보다 끼치는 영향이 더욱 큰 이유도 있다.
Temporal noise는 여러장의 이미지들을 구현한 후, 프레임 에버리지를 통해 감소 시킬 수 있다.
하지만 이는 근본적으로 noise를 제거하는것이 아닌 결과물을 보정하는 방식이다.
빛을 받아 전자를 수집하고 반도체 소자를 이용해 이미지를 구현하는 과정에서 물질의 특성와 전자의 이동 등... CIS 고유의 원인으로 발생하는 Temporal noise는 근본적으로 제거하기 어려워 이를 해결하기 위한 노력은 지금까지도 이어지고 있다.
앞서 말했듯이, 이미지 상에서 더욱 치명적인 noise는 Fixed pattern noise이다. 반면에, 제거하기 어려운 noise는 Temporal noise이다.