✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。
🍎 往期回顾关注个人主页:Matlab科研工作室
🍊个人信条:格物致知,完整Matlab代码及仿真咨询内容私信。
🔥 内容介绍
在医疗科技的大舞台上,心电信号(ECG)无疑是一颗闪耀的明星,默默记录着心脏的每一次 “跳动”,为医生们提供了一扇窥探心脏健康的窗口。正常的心电信号犹如一场有条不紊的交响乐,各个波形和波段都有着精准的时间和幅度,共同协作维持着心脏的正常节律。然而,一旦心脏出现问题,这曲交响乐就会出现不和谐的音符,心电信号也会随之发生改变。
就像心肌梗死发生时,心电信号中的 ST 段会像被一只无形的手向上拉扯,出现明显的抬高;而心律失常时,原本规律的心跳节律会变得杂乱无章,心电信号的波形也会跟着变得参差不齐 ,失去了原本的有序形态。这些变化就像是心脏发出的无声警报,提醒着我们它的健康出现了状况。
在临床诊断中,心电信号是医生们不可或缺的得力助手,帮助他们揪出许多隐藏在身体内部的健康隐患。无论是常见的心律失常,还是严重威胁生命的心肌梗死,又或是不太容易察觉的心肌缺血,都能从心电信号的蛛丝马迹中找到线索。通过对心电信号的细致分析,医生们能够准确判断心脏的功能状态,进而制定出最适合患者的治疗方案。
但心电信号很 “娇弱”,在采集过程中,极易受到各种噪声的干扰,就像纯净的泉水混入了杂质。比如,我们日常生活中无处不在的工频干扰,它就像一个调皮的捣蛋鬼,总是在 50Hz 或 60Hz 的频率上捣乱,让心电信号出现不该有的波动;肌肉活动产生的肌电干扰,又像一阵嘈杂的噪音,使心电信号变得模糊不清;还有基线漂移,它就像缓慢流动的暗流,让心电信号的基线发生偏移,影响我们对信号的准确判断。这些噪声的存在,就像给心电信号蒙上了一层厚厚的迷雾,严重影响了信号的质量,使得医生们难以从中获取准确的信息,从而可能导致误诊或漏诊,延误患者的治疗时机。所以,对心电信号进行去噪处理,就变得至关重要,它是让心电信号恢复清晰、准确的关键一步。
噪声干扰:心电信号的 “捣蛋鬼”
在心电信号的采集过程中,常常会混入各种噪声,就像一场原本完美的演出,混入了一些不和谐的音符,让这场演出失色不少。这些噪声的来源十分广泛,它们对心电信号的干扰方式也是多种多样的,严重影响了心电信号的质量,使得医生难以从这些受到干扰的信号中准确判断心脏的健康状况 。下面,我们就来认识一下这些心电信号的 “捣蛋鬼” 们。
工频干扰:如影随形的 “电波幽灵”
工频干扰是心电信号中最常见的噪声之一,它主要来源于交流电网,就像一个如影随形的 “电波幽灵”,在我们日常生活中无处不在。其频率通常为 50Hz 或 60Hz,具体数值取决于所在地区的电源频率,比如在我国,工频干扰的频率就是 50Hz。
在医院的病房里,各种医疗设备都在运行,这些设备的电源会产生工频干扰,通过电源线、电极等途径,悄悄地混入心电信号中。工频干扰一旦混入心电信号,就会以一组或几组具有一定周期性的正弦波形式出现,叠加在原本正常的心电信号波形之上。这就好比一幅精美的画卷被泼上了一些杂乱的颜料,使得心电信号中的一些低幅值、高频率的有用信息,如 P 波、T 波和 U 波等,被这些 “颜料” 掩盖,难以被我们发现。
想象一下,医生们在分析心电信号时,就像在一幅被破坏的画卷中寻找线索,这无疑增加了他们诊断的难度。如果不能有效去除工频干扰,很可能会导致医生对心脏病的诊断与治疗产生误导,延误患者的治疗时机。
肌电干扰:肌肉活动带来的 “嘈杂噪音”
肌电干扰是由于人体肌肉活动产生的电信号对心电信号造成的干扰,就像是一场嘈杂的噪音,让原本清晰的心电信号变得模糊不清。当我们紧张、运动、抽搐或者痉挛时,肌肉就会产生电信号,这些电信号的频率范围很广,通常在 5 - 2000Hz 之间,能量主要集中在 30 - 300Hz 内 。
在心电图采集过程中,只要我们的肌肉有活动,就可能产生肌电干扰。比如患者在检查时因为紧张而不自觉地肌肉紧绷,或者在采集信号时不小心动了一下,这些都会导致肌电干扰的出现。肌电干扰的波形形态变化非常急速,而且毫无规律可言,它与心电信号重合在一起,就像在一首优美的乐曲中加入了一段杂乱无章的噪音,使得心电信号中一些细微的变化很容易被我们忽视。这些细微的变化,可能正是心脏发出的重要健康信号,一旦被忽视,就可能导致病情的误诊或漏诊。
基线漂移:缓慢变化的 “隐藏暗流”
基线漂移是指心电信号的基线发生缓慢的、不规则的移动,它就像一股隐藏在水下的暗流,虽然不像工频干扰和肌电干扰那样明显,但却同样会对心电信号的分析产生严重影响。基线漂移通常是由电极和人体体表接触不良、病人的呼吸和活动等原因引起的 。
当我们在进行心电信号采集时,如果电极没有正确粘贴在皮肤上,或者病人在采集过程中呼吸不均匀,就可能导致基线漂移的发生。基线漂移的频率较低,一般在 0.05 - 2Hz 之间,它会使心电信号的基线不再是一条平稳的直线,而是上下波动。这就好比海平面不再平静,出现了起伏的波浪,使得心电信号中的 PR 波段和 ST 波段受到影响而产生失真。而 PR 波段和 ST 波段对于医生判断心脏的功能状态非常重要,一旦它们失真,医生就难以准确判断心脏是否存在问题,从而影响对疾病的诊断和治疗。
传统去噪方法:各有千秋也有憾
在过去,人们想出了很多办法来去除心电信号中的噪声,就像用不同的工具来清理被污染的泉水,每种工具都有它的用处,但也都有一些不足。
滤波法是一种很常用的传统去噪方法,它就像是一个筛子,通过设定特定的频率范围,把噪声从心电信号中筛除出去。比如低通滤波器,它只允许低频信号通过,就像一个只让小鱼通过的筛子,把高频的噪声挡在了外面,对去除基线漂移这样的低频噪声有很好的效果;高通滤波器则相反,它只让高频信号通过,能够去除一些低频噪声;还有带通滤波器,它只允许特定频率范围内的信号通过,就像一个有特定孔径的筛子,能够保留我们感兴趣的频率成分,去除其他频率的噪声。
自适应滤波法也是一种常见的去噪方法,它就像一个聪明的助手,能够根据信号和噪声的变化,自动调整滤波器的参数,以达到更好的去噪效果。其中,最小均方(LMS)算法是自适应滤波中常用的一种算法 ,它的核心思想是通过不断调整滤波器的权值,使得滤波器输出信号与期望信号之间的均方误差最小。比如在一个嘈杂的环境中,自适应滤波器能够根据环境噪声的变化,自动调整自身的参数,更好地去除噪声,让我们听到更清晰的声音。
这些传统的去噪方法在一定程度上能够有效地去除心电信号中的噪声,为医生的诊断提供了一定的帮助。就像在一些简单的噪声环境下,滤波法能够快速地去除噪声,让心电信号变得相对清晰;自适应滤波法也能够根据信号的变化,调整去噪策略,提高去噪效果。但它们也存在一些局限性。
滤波法的效果很大程度上依赖于滤波器的设计,如果滤波器的参数选择不当,就像筛子的孔径不合适,可能会导致有用信号被误删,或者噪声去除不彻底。比如在去除工频干扰时,如果低通滤波器的截止频率设置不合理,可能会把心电信号中的一些重要高频成分也一起去除掉,导致信号失真 ,影响医生对心脏健康状况的准确判断。
自适应滤波法虽然能够根据信号和噪声的变化自动调整参数,但它的计算复杂度较高,需要较多的计算资源和时间。就像一个聪明的助手虽然能够很好地完成任务,但他需要花费大量的时间和精力来思考和调整,这在一些对实时性要求较高的场景下,如实时心电监护中,就显得有些力不从心了。而且,自适应滤波法在处理复杂噪声时,效果可能并不理想,因为复杂噪声的特性往往很难准确估计和适应。
正是因为传统去噪方法存在这些局限性,所以人们一直在寻找更好的去噪方法。就像在探索如何更好地清理被污染的泉水时,不断尝试新的工具和方法。而粒子群算法(PSO)结合小波变换(DWT)的去噪方法,就像是一种全新的、更高效的清理工具,为心电信号去噪带来了新的希望,它能够克服传统去噪方法的一些不足,让心电信号的去噪效果得到进一步提升。
小波变换 DWT:信号处理的 “多面手”
在信号处理的 “神奇工具箱” 里,小波变换(DWT)绝对是一个 “多面手”,凭借其独特的 “技能”,在众多领域都发挥着重要作用,尤其是在心电信号去噪方面,有着出色的表现。
小波变换的基本原理,就像是把一幅精美的拼图拆分成不同大小的碎片,然后从这些碎片中找到我们需要的信息 。它通过一组被称为小波基函数的 “魔法工具”,将信号分解成不同频率成分的子信号,实现对信号的多尺度分析。与传统的傅里叶变换不同,小波变换不仅能告诉我们信号中包含哪些频率成分,还能让我们知道这些频率成分在什么时间出现,就像一个精准的时间频率 “探测器”,能够同时在时间和频率域内对信号进行分析,这使得它在处理非平稳信号和局部特征时,有着天然的优势。
在心电信号去噪中,小波变换主要通过以下几个关键步骤来发挥作用。首先是多尺度分解,这一步就像是把一个装满各种物品的大箱子,按照不同的类别和大小,分别装进几个小箱子里。通过多尺度分解,心电信号被分解为不同频率的子信号,其中低频部分包含了信号的主要趋势和轮廓,就像一幅画的大致框架;高频部分则包含了信号的细节信息,比如一些快速变化的特征和噪声,就像画中的细节点缀 。噪声通常集中在高频部分,而有效信号主要分布在低频区域,这样我们就能把噪声和有用信号初步分离开来。
接下来是阈值去噪,这是小波变换去噪的关键环节,就像是一个严格的 “筛选器”,把不符合要求的 “杂质” 去除掉。对高频系数进行阈值处理,是这一步的核心操作。简单来说,如果某个高频系数的值小于我们设定的阈值,就认为它主要是由噪声引起的,将其置零;如果大于阈值,就认为它包含了有用的信号信息,予以保留或进行适当的调整 。阈值的选择非常重要,它直接影响着去噪的效果。如果阈值选得太小,就像筛选器的网眼太大,一些噪声可能会漏网,导致去噪不彻底;如果阈值选得太大,又像网眼太小,可能会把一些有用的信号也误删了,造成信号失真 。所以,选择合适的阈值是一门学问,需要根据信号的特点和噪声的水平来精心确定。
最后是信号重构,这一步就像是把拆分成碎片的拼图重新拼起来,恢复成原来的样子。经过阈值处理后的小波系数,包含了去除噪声后的有用信号信息,通过逆小波变换,这些系数被重新组合,重构出干净的心电信号。这个重构后的信号,就像一幅经过修复的画作,恢复了原本的清晰和准确,为医生的诊断提供了可靠的依据 。
在实际应用中,小波变换去噪展现出了诸多优势。它对各种类型的噪声,无论是高斯白噪声、脉冲噪声还是其他复杂的噪声,都有很好的抑制效果,就像一个全能的 “噪声清理大师”,能够有效地去除心电信号中的工频干扰、肌电干扰和基线漂移等噪声 。而且,小波变换具有良好的时频局部化特性,能够在去除噪声的同时,很好地保留心电信号的细节特征,比如 P 波、T 波等,这些细节对于医生判断心脏的健康状况至关重要,就像在清理画作时,小心翼翼地保留了画中的关键元素,让画作的艺术价值得以完整保留。
粒子群算法 PSO:智能优化的 “领航者”
粒子群算法(PSO),就像一位智慧的领航者,在复杂的优化领域中指引着方向,为我们寻找最优解开辟了新的道路。它诞生于 1995 年,由 Eberhart 博士和 Kennedy 博士提出,其灵感来源于鸟群捕食的奇妙行为,从大自然的智慧中汲取力量,发展成为一种强大的优化工具 。
粒子群算法的核心思想,是通过模拟鸟群在寻找食物过程中的协作与信息共享机制,来寻找问题的最优解。想象一下,有一群鸟在一片广阔的区域里寻找食物,每只鸟都不知道食物的确切位置,但它们知道自己当前位置离食物的距离(这个距离就相当于我们优化问题中的目标函数值 )。在这个过程中,每只鸟会根据自己的飞行经验(也就是它自己曾经飞到过离食物最近的位置,即个体最优位置 pBest),以及整个鸟群中离食物最近的那只鸟的位置(即全局最优位置 gBest),来不断调整自己的飞行方向和速度 。
⛳️ 运行结果
📣 部分代码
%% Initialising
clc;clear all;close all;
fprintf('---- Loading the signal, and computing signal with power line interference ------\n\n');
rng(42);
% [signal,Fs]=audioread('Greeting.wav');
Fs=360;
load('105m.mat');
signal = val(1,:);
signal=(signal-0)/200;
%z = awgn(signal',5,'measured');
x=0.1*(max(signal)-min(signal));
t=(0:length(signal)-1)/Fs;
z=signal+0.2*sin(2*pi*50*t);
figure
subplot(2,1,1);
plot(z);
title('Signal with Power line interference');
subplot(2,1,2);
🔗 参考文献
[1] 张红梅,卫志农,龚灯才,等.基于粒子群支持向量机的短期电力负荷预测[J].电力系统保护与控制, 2006, 34(003):28-31.DOI:10.3969/j.issn.1674-3415.2006.03.008.
[2] 江天炎,李剑,杜林,等.粒子群优化小波自适应阈值法用于局部放电去噪[J].电工技术学报, 2012, 27(5):7.DOI:CNKI:SUN:DGJS.0.2012-05-010.
🎈 部分理论引用网络文献,若有侵权联系博主删除
👇 关注我领取海量matlab电子书和数学建模资料
🏆团队擅长辅导定制多种科研领域MATLAB仿真,助力科研梦:
🌟 各类智能优化算法改进及应用
生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化、背包问题、 风电场布局、时隙分配优化、 最佳分布式发电单元分配、多阶段管道维修、 工厂-中心-需求点三级选址问题、 应急生活物质配送中心选址、 基站选址、 道路灯柱布置、 枢纽节点部署、 输电线路台风监测装置、 集装箱调度、 机组优化、 投资优化组合、云服务器组合优化、 天线线性阵列分布优化、CVRP问题、VRPPD问题、多中心VRP问题、多层网络的VRP问题、多中心多车型的VRP问题、 动态VRP问题、双层车辆路径规划(2E-VRP)、充电车辆路径规划(EVRP)、油电混合车辆路径规划、混合流水车间问题、 订单拆分调度问题、 公交车的调度排班优化问题、航班摆渡车辆调度问题、选址路径规划问题、港口调度、港口岸桥调度、停机位分配、机场航班调度、泄漏源定位、冷链、时间窗、多车场等、选址优化、港口岸桥调度优化、交通阻抗、重分配、停机位分配、机场航班调度、通信上传下载分配优化
🌟 机器学习和深度学习时序、回归、分类、聚类和降维
2.1 bp时序、回归预测和分类
2.2 ENS声神经网络时序、回归预测和分类
2.3 SVM/CNN-SVM/LSSVM/RVM支持向量机系列时序、回归预测和分类
2.4 CNN|TCN|GCN卷积神经网络系列时序、回归预测和分类
2.5 ELM/KELM/RELM/DELM极限学习机系列时序、回归预测和分类
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU门控神经网络时序、回归预测和分类
2.7 ELMAN递归神经网络时序、回归\预测和分类
2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM/长短记忆神经网络系列时序、回归预测和分类
2.9 RBF径向基神经网络时序、回归预测和分类
2.10 DBN深度置信网络时序、回归预测和分类
2.11 FNN模糊神经网络时序、回归预测
2.12 RF随机森林时序、回归预测和分类
2.13 BLS宽度学习时序、回归预测和分类
2.14 PNN脉冲神经网络分类
2.15 模糊小波神经网络预测和分类
2.16 时序、回归预测和分类
2.17 时序、回归预测预测和分类
2.18 XGBOOST集成学习时序、回归预测预测和分类
2.19 Transform各类组合时序、回归预测预测和分类
方向涵盖风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、用电量预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断
🌟图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知
🌟 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、 充电车辆路径规划(EVRP)、 双层车辆路径规划(2E-VRP)、 油电混合车辆路径规划、 船舶航迹规划、 全路径规划规划、 仓储巡逻、公交车时间调度、水库调度优化、多式联运优化
🌟 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配、无人机安全通信轨迹在线优化、车辆协同无人机路径规划、
🌟 通信方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化、水声通信、通信上传下载分配
🌟 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化、心电信号、DOA估计、编码译码、变分模态分解、管道泄漏、滤波器、数字信号处理+传输+分析+去噪、数字信号调制、误码率、信号估计、DTMF、信号检测
🌟电力系统方面
微电网优化、无功优化、配电网重构、储能配置、有序充电、MPPT优化、家庭用电、电/冷/热负荷预测、电力设备故障诊断、电池管理系统(BMS)SOC/SOH估算(粒子滤波/卡尔曼滤波)、 多目标优化在电力系统调度中的应用、光伏MPPT控制算法改进(扰动观察法/电导增量法)、电动汽车充放电优化、微电网日前日内优化、储能优化、家庭用电优化、供应链优化
🌟 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长 金属腐蚀
🌟 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合、SOC估计、阵列优化、NLOS识别
🌟 车间调度
零等待流水车间调度问题NWFSP 、 置换流水车间调度问题PFSP、 混合流水车间调度问题HFSP 、零空闲流水车间调度问题NIFSP、分布式置换流水车间调度问题 DPFSP、阻塞流水车间调度问题BFSP
👇