imtoken钱包下载app
数字资产服务平台

imtoken钱包下载app是全球著名的数字资产交易平台之一,主要面向全球用户提供比特币、莱特币、以太币等数字资产的币币和衍生品交易服务。

比特派钱包下载安卓版|ewt

时间:2024-03-07 18:36:32

升学e网通,升学助考一网通

通,升学助考

经验小波变换(EWT)理论基础-CSDN博客

>

经验小波变换(EWT)理论基础-CSDN博客

经验小波变换(EWT)理论基础

最新推荐文章于 2023-09-09 15:44:26 发布

cofisher

最新推荐文章于 2023-09-09 15:44:26 发布

阅读量2.2w

收藏

201

点赞数

36

分类专栏:

信号处理

机器学习

文章标签:

信号处理

算法

机器学习

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/qq_36758914/article/details/119880259

版权

机器学习

同时被 2 个专栏收录

23 篇文章

7 订阅

订阅专栏

信号处理

10 篇文章

48 订阅

订阅专栏

项目说明

在信号分解领域,经验模态分解(EMD)十分经典,它基于信号特征自动地将信号分解为一组有限数目的 IMF 分量,在处理非线性和非平稳信号方面表现尤为出色,得到了广大学者的青睐。如今,EMD 方法在多个领域广泛应用,但是,在应用过程中会出现过包络、欠包络以及不同程度的端点效应和模态混叠问题,这给信号分解带来了许多问题。

EWT 是 Gilles 于 2013 年提出的非平稳信号处理方法,它融合了 EMD 方法的自适应分解理念和小波变换理论的紧支撑框架,为信号处理提供了一种全新的自适应时频分析思路。相比于 EMD 方法,EWT 方法能够自适应选择频带,克服了由于信号时频尺度不连续引发的模态混叠问题;同时,它具备完整可靠的数学理论基础,计算复杂度低,还能够克服 EMD 方法中过包络和欠包络的问题。因此,在信号处理尤其是故障诊断领域逐渐受到欢迎。

本章将主要介绍 EWT 方法的理论基础,并通过 EWT 和 EMD 分别实现仿真信号的信号分解进行对比,客观评价 EWT 方法的性能。

经验小波变换理论

EWT 方法的原理是将信号的 Fourier 谱划分成连续的区间,然后在每个区间上构造小波滤波器组进行滤波,最后通过信号重构得到一组调幅调频分量。该方法能够用具有紧支撑特性的小波滤波器组识别信号 Fourier 谱中特征信息所在的位置,自适应地提取到信号的不同频率成分。

EWT 频带划分方法

对于给定信号

f

(

t

)

f(t)

f(t),首先对它进行傅里叶变换,经处理得到归一化在

2

π

2π范围内的傅里叶频谱,根据香农准则,在分析过程中仅讨论

[

0

,

π

]

[0, π]

[0,π]上的信号特性。因此,将 Fourier频谱支撑区间定义在

[

0

,

π

]

[0, π]

[0,π]范围内。

假设该信号是由

N

N

N个单分量成分构成,那么在处理过程中 Fourier 谱的支撑区间被

ω

n

ω_n

ωn​分割成

N

N

N个连续的段(ωn 表示各段之间的边界),共有

N

+

1

N+1

N+1个边界,其中

ω

0

=

0

ω0 =0

ω0=0,

ω

N

=

π

ωN = π

ωN=π。Fourier 轴的分割示意图参见下图。

Λ

n

Λ_n

Λn​表示划分结果,由下式表示 整个 Fourier 轴的支撑区间表示为:

ω

n

ω_n

ωn​的确定思路为:对于信号

f

(

t

)

f(t)

f(t)的傅里叶频谱,假设算法找到频谱中

M

M

M个极大值点,并对其降序排列,此时,Gilles 指出存在两种情况:

M

N

M ≥ N

M≥N时:表示选出极大值的数目足够多,可以为频谱分割提供依据。此时,保留前

N

1

N-1

N−1个极大值;

M

<

N

M < N

M

M

M

M个极大值保留,并重置参数

N

N

N,使

N

=

M

N = M

N=M。

这样,对于信号

f

(

t

)

f(t)

f(t),设前

N

N

N个极大值在频域内对应的角频率

Ω

n

(

n

=

1

,

,

N

)

\Omega_n(n=1, \cdots, N)

Ωn​(n=1,⋯,N),那么 EWT 的频带划分边界

ω

n

=

Ω

n

+

1

+

Ω

n

2

\omega_n=\frac{\Omega_{n+1}+\Omega_n}{2}

ωn​=2Ωn+1​+Ωn​​。为了方便后续过程中滤波器的构造,定义了宽度为

T

n

=

2

τ

n

T_n = 2τ_n

Tn​=2τn​的过渡段(上图中的阴影区),这些过渡段都是以边界

ω

n

ω_n

ωn​为中心,其中

τ

n

=

γ

ω

n

(

0

<

γ

<

1

)

τ_n=\gamma \omega_n (0<\gamma <1)

τn​=γωn​(0<γ<1),

γ

<

min

n

(

ω

n

+

1

ω

n

ω

n

+

1

+

ω

n

)

\gamma<\min_n(\frac{\omega_{n+1}-\omega_n}{\omega_{n+1}+\omega_n})

γ

一般来说,对于没有先验信息可用的一段信号,猜测其模式的数目

N

N

N是比较困难的。为此,Gilles 提出了一种简单的

N

N

N值估计方法:检测信号的傅里叶谱中

M

M

M个极大值点,并将它们组成集合

{

M

i

}

k

=

1

M

\{M_i\}_{k=1}^M

{Mi​}k=1M​,对集合中的

M

i

M_i

Mi​值按降序排列,得到

M

1

>

M

2

>

M

3

>

>

M

M

M_1>M_2>M_3>\cdots>M_M

M1​>M2​>M3​>⋯>MM​,设置阈值

M

M

+

α

(

M

1

M

M

)

M_M+α(M_1-M_M)

MM​+α(M1​−MM​),此时大于阈值的极大值点的个数就是

N

N

N的值,其中

α

α

α为相对振幅比。这时,再按照上述的频谱分割方法即可得到信号的频带划分结果。

EWT 算法理论

经验小波是定义在区间

Λ

n

Λ_n

Λn​上的带通滤波器组,利用构建 Littlewood-Paley 和Meyer 小波的思想进行设计。对于

n

>

0

n > 0

n>0,经验小波函数

ψ

n

(

ω

)

\psi_n(\omega)

ψn​(ω)和经验尺度函数

φ

n

(

ω

)

\varphi_n(\omega)

φn​(ω)分别由以下两式表示。 其中,

β

(

x

)

=

x

4

(

35

84

x

+

70

x

2

20

x

3

)

\beta(x)=x^4(35-84x+70x^2-20x^3)

β(x)=x4(35−84x+70x2−20x3)。

根据上述滤波器的构造方法,只考虑

[

0

,

π

]

[0, π]

[0,π]的支撑区间,假定 Fourier 轴的分割边界

ω

n

=

[

0.598

,

1.024

,

2.370

,

2.768

]

ωn = [0.598, 1.024, 2.370, 2.768]

ωn=[0.598,1.024,2.370,2.768],可建立下图所示的小波滤波器组。其中第一个区间为尺度函数确定的滤波器,其他区间为经验小波函数确定的带通滤波器,并以此为基础进行 EWT。 借鉴经典小波变换的思路,Gilles 构造的经验小波系数由内积产生,细节系数

W

f

e

(

n

,

t

)

W^e_f(n, t)

Wfe​(n,t)由经验小波函数

ψ

n

\psi_n

ψn​与信号

f

(

t

)

f(t)

f(t)内积产生,可写成: 逼近系数

W

f

e

(

0

,

t

)

W^e_f(0, t)

