使用matlab中的interpolatoin制作两个向量相同的长度
我想插入长度为3的向量y1以获得长度为6的向量y2。我应该使用函数interp1还是resample中的哪一个?使用matlab中的interpolatoin制作两个向量相同的长度
ex。 y1 = [1 2 3]; y2 = [1 2 3 4 5 6];
重采样(Y1,长度(Y2),长度(Y1))
使用interp1
。例如:你有一个正弦信号每pi/4采样一次。
x = 0:pi/4:2*pi;
v = sin(x);
我们想更细的取样xq
(每PI/16):
xq = 0:pi/16:2*pi;
其结果将是:
vq1 = interp1(x,v,xq);
凡vq1
是一个向量,其值从v
插值来满足新的采样xq
PD:您还可以通过你想要哪种类型的插值的参数:“直线”,“最近”,“立方” ,等等......
我有两个数值向量不是函数和点。 – zahraesb
在我的例子中,你也有数字向量。 sin(x)不是一个符号函数,它只是生成值,但如果遵循一个公式,则更容易看出插值的工作原理。你可以用'rand(numel(x),1)'代替'sin(x)',看看它是否仍然有效。 –
如果你想插值,你可能应该使用插值函数。 – excaza