网站首页 > 资源文章 正文
关于变分模态分解:
变分模态分解中为什么要各个模态估计的带宽之和最小?
因为VMD是个优化问题,VMD方法首先在时域构造一个共同优化的目标,该目标在所有成分完全重构原信号的约束下追求所有成分的带宽总和最小(窄带假设)。实际上,该共同优化目标被转换到频域内通过交替乘子法ADMM求解。在频域上,该方法可以看作是对原信号中所有成分频谱系数和中心频率的共同搜索。
如何更好地对变分模态分解进行优化?
结合分数阶傅里叶变换方法。基于分数阶傅里叶变换方法FRFT对线性调频LFM信号参数估计的优点,利用FRFT估计各个模态分量的中心频率,并在信号保真项中增加关于中心频率的约束,从而提高模态分量的分解精度。
变分模态分解是如何被提出的?
受同步压缩小波变换SST中的同步分析和经验小波变换EWT中频域搜索思路,Dragomiretskiy大佬提出了变分模态分解VMD。VMD方法首先在时域构造一个共同优化的目标,该目标在所有成分完全重构原信号的约束下追求所有成分的带宽总和最小(窄带假设)。实际上,该共同优化目标被转换到频域内通过交替乘子法ADMM求解。在频域上,该方法可以看作是对原信号中所有成分频谱系数和中心频率的共同搜索。
VMD由于其频域内严格的窄带约束,共同优化以及傅里叶逆变换的使用,其分解成分具有更加细 致的频率分辨,并且分解出的模态分量更类似于调幅载波正弦的形态。这进一步使得 VMD 具有更高的噪声鲁棒性,对中心频率的估计也比EWT更加准确。
鉴于此,采用几种群体智能算法对变分模态分解进行优化分解,进而对一维时间序列信号进行降噪,运行环境为MATLAB 2018,以遗传优化算法变分模态分解为例:
function [PfvThvec,ind_m,disn_m]= threshvspfa(imfvec,N)
%% Estimation of noise EDF from rejected modes
MC=length(imfvec);
for j=1:floor(MC/N) % loop for all windows
ch=imfvec(N*(j-1)+1:N*j); % pick the jth window
[temp,tind]=ecdf(ch); % calculate ECDF
tv(:,j)=temp(2:end,1); % store value in tv
ti(:,j)=tind(2:end,1); % store index in ti
end
disn_m=mean(tv,2); % take mean value of ECDF values
ind_m=mean(ti,2);
g=0;
N=32;
thresh_min=0.001;
inc=0.001;
thresh_max=20;
%% Threshold versus Pfa curve estimation from rejected modes
threshvec = thresh_min:inc:thresh_max;
pfavec=zeros(length(threshvec),1); % vector for storing Pfa
% imfvec=zeros(s,2,length(threshvec)); % vector for storing Pfa vs Threshold values for all IMFs
% for noofimf=IMF_start:NIMF % for the first NIMF
% noofimf=3;
i=1;
g=g+1;
x=imfvec; % pick an IMF
disnref=disn_m; % pick corresponding ECDF value
indref=ind_m; % pick corresponding ECDF index
for thresh= threshvec % vary threshold
count_detection=0;
for litcount=1:floor(MC/N) % loop for all windows
z=cdfcalc(sort(x(1,N*(litcount-1)+1:N*litcount)),disnref,indref); % calculated F_eta (x)
test=cvm(z,N); % CVM statistic
if test > thresh % compare with threshold
count_detection = count_detection + 1; % increment detection count
end
end
Pfa = count_detection/floor(MC/N); % calculate Pfa
pfavec(i,1)=Pfa; % store Pfa in the vector
i=i+1;
if Pfa < 0.000005
break;
end
end
PfvThvec=[threshvec;pfavec']; % store Pfa vs Threshold values for each IMF here for later use
完整代码:https://mbd.pub/o/bread/mbd-ZJmYm5tp
此外:
MATLAB环境下基于蚁狮优化算法的变分模态分解
https://mbd.pub/o/bread/mbd-ZJmYm5ts
MATLAB环境下基于蓝鲸优化算法的变分模态分解
https://mbd.pub/o/bread/mbd-ZJmYm5pr
MATLAB环境下基于灰狼优化优化算法的变分模态分
https://mbd.pub/o/bread/mbd-ZJmYm5lv
MATLAB环境下基于天鹰优化优化算法的变分模态分解
https://mbd.pub/o/bread/mbd-ZJmYm5dy
擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。
- 上一篇: 频谱分析——频谱概念(傅里叶变换、级数、积分及物理意义)
- 下一篇: 光学衍射编程(光学 衍射)
猜你喜欢
- 2024-11-17 深入浅出讲解卡尔曼滤波(附Matlab程序)
- 2024-11-17 轻松掌握MATLAB - 1.3 帮助信息的查询与使用
- 2024-11-17 用C语言实现matlab的ifft函数,不依赖第三方库
- 2024-11-17 用C语言重新实现Matlab的FFT函数,不使用第三方库
- 2024-11-17 Matlab中fftshift的用法(matlab fft的用法)
- 2024-11-17 从1Ω电阻开始,理解功率谱密度PSD
- 2024-11-17 基于MATLAB的图像纹理频率特征研究及提取方法实现
- 2024-11-17 基于变分模态分解和Cramer von Mises检验的信号降噪方法(MATLAB)
- 2024-11-17 基于稀疏傅里叶变换的低采样率宽带频谱感知
- 2024-11-17 应用傅里叶-小波检测方式的并联型有源电力滤波器,电能质量高
你 发表评论:
欢迎- 05-24这波色彩配色方案!属于冬天
- 05-24(三色)色彩搭配方案!精美
- 05-24家庭装修,应该如何配色?大牌设计师收藏的36个色卡方案公开了
- 05-24160种穿衣配色方案,总有一种适合你
- 05-24(四色)色彩搭配方案!值得收藏
- 05-24不会色彩搭配?赶紧学会这些基本配色技巧
- 05-24超全37组高级感配色,看上去就很贵的女神范儿,照着穿就对了
- 05-24今夏,穿搭更时髦打开方式:推荐几组“配色方案”,时髦又显白
- 最近发表
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)