在MATLAB中重新采样两个不同长度的数据集

我有两个向量:长度为927的sensorA和长度为1250的sensorB。我想让它们具有相同的长度。 MATLAB中的resample()函数在边缘处非常嘈杂,我需要至少相当好的精度。 我知道重新采样可以通过插值完成,但我如何以最有效的方式实现它。我需要尽可能均匀地拉伸927到1250。 我想知道我是否可以这样做: 我在短矢量中需要333个新样本。因此,对于每3个值,我插入两个连续值的平均值(中点)。 =>插入309个样本 对于剩余的我每38个样本再次插入(927 /(333-309)) 这有意义吗?我仍然无法得到精确的插值。我还可以使用其他功能吗? (除了
interp()
,因为它需要整数重采样率?)     
已邀请:
从信号处理视图,您不应该每3个值插入一个样本。那将是不均匀的拉伸并且会破坏你的信号。重新采样功能是您想要的。尝试更改n和/或beta的参数。您可能需要按照此处所述填充信号以减少边缘效应。     
重新采样带限信号与使用无限Sinc插值内核的插值相同,并且非常接近具有良好选择窗口的窗口Sinc插值。有关详细信息,请参阅斯坦福CCRMA网站。     
要进行插值,请使用interp1。出于您的目的,这可能已经足够了,但如上所述,重新采样是正确的做法。     

要回复问题请先登录注册