Knowledge/Vision

Image flickering

침닦는수건 2023. 8. 17. 15:52
반응형

카메라로 실내에서 이미지를 찍었는데 위와 같이 이미지에 검은색 줄무늬가 생기는 현상이 생길 때가 있다. 결론부터 말하면 이러한 image flickering 현상은 조명 때문이다. 조명의 Hz가 카메라의 셔터 스피드보다 빠르기 때문에 촬영하는 찰나에 빛이 꺼졌다 켜졌다하는 것이 이미지에 그대로 잡히는 것이다. 

 

우리 나라 교류 전원은 60hz로 초당 60회 진동한다. 따라서 카메라 셔터 스피드가 이보다 느릴 시 위와 같은 현상이 나타날 수 있다. 다른 말로 카메라가 60FPS가 안 나오는 카메라라면 위 현상이 나타날 수 있다는 말이다. 

 

카메라가 60FPS보다 낮은 FPS를 갖고 있음에도 관찰되지 않는 이유는 실내 조명이 LED와 같이 직류 전원을 이용하는 전원일 것이다.

어떻게 없앨 수 있을까?

이론 상 카메라가 60FPS보다 빨라야 하기 때문에 카메라의 셔터 스피드를 빠르게 하면 없앨 수 있다. 정확히는 1/60, 1/120과 같이 교류 전원 60hz의 주기의 배수로 설정하면 없앨 수 있다. 

 

그런데 사실 60FPS를 지원하는 카메라도 흔치 않은 마당에 그의 배속을 지원하는 카메라는 없을 확률이 거의 100%이므로 현실적으로는 불가능하다. 카메라 셔터 스피드를 높일 수 있다고 해도 카메라 셔터가 rolling shutter인 이상 여전히 남아있을 수도 있다. rolling shutter의 line by line speed는 또 다른 이야기니까 말이다. 

 

게다가 셔터 스피드를 극단적으로 높인다는 것은 exposure time을 줄인다는 말인데 이럴 경우, 카메라가 취득하는 빛의 양이 극단적으로 줄어들기 때문에 이미지 전체가 어두워지는 현상이 발생한다. 그럼 aperture를 넓히는 보상을 해주어야 하는데 이러면 또 초점 문제가 생긴다. depth of field가 달라지기 때문이다. 추가적으로 조명의 세기를 강하게 해야할 수도 있다. 

 

결론적으로 위 현상이 생겼다면 없앨 수는 없다!

 

어떻게 완화할 수 있을까?

그렇다면 완화하는 방법 뿐인데 코드 상에서 이미지를 후처리하는 방식은 이미지 정보를 망가뜨리는 작업이므로 최후의 방법이고, 물리적으로 필터를 걸어주는 방법이 일반적이다.

 

대표적으로 neutral density filter, 한마디로 선글라스 같은 필터를 렌즈 앞에 대주는 것이다. 좋은 카메라에는 내장되어 있는 경우도 있는데 빛을 취득하는 exposure 시에 빛의 양이 너무 적거나 큰 영역을 smoothing해주는 역할을 한다. 따라서 위와 같은 image flickering이 나타났을 때 줄무늬를 옅게 할 수 있다.

 

또 다른 필터로는 color correction filter가 있다. 이 필터는 입사하는 빛의 색이 일정하도록 유지해주는 필터다. 

 

마지막으로 특수한 경우인데, 사용하는 빛이 편광되어있을 경우, 즉 반사광일 경우 polarizing filter를 사용하면 완화할 수 있다. 

 

 

 

반응형

'Knowledge > Vision' 카테고리의 다른 글

Static library와 dynamic library 차이  (0) 2023.09.14
Positional embedding (직관적 이해)  (0) 2023.09.13
Trifocal tensor 이해하기  (0) 2023.03.30
Swish activation function  (0) 2023.03.10
Positional encoding  (0) 2023.03.10