Skip to content

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/NPU support, and more!

Notifications You must be signed in to change notification settings

hainuo-wang/XReflection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

XReflection - An Easy-to-use Toolbox for Single-image Reflection Removal

XReflection Logo

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!


📰 News and Updates

  • [Upcoming] More models are on the way!
  • [2025-05-26] Release a training/testing pipeline.

💡 Key Features

  • 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.

📝 Introduction

Please visit the documentation for more features and usage.


🚀 Installation

Requirements

Make sure you have the following system dependencies installed:

  • Python >= 3.10
  • PyTorch >= 2.5
  • PyTorchLightning >= 2.5
  • CUDA >= 12.1 (for GPU support)

Installation Commands

# Clone the repository
git clone https://github.com/your-username/XReflection.git
cd XReflection

# Install dependencies
pip install -r requirements.txt
python setup.py develop

📦 Getting Started

Inference with Pretrained Models

Run reflection removal on an image:

TODO

Training a Model

python tools/train.py --config configs/train_config.yaml

Data Preparation

Training dataset

  • 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 (In our training setting 2, † labeled in our paper).

Testing dataset

  • 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


🌟 Features in Detail

Pretrained Model Zoo

Access pretrained models for various SIRR algorithms: TODO


🙏 License and Acknowledgement

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.

About

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/NPU support, and more!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •