Skip to content
Implementation for our CVPR 2018 paper
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
models
README.md
data.py
evaluate.py Import from private repo. Nov 9, 2018
model_recurrent_s2_u128_avg_t7.py
predictor.py
requirement.txt
train.py
util.py

README.md

Image Super-resolution via Dual-state Recurrent Neural Networks (CVPR 2018)

[Paper Link]

Citation

@inproceedings{han2018image,  
	title={Image super-resolution via dual-state recurrent networks},
	author={Han, Wei and Chang, Shiyu and Liu, Ding and Yu, Mo and Witbrock, Michael and Huang, Thomas S},
	booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
	year={2018}
}

Dependencies

  • Common python dependencies can be installed via pip install -r requirements.txt
  • Lingvo (for inference only), see linvgo project page for installation instructions.

Data

There is a very helpful repo collected download links for all the training and test sets needed here.

Training

The training data is specified by a file list of HR images. No futher pre-processing is needed as we perform downsampling and augmentation on-the-fly.

Use train.py and the model specification file model_recurrent_s2_u128_avg_t7.py to start a training job.

Inference

We release our models in tensorflow lingvo format such that the models are self contained for inference tasks. Each model consists of by a inference_graph.pbtxt and a checkpoint file.

To run the inference with provided pre-trained models on an image, use provided predictor.py: Example:

`python predictor.py --checkpoint=models/x3/ckpt-00754300 --inference_graph=models/x3/inference.pbtxt --image_path=./cat.png --output_dir=./`

The script will write super-resolved images to output_dir.

Evaluation

Use evaluate.py to compute average PSNR on a test set after saving all the model predicted images. Eval set is also specified by a file list. Example:

`python evaluate.py --hr_flist=flists/set5.list --prediction_dir=${your_pred_dir}`

Acknowledgement

This code is partly based on a previous work from our group [here]

You can’t perform that action at this time.