Improving the Stability and Efficiency of Diffusion Models for Content Consistent Super-Resolution
[Lingchen Sun](https://scholar.google.com/citations?hl=zh-CN&tzom=-480&user=ZCDjTn8AAAAJ)
1,2
| [Rongyuan Wu](https://scholar.google.com/citations?user=A-U8zE8AAAAJ&hl=zh-CN)
1,2 |
[Jie Liang](https://scholar.google.com.sg/citations?user=REWxLZsAAAAJ&hl)
2 |
[Zhengqiang Zhang](https://scholar.google.com/citations?hl=zh-CN&user=UX26wSMAAAAJ&view_op=list_works&sortby=pubdate)
1,2 |
[Hongwei Yong](https://scholar.google.com.hk/citations?user=Xii74qQAAAAJ&hl=zh-CN)
1 |
[Lei Zhang](https://www4.comp.polyu.edu.hk/~cslzhang)
1,2
1The Hong Kong Polytechnic University,
2OPPO Research Institute
:star: If CCSR is helpful to your images or projects, please help star this repo. Thanks! :hugs:
## ๐งกเพเฝฒ What's New in CCSR-v2?
We have implemented the CCSR-v2 code based on the [Diffusers](https://github.com/huggingface/diffusers). Compared to CCSR-v1, CCSR-v2 brings a host of upgrades:
- ๐ ๏ธ**Step Flexibility**: Offers flexibility in diffusion step selection, **allowing users to freely adjust the number of steps to suit their specific requirements**. This adaptability **requires no additional re-training**, ensuring seamless integration into diverse workflows.
- โก**Efficiency**: Supports highly efficient inference with **as few as 2 or even 1 diffusion step**, drastically reducing computation time without compromising quality.
- ๐**Enhanced Clarity**: With upgraded algorithms, CCSR-v2 restores images with crisper details while maintaining fidelity.
- โ๏ธ**Results stability**: CCSR-v2 exhibits significantly improved stability in synthesizing fine image details, ensuring higher-quality outputs.
- ๐**Stage 2 Refinement**: In CCSR-v2, the output $\hat{x}_{0 \gets T}$ from Stage 1 is now directly fed into Stage 2, streamlining the restoration process into an efficient one-step diffusion workflow. This strategy boosts both speed and performance.
![ccsr](figs/fig.png)
Visual comparisons between the SR outputs with the same input low-quality image but two different noise samples by different DM-based
methods. `S` denotes diffusion sampling timesteps. Existing DM-based methods, including StableSR, PASD, SeeSR, SUPIR and AddSR, **show noticeable instability with the different noise samples**. OSEDiff directly takes low-quality image as input without
noise sampling. It is deterministic and stable, but **cannot perform multi-step diffusion** for high generative capacity. In contrast, **our proposed CCSR method
is flexible for both multi-step diffusion and single-step diffusion, while producing stable results with high fidelity and visual quality**.
## โฐ Update
- **2024.12.12**: Code and models for CCSR-v2 are released. ๐ Please refer to this [branch](https://github.com/csslc/CCSR/tree/CCSR-v2.0).
- **2024.9.25**: โญ[CCSR-v2](https://arxiv.org/pdf/2401.00877) is released, offering reduced step requirements and supporting flexible diffusion step selection (2 or even 1 step) during the inference stage without the need for re-training.
- **2023.12.23**: Code and models for [CCSR-v1](https://arxiv.org/pdf/2401.00877v1) are released. Please refer to this [branch](https://github.com/csslc/CCSR/tree/CCSR-v1.0).
## ๐ Overview Framework
![ccsr](figs/framework.png)
## ๐ Visual Results
### Demo on Real-world SR
[