How to perform Cubic interpolation on images?

4 次查看(过去 30 天)
Hi , I have a series of 180 images, I want to apply cubic interpolation on them. How can I do that? Thank you

回答(2 个)

Matt J
Matt J 2013-11-26
编辑:Matt J 2013-11-26
F=griddedInterpolant(...,'cubic');
interpolatedData=F(...);
  1 个评论
Yazan Awwad
Yazan Awwad 2013-11-26
编辑:Yazan Awwad 2013-11-26
Can you please give me more details. For examples, if one of the images is : A=imread('Translated frame_120 with respect to frame_1.png'); the size of A is 448 by 901. How can I apply the function u mentioned on these data. Thank you

请先登录,再进行评论。


Image Analyst
Image Analyst 2013-11-26
Can't you simply use imresize()?
  6 个评论
ANKUSH JAMTHIKAR
ANKUSH JAMTHIKAR 2018-3-28
Hey, Can anyone suggest how can I interpolate image using cubic spline interpolation (For any general images)?
Walter Roberson
Walter Roberson 2018-3-28
编辑:Walter Roberson 2018-3-28
scale = 1/10;
r = size(YourImage,1);
c = size(YourImage,2);
[R, C] = ndgrid(1:r, 1:c);
newrv = linspace(1, r, floor(r*scale));
newcv = linspace(1, c, floor(r*scale));
[NewR, NewC] = ndgrid(newrv, newcv);
for channel = size(YourImage,3) : -1 : 1
  newImage(:,:,channel) = interp2(R, C, YourImage(:,:,channel), NewR, NewC, 'spline');
end
newImage = cast(newImage, class(YourImage));
imshow(newImage)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Interpolation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by