Skip to content

My implementaion of super-resolution based on dual-path networks. It can be used directly to reconstruct your low-resolution image to high-resolution. Also, you can use your dataset to train your networks

License

Notifications You must be signed in to change notification settings

zhitao654321/super-resolution-SRDPNs-tensorflow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

super-resolution-SRDPNs-tensorflow

tensorflow implementation of super-resolution:

My implemetaion of super-resolution based on dual-path networks but is quit different from orignal networks,the differences are shown as fllowing:

  1. I modifed the structure of the dual-path blocks for faster training spped.
  2. I introduced bottleneck to reduce dimension and deconvolution to restore the detail.
  3. I introduce the preceptual loss and gram loss based on feature space of VGG19.

Dependencies:

tensorflow >=1.3.0
Scipy >= 0.18
GPU memory > 7G

Usage:

First, you need to download the module of VGG19 here for loss function caulation.
Then, Move downloaded file imagenet-vgg-verydeep-19.mat to SRDPNs folder in this project.

For testing:

Open main.py,change the data path to your data,for example:
flags.DEFINE_string("testimg", "2.bmp", "Name of test image")
Excute the python main.py for testing, and The result will be saved at sample directory.

For training:

Put your own dataset into Train directory,change the code
as flags.DEFINE_boolean("is_train",True,"True for training, False for testing") and excute python main.py for training.

Result:

After training 100 epochs on 120 images, the networks can be well trained and generate the high resolution image. It takes about 7 hours to train the model,and both training and testing are preformed on single NIVIDA 1080ti GPU.Empirically,i set the initial learning rate 0.0001 and set the decay rate 0.98 with every 1000 steps.the results are shown as following.

low-resolution result
low-resolution result
low-resolution result

About

My implementaion of super-resolution based on dual-path networks. It can be used directly to reconstruct your low-resolution image to high-resolution. Also, you can use your dataset to train your networks

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages