|
[Date Index]
[Thread Index]
[Author Index]
Re: 2D Convolution
- To: mathgroup at smc.vnet.net
- Subject: [mg76140] Re: 2D Convolution
- From: CKWong <CKWong.P at gmail.com>
- Date: Wed, 16 May 2007 05:51:57 -0400 (EDT)
- References: <f29389$m7p$1@smc.vnet.net><f29bko$pjn$1@smc.vnet.net>
You need to re-define your Convolve like this:
Convolve[f_, g_, x_?NumberQ, y_?NumberQ] := NIntegrate[f[
xPrime, yPrime] *g[x - xPrime,
y - yPrime], {xPrime, -=A1=DB, =A1=DB}, {yPrime, -=A1=DB, =A1=DB}]
When calling Convolve, remember to place the kernel as the first
function, e.g.,
Convolve[Gaussian2D, SHole, 0, 0]
You can plot the convolution like this:
Plot3D[Convolve[Gaussian2D, SHole, x, y] // Evaluate, {x, -HoleSize,
HoleSize}, {y, -HoleSize, HoleSize}]
However, this scheme is too slow for the round hole, for which case,
it's better to switch to polar coordinates so that the angular part
can be integrated by hand.
Prev by Date:
Re: a tutorial finder palette
Next by Date:
Re: weird behavior when plotting multiple functions in 6.0
Previous by thread:
Re: 2D Convolution
Next by thread:
Re: 2D Convolution
|