Bicubic Interpolation Question

I have been trying to figure out Bicubic Interpolation and I have a few questions about it. From all of my time searching around the internet for explanations about it, it seems as if wikipedia has the best explanation of it. It seems pretty simple on wikipedia, basically all I need to do is calculate the 16 Aij coefficients using the 16 equations that they give and then plug them into the equation -> p(x, y) =

3 3

Σ Σ Aij*(x^i)(y^j)

i=0 j=0

I have been using this method and so far, my values are all pretty consistently slightly off. Im not sure if I am doing it right. I have also seen a lot of stuff about kernels. I get what they are, but I dont get how they are applied to interpolations. Any explanation on any of this would be very appreciated.

Re: Bicubic Interpolation Question

Hey tbrooks6893.

With kernels you basically use them as a way of transforming things. Typically with things that are invertible you have one kernel that takes something in one space to another, and an inverse kernel takes it from the new space back to the original space.

Depending on the kernel and what it is used for (and what it means intuitively) you will have different kinds of spaces.

With regards to interpolation you are going from a space with points (i.e. a lattice) to a polynomial in some degree (in this case bi-variate 3x3 degree).

In general you can look at kernels in a broader way which take signal data and then transform this to a different space and then by inverting given the data, you get approximations of the original signal in that particular space.

This is how things like picture, video, and audio compression work: if you know a good basis for representing the data in the best way you take a signal, transform it to your new basis and keep only the information for that basis.

You re-construct the information by using the definition of the basis and then use the inverse kernel to go from new optimal basis to old basis.

This kind of thing applies to both lossless methods (i.e. don't lose any information) to lossy methods (lose information at some point but for whatever purpose its used for, this doesn't matter).