Wfe​(0,t),由经验尺度函数

φ

1

\varphi_1

φ1​与信号

f

(

t

)

f(t)

f(t)内积产生,可写成: 其中,

ψ

n

(

ω

)

\psi_n(\omega)

ψn​(ω)和

φ

n

(

ω

)

\varphi_n(\omega)

φn​(ω)分别是

ψ

n

(

t

)

\psi_n(t)

ψn​(t)和

φ

n

(

t

)

\varphi_n(t)

φn​(t)的 Fourier 变换,傅里叶变换和逆变换分别记为

F

[

]

F[\cdot]

F[⋅]和

F

1

[

]

F^{-1}[\cdot]

F−1[⋅]。

由此,信号

f

(

t

)

f(t)

f(t)的重构表达式为:

经 EWT 处理,信号

f

(

t

)

f(t)

f(t)分解得到频率由低到高的调幅-调频单分量成分

f

k

(

t

)

(

k

=

1

,

2

,

3

)

f_k(t) (k = 1, 2, 3…)

fk​(t)(k=1,2,3…):

算法性能分析

通过上文中对 EWT 算法的介绍,我们知道,该方法可以根据信号 Fourier 谱的特点将复杂信号中频率不同的谐波进行有效分离,这种信号处理方法克服了模态混叠的影响,在一定程度上满足了对多分量信号分解的需求。

这里将用 EWT 方法分析谐波叠加信号和调幅调频信号,以验证 EWT 方法在信号分解方面的有效性。同时,与 EMD、EEMD 和 LMD 方法作对比,来说明 EWT方法的优越性。

本节构造一个谐波叠加信号

f

s

i

g

1

(

t

)

f_{sig1}(t)

fsig1​(t),使用 EWT 和 EMD 方法分别对其进行分解。仿真信号

f

s

i

g

1

(

t

)

f_{sig1}(t)

fsig1​(t)的表达式如下式所示。 其中,

n

(

t

)

n(t)

n(t)为高斯白噪声,其标准差为

2.5

2.5

2.5。通过上式可知,仿真信号

f

s

i

g

1

(

t

)

f_{sig1}(t)

fsig1​(t)是由两个余弦信号组成,它们的频率分别是

10

H

z

10 Hz

10Hz和

15

H

z

15 Hz

15Hz。设定采样点数

N

=

500

N = 500

N=500,采样频率

f

s

=

500

H

z

fs = 500 Hz

fs=500Hz,采样时间

T

=

1

s

T = 1s

T=1s,仿真信号

f

s

i

g

1

(

t

)

f_{sig1}(t)

fsig1​(t)的时域波形图如下图所示。 采用 EWT 方法对该信号进行处理,根据分解理论,首先预设单分量个数

N

=

4

N = 4

N=4,边界频率的确定方法为“locmaxmin”,即仿真信号的傅里叶频谱中两个频谱极大值之间的极小值点对应的频率,这样算法将 Fourier 谱划分为

4

4

4个频带,下图所示为EWT 方法的频带划分结果。 在上图划分的频带上建立小波滤波器组,通过滤波可以得到 4 组模式分量,由下图中C1~C4依次示出,前三个分量依次对应于仿真信号表达式中的 10t、5cos(20πt)和 2.5cos(30πt),每个模式分量的波形都清晰明显,可以清楚地分辨出每个模式的幅值和频率,高频的噪声分量也被完全分离到 C4 分量中,最大程度地保留了表达式中模式的单一性和完整性。 为了验证 EWT 方法在信号分解方面的优越性,采用 EMD 方法对上述信号

f

s

i

g

1

(

t

)

f_{sig1}(t)

fsig1​(t)进行分解。EMD 方法操作简单,处理速度快,同时,无需设置参数,在一定程度上避免了人为操作的盲目性。图 2-6 是信号

f

s

i

g

1

(

t

)

f_{sig1}(t)

fsig1​(t)的 EMD 分解结果。可以发现,该方法将

f

s

i

g

1

(

t

)

f_{sig1}(t)

fsig1​(t)分解成 7 个 IMF 分量,但由于 EMD 在迭代过程中每次都要找出信号中的极大值和极小值,导致 IMF4 和 IMF5 中都出现了频率为 15Hz 的谐波,即表达式中的 2.5cos(30πt),模态混叠现象严重。通过对比两种方法的结果,可以发现 EWT 方法能够抑制模态混叠现象,能够根据先验知识确定频带宽度,并将余弦信号完好地分解出来,抗噪声干扰能力强。

优惠劵

cofisher

关注

关注

36

点赞

201

收藏

觉得还不错?

一键收藏

打赏

知道了

11

评论

经验小波变换(EWT)理论基础

项目说明在信号分解领域,经验模态分解(EMD)十分经典,它基于信号特征自动地将信号分解为一组有限数目的 IMF 分量,在处理非线性和非平稳信号方面表现尤为出色,得到了广大学者的青睐。如今,EMD 方法在多个领域广泛应用,但是,在应用过程中会出现过包络、欠包络以及不同程度的端点效应和模态混叠问题,这给信号分解带来了许多问题。EWT 是 Gilles 于 2013 年提出的非平稳信号处理方法,它融合了 EMD 方法的自适应分解理念和小波变换理论的紧支撑框架,为信号处理提供了一种全新的自适应时频分析思路。相比

复制链接

扫一扫

专栏目录

EWT/经验小波变换/EWT是个啥?/ETW用途/ETW安装包

qq_49618004的博客

08-24

4万+

最近一篇EWT可以说是让好多同学私信了我。看来有必要详细讲讲EWT,就大家问的挺多的问题做个介绍。

Q:EWT怎么来的???

A:EWT是由杰罗姆·吉勒斯(Jérôme Gilles)在2013首先提出的。他是加州大学洛杉矶分校数学系的斯坦利·奥舍教授系的助理兼职教授。这个大牛还曾在法国国防部空间、观察、情报和无人机系统部担任信号和图像处理专家。同时也是法国嘉琛大学数学及其应用中心(CMLA)的永久副研究成员。他的研究的课题是将数学应用于信号/图像建模和分析、纹理分析、信号/图像恢复以及远程成像中大气湍

经验小波变换方面的论文

03-01

EWT(empiricalwavelet transform)是由Gilles在2013年将小波变换的科学性与EMD的自适应优势结合起来而提出的一种用于信号自适应的分析方法,该方法不仅可以对信号进行傅里叶频谱分析,同时通过特定方法确定信号的边界值,而且可以根据小波变换的理论基础。类似的定义经验小波变换的公式,自适应的组建满足信号的正交及紧支撑要求的小波基,通过Hilbert变换,就能获取所有分信号的频谱特征,且比EMD分解的过程,更快更精确。

11 条评论

您还未登录,请先

登录

后发表或查看评论

EWT经验小波matlab应用实现(信号处理)

04-20

完整的EWT工具箱 一维test测试m文件 具有二维工具箱

本测试主要应用一维信号处理

EWT 经验小波变换matlab源程序

04-26

包含源程序代码,可运行,注释全面,很好理解。相关参考文献都配备齐全。

经验小波变换EWT.zip

03-30

希望大家共同学习、研究、改进。在实验过程中主要将其用于电机轴承振动信号的分析,将其与其他算法相结合进行电机轴承故障诊断。实验结果表明,基于EWT的电机轴承故障诊断算法具有较高的诊断精度和诊断速度。

基于经验小波变换的滚动轴承故障诊断研究

07-23

基于经验小波变换的滚动轴承故障诊断研究,徐明,谭继文,经验小波变换(EWT)作为一种新的自适应信号分解方法,通过在频域自适应构造带通滤波器组,构造正交小波函数,以提取具有紧支撑傅里�

AWS CLI version 2 在 Windows 下的安装

HONEY MOOSE

09-10

