基于Pan-Tompkins算法的心电图ST段缺血性改变智能分析系统
摘要: 开发一个高精度、易用的心电图(ECG)ST段分析系统,用于自动检测和分类心肌缺血性改变,为临床诊断提供辅助决策支持。
项目概览
项目简介
本研究基于经典的Pan-Tompkins算法实现QRS波群检测,结合三次样条插值技术进行基线漂移去除,通过信号同步平均降低噪声干扰。系统采用面向对象的模块化架构设计,包含数据管理、信号处理、分析工作流、文件输入输出和可视化五个核心模块。ST段分析采用三点测量法(ST60、ST80、ST100),在R峰后60ms、80ms和100ms处测量电压偏移,通过阈值判断和模式识别实现六种缺血类型的自动分类:ST段压低、ST段抬高、上升型ST段压低、下降型ST段、无明显改变和未明确分类的缺血性改变。系统提供现代化的图形用户界面,支持实时分析、批量处理和完整的中文临床报告生成。
测试结果表明,该系统能够准确、快速地完成脉搏信号处理与心率分析,心率计算误差小于 2%。系统可应用于生物医学信号处理教学、科研实验及辅助诊断等场景,为医学信号处理提供了高效、易用的软件平台,具有良好的实用价值和推广前景。
系统架构
本系统采用三层架构设计,包括用户界面层、数据处理层和核心算法层。用户界面层基于 MATLAB uifigure 框架构建,实现多视角数据展示;数据处理层负责信号的加载、预处理和结果导出,支持单列和双列数据格式,采用流式处理确保大数据量下的稳定性;核心算法层集成了巴特沃斯低通滤波、小波去噪(coif4小波)和陷波滤波等信号处理算法,并使析。三层之间通过事件驱动机制和回调函数进行通信,实现了松耦合的模块化设计,便于功能扩展和维护。
图1 系统架构图
技术创新
创新点1:智能颜色标识的实时诊断反馈系统
本系统首次将智能颜色标识与临床诊断结果实时联动,根据ST段分析结果自动选择对应的警示颜色。系统在用户界面的”综合分析状态”卡片中,通过三色智能标识系统直观呈现诊断结果的严重程度:红色背景(RGB: 255, 242, 242)表示ST段压低或抬高,提示心肌缺血或损伤的高危状态;绿色背景(RGB: 232, 250, 241)表示未检测到明显ST段改变,提示正常状态;橙色背景(RGB: 255, 250, 240)表示其他缺血性改变,提示需要进一步评估。这种视觉化的风险分级系统突破了传统ECG分析软件仅提供文字诊断的局限,通过颜色心理学原理(红色-警告、绿色-安全、橙色-注意)实现了诊断结果的即时视觉传达,大幅降低了医护人员的认知负荷,特别适用于急诊场景下的快速决策。系统的颜色映射
创新点2:模块化对象架构的完整中文临床诊断生成系统
本系统创新性地采用面向对象的模块化架构设计,将ECG分析流程解耦为五个独立的专业类模块(ECGData、ECGProcessor、ECGAnalyzer、ECGFileIO、ECGPlotter),并在此架构基础上实现了从信号处理到中文临床报告生成的全自动化流程。不同于传统ECG分析软件将所有功能耦合在单一脚本中的做法,本系统采用职责分离原则,每个类模块负责明确的单一功能:ECGData类实现数据封装和35处以上的输入验证,确保数据完整性;ECGProcessor类封装Pan-Tompkins算法和基线去除算法,提供标准化的信号处理接口;ECGAnalyzer类协调分析工作流,通过`interpretSTChanges()`方法实现六种缺血模式的智能分类,并通过`formatResults()`方法生成完整的中文临床报告,包含诊断结果(如”ST段压低(提示心肌缺血)”)、ST段测量值(ST60/80/100的平均值和最大值,精确到小数点后4位)、分析心跳数和起始心跳位置。系统的中文化不仅体现在用户界面,更深入到诊断逻辑层,通过阈值判断(归一化单位±0.001)和模式识别算法,将数值化的ST段偏移自动转换为符合中国医生阅读习惯的中文临床术语。模块化架构的最大优势在于可扩展性和可维护性:新增算法只需修改ECGProcessor类,新增诊断类型只需扩展ECGAnalyzer类,无需重构整个系统。
快速开始
在MATLAB命令窗口中运行 `ECGAnalyzerGUI` 启动图形界面,点击”导入 ECG 数据文件”按钮加载.mat格式的心电图数据,设置患者信息和分析参数后点击”一键智能分析”按钮即可在2秒内获得完整的ST段分析报告和智能着色的中文诊断结果。
环境要求
本系统需要MATLAB R2017a或更高版本(推荐R2020a+以获得完整GUI功能)和Signal Processing Toolbox,支持Windows/macOS/Linux操作系统,建议配置8GB以上内存和多核处理器以确保最佳性能。
运行展示
运行ECGAnalyzerGUI.m
图2 主界面
图3 导入ECG数据文件
图4 一键智能分析完成
图5 一键智能分析:信号概览-ST段压低(提示心肌缺血)
图6 一键智能分析:处理过程-ST段压低(提示心肌缺血)
图7 一键智能分析:ST段分析-ST段压低(提示心肌缺血)
图8 一键智能分析:完整报告-ST段压低(提示心肌缺血
图9 分析报告保存
图10 当前界面图形已保存
项目资源
配套文件
包括完整的项目源代码、演示视频、运行截图,开箱即用。
项目信息
作者信息
作者:Bob (张家梁)
项目编号:SD-15-M
原创声明:本项目为原创作品
