基于Burg算法的最大熵谱估计
- 格式:doc
- 大小:110.00 KB
- 文档页数:6
《现代信号处理》教学大纲适用专业:信息与通信工程、物联课程性质:学位课网工程、电子与通信学时数:32 学分数: 2课程号:M081001 开课学期:秋季第(1)学期大纲执笔人:何继爱大纲审核人:陈海燕一、课程的地位和教学目标现代信号处理作为信息类专业研究生的一门专业基础课,是在传统数字信号处理基础上,基于概率统计的思想,用数理统计、优化估计、线性代数和矩阵计算等工具,研究有限数据量的随机信号的分析与处理,且系统可能是时变、非线性的,它是近代才发展起来的前沿学科。
主要讨论基于信号模型分析和滤波的基本理论和基本方法;以现代谱估计和自适应滤波为核心内容,并介绍现代信号处理的新技术。
该课程为众多信号处理的应用领域打下基础,包括通信、声学、图像、雷达、声纳、生物医学等领域的信号处理。
本课程的知识目标是使学生牢固掌握现代信号处理一些最基本的理论、方法和应用,并能跟踪和学习新的理论、方法和技术;内容涉及随机信号统计分析、现代谱估计、自适应滤波器、时频分析与二次型时频分布、信号多速率变换、盲信分离和阵列信号处理方法等;建立现代信号处理的知识体系,对课程内容总体把握;具有一定的实验和模拟仿真的基本知识。
了解现代信号处理重要新技术的发展趋势,为从事信息与通信工程及相关电子系统的工程设计打下坚实的基础。
本课程的能力目标是通过课程的学习提高学生的分析计算方法、演绎推理方法和归纳法等基本数学处理方法;运用数学、物理及工程概念及方法发现问题、分析问题和解决问题的能力,以及理论与实际相结合的能力;能够触类旁通,提高学生的科学学习方法;掌握通信学科的信号分析与处理基本理论和技能,思路开阔,具有运用所学知识的能力、搜集和提炼信息的能力、团队合作能力、表达能力和创新能力等。
本课程的专业素质目标通过本课程的课堂学习、单元知识及章节总结、习题及专题研讨培养学生培养良好严谨的科学研究态度和正确的思维方法,使学生敢于提出问题、善于分析问题和解决问题的能力及具有团队合作精神。
编号毕业设计(论文)题目:基于BURG算法的谱估计研究及其MATLAB实现XX大学XX学院本科毕业设计(论文)诚信承诺书本人郑重声明:所呈交的毕业设计(论文)基于BURG算法的谱估计研究及其MATLAB实现是本人在导师的指导下独立进行研究所取得的成果,其内容除了在毕业设计(论文)中特别加以标注引用,表示致谢的内容外,本毕业设计(论文)不包含任何其他个人、集体已发表或撰写的成果作品。
班级:学号:作者姓名:年月日xx大学xx学院机电系电子信息工程专业毕业设计论文任务书一、题目及专题:1、题目基于BURG算法的谱估计研究及其MATLAB实现2、专题二、课题来源及选题依据功率谱估计在近30年中获得了飞速发展。
涉及到信号与系统、随机信号分析、概率统计、随机过程、矩阵代数等一系列学科,广泛应用于雷达、声纳、通信、地质、勘探、军事、天文、生物医学工程等众多领域。
实际中,数字信号的功率谱只能用所得的有限次记录的有限长数据来予以估计,这就产生了功率谱估计这一研究领域。
功率谱的估计大致可分为经典功率谱估计和现代功率谱估计,针对经典谱估计的分辨率低和方差性能不好等问题提出了现代谱估计,AR模型谱估计就是现代谱估计常用的方法之一。
三、本设计(论文或其他)应达到的要求:①熟悉谱估计的发展历程;②熟练掌握经典谱估计方法:直接法和间接法、它们之间的关系、估计质量、以及估计性能比较;③熟练掌握现代谱估计方法:信号建模、AR模型以及AR模型参数求解的Levinson-Durbin算法和BURG算法,阶数的确定方法和原则,稳定性以及对信号建模的讨论;④能够熟练使用MATLAB仿真。
针对一个具体的随机信号,分别采用经典谱估计和现代谱估计方法估计出其功率谱,对经典谱估计和现代谱估计方法谱估计的分辨率和方差性能作一个综合评价;⑤熟练使用MATLAB提供的图形用户界面(GUI)工具。
四、接受任务学生:班姓名五、开始及完成日期:自XXXX年X月XX日至XXXX年X月XX日六、设计(论文)指导(或顾问):指导教师签名签名教研室主任〔学科组组长〕签名研究所所长系主任签名XXXX年XX月XX日摘要在许多工程信号问题中,功率谱的估计是十分重要的,它不仅是了解信号所含有信息的工具,也是信号内在本质的一种表现形式。
i 0基于Burg 算法的最大熵谱估计实验目的使用Matlab 平台实现基于Burg 算法的最大熵谱估计Burg 算法原理现代谱估计是针对经典谱估计方差性能较差、分辨率较低的缺点提出并逐渐发展起来 的,其分为参数模型谱估计和非参数模型谱估计。
而参数模型谱估计主要有 模型、ARMA 模型等,其中AR 模型应用最多。
ARMA 模型功率谱的数学表达式为:其中,P(e j 「为功率谱密度;s 2是激励白噪声的方差;a i 和b i 为模型参数。
若ARMA 模型中b i 全为0,就变成了 AR 模型,又称线性自回归模型, 其是一个全极点 模型:P(e j )研究表明,ARMA 模型和MA 模型均可用无限阶的 AR 模型来表示。
且 AR 模型的参数 估计计算相对简单。
同时,实际的物理系统通常是全极点系统。
要利用AR 模型进行功率谱估计,必须由Yule - Walker 方程求得AR 模型的参数。
而目前求解Yule - Walker 方程主要有三种方法:Levinson-Durbin 递推算法、Burg 算法和协方差方 法。
其中Burg 算法计算结果较为准确,且对于短的时间序列仍能得到较正确的估计,因此 应用广泛。
研究最大熵谱估计时,Levin so n 递推一直受制于反射系数 K m 的求出。
而Burg 算法秉着 使前、后向预测误差平均功率最小的基本思想,不直接估计AR 模型的参数,而是先估计反射系数K m ,再利用Levin son 关系式求得AR 模型的参数,继而得到功率谱估计。
Burg 定义m 阶前、后向预测误差为:AR 模型、MAP(e j )21b i ei 1a i e ja i e jf m ( n)ma m (i)x( n i)(1)mg m( n) a m(m i)x( n i)i 0由式(1 )和(2)又可得到前、后预测误差的阶数递推公式:f m(n) f m i (n) K mg m i(n 1)g m( n) K m f mi( n)g m 1(n 1)⑷定义m阶前、后向预测误差平均功率为:1N2 2P m - [|f m(门)g m(门)]2n m将阶数递推公式(3)和(4)代入(5),并令一也0,可得K mNf m 1( n)g m 1( n 1)n m 1K m 1 N-[f m 1( n)2 g m 1(n 1)2]2 n m 1三、Burg算法递推步骤Burg算法的具体实现步骤:步骤1计算预测误差功率的初始值和前、后向预测误差的初始值,并令2x(n)f°( n) g°( n) x(n)步骤2求反射系数Nf m 1( n)g m 1( n 1)n m 1 ______________________________K m 1 N-[f m 1(n)2 g m 1(n 1)2]2 n m 1步骤3计算前向预测滤波器系数P。
三种功率谱估计方法性能研究1.前言:我们已经知道一个随机信号本身的傅里叶变换并不存在,因此无法像确定性信号一样用数字表达式来精确表达它,而只能用各种统计平均量来表征它. 其中,自相关函数最能完整地表它他的统计平均量值.而一个随机信号的功率谱密度正是自相关函数的傅里叶变换,可以用功率谱密度来表征它的统计平均谱密度(PSD). 跟据维纳辛钦定理,广义平稳随机过程的功率谱是自相关函数的傅里叶变换,它取决于无数多个自相关函数值. 但对于许多实际应用中,可资利用的观测数据往往是有限的,所以要准确计算功率谱通常是不可能的.比较合理的目标是设法得到功率谱的一个好的估值,这就是功率谱估计. 也就是说,功率谱估计是根据平稳随机过程的有限个观测值,来估计该随机过程的功率谱密度.功率谱估计的评价指标包括客观度量和统计度量. 在客观度量中,谱分析特性是一个主要指标.谱分析是指估计普对真实谱中两个靠的很近的谱峰的分辨能力.统计度量是指估计的偏差,方差,均方误差,一致性等评价指标.但需要注意的是,对统计特性的分析方法只适用于长数据记录.所以,利用统计度量对不同的谱估计方法进行比较是不妥当的,只能用来对某种谱估计方法进行描述,并且一般只用来描述古典谱估计方法,因为现代谱估计方法往往用于短数据情况.功率谱估计可以分为经典谱估计(非参数估计)和现代谱估计(参数估计)。
通常将傅里叶变换为理论基础的谱估计方法叫做古典谱估计或经典谱估计;把不同于傅里叶分析的新的谱估计方法叫做现代谱估计或近代谱估计.前者主要有周期图法,自相关法及其改进方法. 现代功率谱估计方法主要有基于参数模型的自相关法、Burg 算法、改进的协方差方法等,基于非参数模型的MUSIC 算法、特征向量方法等。
本文选取比较有代表性周期图法, Burg 算法、Yule-Wallker 法(自相关法)算法进行计算机仿真,通过仿真发现了这些算法各自的优缺点,并进行归纳总结。
2三种算法的基本理论2.1 周期图法周期图法又称直接法,其具体步骤如下:第一步: 由获得的N 点数据构成的有限长序列()x Nn 直接求傅里叶变换,得频谱()x i N e ω,即()()-1-=0x =N i i N Nn ex n eωω∑ (1)第二步: 取频谱幅度的平方,并除以N,以此作为对()x n 的真实功率谱()i x S eω的估计,即()()21ˆ=i i xN S e X eNωω(2)综上所述,先用FFT 求出宿疾随机离散信号N 点的DFT ,再计算幅频特性的平方,然后除以N ,即得出该随机信号得功率谱估计。
基于Burg 算法的最大熵谱估计一、 实验目的使用Matlab 平台实现基于Burg 算法的最大熵谱估计二、 Burg 算法原理现代谱估计是针对经典谱估计方差性能较差、分辨率较低的缺点提出并逐渐发展起来的,其分为参数模型谱估计和非参数模型谱估计。
而参数模型谱估计主要有AR 模型、MA 模型、ARMA 模型等,其中AR 模型应用最多。
ARMA 模型功率谱的数学表达式为:212121/1)(∑∑=-=-++=p i i j i q i i j i j e a e b e P ωωωσ其中,P(e j ω)为功率谱密度;s 2是激励白噪声的方差;a i 和b i 为模型参数。
若ARMA 模型中b i 全为0,就变成了AR 模型,又称线性自回归模型,其是一个全极点模型: 2121/)(∑=-+=p i i j i j e a e P ωωσ研究表明,ARMA 模型和MA 模型均可用无限阶的AR 模型来表示。
且AR 模型的参数估计计算相对简单。
同时,实际的物理系统通常是全极点系统。
要利用AR 模型进行功率谱估计,必须由Yule - Walker 方程求得AR 模型的参数。
而目前求解Yule - Walker 方程主要有三种方法: Levinson-Durbin 递推算法、Burg 算法和协方差方法。
其中Burg 算法计算结果较为准确,且对于短的时间序列仍能得到较正确的估计,因此应用广泛。
研究最大熵谱估计时,Levinson 递推一直受制于反射系数K m 的求出。
而Burg 算法秉着使前、后向预测误差平均功率最小的基本思想,不直接估计AR 模型的参数,而是先估计反射系数K m ,再利用Levinson 关系式求得AR 模型的参数,继而得到功率谱估计。
Burg 定义m 阶前、后向预测误差为:∑=-=mi m m i n x i a n f 0)()()( (1)∑=*--=mi m i n x i m a n g m 0)()()( (2) 由式(1)和(2)又可得到前、后预测误差的阶数递推公式:)1()()(11-+=--n g K n f n f m m m m (3))1()()(11-+=--*n g n f K n g m m m m (4)定义m 阶前、后向预测误差平均功率为:∑=+=Nmn m m m n g n f P ])()([2122(5) 将阶数递推公式(3)和(4)代入(5),并令0=∂∂mmK P ,可得∑∑+=--+=*---+--=N m n m m N m n m m m n gn f n g n f K 12121111])1()([21)1()((6)三、 Burg 算法递推步骤Burg 算法的具体实现步骤:步骤1 计算预测误差功率的初始值和前、后向预测误差的初始值,并令m = 1。
210)(1∑==N n n x N P)()()(00n x n g n f ==步骤2 求反射系数∑∑+=--+=*---+--=N m n m m N m n m m m n g n f n g n f K 12121111])1()([21)1()(步骤3 计算前向预测滤波器系数),()()(11i m a K i a i a m m m m -+=*-- 1,...,1-=m im m K m a =)(步骤4 计算预测误差功率12)1(--=m m m P K P步骤5计算滤波器输出 )1()()(11-+=--n g K n f n f m m m m)1()()(11-+=--*n g n f K n g m m m m步骤6 令m ← m+1,并重复步骤2至步骤5,直到预测误差功率P m 不再明显减小。
最后,再利用Levinson 递推关系式估计AR 参数,继而得到功率谱估计。
四、 程序实现%%%%%%%%%%%%基于Burg 算法的最大熵谱估计的Matlab 实现%%%%%%%%%%%% %%%设置两正弦小信号的归一化频率分别为0.175和0.20,信噪比SNR=30dB 、N=32%%% clear,clc; %清空内存及变量N=32; %设置离散傅里叶变换点数,即最大阶数N 为32 SNR=30; %信噪比SNR 取为30dBfs=1; %采样频率取为1Hzt=1:N; %采样时间点从1变化到Nt=t/fs; %得到归一化频率采样点y=sin(2*pi*0.175*t)+sin(2*pi*0.20*t); %信号归一化频率分别取为0.175和0.20 x=awgn(y,SNR); %在信号y 中加入高斯白噪声,信噪比为SNR 设定的数值 M=1; %设置起始计算的阶数M 为1P(M)=0; %预测误差功率初值设为0Rx(M)=0; %自相关函数初值设为0for n=1:N %样本数从1变化到NP(M)=P(M)+(abs(x(n)))^2; %计算预测误差功率和的初始值ef(1,n)=x(n); %计算前向预测误差初值,令其等于此时的信号序列 eb(1,n)=x(n); %计算后向预测误差初值,令其等于此时的信号序列 endP(M)=P(M)/N; %计算出预测误差功率的初始值Rx(M)=P(M); %设定自相关函数初始值M=2; %设置起始计算的阶数M 为2A=0; %微分所得反射系数Km 的分子,初始值设为0 D=0; %微分所得反射系数Km 的分母,初始值设为0 for n=M:N %AR 阶数由M 变化到NA=A+ef(M-1,n)*eb(M-1,n-1); %计算分子的和D=D+(abs(ef(M-1,n)))^2+(abs(eb(M-1,n-1)))^2; %计算分母的和(即M阶前、后向预测误差平均功率) endKm=-2*A/D; %计算反射系数Km(此时起始阶数为2)a(M-1,M-1)=-2*A/D; %计算前向预测滤波器系数P(M)=P(M-1)*(1-(abs(Km))^2); %计算预测误差功率FPE(M-1)=P(M)*(N+M)/(N-M); %设置最大预测误差平均功率TH=FPE(M-1);for n=M:N %AR阶数由M变化到Nef(M,n)=ef(M-1,n)+Km*eb(M-1,n-1); %计算滤波器输出的前向预测误差eb(M,n)=eb(M-1,n-1)+Km*ef(M-1,n); %计算滤波器输出的后向预测误差endM=M+1; %阶数叠加,以便递推计算下一阶数据A=0; %反射系数Km的分子,初始值设为0D=0; %反射系数Km的分母,初始值设为0for n=M:N %同前,进行递推运算A=A+ef(M-1,n)*eb(M-1,n-1);D=D+(abs(ef(M-1,n)))^2+(abs(eb(M-1,n-1)))^2;endKm=-2*A/D;a(M-1,M-1)=-2*A/D;P(M)=P(M-1)*(1-(abs(Km))^2);FPE(M-1)=P(M)*(N+M)/(N-M);for m=1:M-2 %AR阶数m由1变化到(M-2)a(M-1,m)=a(M-2,m)+Km*a(M-2,M-1-m); %递推计算各阶前向预测滤波器的系数endwhile FPE(M-1)<TH %比较此刻阶数的误差平均功率与之前设置的平均功率的大小TH=FPE(M-1); %小于之前数值时,覆盖得到新的最小平均功率,并进行递推运算for n=M:Nef(M,n)=ef(M-1,n)+Km*eb(M-1,n-1); %递推计算滤波器输出的各阶前向预测误差eb(M,n)=eb(M-1,n-1)+Km*ef(M-1,n); %递推计算滤波器输出的各阶后向预测误差endKm=-2*A/D; %反射系数a(M-1,M-1)=-2*A/D; %前向预测滤波器系数P(M)=P(M-1)*(1-(abs(Km))^2); %预测误差功率FPE(M-1)=P(M)*(N+M)/(N-M);for m=1:M-2 %AR阶数m由1变化到(M-2)a(M-1,m)=a(M-2,m)+Km*a(M-2,M-1-m); %递推得到各阶前向预测滤波器的系数endendT=1/fs;sum1=0; %采样周期T赋值;功率谱初值设为0f=0.01:0.01:0.5; %选取数据采样点,归一化频率0.01~0.5,间隔为0.01 for m=1:M-1; %AR阶数为1~(M-1)sum1=sum1+a(M-1,m)*exp(-j*2*pi*m*f*T); %傅里叶变换,得到AR参数的估计ends1=(abs(1+sum1)).^2; %由Fejer-Riesz定理,得到最大熵谱估计,即ARMA功率谱s=P(M)*T./s1; %求得各阶功率谱的矩阵plot(f,10*log10(s),'k'); %画出功率谱随频率变化的曲线图xlabel('f/fs'); %X轴坐标名称ylabel('功率谱/dB'); %Y轴坐标名称五、仿真结果及分析结果分析:如上,是阶数分别为16和32时所得的功率谱曲线。
如图可知,Burg算法得到的谱线分辨率很高,曲线平滑而且干扰很少,可清晰分辨出功率谱的峰值及其对应的频率值(处于初始设定的频率值0.175~0.20之间);并且随着阶数的增加,预测误差功率随之减小,但变化不大,对于频率分辨率影响也很小。
相较于Levinson算法,Burg算法的基本思想是使前、后向预测误差的平均功率最小,且没有使用自相关估计法,因而,结果与真实值更接近。