XReflection is a neat toolbox tailored for single-image reflection removal(SIRR). We offer state-of-the-art SIRR solutions for training and inference, with a high-performance data pipeline, multi-GPU/TPU support, and more!
- [2025-07-16] DSRNet is available in the model zoo. More models are on the way!
- [2025-05-26] Release a training/testing pipeline.
- All-in-one intergration for the state-of-the-art SIRR solutions. We aim to create an out-of-the-box experience for SIRR research.
- Multi-GPU/TPU support via PyTorchLightning.
- Pretrained model zoo.
- Fast data synthesis pipeline.
Please visit the documentation for more features and usage.
# Build from source
git clone https://github.com/hainuo-wang/XReflection.git
cd XReflection
# Install dependencies
pip install -r requirements.txt
python setup.py developpython tools/train.py --config configs/train_config.yaml --resume pretrained.ckpt --test_onlypython tools/train.py --config configs/train_config.yamlpython tools/train.py --config configs/train_config.yaml --resume pretrained.ckpt- 7,643 images from the Pascal VOC dataset, center-cropped as 224 x 224 slices to synthesize training pairs;
- 90 real-world training pairs provided by Zhang et al.;
- 200 real-world training pairs provided by IBCLN.
- 45 real-world testing images from CEILNet dataset;
- 20 real testing pairs provided by Zhang et al.;
- 20 real testing pairs provided by IBCLN;
- 454 real testing pairs from SIR^2 dataset, containing three subsets (i.e., Objects (200), Postcard (199), Wild (55)).
Download all in one from https://checkpoints.mingjia.li/sirs.zip
Access pretrained models for various SIRR algorithms: TODO
This project is licensed under the Apache License 2.0. See the LICENSE file for details. The authors would express gratitude to the computational resource support from Google's TPU Research Cloud.
