VMD确定分解个数K

1. VMD基础概念

变模态分解(variational mode decomposition,VMD)
将一个时间序列f分解成k个具有固定中心频率ω_k的模态分量u_k (t),并使每个模态量的频率估计带宽之和最小。对各模态分量进行Hilbert变换得到其单边频谱,通过混合一估计中心频率,将各分量的单边频谱调制到基频带,再经过对解调信号梯度的L2正则化进行高斯平滑估计,得到风功率分量的带宽。对应的受约束的变分模型表示为:

其中,∂t表示求偏导,δ(t)表示狄拉克分布函数。
1.2变分问题的求解
引入拉格朗日乘子 和二次罚函数 ,将上述约束变分问题转化为无约束问题,即

利用乘数的交替方向法寻找扩展拉格朗日表达式(2)的鞍点,得到各模态的频域更新,则模态分量和中心频率的迭代表达式为:

其中, 表示分量的维纳滤波; 表示对应模态的中心频率;对 进行傅里叶逆变换,取实部{u_k (t)}得到时域模态分量;n表示迭代次数;ω表示频率值。最后通过傅里叶逆变换转换到时域,得到序列分解后的k各窄带IMF分量,完成了信号在频域内的自适应分割。
VMD是将序列从时域转换到频域内进行分解,对于这类非线性数据既能很好的保留原始信息,又能避免变量信息重叠,且分解过程具有较强的鲁棒性。

2.根据中心频率选取分解个数K

VMD分解的效果主要受模态数的选取值的影响,当模态的选取值较小时,由于VMD算法相当于自适应滤波器组,原始信号中一些重要信息将会被过滤,影响后续预测的精度;而当模态的选取值较大时,相邻模态分量的中心频率则会相距较近,导致模态重复或产生额外的噪声。不同模态的主要不同点在于中心频率的不同,所以,通过对不同模态数下中心频率的分布进行观察选取合适的模态数值。

3.根据相关系数进一步确定K

K=5时的分解结果中的422Hz、851 Hz和1530 Hz的三个中心频率比较接近,大概率会发生通频带重合、模态重合的现象,从而造成风功率信号的过分解。因此,为了进一步确定模态数的选取值K,对分解出的相邻的模态分量的相关性进行分析,求解其皮尔逊相关系数。

4.代码

https://download.csdn.net/download/hahahahah123456/15468344

5.关于中心频率的计算


链接
点击链接有更详细的讨论过程。

参考:

[1]陶凯,吴定会.基于VMD-JAYA-LSSVM的短期风电功率预测[J/OL].控制工程:1-7[2021-02-25].https://doi.org/10.14107/j.cnki.kzgc.20190288.
[1]郑小霞,周国旺,任浩翰,符杨.基于变分模态分解和排列熵的滚动轴承故障诊断[J].振动与冲击,2017,36(22):22-28.

