스마트폰 카메라로 배경을 찍다보면 어느 한 영역은 고조도(너무 밝고), 다른 한 영역은 저조도(너무 어둡다고) 생각한적이 있을 겁니다. 일반적으로 사진을 찍을때는 하나의 노출 시간으로 인해 사진의 디테일을 놓치게 되는 것입니다.
HDR
이런 문제를 해결하기 위해 HDR 이라는 기능이 존재합니다.
해당 기능 카메라가 한 번의 노출로 담을 수 없는 넓은 밝기 범위(명암비)를 여러 장의 서로 다른 노출 이미지를 합성하여 하나의 이미지로 표현하는 기술입니다.
카메라 디바이스 드라이버 초기화
JX-K302P CMOS 이미지 센서에서 HDR 기능을 위한 초기화 작업을 해보았습니다.
데이터 시트를 확인해보면, 특정 레지스터에서 HDR short exposure lines을 조정이 가능하였습니다.
HDR short exposure lines을 조정함으로서 짧게 빛에 노출되는 영역을 넓히거나 축소 시킬 수 있습니다.
다음은 블로그에 HDR(High Dynamic Range) 관련 내용을 보완하고 더 풍부하게 설명할 수 있는 추가 문단입니다. 간단한 설명도 포함되어 있어요:
HDR(High Dynamic Range)란?
HDR은 ‘High Dynamic Range’의 약자로, 명암 표현 범위를 확장해주는 기술입니다. 우리가 눈으로 보는 장면은 매우 넓은 밝기 범위를 포함하고 있지만, 일반적인 이미지 센서나 디스플레이는 그만큼 표현하기 어렵습니다.
예를 들어, 밝은 하늘과 그늘진 나무 아래를 동시에 촬영할 경우, 일반 사진은 어느 한 쪽의 디테일을 잃게 됩니다. 이런 문제를 해결하기 위해 HDR은 서로 다른 노출 조건에서 여러 장의 이미지를 촬영하고 이를 하나로 합성하여, 밝은 부분과 어두운 부분 모두의 디테일을 보존합니다.
HDR 구현 방식
HDR은 다음과 같은 방식으로 구현됩니다:
- 다중 노출(Multi-Exposure)
- 일반적으로 Long Exposure (장노출), Short Exposure (단노출), 그리고 Normal Exposure로 구성된 2~3장의 이미지를 촬영합니다.
- 이미지 합성(Image Fusion)
- 서로 다른 노출의 이미지들을 정렬하고, 각 이미지에서 적절한 영역의 정보를 취합해 하나의 이미지로 만듭니다.
- 톤 매핑(Tone Mapping)
- 최종 이미지를 디스플레이 장치에서 표현 가능한 범위로 압축합니다.
임베디드 시스템에서 HDR 구현
펌웨어나 디바이스 드라이버 수준에서 HDR을 구현하기 위해서는, 센서의 레지스터를 통해 노출 조건을 설정해야 합니다.
예를 들어, 사용한 JX-K302P CMOS 센서의 경우, HDR short exposure lines 값을 조절하여 단노출 이미지의 감도나 범위를 조절할 수 있었습니다. 이를 통해 어두운 영역의 디테일을 살리거나, 밝은 영역의 과노출을 방지할 수 있습니다.
정리
- HDR은 카메라가 표현할 수 있는 밝기의 범위(Dynamic Range)를 확장하기 위한 기술입니다.
- 일반 사진에서는 한 번의 노출로 인해 디테일 손실이 발생하지만, HDR은 이 문제를 해결합니다.
- 펌웨어 개발 시에는 센서 데이터시트를 바탕으로 노출 시간 조정, 이미지 합성 알고리즘 적용 등을 통해 HDR 기능을 구현할 수 있습니다.
'임베디드 프로그래밍 > 도메인 지식' 카테고리의 다른 글
Audio) Sample rate (0) | 2025.05.15 |
---|---|
WIFI 통신 (0) | 2025.01.01 |
영상처리 관련 용어 (0) | 2024.12.26 |