ADSP仿真报告 华中科技大学.docx

上传人:b****6 文档编号:7870467 上传时间:2023-05-12 格式:DOCX 页数:21 大小:287.99KB
下载 相关 举报
ADSP仿真报告 华中科技大学.docx_第1页
第1页 / 共21页
ADSP仿真报告 华中科技大学.docx_第2页
第2页 / 共21页
ADSP仿真报告 华中科技大学.docx_第3页
第3页 / 共21页
ADSP仿真报告 华中科技大学.docx_第4页
第4页 / 共21页
ADSP仿真报告 华中科技大学.docx_第5页
第5页 / 共21页
ADSP仿真报告 华中科技大学.docx_第6页
第6页 / 共21页
ADSP仿真报告 华中科技大学.docx_第7页
第7页 / 共21页
ADSP仿真报告 华中科技大学.docx_第8页
第8页 / 共21页
ADSP仿真报告 华中科技大学.docx_第9页
第9页 / 共21页
ADSP仿真报告 华中科技大学.docx_第10页
第10页 / 共21页
ADSP仿真报告 华中科技大学.docx_第11页
第11页 / 共21页
ADSP仿真报告 华中科技大学.docx_第12页
第12页 / 共21页
ADSP仿真报告 华中科技大学.docx_第13页
第13页 / 共21页
ADSP仿真报告 华中科技大学.docx_第14页
第14页 / 共21页
ADSP仿真报告 华中科技大学.docx_第15页
第15页 / 共21页
ADSP仿真报告 华中科技大学.docx_第16页
第16页 / 共21页
ADSP仿真报告 华中科技大学.docx_第17页
第17页 / 共21页
ADSP仿真报告 华中科技大学.docx_第18页
第18页 / 共21页
ADSP仿真报告 华中科技大学.docx_第19页
第19页 / 共21页
ADSP仿真报告 华中科技大学.docx_第20页
第20页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

ADSP仿真报告 华中科技大学.docx

《ADSP仿真报告 华中科技大学.docx》由会员分享,可在线阅读,更多相关《ADSP仿真报告 华中科技大学.docx(21页珍藏版)》请在冰点文库上搜索。

ADSP仿真报告 华中科技大学.docx

ADSP仿真报告华中科技大学

 

专业:

电磁场与微波技术

学生成员:

刘航(M201571827)

完成时间:

2020年1月14日

图目录

1

题目1

1.1题目

ImplementLSLalgorithmandLMSalgorithmbasedonfigure3.30(P92)andfigure3.31(P93).Modelandparametersseepage91.

P91模型如下:

二阶自回归随机过程x(n)=a1x(n-1)+a2x(n-2)+w(n),对应的滤波器参数a1=1.558,a2=-0.81。

分别用LMS算法和LSL算法预测信号x(n),从而得到对信号模型的两个参数值的估计值。

1.2算法模型

1.2.1自适应滤波原理

自适应滤波器由参数可调的数字滤波器和自适应算法两部分组成,其原理如下图所示:

图1.1自适应滤波器框图

输入信号x(n)通过参数可调的数字滤波器后产生输出信号y(n),将其与期望输出信号d(n)进行比较,形成误差信号e(n)。

e(n)通过某种自适应算法对滤波器参数进行调整,最终使得e(n)的均方值最小。

1.2.2LMS算法简介

在自适应算法中,最理想的情况是沿着性能曲面最陡的方向向下搜索曲面的最低点,每次迭代都需要知道性能曲面上某点的梯度值,而实际应用中梯度值只能根据观测数据进行估计。

LMS(Leastmeansquare)最小均方算法,是一种更为简便的方法,它的核心思想是用平方误差代替均方误差,从而使得计算量大大减小,易于实现。

LMS算法中,梯度用下式近似:

可以得到:

实际上,

只是单个平方误差序列的梯度,而

则是多个平方误差序列统计平均的梯度,所以LMS算法就是用前者作为后者的近似。

得到LMS算法的基本关系式