672

首先你需要到下面的链接地址中下载需要的应用:

https://awscli.amazonaws.com/AWSCLIV2.msi

双击运行

双击运行下载的可以运行的文件

下一步继续

下一步继续安装进程

许可协议

你需要同意许可协议后继续安装。

安装路径

你可以选择自定义安装路径,一般来说默认就可以了。

安装进程

在这里单击安装来进行安装。

安装进程

继续安装的进程。

完成安装

单击完成来完成安装。

校验安装

在 Cmd 命令下,输入

aws

时序分解 | MATLAB实现基于EWT经验小波变换的时间序列信号分解

最新发布

关注并私信文章链接,获取对应文章源码和数据,机器学习之心的博客。

09-09

1242

时序分解 | MATLAB实现基于EWT经验小波变换的时间序列信号分解

类EMD的“信号分解方法”及MATLAB实现(第七篇)——EWT

fengzhuqiaoqiu的博客

03-03

6749

这是“类EMD”方法系列的第7篇,前几篇分别是EEMD、CEEMD、CEEMDAN、VMD、ICEEMDAN、LMD,想要看前几种方法的点击链接可以跳转。

经验小波变换(empirical wavelet transform,EWT)是2013年由Gilles提出[1]。这个方法是EMD方法和小波变换的结合,综合了EMD的自适应性和小波方法理论完备、计算简单快捷等特点。

1. EWT的概念

经验小波变换的核心思想其实并不难理解。

我们在做所谓的模态分解时,很多时候目的就是将不同频率段的信号单独提取出

ewt分解模式matlab算法如何实现,Mechanical-fault-diagnosis-method 经验小波变换(EWT)是一种新的自适应信号分解方法, 该 继承了EMD 和 分析 的 mat...

weixin_39622587的博客

03-24

2311

详细说明:经验小波变换(EWT)是一种新的自适应信号分解方法, 该方法继承了EMD 和小波分析方法的各自优点, 通过提取频域极大值点自适应地分割傅里叶频谱以分离不同的模态, 然后在频域自适应地构造带通滤波器组从而构造正交小波函数, 以提取具有紧支撑傅立叶频谱的调幅-调频(AM-FM)成分。本文将该方法引用到机械故障诊断中, 提出了一种基于经验小波变换的机械故障诊断方法, 并与EMD方法进行了对比分...

EWT最新经验小波变换工具箱

10-27

经验小波变换工具箱在使用上感觉效果比EMD好些,还在学习中,希望对大家有用

The purpose of this document is to provide useful information on how is or-

ganized and how use the Empirical Wavelet Transform Toolbox (EWTT), not

to explain what are the principles of the Empirical Wavelet Transform. In this

document, we assume that the reader knows what is the EWT and how it works.

If it is not the case, I advise you to read the papers

EWT分解

05-16

Matlab 程序包含源程序,只用改下待分解信号就能直接出图

MATLAB经验小波变换(EWT)工具箱的安装与使用

03-18

MATLAB经验小波变换(EWT)工具箱的安装与使用

可以使用的EWT经验小波变换

12-13

如果要运行所有功能,则需要在计算机上正确安装以下Matlab工具箱:

- Flandrin的EMD工具箱(在一维变换中需要执行希尔伯特变换并且可视化时频平面)

可从http://perso.ens-lyon.fr/patrick.flandrin/emd.html获得

- Elad的伪极谱FFT工具箱(2D变换除了基于张量变换之外)

可从http://www.cs.technion.ac.il/~elad/software/获得

如果要运行所有功能,则需要在计算机上正确安装以下Matlab工具箱:

- Flandrin的EMD工具箱(在一维变换中需要执行希尔伯特变换并且可视化时频平面)

可从http://perso.ens-lyon.fr/patrick.flandrin/emd.html获得

- Elad的伪极谱FFT工具箱(2D变换除了基于张量变换之外)

可从http://www.cs.technion.ac.il/~elad/software/获得

如果要运行所有功能,则需要在计算机上正确安装以下Matlab工具箱:

- Flandrin的EMD工具箱(在一维变换中需要执行希尔伯特变换并且可视化时频平面)

可从http://perso.ens-lyon.fr/patrick.flandrin/emd.html获得

- Elad的伪极谱FFT工具箱(2D变换除了基于张量变换之外)

可从http://www.cs.technion.ac.il/~elad/software/获得

如果要运行所有功能,则需要在计算机上正确安装以下Matlab工具箱:

- Flandrin的EMD工具箱(在一维变换中需要执行希尔伯特变换并且可视化时频平面)

可从http://perso.ens-lyon.fr/patrick.flandrin/emd.html获得

- Elad的伪极谱FFT工具箱(2D变换除了基于张量变换之外)

可从http://www.cs.technion.ac.il/~elad/software/获得

如果要运行所有功能,则需要在计算机上正确安装以下Matlab工具箱:

- Flandrin的EMD工具箱(在一维变换中需要执行希尔伯特变换并且可视化时频平面)

可从http://perso.ens-lyon.fr/patrick.flandrin/emd.html获得

- Elad的伪极谱FFT工具箱(2D变换除了基于张量变换之外)

可从http://www.cs.technion.ac.il/~elad/software/获得

这个工具箱组织如下:

EWT

?|

?| -1D:1D EWT功能

?| -2D:2D EWT功能

?| | - 小波:经验曲线变换

?| | -Littlewood-Paley:经验的Littlewood-Paley小波变换

?| | -Ridgelet:经验Ridgelet变换

?| | - 张量:经验张量小波变换

? - 边界:用于执行傅里叶支持的函数

?| | - LocalMaxima:根据当地最大值,中途或当地最小值执行检测的功能

?| | -MorphoMath:执行形态学操作符对谱进行预处理的功能

?| | -PowerLaw:通过去除其幂律近似来预处理谱

?| | -ScaleSpace:基于尺度空间方法执行检测的函数

?| - 文档:工具箱文档

?| -Tests

?| | -1D:对几个1D信号执行基本测试的功能

?| | -2D:用于在不同图像上执行几个2D变换的基本测试的功能

?| -utilities

?| | -1D:在1D情况下绘制结果的有用函数(时频平面,分量,边界)

?| | -2D:用于在2D情况下绘制结果的有用函数(不同类型的组件,2D边界,...)

如果要运行所有功能,则需要在计算机上正确安装以下Matlab工具箱:

- Flandrin的EMD工具箱(在一维变换中需要执行希尔伯特变换并且可视化时频平面)

可从http://perso.ens-lyon.fr/patrick.flandrin/emd.html获得

- Elad的伪极谱FFT工具箱(2D变换除了基于张量变换之外)

可从http://www.cs.technion.ac.il/~elad/software/获得

已经包含了

EWT 经验小波分解 matlab工具箱 toolbox

07-29

经验小波分解源代码工具箱及英文原文,可直接加载使用,注释全面

经验小波变换:这个工具箱提出了经验小波变换的原始实现-matlab开发

05-29

2019 年 12 月:重大更新:新版本 4.0! 一维变换现在可以处理复杂信号(即经验小波本身是复杂的,因为它们在傅立叶域中不一定是对称的)。 曲线波滤波器的结构已经过修改和简化,以保证几乎完美的重建。 在可能的情况下,所有其他 2D 变换已被清理和简化。 绘图函数现在为每个子图添加一些标题。 在组织方面,现在几乎所有功能的名称中都包含首字母缩略词“EWT”(大多数情况下作为前缀)以避免与外部功能发生任何冲突。 在此工具箱中,我们为1D和2D信号/图像实现了经验小波变换。 原理在于检测像小波一样建立在Littlewood-Paley上的Fourier支撑。 在2D模式下,我们将重新审视各种众所周知的变换:张量小波,Littlewood-Paley小波,脊波和Curvelet。

