The implementation of Anonymous Submission 3582 "Adaptive Network Combination for Single-Image Reflection Removal: A Domain Generalization Perspective"
This repo has been tested in the following environment
- Platforms: Ubuntu 20.04
- Framework: We use PyTorch 1.8, and it should work with PyTorch 1.2 - PyTorch 1.10
- Requirements: opencv-python, tensorboardX, visdom, dominate, scikit-image, etc
- GPU: We use RTX 3090 with CUDA 11
We provide the pre-trained model via git-lfs (large file storage), please clone this repository via one of the following methods.
git lfs clone https://github.com/Anonymous3582/AdaNECorgit clone https://github.com/Anonymous3582/AdaNEC, then download the pre-trained model from this page, and place it in thecheckpoints/ERRNet_AdaNEC_OFfolder.
Note that we have provided the Real20 testing set in the datasets folder, and the SIR^2 subsets are not provided due to their policy. You can request for them and organize the SIR^2 sub-datasets as Real20.
- 20 real testing images from Berkeley real dataset.
- Three sub-datasets, namely Objects, Postcard, Wild from SIR^2 dataset
We provide two working schemes of AdaNEC, i.e., output fusion (OF) and network interpolation (NI).
The OF model has been provided, you can run the OF scheme via
$ bash test_AdaNEC_OF.shThe NI model can be generated by running python merge_model.py under the checkpoints/ERRNet_AdaNEC_NI directory.
And then the NI scheme can be excueted via
$ bash test_AdaNEC_NI.shParticularly note that you should generate an NI model for each testing dataset. Please see merge_model.py for more details.
The results will be placed in the results folder.
The code is built upon ERRNet, one of the backbone models of our work. We will include their github commits when releasing the code publicly. We highly appreciate all the authors of ERRNet, IBCLN, and RAGNet for their efforts.