Grid Resolution Changing by Bilinear Interpolation

2 次查看(过去 30 天)
I have a matrix 1x721x1440 double, it has the vertical resolution 0.25x0.25 (in degrees). How can I change the grid resolution to 1x1 (in degrees) by bilinear interpolation method in matlab?

回答(1 个)

KSSV
KSSV 2020-5-13
Let A be your 1X721X1440 data. And X, Y be your respect matrices with resolution 0.25.
A = squeeze(A) ;
xi = min(X(:)):1:max(X(:)) ;
yi = min(Y(:)):1:max(Y(:)) ;
[Xi,Yi] = meshgrid(xi,yi) ;
Ai = interp2(X,Y,A,Xi,Yi) ;
If you don't have respective X, Y; simply use
Ai = imresize(A,180,11) ;
Or
Ai = A(1:4:end,1:4:end) ;
  2 个评论
Joydeb Saha
Joydeb Saha 2020-5-13
My main data is 744x721x1440 (0.25x0.25 in degrees) double. Where Time = 744x1, Lat = 721x1, Lon = 1400x1. I do time averafe to it I got the resized data as 1 x 721 x 1440 (0.25x0.25 in degrees). So to transform the grid resolution to 1x1 (in degrees) I think second or third method will serve the purpose. Is it Sir ?

请先登录,再进行评论。

类别

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