参考文献
[1]乔云,李琼,钱浩东,等.基于VMD与改进小波阈值的地震信号去噪方法研究[J].物探化探计算技术,2021,43(06):690-696.
引言
地震资料通常包含大量噪声,为了有效去除噪声,提高地震信号的信噪比,这里提出一种联合变分模态分解(VMD)与改进小波阈值去噪的方法。相比于传统的小波阈值函数,新构造的阈值函数克服了硬阈值函数的不连续性问题和软阈值函数中小波系数的恒定偏差问题,同时能根据实际情况灵活调节两个参数,以实现较好的阈值去噪效果。而VMD对非平稳信号分解具备较好的自适应性,能很好地应用于地震信号。将两种方法相结合可以获得更好的去噪效果。用本文提出的方法对仿真信号以及实际地震资料进行处理后,信噪比明显优于传统单一去噪方法。
改进原理五
小波软阈值函数和硬阈值函数在去噪中已经有很多应用,然而硬阈值函数在阈值点处不连续以及软阈值函数的恒定误差问题仍然会对去噪效果产生一些影响。因此笔者在前人的研究的基础上,设计了一种新的阈值函数,综合了软阈值 与硬阈值函数的特点
改进后软阈值函数
部分代码
clear;clc;close all
%改进阈值函数
figure('color','w');
option.a5_alpha=1;option.a5_beta=0.1;
SORH={'h','s','a5'};
for i=1:length(SORH)
plot(-5:0.0001:5,kwthresh(-5:0.0001:5,SORH{i},2,option),'LineWidth',1);hold on %硬阈值函数
end
% 图例
hl=legend('硬阈值函数','软阈值函数','改进阈值函数','location','NorthWest');
%关闭图例边框
set(hl,'Box','off');
% 绘制 x 轴箭头
annotation('arrow', [0.1, 0.93], [0.5183, 0.5183]);
% 绘制 y 轴箭头
annotation('arrow', [0.5183, 0.5183], [0.05, 0.95]);
% 删除坐标轴
axis off;
% 删除边框
box off;
% 阈值λ
str1 = '$$\lambda$$';
text(2, -0.2, str1, 'Interpreter', 'latex');
% 阈值-λ
str2 = '$$-\lambda$$';
text(-2.2, 0.2, str2, 'Interpreter', 'latex');
% 横坐标wj,k
str3 = '$$\omega_{j,k}$$';
text(5, -0.3, str3, 'Interpreter', 'latex');
% 纵坐标wj,k
str4 = '$$\hat{\omega}_{j,k}$$';
text(0.2, 5, str4, 'Interpreter', 'latex');
代码效果图