matlab 数字滤波器处理振动信号

我用matlab设计数字滤波器对一段振动加速度的信号进行处理,按道理说处理后峰值会降低,但有部分峰值呈现增加的状态,请教一下我哪儿出错了

clc,clear;
acc=xlsread('acc.xlsx');
Fs=200;
fpl=4;fph=12.5;fsl=0.1;fsh=100;
wpl=fpl*2*pi/Fs;wph=fph*2*pi/Fs;
wsl=fsl*2*pi/Fs;wsh=fsh*2*pi/Fs;%通带阻带截止频率
wp=[wpl wph];ws=[wsl wsh];
wap=2*Fs*tan(wp/2);
was=2*Fs*tan(ws/2);%模拟滤波器的技术指标
rp=1;rs=60;%衰减系数
[n,wac]=buttord(wap,was,rp,rs,'s');%阶次和截止频率
[b,a]=butter(n,wac,'s');
[B,A]=bilinear(b,a,Fs);%转换为数字滤波器
[h,w]=freqz(B,A);
plot(w*100/pi,abs(h));
ACC=filter(B,A,acc);

图片说明

图片说明

https://baike.baidu.com/item/MATLAB%E5%9C%A8%E6%8C%AF%E5%8A%A8%E4%BF%A1%E5%8F%B7%E5%A4%84%E7%90%86%E4%B8%AD%E7%9A%84%E5%BA%94%E7%94%A8/5767612?fr=aladdin