生物医学信号处理实验五报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第 17页
共 36页
生物医学信号处理
(a)
(b)
(c)
(d)
图 27 各信号在 L-D 算法下最佳阶数对应图,(a)心电信号的(b)脑电信号的(c)颅内压信号的(d)呼吸 频率信号的 第 18页 共 36页
生物医学信号处理
信号类型 心电 脑电 颅内压 呼吸频率
表 5 信号类型影响的输出结果 最佳阶数 最佳阶数对应的最小均方误差 15 112.4943 23 4.2773 43 207.6390 82 2.6571e+005
第 3页 共 36页
生物医学信号处理
%[a,E] = aryule(x,p); % a--系数,E--预测误差,k--反射系数 [a,E(p)] = arburg(x,p); %Y = filter(B,A,X) ,输入 X 为滤波前序列,Y 为滤波结果序列, %B/A 提供滤波器系数,B 为分子, A 为分母 da = a(2:end)-A'; % 自编程序求解是否正确? FPE(p)=E(p)*(M+p+1)/(M-p-1); w = randn(size(x)); x2 = filter(1,a,w); % 仿真数据 Rx2 = xcorr(x2,'biased'); xx = abs(fft(Rxx)); xx2 = abs(fft(Rx2)); %figure; %subplot(4,1,1);plot(x); xlim([0 1024]);title('真实数据'); %subplot(4,1,2);plot(x2);xlim([0 1024]);title('仿真数据'); %subplot(4,1,3); plot(-1023:1023,xx);title('真实数据功率谱'); %subplot(4,1,4); plot(-1023:1023,xx2);title('仿真数据功率谱'); error(p)=mean((x-x2).^2);%求最小均方误差 end Popt=find(FPE==min(FPE)) figure,plot(i,error,'-*') title('最小均方误差随阶数 p 的变化情况'),xlabel('p');ylabel('error'); figure,plot(i,E,'-*');grid on title('预测误差随阶数 p 的变化情况'),xlabel('p');ylabel('E'); figure,stem(i,Sw,'-*');grid on title('白噪声方差估计随阶数 p 的变化情况') xlabel('p');ylabel('白噪声方差估计'); figure,plot(i,FPE,'-*'); title('FPE 随阶数 p 的变化情况');xlabel('p');ylabel('FPE');
(b)
(c)
图 24 Burg 算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
图 25 Burg 算法下的最佳阶数结果图
算法 自建算法 L-D 算法 Burg 算法
表 4 不同算法对呼吸频率信号影响的输出结果 最佳阶数 最佳阶数对应的最小均方误差 82 2.7176e+005 82 2.6728e+005 61 2.7804e+005
第 4页
共 36页
生物医学信号处理
(二)实验结果
本次实验中采用 4 种信号,分别验证算法、信号类型、信号长度对所产生的 AR 模型效果的 影响。
图1
4 种长度均为 1024 的信号,心电信号、脑电信号、颅内压信号、呼吸频率信号
1、算法的影响(所选取的信号长度均为 1024) (1)心电信号 ①自建算法 (a) (b)
结论二: 由上述对比可知,AR 模型对脑电信号的效果最好。
3、信号长度的影响(在 L-D 算法下) (1)心电信号 ①信号长度为 128 (a) (b)
(c)
图 28 信号长度为 128 时各参数随阶数 P 的变化情况,(a)最小均方误差(b)白噪声方差估计(c)FPE
第 19页
共 36页
生物医学信号处理
图 21 自建算法下的最佳阶数结果图
第 14页
共 36页
生物医学信号处理
②L-D 算法 (a) (b) (c)
图 22 L-D 算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
图 23 L-D 算法下的最佳阶数结果图
第 15页
共 36页
生物医学信号处理
③Burg 算法 (a)
三、实验原理
随机信号可以看作是由当前激励白噪声 w(n)以及若干次以往信号 x(n-k)的线性组合产生, 即所 谓自回归模型(AR 模型)
xn wn a k xn k
k 1 p
H z
1 1 a k z k
k 1 p
模型参数满足 Yule-Walker 方程
结论一:由上述对比可知,自建算法与 L-D 算法的结果差不多,而 burg 算法与其他的有一定 差异,但总体而言输出的白噪声方差估计比较相似。
第 16页
共 36页
生物医学信号处理
2、信号类型的影响(在 L-D 算法下,所取信号长度均为 1024) (a) (b)
(c)
(d)
图 26 各信号在 L-D 算法下各参数随阶数 P 的变化情况,(a)心电信号的(b)脑电信号的(c)颅内压信号的(d) 呼吸频率信号的
求解 Yule-Walker 方程,就可以得到 AR 模型系数 当模型阶次较大时,直接用矩阵运算求解的计算量大,不利于实时运算。利用系数矩阵的特性, 人们提出了如 L-D 算法
第 2页
共 36页
生物医学信号处理
四、实验内容
编写求解 Yule-Walker 方程的程序,并对实际生理信号(例如心电、脑电)建立 AR 模型。 对同一数据,使用 Matlab 信号处理工具箱自带函数 aryule 计算相同阶数 AR 模型系数,检验 程序是否正确。 用伪随机序列(白噪声)驱动 AR 模型,观察输出是否与真实心电、脑电信号相似,对比真实 信号与仿真信号的功率谱。
图5
L-D 算法下的最佳阶数结果图 第 6页 共 36页
生物医学信号处理
③Burg 算法 (a)
(b)
(c)
图 6 Burg 算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
图7
Burg 算法下的最佳阶数结果图
算法 自建算法 L-D 算法 Burg 算法
表 1 不同算法对心电信号影响的输出结果 最佳阶数 最佳阶数对应的最小均方误差 15 125.9175 15 176.9102 31 188.9843
图 17 L-D 算法下的最佳阶数结果图
第 12页
共 36页
生物医学信号处理
③Burg 算法 (a)
(b)
(c)
图 18 Burg 算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
图 19 Burg 算法下的最佳阶数结果图
算法 自建算法 L-D 算法 Burg 算法
五、实验结果与分析
(一)实验代码
clear; clc; M=1024; load ecgdata;load eegdata;load icpdata;load respdata; x = ecgdata(1:M); % 长度可以任意选择,但信号越长计算量越大 x2 = eegdata(1:M); % 长度可以任意选择,但信号越长计算量越大 x3 = icpdata(1:M); % 长度可以任意选择,但信号越长计算量越大 x4 = respdata(1:M); % 长度可以任意选择,但信号越长计算量越大 i=1:100; Sw=zeros(1,length(i)); E=zeros(1,length(i)); FPE=zeros(1,length(i)); for p=1:100% 尝试改变模型阶数,观察效果 Rxx = xcorr(x,'biased');%biased 为有偏的互相关函数估计 Rtemp = zeros(1,p); Rl = zeros(p,1); for k = 1:length(Rtemp) Rtemp(k) = Rxx(length(x)-1+k); Rl(k) = Rxx(length(x)+k); end Rs = toeplitz(Rtemp); % 生成自相关系数矩阵指矩阵中每条自左上至右下的 % 斜线上的元素相同,toeplitz(x)用向量 x 生成一 % 个对称的托普利兹矩阵 A = -inv(Rs)*Rl; % AR 模型系数估计 Sw(p)= [Rtemp(1),Rl']*[1;A]; % 白噪声方差估计 % 采用 malab 自带函数估计模型系数
表 3 不同算法对颅内压信号影响的输出结果 最佳阶数 最佳阶数对应的最小均方误差 43 36.2413 43 23.5897 68 81.1064
第 13页
共 36页
生物医学信号处理
(4)呼吸信号 ①自建算法 (a)
(b)
(c)
图 20 自建算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
学习求解 Yule-Walker 方程,建立随机信号的 AR 模型。
二、实验环境
1、硬件配置:处理器:Intel(R) celeron(R) CPU N2940 @2.60GHz 2.60GHz 安装内存(RAM) :4.00GB 系统类型:64 位操作系统 2、软件环境:MATLAB R2012b
(c)
图 2 自建算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
第 5页
共 36页
生物医学信号处理
图 3 自建算法下的最佳阶数结果图
②L-D 算法 (a)
(b)
(c)
ቤተ መጻሕፍቲ ባይዱ
图 4 L-D 算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
Rxx m ak Rxx m k m 0
k 1
p
矩阵形式
R 1 R0 R1 R0 R p 1 R p 2 R1 p a1 R1 a R2 R2 p 2 R0 a p R p
图 11 L-D 算法下的最佳阶数结果图
第 9页
共 36页
生物医学信号处理
③Burg 算法 (a)
(b)
(c)
图 12
Burg 算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
图 13 Burg 算法下的最佳阶数结果图
算法 自建算法 L-D 算法 Burg 算法
表 2 不同算法对脑电信号影响的输出结果 最佳阶数 最佳阶数对应的最小均方误差 23 3.4170 23 3.5595 43 3.4763
第 7页
共 36页
生物医学信号处理
(2)脑电信号 ①自建算法 (a)
(b)
(c)
图 8 自建算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
图 9 自建算法下的最佳阶数结果图
第 8页
共 36页
生物医学信号处理
②L-D 算法 (a) (b) (c)
图 10 L-D 算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
评分
大理大学实验报告
2015—2016 学年度第 3 学期
课程名称 实验名称 专业班级 姓 名 学 号 实验日期 实验地点
生物医学信号处理 Yule-Walker 方程 2013 级生物医学工程 1 班 杨飞 2013166141 2016 年 5 月 27 日 GC-612
生物医学信号处理
一、实验目的
第 10页
共 36页
生物医学信号处理
(3)颅内压信号 ①自建算法 (a)
(b)
(c)
图 14 自建算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
图 15 自建算法下的最佳阶数结果图
第 11页
共 36页
生物医学信号处理
②L-D 算法 (a) (b) (c)
图 16 L-D 算法下各参数随阶数 P 的变化,(a)最小均方误差(b)白噪声方差估计(c)FPE
相关文档
最新文档