Codes for "Improved multiple-image-based reflection removal algorithm using deep neural networks" (MIRM)
[paper]
Prepare the images with slight shifts (light filed images) into the './scenes_train' folder for reflection image synthesizing and training the networks. We only use five of each group of images ("3_3": the central one, "2_2": the top-left one, "2_4": the top-right one, "4_2": the bottom-left one, "4_4": the bottom-right one) to generate small npy patch for speeding up the training process. This is implemented by
python npy_save_database_5views.py
All the npy files will be stored in the 'info_four_closest_corners_train_set' folder (npy file path). Then
- Train the disparity network:
python train_disparity.py
- Train the edge reconstruction network:
python train_edge.py --train_label_dir (generated npy file path)
- Train the image reconstruction network:
python train_img_rec.py --train_label_dir (generated npy file path)
- We also provide the fine tuned pre-trained models and the synthesized test data for evaluation.
python image_separation.py --test_imgs_folder (test images path) ... --model_dir (model parameter path)
T. Li, Y.-H. Chan, and D.P.K. Lun. "Improved multiple-image-based reflection removal algorithm using deep neural networks." IEEE Transactions on Image Processing, 2020.