1. Sample images for CRF calibration
The CRF functions of a RGB-D sensor can be calibrated using CRF calibration tools provided in github.
Specifically, we first take multiple image with various exposure at a fixed location viewing a static scene using the “multi_expo_capturer” tool.
To illustrate the calibration procedure, a sample sequence of the multiple exposure image is available from here. Sample images are shown as below:
From left to right, the exposure time are 3, 6, 12, 24, 48, 96, 192 and 384 ms, respectively.
At each exposure, we take 30 individual frames, and their file names are arranged as:
- exp.idx.png exp: the exposure time; idx: from 0 to 29.
This is because the exposure control of Xtion sensor can be inaccurate. We manually remove the frames whose brightness are inconsistent with the majority of frames taken at the specific exposure time.
After that, the remaining images are fed into the tool “calc_crf” for estimation. Its derivate, inverse CRF and pixel noise function are then calibrated using the matlab tool “crf_calibration_matlab”.
2. Synthetic Dataset
The synthetic dataset is constructed for evaluating the tracking performance of the proposed method under simulated exposure changes. It is based on ICL-NUIM dataset.
Two sequences of synthetic dataset,”smooth” (top) and “flicker“, were created. “smooth” is aimed at simulating the smooth adjusting of exposure and “flicker” the flickering artifacts caused by sudden changes of exposure. In both sequences, the synthetic RGB and depth noise are added.
The following figure shows the first 9 frames from synthetic sequences “smooth” (top) and “flicker” (bottom), respectively.
“smooth” (top) and “flicker” (bottom) can be downloaded by clicking at them. The noise free version as well as a noisy version and the ground truth poses are packed together in zip files. The naming convention of RGB-D frames are shown in the following:
- scene_xx_xxxx.png image with noise
- scene_xx_xxxx.depth.png depth with noise
- nf_scene_xx_xxxx.png noise free image
- nf_scene_xx_xxxx.depth.png noise free depth map
- scene_xx_xxxx.pose.txt ground truth of camera poses
- gt_exp_sequence.txt ground truth of exposure time (ms)
where xx is always 00 and xxxx is the index of the frame ranging from 0 to 1000.
The noise free image vs noisy image:
In a “.pos.txt” file, a camera pose is represented in the following format:
-0.0030101 0.0122165 -0.0068443 -1.2366763 -0.5408358 0.5625012
rotation vector translation vector
The first 3 floating type values are the rotation vector and the last 3 values are translation vector. The rotation and translation transform a point in world coordinate system to current camera coordinate system.
3. Real Dataset:
The real datasets are composed of the following “.oni” files catpured using various light source:
- floor1 Tungsten light blub
- floor2 Tungsten light blub
- whiteboard Indirect sun light + fluorescent
- bear Indirect sun light
- desk fluorescent
- sofa fluorescent + Dedolight-400D
- serials.yml index of calibration data
The HDR texture captured using these sequences are shown in the accompanying video.