2016-09-26 96 views
0

两个矢量我有以下问题:把在相同的长度

我有两个数据向量V1(长度N1 = 13812)和V2(长度N2 = 60002021)。我必须使用插值bzw使两个矢量的长度相同N3。下采样,要求:2xN1。

有人可以帮我吗?我的想法是使用:interp,interp1和下采样来解决问题。这是正确的方法吗?

+1

你只需要'interp1'或'interp2'取决于你的尺寸 –

+0

这里有一个例子说明为什么你不应该使用interp1来下采样信号:t = 1:0.01:30; X = SIN(T); (1:3:30,interp1(t,x,1:3:30),'o-');等一下; plot(t,x);拖延 – serigado

回答

0

根据您的信号和采样率,使用interp1可能不是正确的做法。 有一个resample功能,您可以使用这样的:其中参数pq取决于你的载体v2的采样率

v1_resampled = resample(v1, 2, 1); 
v2_resampled = resample(v2, p, q); 

始终检查重新采样向量的开始/结束。检查NaNs,如果您进行非等距采样,请小心。

另一种可能的选择是对高分辨率信号使用移动平均/移动中值滤波器。最好的重采样方法确实取决于信号类型。

+0

'resample'需要信号处理工具箱。 – rayryeng

相关问题