Home

Awesome

Deep Photo Scan

[Page] [Paper] [SupDoc] [Demo]

Alt Text

Deep Photo Scan: Semi-supervised learning for dealing with the real-world degradation in smartphone photo scanning<br> Man M. Ho and Jinjia Zhou<br> In ArXiv, 2021.

Prerequisites

Get Started

1. Clone this repo

git clone https://github.com/minhmanho/dpscan.git
cd dpscan

2. Fetch the pre-trained model

You can download the pre-trained model (1D-DPScan+RECA+SSL) at here (148MB) or run the following script:

./models/fetch_model.sh

Note: The pre-trained model of G-DPScan+RECA+LA+SSL will be published soon.

Smartphone-scanned Photo Restoration

Run our semi-supervised Deep Photo Scan to restore smartphone-scanned photos as:

CUDA_VISIBLE_DEVICES=0 python run.py \
    --in_dir ./data/in/ \
    --out_dir ./data/out/ \
    --ckpt ./models/dpscan_saved_weights.pth.tar \
    --size 1072x720

Check DPScan Page for the results.

DIV2K-SCAN dataset

Please check DPScan Page for more information.

Citation

If you find this work useful, please consider citing:

@misc{ho2021deep,
    title={Deep Photo Scan: Semi-supervised learning for dealing with the real-world degradation in smartphone photo scanning},
    author={Man M. Ho and Jinjia Zhou},
    year={2021},
    eprint={2102.06120},
    archivePrefix={arXiv},
    primaryClass={cs.CV}
}

Acknowledgements

We would like to thank:

Liu, Hanxiao, Andrew Brock, Karen Simonyan, and Quoc V. Le. "Evolving Normalization-Activation Layers." 
ArXiv (2020).
Zhang, Richard. "Making convolutional networks shift-invariant again." 
ICML (2019).
Timofte, Radu, Shuhang Gu, Jiqing Wu, and Luc Van Gool.
"Ntire 2018 challenge on single image super-resolution: Methods and results."
CVPR Workshops (2018).

License

This work, including the trained models, code, and dataset, is for non-commercial uses and research purposes only.

Contact

If you have any questions, feel free to contact me (maintainer) at manminhho.cs@gmail.com