该工具箱还提供了用于生成论文中的实验的脚本: - J.Gilles,“经验小波变换”出现在 IEEE Tra

基于改进经验小波变换的滚动轴承故障特征提取方法研究_刘自然.pdf

04-19

故障特征的研究方法说明。

小波分析之小波变换分类及原理

06-22

小波分析的发展历史 小波变换分类及各类小波变换的原理

经验小波变换ewt python

06-12

经验小波变换 (Empirical Wavelet Transform, EWT) 是一种基于数据自适应的信号分析方法,它可以将非平稳信号分解为一组时变频带,每个频带都对应一个经验小波函数。Python中可以使用PyEWT这个库来实现EWT分解。

以下是一个使用PyEWT库实现EWT分解的代码示例:

```python

import numpy as np

import pyewt

# 生成一个非平稳信号

t = np.linspace(0, 1, 1000)

x = np.sin(20 * np.pi * t) * np.exp(-t * 10) + np.sin(40 * np.pi * t) * np.exp(-t * 5)

# 进行EWT分解

ewt = pyewt.EWT() # 初始化EWT对象

scales = ewt.get_scales(1000) # 获取尺度

ewt_x = ewt.ewt(x, scales) # 进行EWT分解

# 可视化分解结果

import matplotlib.pyplot as plt

plt.figure(figsize=(10, 6))

for i in range(len(ewt_x)):

plt.plot(t, ewt_x[i], label="scale %d" % i)

plt.legend()

plt.show()

```

运行上述代码可以得到分解结果的可视化图像,其中每个图像对应一个频带。

需要注意的是,PyEWT库目前只支持一维信号的EWT分解,如果需要分解二维信号,可以使用其他的库或自行实现。

“相关推荐”对你有帮助么?

非常没帮助

没帮助

一般

有帮助

非常有帮助

提交

cofisher

CSDN认证博客专家

CSDN认证企业博客

码龄7年

暂无认证

256

原创

9308

周排名

1624

总排名

128万+

访问

等级

1万+

积分

2209

粉丝

1773

获赞

2019

评论

7814

收藏

私信

关注

热门文章

Matlab 实现信号滤波

55251

Latex中\toprule、\midrule、\bottomrule报错

53943

Latex改变字体类型为Times New Roman

32188

python中的.argmax()和.idxmax()

24633

经验小波变换(EWT)理论基础

22804

分类专栏

联邦学习

付费

7篇

PHM项目实战--建模篇

付费

23篇

PHM项目实战--绘图篇

付费

6篇

优化算法优化神经网络

付费

11篇

PyTorch

2篇

Matlab

8篇

车轨耦合动力学

4篇

信号处理

10篇

深度学习

70篇

Socket

3篇

Tensorflow 2.0

98篇

报错

8篇

python

58篇

工控

1篇

Opencv

38篇

Ubuntu

2篇

Jetson nano

3篇

YOLOv3

10篇

latex排版

20篇

机器学习

23篇

爬虫

1篇

Abaqus

1篇

最新评论

局部均值分解(LMD)详解

2401_83258212:

你好,能详细说一下吗

经验小波变换(EWT)理论基础

qq_41047599:

你好,我想问问必须使用新版的MATLAB吗?如果是16或17的MATLAB版本,这个代码有吗?

用深度卷积迁移学习网络来分类无标签数据

m0_52579249:

请问你找到源码了吗

联邦学习(六):Tensorflow 实现联邦迁移学习

明昇:

博主您好,我已付费,请问能否发一份完整代码和数据集?我的邮箱是 2518170004@qq.com

【PyTorch】实现迁移学习框架DaNN

CSDN-Ada助手:

恭喜你这篇博客进入【CSDN每天值得看】榜单,全部的排名请看 https://bbs.csdn.net/topics/618050792。

您愿意向朋友推荐“博客详情页”吗?

强烈不推荐

不推荐

一般般

推荐

强烈推荐

提交

最新文章

【PyTorch】实现迁移学习框架DANN

【PyTorch】实现迁移学习框架DaNN

车轨耦合动力学外部激励——轨间焊缝

2024年2篇

2023年1篇

2022年4篇

2021年26篇

2020年201篇

2019年22篇

目录

目录

分类专栏

联邦学习

付费

7篇

PHM项目实战--建模篇

付费

23篇

PHM项目实战--绘图篇

付费

6篇

优化算法优化神经网络

付费

11篇

PyTorch

2篇

Matlab

8篇

车轨耦合动力学

4篇

信号处理

10篇

深度学习

70篇

Socket

3篇

Tensorflow 2.0

98篇

报错

8篇

python

58篇

工控

1篇

Opencv

38篇

Ubuntu

2篇

Jetson nano

3篇

YOLOv3

10篇

latex排版

20篇

机器学习

23篇

爬虫

1篇

Abaqus

1篇

目录

评论 11

被折叠的  条评论

为什么被折叠?

到【灌水乐园】发言

查看更多评论

添加红包

祝福语

请填写红包祝福语或标题

红包数量

红包个数最小为10个

红包总金额

红包金额最低5元

余额支付

当前余额3.43元

前往充值 >

需支付:10.00元

取消

确定

下一步

知道了

成就一亿技术人!

领取后你会自动成为博主和红包主的粉丝

规则

hope_wisdom 发出的红包

打赏作者

cofisher

你的鼓励将是我创作的最大动力

¥1

¥2

¥4

¥6

¥10

¥20

扫码支付:¥1

获取中

扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元

使用余额支付

点击重新获取

扫码支付

钱包余额

0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

有大神有经验小波变换(EWT)的代码吗,matlab或者其他编程语言都可? - 知乎

有大神有经验小波变换(EWT)的代码吗,matlab或者其他编程语言都可? - 知乎首页知乎知学堂发现等你来答​切换模式登录/注册编程语言Matlab代码有大神有经验小波变换(EWT)的代码吗,matlab或者其他编程语言都可?现在在研究经验小波变换,但是苦于没有代码,没办法了解整体运行情况,有没有大神可以分享一下呀,万分感谢显示全部 ​关注者18被浏览96,453关注问题​写回答​邀请回答​好问题​添加评论​分享​3 个回答默认排序Mr.看海好好学习,天天向上​ 关注这是“类EMD”方法系列的第7篇,前几篇分别是EEMD、CEEMD、CEEMDAN、VMD、ICEEMDAN,想要看前几种方法的点击链接可以跳转。经验小波变换(empirical wavelet transform,EWT)是2013年由Gilles提出[1]。这个方法是EMD方法和小波变换的结合,综合了EMD的自适应性和小波方法理论完备、计算简单快捷等特点。1. EWT的概念经验小波变换的核心思想其实并不难理解。我们在做所谓的模态分解时,很多时候目的就是将不同频率段的信号单独提取出来,不过此时将面临一个难点:提取的频率范围该怎么选。之前提到的VMD方法是通过变分问题构造解决的这个问题;今天要介绍的EWT采用的是另外一个思路,即对信号的频谱进行分割划分,构建合适的小波滤波器组,对信号进行分解。其分解过程大致如下:步骤1:计算输入信号的傅里叶变换。 步骤2:将傅里叶频谱划分为N个连续段落,通过搜索频谱的局部极大值确定边界,并将其按降序进行排列,假设极大值个数为 M,当 M ≥N 时,保留前N-1个极大值,当 M<N时,保留全部极大值并对N进行修正,最后,取两个局部极大值间的中间频率作为ωn。 步骤3:找到分割边界并分割频谱。步骤4:构建合适的小波滤波器组,对信号进行分解。相关的理论涉及比较繁复的计算过程,想要深入研究的同学可以看一下方法提出者的论文原文[1],另外有一个PPT讲述了从EMD到EWT的推演过程[2],有兴趣的话也可以看一下。2.EWT的编程实现ewt函数在MATLAB2020b版本中内置到官方库了,不过按照“类EMD”系列的代码的统一风格,笔者重新进行了封装,增加了绘制IMF分量与频谱对照的绘图函数,封装后的函数有两个。(另外,在MATLAB官方函数以外,还存在着第三方的ewt的工具箱,不过这里就不采用和集成了)测试信号同样使用前两篇文章中的正弦信号与间断性高频脉冲合成的信号:%% 1.生成仿真信号

