【经验模态分解】5.结合EMD与最小二乘法的信号趋势项的提取方法

2023-12-29 03:20

本文主要是介绍【经验模态分解】5.结合EMD与最小二乘法的信号趋势项的提取方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • 利用 EMD 将信号分解为一系列 固有模态函数IMF,根据 振动信号过零点特性 对属于趋势项的 IMF 分量进行判别,并对判别为趋势项的 IMF 分量进一步利用 最小二乘法 进行趋势项拟合,将拟合结果求和作为最终趋势项。
  • 数值模拟试验和实测数据处理结果表明:这一方法无需假设趋势项类型,且可不受 EMD 过程中模态混叠和端点效应的影响,使趋势项提取更为准确。

文章目录

  • 1 趋势项
    • 1-1 什么是趋势项?
    • 1-2 为何要提取趋势项?
    • 1-3 提取的方法
  • 2 利用EMD得到的趋势项
  • 3 最小二乘法拟合趋势项
    • 3-1 最小二乘法拟合趋势项的步骤
    • 3-2 最小二乘法消除趋势项步骤(matlab)
    • 3-3 缺点
  • 4 结合EMD的最小二乘方法
    • 4-1 EMD提取法的优势与不足
    • 4-2 最小二乘方法的缺陷上的细节
    • 4-3 结合的步骤
    • 4-4 结合后的优势
  • 5 实际操作

1 趋势项

1-1 什么是趋势项?

  • 趋势项是指信号中 周期大于采样长度 的频率成分,通常表现为线性的或者慢变的趋势误差

1-2 为何要提取趋势项?

提取和消除信号中存在的趋势项是信号预处理的一个重要环节,趋势项会严重影响信号时域相关分析和频域功率谱估计精度,严重的趋势项干扰会使低频谱严重失真。

1-3 提取的方法

  • 平均斜率法、差分法、低通滤波法和最小二乘拟合法等(缺点:这些方法通常需要预先明确信号中趋势项的类型。如线性趋势项、多项式或指数趋势项等。这些方法的自适应能力差,不适用于复杂变化的趋势项提取,很大程度上限制了其应用范围)。

2 利用EMD得到的趋势项

  • IMF阶数增加,对应的频率成分逐渐降低,其中余量 r n ( t ) r_n(t) rn(t) 的频率成分最低
  • 根据 EMD 分解收敛条件:分解余量 r n ( t ) r_n(t) rn(t) 为单调函数,周期大于信号的记录长度,因此可以将 r n ( t ) r_n(t) rn(t) 作为趋势项。

3 最小二乘法拟合趋势项

  • 最小二乘法提取趋势项 是一种针对 随机信号和稳态信号 极为有效的方法。不仅可以提取呈线性状态基线偏移的简单类型趋势项,也可以提取具有高阶多项式的复杂趋势项

3-1 最小二乘法拟合趋势项的步骤

①假设一趋势项多项式,根据最小二乘原理列出求解方程
②用矩阵法求出趋势项系数矩阵‚得出趋势项拟合曲线。

3-2 最小二乘法消除趋势项步骤(matlab)

1、最小二乘法拟合直线作BaseLine
2、原始数据减去拟合的直线BaseLine

  • 情况一:先知趋势项为线性的,消除线性趋势项
y = detrend(x)
  • 情况二:先知趋势项为多项式,消除多项式趋势项(趋势为非线性曲线)
p = polyfit(t,signal,5);
xtrend = polyval(p,t);
y = signal-xtrend;
  • 使用sgolay滤波器消除趋势项
y = sgolayfilt(x,order,framelen)

3-3 缺点

缺点:是对信号的拟合 需要事先预测趋势项类型 ,如线性函数、指数函数、幂函数等。 随着趋势项复杂程度的增加,拟合的难度也增大,对分析较复杂的实际信号不适用

4 结合EMD的最小二乘方法

利用 EMD 和最小二乘拟合方法都可以实现趋势项的提取,但是两者都存在方法本身固有的缺陷

4-1 EMD提取法的优势与不足

  • 【优势】:EMD方法 适用信号范围广泛,不受信号和趋势项类型约束
  • 【不足之处1】:利用 EMD方法 提取趋势项必须要求 原始信号本身满足可分解条件 A 1 f 1 < 2 A 2 f 2 A_1f_1<2A_2f_2 A1f12A2f2,否则会存在 模态混叠现象
    模态混叠:不同频率成分共存于同一个 IMF 分量中,那么作为低频的 趋势项成分也可能会混叠在与之接近的低频 IMF 分量中,此时用分解余量 r n ( t ) r_n(t) rn(t) 作为趋势项会使趋势项提取不完全。
  • 【不足之处2】:EMD 另外一个缺陷是 端点效应 问题(低频分量这种现象尤为突出)
    端点效应 :由于所分析信号长度有限,信号的两端点不能确定是极值,在进行三次样条插值时,必然使信号的上下包络在信号两端附近严重扭曲
  • 在信号的 高频分量 中由于时间尺度小,极值间的距离小,端部的边缘效应仅局限在信号两端很小的部分。
  • 但对于 低频分量,时间尺度大,极值间的距离大,端部的边缘效应就传播到信号内部,特别是原始信号数据集比较短时,会严重影响 EMD 分解的质量,作为分解余量 r n ( t ) r_n(t) rn(t) 同样受到端点效应的影响,这种情况下简单地把 r n ( t ) r_n(t) rn(t) 作为趋势项处理同样会影响趋势项提取精度。)

