小波分析在心电信号去噪中的应用(内附Matlab去噪源代码)

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

采用这种阈值方法去噪在实际应用中,已取得了较好 的效果,但也存在着一些潜在的缺点,如硬阈值在阈 值点不连续,重构可能产生一些震荡;软阈值连续, 但估计的小波系数和分解的小波系数有恒定的偏差, 直接影响重构信号对真实信号的逼近程度.
五、阈值函数和阈值的选取
2.阈值的选取 阈值的选择是小波去噪和收缩最关键的一步,在去 噪过程中阈值起着决定性的作用:如果太小,施加阈值 后小波系数包含太多的噪声分量,达不到去噪效果;反 之,则去除了有用部分,使信号失真。 阈值选择方案及对应的MATLAB命令
五、阈值函数和阈值的选取
1.阈值函数 阈值函数分为软阈值和硬阈值两种。
设w为小波系数,wλ阈值后的小波系数,λ为阈值。
(1).硬阈值(hard threshol ding) 当小波系数的绝对值大于等于给定阈值时, 保持不变,而小于时,令其为0。即:
五、阈值函数和阈值的选取
(2).软阈值(soft threshol ding) 当小波系数的绝对值大于等于给定的阈值时,令其值 为减去阈值;而小于时,令其为0.即:
在传统的信号处理方法中,傅立叶变换作为划时代的工具 架起了时间域和频率域的桥梁。 傅立叶变换实际上是将信号展为不同频率正弦信号的线型 叠加。从信号的傅立叶变化,能看出信号各种不同频率成 分的强弱,信号能量在频率域的分布。
二、小波分析与传统信号处理方法的比较
傅式变换又有其局限性:傅立叶变换的核函数是正弦 函数,它在时间域上是无限的,非局部化的。
一、心电信号的噪声特点
(1)由于电源磁场作用于心电图机与人体之间的环形电 路所致的50 Hz/ 60 Hz 工频干扰; (2)由于病人肌肉紧张产生的肌电干扰; (3)由于病人呼吸运动或者由电极—电极—皮肤之间界 面阻抗所致的频响,一般小于1 Hz 的基线漂移; 这些噪声干扰与心电信号混杂,引起心电信号的畸 变,使整个心电信号波形模糊不清,对随后的信号分析处 理,尤其是计算机自动识别诊断造成误判和漏判,因此, 心电信号的消噪有重要的意义。
在去噪方面,由于傅立叶分析是将信号完全在频率域中 进行分析,它不能给出信号在某个时间点的变化情况, 使得信号在时间轴上的每一点突变,都会影响信号的整 个频域,所以,它不能有效的区分信号中可能包含的尖 峰或突变部分还是不平稳的白噪声。
小波变换的特点
小波变换是将时间信号展开为小波函数族的线性叠加, 小波变换的核函数是小波函数,它在时间和频率域内 都是局部化的。所以,小波变化可对信号同时在时- 频域内进行联合分析。 在去噪方面,小波分析由于能同时在时-频域中对信 号进行分析,具有多分辨分析的功能,所以在不同的 分解层上有效的区分信号的突变部分和噪声,从而实 现信号的消噪。
八、小波去噪程序
%使用stein的无偏似然估计原理进行选择各层的阈值 %cD1,cD2,cD3为各层小波系数, %'rigrsure’为无偏似然估计阈值类型 thr1=thselect(cD1,'rigrsure'); thr2=thselect(cD2,'rigrsure'); thr3=thselect(cD3,'rigrsure'); %各层的阈值 TR=[thr1,thr2,thr3]; %'s'为软阈值;'h'硬阈值。 SORH='s'; %---------去噪---------------%XC为去噪后信号 %[CXC,LXC]为的小波分解结构 %PERF0和PERF2是恢复和压缩的范数百分比。 %'lvd'为允许设置各层的阈值, %'gbl'为固定阈值。 %3为阈值的长度 [XC,CXC,LXC,PERF0,PERF2]=wdencmp('lvd',E, ...'db5',3,TR,SORH);
程序的核心部分:
%------------使用阈值法去噪-------------------%利用'ddencmp'得到除噪的默认参数 %thr,分别表示是阈值 %sorh软阈值(或硬阈值) %keepapp允许用户保存的低频系数 %'den','wv',E分别为降噪('cmp'表示压缩) %小波('wp'小波包),和降噪信号. [thr,sorh,keepapp]=ddencmp('den','wv',E); %去噪 clean=wdencmp('gbl',C,L,'db5',3,thr,sorh,keepapp); %'gbl'为所有的级次都选择相同的阈值; %'lvd'则对不同的级次选择不同的阈值。
去噪评价及仿真结果:
SNR =
131.6340
MSE =
1.6547e-004
六、小波函数的选择
在信号处理中小波的作用是带通滤波器,且对称和反 对称性分别等价为线性相位和广义线性相位。我们知 道,当一个带通滤波器不是线性相位或广义线性相位 时,它将使通过的信号产生畸变。 从理论和实际应用的观点出发,具有紧支集的小波是 最富吸引力的。 B样条是一类基本的样条函数,而它的支撑区是最小 的.所以,B样条小波是一种合适的选择。
(1) 对含噪信号进行预处理,并进行小波分解。选择小 波确定分解的层数N,然后对信号s进行N层分解。
四、一维信号利用小波除噪的步骤
(2) 小波分解的高频系数的阈值量化。对第一层到第N层 高频系数,选择软阈值或硬阈值量化处理。 (3) 一维小波重构。根据小波分解的第N层低频系数和 第一层到第N层的高频系数,进行一维重构。 在上面的步骤中,最为关键的就是如何选取阈值和 如何阈值量化,从某种意义上讲,它直接影响信号去噪 的质量。
三、小波分析的去噪原理
有用信号通常表现为低频信号或是相对比较平稳。而 噪声信号通常表现为高频信号。 利用小波对含噪的原始信号分解后,含噪部分主要集 中在高频小波系数中,并且,包含有用信号的小波系 数幅值较大,但数目少;而噪声对应的小波系数幅值 小,数目较多。 基于上述特点,可以应用门限阈值法对小波系数进行 处理。(即对较小的小波系数置为0,较大的保留或 削弱),然后对信号重构即可达到消噪的目的。
八、小波去噪程序
%---------去噪效果衡量(SNR越大效果越好, %MSE越小越好)-----------------------%选取信号的长度。 N=n(2); x=E; y=XC; F=0; M=0; for ii=1:N m(ii)=(x(ii)-y(ii))^2; t(ii)=y(ii)^2; f(ii)=t(ii)/m(ii); F=F+f(ii); M=M+m(ii); end;
三、小波分析的去噪原理
在实际工程应用中,通常所分析的信号具有非线性, 非平稳,并且奇异点较多的特点。含噪的一维信号模型 可表示为:
s(t ) f (t ) σ * e(t )
t 0,1,, n _ 1
其中,f(t)为真实信号,s(t)为含噪信号,e(t)为噪声, σ 为噪声标准偏差。
小波分析在心电信号去噪中的应用
2006.9.25
主要内容
心电信号的噪声特点 小波分析与传统信号处理方法的比较 小波去噪的基本原理 小波去噪的基本步骤 小波去噪中的阈值函数和阈值的选取 小波去噪中小波函数的选择 去噪效果的评价 程序说明 总结
一、心电信号的噪声特点
心电信号(ECG)是典型的强噪声的非平稳的随机信 号。正常心电信号的频率范围在0.01 Hz-100Hz之间, 而90%的ECG频谱能量又集中在0.25 H z-35H z之间。 在心电信号的采集和A/ D 转换过程中,心电信号不可避 免地受到各种类型的噪声干扰,概括起来主要包括以下 三类噪声:
小波分解示意图:
s CA1 CA2 CA3 CD3 CD2 CD1
小波分解的 结构示意图
小波分解系 数示意图
四、一维信号利用小波除噪的步骤
1.小波变换去噪的流程示意图:
含噪 信号 小波变 换多尺 度分解 各尺度 小波系 数除噪 小波逆 变换重 构信号 除噪后 的信号
预处理
2.小波除噪的具体步骤:
一、心电信号的噪声特点
ECG signal 100.dat 1 0.8 0.6 0.4
Voltage / mV
0.2 0 28 1 -0.2 -0.4 -0.6 -0.8 1 1 1 1 1 1 8
0
0.5
1
1.5
2
2.5 Time / s
3
3.5
4
4.5
5
二、小波分析与传统信号处理方法的比较 傅立叶变换的特点:
八、小波去噪程序
%应用db5作为小波函数进行3层分解 %利用无偏似然估计阈值 %对100.dat from MIT-BIH-DB的单导联数据进行去噪处理 clear;clc load('D:/matlab/matlab7.2/work/M.mat'); E=M(:,2); E=E'; n=size(E); s=E(1:2000); %小波分解 [C L]=wavedec(E,3,'db5'); % 从c中提取尺度3下的近似小波系数 cA3=appcoef(C,L,'db5',3); %从信号c中提取尺度1,2,3下的细节小波系数 cD1=detcoef(C,L,1); cD2=detcoef(C,L,2); cD3=detcoef(C,L,3);
八、小波去噪程序
SNR=10*log10(F); MSE=M/N; SM=SNR/MSE; %对比原始信号和除噪后的信号 subplot(2,1,1); plot(s(1:1000)); title('原始信号') subplot(2,1,2); plot(XC(1:1000)); title('除噪后的信号') SNR,MSE
五、阈值函数和阈值的选取
进行比较,如果 无偏似然估计。 (4) 极大极小阈值(‘minimaxi’) 它的原理是令估计的最大风险最小化,其阈值选取的 算法是: 时采用固定阈值,反之,选择
六、小波函数的选择
小波变换不象傅里叶变换是由正弦函数唯一决定的, 小波基可以有很多种,不同的小波适合不同的信号去 噪,对于确定的信号,如果小波选择不当,去噪结果 可能相差很远,还有可能丢失有用的信息。 面对各种小波,到底选择哪一种来处理心电信号才能 满足医疗上的需要,必须经过大量的仿真研究结果来 进行筛选 。 根据大量文献记录B样条函数适合心电去噪: 样条函数是一种非紧支撑正交的对称小波,有较高的 光滑性,频率特性好,分频能力强,频带相干小的特 性。
程序运行结果:
TR =
0.0708 1.0552
0.3636
SNR =
九、总结:
通过一些仿真结果来看,选择不同的小波函数和不同 的阈值,去噪的效果相差甚远。选择’db5’小波,默 认阈值对心电去噪处理效果较好。该程序与前一程序 的不同之处主要是表现在阈值的选取上。 程序的不同之处与仿真结果
九、总结:
七、小波去噪效果评价
式中yi表示标准原始信号, xi 表示经处理后的估计信 号。其中,SNR越大越好, MSE 越小越好。
八、小波去噪程序
开始 调用心电数据库的数据
去 噪 程 序 流 程 图
选取其中一个导联的数据
对被选的心电信号进行小波分解 提取各尺度小波系数 求各层的阈值 根据选取的阈值去噪及重构 去噪效பைடு நூலகம்的评价 输出评价结果及去噪后的心电信号
(1) 固定阈值(’sqtwolog’)
选取的算法是:
五、阈值函数和阈值的选取
(2) Stein无偏似然估计阈值(’rigrsure’) 对于给定一个阈值t,得到它的似然估计,再将非似然 的t最小化,就得到了所选的阈值。 (3) 启发式阈值(‘heursure’) 它是前两种阈值的综合,是最优预测变量阈值选择,如 果信噪比很小时,无偏似然估计的误差交大,此时,采 用固定阈值。令:
相关文档
最新文档