fs = 400; %采样频率

t = 0:1/fs:0.75; %时间轴

x = sin(2*pi*4*t); %低频正弦信号

y = 0.5*sin(2*pi*120*t); %高频正弦信号

for i = 1:length(t) %将高频信号处理成间断性

if mod(t(i),0.25)>0.11&&mod(t(i),0.25)<0.12

else

y(i) = 0;

end

end

sig = x+y; %信号叠加

figure('color','white')

plot(t,sig,'k') %绘制原始信号(一)时域分解图画EWT分解图的函数介绍如下:function mra = pEWT(data,FsOrT)

% 画信号EWT分解图

% 输入:

% data为待分解信号

% FsOrT为采样频率或采样时间向量,如果为采样频率,该变量输入单个值;如果为时间向量,该变量为与y相同长度的一维向量。如果未知采样频率,可设置为1

% 输出:

% mra为经EWT分解后的各mra分量值

% 例1:(FsOrT为采样频率)

% fs = 100;

% t = 1/fs:1/fs:1;

% data = sin(2*pi*5*t)+2*sin(2*pi*20*t);

% mra = pEWT(data,fs);

% 例2:(FsOrT为时间向量,需要注意此时FsOrT的长度要与y相同)

% t = 0:0.01:1;

% data = sin(2*pi*5*t)+2*sin(2*pi*20*t);

% mra = pEWT(data,t);

% 注意:该代码仅能在2020b及更新MATLAB版本中运行应用上边的函数,画出的图是这样的:注意,这里的分量没有用imf表示,而是用mra表示,即multiresolution analysis(多分辨率分析)这个分解结果也可以说是完美的了,没有任何无效分量,有兴趣的同学可以翻一下之前EEMD、CEEMD、CEEMDAN、ICEEMDAN对同样一段信号做的分解效果,皆可以发现EWT的厉害之处了。(二)时域分解图及对应频谱图画EWT分解图及对应频谱图的函数介绍如下:function mra = pEWTandFFT(y,FsOrT)

% 画信号EWT分解与各mra分量频谱对照图

% 输入:

% y为待分解信号

% FsOrT为采样频率或采样时间向量,如果为采样频率,该变量输入单个值;如果为时间向量,该变量为与y相同长度的一维向量

% 输出:

% mra为经EWT分解后的各mra分量值

% 例1:(FsOrT为采样频率)

% fs = 100;

% t = 1/fs:1/fs:1;

% y = sin(2*pi*5*t)+2*sin(2*pi*20*t);

% mra = pEWTandFFT(y,fs);

% 例2:(FsOrT为时间向量,需要注意此时FsOrT的长度要与y相同)

% t = 0:0.01:1;

% y = sin(2*pi*5*t)+2*sin(2*pi*20*t);

% mra = pEWTandFFT(y,t);

% 注意:该代码仅能在2020b及更新MATLAB版本中运行画出的图是这样的:上边的测试代码和封装函数,包括工具箱都可以在公众号khscience(看海的城堡)中回复"EWT"获取,EMD、EEMD、CEEMD、CEEMDAN、ICEEMDAN、VMD以及HHT相关的程序也有,编程不易,感谢支持~关于EMD、EEMD、CEEMD、VMD和HHT的相关介绍可以看这里:Mr.看海:这篇文章能让你明白经验模态分解(EMD)——EMD在MATLAB中的实现方法Mr.看海:希尔伯特谱、边际谱、包络谱、瞬时频率/幅值/相位——Hilbert分析衍生方法及MATLAB实现Mr.看海:类EMD的“信号分解方法”及MATLAB实现(第一篇)——EEMDMr.看海:类EMD的“信号分解方法”及MATLAB实现(第二篇)——CEEMDMr.看海:类EMD的“信号分解方法”及MATLAB实现(第三篇)——CEEMDANMr.看海:类EMD的“信号分解方法”及MATLAB实现(第四篇)——VMDMr.看海:类EMD的“信号分解方法”及MATLAB实现(第五篇)——ICEEMDANMr.看海:类EMD的“信号分解方法”及MATLAB实现(第六篇)——LMD参考^abGilles, Jérôme. “Empirical Wavelet Transform.” IEEE Transactions on Signal Processing 61, no. 16 (August 2013): 3999–4010. https://doi.org/10.1109/TSP.2013.2265222.^EWT讲解PPT http://pdfs.semanticscholar.org/3803/d42330506aff3a5cc5eaf69cf589c9c8929b.pdf编辑于 2022-03-04 14:56​赞同 58​​4 条评论​分享​收藏​喜欢收起​哥廷根数学学派​与现代信号处理,机器学习,深度学习,故障诊断那些事​ 关注 经验小波变换(EWT)使用所谓的自适应小波细分方案从而创建信号的多分辨率分析 (MRA),我在科研中用的较多,但是效果也是看运气的,别人都是“数据驱动”,我靠“运气驱动”。EWT从信号频谱分割开始,将输入信号分解为若干的子频带信号,并提供信号的完美重建。EWT由Gilles教授开发,且Gilles和Heal提出了最原始的基于直方图的方法来分割频谱。 多分辨分析MRA将信号分解为不同尺度的分量(子频带),并通过对每个时间点的分量求和来恢复原始信号。目前许多算法都可以归为MRA框架,比如最大重叠离散小波变换,经验模式分解等算法。之所以EWT等基于小波的方法用的多,是因为该类方法具有严谨的数学推导过程,可解释性较强。EWT方法大体可分为4个步骤:1.预设参数并选择分割频谱的方式;2.自适应分割信号频谱,获得一组边界;3.根据边界序列和经验小波构造滤波器组;4.滤波并重构,获得一系列具有紧支撑的MRA分量具体的理论推导可以阅读相关的一系列文章,文章末尾会给出相关文献,不再赘述,主要讲一下EWT在Matlab中是如何应用的,以及改进方向EWT算法在MATLAB的高版本中,可以直接使用ewt 函数来获取信号的MRA分量, MATLAB中EWT算法的结构如下:(1)计算信号的Multitaper功率谱估计,这是功率谱的一个平滑、低方差估计,并将估计值归一化为在[0,1]范围内。默认情况下,严格识别所有峰值大于70%的峰值。关于Multitaper功率谱,可参考如下文章。频谱分析中如何理解taper? - xiaotu Peng的回答 - 知乎https://www.zhihu.com/question/372832396/answer/1838971028(2)经验小波通带的过渡带在相邻峰的几何平均频率处交叉(这个看一下原文就很清楚了),Meyer小波的构造以及确定参数γ的方式见文献[1],由此形成一个Parseval 紧框架,Parseval 紧框架在现代信号处理中很常用。(3)为了确定相邻通带之间的边界,可以使用相邻峰之间的第一个局部最小值,如果没有确定局部最小值,默认为几何平均值。注意,局部最小值方法对噪声极为敏感,实际应用时效果不好。因为EWT的小波形成 Parseval 紧框架,所以滤波器组是自对偶的,即分析滤波器组等于综合滤波器组。 EWT在频域中对信号进行滤波,然后进行逆变换以获得分析系数。下面给出一个简单的例子。首先,设置一个测试信号rng default

fs = 500;

t = 0:1/fs:1-1/fs;

f1 = 1./(6/5+cos(2*pi*t));

f2 = 1./(3/2+sin(2*pi*t));

