GithubHelp home page GithubHelp logo

catree / shift-invariant-deblurring Goto Github PK

View Code? Open in Web Editor NEW

This project forked from huacheng/shift-invariant-deblurring

0.0 2.0 0.0 2.97 MB

This Program is part of My Super-Resolution Project. It has implemented a Bind Deblurring Algorithm for Shift-Invariant-Deblurring

MATLAB 100.00%

shift-invariant-deblurring's Introduction

This program is part of my Super-Resolution Project(SR.pdf)
Here I have implemented Shift-Invariant Deblurring

Creative Commons(CC) Hua Cheng 2011
    [email protected]
--------------------------------------------------------------------------------

The Program goes as follow:
--------------------------------------------------------------------------------

Running:
    deblur.m

    There are some test images at the img/ directory
--------------------------------------------------------------------------------

Documentation:
    I have the Chinese Documentation ONLY, and I not going to translate
    it into English,cause I have no time and it makes no sense. If you 
    are not familar with Chinese, you can read the Prona(17),Osher(18),
    Xu(16) and Shan(13),which are listed on my Reference of SR.pdf.
--------------------------------------------------------------------------------

Data Flow:
    The details of data flow of the deblur.m is written on my SR.pdf document
    in English, see the Algorithm 1 and the Algorithm 2 of SR.pdf.
    
    Here I am going to talk about How do I make use of Prona(17),Osher(18),
    Xu(16) and Shan(13)'s result.

    <<< First >>>:
        A blurred image I is processed Non-Linear Deffusion(NLD),which is 
    the work of Prona(17). The NLD will reduce the noise signals, but 
    protect the sharp edges. Because of the Shock Filter(Osher(18)) is sensitive
    to noise, that's why I use NLD before Shock Filter processing. You can 
    find the similar IDEA in the works of Cho(11),Xu(16) or some one else.
   
        I call this process a pre-preprocess.(^!^)

    <<< Second >>>:
        After the pre-preprocess, the image will be preprocessed by the Shock 
    Filter(Osher(18)), and then starting the First Phase Kernel Estimation of the 
    Two Phase Processes according to the idea of Xu(16).
    
        I call the First Phase Kernel Estimation as the Coarse Kernel Estimation,
    which is implemented as coarse_kernel_est.m function.Before the image 
    processed by coarse_kernel_est.m, it is processed by H_compute.m and M_compute.m
    function.

        On the Second Phase Kernel Estimation, also known as Iterative Surpport 
    Detection(ISD) Kernel Refinement.I have to say that I am failed to implement 
    the idea of ISD, when I was using the commented code of ISD part, I can't 
    get any improvement.So I comment the code in my deblur.m and havn't designed
    a refine_kernel_est.m function file.
    
        If any one who wants to try the ISD idea, you are free to use my half-baked code. 
    If you get any improvement based on my "code", it's my honor! And if you are 
    willing to email me your baked code, thank you very much. <^!^>

    <<< At Last >>>:
        The image was deconvoluted by Shan(13)'s Deconvolution Algorithm,known as 
    multi_deriv_deconv.m function in my deblur.m.
-------------------------------------------------------------------------------------

Good Luck, Hope you enjoy it!{^!^}

Any Question, Be free to contact me!  
    

shift-invariant-deblurring's People

Contributors

huacheng avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.