Xingyu Liu1,2, Zewei He1,2,✉, Yu Chen1,2, Chunyu Zhu3, Zixuan Chen4, Xing Luo2, Zhe-Ming Lu1,2
1Huanjiang Laboratory
2Zhejiang University
3Xidian University
4The Chinese University of Hong Kong
✉ Corresponding author
[2026-09-05]Inference codes and pre-trained models are released[2026-07-02]Dataset page is online. 👉Our RDRF dataset is made available now👈[2026-06-18]Our paper is accepted by ECCV'2026.[2026-05-27]The UR3 Challenge is launched on CodaBench in conjunction with LoViF 2026 at ECCV'2026.[2026-04-28]Our project page is online.
We organize The Challenge on Unified Removal of Raindrops and Reflections in conjunction with the LoViF 2026 Workshop at ECCV 2026. This challenge aims to promote research on restoring clean images from real-world inputs degraded by both raindrops and reflections. Participants are invited to develop robust restoration methods and evaluate their performance on the RDRF benchmark.
For more details, please visit the Challenge page and the LoViF 2026 Workshop page.
We propose DiffUR3, a diffusion-based two-stage pipeline for unified removal of raindrops and reflections. Given a low-quality image, the restoration stage first produces an initial clean result, which is then used together with the original input as complementary conditions for the multi-condition diffusion generation stage. To better fuse these conditions, we introduce a Modulate&Gate module for adaptive latent-space condition selection, and a Fidelity Encoder to alleviate VAE-induced distortions and preserve local details.
We introduce RDRF, a real-world dataset for unified raindrop and reflection removal. The dataset contains paired low-quality and ground-truth images captured in real-world scenarios with diverse scenes, raindrop patterns, and reflection conditions.
Please download the dataset and organize it following the instructions in the Dataset Repo.
# clone this repo
git clone https://github.com/XingyuLiu00/DiffUR3.git
cd DiffUR3
# create environment
conda create -n diffur3 python=3.8 -y
conda activate diffur3
pip install -r requirements.txtThe released inference code is self-contained and does not depend on BasicSR.
Download stage1.pth, stage2.pt, fidelity_encoder.pt, and v2-1_512-ema-pruned.ckpt, and put them in the pretrained_models folder:
pretrained_models/
├── stage1.pth
├── stage2.pt
├── fidelity_encoder.pt
└── v2-1_512-ema-pruned.ckpt
Run the following command for inference:
python inference.py \
--input /path/to/input_or_directory \
--output ./results \
--ckpt_stage1 ./pretrained_models/stage1.pth \
--ckpt_stage2 ./pretrained_models/stage2.pt \
--fidelity_ckpt ./pretrained_models/fidelity_encoder.pt \
--sd_ckpt ./pretrained_models/v2-1_512-ema-pruned.ckpt \
--tile \
--tile_size 640 \
--tile_stride 320the expected outputs are:
results/
├── stage1/
│ └── example.png # Stage 1 intermediate result
└── example_output.png # Final Stage 2 result
For evaluation, run the following command:
pip install -r requirements-eval.txt
python evaluate.py --input ./results --gt /path/to/GT --metrics allIf you find this work useful for your research, please consider citing:
@inproceedings{Liu2026ECCV-DiffUR3,
title = {Unified Removal of Raindrops and Reflections: A New Benchmark and A Novel Pipeline},
author = {Xingyu Liu and Zewei He and Yu Chen and Chunyu Zhu and Zixuan Chen and Xing Luo and Zhe-Ming Lu},
booktitle = {European Conference on Computer Vision (ECCV)},
year = {2026}
}For any questions or inquiries, please contact:
- Zewei He:
zeweihe@zju.edu.cn - Xingyu Liu:
xingyu_liu@zju.edu.cn



