医学图像处理实验报告.docx

上传人:b****2 文档编号:3476660 上传时间:2023-05-05 格式:DOCX 页数:14 大小:370.67KB
下载 相关 举报
医学图像处理实验报告.docx_第1页
第1页 / 共14页
医学图像处理实验报告.docx_第2页
第2页 / 共14页
医学图像处理实验报告.docx_第3页
第3页 / 共14页
医学图像处理实验报告.docx_第4页
第4页 / 共14页
医学图像处理实验报告.docx_第5页
第5页 / 共14页
医学图像处理实验报告.docx_第6页
第6页 / 共14页
医学图像处理实验报告.docx_第7页
第7页 / 共14页
医学图像处理实验报告.docx_第8页
第8页 / 共14页
医学图像处理实验报告.docx_第9页
第9页 / 共14页
医学图像处理实验报告.docx_第10页
第10页 / 共14页
医学图像处理实验报告.docx_第11页
第11页 / 共14页
医学图像处理实验报告.docx_第12页
第12页 / 共14页
医学图像处理实验报告.docx_第13页
第13页 / 共14页
医学图像处理实验报告.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

医学图像处理实验报告.docx

《医学图像处理实验报告.docx》由会员分享,可在线阅读,更多相关《医学图像处理实验报告.docx(14页珍藏版)》请在冰点文库上搜索。

医学图像处理实验报告.docx

医学图像处理实验报告

医学信息处理课程设计实验报告

指导老师

 

姓名

学号

班级

 

江苏大学电气学院

生物医学工程系

2010-7-9

心电信号RR间期的检测设计

内容:

心电信号RR间期的检测是心电信号分析的重要环节之一。

用MATLAB编程实现求取心电信号RR间期的加窗法、幅值阈值法和基于形态学的检测方法,并比较三种算法。

目的:

通过此设计,进一步加深对心电信号的认识;了解心电信号的P波、QRS波、T波等各个波段特点;掌握求取心电信号RR间期的基本方法;熟悉MATLAB基本编程应用;熟悉典型医学信号处理的流程;提高动手能力,巩固医学信号处理基本知识。

要求:

应用MATLAB的m文件编写程序实现

说明:

给定心电信号数据的采样率为360Hz

心电信号波形分析是心电监护和自动诊断的基础。

图是常规心电图的波形组成和测量示意图。

正常心电图包括:

P波,QRS波,T波等;RR间期是测量心率的方法之一

加窗法测心电rr间期

加窗法是测量RR间期的一种基本方法

一般在正常心电图中,QRS波群的R波峰值最大,因此对于一段给定心电数据,对数据加窗,保证在此窗口内只有一个QRS波,检测其最大值,其对应的时刻就是R波峰值时刻;然后滑动数据采样窗口,计算下一个R波峰值对应的时刻;以此类推,得到n个R波峰值时刻,后次减去前次时间得到n-1个RR间期;最后将n-1个RR间期求平均得到平均RR间期。

加窗法测RR间期的算法简单快速有效,每次加窗的窗口宽度固定。

窗口宽度根据经验值确定,但是对应于动态变化的心电图或者异常心电图,有时候在固定窗口内不能包含完整的QRS波,容易造成R波误测和漏测,增加误检率和漏检率。

注释:

[Y,I]=max(x)

源程序:

clc;clear;

