Code covered by the BSD License  

Highlights from
Image Super-Resolution - Iterative Back Projection Algorithm

4.25

4.2 | 4 ratings Rate this file 125 Downloads (last 30 days) File Size: 55.6 KB File ID: #33839
image thumbnail

Image Super-Resolution - Iterative Back Projection Algorithm

by

 

19 Nov 2011 (Updated )

A simple maximum-likelihood algorithm for super-resolution.

| Watch this File

File Information
Description

This project is a simple implementation of the Iterative Back-Projection (IBP)
algorithm for solving the Super-Resolution problem. It was first proposed
by Michal Irani in her 1991 paper "Improving resolution by image
registration". The imaging model being used is described by a paper by
Michael Elad, "Super-Resolution Reconstruction of an image". Both papers
can easily be found through a search in Google Scholar.

I've done two simplifications to the imaging model:
1) The image blur is assumed to be spatially invariant.
2) The spatial transformation model is a global translation.

To run the example code, follow the following steps:
1) Run SRSetup.m
2) Run SRExample.m

The example code operates on a dataset that is generated synthetically from
a reference image. Thus, the exact values for the blur sigma and the
translation offsets are being used.

Required Products MATLAB
MATLAB release MATLAB 7.11 (R2010b)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (17)
22 Jun 2014 srikanth  
21 Jun 2014 Lin  
19 Jun 2014 srinidhi

were do i get the code for this?

17 Sep 2013 yadhul

how can i use this one for video frame.... i want to change low resolution video frame to high resolution video frame how can i do it.. can i do it with this code...

12 Sep 2012 Steffen B. Petersen

When generating the stack of LowRes Images the code only produces a diagonal shift, since the offsets along x and y are identical.

change the following line in SynthDataset:

offsets(i,:)=2*rand -1 --> offset(i,:)=2*rand(2,1)-1

11 May 2012 imi kh

Can some one tell me why we model noise as additive Gaussian noise in most of the super-resolution algorithms.

27 Feb 2012 Yitzi Pfeffer

In order to avoid divergence when using a large number of LR images. Try to use a coefficient smaller than 1 (I tried 0.25) in the update equation for x:
x = x + 0.25*res; instead of x = x + res; This ensures smaller (and safer) steps in the Gradient Descent procedure.

05 Jan 2012 imi kh

well i do add laplasian term as a prior, but i think the problem lies some where else because if you increase number of low resolution images the output destroyed.

05 Jan 2012 imi kh

Can you please increase the images up to 30 and see the results.

05 Jan 2012 Victor May

Increasing the number of images causes the solution to suffer from overfit. Adding a prior on the image should help. Search the web for papers on priors for super-resolution.

05 Jan 2012 imi kh

Well the problem is now on increase the number of low resolution images, if you increase the numImages =10 and run the code the output is not good whats the problem ?

22 Dec 2011 Eric

Line 41 of SRExample reads:
im = imread('C:\Vic\Work\Src\SuperResolution\Data\typewrtr.jpg');
This doesn't run on somebody else's machine without tweaking.

29 Nov 2011 imi kh

Hello,
The code only deals with translation motion, how to extend it if the low resolution images are also rotated,
still code is not updated.

26 Nov 2011 Victor May

I posted it. It might take a few days until it will show up here.

26 Nov 2011 imran khan

Hello victor,
Where is the updated file, kindly post the updated script.

26 Nov 2011 Victor May

Hi Imi,
the function SynthDataset has an output called croppedOriginal which crops the original image to the size of the super-resolved image. In order to prevent confusion about this, I've updated the example script to include a mean-square error calculation.

25 Nov 2011 imi kh

Hello,
How to calculate PSNR for comparison purpose, because original image and super-resolved image have different sizes, kindly look into the matter.

Updates
21 Nov 2011

Fixed a typo in the description.

26 Nov 2011

Added a calculation of the reconstruction error at the example script.

Contact us