vmd变分模态分解_Variational Mode Decomposition (变分模态分解)

本文介绍了变分模态分解(VMD)的概念,旨在将信号分解为不同频率的子信号。VMD的基础涉及傅立叶变换的微分性质和解析信号的理解。文中通过信号降噪问题逐步解析VMD的思路,讨论了如何通过最小化泛函和利用傅立叶变换在复数域进行操作。同时,提到了VMD存在的端点效应及K值选择对其结果的影响。
摘要由CSDN通过智能技术生成

标签(空格分隔): 数学


这一篇写一下变分模态分解(原始论文:Variational Mode Decomposition),跟原始论文思路思路一致但有一点点不太一样,原始论文写的很好,但我不是通信专业没有学过信号相关课程一开始看起来有点费劲。模态分解认为信号是由不同“模态”的子信号叠加而成的,而变分模态分解则认为信号是由不同频率占优的子信号叠加而成的,其目的是要把信号分解成不同频率的子信号。变分模态分解的分解结果如图所示

ce34af6ddcb53a77c81eba2440d61997.png

基础

一开始论文看不懂的原因是缺少相关前置知识,但一旦顺下来就会感觉其实没有那么难,难的是作者的思路很巧妙,先写下我遇到的这些知识盲点

第一点是傅立叶变换的微分性质

的傅立叶变换为
,其导数
的傅立叶变换为

另一点是解析信号,现实世界只能采集实信号,但实信号有很多不好用的性质,如存在负频率,无法直接得到调制频率后的实信号等。 设原始信号是一个实信号

为了方便表示
为随
变化的函数,相当于瞬时频率,解析信号是一个复信号,可以通过希尔伯特变换得到
解析信号的实部是原本的实数信号,并且经过调频之后复数信号的实部仍然是调频之后的实信号,如对信号
增加频率
,只需要乘以
即可
由此,其实部相当于在原本频率
的基础上增加了频率
,如下面的
matlab脚本
clear;close all;clc;
t = 1:0.01:10;
%%
f1 = sin(20*t).*(t-5).^2;
subplot(3,1,1);
plot(f1);
ylim([-25 25]);
%%
f2 = sin(50*t).*(t-5).^2;
subplot(3,1,2);
plot(f2);
ylim([-25 25]);
%%
H = hilbert(f1);
f_hat = H.*exp(1i*30.*t);
subplot(3,1,3);
plot(real(f_hat));
ylim([-25 25]);

417b1f992a4a138b9a51759f5326426d.png

matlabhilbert函数包括希尔伯特变换和解析函数转换两部分,直接得到实信号的解析信号,其中希尔伯特变换

正文

接下来我们看看如何一步一步得到变分模态分解的思路

原论文通过一个信号降噪问题进行说明,现需要对采样信号

进行降噪重构,假设观测信号是由原始信号叠加一个独立的高斯噪音
,需要求
,又说该等式是一个不适定问题(ill-posed problem),不满足识定问题的三个条件,所以要用一个正则化的方法
第一部分是对原信号进行重构,第二部分是为了解决不适定问题的解不唯一,而且不同于机器学习的建模问题一样
是一个权值形式可以直接加权值
  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VMDVariational Mode Decomposition)是一种信号分解方法,可以将信号分解成多个不同频率的模态分量。而MATLAB是一种常用的科学计算环境和编程语言,可以用于各种信号处理和数据分析任务。 在MATLAB中使用VMD进行变分模态分解,首先需要将VMD的相关函数加载到MATLAB环境中。这可以通过将VMD源代码文件添加到MATLAB的工作路径或者使用addpath函数来实现。 接下来,我们可以使用MATLAB的信号处理工具箱来预处理信号,例如去除噪声或者进行滤波。然后,可以使用VMD函数来进行信号的变分模态分解。这个函数通常需要输入一维的时间序列信号和一些参数,例如分解的模态数目、正则化参数等等。VMD函数会返回分解后的模态分量以及对应的调制函数。 一旦得到了VMD分解结果,可以使用MATLAB的绘图函数将分解后的模态分量和调制函数可视化。这些可视化结果可以帮助我们更好地理解信号的频率分布和时域特征,以及确定哪些分量对于我们感兴趣的分析具有重要的贡献。 此外,MATLAB还提供了丰富的数据处理和分析工具,可以进一步对VMD分解结果进行处理和分析。我们可以利用MATLAB的统计工具进行模态分量的特征提取,或者使用MATLAB的机器学习工具进行模式识别和分类等任务。 综上所述,使用MATLAB进行VMD变分模态分解可以方便地实现信号的频率分析和时域分解,以及进行后续的数据处理和分析。通过将VMDMATLAB的其他功能相结合,我们可以更全面地理解和研究信号的特性和性质。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值