Re: Convolution-based image interpolation





Michel Rouzic wrote:


But wait, a gaussian function isn't limited in time, right?


Whatever you use and whatever you choose to call it I can assure you it
will be not extend to infinity. Trust me you don't have to worry about
that :^)


well changing them to 0.5 and 0 would do it, but like I said, I don't
want linear interpolation.

Do you mean using a convolution kernel of [1 1] ? That would give you

0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 from 0 0 0 0 1 1 1 1

are you sure? wouldn't it give you a bunch of 2's?

No it'll be 1's. Your forgetting about your stuffed zeros in between
each one. It's good you have realized that you don't actually need to do
the multiplying by zero, but remember if you are not going to require
that the old points remain unchanged then you are going to have to
calculate the new values at all the new positions not just the ones that
fall between the old.


Besides that, it doesn't give you much
freedom, at least not the freedom of zero-stuffing by any number of
samples you want and convolve


That's where spline interpolation is real handy. Its essentially a
method of calculating the needed weighting to calculate each new sample
for any arbitrary point between the old samples.

Yeah, sounds pretty good, but that's up to implementing it that the
difficulty seems to reside. the equations didn't seem that simple,
mostly that it had polynomials, but i might try to implement that
anyways. given that i'm not sure to understand how to implement it i
won't count on it tho


It's not too bad. Lot's of different possible implementations. For a
simple cubic spline you are using 4 old points to find one new point.
That new point is situated somewhere between the middle 2 old points.
Just plug the position (from 0 to 1) of the desired new point into the
formula and out pops the new value for that position. Then move ahead to
the next new position and do the same using the 4 old points that
bracket that position.



Zero stuffing is not
going to work very well for anything but upsampling by integer amounts.



I persist in asking for a bell-shaped function :-)

Google "Pascal's triangle".

do you mean that there's anyone interpolating signals with anything
from pascal's triangle?

Well the {1 2 1]/2 kernel discussed earlier is the second row of
Pascal's triangle. Applying it a second time as you suggested in another
post and that is equivalent to applying the 4th row of Pascal's triangle
as a kernel once.

-jim

----== Posted via Newsfeeds.Com - Unlimited-Unrestricted-Secure Usenet News==----
http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups
----= East and West-Coast Server Farms - Total Privacy via Encryption =----
.



Relevant Pages

  • Re: 2 Way Linear Table regression
    ... air pressure across the top. ... of za mesh of triangles, much like the triangle mesh used in 3d ... interpolation of gives a result of 1.7107, while the ... STO+ ...
    (comp.sys.hp48)
  • Re: how to express weighted average in this case?
    ... Randy Poe wrote: ... You've just re-invented Lagrange interpolation. ... it won't always lie in the triangle. ... How about piecewise linear interpolation? ...
    (sci.math)
  • Re: how to express weighted average in this case?
    ... Randy Poe wrote: ... You've just re-invented Lagrange interpolation. ... it won't always lie in the triangle. ... How about piecewise linear interpolation? ...
    (sci.math)
  • Re: how to express weighted average in this case?
    ... You've just re-invented Lagrange interpolation. ... As t varies from 1 to T, A will describe a curve which will ... it won't always lie in the triangle. ... How about piecewise linear interpolation? ...
    (sci.math)
  • Re: Gibbs phenomenon
    ... I am trying to use 1D sinc interpolation, ... The Gibbs phenonmenon is a direct result of using a sinc. ... the way around this is to use a different kernel ...
    (comp.dsp)

Loading