close all
clear all
clc
fs=1000; %采样频率
y=importdata('F:\20190302飞机数据\数据\1595\20190227111500.00000.mat');
z=y(:,1);
% z=z(180001:300000);
N=length(z); %N表示信号的长度
t=0:1/fs:(N-1)/fs;
% 设计低通滤波器
d = fdesign.lowpass(1.0,30,1,40,fs);% Fpass,Fstop,通带纹波增益(1dB)、阻带衰减(-40dB)
h = design(d);
%对信号进行低通滤波并画出波形
x1=filter(h,z);
figure;
% plot(t,x1); %滤波后信号时域图
% hold on;
fs2=38.5;
fp2=38;
fp1=29;
fs1=28.5;
[x2]=fir_bpf(z,fs,fs2,fp2,fp1,fs1)
% x2=smooth(x2,50); %利用移动平均法对x进行平滑处理
% x2=medfilt1(x2,10); %中值滤波
% [up,down] = envelope(t,x2,'linear');
[up,down] = envelope(t,x2,'linear');
plot(t,up,'m');
hold on;
plot(t,down,'m');
hold on;
grid on;
[up,down] = envelope(t,x1,'linear');
plot(t,up,'b');
hold on;
plot(t,down,'b');
hold on;
grid on;
set(gca,'XTick',[0:60:300]); % 修改x轴坐标间隔
% set(gca,'yTick',[-3000:200:3000]); % 修改y轴坐标间隔
% axis([0 300 -1000 1000]) ;
set(gca,'fontsize',18);
xlabel('时间 t/s');
ylabel('幅值');
legend('90-120Hz','','30Hz','');
title('11:15时刻30Hz、90-120Hz滤波后包络线','FontSize',18);
图像分别是这样的,毛刺特别多,尝试过中值滤波和移动平均滤波,结果还是不平滑,请各位老师指教。
111530.jpg
(21.7 KB, 下载次数: 0)
2019-3-19 10:13 上传
111590120.jpg
(16.17 KB, 下载次数: 0)
2019-3-19 10:13 上传