f3 = cos(32*pi*t+cos(64*pi*t));

sig = f1+f2.*f3;

sig = sig+randn(1,length(sig))/2;

sig = sig-mean(sig);

plot(t,sig)

xlabel('Time (sec)')

ylabel('Amplitude')

title('Test Signal')

然后绘制信号的周期谱图和平滑Multitaper估计值[Pxx,F] = periodogram(sig,[],[],500);

Pxxmt = pmtm(sig,5,[],500,'Tapers','sine','power');

subplot(2,1,1)

plot(F,Pxx)

title('Periodogram')

subplot(2,1,2)

plot(F,Pxxmt)

title('Smoothed Estimate')

xlabel('Frequency (Hz)')

EWT分解为了描述方便,使用默认设置的ewt 函数来获取信号的 MRA 和有关滤波器组的信息,当然还有好几种算法可以控制ewt函数并获得信号的MRA。[mra,~,~,info] = ewt(sig);

size(mra)

可以看到,ewt将sig信号默认分解为了两个MRA分量,看一下分解波形,频谱就不画了subplot(2,1,1);plot(t,mra(:,1));ylabel('mra1');

subplot(2,1,2);plot(t,mra(:,2));ylabel('mra2');

指定最大峰值数量默认情况下,ewt 会找到2个MRA成分,观察一下ewt的滤波器组通带(中心频率与带宽),因为频率是归一化的,所以要乘以采样频率info.FilterBank.Passbands*fs注意到在 22 Hz处有一个边界,第1段有两个峰,因此将 MaxNumPeaks设置为3,以便ewt 使用3个最大峰确定滤波器通带[mra,cfs,~,info] = ewt(sig,'MaxNumPeaks',3);

info.FilterBank.Passbands*fs看一下分解波形subplot(3,1,1);plot(t,mra(:,1));ylabel('mra1');

subplot(3,1,2);plot(t,mra(:,2));ylabel('mra2');

subplot(3,1,3);plot(t,mra(:,3));ylabel('mra3');

