Forums

2D sinc

Started by alexryu June 19, 2009
I've always seen 2D sinc interpolation done in a separable fashion -
interpolate along the x axis to the correct x-coordinate, and then
interpolate the new values down the y axis to the correct y-coordinate.  So
if you have data defined on a grid, D(m,n), and you want to interpolate 
D(m1,n1+eps), you only need to do one sinc interpolation.  This is well
and good (Nyquist's theorem is Nyquist's theorem, after all), but in real
life we frequently have (1) data that is not perfectly bandlimited and (2)
spatial windowing.  Doesn't this imply that some sort of nonseparable 2D
sinc interpolation procedure, which takes into account all the data
surrounding the desired interpolation point, should be occasionally
useful?
Thanks for any help
On Jun 19, 5:57 pm, "alexryu" <ryu.a...@gmail.com> wrote:
> I've always seen 2D sinc interpolation done in a separable fashion - > interpolate along the x axis to the correct x-coordinate, and then > interpolate the new values down the y axis to the correct y-coordinate. So > if you have data defined on a grid, D(m,n), and you want to interpolate > D(m1,n1+eps), you only need to do one sinc interpolation. This is well > and good (Nyquist's theorem is Nyquist's theorem, after all), but in real > life we frequently have (1) data that is not perfectly bandlimited and (2) > spatial windowing. Doesn't this imply that some sort of nonseparable 2D > sinc interpolation procedure, which takes into account all the data > surrounding the desired interpolation point, should be occasionally > useful? > Thanks for any help
What are your dimensions: time, space, frequency, bearing, K-omega, etc. ? If you have finite sets of discrete samples why have you chosen sinc interpolation? Dale B. Dalrymple
On Fri, 19 Jun 2009 19:57:55 -0500, alexryu wrote:

> I've always seen 2D sinc interpolation done in a separable fashion - > interpolate along the x axis to the correct x-coordinate, and then > interpolate the new values down the y axis to the correct y-coordinate. > So if you have data defined on a grid, D(m,n), and you want to > interpolate D(m1,n1+eps), you only need to do one sinc interpolation. > This is well and good (Nyquist's theorem is Nyquist's theorem, after > all), but in real life we frequently have (1) data that is not perfectly > bandlimited and (2) spatial windowing. Doesn't this imply that some > sort of nonseparable 2D sinc interpolation procedure, which takes into > account all the data surrounding the desired interpolation point, should > be occasionally useful? > Thanks for any help
I don't know about _useful_: The 2D sync function is the 2D Fourier transform of a square. The 2D Fourier transform of a circle is circularly symmetric and evolves according one of the Bessel functions as the radius increases (see Airy rings for a solved example of this). Similarly one could use some other circularly-symmetric filter. But you're talking about loads and loads more computation power. It'd be interesting to see if you reduce funny artifacts that way, though -- the rectangular sync function has a number of them. -- http://www.wescottdesign.com
On 20 Jun, 02:57, "alexryu" <ryu.a...@gmail.com> wrote:
> I've always seen 2D sinc interpolation done in a separable fashion - > interpolate along the x axis to the correct x-coordinate, and then > interpolate the new values down the y axis to the correct y-coordinate. &#2013266080;So > if you have data defined on a grid, D(m,n), and you want to interpolate > D(m1,n1+eps), you only need to do one sinc interpolation. &#2013266080;This is well > and good (Nyquist's theorem is Nyquist's theorem, after all),
In 2D: No, it isn't. You can get situations where Nyquist's theorem doesn't hold in any one direction, but the reconstruction still is well- defined. Check out the 1992'ish edition of Gonzales and Woods' (or maybe that one was Gonzales & Wintz) book on image processing. In the 2008 edition, Gonzales & Woods have over-simplified the sampling theorem to (wrongly) give the impression that Nyquist must hold along both dimensions.
> but in real > life we frequently have (1) data that is not perfectly bandlimited and (2) > spatial windowing. &#2013266080;Doesn't this imply that some sort of nonseparable 2D > sinc interpolation procedure,
Nope. Band limitations might be a problem, depending on exactly what kind of data you are sampling: If one of the physical dimensions is time, then yes: Band limtations might be a problem. If you are taking still images, then no, there are no problems. As for windowing, that's life. You are limited to do experiments that produce finite amounts of data. However, none of these have anything to do with whether the resulting data are separable. 'Separability' has only to do with sampling parameters, and is thus determined solely by the geometry of the CCD if we stick with images: If the CCD lay-out is a regular matrix, then the resulting image is (x,y) separable. If the layout is, say, a honeycomb, it is not separable.
> which takes into account all the data > surrounding the desired interpolation point, should be occasionally > useful?
Sinc interpolation does that by default. Separability has to do with the computational work required to achieve that goal. Rune