基于改进高斯-拉普拉斯滤波器的一维时间序列平滑与降噪(MATLAB)

以图像处理为例,拉普拉斯算子是基于图像的二阶导数来找到边缘并搜索过零点,传统的拉普拉斯算子常产生双像素宽的边缘,对于较暗区域中的亮斑进行边缘检测时,拉普拉斯运算就会使其变得更亮。因此,与梯度算子一样,拉普拉斯算子不能抑制图像的噪声。如果有一种算子能够将高斯平滑滤波器与拉普拉斯算子结合起来,在进行边缘检测之前先平滑掉噪声,一定能够取得良好的效果,因此,高斯---拉普拉斯算子被提出。鉴于此,采用一种改进的高斯-拉普拉斯滤波器对一维时间序列进行平滑与降噪,运行环境为MATLAB R2018,测试了地震信号,微震信号。

Matlab 复制代码
clc
clear 
close all
%load Input example
load mport1-1.txt
x=mport1_1';
% Sigma and Filter Order 
% Tune sigma, and N according to the application you want to use.
sigma = 0.5;
N = 10;
% For More Scaling dividing by sigma.
[Gaussian_1D_2_Diff_Modified]=IGLF(sigma,N) /sigma;
% Filtering The Input (Denoising the Input Signal)
Output = filter (Gaussian_1D_2_Diff_Modified,1,x);
% Output Squaring 
Output = Output.^2;
% For more smoothing, average movabale window is obatined for m samples
% with k stride (moving by k samples)
% Adjustce m, and k according to the application you want to use.
Output_More_Smoothing = zeros(1,size(x,2));
m = 8;
k = 1;
count = 1;
 for j=1:k:(length(Output))-max([m k])
 Output_More_Smoothing(count)=(mean(Output(j:j+m-1)));
 count = count +1;
 end
 
% Plotting 
% Plotting the Cofficients of MLOG.
figure(1)
plot( (1:N), Gaussian_1D_2_Diff_Modified, 'LineWidth',3)
xlabel('Index (n)','FontSize',14,'FontWeight','bold')
ylabel('MLOG Mask Values','FontSize',14,'FontWeight','bold')
title('MLOG MASK','FontSize',14,'FontWeight','bold')
set(gca,'fontsize',12,'FontWeight','bold')
% Plotting Input, Output of MLOG, and Smoothed Output Signal.
figure(2)
subplot(3,1,1),plot(1:length(x),x)
xlabel('Sample Index','FontSize',14,'FontWeight','bold')
ylabel('Count','FontSize',14,'FontWeight','bold')
title('Input Signal','FontSize',14,'FontWeight','bold')
set(gca,'fontsize',12,'FontWeight','bold')
subplot(3,1,2),plot(1:length(Output), Output)
xlabel('Sample Index','FontSize',14,'FontWeight','bold')
ylabel('Count^2','FontSize',14,'FontWeight','bold')
title('Output Signal of IGLF Filter','FontSize',14,'FontWeight','bold')
set(gca,'fontsize',12,'FontWeight','bold')
subplot(3,1,3),plot(1:length(Output_More_Smoothing), Output_More_Smoothing)
xlabel('Sample Index','FontSize',14,'FontWeight','bold')
ylabel('Count^2','FontSize',14,'FontWeight','bold')
title('Smoothed Output Signal','FontSize',14,'FontWeight','bold')
set(gca,'fontsize',12,'FontWeight','bold')


知乎学术咨询:
https://www.zhihu.com/consult/people/792359672131756032?isMe=1
  • 擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。
相关推荐
weixin_377634849 分钟前
【python异步多线程】异步多线程爬虫代码示例
开发语言·爬虫·python
蹦蹦跳跳真可爱58912 分钟前
Python----OpenCV(图像处理——图像的多种属性、RGB与BGR色彩空间、HSB、HSV与HSL、ROI区域)
图像处理·人工智能·opencv
人工智能教学实践18 分钟前
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
人工智能·chatgpt
Sun_light30 分钟前
队列:先进先出的线性数据结构及其应用
前端·javascript·算法
腾讯云开发者33 分钟前
腾讯云TVP走进泸州老窖,解码AI数智未来
人工智能
我是王大你是谁33 分钟前
详细比较 QLORA、LORA、MORA、LORI 常见参数高效微调方法
人工智能·llm
随意02336 分钟前
STL 6分配器
开发语言·c++
未来智慧谷36 分钟前
国产具身大模型首入汽车工厂,全场景验证开启工业智能新阶段
人工智能·汽车·智能机器人
吕小鸣1 小时前
Coze、Dify、FastGPT三大AI智能平台架构与能力对比
算法
Jamence1 小时前
多模态大语言模型arxiv论文略读(113)
论文阅读·人工智能·语言模型·自然语言处理·论文笔记