How to implement Bicubic interpolation in an image?

I have 256*256 dimension image and I want to make it 512*512 using bicubic interpolation. How to do it using csapi(x,y) or csapi(x,y,xx) function? What should be taken inplace of x & y here?

Answers (2)

TheRealTonyStark
TheRealTonyStark on 13 Oct 2019
Edited: TheRealTonyStark on 13 Oct 2019
The resizing of image using bicubic interpolation method:
Example
J = imresize(I, 2, 'bicubic');%in your case
J: Resized image.
I: input image.
0.5: scaling factor
Simply use imresize():
resizedImage = imresize(originalImage, [512, 512]);
I never heard of the function csapi(). It does not show up in the help for my MATLAB.

4 Comments

I need to use interpolation to enhance the image
What's your definition of "enhance"? Merely resizing an image will not increase the resolution or make details any easier to see/resolve.
I am trying to apply DWT and BEMD on an image. Then adding these DWT and BEMD components but DWT components have reduced dimension than BEMD component, So I want to interpolate them.
Increasing the size will create irreularities in the image. To smoothen that out we use spline fitting.

Sign in to comment.

Asked:

on 1 Dec 2017

Edited:

on 13 Oct 2019

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!