zhengchen1999 / HI-Diff

PyTorch code for our NeurIPS 2023 paper "Hierarchical Integration Diffusion Model for Realistic Image Deblurring"
Apache License 2.0
168 stars 15 forks source link

Hierarchical Integration Diffusion Model for Realistic Image Deblurring

Zheng Chen, Yulun Zhang, Ding Liu, Bin Xia, Jinjin Gu, Linghe Kong, and Xin Yuan, "Hierarchical Integration Diffusion Model for Realistic Image Deblurring", NeurIPS, 2023 (Spotlight)

[paper] [arXiv] [supplementary material] [visual results] [pretrained models]

πŸ”₯πŸ”₯πŸ”₯ News


Abstract: Diffusion models (DMs) have recently been introduced in image deblurring and exhibited promising performance, particularly in terms of details reconstruction. However, the diffusion model requires a large number of inference iterations to recover the clean image from pure Gaussian noise, which consumes massive computational resources. Moreover, the distribution synthesized by the diffusion model is often misaligned with the target results, leading to restrictions in distortion-based metrics. To address the above issues, we propose the Hierarchical Integration Diffusion Model (HI-Diff), for realistic image deblurring. Specifically, we perform the DM in a highly compacted latent space to generate the prior feature for the deblurring process. The deblurring process is implemented by a regression-based method to obtain better distortion accuracy. Meanwhile, the highly compact latent space ensures the efficiency of the DM. Furthermore, we design the hierarchical integration module to fuse the prior into the regression-based model from multiple scales, enabling better generalization in complex blurry scenarios. Comprehensive experiments on synthetic and real-world blur datasets demonstrate that our HI-Diff outperforms state-of-the-art methods.


GT Blurry Restormer Stripformer HI-Diff (ours)

Contents

  1. Installation
  2. Datasets
  3. Models
  4. Training
  5. Testing
  6. Results
  7. Citation
  8. Acknowledgements

Installation

# Clone the github repo and go to the default directory 'HI-Diff'.
git clone https://github.com/zhengchen1999/HI-Diff.git
cd HI-Diff
conda create -n hi_diff python=3.9
conda activate hi_diff
pip install -r requirements.txt

Datasets

Dataset Description Link
GoPro Training + Testing Google Drive
RealBlur (RealBlur-R + RealBlur-J) Training + Testing Google Drive
Test Testing: GoPro + HIDE + RealBlur Google Drive

Download training and testing datasets and put them into the corresponding folders of datasets/. See datasets for the detail of the directory structure.

Models

Model Training Dataset PSNR (dB) SSIM Model Zoo Visual Results
HI-Diff-GoPro GoPro 33.33 0.964 Google Drive Google Drive
HI-Diff-RealBlur-R RealBlur-R 41.01 0.978 Google Drive Google Drive
HI-Diff-RealBlur-J RealBlur-J 33.70 0.941 Google Drive Google Drive

The performance is reported on the corresponding testing datasets.

Training

Testing

Results

We achieved state-of-the-art performance on synthetic and real-world blur dataset. Detailed results can be found in the paper.

Evaluation on Synthetic Datasets (click to expand) - quantitative comparisons in Table 2 of the main paper

- visual comparison in Figure 4 of the main paper

Evaluation on Real-World Datasets (click to expand) - quantitative comparisons in Table 3 of the main paper

- visual comparison in Figure 5 of the main paper

Citation

If you find the code helpful in your resarch or work, please cite the following paper(s).

@inproceedings{chen2023hierarchical,
  title={Hierarchical Integration Diffusion Model for Realistic Image Deblurring}, 
  author={Chen, Zheng and Zhang, Yulun and Ding, Liu and Bin, Xia and Gu, Jinjin and Kong, Linghe and Yuan, Xin},
  booktitle={NeurIPS},
  year={2023}
}

Acknowledgements

This code is built on BasicSR, Restormer, and DiffIR.