【发布时间】:2015-06-23 22:18:07
【问题描述】:
我想使用interp1 函数在样本点之间(线性)插值。对于样本点之间的均匀插值,我可以使用
test = [-1 -2 0 3];
new = interp1(test,1:.5:numel(test));
这将给出一个插值序列,其中新序列现在在每个原始 (test) 序列点之间包含一个额外的插值点。
我想做的是,创建一个 new 系列,根据 test 系列点之间的差异进行插值。对于上述情况,结果输出如下所示
[-1 -2 -1 0 1 2 3];
我已经研究了http://au.mathworks.com/help/matlab/ref/interp1.html 的示例,但我仍然无法找到答案。对于这个简单的查询,我将不胜感激。
【问题讨论】:
-
这不就是
min(test):max(test)吗? -
@LuisMendo 天哪,你当然是对的。看看我对此的复杂答案:(当然这仅适用于线性插值,而
interp1解决方案可以使用任何插值方法,例如三次 -
@hbaderts 目前还不清楚 OP 想要什么。也许他们应该澄清
标签: matlab interpolation