Caffe implementation of "Fast and Accurate Single Image Super-Resolution via Information Distillation Network" (CVPR 2018)
Caffe implementation of "Fast and Accurate Single Image Super-Resolution via Information Distillation Network"
[arXiv] [CVF] [Poster] [TensorFlow version]
The schematics of the proposed Information Distillation Network
The average feature maps of enhancement units
The average feature maps of compression units
Visualization of the output feature maps of the third convolution in each enhancement unit
$ cd ./test
$ matlab
>> test_IDN
Note: Please make sure the matcaffe is complied successfully.
./test/caffemodel/IDN_x2.caffemodel
, ./test/caffemodel/IDN_x3.caffmodel
and ./test/caffemodel/IDN_x4.caffemodel
are obtained by training the model with 291 images, and ./test/caffemodel/IDN_x4_mscoco.caffemodel
is got through training the same model with mscoco dataset.
The results are stored in "results" folder, with both reconstructed images and PSNR/SSIM/IFCs.
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
data_aug.m
to augment 291 datasetgenerate_train_IDN.m
to convert training images to hdf5 filegenerate_test_IDN.m
to convert testing images to hdf5 file for valid model during the training phasetrain.sh
to train x2 model (Manually create directory caffemodel_x2
)Set5,Set14,B100,Urban100,Manga109
With regard to the visualization of mean feature maps, you can run test_IDN
first and then execute the following code in Matlab.
inspect = cell(4, 1);
for i = 1:4
inspect{i} = net.blobs(['down' num2str(i)]).get_data();
figure;
imagesc(mean(inspect{i}, 3)')
end
Scale | Model Size |
---|---|
×2 | 552,769 |
×3 | 552,769 |
×4 | 552,769 |
If you find IDN useful in your research, please consider citing:
@inproceedings{Hui-IDN-2018,
title={Fast and Accurate Single Image Super-Resolution via Information Distillation Network},
author={Hui, Zheng and Wang, Xiumei and Gao, Xinbo},
booktitle={CVPR},
pages = {723--731},
year={2018}
}