本帖最后由 matlab9038 于 2019-9-11 10:22 编辑 最近在研究变分模态分解(VMD)对复合仿真信号进行分解,对于分解的效果一直不是很满意。在分析的过程中只调节了alpha和K的值,我在网上查到了一些资料,alpha代表每个模态初始中心约束强度,K代表模态数,这两个参数对分解的结果影响比较大。alpha的值初始值为2000,在分析仿真信号时,我一般会把K的值设为分量的个数,但是得到的结果不是很理想,目前的疑问有如下几点: 1. alpha的值如何调节,才能使分解的结果和原始信号比较符合; 2. 在分析仿真信号时,假如由已知的3个信号(其中一个信号为噪声信号)合成了复合信号,对复合信号分解时,K值设为3,但是分解出的信号会受到噪声的影响,如果K设为2的话,得到的分解结果比较理想,但是我不太明白为什么会这样?在处理实验得到的数据时又该如何确定K的值?请问有什么方法呢? 3.变分模态分解得到的分信号形状和原始的分信号一模一样吗?还是只是得到原始信号中不同频率的分信号?我在网上看到这样一种说法,变分模态分解认为信号是由不同频率占优的子信号叠加而成,这个意思是指变分模态分解得到的分信号形状和原始的不一定一样吗?是不是只需要分解后的各信号中包含不同的频率就行了?希望懂的人可以解答一下哦 |
24 条回复
朋友我最近也在想究竟怎么确定阿尔法值和K值的大小分解效果更好,你现在搞清楚了吗?搞清楚了的话可以麻烦您帮我讲解讲解吗?:'( 还有各个imf的中心频率怎么确定啊? |
我想毕业! 发表于 2019-9-15 19:21 你好,请问阿尔法值怎么确定你弄清楚了没啊,中心频率好像看那个omega? |
我也用的VMD 去分解时间序列 发现的确是imf和原序列重合不了 而且拟合程度不高 不像EEMD和EMD CEEMD 这样会影响我的预测吗 还有IMF 的个数如何去确定啊 是不是将imf进行傅里叶变换看是否模态混叠 |
#99# 发表于 2019-11-6 11:32 应该确定VMD的分解个数和alpha值,这两个很重要 |
matlab9038 发表于 2019-11-6 21:40 到底该如何确定? |
#99# 发表于 2019-11-8 21:27 有很多方法,峭度准则、基于。。算法的参数优化,目前我也还没弄清楚 |
alpha - the balancing parameter of the data-fidelity constraint 数据保真度约束的平衡参数???? 代码注释的怎么跟你们说的不太一样? |
这个贡献率怎么跑出来啊,有计算过的没 |
参数优化变分模态分解的代码可以分享一下吗? |
matlab9038 发表于 2020-1-7 17:16 我昨天才开始准备做,想用粒子群优化优化这两个参数,目前还有做出来,楼主有相关的代码可以分享一下吗?万分感谢 |
#99# 发表于 2019-11-6 11:32 楼主大大可以请教您一下怎么用VMD分解自己的时间序列数据嘛:loveliness: |
我是写了粒子群优化VMD,但是运行速度挺慢、因为粒子群初始参数随机化的问题,每次优化结果都不同 |
matlab9038 发表于 2019-11-6 21:40 请问楼主有优化VMD a和K 参数的优化算法的代码吗,很急需,能给予万分感谢 |
康康康康 发表于 2020-9-14 11:23 请问 能不能一起交流一下VMD呀 :'( |
冷冷的eason 发表于 2020-2-17 13:10 请问您可以分享一下您的VMD优化算法吗 |
请问有人知道中心频率怎么计算啊,是程序运行出来的Omega每一列的最后一个数就是对应每个模态的中心频率吗,但是只有零点几啊,为什么呢? |
康康康康 发表于 2021-3-15 10:00 中心频率乘以采样频率就是实际的频率 |
yumiyyd 发表于 2020-11-23 10:33 请问您可以分享一下您的VMD优化算法吗 |
Powered by Discuz! X3.4
© 2001-2022