此时,全系数的调整过程是有“噪声”的,其估计路径不可能准确的沿着理想的最陡下降的路径。

LMS算法中,信号基本关系总结如下:

1.2.3LSL算法简介

基于最小均方误差(MMSE)准则的算法,如最陡下降法、LMS算法,其缺点是:

收敛速度慢;对非平稳信号的适应性较差。

为克服以上缺点,引入“最小二乘(LS)”准则。

最小二乘准则,是以误差的平方和最小作为最佳估计的一种误差准则。

最小二乘滤波(LS滤波)可描述为:

调整滤波器的权矢量,使得在每个时刻对所有已输入的信号而言,滤波器输出的误差平方和最小。

它与LMS算法的区别是:

LMS滤波是以集合平均为基础的,属于统计分析方法;LS滤波是一种瞬时分析方法,即在每个时刻对所有已输入信号,都要重新评估其平方和,并通过调整权矢量使其达到最小。

LSL是最小二乘格型算法(Leastsquarelattice),用矢量空间法描述前向和后向线性预测误差,用预测误差滤波器的格型结构来递推更新误差参数。

算法的具体推导比较复杂,详见教材的3.14节及3.15节。

以下归纳LSL自适应算法的计算过程与流程:

(1)初始化:

为一个小的正数,它是给定的前向和后向误差能量的初值,若此值未预先给出,则可任意设定。

