Loading...
首页专栏正文

基于Wi-Fi CSI的摔倒检测(三):CSI 数据降噪

 
1人已赏
技术凯 发布于 2020-12-23 18:19:11 浏览 4404 点赞 0 收藏 3

  由于巴特沃斯滤波器具有通频带内最平坦的特性,且在正频率范围内是随频率升高而单调下降的,3DB不变特性等等优良特性使得巴特沃斯滤波器是在数字信号处理中最常用的滤波器之一。所以我们在考虑降噪时首先考虑巴特沃斯低通滤波器。   在使用Butterworth 低通滤波器之前我们简单介绍一下数字滤波器的原理。   首先输入和输出都是数字信号,通过特定的数学算法或者运算关系或是一种数字式处理设备,改变按输入信号所含频率成分的相对比例或滤除某些频率成分的数字器件或者程序。数字滤波器是一个线性时不变系统(LSI)。数字滤波器的设计是已知它的频率特性H(e^jw),求它的系统函数H(z)或单位脉冲响应h(n)。完全实现一个理想频率特性的理想滤波器在理论上确实可以做到,但是由于实际情况的限制,实现起来很困难。所以实际的滤波器是逼近理想滤波器。 滤波器阶数越大越逼近理想滤波器但伴随着运算成本就越大,由于基于WiFi CSI的摔倒检测是一个实时性的检测程序,所以在满足降噪要求时我们尽可能要使得滤波器的阶数更低。 MATLAB 自带函数butter 就是用来设计巴特沃斯滤波器的 。 [B,A] = BUTTER(order,Wn,'high') ---用来设计高通滤波器 [B,A] = BUTTER(order,Wn,'low') designs a lowpass filter.—设计低通滤波器 [B,A] = BUTTER(order,Wn)—如果没有指示types 则表示设计带通滤波器。

其中order为滤波器阶数,wn是自然频率,也称归一化的截止频率。Wn=截止频率x2/采样频率。根据要求设计后的滤波器参数返回为B,A。 得到滤波器系数后,就可以直接用了。y=filter(B,A,x)。

巴特沃斯低通滤波器处理原始信号代码如下:

hfc = 175; %截止频率
lfc = 0;
fs = 1000; %采样频率
order = 25;

[b,a] = butter(order, hfc/(fs/2));
figure(3)
freqz(b,a)

dataIn = randn(1000,1);
dataOut = filter(b,a,y);
figure(4)
subplot(2,1,1)
plot(y)
title('original');
axis([0 1000 5 25]);
subplot(2,1,2)
plot(dataOut)
title('afterbutterworth');

结果如图: 滤波器的幅频响应和相频响应如下: 巴特沃斯高通滤波器的代码如下:

hfc =300; %截止频率
lfc = 175;
fs = 1000; % 采样频率
order = 15;

[b,a] = butter(order,hfc/(fs/2),'high'); 
figure(3)
freqz(b,a)

dataIn = randn(1000,1);
dataOut = filter(b,a,y);
figure(4)
subplot(2,1,1)
plot(y)
title('original');
axis([0 1000 5 25]);
subplot(2,1,2)
plot(dataOut)
title('afterbutterworth');

结果如图: 高通滤波器的幅频响应: 巴特沃斯带通滤波器代码如下:

hfc =200; 
lfc = 50;
fs = 1000;
order = 15;

[b,a] = butter(order,[lfc/(fs/2) hfc/(fs/2)]); 
figure(3)
freqz(b,a)

dataIn = randn(1000,1);
dataOut = filter(b,a,y);
figure(4)
subplot(2,1,1)
plot(y)
title('original');
axis([0 1000 5 25]);
subplot(2,1,2)
plot(dataOut)
title('afterbutterworth');

带通滤波器处理前后后结果对比: 带通滤波器的幅频响应:

  通过对比我们可以发现,低通滤波器可以在滤除噪声的前提下很好的保留信号的特征,所以我们选择巴特沃斯低通滤波器。但是由于巴特沃斯滤波器是基于傅里叶变换的,其变换分解的基函数是周期函数。但是由于实际情况下我们所使用的信号是随机信号,所以下节我们采用更适合本信号处理的离散小波变换对CSI信号进行进一步处理。但是尽管巴特沃斯滤波器的性能并不是最好的,但是也是数据处理中必不可少的一环。

*本文仅代表作者观点,不代表易百纳技术社区立场。系作者授权易百纳技术社区发表,未经许可不得转载。

精彩评论

内容存在敏感词
打赏
打赏作者
技术凯
您的支持将鼓励我继续创作!
金额:
¥1 ¥5 ¥10 ¥50 ¥100
支付方式:
微信支付
支付宝支付
微信支付
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

易百纳技术社区
确定要删除此文章、专栏、评论吗?
确定
取消
易百纳技术社区