load('F:

\新建文件夹\');

plot(ecg2);

xlabel('Caiyangdian');

ylabel('Fuzhi');

title('pictureofECG');

width=300;

fori=1:

6;

x=ecg2(((i-1)*width+1):

(i*width));

[Y(i),R_time(i)]=max(x);

R_time(i)=R_time(i)+(i-1)*width

end

fori=1:

5;

R_R(i)=R_time(i+1)-R_time(i);

end

R_R=(R_R

(1)+R_R

(2)+R_R(3)+R_R(4)+R_R(5))/(5*360);

程序流程图分析

 

程序结果

幅值阈值法测心电rr间期

幅值阈值法和斜率阈值法也是较常用的测量R波的基本方法。

这里只讲述较为简单的一种:

幅值阈值法。

幅值阈值法的实质:

若一段给定心电信号的最大值为MAX,取幅值为2/3MAX(阈值)的一条直线与心电图信号相交,一般每个QRS波群与其有两个交点,如图示的A点与B点,横坐标是采样点,纵坐标是心电幅值,单位毫伏。

求[A,B]区间对应的心电图幅值最大值,即得到此QRS波的R波波峰值,其对应的时刻就是R波峰值时刻。

若有n对交点,则得到n个R波峰值时刻,后次减去前次时间得到n-1个RR间期;最后将n-1个RR间期求平均得到平均RR间期

方法一

源程序:

clc;clear

load('F:

\新建文件夹\');

[Y,I]=max(ecg2);

M=*Y;

fori=1:

1800;

ecg2(ecg2<=M)=0;

end

plot(ecg2);

xlabel('Caiyangdian');

ylabel('JianfengFuzhi');

title('pictureofECG');

j=1;

fori=1:

1799

if((ecg2(i)==0)&(ecg2(i+1)>0))L(j)=i;

j=j+1;

elseif((ecg2(i)>0)&(ecg2(i+1)==0))L(j)=i+1;

j=j+1;

end

end

end

j=1;

fori=1:

2:

11;

[Y(j),I(j)]=max(ecg2(L(i)):

ecg2(L(i+1)));

I(j)=I(j)+L(i);

j=j+1;

end

fori=1:

5;

R_R(i)=I(i+1)-I(i);

end

R_R=(R_R

(1)+R_R

(2)+R_R(3)+R_R(4)+R_R(5))/(5*360)

程序流程图分析

方法二

源程序:

clc;clear

load('F:

\新建文件夹\');

[Y,I]=max(ecg2);

M=*Y;

fori=1:

1800;

ecg2(ecg2<=M)=0;

end

plot(ecg2);

xlabel('Caiyangdian');

ylabel('JianfengFuzhi');

title('pictureofECG');

j=1;

fori=1:

1799

if((ecg2(i)==0)&(ecg2(i+1)>0))L(j)=i;

j=j+1;

elseif((ecg2(i)>0)&(ecg2(i+1)==0))L(j)=i+1;

j=j+1;

end

end

end

j=1;

fori=1:

2:

11;

I(j)=(L(i)+L(i+1))/2;

j=j+1;

end

fori=1:

5;

R_R(i)=I(i+1)-I(i);

end

R_R=(R_R

(1)+R_R

(2)+R_R(3)+R_R(4)+R_R(5))/(5*360)

形态学测心电rr间期(基漂)

膨胀算子:

腐蚀算子:

开运算:

源程序:

clc;clear;

load('F:

\新建文件夹\');

ecg=ecg3(1:

1772);

b=[1,1,1,1,1,1,1,1];

fori=1:

1793;

a=ecg3(i:

i+7);

c=a+b;

[Y,I]=max(c);

ecg3(i)=Y;

end

fori=1:

1786;

a=ecg3(i:

i+7);

c=a-b;

[Y,I]=min(c);

ecg3(i)=Y;

end

fori=1:

1779;

a=ecg3(i:

i+7);

c=a-b;

[Y,I]=min(c);

ecg3(i)=Y;

end

fori=1:

1772;

a=ecg3(i:

i+7);

c=a+b;

[Y,I]=max(c);

ecg3(i)=Y;

end

ecg3=ecg3(1:

1772);

y=ecg-ecg3;

ecg2=y;

[Y,I]=max(ecg2);

M=*Y;

fori=1:

1772;

ecg2(ecg2<=M)=0;

end

subplot(3,1,1);

plot(ecg3),axis([01800-14]),title('pictureofJipiaoECG');

subplot(3,1,2);

plot(y),axis([01800-14]),title('pictureofECG')

subplot(3,1,3);

plot(ecg2),axis([01800-14]),title('pictureofJianfengECG');

j=1;

fori=1:

1771

if((ecg2(i)==0)&(ecg2(i+1)>0))L(j)=i;

j=j+1;

elseif((ecg2(i)>0)&(ecg2(i+1)==0))L(j)=i+1;

j=j+1;

end

end

end

j=1;

fori=1:

2:

11;

[Y(j),I(j)]=max(ecg2(L(i)):

ecg2(L(i+1)));

I(j)=I(j)+L(i);

j=j+1;

end

fori=1:

5;

R_R(i)=I(i+1)-I(i);

end

R_R=(R_R

(1)+R_R

(2)+R_R(3)+R_R(4)+R_R(5))/(5*360)

程序流程图分析

运行结果

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

当前位置:首页 > 总结汇报 > 学习总结

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

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