How to enlarge an image using spline interpolation

5 ビュー (過去 30 日間)
T.K
T.K 2020 年 8 月 28 日
コメント済み: T.K 2020 年 10 月 30 日
I want to double the size of the input image using "spline". Please tell me how

採用された回答

KSSV
KSSV 2020 年 8 月 28 日
編集済み: KSSV 2020 年 8 月 28 日
I = imread("image.jpeg") ; % assuming image to m*n
[m,n,p] = size(I) ;
x = 1:n ;
y = 1:m ;
% Inteprolate to double
xi = 1:2*n ;
yi = 1:2*m ;
I = double(I) ;
Inew = zeros(2*m,2*n) ;
% Row wise inteprolation
for i = 1:m
Inew(i,:) = spline(x,I(i,:),xi) ;
end
% Column wise interpolation
for j = 1:n
Inew(:,j) = spline(y,I(:,j),yi) ;
end
Change the class if Inew to the original I. Also read about imresize.
  5 件のコメント
KSSV
KSSV 2020 年 10 月 29 日
編集済み: KSSV 2020 年 10 月 29 日
You can see both the codes given..there are few mistakes int he first code which have been rectiffied. Especially generating the new grid fot enlarging the image.
Thanks is accepting/ voting the answer.
T.K
T.K 2020 年 10 月 30 日
Thank you for your replying!
I understood!

サインインしてコメントする。

その他の回答 (1 件)

Bruno Luong
Bruno Luong 2020 年 8 月 28 日
編集済み: Bruno Luong 2020 年 8 月 28 日
A=peaks(10);
B=interp2(A,1,'spline');
subplot(1,2,1)
imagesc(A)
subplot(1,2,2)
imagesc(B)

タグ

製品


リリース

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by