RBSR: Efficient and Flexible Recurrent Network for Burst Super-Resolution [PRCV2023]
Official implementation of RBSR: Efficient and Flexible Recurrent Network for Burst Super-Resolution
Performance and Runtime Comparison
Performance and runtime comparison on SyntheticBurst dataset.
Prerequisites
python 3.8.5, pytorch 1.12, mmcv-full 1.7.1
OpenCV, NumPy, Pillow, tqdm, scikit-image and tensorboardX.
Datasets
SntheticBurst training dataset
Download the Zurich RAW to RGB canon set from here and unpack the zip file.
SyntheticBurst testing dataset
Downloaded the dataset here and unpack the zip file.
real-world BurstSR traing and testing dataset
The train and test dataset can be downloaded and unpacked using the util_scripts/download_burstsr_dataset.py script.
Quick Start
Pre-trained models
we provide the pre-trained models in the [./pretrained_networks] folder.
Test on SyntheticBurst Dataset
You can test RBSR on SyntheticBurst dataset by running
python ./run_test_syn.py
Please change the the synburstval_dir
variable in admin/local.py to your test dataset path.
Test on BurstSR Dataset
You can test RBSR on BurstSR dataset by running
python ./run_test_real.py
Please change the the burstsr_dir
variable in admin/local.py to your test dataset path.
Train on SyntheticBurst Dataset
You can train RBSR on SyntheticBurst dataset by running
python ./run_training.py dbsr RBSR_synthetic
Please change the the zurichraw2rgb_dir
variable in admin/local.py to your train dataset path.
Train on BurstSR Dataset
You can train RBSR on BurstSR dataset by running
python ./run_training.py dbsr RBSR_realworld
Please change the the burstsr_dir
variable in admin/local.py to your train dataset path.
Acknowledgement
- This implementation is based ondeep-burst-sr.
- We borrow some codes from mmagic, which is an open-source image and video editing toolbox.