一维信号小波阈值去噪
转载:http://blog.csdn.net/ebowtang/article/details/40481393
一,小波阈值去噪基本理论
1,小波阈值处理基本理论
小波阈值收缩法是Donoho和Johnstone在1995年提出的,以下便是养活不少学者的三篇基础论文,引得无数学者在此基础上优化,或者应用到自己的工程中然后发表相关的论文:
小波分解阈值去噪中,阈值函数体现了对超过和低于阈值的小波系数不同处理策略,是阈值去噪中关键的一步。设w表示小波系数,T为给定阈值,sign(*)为符号函数,常见的阈值函数有:
硬阈值函数: (小波系数的绝对值低于阈值的置零,高于的保留不变)
软阈值函数: (小波系数的绝对值低于阈值的置零,高于的系数shrinkage处理)
1) 硬阈值函数在阈值点是不连续的,在下图中已经用黑线标出。不连续会带来振铃,伪吉布斯效应等。
2) 软阈值函数,原系数和分解得到的小波系数总存在着恒定的偏差,这将影响重构的精度
同时这两种函数不能表达出分解后系数的能量分布,半阈值函数是一种简单而经典的改进方案。见下图:
图1
3,阈值的确定
选取的阈值最好刚好大于噪声的最大水平,可以证明的是噪声的最大限度以非常高的概率低于(此阈值是Donoho提出的),其中根号右边的这个参数(叫做sigma)就是估计出来的噪声标准偏差(根据第一级分解出的小波细节系数,即整个det1绝对值系数中间位置的值),本文将用此阈值去处理各尺度上的细节系数,注意所谓全局阈值就是近似系数不做任何阈值处理外,其他均阈值处理。
最后吐槽一下这个“绝对值系数中间位置的值”
1)如果det1的长度为偶数那么,这个“中值”便是中间位置的两个数之和的平均值,比如【2,2,3,5】,中值即是2.5而不是3
2)如果det1的长度为奇数那么,这个中值就是中间位置的那个数,比如【2,3,5】,中值即3
4,阈值策略
以前写的ppt挪用过来:
5,一维信号的多级分解与重构
以下算法如果用简单的文字描述,可是:先将信号对称拓延(matlab的默认方式),然后再分别与低通分解滤波器和高通分解滤波器卷积,最后下采样,最后可以看出最终卷积采样的长度为floor(n-1)/2+n,如果想继续分解下去则继续对低频系数CA采取同样的方式进行分解。
二,matlab实现一维小波阈值去噪
1,核心库函数说明
1)wnoisest函数
作用:估计一维小波高频系数中的噪声偏差
这个估计值使用的是绝对值中间位置的值(估计的噪声偏差值)除以0.6745(Median Absolute Deviation / 0.6745),适合0均值的高斯白噪声
2)wavedec函数
一维信号的多尺度分解,将返回诸多细节系数和每个系数的长度,在matlab中键入“doc wavedec”具体功能一目了然
3)waverec函数
一维信号小波分解系数的重构,将返回重构后的信号在matlab中键入“doc waverec”具体功能一目了然,也可以键入“open waverec”查看matlab具体是怎么做的。
4)wdencmp函数
这个函数用于对一维或二维信号的压缩或者去噪,使用方法:
1 [XC,CXC,LXC,PERF0,PERFL2] = wdencmp('gbl',X,'wname',N,THR,SORH,KEEPAPP)
2 [XC,CXC,LXC,PERF0,PERFL2] = wdencmp('lvd',X,'wname',N,THR,SORH)
3 [XC,CXC,LXC,PERF0,PERFL2] = wdencmp('lvd',C,L,'wname',N,THR,SORH)
wname是所用的小波函数,
gbl(global的缩写)表示每层都采用同一个阈值进行处理,
lvd表示每层用不同的阈值进行处理,
N表示小波分解的层数,
THR为阈值向量,
对于格式(2)(3)每层都要求有一个阈值,因此阈值向量THR的长度为N,
SORH表示选择软阈值还是硬阈值(分别取为’s’和’h’),
参数KEEPAPP取值为1时,则低频系数不进行阈值量化处理,反之,则低频系数进行阈值量化。
XC是消噪或压缩后的信号,[CXC,LXC]是XC的小波分解结构,
PERF0和PERFL2是恢复和压缩L^2的范数百分比, 是用百分制表明降噪或压缩所保留的能量成分。
- clc;
- clear;
- % 获取噪声信号
- load leleccum;
- indx = 1:3450;
- noisez = leleccum(indx);
- %信号的分解
- wname = 'db3';
- lev = 3;
- [c,l] = wavedec(noisez,lev,wname);
- %求取阈值
- sigma = wnoisest(c,l,1);%使用库函数wnoisest提取第一层的细节系数来估算噪声的标准偏差
- N = numel(noisez);%整个信号的长度
- thr = sigma*sqrt(2*log(N));%最终阈值
- %全局阈值处理
- keepapp = 1;%近似系数不作处理
- denoisexs = wdencmp('gbl',c,l,wname,lev,thr,'s',keepapp);
- denoisexh = wdencmp('gbl',c,l,wname,lev,thr,'h',keepapp);
- % 作图
- subplot(311),
- plot(noisez), title('原始噪声信号');
- subplot(312),
- plot(denoisexs), title('matlab软阈值去噪信号') ;
- subplot(313),
- plot(denoisexh), title('matlab硬阈值去噪信号') ;
一维信号小波阈值去噪相关推荐
- 一维信号小波阈值去噪 c语言,一维信号小波阈值去噪
描述 1.小波阈值处理基本理论 所谓阈值去噪简而言之就是对信号进行分解,然后对分解后的系数进行阈值处理,最后重构得到去噪信号.该算法其主要理论依据是:小波变换具有很强的去数据相关性,它能够使信号的能量 ...
- sEMG信号小波阈值去噪
1.sEMG信号简介 表面肌电信号是从皮肤表面获取的关于肌肉活动的微弱生物电信息,能够为肌肉活动状态分析.神经肌肉功能分析及病理分析等研究提供有效的帮助.由于受到检测仪器.环境和肌肉自身生理特性等多种 ...
- 【Matlab系列】一维信号/数字图像小波阈值去噪(软阈值,硬阈值,固定阈值)【含Matlab源码】
Date: 2022.4.23 文章目录 前言 0.代码获取方式 1.部分matlab代码 2.一维信号小波阈值去噪效果图 3.数字图像小波阈值去噪效果图 3.1.添加高斯噪声 3.2.添加随机噪声 ...
- 小波阈值去噪原理及实现
小波阈值去噪原理及实现 1.小波阈值去噪的基本原理 2.小波阈值去噪需要考虑的问题 3.小波阈值的实现 1.小波阈值去噪的基本原理 将信号通过小波变换(采用Mallat算法)后,信号产生的小波系数含有 ...
- matlab 小波启发式阈值滤波,小波阈值去噪
小波阈值去噪 小波阈值去噪 目录 1.概念 2.原理 3.影响降噪效果的因素 3.1小波基的选择 3.2分解层数的选择 3.3阈值的选择 3.4阈值函数的选择 4.MATLAB代码 参考文献 小波分析 ...
- 小波调研(三):小波阈值去噪分析
小波阈值去噪分析 数据挖掘流程 传统的去噪方法根据噪声能量一般集中于高频,而信号频谱分布于一个有限区间的特点,用傅里叶变换将含噪信号变换到频域,然后采用低通滤波器进行滤波.但基于傅里叶变换的去噪方法不 ...
- 基于MATLAB的小波阈值去噪
非常感谢: http://blog.sina.com.cn/u/1861445474 http://blog.chinaaet.com/detail/3083.html MATLAB中实现了信号的阈值 ...
- 小波阈值去噪的原理及程序
小波阈值去噪的原理及程序 一.小波阈值去噪基本思想 二.小波变换理论基础 三.小波函数和阈值的选择 四.程序 4.1 MATLAB程序 4.2 Python程序 4.3 效果图 一.小波阈值去噪基本思 ...
- 傅里叶变换 matlab代码_基于机器学习的心律失常分类(三)——小波阈值去噪[MATLAB]...
在对心电信号进行分析前,需要对其进行去噪预处理.因为在心电信号采集或者数模转换的过程中,会产生噪声,包括工频干扰.肌电干扰.基线漂移这三种.本文将介绍目前十分常用且有效的一种去噪方法--小波阈值去噪. ...
最新文章
- jQuery UI Autocomplete示例(一)
- redhat安装wine教程_Ubuntu怎么下载应用并安装应用
- 鼠标经过替换背景和文字
- mwc校准油门_编写下载服务器。 第五部分:油门下载速度
- java学习(141):自定义捕捉异常
- KingPaper初探ThinkPHP3.1.2之目录部署(二)
- 精选15个国外CSS框架
- python聚类分析案例_深度解读|如何构建用户分级体系实现精细化运营?附案例实操...
- Unity 利用NGUI做屏幕分辨率适配+学习UIDraggablePanel的使用
- System.arraycopy和Arrays.copyOf的关系
- 深度讲解 Python 四大常用绘图库的“绘图原理”
- vb 饼状图显示百分比_Matplotlib-饼图
- Unity 退出游戏代码
- Go 开发关键技术指南 | 带着服务器编程金刚经走进 2020 年(内含超全知识大图)...
- 联想网上审批系统方案
- 【深度】大变局!标准化资产的在线理财时代来临
- echarts设置视觉引导线穿过两行文字的效果
- 在phpMyAdmin使用用户口令登陆(转)
- JDK14+JAVAFX14+Maven定制jre打包瘦身,必成版
- [转]2016年度通信类 SCI期刊影响因子公布