我有一个 512 个样本长的信号,我曾经upfirdn
对其进行过滤和下采样 2 倍。我认为这会产生一个 256 个样本长的变量,但结果却是 261。
MATLAB 帮助说明了这一点:
输出的长度
yout
, 是ceil(((length(xin)-1)*p+length(h))/q)
(其中xin
是信号,h
是滤波器,p
是上采样率,q
是下采样率),如果你计算出来(滤波器长度为 10),实际上是 261。
我想知道的是它在下采样时如何选择点,以便我可以upfirdn
用另一种语言重现行为(长篇大论,不重要)。这个公式是从哪里来的?