我是靠谱客的博主 淡然白云,最近开发中收集的这篇文章主要介绍数字信号上下采样对频谱影响,以及如何添加相应滤波器,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

为了便于理解,我们不妨假设有这样一个低通信号,他的数据速率(即当前采样率Fs)为1GHz,不过最高频率fm只有300M。
x [ n ] < − − − > X ( e j ω ) x[n]<--->X(e^{jomega}) x[n]<>X(e)
该信号的时域波形如何我们并不关心,因为上下采无非就是往中间插0以及从内部抽取。我们关心他的频域如何变化,会不会混叠,以及我们上下采样之前之后应当如何添加相应的低通滤波器
假设现在频谱如下所示

请添加图片描述

左图为该离散信号的频谱,离散信号的频谱以2 π pi π为周期延拓。
右图为matlab中对该信号进行观测所得频谱,更便于大家理解。受限于奈奎斯特采样定律,只能观察 [ − F s / 2 , F s / 2 ] [-Fs/2,Fs/2] [Fs/2,Fs/2]频段内频谱。

这两张图其实是统一的,右图中横坐标的 F s / 2 = 500 M Fs/2=500M Fs/2=500M对应着左图横坐标的 π pi π
我们时时刻刻牢记这一点,接下来频谱的变化我们都将用左图的形式表现,对应的方便理解的右图的形式,大家只需要替换 π < − − > F s / 2 pi<-->F_s/2 π<>Fs/2即可。 F s F_s Fs是当前时刻采样率。

1.上采样(整数倍内插)

我们首先尝试对该信号进行 I I I倍上采样,也就是往两个相邻信号中间插 I − 1 I-1 I1个 0。
x I [ n ] = { x [ n I ] if  n = 0 , I , 2 I , . . . 0 else x_{I}[n] =begin{cases} x[frac{n}{I}] &text{if } n=0,I,2I,... \ 0 &text{else} end{cases} xI[n]={x[In]0if n=0,I,2I,...else
则频域变化为(省去推导过程)
X I ( e j ω ) = X ( e j ω I ) X_{I}(e^{jomega})=X(e^{jomega I}) XI(e)=X(eI)
由该式我们可以知道,内插后的频谱是原频谱的线性收缩
为便于画图,我们假设此时是上两倍采样(即 I = 2 I=2 I=2),则相应的频谱变化为
请添加图片描述
左图就是线性收缩后的频谱,就是内插后信号的频谱。
此时采样率变为原信号的两倍,新的 F s = 2000 M F_s=2000M Fs=2000M,最大观察频点为1000M,带入上文着重强调的公式 π < − − > F s / 2 = 1000 M pi<-->F_s/2=1000M π<>Fs/2=1000M得到便于观察的频谱如右图所示。

此时,我们就会观察到原来在±1000M频点附近的高频分量,相当于我们的信号突然多出了很多不必要的高频噪声,因此我们需要添加一个低通滤波器进行滤除。
滤波器只需要保证通带截止频率>300M,阻带截止频率<700M,即可。

2.下采样(整数倍抽取)

然后我们尝试对原信号进行下采样,就是把原始采样序列x[n] 每隔(D-1) 个数据取一个,以形成一个采样率为原序列1/D的新序列 x D ( m ) x_D(m) xD(m)为:
x D [ n ] = x [ D n ] x_D[n] = x[Dn] xD[n]=x[Dn]

省去推导过程,频域变化为:

X D ( e j ω ) = 1 D ∑ l = 0 D − 1 X [ e j ( ω − 2 π l ) / D ] X_D(e^{jomega}) = frac{1}{D}displaystylesum_{l=0}^{D-1} X[e^{j(omega -2pi l)/D}] XD(e)=D1l=0D1X[ej(ω2πl)/D]

仔细观察该公式,发现和上采样单纯的线性收缩不同,下采样并不是单纯将频谱线性展宽。

下采样后的频谱为原频谱经频移和D倍展宽后的D个频谱的叠加和,因此可能存在混叠。

为方便大家理解,我们对该信号进行两倍下采样,得到频谱变化如下图所示:请添加图片描述

因此,下采样之前需要进行防混迭滤波。
我们可以用一个截止频率为 − π / D -pi/D π/D的滤波器
请添加图片描述

这样就可以有效防止混叠。

综上,上采是先内插,再滤波。下采是先滤波,再抽取。

reference:

  1. 奥本海姆 《信号与系统》
  2. 沈莹 《软件无线电》

最后

以上就是淡然白云为你收集整理的数字信号上下采样对频谱影响,以及如何添加相应滤波器的全部内容,希望文章能够帮你解决数字信号上下采样对频谱影响,以及如何添加相应滤波器所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部