Posted by
Robert Dougherty on
Jul 30, 2006; 4:37pm
URL: http://imagej.273.s1.nabble.com/convolution-versus-PDE-tp3701910p3701913.html
My experience is that there are occasions when the image can be viewed as an
initial condition to a PDE, and you effectively want the solution as a
function of time. You can either model the direct PDE solution process time
by time, or use a convolution expression to essentially apply the Green's
function to express the solution at each time in terms of the starting
image. For small time steps, the evolution operator, which is approximated
as a local operator, can be a lot cheaper than the convolution. An example
is modeling a range of Gaussian blurs. To get from one degree of blur to
the next, the PDE approach is to solve the heat equation over a short time
interval using a finite difference formulation in time and space. You need
to make the time step short enough for stability, of course.
Bob
Robert P. Dougherty, Ph.D.
President, OptiNav, Inc.
Phone (425) 467-1118
Fax (425) 467-1119
www.optinav.com
> -----Original Message-----
> From: ImageJ Interest Group [mailto:
[hidden email]] On Behalf Of
> Duane & Julie
> Sent: Saturday, July 29, 2006 10:07 AM
> To:
[hidden email]
> Subject: Re: convolution versus PDE
>
> On Jul 27, 2006, at 9:31 AM, Martin du Saire wrote:
>
> > Hi,
> >
> > This may be off topic but hopefully you won't mind too much: I
> > recently "discovered" that many convolution operations can be
> > performed using partial differential equations, quite often some
> > form of the heat equation. Is there some advantage to this, and
> > when would this be an appropriate route to take?
> >
> > Thanks.
> >
> > Martin
>
> Convolutions are closed form. PDEs are solved using an iterative
> process (in my experience), during which you have to decide when
> you've reached an answer that is good enough or has quit changing.
>
> I can't imagine how solving a PDE could be quicker than doing a
> convolution. I don't see a real difference in answers. I'm trying
> to come up with a reason to use PDEs over convolution, but I'm having
> a hard time.
>
> Perhaps if the convolution kernel is quite large, and you are willing
> to have an approximate answer to avoid having to worry about padding
> and/or edge effects?
>
> duane