2019
随机信号处理大作业
20162410813 通信工程国际化二班
刘艺辰
目录
0. 摘要 ............................................................................................................. 2
1.原理介绍: .................................................................................................. 2
1.1 经典谱 .................................................................................................... 2
1.2 现代谱 .................................................................................................... 2
2.过程分析: .................................................................................................. 4
2.1 经典谱估计 ........................................................................................... 4
2.2 现代谱估计 ........................................................................................... 5
3.实验结果: .................................................................................................. 5
4.结果分析: ............................................................................................... 11
4.1 经典谱与参数谱的比较 ................................................................. 11
4.2 三种参数谱估计方法的比较 ........................................................ 11
4.3 影响参数谱估计效果的参数 ....................................................... 12
5.心得体会 .................................................................................................... 12
程序代码 .................................................................................................... 12
Borg 算法的 python 实现 .................................................................... 18
python 波形 .............................................................................................. 20
1 / 20
0. 摘要
本文主要介绍对比了两种经典谱估计方法:周期图法与自相关法和三种参数谱估计法:直接
求解 yule-walker 方程,Levinson-Durbin 快速递推法与 Borg 算法的原理、编程过程、优劣
分析,并比较了三种参数谱方法的估计性能,还分析了影响参数谱估计性能的参数,给出了
五种分析方法的选择策略。本文还通过 Matlab 和 Python 两种编译平台,仿真得出实验结
果。
1.原理介绍:
本文将分别从古典谱和参数模型法两种估计方法进行分析:
古典谱法估计分为周期图法和自相关法。
1.1 周期图法是把随机信号 x(n)的 N 点观察数据
视为一个能量有限的信号,直接取
的傅里叶变换,得
,然后再取其幅值的平方,并除以 N,作为对 x(n)真实
的功率谱
的估计。以
表示用周期图法估计出的功率谱,则有
自相关法的依据是维纳-辛钦定理,即先由
估计出自相关函数
求傅里叶变换
得到
的功率谱,记之为
,并以此作为对
的估计,即
1.2 现代谱估计以信号模型为基础, 平稳随机序列 x(n) 的信号模型如图 4.3.1 所示. 图
中, 输入白噪声 w(n)的均值为 0, 方差为 σw
2 , x(n) 的功率谱由下式决定:
Pxx(e jω) =σw
2 | H(e jω) |2
由于模型传输函数与模型参数有关, 因此, 信号的功率谱估计问题, 变成了由观测数据估计
信号模型的参数问题. 按照上述思路, 功率谱估计可分下列三个步骤:
1.选择合适的信号模型;
2.根据 x(n) 的有限个观测数据(或它的有限个自相关函数), 估计模型参数;
3.计算模型输出功率谱.
2 / 20
本文选取的现代谱法有三种:
1)解 yule-walker 方程:它的出发点是选择 AR 模型参数使预测误差功率最小,假设信号
的数据区在
范围,有 个预测系数, 个数据经过冲激响应为
的滤波器,输出预测误差
的长度为
,因此应用下式计算:
的长度长于数据的长度,上式中数据
的两端需补充零点,相当于对无穷长的信
号加窗处理,得到长度为 N 的数据。上式对系数 的实部和虚部求微分使预测差功率最
小,得到:
此式即为 Yule-Walker 方程,本文选取的 yule-walker 方程法即直接求解该方程式中自相
关函数采用有偏自相关估计,即:
2)Levinson-Durbin 快速递推法:这是基于解 Yule-Walker 方程的一种方法,这是一种高
效的解方程的方法。Levinson-Durbin 算法首先由一阶 AR 模型开始:
一阶 AR 模型
的 Yule-Walker 方程为
由该方程解出:
然后令
,以此类推,可以得到一般递推公式如下:
称为反射系数,
。
,随着阶数增加,预测误差功率将减少或不
变。由 k=1 开始递推,递推到 k=p,依次得到各阶模型参数,
3 / 20
()xn01nN−PN()0,1,piaip=()enNp+()()()210121011−+==−+=−+==PNnpipiPNninxanxNneN()en()xnpia()()()()()()()()()()()()12ˆˆˆˆ0111ˆˆˆˆ1022ˆˆˆˆ120pxxxxxxxxpxxxxxxxxppxxxxxxxxarrrprarrrprarprprrp−−+−+=−−−()()()()−+−+−=−=+=−−=1,,2,1,,2,1,01*^10*^ppmmrpmmnxnxNmrxxmNnxx()1p=()()()()2111011100xxxxxxxxrrrra=()()1110xxxxrar=−()()2211,110xxar=−2,3,4,p=pk1pk22212p
AR 模型的各个系数及模型输入白噪声方差求出后,信号功率谱用下式计算
这种方法计算简单,但需要预先估计出信号自相关函数,实际中只能按照信号的有限个
观测数据估计自相关函数。当观测数据长度较短时,估计误差较大,会出现谱峰频率偏
移和谱线分裂(在信号谱峰附近产生虚假谱线);如数据很长,估计自相关函数较准确,
但计算量大,应适当选择数据长度。
3)伯格(Burg)递推法:Levinson-Durbin 递推法需要由观测数据估计自相关函数,这
是它的缺点。而伯格递推法则由信号观测数据直接计算 AR 模型参数。
a.伯格递推法利用 Levinson-Durbin 递推公式,导出前向预测误差与后向预测误差。
b.它借助格型预测误差滤波器,求前向、后向预测误差平均功率,并按照使它们之和最
小的原则求出 ,从而实现不用估计自相关函数,直接用观测数据得出结果。
c.之后,再利用 Levinson-Durbin 递推法求模型参数和输入噪声方差。
上述过程可得以下公式:
2.过程分析:
2.1 经典谱估计
1)周期图法:
a.求解 xn 的 N 点 FFT 后的结果 xk。
b.对 xk 的结果进行平方,求解功率谱密度。
4 / 20
2221112122212,,,,,,,,pppppaaaaaa()()222211/1pjwjwjwixxwwpiipeHeae−===+pk()()()()00fbnxnenxne==()()()()()()1,,2,111,,2,111*111−++=+−=−++=−+=−−−−NppnnekneneNppnneknenefppbpbpbppfpfp()()()()−=−−−=−−−+−−=121211*11112NpnbpfpNpnbpfppnenenenek()121−−=pppk,1,1,ppipippiaaka+−−−=1,2,1ip=−…,,pppka=
c.对 xn 进行功率谱估计。
2)自相关函数法:
a.求解 xn 的自相关函数 Rn。
b.根据维纳辛钦定理,对 Rn 进行 FFT 变换得出功率谱密度。
c.对 xn 进行功率谱估计。
2.2 现代谱估计
现代谱估计的过程大致分为以下几步:
a.假定所研究的随机过程 x(n)是由一白噪声序列 w(n)激励因果稳定的可逆线性系统 H(z)输
出。
b.由观测获得的数据记录 x(n)估计 H(z)的参数。
c.由 H(z)的参数估计出 x(n) 的功率谱。
以下将介绍本文采取的三种现代谱估计方法的流程:
1) yule-walker
a.求解 xn 的自相关函数。
b. 根据自相关函数与 AR 模型参数关系列出线性方程组。
c.求解线性方程组。
d.根据自相关函数和 AR 模型参数的关系求解系统增益 G。
e.根据预测误差不再改变得出相应阶数,循环终止。
2)Levinson-Durbin 快速递推法:
a.求解 xn 的自相关函数。
b.确定一阶时的 AR 模型参数、最小预测误差功率。
c.利用 AR 模型参数和自相关函数求解反射系数。
d.利用反射系数和上一阶次的 AR 模型参数求解本阶次的 AR 模型参数。
e.将反射系数的值返回给本阶次 m 的 AR 模型参数的第 m 个参数。
f. 根据预测误差不再改变得出相应阶数,循环终止。
3)Borg 算法:
a.确定初始状态。
b.先估计反射系数 km,估计反射系数 km 的准则是使前向预测误差功率和后向预测误差功
率的和或平均值最小。
c.伯格递推法利用 Levinson-Durbin 递推公式,导出下一阶次前向预测误差与后向预测误差。
d.再利用 Levinson 关系式求 AR 参数。
e.根据预测误差不再改变得出相应阶数,循环终止。
3.实验结果:
首先我们选取两个频率为 0.1 和 0.11 的正弦信号进行叠加。
得到时域采样点数为 64,128,1024 时经典法功率谱:
5 / 20
图 1 当 N=64 时的经典谱估计
图 2 当 N=128 时的经典谱估计
图 3 当 N=1024 时的经典谱估计
选取阶数为 N/3,得到采样点数分别为 64,128,1024 的参数谱估计;
6 / 20
图 4 当 N=64 时的参数谱估计
图 5 当 N=128 时的参数谱估计
我们选取采样点数为 1024,取阶数分别为 200,500,1000 时的三种参数谱估计:
图 6 当 N=1024 时的参数谱估计
7 / 20