4-2 最小二乘方法的缺陷上的细节

  • 1、对 趋势项系数 b k b_k bk 的求解需要利用 原始信号 x ( n ) x(n) x(n)如果信号 x ( n ) x(n) x(n) 受噪声影响,则 趋势项系数 b k b_k bk 的求解精度同样会受到影响。
  • 2、利用最小二乘直接拟合趋势项需要设定合理的趋势项阶数,阶数的选择缺乏理论依据,需要趋势项的先验信息,工程上很难保证。

4-3 结合的步骤

  • 1、将原始信号进行 EMD‚获得一系列 IMF 分量
  • 2、根据 趋势项定义和振动信号过零点特性 判别 余量 r n ( t ) r_n(t) rn(t) 和与 r n ( t ) r_n(t) rn(t) 临近的低频 IMF 分量是否属于趋势项
  • 3、对判别属于趋势项的 余量 r n ( t ) r_n(t) rn(t) 和低频 IMF 分量进行 最小二乘趋势项拟合(克服 EMD 过程的模态混叠和端点效应对趋势项提取的不利影响)

4-4 结合后的优势

  • 1、(随机噪声一般可认为其分布在高频范围),这种结合方法避免了随机噪声对最小二乘法拟合趋势项的影响(因为结合后的最小二乘法处理的是多次分解后得到的低频余量 r n ( t ) r_n(t) rn(t))。
  • 2、针对低频 IMF 分量进行最小二乘趋势项拟合,设置的拟合多项式阶数可以设定相对小,降低了计算复杂度。

5 实际操作

参考文献:结合经验模态分解的振动信号趋势项提取方法_李振兴.pdf
参考知乎blog:趋势项消除-方法总结

这篇关于【经验模态分解】5.结合EMD与最小二乘法的信号趋势项的提取方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/548188

相关文章

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

判断PyTorch是GPU版还是CPU版的方法小结

《判断PyTorch是GPU版还是CPU版的方法小结》PyTorch作为当前最流行的深度学习框架之一,支持在CPU和GPU(NVIDIACUDA)上运行,所以对于深度学习开发者来说,正确识别PyTor... 目录前言为什么需要区分GPU和CPU版本?性能差异硬件要求如何检查PyTorch版本?方法1:使用命

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

SpringMVC 通过ajax 前后端数据交互的实现方法

《SpringMVC通过ajax前后端数据交互的实现方法》:本文主要介绍SpringMVC通过ajax前后端数据交互的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价... 在前端的开发过程中,经常在html页面通过AJAX进行前后端数据的交互,SpringMVC的controll

Java中的工具类命名方法

《Java中的工具类命名方法》:本文主要介绍Java中的工具类究竟如何命名,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Java中的工具类究竟如何命名?先来几个例子几种命名方式的比较到底如何命名 ?总结Java中的工具类究竟如何命名?先来几个例子JD

Spring Security自定义身份认证的实现方法

《SpringSecurity自定义身份认证的实现方法》:本文主要介绍SpringSecurity自定义身份认证的实现方法,下面对SpringSecurity的这三种自定义身份认证进行详细讲解,... 目录1.内存身份认证(1)创建配置类(2)验证内存身份认证2.JDBC身份认证(1)数据准备 (2)配置依

python获取网页表格的多种方法汇总

《python获取网页表格的多种方法汇总》我们在网页上看到很多的表格,如果要获取里面的数据或者转化成其他格式,就需要将表格获取下来并进行整理,在Python中,获取网页表格的方法有多种,下面就跟随小编... 目录1. 使用Pandas的read_html2. 使用BeautifulSoup和pandas3.

Spring 中的循环引用问题解决方法

《Spring中的循环引用问题解决方法》:本文主要介绍Spring中的循环引用问题解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录什么是循环引用?循环依赖三级缓存解决循环依赖二级缓存三级缓存本章来聊聊Spring 中的循环引用问题该如何解决。这里聊

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Pandas统计每行数据中的空值的方法示例

《Pandas统计每行数据中的空值的方法示例》处理缺失数据(NaN值)是一个非常常见的问题,本文主要介绍了Pandas统计每行数据中的空值的方法示例,具有一定的参考价值,感兴趣的可以了解一下... 目录什么是空值?为什么要统计空值?准备工作创建示例数据统计每行空值数量进一步分析www.chinasem.cn处