MATLAB Answers


Coefficient computation for bicubic interpolation

Asked by mona
on 20 Nov 2012

Dear Community Members,

Since bicubic interpolation for an image requires 16 coefficients which will eventually form the window with which we would convolve the sampled image, right. So my question is "how could I calculate these coefficients?". Do I have to get the matrix of the input image through matlab? If yes, how? Kindly don't suggest imread since it only shows how many rows and columns are present. If no, what is an exact way of computing the coefficients for bicubic interpolation?

Thanks in advance



No products are associated with this question.

1 Answer

Answer by Matt J
on 20 Nov 2012
Edited by Matt J
on 20 Nov 2012

Normally, you would use interp2, griddedInterpolant, or the spline command to do bicubic interpolation.

Only in very special cases, like if you are interpolating at gridded sample points, can the operation be formulated as a convolution, and even then, griddedInterpolant probably does this for you internally.


on 21 Nov 2012

It's not about ther result, I am not getting it at the first place with interp2(xs,3,'cubic'); I'm getting out of memory error.

Matt J
on 21 Nov 2012

My 2nd remark was referring to the factor-of-2 upsampling result, not the one that gave you an out-of-memory error.

Earlier, you said you thought that result looked distorted. If it looks distorted, the only thing to blame is either the data or the interpolation model.

on 22 Nov 2012

I believe so too, Thanks for help.

Join the 15-year community celebration.

Play games and win prizes!

Learn more
Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!