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

技术凯 2020-12-21 18:20:26 18980

  由于巴特沃斯滤波器具有通频带内最平坦的特性,且在正频率范围内是随频率升高而单调下降的,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信号进行进一步处理。但是尽管巴特沃斯滤波器的性能并不是最好的,但是也是数据处理中必不可少的一环。

声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
红包 点赞 6 评论 打赏
评论
0个
内容存在敏感词
手气红包
    易百纳技术社区暂无数据
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
技术凯
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

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

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区