Skip to content

ManvithaPonnapati/RAISR.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RAISR.jl

RAISR implementation in julia

This is the julia implementation of the paper published by Yaniv Romano, John Isidoro, and Peyman Milanfar, Fellow, IEEE in Octo 2016 titled RAISR: Rapid and Accurate Image Super Resolution

Requirements

Pkg.add("Images") Pkg.add("Distributions") Pkg.add("JLD") - To write your weights/filters to a file after training Pkg.add("Krylov") - For CGLS solver

To train on your own dataset replace the train data folders with your own code and run the the create_low_resolution_images_from_ground_truth.jl to createlow resolution images from your ground truth images

You can use the code in the create_interpolated_images to create cheap linear upscaling of your images

train_patch_5_grad_9 and train_patch_11_grad_9 - are the training files they are pretty much the same code except for changes in the patch sizes and gradient patch sizes. Both training files have code to learn 8 free samples from each patch.

test_patch_11_9_with_free_training and test_patch_5_9_with_free_training are the notebooks using the filters to test some sample images. They are both the same code once again except for the difference in the patch sizes.There are different .jld learned filters on the sample data provided.

checkout the parallel_everywhere_function - it has a function that can take a whole image and learn the Q,V required . Remember, all you have to do is to combine the sum of the results of parallel execution into one big matrix Q/V. So you can learn filters on images parallely. It takes about 15 seconds on 1 core on mac per image

About

RAISR implementation in julia

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published