High-Dynamic-Range Imaging

High Dynamic Range Imaging (LDR$\rightarrow$HDR)

현실은 dynamic range가 매우 높다. 이를 낮은 대비를 가지는 사진으로 옮기려면 전체 range의 간격을 좁히거나, 특정 범위만 옮기는 방법이 있다. 이 때 어떤 범위를 저장할 것인가는 노출(exposure)이 결정하는데, 이 노출을 조절하는 방법에는 서터 속도, 조리개, 감도, 중성 농도 필터 등이 있다.

셔터 속도의 조절 범위는 30sec~1/4000sec이고, 확실한 방법이고 선형적인 효과를 가져오지만, 긴 노출에 대해서는 노이즈가 섞일 우려가 있다.

조리개의 조절 범위는 f/1.4~f/22이고 DOF가 변경된다는 단점이 있고, 최후의 방법으로 유용하다.

감도의 조절 범위는 100~1600이고, 노이즈가 생긴다는 단점이 있다. 조리개값과 마찬가지로 최후의 방법으로 유용하다.

중성 농도 필터는 4농도까지 조절할 수 있으며, 쌓을 수도 있다. 단점은 완벽히 중성은 아니고 색감 이동이 있을 수 있고, 정확하지는 않다. 장점은 번쩍거리는 빛에도 사용할 수 있다는 점이고, 최후의 보충 방법으로 사용될 수 있다.

Response Curve

만약 response curve를 알고 있다면 어떤 노출값을 갖는 사진을 찍어야 원하는 빛의 양을 얻을 수 있는지 알 수 있다. response curve의 역 값을 보면 된다. response curve를 얻는 방법에는 두가지가 있다.

  1. 장면의 빛의 양(scene luminance)을 조절한 뒤 픽셀값을 본다.
  2. 노출값을 조절한 뒤 픽셀값을 본다.

가장 좋은 방법은 노출값을 조절한 뒤 많은 범위의 픽셀값을 고루 관찰하는 것이다.

$Z$ 는 픽셀값, $H$는 노출, $E$는 빛의 양, $\Delta t$는 노출시간이다.

$g(Z)$가 response curve의 역에 $\log$를 취한 함수라고 하자.

$j$번째 이미지의 $i$번째 픽셀에 대해서

임을 원하기 때문에

을 최소화시키면 된다. 앞의 항은 Data term, 뒤의 항은 Regularization term이다.

radiance를 재건하려면

을 사용하면 된다. $w(Z_{ij})$는 해당 픽셀의 가중치이고, 해당 조각들의 노이즈 관여를 조절한다.

Source

response curve를 그리기 위해 사용하는 이미지

Source

위 이미지를 통해 그린 response curve

Source

디지털 카메라를 이용해서 장면 밝기 (scene radiance)를 측정한 radiance map

Image Registration

서로 다른 노출을 갖는 이미지를 비교하기 위한 방법이다. Median-Threshold Bitmap (MTB)를 이용해서 흑백으로 만들고, 그 차이를 최소화하는 translation을 찾는다. 그리고 피라미드를 이용해서 더 촉진한다?

File Formats

.pfm : Portable Float Map. 채널당 32비트 float을 사용하고, 3채널을 저장한다. 따라서 픽셀당 96비트를 사용한다.

.pic, .hdr : Radiance Format. 픽셀당 32비트를 사용한다. (채널당 8비트, 지수에 8비트)

.exr : ILM’s OpenEXR. 비손실 압축을 지원한다. half-precision float (채널당 16비트)을 사용하며, 멀티채널을 지원한다.

High Dynamic Range Display (HDR$\rightarrow$HDR)

Sunnybrook HDR Display는 저해상도의 광원과 2개의 8비트 모듈레이터를 이용하여 HDR 영상을 띄울 수 있다. LED 백라이트와 LCD 스크린을 결합하여 결과를 만들어 낸다.


Terms

dynamic range : 증폭 회로 등에서, 다룰 수 있는 가장 큰 신호와 가장 작은 신호와의 크기의 비율을 데시벨로 나타낸 것
precision : 정밀도