DSP

重采样

2019-07-13 16:46发布

一、前言

​ 重采样分为上采样和下采样,下采样时需要对信号进行抽取,上采样时需要对信号进行插值,下面将介绍一种简单的重采样方式。

二、定义

​ 减少抽样率以去掉过多数据的过程称为信号的抽取(decimatim )”,增加抽样率以增加数据的过程称为信号的“插值(interpolation)。抽取、插值及其二者相结合的使用便可实现信号抽样率的转换。

三、算法

1、信号的抽取

​ 设x(n)x(n)为数字信号,欲使fsf_s减少MM倍,最简单的方法是将x(n)x(n)中的每个点中抽取一个,依次组成一个新的序列y(n)y(n),即
(式1)y(n)=x(Mn)n0 y(n)=x(Mn)quad ngeq 0 ag{式1}
此时,y(n)y(n)x(n)x(n)的DTFT有如下关系(详见附A):
(式2)Y(ejw)=1Mk=0M1X(ej(w2πk)/M) Y(e^{jw})=frac{1}{M}sum_{k=0}^{M-1}X(e^{j(w-2pi k)/M}) ag{式2}
其含义是,将信号x(n)x(n)MM倍的抽取后,所得信号y(n)y(n)的频谱等于原信号x(n)x(n)的频谱先做MM倍的扩展,再在ww轴上做2πM(k=1,2,...,M1)frac{2pi}{M}quad (k=1,2,...,M-1)的移位后再迭加。如下图所示。 在这里插入图片描述 ​ 由抽样定理,在由x(t)x(t)抽样变成x(n)x(n)时,若保证fs2fcf_sgeq 2f_c,那么抽样的结果不会发生频谱混迭。对x(n)x(n)MM倍抽取得到y(n)y(n),必须满足fs2Mfcf_s geq 2Mf_c。 ​ 为了防止抽取后在Y(ejw)Y(e^{jw})中出现混迭的方法是在对x(n)x(n)抽取前先做低通滤波,压缩其频带。 ​ 令h(n)h(n)为一理想低通滤波器,即
H(ejw)={1w2πM0others H(e^{jw})=egin{cases}1&|w|leq frac{2pi}{M}\0&othersend{cases}
​ 令滤波后的输出为v(n)v(n),则
v(n)=k=0h(k)x(Mnk) v(n)=sum_{k=0}^{infty}h(k)x(Mn-k)
=k=0x(k)h(Mnk) =sum_{k=0}^{infty}x(k)h(Mn-k)
​ 得出
Y(z)=1Mk=0M1X(z1MWMk)H(z1MWMk) Y(z)=frac{1}{M}sum_{k=0}^{M-1}X(z^{frac{1}{M}}W_M^k)H(z^{frac{1}{M}}W_M^k)
Y(ejw)=1Mk=0M1X(ej(w2πk)/M)H(ej(w2πk)/M) Y(e^{jw})=frac{1}{M}sum_{k=0}^{M-1}X(e^{j(w-2pi k)/M})H(e^{j(w-2pi k)/M})

2、信号的插值

​ 将x(n)x(n)的采样率fsf_s增加LL倍,即LfsLf_s,最简单的方法就是将x(n)x(n)每两个点之间补上L1L-1个零。设补零后的信号为v(n)v(n),则
v(n)={x(n/L)n=0,±L,±2L,...0others v(n)=egin{cases}x(n/L)&n=0, pm L, pm 2L,...\0&othersend{cases}
由于
V(ejw)=n=0v(n)ejwn=n=0x(n/L)ejwn V(e^{jw})=sum_{n=0}^{infty}v(n)e^{-jwn}=sum_{n=0}^{infty}x(n/L)e^{-jwn}

热门文章