#### Fibonacci Exposure Bracketing for High Dynamic Range Imaging

Proc. ICCV 2013

High dynamic range imaging for moving scenes and cameras by capturing images with Fibonacci sequence exposures. Applications in consumer imaging.

Exposure bracketing for high dynamic range (HDR) imaging involves capturing several images of the scene at different exposures. If either the camera or the scene moves during capture, the captured images must be registered. Large exposure differences between bracketed images lead to inaccurate registration. An example is shown in the above figure. Conventional bracketing and registration methods result in artifacts such as ghosting (multiple copies of scene objects) and blur.

We present two techniques, one for image capture (Fibonacci exposure bracketing) and one for image registration (generalized registration), to prevent such motion-related artifacts. Fibonacci bracketing involves capturing a sequence of images such that each exposure time is the sum of the previous N(N > 1) exposures. Generalized registration involves estimating motion between sums of contiguous sets of frames, instead of between individual frames.

Together, the two techniques ensure that motion information is always computed between frames of the same total exposure time. This ensures that the resulting HDR images have both a large dynamic range and minimal motion-related artifacts. We also extend our techniques to capture HDR video at up to 15 fps while adapting the bracketing sequence to scene brightness and motion. The proposed approach does not require any modifications to the optics. Because of its simplicity, our method is especially suited for implementation on compact cell-phone cameras, for which, low-light and low-dynamic-range are known problems.

Proc. ICCV 2013

Our key idea is that instead of directly estimating the flow between individual frames, we estimate flow between sums of two contiguous sets of frames. We call the flow between sums of frames as generalized flow and the process of estimating generalized flow as generalized registration. Flow between individual frames is then computed by scaling the generalized flow.

We propose an exposure bracketing scheme named Fibonacci exposure bracketing. Fibonacci bracketing involves capturing a sequence of images such that each exposure time is the sum of the previous N(N > 1) exposures. It exploits generalized registration to ensure that optical flow is always computed between frames of the same total exposure time. Since Fibonacci sequences behave like exponential sequences with a growth factor (G=rac{1+sqrt{5}}{2}), high dynamic range is achieved as well as robustness to registration errors.

Several sensors have non-linear intensity response, especially most cell-phone cameras. If the two images have different exposures and the sensor has a non-linear response, the intensities of a scene point (after scaling by the exposures) are different. This can lead to strong registration errors. On the other hand, in the proposed approach, flow is always computed between two frames of the same total exposure, making it robust to non-linearities in the response functions. This makes it possible to achieve high quality results without calibrating the camera 's intensity response curve.

We have emulated a sensor that allows varying exposures with a negligible inter-frame gap by using a machine vision MiroM310 camera. By triggering the camera externally with pulses generated from an Arduino controller based circuit, it is possible to achieve a negligible inter-frame time gap (0.1ms) while varying exposure from one frame to the next.