MATLAB中Matrix组件之间的插值

时间:2012-02-17 00:57:27

标签: matlab matrix interpolation indexing

在我正在进行的项目中,我需要到达矩阵的浮点索引元素。也就是说,例如我想要达到矩阵的第(16.25,1)个元素。乍一看,这可能看起来很奇怪。但是,(16.25,1),我指的是(16,1)和(17,1)之间的插值,权重分别为.25和.75。

是否有内置功能?

非常感谢, Safak

2 个答案:

答案 0 :(得分:2)

您可以使用interp2

Z = randi(10,10); % 10 x 10 random matrix with integers from 1 to 10
Z(1:2,1:2)
%ans =
%   2   4
%   7   6

% use interp2 to interpolate at row 1.5, col 2
z = interp2(Z,1.5,2)
% z = 6.5000

答案 1 :(得分:1)

您可以使用二维插值:

ZI = interp2(Z,XI,YI) assumes that X = 1:n and Y = 1:m, where [m,n] = size(Z)

其中Z是您的矩阵,XI& YI是您的小数指数。