Deep High Dynamic Range Imaging Benchmark

This repository is the pytorch implementation of various High Dynamic Range (HDR) Imaging algorithms. Please find the details below.

Maintenance and Contributors

@TianhongDai and @WeiLi-THU

Requirements

  • pytorch==1.4.0
  • opencv-python
  • scikit-image==0.17.2

ToDo List

  • adaptive padding
  • add more baselines

Supported Algorthms

  • DeepHDR [1]
  • NHDRRNet [2]
  • AHDR [3]
  • DAHDR [4]

Instruction

  1. download the Kalantari dataset via: [link], and organize the dataset as follows:

dataset
│
└───Traning
│   │  001
│   │  002
│   │  003
│   |  ...
│   
└───Test
    │  001
    │  002
    |  003
    |  ...   
  1. train the network [unet|nhdrrnet|ahdr|dahdr]:
python train.py --net-type unet --cuda --batch-size 8 --lr 0.0002
  1. continue training using the pre-saved checkpoint:
python train.py --net-type unet --cuda --resume --last-ckpt-path <the saved ckpt path> 
  1. test the model and save HDR images:
python eval_metric.py --net-type unet --model-path <the saved ckpt path> --cuda --save-image

Pre-trained Models

The pre-trained models can be downloaded from the released page.

Performance

DeepHDR[1] NHDRRNet[2] AHDR[3] DAHDR[4]
PSNR-$\mu$ 42.2695 42.4769 43.5742 43.5240
SSIM-$\mu$ 0.9941 0.9942 0.9956 0.9956
PSNR-L 40.0627 40.1978 41.1551 40.7534
SSIM-L 0.9892 0.9889 0.9903 0.9905

Acknowledgements

@elliottwu for DeepHDR
@qingsenyangit for AHDRNet
@Galaxies99 for NHDRRNet details

References

[1] Deep High Dynamic Range Imaging with Large Foreground Motions
[2] Deep HDR Imaging via A Non-Local Network
[3] Attention-guided Network for Ghost-free High Dynamic Range Imaging
[4] Dual-Attention-Guided Network for Ghost-Free High Dynamic Range Imaging

GitHub

View Github