Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > sci.image.processing > #4165 > unrolled thread

MOtion deblur

Started bypdaraja@gmail.com
First post2016-10-26 23:57 -0700
Last post2016-11-04 21:08 -0400
Articles 11 — 3 participants

Back to article view | Back to sci.image.processing


Contents

  MOtion deblur pdaraja@gmail.com - 2016-10-26 23:57 -0700
    Re: MOtion deblur Martin Leese <please@see.Web.for.e-mail.INVALID> - 2016-10-27 11:05 -0600
      Re: MOtion deblur pdaraja@gmail.com - 2016-10-30 22:40 -0700
        Re: MOtion deblur Martin Leese <please@see.Web.for.e-mail.INVALID> - 2016-10-31 09:20 -0600
          Re: MOtion deblur pdaraja@gmail.com - 2016-11-01 00:25 -0700
            Re: MOtion deblur pdaraja@gmail.com - 2016-11-01 00:26 -0700
            Re: MOtion deblur Martin Leese <please@see.Web.for.e-mail.INVALID> - 2016-11-01 09:37 -0600
              Re: MOtion deblur pdaraja@gmail.com - 2016-11-02 23:12 -0700
                Re: MOtion deblur Martin Leese <please@see.Web.for.e-mail.INVALID> - 2016-11-03 08:51 -0600
                  Re: MOtion deblur pdaraja@gmail.com - 2016-11-03 21:43 -0700
                  Re: MOtion deblur dale <dale@dalekelly.org> - 2016-11-04 21:08 -0400

#4165 — MOtion deblur

Frompdaraja@gmail.com
Date2016-10-26 23:57 -0700
SubjectMOtion deblur
Message-ID<bfb8143c-fc6c-489b-9933-7ea0f3305413@googlegroups.com>
Hi all,
I am dinesh, working on the restoration of the motion blur due to fast moving of object. i have one doubt, if i want to deblur a blurred image, why i need to add some additive noise to recover them.in addition to that why the deconvolution algorithm requires the simulating of motion blur to restore the deblurred image.
please acknowledge me. thanks in advance.

[toc] | [next] | [standalone]


#4166

FromMartin Leese <please@see.Web.for.e-mail.INVALID>
Date2016-10-27 11:05 -0600
Message-ID<nutc3m$l7q$1@dont-email.me>
In reply to#4165
pdaraja@gmail.com wrote:
> Hi all,
> I am dinesh, working on the restoration of 
> the motion blur due to fast moving of object. 
 > i have one doubt, if i want to deblur a
 > blurred image, why i need to add some
 > additive noise to recover them.

You first need to understand how
deconvolution works.  Assume a model of the
blurring process:
     Input(s) * Blur(s) = Output(s)
         where s is the space domain
         * is convolution
         and Input(s) is the original
             unblurred image

Transform into the frequency domain
     Input(f) x Blur(f) = Output(f)
         where f is the frequency domain
         and x is simple multiplication

Now rearrange:
     Input(f) = Output(f) / Blur(f)
         where / is simple division

Note that where the denominator is zero, the
division will introduce infinities.
Infinities are bad, and represent lost
information; there is no possible way to
recover it.

So, you have to introduce a "fiddle factor"
to produce a usable result, be it one that
contains artifacts.  One way to do this is
to introduce additive noise.  There are
other ways.

 > in addition to that why the deconvolution
 > algorithm requires the simulating of
 > motion blur to restore the deblurred image.

It does not.  However, you do need to
estimate the blurring function, Blur(s).
For constant velocity blur typically this
would be its direction and length.

-- 
Regards,
Martin Leese
E-mail: please@see.Web.for.e-mail.INVALID
Web: http://members.tripod.com/martin_leese/

[toc] | [prev] | [next] | [standalone]


#4167

Frompdaraja@gmail.com
Date2016-10-30 22:40 -0700
Message-ID<c92ed908-121e-46d8-8751-dcdd00a10343@googlegroups.com>
In reply to#4166
On Thursday, October 27, 2016 at 10:35:22 PM UTC+5:30, Martin Leese wrote:
> pdaraja wrote:
> > Hi all,
> > I am dinesh, working on the restoration of 
> > the motion blur due to fast moving of object. 
>  > i have one doubt, if i want to deblur a
>  > blurred image, why i need to add some
>  > additive noise to recover them.
> 
> You first need to understand how
> deconvolution works.  Assume a model of the
> blurring process:
>      Input(s) * Blur(s) = Output(s)
>          where s is the space domain
>          * is convolution
>          and Input(s) is the original
>              unblurred image
> 
> Transform into the frequency domain
>      Input(f) x Blur(f) = Output(f)
>          where f is the frequency domain
>          and x is simple multiplication
> 
> Now rearrange:
>      Input(f) = Output(f) / Blur(f)
>          where / is simple division
> 
> Note that where the denominator is zero, the
> division will introduce infinities.
> Infinities are bad, and represent lost
> information; there is no possible way to
> recover it.
> 
> So, you have to introduce a "fiddle factor"
> to produce a usable result, be it one that
> contains artifacts.  One way to do this is
> to introduce additive noise.  There are
> other ways.
> 
>  > in addition to that why the deconvolution
>  > algorithm requires the simulating of
>  > motion blur to restore the deblurred image.
> 
> It does not.  However, you do need to
> estimate the blurring function, Blur(s).
> For constant velocity blur typically this
> would be its direction and length.
> 
> -- 
>

