心电信的频谱分析FFT分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
心电信的频谱分析F F T
分析
集团标准化工作小组 [Q8QX9QT-X8QQB8Q8-NQ8QJ8-M8QMN]
课程设计任务书
(指导教师填写)
课程设计名称微机应用技术课程设计学生姓名专业班级
设计题目心电信号的频谱分析- FFT分析
一、课程设计目的
1.了解心电信号的特点;
2.熟悉MATLAB程序设计方法;
3.理解频谱分析的作用和相关概念;
二、设计内容、技术条件和要求
1.采样点数N=1000,采样频率f=360HZ 和 100HZ;
2.利用Matlab软件对心电信号进行时域分析(包括均值,方差,标准差,峰峰值,极大值和极小值)和频域分析(FFT),其中涉及的参数根据需要自主选择;
三、时间进度安排
第1周:查阅资料;
第2周:实现设计内容
第3周:整理资料,撰写课程设计任务书
四、主要参考文献
参考《模拟电子技术》、《Matlab信号处理与应用》和《医学仪器》教材指导教师签字:年月日
四、心电信号的Matlab实现
2
3
本次课程设计介绍了一种运用信号系统知识和MATLAB相结合的思想,设计出用傅里叶变换分析MIT-BIH心电数据库的心电信号的方法。运用该方法既能简便的对心电信号进行分析,又能把所学知识应用于解决实际问题。该方法简单易懂,能加深初学者对傅里叶变换的理解,并且可以得到许多有用的信息,对于诊断疾病有非常重要的参考价值。
关键字:心电信号 Matlab 傅里叶变换
引言
美国麻省理工学院提供的MIT-BIH数据库是一个权威性的国际心电图检测标准库,近年来应用广泛,为我国的医学程界所重视。
MIT-BIH数据库共有48个病例,每个病例数据时长30min,共116000多个心拍,包含有正常心拍和异常心拍,内容丰富完整,为了读取方便,采用txt格式的数据文件作为我们的原心电信号数据。利用Matlab提供的textread 函数,读取txt数据文件中的信号,并还原为实际波形。
本设计课题主要研究数字心电信号的初步分析及matlab应用。通过完成本课题的设计,主要达到以下几个目的:
(1)了解MATLAB软件的特点和使用方法,熟悉基于了解人体心电信号的时域特征和频谱特征;
(2)进一步了解数字信号的分析方法;
(3)通过本课题的设计,培养学生运用所学知识分析和解决实际问题的能力。
一、心电信号的特点
心电信号属生物医学信号,具有如下特点:
(1)信号具有近场检测的特点,离开人体表微小的距离,就基本上检测不到信号;
(2)心电信号通常比较微弱,至多为mV量级;
(3)属低频信号,且能量主要在几百赫兹以下;
(4)干扰特别强。干扰既来自生物体内,如肌电干扰、呼吸干扰等;也来自生物体外,如工频干扰、信号拾取时因不良接地等引入的其他外来串扰等;
(5)干扰信号与心电信号本身频带重叠(如工频干扰等)。
二、 MATLAB软件介绍
MATLAB是矩阵实验室的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
MATLAB是由美国MathWorks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域
提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单元是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解决问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的使用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。
三、心电信号分析方法
按照信号与系统问题可以分为两大类基本分析方法:时域分析方法和频域分析方法。两种方法各有不同,互相补充。
3.1 时域分析
时域分析方法是对连续信号进行采样、量化和编码形成离散的二进制数字序列,再采用数字信号处理技术进行处理。信号的采样过程如果满足一定条件,那么得到的这种离散的二进制序列在形状特征以及内在属性上完全可替代原连续信号,只是这样方便人们分析处理信号并提取有用信息。
对心电信号进行的时域处理通常包括信号的均值,方差,标准差,峰峰值,极大值和极小值六种。
3.2 频域分析
离散系统的频域分析就是研究离散信号通过离散系统以后在频谱结构上所产生的变化,为此首先必须了解描述离散系统频率特性的有关特征量。信号的有些信息在用空域分析是得不到的,而如果用频域分析方法的话,可以得到其中许多有价值的信息。
3.3 FFT分析
有限长序列可以通过离散傅里叶变换(DFT)将其频域也离散化成有限长序列,但其计算量太大,很难实时地处理问题,因此引出了快速傅里叶变换(FFT)。快速傅氏变换(FFT)是离散傅氏变换的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。它对傅氏变换的理论并没有新的发现,但是对于在计算机系统或者说数字系统中应用离散傅立叶变换,可以说是进了一大步。根据对序列分解与选取方法的不同而产生了FFT的多种算法,基本算法是基2DIT和基2DIF。
设x(n)为N项的复数序列,由DFT变换,任一X(m)的计算都需要N次复数乘法和N-1次复数加法,而一次复数乘法等于四次实数乘法和两次实数加法,一次复数加法等于两次实数加法,即使把一次复数乘法和一次复数加法定义成一次“运算”(四次实数乘法和四次实数加法),那么求出N项复数序列
N次运算。当N=1024点甚至更多的时的X(m),即N点DFT变换大约就需要2
候,需要N2=1048576次运算,在FFT中,利用WN的周期性和对称性,把一个N项序列(设N=2k,k为正整数),分为两个N/2项的子序列,每个N/2点DFT