tegg89 / SRCNN-Tensorflow

Image Super-Resolution Using Deep Convolutional Networks in Tensorflow https://arxiv.org/abs/1501.00092v3
MIT License
595 stars 279 forks source link
computer-vision python super-resolution tensorflow

SRCNN-Tensorflow

Tensorflow implementation of Convolutional Neural Networks for super-resolution. The original Matlab and Caffe from official website can be found here.

Prerequisites

This code requires Tensorflow. Also scipy is used instead of Matlab or OpenCV. Especially, installing OpenCV at Linux is sort of complicated. So, with reproducing this paper, I used scipy instead. For more imformation about scipy, click here.

Usage

For training, python main.py
For testing, python main.py --is_train False --stride 21

Result

After training 15,000 epochs, I got similar super-resolved image to reference paper. Training time takes 12 hours 16 minutes and 1.41 seconds. My desktop performance is Intel I7-6700 CPU, GTX970, and 16GB RAM. Result images are shown below.

Original butterfly image: orig
Bicubic interpolated image: bicubic
Super-resolved image: srcnn

References