DSP
导论
Signals and Signal Processing
Characterization and Classification of Signals(信号的特征与分类)
- 分类依据:
- the nature of independent variables(独立变量的性质)
- the value of the function(函数的值)
- 根据自变量个数分:
- 1-D signal(一维信号):一个自变量的函数,如语音信号
- M-D signal(多维信号):多个自变量的函数,如图像信号(二维)、视频信号(三维)
- 根据源的个数分:
- scalar signal(标量信号):单个源,如单通道音频信号
- vector signal or multichannel signal(向量信号或多通道信号):多个源,如彩色视频信号、多通道脑电波信号
- 根据时间自变量和振幅的连续性分:
- continuous-time signal连续时间信号:自变量连续取值
- analog signal模拟信号(amplitude振幅连续)
- quantized boxcar signal量化矩形信号(振幅离散)
- discrete-time signal离散时间信号:自变量离散取值
- digital signal数字信号(振幅离散)
- sampled-data signal采样数据信号(振幅连续 )
- continuous-time signal连续时间信号:自变量连续取值
- function of the indepenent variables(关于独立变量的函数)
- continuous(连续函数)
- discrete(离散函数)
- real(实值函数)
- complex(复值函数)
- 是否有惟一确定的描述
- deterministic signal(确定性信号)
- random signal(随机信号)
数字信号
- 定义:可用一串数表示,每个数又可表示为有限位二进制码
- 用途:可在数字存储设备上存储,且适合计算机处理
- 应用:数字化音乐信号、数字化语音信号、由数码相机或扫描仪等生成的数码影像
离散时间信号的时域分析
Discrete-Time Signals in the Time Domain
知识点
Time-Domain Representation(时域表示)
- 序列的时间维度:
- finite-length sequence(有限长序列):
可通过补零(zero-padding)增加序列长度 - infinite-length sequence(无限长序列):
right-sided sequence( 右边序列,N < N1,x[n]=0),特殊情况为causal sequence(因果序列,N1≥0)
left-sided sequence(左边序列,N > N2,x[n]=0),特殊情况为anti-causal sequence(反因果序列,N2≤0)
two-sided sequence(双边序列,有限个0)
- finite-length sequence(有限长序列):
- 序列的振幅值维度:
- complex conjugate sequence(复共轭序列):实部(real parts)相同,虚部(imaginary parts)互为相反数
- 序列的长度即为数的个数
Operations on Sequences(序列运算)
- 不等长序列的基本运算(Elementary Operations):补零,并使时间对齐
- 具体序列的卷积和( Convolution Sum)计算方法:
- 反转滑动(flip-and-slide)
- 卷积计算的解析式法
- 两个序列卷积得到的新序列长度为N+M-1
Operations on Finite-Length Sequences(有限长序列运算)
- modulo operation(模运算): ${< m >}_{N}$
- 对于有限长序列运算,有限长序列的时间范围限定在0≤n≤N-1
- 有限长序列运算:
- Circular Time-shift Operation(循环时移运算): $x[{< n-n0 >}_{N}]$
- Circular Time-Reversal Operation(循环反转运算): $x[{< -n >}_{N}]$
- 本质:把有限长序列看作是一个周期序列的一个周期,有限长序列运算可以看作是对周期序列时移再取主值周期这样一个过程
Typical Sequences and Sequence Representation(典型序列与序列表示)
- 共轭(*)即对虚部取反
- Conjugate-symmetric sequence(共轭对称序列):x[n]=x*[-n],即在序列中,距0时刻序列相同距离,实部相同,虚部相反
- 如果x[n]只有实部,x[n]=x[-n],x[n]为even sequence(偶序列)
- Conjugate-antisymmetric sequence(共轭反对称序列):x[n]=-x*[-n],即距0相同距离,实部相反,虚部相同
- 如果x[n]只有实部,x[n]=-x[-n],x[n]为odd sequence(奇序列)
- 任意序列都能求出其共轭对称部分或共轭反对称部分
- 基本序列:
- Unit sample sequence(单位采样序列):δ(n)
- Unit step sequence(单位阶跃序列):μ(n)
- 正弦序列的周期性:满足 $w_{0}N=2{\pi}r$(N和r都是整数)
- 实正弦序列
- 复正弦序列
- 四种频率形式:
- 两个不同频率的正弦序列,经过采样后产生相同的正弦序列条件:频率(正负频率)相差采样频率整数倍
- 采样后得到的离散时间正弦序列不发生混肴(aliasing)的条件:
习题小结
- 两个有限长序列(a≤n≤b,c≤n≤d)卷积,卷积和范围为a+c≤n≤b+d
- δ[n-m]*δ[n-r]=δ[n-m-r]
离散时间信号的频域分析
Discrete-Time Signals in the Frequency-Domain
CTFT
- 对于周期信号的频谱,本质是通过指数形式的傅里叶展开,系数 即为频谱,是复指数,随kΩ变换
从频域(jkΩ)的维度来看(Ω为2Π/T),频谱离散,研究的其实是不同的kΩ下, 的幅度以及相位
连续时间的周期信号 $f_{T}(t)$ 的指数形式傅里叶级数: - 对于非周期信号的频谱,实际是频谱密度函数,可看作其周期T无限大,Ω趋于0,即频域连续
从频域(jΩ)的维度来看,频域连续,研究的F(jΩ)的幅度及相位,傅里叶反变换 ,本质上依旧是f(t)的傅里叶指数形式展开,将系数 变成 (因为Ω无限小),求和变为积分
模拟信号(analog signal,时间连续,振幅连续,一般指非周期信号)的傅里叶变换及其反变换: - 结论:
时域周期,对应频域离散
时域非周期,对应频域连续 - 思想:傅里叶变换是一种信号分解的思想,在CTFT中,分解的基信号是
DTFT
- 定义式:
- 是关于ω的连续,周期(2Π)函数
- $X(e^{j\omega } )$是复数,因为有
- 极坐标:
- 幅度谱(magnitude spectra):
x[n]实数,幅度谱偶对称 - 相位谱:
不唯一,主值(principal vlaue)区间:
x[n]实数,相位谱奇对称
- 幅度谱(magnitude spectra):
- 实部+虚部
- x[n]实数,谱实部偶对称,虚部奇对称
- 极坐标:
x[n]为实数:
- x[n]偶函数,谱是实数
- x[n]奇函数,谱是虚数
x[n]为复数:
信号时域能量等于信号频域能量
CTFT与DTFT的关系
- 结论:即对一个连续时间信号f(t)以采样周期T采样得到的离散序列x[n]的DTFT是f(t)的CTFT进行移位,缩放(scale)得到的
Recovery of the Analog Signal(模拟信号的恢复)
- Anti-aliasing prefilter(抗混叠前置滤波)
- 作用:避免混叠效应的不利影响
- 原理:模拟低通滤波器,截止频率 $\Omega_{T}/2$,通带范围:
- S/H(采样保持电路)
- 作用:模数转换需要一定的时间,确保A/D的模拟信号幅值恒定
- analog-to-digital(A/D,模数转换器)
- digital-to-analog (D/A,数模转换器)
- Reconstruction fliter(重建滤波器)
- 低通滤波器
- 采样定理(Sampling theorem)满足采样定理,频谱不混淆,才能正确恢复模拟信号
离散时间系统
Discrete-Time Systems
系统时域分析
离散时间系统举例
- 累加器(Accumulator):y[n]=y[n-1]+x[n]
- 作用:将当前以及当前时刻之前的所有输入样本进行累加,可视为连续时间积分器的离散时间等效
- 滑动平均滤波器(Moving-Average Filter)
- 作用:用于平滑数据中的随机变化,去除随机噪声
- 局限性:适用随机波动变化快的噪声,信号要没有剧烈随机波动,否则不但滤除了噪声也滤除了信号
- 线性内插器 (Linear Interpolation)
- 作用:用于估计离散时间序列中相邻的一对样本值之间的样本值大小
- 因子为4的内插:
- 中值滤波器(Median Filter)
- 原理:通过在输入序列{x[n]}上滑动一个长度为奇数的窗口来实现的,每次滑动一个样本值。在任一时刻,滤波器的输出都为当前窗口中所有输入样本值的中值
- 作用:常用于去除加性随机冲激噪声,这类噪声将会导致受干扰信号中存在大量突发错误
离散时间系统分类
- 线性系统(Linear System)
- 时不变系统(Time-Invariant System)
- 证明步骤:
- 输入延迟x[n-n0]
- 延迟后的输入进入系统得到延迟输出 $y_{D}[n]$
- 输出延迟y[n-n0]
- 验证 $y_{D}[n]$ 是否等于y[n-n0]
- 证明步骤:
- 线性时不变系统(Linear Time-Invariant System)
- 因果系统(Causal System):输出的变化不先于输入的变化
- 注意:在数字系统中非因果系统是可以实现的,可以将非因果(noncausal)系统转化为因果系统实现,因果系统的输出相当于非因果系统的输出延迟,模拟系统不可以实现非因果系统
- BIBO稳定系统(BIBO Stable System):输入有界,输出有界
- 无源与无损系统(passive and lossless system):
- 无源离散时间系统:对每个具有有限能量的输入序列x[n],输出序列y[n]的能量不超过输入的能量
- 无损系统:输出序列y[n]的能量等于输入的能量
- 对于LTI系统
- 系统脉冲响应h[n]绝对可和,则该系统稳定
- h[n]是因果序列(n<0,h[n]=0),则该系统为因果系统
卷积和
注意:只有线性时不变系统才能这样写
系统串联与并联
- Cascade Connection(串联)
时域卷积,频域相乘 - Parallel Connection(并联)
时域相加,频域相加
有限维LTI离散时间系统表示
- Linear Constant Coefficient Difference Equation(线性常系数差分方程)系统的阶数(order)为max(N,M)
系统频域分析
离散时间系统的频域表示
- $ H(e^{jw}) $:frequency response(频响)
- gain function(增益函数):
- attenuation or loss function(衰减或损耗函数):
关于系统频响对系统分析的结论:
注:输入,输出信号都是时域信号
离散时间系统的频响
- Frequency Response of LTI FIR discrete-time system:
- Frequency Response of LTI IIR(infinite impulse response) discrete-time system:
有限长离散变换
Finite-Length Discrete Transforms
N-point DTFT | 范围 | IDFT | 范围 |
---|---|---|---|
$X[k]=\sum_{n=0}^{L-1} x[n]e^{-j\frac{2\pi k }{N} n} $ | $0\le k \le N-1$ | $x[n]=\frac{1}{N} \sum_{k=0}^{N-1} X[k]e^{j\frac{2\pi k}{N}n }$ | $0\le n \le N-1$ |
- 循环卷积
时域 | 频域 |
---|---|
- 在时域用循环卷积方法计算线性卷积
条件:循环卷积长度大于等于线性卷积长度,可以对序列补零增加循环卷积长度 - 在频域用循环卷积方法计算线性卷积
- 对x[n],h[n]补零,保证两序列长度相等且等于原序列做线性卷积的长度
- 分别做N+M-1点DFT
- 频域相乘
- 做N+M-1点IDFT
- 用循环卷积计算线性卷积优势:
用FFT,算出频域中的X[k],H[k]
两者相乘即得频域中的循环卷积
再用公式 - 循环共轭对称(circular conjugate-symmetric)
- 循环共轭反对称(circular conjugate-anti-symmetric)
- x[n]是实数
- X[k]循环共轭对称
- x[n]偶函数且循环对称,X[k]是实数,偶函数,由实数可推出其循环对称
- x[n]奇函数且循环反对称,X[k]是虚数,奇函数,由虚数可推出其循环反对称
小结
- 从DTFT缩减到DFT,从原本的时域离散变换到频域连续缩到时域离散变换到频域离散
本质上说明了有限长时域信号的恢复只需要频域上有限个离散的点 - DTFT与DFT的关系,就是将w变为 2Πk/N
- DFT-based approach:矩阵方法
- 有限长序列x[n]长度M与频域采样点数N相等时,从频域变换到时域时,x[n]不变
- x[n],h[n]进行循环卷积时,若采样点数N大于或等于(X[K]的长度+H[k]的长度-1),则循环卷积等于线性卷积的平移,平移距离为采样点数,且长度等于采样点数
- 在DFT中,把有限长序列x[n]看作周期序列,且为循环周期序列,循环N为序列长度
- 序列经DFT后要想恢复到原序列,采样点数N大于等于序列长度
Z变换
Z Transform
Definition and Properties
- 定义:
- 作用:扩大了能分析的信号的范围
- ROC(Region of Convergence ,收敛域)
- 常用Z变换:
Region of Convergence of a Rational z-Transform
- Finite-length sequence:
- ROC只有z=0与z= $\infty$ 可能取不到
- Infinite-length sequence:
- Right-handed sequence:|z|>R1
- Left-handed sequence:|z|< R2
- Two-sided sequence:R1< |z| < R2
- 以极点所在的圆为边界,因为取极点时,趋于无穷
- 当H(z)的收敛域包含单位圆时, $H(e^{jw})存在$
- H(z)稳定等价于H(z)收敛域包含单位圆
- 若H(z)稳定且因果,则极点一定在单位圆内。
变换域中的 LTI 离散时间系统
LTI Discrete-Time Systems in the Transform Domain
attenuation:衰减
知识点
- Linear-Phase Transfer Function(线性相位传递函数):
- 定义:
- 意义:输出是单频输入的延迟形式
- 定义:
- FIR系统能实现线性相位
- 能实现线性相位的FIR系统的 h[n]是实数
线性相位FIR系统的单位脉冲响应h[n]满足条件之一:
- 条件一:
- 条件二:
注意:
amplitude respomse:振幅响应
magnitude response:幅频响应- 条件一:
- 线性相位FIR系统分类及其相频响应具体函数形式:
- h[n]=h[N-n],0≤n≤N,N为偶数即长度为奇数
- h[n]=h[N-n],0≤n≤N,N为奇数即长度为偶数
- h[n]=-h[N-n],0≤n≤N,N为偶数
- h[n]=-h[N-n],0≤n≤N,N为奇数
- 线性相位FIR系统传递函数 H(z)满足条件:
- h[n]=h[N-n]时,实系数多项式(real-coefficient polynomial)H(z)为MIP(mirror-image polynomial,镜像多项式)
- h[n]=-h[N-n]时,H(z)为AIP(antimirror-image polynomial,反镜像多项式)
- 实系数线性相位FIR系统的零点位置特点:互为倒数的共轭对
四种实系数线性相位FIR系统在z=±1位置的零点:
- 第一类
在z=1处无或偶数个零点,在z=-1处无或偶数个零点 - 第二类
在z=1处无或偶数个零点,在z=-1处奇数个零点 - 第三类
在z=1处奇数个零点,在z=-1处奇数个零点 - 第四类
在z=1处奇数个零点,在z=-1处无或偶数个零点
- 第一类
滤波器类型:
- 低通(lowpass)
- 高通(highpass)
- 带通(bandpass)
- 带阻(bandstop)
- 梳状(comb)
- 陷波(notch)
习题小结
- 具有线性相位的FIR系统,输出是输入的延迟形式,这里的输入能用$e^{jw}$表示
IIR数字滤波器的设计
IIR Digital Filter Design
知识点
- 思维导图:
:通带边界频率
$\omega_{s}$ :阻带边界频率
$\delta_{p}$ :通带峰纹波值(peak ripple value)
$\delta_{s}$ :阻带峰纹波值
:峰值通带纹波(peak passband ripple)
:阻带最小衰减
$\mathcal{A} (\omega )=-20\log_{10}{\left | G(e^{j\omega } ) \right | } $:损耗函数(loss function)
- 滤波器的比较:
- FIR filter:阶数较高,复杂度高,更多是关注相位响应
- IIR filter:复杂度低
- 利用双线性变换(bilinear transformation)将模拟滤波器转换为数字滤波器(即把s平面变换到z平面)
$s=\frac{2}{T} \frac{1-z^{-1} }{1+z^{-1} } $,为求方便,T取2- 映射为非线性映射
- s平面的虚轴映射到z平面单位圆上
- s平面左半平面映射到z平面单位圆内(极点在左半平面模拟系统因果稳定,极点在单位圆内数字系统因果稳定)
- 在映射后会产生频率畸变frequency warping:$\Omega =\tan \frac{\omega }{2} $,因此要在第一步预畸(prewarping): $\omega =2\tan^{-1} \Omega$
- 预畸:消除滤波器在特征频率点(分段的临界频率点,大多数滤波器都具有分段常数的频响特性)的畸变,不能在整个频率段消除非线性畸变
- Butterworth Filter为原型设计模拟滤波器过程:
- N一般不是整数,需取大于且最接近于它的整数
FIR数字滤波器的设计
FIR Digital Filter Design
窗式傅里叶级数方法(Windowed Fourier series approach)设计
用IDTFT求理想低通滤波器的单位脉冲响应
取
- 令$h[n]=h_{t}[n-M]$,得到实系数线性相位FIR系统
- 分析 的关系(吉布斯现象)
- 时域相乘等于频域相卷积,L=2M+1为窗长,
- 频域中窗谱为
其一个周期内的幅度谱(-Π到Π),
主瓣宽度为4Π/L ,与窗长度成反比,主瓣高度为L,与窗长一致,窗长增加主瓣宽度变窄,同时主瓣高度也变高,主瓣的面积保持不变
旁瓣窗的类型不变,相对旁瓣水平(13dB)也固定,不随窗长增加而变化,窗长增加,旁瓣宽度也变窄,但面积也不变 - 窗长L增加,窗谱主瓣宽度变窄,所以设计的FIR滤波器的频响过渡带宽变窄
窗长L增加,窗谱的旁瓣宽度也变窄,进入积分区间的旁瓣变多,所以通阻带的波动更密集,震荡加快,但因为每个主旁瓣面积不变,所以每个震荡的幅度不会变小。最大幅度近似不变,随着窗长变长,而越来越趋近于恒值
- 加窗带来的频响变化:过渡带和通阻带波动
调整的两个方向:窗长(L)和窗型 不同的窗型以及要满足的最低要求:
主瓣宽度要大于过渡带宽
求理想滤波器的$w_{c}$ :
DSP算法实现
DSP Algorithm Implementation
- N点的DFT:
FFT: fast implementation of the DFT