基于深度学习的ECG信号分类方法及实现毕业论文
2021-04-05 00:44:41
摘 要
人工智能在医疗领域的发展,为人类带来了福音,不仅提升了医学诊断和治疗效率和精度,而且使得医疗走进了人们日常的生活中,利用人工智能对人体健康进行随时随地的监测,不仅对人们来说使得医疗更加便利,同时也可以很大程度的缓解我国医疗资源缺乏和分布不均的状况。深度神经网络属于人工智能的一个分支,在最近几年也得到了迅速的发展,深度学习在医疗领域的应用在于疾病检测方面成就卓著。利用深度学习进行心电图的分类,精度可以达到其他方法所不能达到的高度,成功规避了传统心电图分类方法的弊端,同时也能解决医疗资源缺乏的现状。
用深度学习的方法实现心电图的分类,需要进行心电图的获取,处理,分类,才能得到完整的分类效果。
- 心电图获取:心电图的获取是来自于MIT-BIH数据库,这里有许多的生理信号,选择MIT-BIH Arrhythmia Database,从MIT-BIH Arrhythmia Database中下载48条双导联心电图信号。
- 信号预处理和QRS定位:原始的心电图的信号含有噪声,需要进行预处理,并将QRS波更加突出。预处理需要做的是对心电信号进行带通滤波,滤波之后,P波和T波被削弱。双斜率处理,双斜率之后波形更加单一,滑动窗口积分,滑动积分之后使波形变得更加平滑。双阈值的设置进行QRS定位,阈值的可以根据QRS的幅度进行自我调整,设置下限,使得阈值的变化更加稳健。能够实现防漏检和错检的功能。
- 实现分类:进行分类首先要截取心拍,漏检的心拍可以先忽略,因为双阈值的设定有防漏检的效果,被漏检的心拍很少。从P波开始到T波结束,很难进行精确定位。所以选取幅值最大点,然后向左和向右各取一段的方式,截取出一段心拍。然后用一维卷积神经网络进行心拍的基本分类。实现结果能够显示出很好的分类效果。
本次设计的目的主要是对心电图进行基本的分类,能够检测到心电图中所包含的病理信息,辅助医生对病人进行准确的病情诊断,提高医疗的效率和准确率。要完成的工作是心电图的获取,读取,处理和分类,所有工作完成之后,实现对心电图的分类,使得分类精度达到理想程度。分类结束之后,可以看到最终结果达到了四分类,每种分类精确度在90%以上,总体准确度达到98%以上。
关键词:深度学习,心电图分类,医疗
Abstract
The development of artificial intelligence in the field of medical treatment has brought good news to mankind. It not only improves the efficiency and accuracy of medical diagnosis and treatment, but also makes medical treatment come into people's daily life. Using artificial intelligence to monitor human health anytime and anywhere not only makes medical treatment more convenient for people, but also can greatly alleviate the shortage of medical resources in China.Deep learning is a branch of artificial intelligence, which has been developed rapidly in recent years. The application of deep learning in medical field has made remarkable achievements in disease detection. Using deep learning to classify electrocardiogram can achieve a high accuracy that other methods can not achieve. It successfully avoids the drawbacks of traditional electrocardiogram classification methods, and can also solve the current situation of lack of medical resources.
The ECG signal is from MIT-BIH database. There are many physiological signals. Select MIT-BIH Arrhythmia Database and download 48 dual-lead ECG signals from MIT-BIH Arrhythmia Database.The original ECG signal contains noise, which needs to be preprocessed, and the QRS wave is more prominent. What the pretreatment needs to do is to filter the ECG signal band-pass. After filtering, P wave and T wave are weakened. After double slope processing, the wave form becomes more single, the sliding window integral, and the wave form becomes smoother after sliding integral. The setting of double thresholds for QRS positioning, the threshold can be self-adjusted according to the magnitude of QRS, setting the lower limit, making the change of threshold more robust. It can realize the functions of leak-proof and error-proof.To classify, the first step is to intercept the heartbeat. The missed heartbeat can be neglected first, because the setting of double threshold has the effect of preventing missed heartbeat, and the missed heartbeat is very few. From the beginning of P wave to the end of T wave, it is difficult to locate accurately. So choose the maximum point of amplitude, and then take a section to the left and right, intercept a section of heartbeat. Then one-dimensional convolution neural network is used to classify the beats. The results show good classification effect.
The purpose of this design is to classify electrocardiogram, to detect the pathological information contained in electrocardiogram, to assist doctors to diagnose patients accurately, and to improve the efficiency and accuracy of medical treatment. The work to be completed is the acquisition, reading, processing and classification of electrocardiogram. After all the work is completed, the classification of electrocardiogram is realized, so that the classification accuracy reaches an ideal level. After the classification, we can see that the final result has reached four classifications, each classification accuracy is more than 90%, and the overall accuracy is more than 98%.
Key words:deep learning,electrocardiogram,medical treatment
目 录
第1章 绪论 1
1.1课题背景及意义 1
1.2 国内外当前研究现状 2
第2章 ECG信号的预处理 4
2.1 ECG数据集 4
2.2 心电信号读取 5
2.3 心电图预处理 7
2.3.1带通滤波 8
2.3.2双斜率处理 8
2.3.3低通滤波 9
2.3.4滑动窗口积分 9
2.4 QRS心拍定位 10
2.4.1双阈值定位算法 10
2.4.2双阈值定位算法评估 14
第3章 一维卷积神经网络分类 17
3.1一维卷积神经网络的结构设计 19
3.2 确定超参数 21
3.3 建立并训练一维卷积神经网络 21
3.4测试结果 22
第4章 总结与展望 24
参考文献 26
致谢 27
第1章 绪论
1.1课题背景及意义
心电图(ECG或者EKG)[1]是利用心电图机从体表记录心脏每一心动周期所产生的电活动变化图形的技术。从1842年开始法国科学家发现了心脏的电活动,到三十年之后,人们终于记录到心脏活动的电信号[2],之后再从发现到记录,人们开始用毛细静电计看到心电图的,后来又将这种记录方法改进到用弦线电流计,这就是心电图信号从开始被发现到被记录的历史。再后来慢慢发展我们可以从心电图中找到反映病人生理特征的信息,从心电图中捕捉到反映病人病情状况的信号,用心电图来对病情诊断治疗的辅助。经过100多年的发展,今日的心电图机日臻完善。不仅记录清晰、抗干扰能力强、并具有自动分析诊断功能。
心电图分析是检测心电图周期中的各波形[3],然后进行模式分类的过程,对检测出的特征进行直接的应用就是对这些特征进行分类,判断出心电图中所包含的病理特征,从而帮助进行疾病监控与功能检测。心电图中包含着大量的极其重要的人体的健康状况信息,对于医生对病人进行身体情况的诊断有着非常重要的作用,但是如果仅仅依靠医生对心电图信号进行分析和诊断,是非常不现实的,而且难已实现,因为这种诊断需要非常丰富的专业医疗知识,这对专业技能的要求非常高,而且会耗费极大的人力资源和时间,特别是对医疗资源匮乏的偏远地区来说更加难已实现。随着现代科技的发展,科技对医疗领域的探索也在不断的深入,并且取得了很大的成果,给人们的生活及日常体质监测带来极大的便利。深度学习发展至今,也在很多领域得到了应用,而且取得了优异的效果。深度学习与医疗领域的结合也越来越深厚。利用深度学习我们可以解决目前心电图分类方面的许多问题,这也是深度学习之于心电图分类相较于传统分类方式的优势所在。本课题的研究对医疗领域有着重大意义,利用深度学习的算法可以有效提高心电图分类的准确率,就目前来说,利用深度学习进行心电图分类所能达到的分类精度是最高的,这对于医生对于病人病情的准确判断有着重要的作用。
从80年代后期开始,随着神经网络的发展,神经自学习的功能,抗干扰以及解决复杂问题的能力,引起医学诊断技术领域的注意。Tsai等用ECG的波形的功率谱密度函数PSD训练三层网络来识别5种不同的ECG分类类型,训练好的网络识别正确率达到92.5%,Dokur,Olmez等设计了一种混合神经网络,并采用遗传算法对网络结构进行调整。近年来国内许多专家学者也对神经网络方法进行分类研究,包括模糊神经网络,回归神经网络,符号神经网络等,取得了较好的结果,分类正确率大致在98%和60%左右。通过心电图的检查,可以明确诊断有无心率失常,冠心病,心肌梗塞等,对于帮助医生更加清楚的了解患者的病情,帮助患者制定出更加切实有效的治疗方案有着极大的帮助作用,可以很好的推动医学的发展进步。因此心电图的分类在当今社会也引起了极大的关注和许多先进人士的推动。现在人们已经掌握了许多将心电图分类的方法,并且这些方法还在日臻完善。