thank you so much martin.
i have one big doubt, if i have a blurred image as a input, how can i determine blur kernel and how can i restore it as deblurred.

[toc] | [prev] | [next] | [standalone]


#4168

FromMartin Leese <please@see.Web.for.e-mail.INVALID>
Date2016-10-31 09:20 -0600
Message-ID<nv7nfh$k9m$1@dont-email.me>
In reply to#4167
pdaraja@gmail.com wrote:
> On Thursday, October 27, 2016 at 10:35:22 PM UTC+5:30, Martin Leese wrote:
>> pdaraja wrote:
...
>>  > in addition to that why the deconvolution
>>  > algorithm requires the simulating of
>>  > motion blur to restore the deblurred image.
>>
>> It does not.  However, you do need to
>> estimate the blurring function, Blur(s).
>> For constant velocity blur typically this
>> would be its direction and length.
> 
> thank you so much martin.
> i have one big doubt, if i have a blurred 
> image as a input, how can i determine blur 
> kernel and how can i restore it as 
> deblurred.

How you determine Blur(s) depends on the
type of blur.  If the motion is at constant
velocity then you just need its direction
and length.  One way to do this is to
examine what would have been point sources
in the unblurred image.  These are blurred
to lines (with a length and direction).

You can then restore the image by applying
the deconvolution algorithm, making sure to
do something about the infinities.

-- 
Regards,
Martin Leese
E-mail: please@see.Web.for.e-mail.INVALID
Web: http://members.tripod.com/martin_leese/

[toc] | [prev] | [next] | [standalone]


#4169

Frompdaraja@gmail.com
Date2016-11-01 00:25 -0700
Message-ID<a0cb9b79-c019-4ecd-9904-4dbac6ad33d2@googlegroups.com>
In reply to#4168
On Monday, October 31, 2016 at 8:50:47 PM UTC+5:30, Martin Leese wrote:
> pdaraja wrote:
> > On Thursday, October 27, 2016 at 10:35:22 PM UTC+5:30, Martin Leese wrote:
> >> pdaraja wrote:
> ...
> >>  > in addition to that why the deconvolution
> >>  > algorithm requires the simulating of
> >>  > motion blur to restore the deblurred image.
> >>
> >> It does not.  However, you do need to
> >> estimate the blurring function, Blur(s).
> >> For constant velocity blur typically this
> >> would be its direction and length.
> > 
> > thank you so much martin.
> > i have one big doubt, if i have a blurred 
> > image as a input, how can i determine blur 
> > kernel and how can i restore it as 
> > deblurred.
> 
> How you determine Blur(s) depends on the
> type of blur.  If the motion is at constant
> velocity then you just need its direction
> and length.  One way to do this is to
> examine what would have been point sources
> in the unblurred image.  These are blurred
> to lines (with a length and direction).
> 
> You can then restore the image by applying
> the deconvolution algorithm, making sure to
> do something about the infinities.
> 
> -- 
>One way to do this is to
> examine what would have been point sources
> in the unblurred image.  These are blurred
> to lines (with a length and direction).

thank you so much martin. i am not getting the clarity on the above comments. please acknowledge me..

[toc] | [prev] | [next] | [standalone]


#4170

Frompdaraja@gmail.com
Date2016-11-01 00:26 -0700
Message-ID<a027a4d2-5fe0-4161-b4fb-b19191f6c0f2@googlegroups.com>
In reply to#4169
> 
> thank you so much martin. i am not getting the clarity on the below comments. 

"One way to do this is to
> examine what would have been point sources
> in the unblurred image.  These are blurred
> to lines (with a length and direction)."

please acknowledge me..

[toc] | [prev] | [next] | [standalone]


#4171

FromMartin Leese <please@see.Web.for.e-mail.INVALID>
Date2016-11-01 09:37 -0600
Message-ID<nvacre$omk$1@dont-email.me>
In reply to#4169
pdaraja@gmail.com wrote:

> On Monday, October 31, 2016 at 8:50:47 PM UTC+5:30, Martin Leese wrote:

>> How you determine Blur(s) depends on the
>> type of blur.  If the motion is at constant
>> velocity then you just need its direction
>> and length.  One way to do this is to
>> examine what would have been point sources
>> in the unblurred image.  These are blurred
>> to lines (with a length and direction).
> 
> thank you so much martin. i am not getting 
> the clarity on the above comments. please 
> acknowledge me..

The blur function, Blur(s), is also called
the point spread function.  It is the result,
in the space domain, of what would be
produced from the blurring of a single point
source in the centre of the image.

For constant velocity motion, a point source
is blurred to a straight line.  So, in this
case, the function Blur(s) is the image of a
single straight line which begins in the
centre of the image.  A good way to estimate
the length and direction of the required
straight line is to examine what happens to
naturally occurring point sources in the
original unblurred image.

-- 
Regards,
Martin Leese
E-mail: please@see.Web.for.e-mail.INVALID
Web: http://members.tripod.com/martin_leese/

[toc] | [prev] | [next] | [standalone]


#4172

Frompdaraja@gmail.com
Date2016-11-02 23:12 -0700
Message-ID<2317cd1d-e9d1-464c-8778-a2c377519d95@googlegroups.com>
In reply to#4171
> 
> The blur function, Blur(s), is also called
> the point spread function.  It is the result,
> in the space domain, of what would be
> produced from the blurring of a single point
> source in the centre of the image.
> 
> For constant velocity motion, a point source
> is blurred to a straight line.  So, in this
> case, the function Blur(s) is the image of a
> single straight line which begins in the
> centre of the image.  A good way to estimate
> the length and direction of the required
> straight line is to examine what happens to
> naturally occurring point sources in the
> original unblurred image.
> 

thanks for your reply.
i have tried wiener filter as well as blind deconvolution method to deblur the image. 
in the first case(wiener filter)i have given the artificial motion blurred image as a input. then i have assigned the point spread function as motion(length, direction). then there is a deconvolution output with the minimal accuracy.
in second case, i have given the same input to blind deconvolution. but here we need to specify the initial size of PSF(blur kernel.."that i don't know how to assign the size of PSF in matlab"). then after the desired iteration, it will give the average result(not clear) .

hence i have understood that PSF is very important factor to deblur any image. can you help me hoe to find the blur kernel of the blurred image(input)

[toc] | [prev] | [next] | [standalone]


#4173

FromMartin Leese <please@see.Web.for.e-mail.INVALID>
Date2016-11-03 08:51 -0600
Message-ID<nvfith$g1$1@dont-email.me>
In reply to#4172
pdaraja@gmail.com wrote:
>> The blur function, Blur(s), is also called
>> the point spread function.  It is the result,
>> in the space domain, of what would be
>> produced from the blurring of a single point
>> source in the centre of the image.
>>
>> For constant velocity motion, a point source
>> is blurred to a straight line.  So, in this
>> case, the function Blur(s) is the image of a
>> single straight line which begins in the
>> centre of the image.  A good way to estimate
>> the length and direction of the required
>> straight line is to examine what happens to
>> naturally occurring point sources in the
>> original unblurred image.
>>
> thanks for your reply.
> i have tried wiener filter as well as blind deconvolution method to deblur the image. 
> in the first case(wiener filter)i have given the artificial motion blurred image as a input. then i have assigned the point spread function as motion(length, direction). then there is a deconvolution output with the minimal accuracy.
> in second case, i have given the same input to blind deconvolution. but here we need to specify the initial size of PSF(blur kernel.."that i don't know how to assign the size of PSF in matlab"). then after the desired iteration, it will give the average result(not clear) .
> 
> hence i have understood that PSF is very important factor to deblur any image. can you help me hoe to find the blur kernel of the blurred image(input)

It seems your problem is how to drive
MATLAB's deconvolution function.  I have
never used MATLAB, so cannot help you
further.

-- 
Regards,
Martin Leese
E-mail: please@see.Web.for.e-mail.INVALID
Web: http://members.tripod.com/martin_leese/

[toc] | [prev] | [next] | [standalone]


#4175

Frompdaraja@gmail.com
Date2016-11-03 21:43 -0700
Message-ID<ca5a8cec-6723-42ba-8835-910bd0a89b0f@googlegroups.com>
In reply to#4173
Thank you for your support

[toc] | [prev] | [next] | [standalone]


#4176

Fromdale <dale@dalekelly.org>
Date2016-11-04 21:08 -0400
Message-ID<9rg0va.bqq.19.1@news.alt.net>
In reply to#4173
On 11/3/2016 10:51 AM, Martin Leese wrote:
> I have
> never used MATLAB

comp.soft-sys.matlab
comp.soft-sys.octave

-- 
dale | http://www.dalekelly.org

[toc] | [prev] | [standalone]


Back to top | Article view | sci.image.processing


csiph-web