Image interpolation with a sample image

41 views (last 30 days)
MX Zhang
MX Zhang on 28 Jul 2017
Commented: Image Analyst on 28 May 2020
I am trying out image interpolation on Matlab, with the following sample image.
I'm not exactly sure why my code isn't working.
%Interpolation
figure
imagesc(V);
colormap gray;
axis image;
axis off;
title("Original");
grayImage = rgb2gray(V);
Vn = interp2(grayImage,3);
imagesc(Vn);
title("Modified");

Answers (2)

Image Analyst
Image Analyst on 28 Jul 2017
Try using imresize() instead of interp2().
  2 Comments
nika mong
nika mong on 28 May 2020
Hello, dear ser, I have problems writing code, which method can increase the resolution of a sub-pixel offset image, can you help please

Sign in to comment.


Vipresh Gangwal
Vipresh Gangwal on 28 Jul 2017
Edited: Vipresh Gangwal on 28 Jul 2017
what do you mean it is not working? Also there seems to be a lot of salt and pepper noise in your image . That might be impacting the interpolation.
There is an example on the interp2 doc page. Try replicating same steps for your data.
https://www.mathworks.com/help/matlab/ref/interp2.html
  2 Comments
MX Zhang
MX Zhang on 31 Jul 2017
I did try the sample on the link. Here's my code:
figure
imagesc(cdata);
colormap gray;
axis image;
axis off;
title("Original");
%grayImage = rgb2gray(V);
%Vn = interp2(grayImage,3);
Vn = interp2(cdata);
imagesc(Vn);
title("Modified");
But I get an error when I perform it:
Error using .'
Transpose on ND array is not defined. Use PERMUTE instead.
Error in interp2 (line 96)
V = V.';
Error in Interpolation (line 14)
Vn = interp2(cdata);
Image Analyst
Image Analyst on 31 Jul 2017
cdata is a color image, which is a 3-D image. You can't use interp2() on a color image.
Any reason why you didn't like my solution?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!