重采样均匀采样信号

这个例子展示了如何重新取样均匀采样信号到一个新的均匀的速度。它展示了如何降低大瞬变的影响,以及如何删除多余的高频内容。

速率转换由非理性因素

重采样功能执行速率转换,从一个采样率到另一个。重采样允许您通过积分系数上采样,p,以及随后的另一个不可或缺的因素缩小,q。通过这种方式,你可以重新取样到有理数倍数(p/q)原始采样率的。

要使用重采样上均匀的样品的功能,你必须提供分子和这种理性因素的分母。要确定你所需要的整数,则可以使用功能。

下面是如何调用示例从48千赫转换为44.1kHz的时:

originalFs = 48000;desiredFs = 44100;[P,Q] =大鼠(desiredFs / originalFs)
P = 147
Q = 160

指示可以通过147和抽取由上采样160要验证这产生所需速率,乘以p/q由原始采样率:

originalFs * P / Q
ANS = 44100

一旦你有了新的和原有的采样率之间的比值,可以调用重采样

例如,创建使用48千赫的原始采样速率10毫秒长500赫兹的正弦波并将其转换为44.1kHz的:

TEND = 0.01;TX = 0:1 / originalFs:TEND;F = 500;X = SIN(2 * PI * F *的Tx);Y =重采样(X,P,Q);TY =(0:numel(Y)-1)/ desiredFs;图(TX,X,”。“)保持图(泰,Y,'O')保持传说('原版的'“重采样”

对于行为良好的信号,如上面的正弦曲线,简单地使用重采样用精心挑选pq应该足以适当地恢复它。

对于瞬态或显著的噪声信号,你可能希望有过在多相位抗混叠滤波器更大的控制权重采样

过滤瞬变

重采样函数使用一个过滤器,当它执行速率转换。该滤波是在信号大的瞬态灵敏。

为了说明这一点,重新取样的矩形脉冲:

X = [零(1120)的人(1241)的零(1120)];Y =重采样(X,P,Q);图(TX,X,' - ',泰,Y,' - ')图例('原版的'“重采样”

该函数重建脉冲的平坦区域的一个好工作。但是,也有在脉冲的边缘尖峰。

放大该第一脉冲的边缘:

XLIM([2E-3 3E-3])

有一个在所述过渡区域中的阻尼振荡。您可以通过调整内部过滤器的设置减少这种振荡。

重采样可以让你有超过施加到抗混叠滤波器,可以减轻一些边缘效应Kaiser窗控制。

两个参数,ñ公测,控制所述过滤器的相对长度和平滑其试图执行的量。的值越大ñ将有较大的滤波器长度。一个公测0不会有任何额外的平滑。较大的公测值将有较大的平滑。默认,ñ在10和公测5。

进行一个实际的方法是先从默认值,并根据需要进行调整。在这里,设置ñ5和公测20。

N = 5;的β= 20;Y =重采样(X,P,Q,N,β);图(TX,X,'.-')保持图(泰,Y,“邻”)保持传说('原版的'“重采样”)XLIM([2E-3 3E-3])

所述振荡显著降低。

过滤别名

重采样功能是用来采样率转换为或高或低利率。其结果是,该抗混叠滤波器的截止频率被设定为输入或输出采样率的奈奎斯特频率(以较低者为准)。此默认设置允许重采样函数来覆盖宽的应用范围。

有些时候,过滤器的直接控制可能是有益的。

为了说明这一点,构建体和查看以96kHz采样的线性调频脉冲信号的频谱图。该线性调频脉冲信号由一个正弦波,其频率平方而变化在从0赫兹至48千赫超过8秒的持续时间的整个奈奎斯特范围的:

FS1 = 96000;T1 = 0:1 / FS1:8;X =啁啾(T1,0,8,FS1 / 2,“二次”);谱图(X,凯瑟(256,15),220412,FS1,“Y轴”

接下来,使用默认设置的啁啾转换为44.1千赫重采样和查看谱图:

FS2 = 44100;[P,Q] =大鼠(FS2 / FS1);Y =重采样(X,P,Q);谱图(Y,凯瑟(256,15),220412,FS2,“Y轴”

在这里,您可以看到原来的信号,以及不必要的频率成分。理想情况下,正弦应从0开始,赫兹和继续,直到达到22.05kHz的奈奎斯特频率为5.422秒。相反,存在由于在用于重采样默认过滤器的边缘引入小的不连续性引入伪像。为了防止这些文物,可以提供更长的过滤器稍低的截止频率和更大的阻带抑制比默认的过滤器。

有适当的时间对准中,滤波器应该有奇数长度。长度应大于几十倍p要么q(取较大值)。类似地,通过较大划分所需的归一化截止频率p要么q。在任一情况下,乘以将所得的系数通过p

下面是在输出端的奈奎斯特频率为256倍的抽取因子的顺序的98%(0.98)与截止的过滤器的一个例子,窗口与一个Kaiser窗公测12。

normFc = 0.98 / MAX(P,Q);为了= 256 *最大(P,Q);的β= 12;lpFilt = firls(顺序,[0 normFc normFc 1],[1 1 0 0]);。lpFilt = lpFilt *凯泽(顺序+ 1,β)';lpFilt = lpFilt /总和(lpFilt);%乘用plpFilt = P * lpFilt;%重采样和情节响应Y =重采样(X,P,Q,lpFilt);谱图(Y,凯瑟(256,15),220412,FS2,“Y轴”

需要注意的是别名被删除。

延伸阅读

有关采样的更多信息请参见信号处理工具箱。

参考:弗雷德里克·哈里斯Ĵ,“多速率信号处理的通信系统”,Prentice Hall出版社,2004年。