Home

Awesome

USB-NeRF: Unrolling Shutter Bundle Adjusted Neural Radiance Fields

<!-- ### [Project Page]() | [Video]() | -->

Project Page | Paper | Data<br>

PyTorch implementation of rolling shutter effect correction with NeRF.<br><br> USB-NeRF: Unrolling Shutter Bundle Adjusted Neural Radiance Fields
Moyang Li*<sup>1,2</sup>, Peng Wang*<sup>1,3</sup>, Lingzhe Zhao<sup>1</sup>, Bangyan Liao<sup>1,3</sup>, Peidong Liu<sup>1,3</sup>,<br> <sup>1</sup>Westlake University, <sup>2</sup>ETH Zurich, <sup>3</sup>Zhejiang University
* denotes equal contribution
† denotes corresponding author
in ICLR 2024

USB-NeRF is able to correct rolling shutter distortions and recover accurate camera motion trajectory simultaneously under the framework of NeRF, by modeling the physical image formation process of a rolling shutter camera.

Quickstart

1. Setup environment

git clone https://github.com/WU-CVGL/USB-NeRF
cd USB-NeRF
pip install -r requirements.txt

2. Download datasets

You can download the data here.

After acquiring the data, your folder structure should look like

Dataset/
    Unreal-RS/
        Adornment/
            images/
            start/
            mid/
            groundtruth.txt
            poses_bounds.npy
        BlueRoom/
            ...
        LivingRoom/
            ...
        WhiteRoom/
            ...
        intrinsics.txt
    ...

images folder contains captured rolling shutter images. start and mid folder contain global shutter images corresponding to the first and middle scanline, respectively. groundtruth.txt file saves the groundtruth poses, while poses_bounds.npy file saves the estimated camera poses with rolling shutter images via COLMAP. intrinsics.txt saves camera intrinsics (fx, fy, cx, cy).

3. Configs

Modify parameters of config file (eg: configs/Unreal-RS/Adornment_CubicSpline.txt) if needed.

4. Training

python train_usb_nerf.py --config ./configs/Unreal-RS/Adornment_CubicSpline.txt

After training, you can get global shutter images, optimized camera poses and synthesized novel view images.

Citation

If you find this useful, please consider citing our paper:

@article{li2023usb,
  title={USB-NeRF: Unrolling Shutter Bundle Adjusted Neural Radiance Fields},
  author={Li, Moyang and Wang, Peng and Zhao, Lingzhe and Liao, Bangyan and Liu, Peidong},
  journal={arXiv preprint arXiv:2310.02687},
  year={2023}
}

Acknowledgment

The overall framework, metrics computing and camera transformation are derived from nerf-pytorch, CVR and BAD-NeRF respectively. We appreciate the effort of the contributors to these repositories.