POV-Ray : Newsgroups : povray.binaries.images : cubic interpolation for image_maps (2 jpegs - 63kb) : Re: cubic interpolation for image_maps (2 jpegs - 63kb) Server Time
3 Aug 2024 02:21:55 EDT (-0400)
  Re: cubic interpolation for image_maps (2 jpegs - 63kb)  
From: Bruno Cabasson
Date: 9 Mar 2007 10:35:01
Message: <web.45f17d9d625f00b5f5fba6ef0@news.povray.org>
Vincent Le Chevalier <gal### [at] libertyALLsurfSPAMfr> wrote:

> > Being given E(ui, vj), with i in [1..N], j in [1..M} the grid value of the
> > data in question, and with steps du in u and dv in v, the value of E in a
> > point (u, v) is given by:
> >
> >         N    M
> >        ---- ----
> >                       sin(PI*(u-u1)/du - i*PI) sin(PI*(v-v1)/dv - j*PI)
> > E(u,v)=/    /   E(ui,vj)------------------------ ------------------------
> >        ---  ---           PI*(u-u1)/du - i*PI     PI*(v-v1)/dv - j*PI
> >          i=1  j=1
> >
>
> Yes, I heard about this before. In fact, what this formula does is
> summing plenty of 2D sinc functions, one for each point of the grid. The
> scaling with PI is merely to ensure that each sinc is zero at all grid
> points, except the one it is centered on.
>
> This interpolation is indeed good in signal processing, because if I
> remember correctly, it does not add frequencies higher than the sampling
> you already have from the grid.
>
> But it seems prohibitive to compute, since you must consider every point
> of the grid each time you need a value. It can be sped up by considering
> a limited set of neighbours, but then it becomes tricky to ensure that
> the value and derivative(s) stay continuous.
>
> --
> Vincent

You're right, it is not costless. But I have an application using it and it
works quite fast. You might use this interpolation only if you want quality
and/or if the extra computation time is neglectable wrt the rest of the
image. Many things are a compromise.

In addition, you should not retrict the neighbours otherwise you'll get
ondulations (you obviously studied signal processing :)).

    Bruno

PS: here's an interresting link:
http://www.cambridgeincolour.com/tutorials/image-interpolation.htm


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.