(2)迭代计算(按时间

(3)迭代计算(按阶数

;(这里注意同阶的M+1嵌套着按时间的迭代运算)

(4)计算各阶计算前向和后向反射系数:

1.3本题模型

对于本题,其模型框图如下:

图1.2题目一模型

根据照题中所给的2阶自回归模型,由单位方差高斯白噪声w(n)激励一个线性时不变全极点系统产生信号x(n)。

预测误差为:

y(n)=x(n)-d(n),然后再按照某种准则控制预测误差,从而自适应的调节FIR滤波器的权系数,使之最终达到最优。

本题用LMS算法以及LSL算法对预测误差进行处理:

LMS算法直接计出w1(n)及w2(n);LSL算法计算出格型滤波器的1阶和2阶前向和后向反射系数,然后由这些系数计算出参数估计值,具体公式见教材3.244-3.277式。

1.4仿真过程及结果分析

1.4.1仿真过程

(1)初始化参数,由AR

(2)模型生成x(n)。

如下截图:

其中信号点数取500,AR

(2)模型由filter函数产生,filter函数具体用法参见matlab帮助。

(2)LMS算法实现,程序如下截图:

程序中for循环的公式见1.2.2节最后总结的信号基本关系的公式。

矩阵w的第一行为参数a1的估计,第二行为参数a2的估计。

(3)LSL算法实现,程序截图如下:

程序中要注意下标值,matlab数组下标从1开始,对于2阶情况,按公式迭代是从m=0,1,故程序中是从m=1,2迭代。

下图中for循环实现的公式见1.2.3节总结的算法流程。

计算得到的a1(n)和a2(n)为参数估计值。

(3)画图程序,比较两个算法的性能。

程序截图如下:

将两个算法得到的参数估计值的收敛轨迹画在同一张图中,用不同颜色表示出来。

(4)对LSL算法,前向和后向预测误差初始值选取不同值,画出收敛图。

这部分直接在LSL算法程序中修改初始参数,选取

=0.1,1.0,10三种情况,得到a1的估计值,然后在同一张图中画出来。

1.4.2结果分析

(1)LMS和LSL算法性能比较,程序图形如下:

图1.3LSL和LMS算法估计信号模型参数的性能比较

如图,4条颜色不同的线表示参数的收敛轨迹,黄色线为a1和a2的标准值。

从图中可以看出,LSL算法和LMS算法计算得到的a1(n)都收敛于1.558,a2(n)都收敛于-0.81,但是LSL算法明显地比LMS算法收敛的更快。

(2)如下图,对LSL算法,画出了对参数a1的估计a1(n)的收敛轨迹,

分别取0.1,1.0,10三种情况。

可以看出,在

=0.1和1两种情况下(图中蓝色线和黑色线),a1(n)很快收敛于1.558,但是在轨迹的开始阶段,有一个下冲;

=10时(红色线),收敛速度稍微慢一些,但开始阶段没有明显地下冲。

图1.4初始预测误差

对LSL收敛性能的影响

2题目2

2.1题目

ImplementPHDalgorithmandMUSICalgorithmbasedonP1644.25(4)&(5).

4.25题目:

计算机模拟实验,给定:

x(n)=exp(j2π*0.5n)+exp(j(2π*0.52n+π/4))+v(n),n=0,1,2,…,24

v(n)是方差为δv2的复白噪声。

信噪比定义为SNR=10log10(1/δv2)(dB)。

(4)用PHD方法估计两个频率。

使用M+1=3阶自相关矩阵,其元素是有偏自相关函数值。

(5)用MUSIC方法估计频率,选取N=12,M=2。

计算式(4.155)时要采用更细的频率间隔。

2.2算法模型

2.2.1特征分解频率估计原理

特征分解的主要思想是:

把自相关矩阵的信息空间分成两个子空间,即信号子空间和噪声子空间;这两个子空间中的矢量的函数在正弦波频率上有尖锐的风,据此即可以估计正弦波的频率。

总结如下:

已知

求正弦波频率估计。

,其中Rs矩阵的秩为M,它有N-M个零特征值。

所以Rx可以分解为两个子空间:

噪声子空间(N-M维),它有N-M正交特征矢量,对应的特征值均为

(即噪声功率);信号子空间,有M个正交特征特征矢量,对应着M个大特征值

这里有一个重要性质:

主特征矢量

张成的子空间与由信号矢量

张成的子空间是相同的。

所以,信号矢量

与噪声子空间的所有矢量是正交的,即书上4.148式:

这个性质是噪声子空间频率估计的基础。

2.2.2Music算法简介

MUSIC算法就是基于上面讲的4.148式,定义下面这个谱函数(即书上4.155式):

式子中,f表示频率,e表示信号矢量,vi表示噪声子空间的特征矢量。

处出现峰值,这些峰值所对应的M个f,就是所要估计的正弦信号频率。

2.2.3PHD算法简介

在N=M+1的特殊情况下,

是(M+1)xM矩阵,对Rx的最小特征值

对应的特征矢量

,有如下关系成立:

所以,只要我们得到

,就可以求出上式的解,这些解就是待估计的频率。

2.3仿真过程及结果分析

2.3.1仿真过程

(1)初始化参数,产生复白噪声和待估计信号

如图,根据题目要求,取样点数N_sample取25,信号个数M=2,由题目定义的信噪比产生复白噪声信号。

(2)PHD算法实现

A、根据取样的观测信号x(n),求出其N=M+1=3阶自相关矩阵。

如下截图:

这里使用xcorr函数和toeplitz函数。

实际用的自相关矩阵的元素,用的是自相关函数的无偏估计(参见xcorr函数用法,第二个参数选‘unbiased’)。

用toeplitz函数,产生3阶自相关矩阵,保证得到的自相关矩阵具有理论自相关矩阵的性质(详见toeplitz函数的具体用法)。

B、求出Rx的特征值和特征向量,并找出最小特征值对应的特征向量

C、根据书上式4.152或者式4.154,求解方程,得到带估计频率值

这里要注意,angle函数求出的角度范围是[0,2*pi),当求出的角频率w<0时,需要加上一个2*pi以调整到[0,2*pi)之间。

其中roots函数具体用法参见matlab帮助。

(3)MUSIC算法实现

A、第一步同PHD算法,求解自相关矩阵,并得到其特征矢量。

其中,自相关矩阵的阶数N根据题目要求取N=12。

B、第二步,根据书上式4.155,用作图法,求出待估计频率

代码中用到ginput函数,来认为捕捉图像的两个尖峰,然后输出了估计得到的两个频率。

2.3.2结果分析

(1)用PHD算法,运行得到频率的估计值:

运行4次,得到的估计频率如下:

可以看出,PHD算法能基本分辨出0.5和0.52两个频率,但误差较大。

更改待估计信号的频率值,将两个信号的频率差距拉大,可以发现,得到的频率更准。

如下(改成0.5和0.55两个频率):

(2)用MUSIC算法,捕捉图像的两个尖峰,得到频率的估计值:

图2.1MUSIC算法得到的谱峰

多运行几次,得到的频率值如下:

可以看出,MUSIC算法基本能够分辨出0.5和0.52两个频率。

相比于PHD算法,其误差小一些,估计的更准一些。

3附录

3.1题目1源程序

%%2阶自回归模型参数估计LSM&LSL算法by刘航20151108

clear;clf;clc;

%%初始化参数

%N是信号点数;

N=500;

na=1:

N;

%二阶自回归信号模型

a1=1.558;a2=-0.81;

x=zeros(N,1);%Wa=randn(N,1);

Wa=randn(1,N)';%白噪声

x=filter(1,[1-a1-a2],Wa);%

%%LMS算法过程

L=2;%滤波器长度

w=zeros(L,N);%LMS滤波器的系数

mu=0.002;%mu是迭代步长;

d=zeros(1,N);

fori=L+1:

N

X=[x(i-1)x(i-2)];

y(i)=X*w(:

i);

e(i)=x(i)-y(i);

w(:

i+1)=w(:

i)+2*mu*e(i)*X';

end

%%LSL算法过程

%初始化相关的参量

M=3;

Deta(1:

M,1)=0;gama(1:

M,1)=1.0;

sef(1:

M,1)=1;seb(1:

M,1)=1;%前向和后向预测误差初始值

form=1:

M-1%按阶数迭代(阶数为2,matlab下标从1开始,故M设为3)

forn=2:

N%包含按时间迭代

eb(1,n)=x(n);

ef(1,n)=x(n);

seb(1,n)=sef(1,n-1)+x(n)*x(n);

sef(1,n)=sef(1,n-1)+x(n)*x(n);

gama(1,n)=1;

Deta(m+1,n)=Deta(m+1,n-1)+eb(m,n-1)*ef(m,n)/gama(m,n-1);

ef(m+1,n)=ef(m,n)-Deta(m+1,n)*eb(m,n-1)/seb(m,n-1);

eb(m+1,n)=eb(m,n-1)-Deta(m+1,n)*ef(m,n)/sef(m,n);

sef(m+1,n)=sef(m,n)-Deta(m+1,n)*Deta(m+1,n)/seb(m,n-1);

seb(m+1,n)=seb(m,n-1)-Deta(m+1,n)*Deta(m+1,n)/seb(m,n);

gama(m+1,n-1)=gama(m,n-1)-eb(m,n-1)*eb(m,n-1)/seb(m,n-1);

kf(m+1,n)=Deta(m+1,n)/sef(m,n);

kb(m+1,n)=Deta(m+1,n)/seb(m,n-1);

end

end

kb(:

1)=0;kf(:

1)=0;

forn=1:

N

a1n(n)=kb(2,n)-kf(2,n)*kb(3,n);

a2n(n)=kb(3,n);

end

%%画图程序

figure

(1),plot(na,w(1,na),'k--','linewidth',2),holdon;

plot(na,w(2,na),'b--','linewidth',2),holdon;

plot(na,a1n,'g--','linewidth',2);holdon;

plot(na,a2n,'r--','linewidth',2);

legend('表示LMS中a1','表示LMS中a2','表示LSL中a1','表示LSL中a2',0);holdon;

plot(1.558*ones(n),'y--');

plot(-0.81*ones(n),'y--');

text(0,1.558,'1.558','color','r'),text(0,-0.81,'-0.81','color','r');

title('LSL与LMS性能参数比较');

gridon;

xlabel('n');

ylabel('a1(n),a2(n)');

%%LSL不同初始值收敛性能

%{

%更改sef(1:

M,1)=1;seb(1:

M,1)=1的值为0.1和10(得到a1_1n,a1_2n)

figure

(2),plot(na,a1n,'k--','linewidth',2),holdon;

plot(na,a1_1n,'r--','linewidth',2),holdon;

plot(na,a1_2n,'b--','linewidth',2),holdon;

legend('1.0','10','0.1',0);

gridon;

%}

3.2题目2源程序

%%PHD算法by刘航20151108

%%初始化参数,产生复白噪声噪声和待估计信号

clc;

clearall;

N_sample=25;%取样自相关点数

M=2;%正弦信号的个数

sigma=0.1;

v_real=sigma*randn(N_sample,1)/sqrt

(2);%白噪声的实部

v_imag=sigma*randn(N_sample,1)/sqrt

(2);%白噪声的虚部

v=v_real+1i*v_imag;%复白噪声

n=1:

N_sample;

n=n';

s=exp(1i*2*pi*0.5*n)+exp(1i*(2*pi*0.55*n+pi/4));

x=s+v;%观察信号

%%PHD算法实现

%根据信号取样求出自相关序列,进而求出3阶相关矩阵

N=3;%题(4)中自相关矩阵Rx的阶数

[x_corr,a]=xcorr(x,'unbiased');%求相关函数无偏估计

Rx=(toeplitz(x_corr(N_sample:

N_sample+N-1))).';%求自相关矩阵

%%求Rx的特征值和特征向量,并找出最小特征值对应的特征向量

[V,D]=eig(Rx);%求特征值和特征向量

vmin=V(:

1);%最小特征值对应的特征向量N=M+1

%%解正交方程4.154,直接解出频率值

Z=roots(vmin.');%方程(4.152)求解,得到

w=angle(Z);%零点的角度

fori=1:

M

ifw(i)<0

w(i)=w(i)+2*pi%angle函数求出的角度范围是[-pi,pi),当求出的角频

%率w<0时,需要加上一个2*pi以调整到[0,2*pi)之间

end

end

f_PHD=w/(2*pi)

%%MUSCI算法by刘航20151109

%%初始化

clc;

clearall;

N=12;%题(5)中自相关矩阵Rx的阶数

N_sample=25;%取样自相关点数

M=2;%正弦信号的个数

%%产生复白噪声噪声和信号

sigma=0.1;%白噪声功率

SNR=10*log10(1/(sigma.^2));%求信噪比

v_real=sigma*randn(N_sample,1)/sqrt

(2);%白噪声的实部

v_imag=sigma*randn(N_sample,1)/sqrt

(2);%白噪声的虚部

v=v_real+1i*v_imag;%复白噪声

n=1:

N_sample;

n=n';

s=exp(1i*2*pi*0.5*n)+exp(1i*(2*pi*0.52*n+pi/4));

x=s+v;%观察信号

%%数据自相关矩阵获得;

x_corr=xcorr(x,'unbiased');%相关序列的无偏估计unbiased

Rx=(toeplitz(x_corr(N_sample:

N_sample+N-1))).';%求自相关矩阵

%%求Rx的特征值和特征向量

[V,D]=eig(Rx);%求特征值和特征向量

vmin=V(:

1:

N-M);%噪声子空间的N-M个特征向量

%%通过方程(4.155)用作图法求估计频率值

K=10000;%在0--1之间分10000步搜索

f=linspace(0,1,K);

e=zeros(N,K);

forn=1:

N

e(n,:

)=exp(1i*(n-1)*2*pi*f);

end

y=e'*vmin;

y=(abs(y)).^2;

sum_music=sum(y,2);

sum_music=1./sum_music;

plot(f,sum_music);

[f_MUSIC,yy]=ginput

(2);%捕捉两个尖峰,尖峰所对对应的横坐标即为带估计频率

f_MUSIC

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2