This is a implementation of "Accurate Image Super-Resolution Using Very Deep Convolutional Networks" (CVPR 2016 Oral Paper) in caffe.
VDSR (Very Deep network for Super-Resolution) is an end-to-end network with 20 convolution layers for single image super-resolution. The performance of VDSR is better than other state-of-the-art SISR methods, such as SRCNN, A+ and CSCN (My implementation of CSCN).
-
Place the "Train" folder into "($Caffe_Dir)/examples/", and rename "Train" to "VDSR"
-
Open MATLAB and direct to ($Caffe_Dir)/example/VDSR, run "generate_train.m" and "generate_test.m" to generate training and test data. (Code from SRCNN)
-
To train VDSR, run ./build/tools/caffe train --solver examples/VDSR/VDSR_solver.prototxt
-
Set clip_gradients in VDSR_solver.prototxt to solve gradient explosion problem, 0.1 or 1 is a good choice
-
Change the learning rate when the error plateaus
-
"Demo_SR_Conv.m" is a simple test code. Just run it and you will get the result.
-
"VDSR_170000.mat" is a model trained by myself.
Because of the limitation of hardware conditions,I didn't do completed training. So there are some differences between this implementation and original paper.
This implementation: 91 images (with data augumentation and only factor 2)
Original paper: 291 images (with data augumentation and factor 2, 3 and 4)
This implementation: Casade of 2x to generate 3x and 4x result
Original paper: Multi scale in one model
This implementation: about 30 epoch
Original paper: about 80 epoch
DataSet | Original | This Implementation |
---|---|---|
Set5 | 37.53 | 37.46 |
Set14 | 33.03 | 32.83 |
BSD100 | 31.90 | 31.65 |
DataSet | Original | This Implementation |
---|---|---|
Set5 | 33.66 | 33.52 |
Set14 | 29.77 | 29.55 |
BSD100 | 28.82 | 28.62 |
DataSet | Original | This Implementation |
---|---|---|
Set5 | 31.35 | 31.14 |
Set14 | 28.01 | 27.81 |
BSD100 | 27.29 | 27.13 |
- Add Super-resolution image results
- Complete experiments
Please cite [1] if you use this code in your work, thank you!
[1] Jiwon Kim, Jung Kwon Lee, Kyoung Mu Lee, Accurate Image Super-Resolution Using Very Deep Convolutional Networks, arXiv:1511.04587, 2015