高级DSP复习
本课程内容涵盖DSP
基础,变速率信号处理以及小波变换的基础知识。
前排提醒,如有内容的建议请在评论区指出,或直接发送邮件至bitlecturepublic@163.com
第一章 基础知识
信号、信息、数字信号处理
- 信号:反映或载有信息的物理量(光信号、电信号)
- 信息:信号的具体内容(信号代表什么意思)
模拟信号:时间幅度均为连续
连续时间信号:时间连续,幅度连续或离散
离散时间信号:时间离散,幅度连续或离散
数字信号:时间和幅度均为离散值
其中既不属于模拟信号又不属于数字信号的的其他信号也在其中。很多教材中都会使用离散信号表示数字信号,这种说法是没有问题的。
采用数字信号是因为数字信号本身的一些不可替代的优势。目前鲜有仍采用全模拟信号的通信,对于模拟信号,往往也会采用数字处理方法。数字信号的具体优势有
- 抗干扰强,无噪声积累。经过一级处理后的数字信号不会积累噪声,我们可以通过判决再生的手段,将信号的噪声抑制掉,因为数字信号往往取离散值。而模拟系统的噪声是积累的,经过一级处理后,信号中的噪声就会被放大,设备的噪声也会叠加在信号中。
- 方便加密。离散值便于处理,这就不需要过多介绍了。
- 便于设备集成化微型化。数字信号处理时,大部分都采用数字电路进行处理,而数字电路的集成规模已经相当大了,体积小功率低。
- 便于构成通信网。标准化数字传输。不同信号之间转换方便。
数字信号处理:利用计算机或专用处理设备,以数值计算的方法对信号进行采集、变换、综合、估值和识别等加工处理,借以达到提取信息和便于应用的目的。数字信号处理(按照过程来分)一般包括去噪、特征检测和应用于实际这三个方面。
数字信号处理可以追溯到17世纪,当时已经采用了有限差分、数值积分、插值等方法,虽然与现代DSP还有很多不同,但是已经有了雏形。进入20世纪后,由于电子计算机等设备的出现,信号处理逐渐发展,成为了一个独立的学科。一般认为,1965年FFT的出现是数字信号处理这个学科的新开端,其中包含经典数字信号处理、统计数字信号处理 和 现代数字信号处理三大部分。
经典数字信号处理
- 离散信号和离散系统分析(系统的描述、单位抽样响应、转移函数、频率特性等)
- Z变换、DFT、FFT等信号域的变换
- FIR、IIR数字滤波器设计。
迄今为止本科学习的内容都是经典数字信号处理。
统计数字信号处理
统计数字信号处理的对象主要是随机信号。
- 随机信号描述,自相关函数估计,AR、MA、ARMA、PRONY等各种信号模型
- 经典功率谱估计和现代功率谱估计
- 维纳滤波和自适应滤波
这些课程在大三下学期可以选修。
现代数字信号处理
主要是非平稳信号的分析和处理
- 时频联合分析
- 滤波器组
- 小波变换
第二章 离散时间信号
典型离散信号
- 单位抽样信号$\delta(n)$
- 脉冲串序列$p(n)=\sum\limits_{k=-\infty}^{\infty}\delta(n-k)$
- 正弦信号,\(sin(n)=sin(t)\mid_{t=nT_s}=Asin(2\pi n\frac{f}{f_s}+\phi)=Asin(\omega n+\phi)\)。
- 复正弦信号,\(e^{j\omega n}=cos(\omega n)+jsin(\omega n)\)
- 单位阶跃信号,常写作\(u(n)\)。\(u(n)=\sum\limits_{k=-\infty}^{n}\delta(k)\),\(\delta(n)=u(n)-u(n-1)\)
- 指数信号,\(x(n)=a^{\mid n \mid}, \mid a \mid<1\)
离散信号的基本运算
-
延迟(位移)。\(y_1(n)=x(n-k)\),代表信号序列右移\(k\)个单位。
-
采样。\(x(k)=x(n)\delta(n-k)\),\(x(n)=\sum\limits_{k=-\infty}^{\infty}x(k)\delta(n-k)\)
-
+、-、*(需要信号有相同的长度和时间范围)
-
时间尺度变换
-
$y(t)=x(t/2)$ : 扩展,原来的$x(1)$相当于现在的$y(2)$,相当于对原信号进行插值,采样频率变为$2f_s$
-
$y(t)=x(2t)$ : 压缩,原来的$x(2)$相当于现在的$y(1)$,相当于对信号进行抽取,采样频率变为$f_s/2$
-
-
信号的分解
概念略显复杂。一个信号可以通过不同的基进行表示,例如时域中基函数为\(\delta(n)\),频域中为\(e^{j\omega}\)等,均可以表示为 \(x=\sum\limits_{n=1}^N \alpha_n \phi_n\) 形式,其中称\(\alpha_i\)为分解系数(即信号\(x\)在\(\phi\)基下的表示),\(\phi_i\)为基向量。可以理解为信号在向量空间中向不同基函数投影的结果。
-
信号的变换
上述分解的逆过程,相当于给定一个\(x\)信号和\(\phi_i\)的条件下求解分解系数。变换是将信号由一个域映射到另一个域内,常见的有傅里叶变换,希尔伯特变换,小波变换等。
离散信号的分类
确定信号、随机信号
平稳随机信号:统计性质不随着时间改变
遍历:随机过程的各个样本函数经历了随机过程的各种可能状态
维度区分
-
一维信号
-
二维信号
-
多通道信号
e.g. 彩色图像(R,G,B)
信号空间
\[\left\| x \right\|_p=\left[\int_{-\infty}^{\infty}|x(t)|^pdt\right]^{1/p}\\ \: \\or\\\: \\ \left\| x \right\|_p=\left[\sum_{-\infty}^{\infty}|x(t)|^p\right]^{1/p}\]每一类范数定义了一个信号空间($l_p$)
赋范线性空间:定义范数的线性空间
线性空间:$l_\infty, l_1, l_2$都是线性空间
度量空间:定义了距离的空间($l_2$)
内积空间
希尔伯特空间:完备的内积空间
施瓦兹不等式
\[\mid<x,y>\mid^2 \leq <x,x>·<y,y>\]上述尖括号运算是内积运算,运算如下
\[<x,y>==\int_{-\infty}^\infty x(t)y^*(t)dt\]或
\[<x,y>==\sum\limits_{n=-\infty}^{\infty}x(n)y^*(n)\]如果两个信号内积为0,我们说这两个信号是正交的。
确定信号的相关函数
\[\rho_{xy}=\frac{\sum\limits_{n=0}^\infty x(n)y(n)}{[\sum\limits_{n=0}^\infty x^2(n)\sum\limits_{n=0}^\infty y^2(n)]^{1/2}}\]其分母为两信号能量乘积的开方,分子是两个信号对应项的乘积(离散内积)。根据许瓦兹不等式,显然这个系数是小于等于1的。
当两个信号完全相等的时候,这个结果取得1;当两个信号完全不相关的时候,该结果就是0。由于\(\rho\)的取值范围是0到1,因此也叫作归一化的相关系数。
但是相关系数只能评价两个信号的相似程度,却不能评价两个信号在不同位置的相似程度。对于两个正弦信号来说,只要将另一个信号平移\(\pi/2\),相关系数立即从1降至0。
因此我们定义相关函数
\[R_{xy}(m)=\sum\limits_{n=-\infty}^\infty x(n)y(n+m)\]根据x和y位置不同我们写作\(R_{xy}\)和\(R_{yx}\),两者的关系是
\[R_{xy}(m)==R_{yx}(-m)\]这个相关我们称作互相关,对于两个信号都为同一信号的情况,我们称其为自相关。自相关函数反映了信号和其自身延迟的相似程度,记为\(R_X\)等。
相关函数的性质有
\[R_X(0)=\sum\limits_{n=-\infty}^\infty x^2(n)=E_X\](如果这个信号不是一个能量信号,该结果往往为无穷大)
\[R_X(\infty)=m_X\]DSP
研究的是离散信号,对于离散信号,相关函数定义为
自相关同理。特别的,自相关函数的周期和原信号周期相同(如果原信号是周期信号)。而且对于周期函数,我们计算时要更加简单
\[R_{X}(m)=\frac{1}{N}\sum\limits_{n=0}^{N-1} x(n)x(n+m)\]对于复信号的自相关,我们常常(习惯)取第一个x为其共轭值。如果不做说明,我们认为实际信号都是实信号。
自相关函数还有一些性质,例如
- 如果x是一个实信号,那么其自相关函数是实偶函数,如果x是一个复信号,那么相关函数\(R_X(m)=R_X^*(-m)\)
- 自相关函数在0处取得最大值,这时候代表的是信号的能量。
- 对于能量信号,当\(m \to \infty\)时认为自相关函数的值为。这与我们在随机信号中学习的不同,因为随机信号往往是一个功率信号。
- 互相关函数不是偶函数,但是\(R_{xy}(m)==R_{yx}(-m)\)
- 互相关函数在0处取得最大值为\(\sqrt{E_XE_Y}\)
- 两个能量信号的互相关函数在\(m \to \infty\)为0
相关函数往往应用在噪声中信号检测、隐含周期性检测等领域。
第三章 离散时间信号的傅里叶变换
傅里叶级数
傅里叶发现任意一个周期信号都可以分解为无穷多个不同频率的正弦信号和,这个就叫做傅里叶级数,高等数学中有详细证明。弦信号有正交性,这也是我们选择它为基向量的原因(不理解这句话的可以往回翻翻).
傅里叶级数实际上是先找一组基向量${e^{-jk\Omega_0t}}_{k=1}^{N}$,然后将信号在这组向量上投影(做内积)得到傅里叶系数,实际上傅里叶系数对应着第$k$次谐波的系数,所以一般频域时离散的,间隔为$\Omega_0$。如果要求傅里叶系数,根绝内积空间基向量的定义(正交),左右两边同时积分然后除以一个常数(基向量自己做内积得到的值)即可得到系数。
傅里叶变换
傅里叶级数 | 傅里叶变换 |
---|---|
$X(k\Omega_0)$表示第k次谐波幅度的大小 | $X(j\Omega)$表示频谱密度 |
周期信号/功率信号 | 非周期信号/能量信号 |
从量纲上来看,$X(j\Omega)$等于谐波幅度$X(k\Omega_0)$除以频率$\Omega_0$(乘以周期T),所以$X(j\Omega)$是频谱密度的概念。
Parseval定理
信号在不同空间的投影时,能量或功率不变。 \(X(j\Omega)=\int_{-\infty}^{\infty} x(t)e^{-j\Omega t}dt = \int_{-\infty}^{\infty} [\sum\limits_{k=-\infty}^\infty X(k\Omega_0)e^{jk\Omega_0 t}]e^{-j\Omega t}dt\)
截短(加窗)对信号频谱的影响
时域相乘,频域进行卷积,结果是主瓣(主瓣宽度$B=4\pi/N$)对原信号的频谱起到了平滑作用,降低了对原信号频谱中谱峰的分辨能力,一般要求$B>|\omega_2-\omega_1|$,此时可以分辨开两根谱线(两个正弦信号)。
频谱泄漏:由于旁瓣的存在,卷积后原本为0的位置不为0,这种现象称之为频谱泄漏,旁瓣越大,泄露越严重。
-
频率分辨率降低
增加窗函数长度(信号长度)可以提高频率分辨率
-
频谱泄漏
由于旁瓣造成
主瓣宽度和旁瓣幅度不可能同时减小。
抽样定理
Fig.1 采样定理
对于一个带宽有限(这时才有最高频率$f_c$)的连续信号$x(t)$,在时域对其抽样,相当于在频域进行周期化(离散$\rightarrow$ 周期化),只要符合采样定理(即频域的周期$f_s$大于$2f_c$),就不会发生重叠,所以之后可以恢复成原信号。
信号的重建
只要满足抽样定理,由无穷多加权移位sinc函数的和即可重建出原信号。
对于正弦信号,抽样时,$f_s$应该是原信号频率$f_c$的3倍即以上。一般FFT要求是2的整数倍,所以可取4倍,即每周期4个点。
频率分辨率
第一种定义
$\Delta f=1/T$,$T$是$x_T(t)$的长度,无限长信号$x(t)$加窗
这种定义下,要是增加频率分辨率就只有增加窗的长度,即增加信号长度。
or
$\Delta f=f_s/N=1/(NT_s)=1/T$,信号长度为$T$,取样周期为$T_s$,一个周期取$N$个点。
第二种定义
$\Delta f=f_s/N$,DFT时频率轴上所能得到的最小频率间隔
可以通过提高采样率和在数据后面补零来增加序列长度$N$,但是不能提高物理频率分辨率,因为不能改变原模拟信号的频谱形状。
DFT中的N指序列长度,可以通过补零增加序列长度,其分辨率指相邻谱线的间隔。
DTFT中的N指的是有效序列的长度,与T有关,其分辨率与窗函数主瓣宽度有关。
频率分辨率:一是取决于信号的长度,而是取决于频谱分析的算法。
补零问题
-
不能提高频率分辨率,因为没有增加数据的有效长度
-
补零后方便计算,同时有利于辨认原信号频谱(的形状)
FAQ - I
1. 频率分辨率以及DFT参数的选择
频率分辨率有两种定义,一般在教学时讲的是仪器分辨频率间隔的物理极限。
第一种定义是,某一种算法将原信号中两个靠的很近的谱峰保持分开的能力,用来检验算法的好坏。在FT中假设信号长度为T,假设视为无穷长度信号与长度为T的矩形窗进行相乘,则\(\Delta f\)可以定义为\(1/T \ Hz\)。
这个变换结果就是原信号频谱对sinc函数做卷积。假设原信号中存在两个谱峰,想要辨别这两个谱峰,就需要
\[4\pi /T < abs(\Omega_1-\Omega_2)\]如果我们采用DTFT的方法,假设抽样间隔为\(T_s\),抽样点数就是\(N=T/T_s\)。想要分辨两个谱峰,就需要
\[4\pi /N < abs(\omega_1-\omega_2)\]这个频率是归一化的频率。
此时频率分辨率定义为
\[\Delta f=f_s/N\]如果采用其他窗函数,由于主瓣宽度的不同,频率分辨率也会产生变化,与其他窗函数相比,矩形窗对频率分辨的能力是最强的了。在有些文献中,DTFT定义的分辨率有时被称作物理分辨率。
对于一个仪器设备来说,如果要提高设备的采样频率,受限于物理极限,它的采样点数也会增加;相应的也是相同道理。因此我们说频率分辨率不是容易轻易改变的。
第二种定义是在DFT中定义的。相比前面在DTFT中的定义,DFT中用相同的表达式定义\(\Delta f=f_s/N\)为计算分辨率,是频率轴上最小的频率间隔。当我们对一个信号观测不完全时,可以通过补零的方式将信号看的更加详尽(增加了N),但是对于频率分辨率来说是不会提升的。
DFT中N指的是序列的长度,但是DTFT中的N指的是有效序列长度,与T有关,分辨率与窗函数的主瓣宽度有关。
总结起来就是,在数据长度一定的条件下,采用不同的窗函数将在频率分辨率与频谱泄漏之间取舍。频率分辨率取决于信号长度和频谱分析的算法。除了频率分辨率还有时间分辨率的问题,他们也存在相互制约关系,此处不展开简介。
Fig.2 例题
我们可以自己使用MATLAB做一个测试。
一般的我们认为,首先选取一个高于最高频率二倍的采样频率,并根据频率分辨率要求设置信号长度N,并且尽量是2的整数次幂。此时根据N和采样频率我们还可以确定模拟信号的频率。
2. 补零问题
补零不能提高频率分辨率,因为信号的有效长度就那么长,补零没有帮助。另外2的整数次幂有利于FFT的运算,数据过短时,补零可以对频域产生插值效果,有利于辨认频谱本身的形状。
3. 四种傅里叶变换的关系
Fig.3 四种傅里叶变换
本章考点
- 四种傅里叶变换的概念、区别及联系。
- 截短信号的影响频率分辨率降低与频谱泄漏
- 抽样定理(正弦抽样)
- DFT导出,DFT与FT、DTFT的关系
- 圆周卷积和线性卷积
- FAQs
第四章 离散时间信号的采样率转换
线性时不变系统始终工作在相同信号速率的条件下,即系统输入、输出以及中间环节的信号采样频率相同,但是实际上在不同任务下采用不同的采样速率可能对该任务更合适,因此需要采样速率转换的技术。转换的原则就是不能使信号失真。
采样速率转换技术是软件无线电的理论基础。据说软件无线电技术前一阵火了一段时间,后来又销声匿迹掉了(纠正,只是没有发展的时候那样的井喷了,还是有很多人在研究的)。由软件平台定义通信协议,而不依赖于专用硬件。
采样率转换技术常用在宽窄带联合处理的系统中,用意是降低计算复杂度,降低传输速率,并减少存储量。在采样定理满足的前提下,实际上最容易想到的方式是将某一抽样信号进行DA转换,并经过另一个AD转换变成另一种频率。这方法有脑子的人都会觉得不行。槽点太多吐不过来了。
要注意的事情是采样前后信号的功率不发生变化。
下采样
系统结构
实现过程
每隔M-1个点取一个数,如2倍下采样,输出为$x(0), x(2), x(4)\dots$
Fig.4 降采样实现过程与完整抽取器
分析
从频谱上来看,若以$f$为横坐标,因为采样周期增大,相当于采样速率$f_s$减少,因此相当于频谱的周期减小为原来的$f_s/M$(这就意味着下采样后的信号频谱可能会发生混叠,因此在下采样前就要根据下采样的倍数设计抗混叠滤波器,也就是低通滤波器$\omega_s=\pi/M$);若以$\omega$为横坐标,采样率(下采样前为$f_s$,下采样后为$f_s/M$)对应着$2\pi$,所以结合之前说的,会有M倍扩展的现象。看起来带宽展宽了,实际上并不是。这里是归一化频率。实际上带宽不会有任何变化。
Fig.5 降采样后频谱变化
下采样可能导致频谱混叠
Fig.6 混叠
上采样
系统结构
实现过程
原信号中间每两个采样点之间插入$L-1$个零值。
分析
分析过程基本同下采样,注意的是,当抗镜像滤波器采用带通滤波器,可以实现上变频。
分数倍采样率转换=上采样+下采样
此时抗镜像滤波器可以和抗混叠滤波器合并
多级系统实现采样率转换的目的是简化滤波器设计(降低阶数)
第五章 采样率转换中的数字滤波器设计
滤波器作用
-
抽取滤波器:抑制混叠
-
内插滤波器:消除镜像
六个恒等关系
FIR 滤波器的多相结构
FIR 滤波器与 IIR 滤波器最大的不同就是线性相位。线性相位在物理上的体现实质上就是不同频率的信号经过系统后各频率成分的延迟时间是一致的。
-
使用恒等关系,将滤波器和变采样率操作交换位置,使滤波器工作在低速率端,降低了对运算速度的要求,提高了实时性的实现可能程度。
-
同样,因为CIA杨速率的降低,滤波器的阶数可以分别降低为原来的$1/M\ or\ 1/L$
IIR 滤波器的多相结构
IIR 滤波器具有低复杂度的缺点,但典型的缺点是相位非线性以及对量化噪声敏感
半点滤波器和 CIC 滤波器都是为了减小计算量,提高实时性
半带滤波器
半带滤波器在$[0, \pi)$关于点$(\pi/2, 1/2)$中心对称
时域
$h(k)=\begin{cases}1, k=0\\0, k=\pm 2, \pm 4 \end{cases}$
偶数系数除了零点外均为 0 ,因此计算量减小一半
频域
$H(e^{j\omega})=1-H(e^{j(\pi-\omega)})$
$H(e^{j\pi/2})=0.5$
CIC 滤波器
时域
$h(n)=\begin{cases}1, 0\le n \le D-1\\0, others \end{cases}$
计算时只有加法没有乘法,无需存储器存储滤波器系数,计算简便
频域
$H(z)=\frac{1-z^{-D}}{1-z^{-1}}$
补充
FIR 滤波器与 IIR 滤波器的区别
双线性变换法和脉冲响应不变法的区别
第六章 小波变换
FT | $\delta$展开 | STFT | WT |
---|---|---|---|
频域角度分析 | 时域角度分析 | 时频角度分析 | 时频角度分析 |
\ | \ | 高频信号时间短,低频信号时间长,时间窗大小不可变 | 窗函数大小随着频率变化而变化 |
小波函数特点
-
定义域有限
-
直流分量为$0$
连续小波变换(CWT)
基函数
$\psi_{a,b}(t)=a^{-1/2}\psi(\frac{t-b}{a}),a>0,b\in R$
尺度因子a越大,时间窗口越大,频域窗口越小,二者乘积(窗口面积)不变。恰好符合实际中信号高频持续时间短,低频持续时间长的特点。 由于母小波函数在频域的带通特性,其伸缩和平移就可以看作是一组带通滤波器。
小波变换相当于把一个时间函数投影到二维的时间-尺度平面上,李玉提取函数的某些本质特征。
性质
-
叠加性
-
时移不变性
-
微分
-
卷积
-
Parseval定理
常用基函数
-
Morlet小波
时频都有很好的局部性
-
Marr小波
高斯函数的二阶导数,0处有二阶零点
-
紧支集样条小波
类似于一个周期的正弦波
离散小波变换(DWT)
离散小波,指 a, b 离散,而不是对函数(信号)$f(t)$离散化
通常对 a 进行幂级数离散化(一般底数取 2 ,即$a=2^m$)。
特点
-
DWT 仍有冗余度
-
DWT 不再满足时移不变性
二进小波
需要注意的是,二进小波知识对尺度因子离散化,因此它仍具有时移不变性,但二进小波仍然是冗余的。
正交小波变换
中心思想:大尺度因子的信号信息包含在小尺度因子的信号信息中。可以将正交小波和 FFT 快速算法结合在一起思考。将其想象成是一个去冗余度的过程。
基于 WT 的小波去噪
-
将信号投影到小波域,即进行离散(why 离散?因为之后是对小波系数进行处理)小波变换。
-
对小波系数进行阈值处理。
-
硬阈值处理:系数超过阈值则不变,否则变为 0
相当于是只去除只有噪声的小波系数,没有一视同仁,所以最终的信号会产生震荡
-
软阈值处理:系数超过阈值则减去阈值,否则变为 0
相当于是既去除只含噪声的小波系数,又去除同时含信号和噪声的小波系数中的噪声部分,所以处理后的信号会比较平滑
-
-
再将信号小波域投影到时间域,即进行逆小波变换。
作业题解
作业1
离散时间傅里叶变换(DTFT)公式为
\[X(e^{j\omega})=\sum\limits_{n=0}^{N}x(n)e^{-j\omega n}\]带入求解,将余弦信号拆成两个复频率的和进行求和。也可以认为是一个sinc信号卷积两个峰值。这个信号相当于无限长余弦信号加矩形窗。
如果计算的话,可以计算为
\[\sum\limits_{n=0}^{N-1}e^{-j\omega n}=D(e^{j\omega})=\frac{1-e^{-j\omega N}}{1-e^{-j\omega}}=e^{-j(N-1)\omega/2 }\frac{sin(\omega N/2)}{sin(\omega /2)}\]这个DTFT相当于两个数字Sinc函数叠加
离散傅里叶变换(DFT)为DTFT的单周期采样。
\[X(k)=\sum\limits_{n=0}^{N-1}x(n)e^{-j\frac{2\pi}{N}nk}\]和上面的公式相比就是将\(\omega\)进行了采样。采样时\(\omega=2\pi k/N\)
这里采样点数为12点。那么将得到几个离散点。根据常识应该是离散谱线两条。
补零后得到2N长度序列,重新求解。根据性质我们知道,补零的时候可以让点数增加,使结果看起来更加密集,但是实际上不会改变频率分辨率。因此结果相当于做了插值,但是计算起来较为麻烦了。DTFT不会有明显变化,因为后面系数都是0,但是DFT会变得密集。DFT就是DTFT在一个周期内的采样。
采样频率是20KHz,则在DFT中,最大实际频率就是20KHz,有效部分是10KHz区域。k=150这里按照比例计算可以知道,频率应该是150/500*10K=3KHz,但是关于k=700的问题,这里我觉得存在问题。这里的700应该镜像到300的位置,表示6KHz,但是答案给的是14KHz。
圆周频率直接按照\(\pi\)的比例来就行了。
题目的意思是首先对N点序列求DTFT,然后对结果进行单位圆上的等间隔抽样。这个过程不就是求DFT么。一共求了M点DFT。对这个结果进行反变换,求解这个M点时序序列\(y(n)\)和N点时序序列\(x(n)\)的联系。
思路一:
首先按公式求出x的DTFT,然后做抽样,求解DFT,最后求反变换,按照上述步骤计算最后可以化成两个求和。继续推公式可以求出x和y的关系
思路二:
整理的时候会发现实际上就是N点的x做了M点的DFT和IDFT。我们说变点数的DFT之间的关系就可以写作
\[y(n)=\sum\limits_{r=-\infty}^{\infty}x(n-rM)\]即原N点序列的平移M点加和。
信号\(\{ 1,2,3,4\}\)通过系统\(\{ 4,3,2,1\}\),如果直接计算线性卷积,可以采用表格法进行计算,也可以滑动求和。对于循环卷积,可以采用定义法计算,将信号序列按逆时针排列成圆放过在内圈,将传递函数按顺时针排列放在外圈,将对应项对齐后进行对应项乘积求和。对下一时刻,可以将内圈顺时针转一个位置,也可以将外圈逆时针转一个单位,继续进行同样的计算。
循环卷积计算线性卷积的方法,首先根据要求补零,已知计算结果是\(M+N-1\)长度,因此需要进行补零到这个长度,然后利用圆周卷积计算法进行计算即可。
这两个卷积运算结果是相同的,但是圆周卷积计算的结果点数与原来信号的点数相同,而且也只有点数相同的信号可以进行运算。
快速算法,首先补零,然后计算对应点数的DFT。DFT后进行乘积运算,将结果做对应点数的IDFT。
用第三题的结果。b=3。
直接做DFT得到的结果是分离谱线。
如果在原信号的基础上增加点数,实际上并没有增加采样频率。对于同一个信号,不同长度但间隔相同,变换结果也是相同的,不同的只是补零,相当于做了个频域的内插。
但是对于8点序列,如果要计算16点DFT,我们可以确定结果是原来的8点序列内插一个插值点。至于结果如何不用精确计算。如何得出这样的结论?
DFT运算公式为\(X(k)=\sum\limits_{n=0}^{N-1}x(n)e^{-j\frac{2\pi}{N}nk}\),观察公式我们可以看出,当k/N为一定值时,与前一问计算结果相同,可以确定偶数点的计算结果是与8点DFT相同的。其他位置是一个插值,可以随手画一下。
频率分辨率问题。可以计算64点DFT的频率分辨率,是\(\frac{2\pi}{64}\),即\(\frac{\pi}{32}\)。对于信号1,其频谱间隔最小值为\(\frac{\pi}{64}\),因此不能分析该信号的两个峰;显然第二个就是在分辨率允许范围内的。但是仍要考虑一些其他因素。第二个信号的最小频谱间隔为\(\frac{5\pi}{64}\),此时是有可能出现频谱叠加在一起出现新的峰值的问题的。对于第三个信号而言,因为另一个频率分量太小了,首先显示时就看不到;其次,如果这个操作是加窗操作,那么一定会出现不同程度的泄漏问题。稍有泄漏,这个信号就有可能淹没在泄露的频谱中。
首先这个图是一个128点的,图上显然是第8和16点,那么对应的就是\(\pi/8\)和\(\pi/4\)。
显然高频率的幅度高三倍左右,而且又是一个幅度谱,相位信息不会影响结果。
注意一个DFT的性质,如果在时域中幅度为1,在频域中这一项对应的高度最大值应当是点数N,如果有分量谱线,则考虑帕斯瓦尔定理。对于弦函数来说,结果是各分一半的关系。
作业2
实际上这一部分才是重点。
实正弦信号就是sin,复正弦信号就是\(e^{j\omega}\)。对于100K的采样频率来说,如果中心频率为10K,则两对称谱线就是10K和90K,如果采样40K信号,就是40K与60K的对称谱线。
采样后二倍抽取,这个就很神秘了。二倍抽取的本质为降采样过程,降低了采样速率(降为1/2)。首先对信号滤波,防止出现信号的混叠(抗混叠滤波器),这个滤波器在这里没有要求设计,实际要观察一下频谱变化来设计一下。
抗混叠后,采样速率会降为50K。从数字频率来理解这个问题,数字频域上信号频谱会扩张2倍,但是此时最高的\(2\pi\)已经变成了新的\(f_s'=50KHz\)。
两组结果相同,均为10K和40K。
这一题原来存在第三问,由于超纲删去了。是个处理增益的问题。如果先进行100K采样后进行两倍抽取就会比直接50K采样高3dB的SNR,因为100KHz的采样会把噪声分摊到100K带宽中,噪声功率谱密度总体降低一倍。
毫无考点的一道题。主要考察在上采样后的信号出现的镜像频率在什么位置。上采样的变换过程在数字域可以理解为,频谱收缩M倍,然后原位置仍为\(2\pi\),这样M倍上采样就是获取了M个相同的频谱。但是实际频率的大小仍然不发生改变。因此实际频率的取值仍然可以写作45K和65K,但是数字域上的通带频率和阻带频率都会变为原来的1/3。毫无考点。
采样率转换中使用多级实现的必要性,并说明多级实现相对于单级实现采样率转换需要注意的问题。
- 采样率转换多级实现的必要性:首先单级实现是有限度的,不能无限制的实现需要的放大倍数,其次如果想要实现非整数倍的采样速率变换,那么就需要采用多级实现。
- 需要注意的问题:多级实现的时候带内波动会累加,因此要严格控制带内波动;多级实现可以考虑先上采样后下采样,可以节省滤波器;噪声叠加,要注意抑制噪声。
阐述多相实现结构在采样率转换系统中的作用
多相实现可以实现并行处理。另外多相处理出现的意义实际上是降低滤波器对处理速度的需求。因为往常情况下滤波器都是工作在高速端口的,这样可以让滤波器工作在低速端口。
阐述半带滤波器的时域系数特点和其可高速实现的原因,并简单说明其作为2倍抽取滤波器时的抗混叠情况
所谓半带滤波器,就是频域上通带和阻带各自的截止位置关于\(\pi/2\)对称。
理想半带滤波器在频域上就是一个矩形,因此频域系数都是1;即使不是理想半带滤波器,频域上也是一个满足无码间串扰条件的滤波器。时域上,由于满足了无码间串扰的频域条件,因此结果是有一半的点为0。所以可以节省一半的乘法运算。
二倍抽取时在通带\(\omega_c\)之外就会发生混叠,在其中时就会较为稳定,因此要求信号有效范围在\(\omega_c\)以内。
阐述CIC滤波器的系数特点和其可高速实现的原因,并给出多级CIC滤波器的优缺点。
CIC滤波器看起来就是个矩形窗一样的结构(时域)。这样时域系数就都是1,不用进行乘法运算,只用进行加法运算。一般的积分梳状滤波器可以达到最快的处理速度。
多级的优点:CIC滤波器阻带衰减不足,多级实现可以有利于阻带衰减提高
缺点:多级实现会出现一个与内插(抽取)因子有关的处理增益(从而导致运算溢出),而且积分梳状滤波器的带内波纹也比较明显,会在多级中叠加。
作业3
短时傅里叶变换的基本思想是什么?优缺点为?
基本思想是对信号进行加窗截断后再进行傅里叶变换,这样就可以处理长度很长的信号,可以分析窗内信号的局部特征。
优点是终于可以时频联合分析了,在频域定位精准的同时还可以有一定的时域定位性,即变换结果终于既含有时间信息又含有频率信息。原本的傅里叶变换完全没有时域定位性。
缺点是固定的窗只能分析一定频率范围的信号,对于超出范围的信号分析能力很差。短时傅里叶变换的窗口大小固定,而且与信号本身没有什么关系,对于高频与低频混合信号与长期无有效信息的信号不能同时做到很好的分析识别处理。
什么是窗口面积?试分析窗口面积随着a 和b 的改变发生变化吗?
一个算法的时域窗口与频域窗口的长度乘积就是窗口面积,这大小是不随a和b变化的。首先b的大小不会影响到窗口大小,只会影响时移。a越大,1/a越小,此时时域就会延展,相应的频域就会做收缩,通过积分变换的性质容易看出窗口大小与a的变化无关。
两个大小之间是相互制约的。
为什么小波变换被称为变分辨率的时频联合分析法?
尺度因子a较大时,时间窗较大而频率窗较小,中心频率较小,分析低频成分
,反之分析高频成分。这时做的是频域分析,而如果改变b,就是时域分析。
因为小波母函数是一组满足了特定条件的基函数的平移与变换得到的,因此其窗函数大小可以适配很多频率的情况,从而达到时频域的联合分析。
a-b域内的任意函数是否都能看作是一个信号的x的小波变换系数吗?
显然不能,因为小波变换系数还要满足再生核方程,不满足这个条件就不能做反变换得到原信号。
对某一函数x(t)进行离散小波变换,是对t进行离散化吗?
离散小波变换离散的a和b而非对t进行
连续小波变换、离散小波变换和二进小波变换中,哪种变换不具有时移不变 性?为什么?
离散小波变换没有时移不变性。
连续小波和二进制小波有时移不变性。因为这两种变换对时域因子b都没有离散化处理。如果未进行该处理,经过积分变换(线性变换)的结果应仍然是满足时域不变性的,但是离散变换对b做了离散化,就不能保证每一个时域变化都能对应离散的结果。
画出某一序列f(n)进行二级正交小波分解与重构的框图。
从滤波器组的角度看,实际上这个过程就相当于过正交滤波器组。假设\(h_0,h_1\)是一对双通道滤波器,其中0具有低通性,1具有高通性,两个滤波器输出分别代表了原离散信号的低频概貌和高频细节。原始频带信息经过滤波器组后分成两部分,输出带宽只有原来序列的一半,进行两倍下采样后不会丢失信息。经过如此反复抽取后就对信号进行了N级正交小波分解与重构。随着分解级数的增加,尺度因子a增大,输出信息越低频。
重构就是将上述过程反着来一遍。随着重构进行,尺度因子a逐渐减小。
一些噪声噪声在小波域中会集中在少数一部分小波向量基中,而在其他大部分向量基中比较分散,因此可以对这几个向量基进行阈值处理来去除一定强度的噪声。
- 首先进行小波变换
这里可以写一下是咋变的,例如Y=WT(X)这样的
- 选定正交基进行阈值处理
选正交基并把它阈值阈值掉的方法很多,有硬阈值(2范数误差更小)和软阈值(光滑性好)等
- 进行小波反变换
将结果变回去