小白又来记个笔记
当数据读取之后
就开始对数据进行预处理
预处理中比较重要的一个部分就是滤波
因为实际工况下得到的信号肯定是混有噪声的
从简单的开始说起
比较简单的滤波操作是中值滤波
百度上有原理介绍,很通俗易懂
中值滤波对缓慢变化的信号中由于偶然因素引起的脉冲干扰有良好的滤波效果
这里我用了师兄给我的实验室测得信号
没有噪声
我加了一串周期脉冲进去充当噪声
这是matlab代码和对比图
%此任务利用师兄第一个数据中的1500个数据,利用周期冲击作为噪声,利用中值滤波方法进行操作实验
clc;clear all;
load data;
t=0:0.01:15;
d=[0:1:100];y=pulstran(t,d,'gauspuls');
%产生周期冲击,幅值是1,t的话决定产生多少点,d是与脉冲周期、脉冲个数有关(具体未知),
y=data+y';%要转置一下
subplot(3,1,1)
plot(data);title('原信号');
subplot(3,1,2)
plot(y);title('混入噪声后信号');
y=medfilt1(y,5);%中值滤波
subplot(3,1,3)
plot(y);title('中值滤波后');