/TSCN

Caffe implementation of "Two-Stage Convolutional Network for Image Super-Resolution" (ICPR 2018)

Primary LanguageMATLAB

TSCN

Code of "Two-Stage Convolutional Network for Image Super-Resolution" (ICPR 2018)

[Paper] [Paper download] [Poster]


The schematics of the proposed Two-Stage Convolutional Network.


Architecture of the multipath information fusion module.


Speed and accuracy trade-off. (x3 on Set5)

Run test

  • Install Caffe, Matlab R2017a
  • Run testing:
$ cd ./test
$ matlab -nodisplay
>> test_TSCN

The training dataset is 291 images.

The results are stored in "results" folder, with both reconstructed images and PSNR/SSIM/IFCs.

Results

Method Scale Set5 Set14 B100 Urban100
DRRN ×2 37.74/0.9591 33.23/0.9136 32.05/0.8973 31.23/0.9188
TSCN ×2 37.88/0.9602 33.28/0.9147 32.09/0.8985 31.29/0.9198
DRRN ×3 34.03/0.9244 29.96/0.8349 28.95/0.8004 27.53/0.8378
TSCN ×3 34.18/0.9256 29.99/0.8351 28.95/0.8012 27.46/0.8362
DRRN ×4 31.68/0.8888 28.21/0.7721 27.38/0.7284 25.44/0.7638
TSCN ×4 31.82/0.8907 28.28/0.7734 27.42/0.7301 25.44/0.7644

Train

  • step 1: Compile Caffe with train/include/caffe/layers/l1_loss_layer.hpp, train/src/caffe/layers/l1_loss_layer.cpp and train/src/caffe/layers/l1_loss_layer.cu
  • step 2: Run data_aug.m to get the augmented 291 dataset
  • step 3: Run generate_train_TSCN.m to convert training images to hdf5 file
  • step 4: Run generate_test_TSCN.m to convert testing images to hdf5 file for valid model during the training phase
  • step 5: Run train.sh to train ×2 model (Manually create directory caffemodel_x2)

Note: You can train the stage-one model by run train_stage_one.sh

Citation

If you find TSCN useful in your research, please consider citing:

@inproceedings{Hui-TSCN-2018,
  title={Two-Stage Convolutional Network for Image Super-Resolution},
  author={Hui, Zheng and Wang, Xiumei and Gao, Xinbo},
  booktitle={ICPR},
  pages={2670--2675},
  year={2018}
}