验证一下是否完美重建 max(abs(sig'-sum(mra,2)))sum(sum(abs(cfs).^2))norm(sig,2)^2指定百分比阈值此外还可以设置用于确定在Multitaper功率谱中保留哪些峰的百分比阈值,而不是指定最大峰数,指定最大峰数这个方法在噪声较大的信号中效果很拉跨。信号的Multitaper功率谱估计中的局部最大值被归一化到[0,1]范围内,将 百分比阈值设置为 2。[~,~,~,info] = ewt(sig,'PeakThresholdPercent',2);

info.FilterBank.Passbands*fs此外,还可以设置频谱的分割方法(例如localmin,geomean方法)和频率分辨率等参数,就不一一列举了。下面开始重头戏:轴承故障诊断,试试“运气驱动”吧。轴承数据的话先看下前几篇文章基于包络谱的轴承故障诊断方法-第1篇 - 哥廷根数学学派的文章 - 知乎 https://zhuanlan.zhihu.com/p/533579665基于包络谱的轴承故障诊断方法-第2篇 - 哥廷根数学学派的文章 - 知乎 https://zhuanlan.zhihu.com/p/533984966基于离散小波变换的滚动轴承故障诊断 - 哥廷根数学学派的文章 - 知乎 https://zhuanlan.zhihu.com/p/534179963以第3轴承Z轴70Hz第8组数据为例,其包络谱如下下面开始ewt分解,首先,指定最大峰值数量MaxNumPeaks=3,求得ewt的滤波器组通带信息为:子频带的波形及包络谱如下:看一下最大峰值数量MaxNumPeaks=4时的各子频带的包络谱:看一下最大峰值数量MaxNumPeaks=5时的各子频带的包络谱:可见,MaxNumPeaks>5就不用考虑了调整百分比阈值首先,将百分比阈值设置为 2,得到10个mra分量,看一下ewt的滤波器组通带信息:ans = 1.0e+03 * 4.0840 5.1200 3.9510 4.0840 3.9380 3.9510 3.3400 3.9380 2.7670 3.3400 2.4940 2.7670 2.1300 2.4940 1.9060 2.1300 1.0800 1.9060 0 1.0800其子频带分量的包络谱如下:可见第5个分量故障特征频率十分突出,放大看一下:再看一下将百分比阈值设置为5,得到6个mra分量,看一下ewt的滤波器组通带信息:ans = 1.0e+03 * 3.9510 5.1200 3.9380 3.9510 3.3400 3.9380 2.7670 3.3400 2.4940 2.7670 0 2.4940其子频带分量的包络谱如下:重看第4个分量:频谱分割方法当MaxNumPeaks=5,频谱分割方法为localmin(局部极小)时,各mra分量的包络谱如下图:效果拉跨,localmin受噪声影响太大了。当MaxNumPeaks=5,频谱分割方法为geomean(几何平均)时,各子频带分量的包络谱如下图:重看第4个分量此外,还有很多优秀的频谱分割方法,比如自适应法,就不一一列举了。参考文献:[1] Gilles, Jérôme. “Empirical Wavelet Transform.” IEEE Transactions on Signal Processing 61, no. 16 (August 2013): 3999–4010. https://doi.org/10.1109/TSP.2013.2265222.[2] Gilles, Jérôme, Giang Tran, and Stanley Osher. “2D Empirical Transforms. Wavelets, Ridgelets, and Curvelets Revisited.” SIAM Journal on Imaging Sciences 7, no. 1 (January 2014): 157–86. https://doi.org/10.1137/130923774.[3] Gilles, Jérôme, and Kathryn Heal. “A Parameterless Scale-Space Approach to Find Meaningful Modes in Histograms — Application to Image and Spectrum Segmentation.” International Journal of Wavelets, Multiresolution and Information Processing 12, no. 06 (November 2014): 1450044. https://doi.org/10.1142/S0219691314500441.重要重要重要EWT的不足也很明显,比如EWT会消耗大量的时间,并且分割出很多无效分量;新的模态混叠现象出现了,同一个分量也可能会被分割为两部分等。对此很多学者对此进行了研究和改进,为了对应经验小波变换的四个步骤,各种改进方法也被作者分为四类。第一类:优化输入参数。为了解决分割频谱和图像时的参数问题,Gilles将傅里叶谱变为尺度空间表示中的函数,提出了概率、“Otsu's”、“k-Means”3种方式,从尺度空间函数中获取有意义的模式。上述基于尺度空间函数的频谱分割方式增加了经验小波变换的自适应性,但是会导致边界的个数增多,也就意味着无效分量会增多,运算耗时也会增加。第二类:更换分割谱。经验小波变换在频谱中划分边界,但Gilles提出的三种方式极易受到噪声的干扰而使边界的个数增多。因此,抑制谱中的噪声成分、放大有用成分有利于边界的划分,无效分量的个数也会被减少。因此可以用自回归功率谱、贝塞尔级数展开(Fourier-Bessel Series Expansion, FBSE)等代替频谱。第三类:优化边界。比如采用顺序统计滤波器(Order tatistic Filter, OSF)的包络估计方法来分割频谱。第四类:筛选MRA分量,这个研究的就比较多了,什么改进峭度指标之类的,不再赘述。好了,EWT就到这里了,以后慢慢更新一些改进算法,码字不易,且行且珍惜。编辑于 2022-12-03 21:44​赞同 16​​1 条评论​分享​收藏​喜欢收起​​

Empirical wavelet transform - MATLAB ewt - MathWorks 中国

Empirical wavelet transform - MATLAB ewt

- MathWorks 中国

Skip to content

Toggle Main Navigation

产品

解决方案

学术

支持

社区

活动

获取 MATLAB

产品

解决方案

学术

支持

社区

活动

获取 MATLAB

Help CenterHelp Center

搜索帮助中心

帮助中心

MathWorks

搜索 MathWorks

MathWorks

帮助中心

Close Mobile Search

Open Mobile Search

Off-Canvas Navigation Menu Toggle

Documentation HomeSignal Processing

Wavelet Toolbox

Time-Frequency AnalysisConstant-Q, Data-Adaptive, and Quadratic Time-Frequency

Transforms

ewt

On this page

SyntaxDescriptionExamplesPerform Empirical Wavelet Transform and Visualize Hilbert Spectrum of SignalVisualize Empirical Wavelet Transform Filter BankEmpirical Wavelet Transform of ECG SignalInput ArgumentsxName-Value ArgumentsPeakThresholdPercentSegmentMethodMaxNumPeaksFrequencyResolutionLogSpectrumOutput ArgumentsmracfswfbinfoReferencesExtended CapabilitiesVersion HistorySee Also

DocumentationExamplesFunctionsAppsVideosAnswers

试用版

试用版

产品更新

产品更新

资源

DocumentationExamplesFunctionsAppsVideosAnswers

Main Content

ewtEmpirical wavelet transformSince R2020bcollapse all in page

Syntaxmra = ewt(x)[mra,cfs] = ewt(x)[mra,cfs,wfb] = ewt(x)[mra,cfs,wfb,info] = ewt(x)[___] = ewt(___,Name,Value)ewt(___)Description

examplemra = ewt(x) returns

the multiresolution analysis (MRA) components corresponding to the empirical wavelet

transform (EWT) of x. Use ewt to decompose

signals using an adaptable wavelet subdivision scheme that automatically determines the

empirical wavelet and scaling filters and preserves energy.By default, the number of empirical wavelet filters is automatically determined by

identifying peaks in a multitaper power spectral estimate of

x.

[mra,cfs] = ewt(x)

returns the EWT analysis coefficients of x.

[mra,cfs,wfb] = ewt(x)

returns the empirical wavelet filter bank used in the analysis of

x.

example[mra,cfs,wfb,info] = ewt(x)

returns the peak normalized frequencies identified in x and the

approximate frequency passbands of the wavelet filter bank.

example[___] = ewt(___,Name,Value)

specifies additional options using name-value pair arguments. These arguments can be added

to any of the previous input syntaxes. For example, 'MaxNumPeaks',5

specifies a maximum of five peaks used to determine the EWT filter passbands.

ewt(___) with no output arguments plots the original

signal with the empirical wavelet MRA in the same figure. For complex-valued data, the

real part is plotted in the first color in the MATLAB® color order matrix and the imaginary part is plotted in the second

color.

Examplescollapse allPerform Empirical Wavelet Transform and Visualize Hilbert Spectrum of SignalOpen Live ScriptLoad and visualize a nonstationary continuous signal composed of sinusoidal waves with a distinct change in frequency. The signal is sampled at 250 Hz.fs = 250;

load nonstatdistinct

t = (0:length(nonstatdistinct)-1)/fs;

plot(t,nonstatdistinct)

xlabel('Time (s)')

ylabel('Signal')

axis tightUse ewt to obtain a multiresolution analysis (MRA) of the signal.mra = ewt(nonstatdistinct);Use the MRA components with the hht function and plot the Hilbert spectrum.hht(mra,fs)The frequency versus time plot is a sparse plot with a vertical color bar indicating the instantaneous energy at each point in the MRA. The plot represents the instantaneous frequency spectrum of each component decomposed from the original mixed signal.Visualize Empirical Wavelet Transform Filter BankOpen Live ScriptCreate a nonstationary continuous signal composed of sinusoidal waves with a distinct change in frequency. The signal is sampled at 1000 Hz.Fs = 1000;

t = 0:1/Fs:4;

x1 = sin(2*pi*50*t) + sin(2*pi*200*t);

x2 = sin(2*pi*25*t) + sin(2*pi*100*t) + sin(2*pi*250*t);

x = [x1 x2] + 0.1*randn(1,length(t)*2);

t1 = (0:length(x)-1)/Fs;

plot(t1,x)

xlabel('Time (s)')

ylabel('Amplitude')

title('Signal')Use ewt and obtain the MRA of the signal. Display the normalized peak frequencies identified in the signal, and the approximate frequency passbands of the filter bank. Because the frequencies are in cycles per sample, normalize by the sampling frequency. Note that the peak frequencies correspond to the frequencies of the sinusoidal waves.[mra,~,wfb,info] = ewt(x);

Fs*info.PeakFrequenciesans = 5×1

249.9375

200.0750

100.1000

50.1125

25.1187

Fs*info.FilterBank.Passbands ans = 5×2

223.6941 500.0000

141.5896 223.6941

70.8573 141.5896

35.4911 70.8573

0 35.4911

Plot the magnitude spectrum of the signal, and the filter bank. The locations of the peaks determine the filter passbands.f = 0:Fs/length(x):Fs-1/length(x);

plot(f,wfb)

ylabel('Magnitude')

grid on

yyaxis right

plot(f,abs(fft(x)),'k--','linewidth',1.5)

ylabel('Magnitude')

xlabel('Hz')Because the empirical wavelets form a Parseval tight frame, the analysis filter bank is equal to the synthesis filter bank. Therefore, squaring the magnitudes at each frequency summed over the filters equals 1. If the sum was not equal to 1, perfect reconstruction would not be possible.Empirical Wavelet Transform of ECG SignalOpen Live ScriptLoad an ECG signal. The signal is sampled at 180 Hz.load wecgUse ewt to obtain a multiresolution analysis (MRA) of the signal, and the corresponding analysis coefficients. Use the four largest peaks to determine the filter passbands.mp = 4;

[mra,cfs] = ewt(wecg,'MaxNumPeaks',mp);Plot the signal and the MRA components.fs = 180;

subplot(mp+1,1,1)

t = (0:length(wecg)-1)/fs;

plot(t,wecg)

title('MRA of Signal')

ylabel('Signal')

axis tight

for k=1:mp

subplot(mp+1,1,k+1)

plot(t,mra(:,k))

ylabel(['MRA ',num2str(k)])

axis tight

end

xlabel('Time (s)')Verify that summing the MRA components results in perfect reconstruction of the signal.max(abs(wecg-sum(mra,2)))ans = 8.8818e-16

Verify energy preservation of the EWT analysis coefficients.cfsenergy = sum(sum(abs(cfs).^2));

[cfsenergy norm(wecg,2)^2]ans = 1×2

298.2759 298.2759

Input Argumentscollapse allx — Input data vector | timetable

Input data, specified as a real- or complex-valued vector or as a single-variable

timetable containing a single column vector. x must have at least

two samples.

Data Types: single | double

Complex Number Support: YesName-Value ArgumentsSpecify optional pairs of arguments as

Name1=Value1,...,NameN=ValueN, where Name is

the argument name and Value is the corresponding value.

Name-value arguments must appear after other arguments, but the order of the

pairs does not matter.

Before R2021a, use commas to separate each name and value, and enclose

Name in quotes.

Example: ewt(x,'MaxNumPeaks',5,'SegmentMethod','localmin') obtains the

MRA of x using the five largest peaks and the first local minimum

between adjacent peaks.PeakThresholdPercent — Threshold percentage of maximum peak 70 (default) | real number in the interval (0, 100)

Threshold percentage of maximum peak used to determine which peaks to retain in

the multitaper power spectrum of x, specified as a real number in

the interval (0, 100). Local maxima in the multitaper power spectral estimate of

x are normalized to lie in the range [0,1] with the maximum

peak equal to 1. All peaks with values strictly greater than

PeakThresholdPercent of the maximum peak are retained.

Data Types: single | doubleSegmentMethod — Segmentation method 'geomean' (default) | 'localmin'

Segmentation method used to determine the EWT filter passbands, specified as:

'geomean' — Geometric mean of adjacent peaks'localmin' — First local minimum between adjacent

peaks

If no local minimum is identified between adjacent peaks, the function

uses the geometric mean.

MaxNumPeaks — Maximum number of peaks positive integer

Maximum number of peaks used to determine the EWT filter passbands. If

ewt finds fewer peaks than the number specified in

MaxNumPeaks, it uses the maximum number of peaks available. If it

does not find any peaks, ewt uses a level-one discrete wavelet

transform (DWT) filter bank.

You cannot specify both MaxNumPeaks and

PeakThresholdPercent.

Data Types: single | doubleFrequencyResolution — Frequency resolution bandwidth real number less than or equal to 0.25

Frequency resolution bandwidth of the multitaper power spectral estimate,

specified as a real number less than or equal to 0.25.

The value of FrequencyResolution determines how many sine

tapers are used in the multitaper power spectrum estimate. The bandwidth of a sine

multitaper power spectral estimate is

(K+1)/(N+1), where K is the

number of tapers and N is the length of the signal. The minimum

value of FrequencyResolution is 2.5/N, where

N is the maximum of the signal length and 64.

Data Types: single | doubleLogSpectrum — Logarithm of spectrum false or 0 (default) | true or 1

Logarithm of spectrum logical used to determine the peak frequencies. If

LogSpectrum is set to true, the log of the

multitaper power spectrum is used. Consider setting LogSpectrum to

true if using the PeakThresholdPercent

segmentation method and there is a dominant peak frequency that is significantly

larger in magnitude than other peaks.

Output Argumentscollapse allmra — Multiresolution analysis matrix | timetable

Multiresolution analysis (MRA), returned as a matrix or timetable.

When x is a vector, mra is a matrix

where each column stores an extracted MRA component.

For real-valued x, the MRA components are ordered

by decreasing center frequencies. The final column in

mra corresponds to the lowpass scaling filter.For complex-valued x, the MRA components start near

−½ cycles per sample and decrease in center frequency until the lowpass

scaling coefficients are obtained. The frequency then increases toward +½

cycles per sample.

When x is a timetable, mra is a

timetable with multiple single variables where each variable stores an MRA

component.

See the info structure array for a description of

the frequency bounds for empirical wavelet and scaling filters.

If x has less than 64 samples, ewt works

on a zero-padded version of x of length 64. The MRA components are

truncated to the original length.

cfs — EWT analysis coefficients matrix

EWT analysis coefficients, returned as a matrix. If the input data is real-valued,

then cfs is a real-valued matrix. Otherwise,

cfs is a complex-valued matrix. Each column of

cfs stores the EWT analysis coefficients for the corresponding

MRA component. The frequency bands of the analysis coefficients are identical to the

ordering of the MRA components. If x has less than 64 samples,

cfs contains the analysis coefficients obtained from the

zero-padded version of x.

Data Types: single | doublewfb — Empirical wavelet filter bank matrix

Empirical wavelet filter bank, returned as a matrix. The center frequencies of the

filters in wfb match the order in mra and

cfs. Because the empirical wavelets form a Parseval tight frame,

the analysis filter bank is equal to the synthesis filter bank. Therefore, summing the

MRA components results in perfect reconstruction of the signal.

Data Types: single | doubleinfo — Filter bank information structure array

Filter bank information, returned as a structure with the following fields:

PeakFrequencies — The peak normalized frequencies in

cycles/sample identified in x as a column vector. For

real-valued x, the frequencies are positive in the interval

(0, ½) in decreasing order. For complex-valued x, the

frequencies are ordered from (−½, ½). If PeakFrequencies is

empty, ewt did not find any peaks and a default one-level

discrete wavelet transform (DWT) subdivision is used.FilterBank — A table with two variables:

MRAComponent and Passbands.

MRAComponent is the column index of the MRA component in

mra. Passbands is a

L-by-2 matrix where L is the number of MRA

components. Each row of Passbands is the approximate frequency

passband in cycles/sample for the corresponding EWT filter and MRA

component.

Data Types: single | double

Complex Number Support: YesReferences[1] Gilles, Jérôme. “Empirical Wavelet

Transform.” IEEE Transactions on Signal Processing 61, no. 16 (August

2013): 3999–4010. https://doi.org/10.1109/TSP.2013.2265222.[2] Gilles, Jérôme, Giang Tran, and

Stanley Osher. “2D Empirical Transforms. Wavelets, Ridgelets, and Curvelets Revisited.”

SIAM Journal on Imaging Sciences 7, no. 1 (January 2014): 157–86.

https://doi.org/10.1137/130923774. [3] Gilles, Jérôme, and Kathryn Heal.

“A Parameterless Scale-Space Approach to Find Meaningful Modes in Histograms — Application to

Image and Spectrum Segmentation.” International Journal of Wavelets,

Multiresolution and Information Processing 12, no. 06 (November 2014): 1450044.

https://doi.org/10.1142/S0219691314500441. Extended CapabilitiesC/C++ Code Generation Generate C and C++ code using MATLAB® Coder™.Usage notes and limitations:

Timetable input data is not supported.

Version HistoryIntroduced in R2020bSee AlsoAppsSignal Multiresolution

AnalyzerFunctionsemd | modwtmra | vmd | hhtTopicsEmpirical Wavelet TransformPractical Introduction to Multiresolution AnalysisTime-Frequency Gallery

×

打开示例

您曾对此示例进行过修改。是否要打开带有您的编辑的示例?

否,请覆盖修改版本 是

×

MATLAB 命令

您点击的链接对应于以下 MATLAB 命令:

请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。

关闭

×

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

Switzerland (English)

Switzerland (Deutsch)

Switzerland (Français)

中国 (简体中文)

中国 (English)

You can also select a web site from the following list:

How to Get Best Site Performance

Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.

Americas

América Latina (Español)

Canada (English)

United States (English)

Europe

Belgium (English)

Denmark (English)

Deutschland (Deutsch)

España (Español)

Finland (English)

France (Français)

Ireland (English)

Italia (Italiano)

Luxembourg (English)

Netherlands (English)

Norway (English)

Österreich (Deutsch)

Portugal (English)

Sweden (English)

Switzerland

Deutsch

English

Français

United Kingdom (English)

Asia Pacific

Australia (English)

India (English)

New Zealand (English)

中国

简体中文

English

日本 (日本語)

한국 (한국어)

Contact your local office

试用版

试用版

产品更新

产品更新

中国

信任中心

商标

隐私权政策

防盗版

应用状态

京公网安备 11010502045942号   京ICP备12052471号

© 1994-2024 The MathWorks, Inc.

×

WeChat

关注我们

升学e网通,升学助考一网通

通,升学助考

升学e网通_高中生在线学习助考综合平台

通_高中生在线学习助考综

Error - 升学e网通,升学助考一网通

Error - 升学e网通,升学助考一网通

高考E讲堂

高考E讲堂

高考E讲堂

学科问答

志愿填报系统

志愿填报系统

历年录取信息

院校信息库

专业信息库

模拟填报演练

智能查询

职业宝库

复习备考系统

复习备考系统

考点库

知识点诊断

试题库

升学综合测评

高考万花筒

心理加油站

心理加油站

心灵港湾

我的奋斗

心理问答

心理FM

E社区

生涯规划系统导航

Sorry, an error occurred while processing your request.

返回首页

联系客服

在线咨询

我要反馈

返回顶部

升学e网通下载,手机客户端APP下载,升学e网通电脑版,ipad/ios版下载 - 升学e网通|e网通 升学一网通出品

升学e网通下载,手机客户端APP下载,升学e网通电脑版,ipad/ios版下载 - 升学e网通|e网通 升学一网通出品

升学e网通,升学助考一网通

通,升学助考

eWTP-世界电子贸易平台

eWTP-世界电子贸易平台