VMD确定分解个数K(matlab)相关推荐

  1. VMD确定分解个数K

    VMD确定分解个数K 1. VMD基础概念 变模态分解(variational mode decomposition,VMD) 将一个时间序列f分解成k个具有固定中心频率ω_k的模态分量u_k (t) ...

  2. 类EMD的“信号分解方法”及MATLAB实现(第四篇)——VMD

    重头戏来了. 在以往的应用经验里,VMD方法在众多模态分解方法中可以说是非常好的.从催更力度上看,这个方法也是格外受关注.笔者决定加快进度快一些写完这个方法,十月份了有些同学要开始做毕设,希望这篇文能 ...

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

    这是"类EMD"方法系列的第7篇,前几篇分别是EEMD.CEEMD.CEEMDAN.VMD.ICEEMDAN.LMD,想要看前几种方法的点击链接可以跳转. 经验小波变换(empir ...

  4. 类EMD的“信号分解方法”及MATLAB实现(第六篇)——LMD

    继续完善"类EMD"方法系列,本篇是继EEMD.CEEMD.CEEMDAN.VMD.ICEEMDAN后的第6篇,想要看前几种方法的点击链接可以跳转. LMD(local mean ...

  5. 正交矩阵,(标准)正交基,正交投影,正交分解定理,最佳逼近定理,格拉姆-施密特方法求正交基(手算+MATLAB),QR分解(手算+MATLAB计算、分析)

    正交(orthogonality).正交集(orthogonal set).单位正交集 定义:如果向量uuu和向量vvv是相互正交的,则有:u⋅v=0u\cdot v=0u⋅v=0. 因为对于零向量, ...

  6. 【信号去噪】基于鲸鱼算法优化VMD实现信号去噪附matlab代码

    1 内容介绍 一种基于WOAVMD算法的信号去噪方法,具体为:根据鲸鱼优化算法分别建立目标包围,发泡网攻击以及猎物搜寻的数学模型,然后进行初始化参数,在取值范围内初始化鲸鱼的位置向量,根据位置向量对原 ...

  7. 【信号去噪】基于鲸鱼优化算法优化VMD实现数据去噪附matlab代码

    1 内容介绍 一种基于WOAVMD算法的信号去噪方法,具体为:根据鲸鱼优化算法分别建立目标包围,发泡网攻击以及猎物搜寻的数学模型,然后进行初始化参数,在取值范围内初始化鲸鱼的位置向量,根据位置向量对原 ...

  8. 基于ITD实现的轴承故障信号分解并附Matlab源码

    基于ITD实现的轴承故障信号分解并附Matlab源码 轴承是旋转机械中重要的支撑部件,其状态的健康程度对设备运行的性能和寿命有着至关重要的影响.因此,轴承状态监测和故障诊断成为了研究热点.本文基于IT ...

  9. 小波变换db4进行四层分解及其信号重构—matlab分析及C语言实现

    小波变换db4进行四层分解及其信号重构 前言 一.Matlab中小波变换的相关函数 1. wavedec函数 2. wrcoef函数 二.C语言实现小波分解与重构 1. 信号分解 2. 信号重构 三. ...

最新文章

  1. java struts2 excel上传_Java Struts2 实现数据库数据导出Excel文件
  2. PYTHON黑帽编程1.5 使用WIRESHARK练习网络协议分析
  3. 如何快速搭建一个免费的,无限流量的Blog
  4. Linux C/C++多线程pthread实例
  5. windows 串口编程 c语言,windows下C语言版串口发送程序(基于VS2017)
  6. JavaScript之模仿块级作用域
  7. Laravel最佳实践--API请求频率限制(Throttle中间件)
  8. android下拉菜单刷新,android下拉刷新列表实现(pull to refresh)
  9. 学习总结:JavaScript学习分享
  10. mysql row 日志格式_mysql row日志格式下 查看binlog sql语句
  11. 从博客复制程序到VS里面出现span style=font-size:24px;strong
  12. 女性心理学:全球女性学霸时代来临
  13. Day_05 显示字符串
  14. 圣经 创世纪 1:20-22
  15. oracle sqlldr decode,sqlldr时遇到的一个问题
  16. PCU-285锡膏粘度计优点及特点
  17. Descriptive Essay文章内容怎么写?
  18. 靠写代码登上胡润富豪榜花半年写得Python基础 入门必看
  19. mac MySql 重启
  20. nb 底特律 外包公司,招人,

热门文章

  1. 乖离 暗机器人_乖离性百万亚瑟王黑暗机器人打法技巧 暗马桶攻略
  2. 移动端布局介绍——css像素/物理像素/设备像素比
  3. 双差法(HYPODD)定位软件安装教程2
  4. 功能室计算机室教学计划,计算机室教学计划
  5. java可用作分隔符的特殊符号
  6. 讲道理 | 计算正交投影算子
  7. 车型识别“A Large-Scale Car Dataset for Fine-Grained Categorization and Verification”
  8. 如何分析和研究Log文件
  9. 解决MyEclipse中resetting selection长耗时的问题
  10. c语言求解三角形的重心,计算几个三角形的重心