ICASSP 2023 | Cough Detection Using Millimeter-Wave FMCW Radar

原文链接:https://mp.weixin.qq.com/s?__biz=Mzg4MjgxMjgyMg==&mid=2247486540&idx=1&sn=6ebd9f58e9f08a369904f9c48e12d136&chksm=cf51beb5f82637a3c65cf6fa53e8aa136021e35f63a58fdd7154fc486a285ecde8b8521fa499#rd

ICASSP 2023 | Cough Detection Using Millimeter-Wave FMCW Radar

毫米波感知论文阅读 | ICASSP 2023, Cough Detection Using Millimeter-Wave FMCW Radar

picture 0

Abstract

  • 研究内容

    • 提出了一种使用毫米波FMCW雷达检测人体咳嗽信号的信号处理方法

      ✅ 利用FMCW雷达的相位解调技术可以提取咳嗽引起的微小振动

      ✅ 采用身体运动伪像消除(BMAC)技术可以抑制运动伪像 ⇒ \Rightarrow (运动伪像可以轻易掩盖小振动)

      ✅ 即使存在大规模身体运动也可以测量咳嗽信号的振动频率

  • 实验验证

    • 进行了 仿真 来评估所提出方法检测咳嗽信号的概率和准确性

      ✅ 包括分析了FMCW线性调频非线性的影响

    • 提出的技术还通过 60 GHz FMCW雷达进行了验证实验

  • 贡献总结

    • 首次使用FMCW雷达实现了咳嗽信号的检测

      ✅ 提出了身体运动伪像消除(BMAC)技术, 在存在身体运动的情况下检测咳嗽

    • 通过仿真验证结果,分析了FMCW非线性性的影响

    • 60GHz真实实验验证了所提出方法的有效性

1 Introduction

研究的背景和意义

  • 传染病蔓延,对健康监测需求增长
  • 毫米波雷达受关注,能远程监测生命体征
    • 仅监测生命体征不足以判断呼吸状况
    • 咳嗽是判断呼吸系统疾病的关键症状

毫米波咳嗽检测的挑战和问题

  • 声音方法可侵犯隐私,受声学噪声影响

  • 毫米波不受声学噪声影响,但研究很少

    🚩 挑战:咳嗽带来大规模身体运动,运动伪像可压倒小振动

    🚩 已有方法的不足 :仅检测咳嗽行为,不提取特征 + 未充分解决运动伪像问题

本文创新和贡献

  • 检测包含大规模运动的咳嗽
    • 提出身体运动伪像消除(BMAC)技术
  • 通过仿真和实验进行了验证

2 Signal Model and Methodology

  • 咳嗽信号的信号模型
  • 使用FMCW雷达的检测方法
    • 运动伪像消除技术
  • 数值仿真

2.1. FMCW radar signal model

  • FMCW雷达的信号模型

    • 在相干处理时间内发射M次脉冲
    • 每个脉冲为FMCW线性调频信号
  • 发射信号

    • s T X ( t , m ) = 1 N c p ( t − m T p ) s_{TX}(t,m) = \frac{1}{\sqrt{N_c}}p(t-mT_p) sTX(t,m)=Nc 1p(tmTp)
    • p ( t ) = e j ( 2 π f 0 t + π γ t 2 ) p(t)=e^{j(2\pi f_0t+\pi\gamma t^2)} p(t)=ej(2πf0t+πγt2)
    • N c N_c Nc - 脉冲数, T p T_p Tp - 脉冲重复间隔
    • γ \gamma γ - 频率斜率, f 0 f_0 f0 - 载波频率
  • 接收信号

    • s R X ( t , m ) = α s T X ( t − 2 ( d 0 + x [ m ] ) c , m ) + w c ( t , m ) s_{RX}(t,m) = \alpha s_{TX}(t-\frac{2(d_0+x[m])}{c},m) + w_c(t,m) sRX(t,m)=αsTX(tc2(d0+x[m]),m)+wc(t,m)
    • α \alpha α - 衰减系数, d 0 d_0 d0 - 初始距离
    • x [ m ] x[m] x[m] - 目标运动, w c w_c wc - 噪声
  • 离散后基带信号

    • s b [ k , m ] = α e j 4 π c ( d 0 + x [ m ] ) ( f 0 + γ k ) + w c [ k , m ] s_b[k,m] = \alpha e^{j\frac{4\pi}{c}(d_0+x[m])(f_0+\gamma k)} + w_c[k,m] sb[k,m]=αejc4π(d0+x[m])(f0+γk)+wc[k,m]
    • 用于后续检测分析
  • 总结:建立了FMCW雷达的精确信号模型

    • 包含线性调频发射信号
    • 考虑了目标运动、距离、噪声等参数

2.2. Cough vibration and body motion artifacts

  • 分析:目标运动的两种组成成分

    • 咳嗽振动 v [ m ] v[m] v[m]
    • 身体运动伪像 y [ m ] y[m] y[m]
  • 咳嗽振动:

    • 使用谐波模型表示

      v [ m ] = ∑ l = 1 L A v , l sin ⁡ ( 2 π l f v m ) v[m] = \sum\limits_{l=1}^{L}A_{v,l}\sin(2\pi l f_vm) v[m]=l=1LAv,lsin(2πlfvm)

      L L L - 谐波数, A v , l A_{v,l} Av,l - 振幅, f v f_v fv - 基频

    • 咳嗽振动特点

      🚩 幅值较小(小于0.5mm)

      🚩 频率范围80-240Hz

  • 身体运动伪像: (特点)

    • 幅值较大(大于0.1 m)
    • 频谱从直流分量开始

picture 2

  • 两者的区别

    • 幅值大小不同
    • 频率范围不同
  • 分析得到问题的关键

    • 运动伪像会覆盖咳嗽振动
    • 需要对两者进行区分

2.3. Signal processing method

  • 目标 :

    • 从接收信号中提取咳嗽振动 v [ m ] v[m] v[m]
  • 挑战 :存在身体运动伪像

  • 步骤1:估计身体运动的相位

    • ϕ [ k , m ] = ∠ s b [ k , m ] = tan ⁡ − 1 ( I m ( s b [ k , m ] ) R e ( s b [ k , m ] ) ) \phi[k,m] = \angle s_b[k,m] = \tan^{-1}\left(\frac{Im(s_b[k,m])}{Re(s_b[k,m])}\right) ϕ[k,m]=sb[k,m]=tan1(Re(sb[k,m])Im(sb[k,m]))
  • 步骤2:相位补偿消除身体运动

    • ϕ ^ [ k , m ] = moving average of  ϕ [ k , m ] \hat{\phi}[k,m] = \text{moving average of } \phi[k,m] ϕ^[k,m]=moving average of ϕ[k,m]
    • h c = e − j ϕ ^ [ k , m ] h_c = e^{-j\hat{\phi}[k,m]} hc=ejϕ^[k,m]
    • s ^ b = s b ⊙ h c \hat{s}_b = s_b \odot h_c s^b=sbhc
  • 步骤3:FFT距离压缩

    • s c [ m ] = F F T ( s ^ b [ ∗ , m ] ) s_c[m] = FFT(\hat{s}_b[*,m]) sc[m]=FFT(s^b[,m])
  • 步骤4:FFT提取咳嗽频率

    • S c [ l ] = F F T ( s c [ m ] ) S_c[l] = FFT(s_c[m]) Sc[l]=FFT(sc[m])
    • f ^ v = arg ⁡ max ⁡ ∣ S c [ l ] ∣ \hat{f}_v = \arg\max |S_c[l]| f^v=argmaxSc[l]

总结:

  • 关键技术 :

    • 相位信息提取
    • 相位补偿
    • FFT范围压缩
  • 处理流程 :

    • 估计相位->补偿消除运动->FFT范围压缩->FFT提取频率

2.4. Effect of FMCW chirp non-linearity

  • FMCW线性调频信号可能存在非线性

  • 非线性成分 :

    • 周期性偏差: Δ f p = 2 π A p sin ⁡ ( 2 π f p t ) \Delta f_p = 2\pi A_p\sin(2\pi f_pt) Δfp=2πApsin(2πfpt)
    • 随机偏差: w f [ k ] ∼ N ( 0 , σ f 2 ) w_f[k] \sim \mathcal{N}(0,\sigma_f^2) wf[k]N(0,σf2)
  • 线性调频带非线性 :

    • f c h i r p [ k ] = γ k + f 0 + Δ f p + w f [ k ] f_{chirp}[k] = \gamma k + f_0 + \Delta f_p + w_f[k] fchirp[k]=γk+f0+Δfp+wf[k]
  • 周期性偏差影响:

    • 可通过相位补偿消除
    • 不影响最终咳嗽检测
  • 随机偏差影响:

    • 导致相位估计错误
    • 影响运动消除效果
    • 降低咳嗽检测性能

3 Numerical Simulations

  • 进行了数值模拟来评估和验证所提出的雷达系统检测咳嗽信号
    • 使用了具有2 GHz带宽的FMCW线性调频脉冲
    • 脉冲重复间隔(PRI)为2.5 kHz,相干积累间隔(CPI)为2秒
    • 使用了0.25米位移的随机身体运动
    • 为噪声模拟,进行了1000个样本的蒙特卡罗模拟

进行了3项仿真:

  • 1 评估了根据振动幅度的检测概率随信噪比的变化

    • 检测频率峰值的判据设定为5 dB

    • 在没有身体运动的情况下,所需的SNR随振动检测线性减小:

      S N R r e q ∝ A v SNR_{req} \propto A_{v} SNRreqAv

    picture 0

    • 在存在身体运动的情况下,需要大于约-13 dB的较大SNR来检测20 um的振动幅度

    picture 1

    • 当振动幅度减小时,需要更大的信号功率来增加检测概率
    • 作用:从模拟结果可以设计雷达系统规格及其覆盖范围以进行咳嗽检测
  • 2 评估了检测10 um振动的振动频率的均方根误差(RMSE)随SNR的变化

    • 如下图,没有使用BMAC时的RMSE远大于使用BMAC时的RMSE

    picture 2

    • 当SNR大于10 dB时,所提出的BMAC技术可以提供与没有身体运动情况下相同的检测精度
    • 这里,周期性振动的Cramer-Rao下界简单计算为 C R L B ≈ 6 σ 2 π 2 E A v , 1 2 CRLB \approx \frac{6\sigma^2}{\pi^2E{A_{v,1}}^2} CRLBπ2EAv,126σ2
  • 3 分析了FMCW线性调频脉冲非线性的影响

    • 周期性偏差不会影响检测精度,因为BMAC算法具有非线性缓解作用
    • 随机频率偏差会影响身体运动抑制的性能, 如下图

    picture 3

    • σ f \sigma_f σf=3 MHz时,很难估计振动,因为所提出的BMAC算法未能准确提取身体运动

4 Experiment Result

  • 使用60 GHz FMCW雷达进行了咳嗽检测实验

    • 人体目标位于0.8米处

    • 受测时自愿咳嗽

    • 雷达参数:

      picture 4

  • 为了比较检测到的咳嗽频率峰值,对处理后的信号执行短时傅里叶变换(STFT)

    picture 6

    • 由于CPI内咳嗽的基本频率不是常数 ⇒ \Rightarrow 用RMSE和RMSPE评估精度

    • 测量结果:

      picture 5

    • 使用所提出的雷达系统检测咳嗽信号的RMSE降低到9Hz,相对应频率误差4.4%

    • 不使用BMAC算法时检测咳嗽频率的RMSE为76Hz,对应误差33%

  • 实验结论:方法有效

5 Conclusion

  • This paper:
    • a signal model
    • a processing procedure
    • numerical simulations
    • experimental validation

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/52133.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Qt中postevent造成内存泄漏问题的通用解决方案

在Qt中由QCoreApplication统一管理Qt事件的收发和销毁,其中sendEvent为阻塞式发送,用于单线程的事件发送;postevent为非阻塞式发送,构造事件的线程和接受事件的线程可以为两个线程。 最近在做一个个人项目ShaderLab 需要绘制OpenGL实时渲染的图像,由于OpenGL渲染基本都放…

论文笔记——Influence Maximization in Undirected Networks

Influence Maximization in Undirected Networks ContributionMotivationPreliminariesNotations Main resultsReduction to Balanced Optimal InstancesProving Theorem 3.1 for Balanced Optimal Instances Contribution 好久没发paper笔记了,这篇比较偏理论&…

python+django+mysql项目实践一(环境准备)

python项目实践 环境说明: Pycharm 开发环境 Django 前端 MySQL 数据库 Navicat 数据库管理 创建Pycharm项目 安装Django 在pycharm文件—设置进行安装 新建Django项目 注意项目创建目录 项目默认目录文件说明: __init__.py asgi.py 【异步接受网络…

深度学习实践——模型推理优化练习

系列实验 深度学习实践——卷积神经网络实践:裂缝识别 深度学习实践——循环神经网络实践 深度学习实践——模型部署优化实践 深度学习实践——模型推理优化练习 深度学习实践——模型推理优化练习 模型推理优化练习架构设计练习知识蒸馏练习模型剪枝练习参数量化练…

如何高效实现文件传输:小文件采用零拷贝、大文件采用异步io+直接io

一般会如何实现文件传输? 服务器提供文件传输功能,需要将磁盘上的文件读取出来,通过网络协议发送到客户端。如果需要你自己编码实现这个文件传输功能,你会怎么实现呢? 通常,你会选择最直接的方法&#xf…

QT基于TCP协议实现数据传输以及波形绘制——安卓APP及Windows程序双版本

文章代码有非常非常之详细的解析!!!诸位可放心食用 这个玩意我做了两个,一个是安卓app,一个是Windows程序。代码并非全部都是由我从无到有实现,只是实现了我想要的功能。多亏了巨人的肩膀,开源…

小研究 - 一种复杂微服务系统异常行为分析与定位算法(一)

针对极端学生化偏差(Extreme Studentized &#…

Java中的生产者/消费者模型

一、什么是生产者/消费者模型 生产者-消费者模型(Producer-Consumer problem)是一个非常经典的多线程并发协作的模型。 比如某个模块负责生产数据,而另一个模块负责处理数据。产生数据的模块就形象地被称为生产者;而处理数据的模…

后端一次返回大量数据,前端做分页处理

问题描述&#xff1a;后端接口返回大量数据&#xff0c;没有做分页处理&#xff0c;不支持传参pageNum&#xff0c;pageSize 本文为转载文章&#xff0c;原文章&#xff1a;后端一次返回大量数据&#xff0c;前端做分页处理 1.template中 分页 <el-paginationsize-chang…

39.手机导航

手机导航 html部分 <div class"phone"><div class"content"><img class"active" src"./static/20180529205331_yhGyf.jpeg" alt"" srcset""><img src"./static/20190214214253_hsjqw…

DHCP部署与安全详解

文章目录 一、DHCP是什么&#xff1f;二、DHCP相关概念三、DHCP优点四、DHCP原理1. 客户机发送DHCP Discovery广播包&#xff08;发现谁是DHCP服务器&#xff09;2. 服务器响应DHCP Offer广播包3. 客户机发送DHCP Request广播包4. 服务器发送DHCP ACK广播包 五、DHCP续约六、部…

ElasticSearch基本使用--ElasticSearch文章一

文章目录 官网学习必要性elasticsearch/kibana安装版本数据结构说明7.x版本说明ElasticSearch kibana工具测试后续我们会一起分析 官网 https://www.elastic.co/cn/ 学习必要性 1、在当前软件行业中&#xff0c;搜索是一个软件系统或平台的基本功能&#xff0c; 学习Elastic…

使用 OpenCV 进行图像模糊度检测(拉普拉斯方差方法)

写在前面 工作中遇到&#xff0c;简单整理人脸识别中&#xff0c;对于模糊程度较高的图像数据&#xff0c;识别率低&#xff0c;错误率高。虽然使用 AdaFace 模型&#xff0c;对低质量人脸表现尤为突出。但是还是需要对 模糊程度高的图像进行丢弃处理当前通过阈值分类&#xff…

Java开发中的分层开发和整洁架构

分层开发(横向拆分) 分层开发的概念: maven多模块开发项目管理.可以利用这种管理功能,实现一个项目的多层次模块开发–分层开发. 比如,当前项目HelloController依赖HelloService 这样做目的: 复杂开发过程.解耦(不调整依赖关系,无法解耦).分层开发(横向拆分)和纵向拆分的区别…

c# 此程序集中已使用了资源标识符

严重性 代码 说明 项目 文件 行 禁止显示状态 错误 CS1508 此程序集中已使用了资源标识符“BMap.NET.WindowsForm.BMapControl.resources” BMap.NET.WindowsForm D:\MySource\Decompile\BMap.NET.WindowsForm\CSC 1 活动 运行程序时&a…

【机器学习】Feature Engineering and Polynomial Regression

Feature Engineering and Polynomial Regression 1. 多项式特征2. 选择特征3. 缩放特征4. 复杂函数附录 首先&#xff0c;导入所需的库&#xff1a; import numpy as np import matplotlib.pyplot as plt from lab_utils_multi import zscore_normalize_features, run_gradien…

session反序列化+SoapClientSSRF+CRLF

文章目录 session反序列化SoapClientSSRFCRLF前言bestphps revengecall_user_func()方法的特性SSRFCRLF组合拳session反序列化 解题步骤总结 session反序列化SoapClientSSRFCRLF 前言 从一道题分析通过session反序列化出发SoapClientSSRF利用CRLF解题 bestphp’s revenge 首…

超详细的74HC595应用指南(以stm32控制点阵屏为例子)

74HC595是一款常用的串行输入/并行输出&#xff08;Serial-in/Parallel-out&#xff09;移位寄存器芯片&#xff0c;在数字电子领域有着广泛的应用。它具有简单的接口和高效的扩展能力&#xff0c;成为了许多电子爱好者和工程师们的首选之一。本文将深入介绍74HC595芯片的功能、…

UE5、CesiumForUnreal加载无高度地形

文章目录 1.实现目标2.实现过程3.参考资料1.实现目标 在UE5中,CesiumForUnreal插件默认的地形都是带高度的,这里加载没有高度的地形,即大地高程为0,GIF动图如下: 2.实现过程 参考官方的教程,下载无高度的DEM,再切片加载到UE中。 (1)下载无高度地形DEM0。 在官方帖子…

网络安全(黑客)自学——从0开始

为什么学习黑客知识&#xff1f;有的人是为了耍酷&#xff0c;有的人是为了攻击&#xff0c;更多的人是为了防御。我觉得所有人都应该了解一些安全知识&#xff0c;了解基本的进攻原理。这样才可以更好的保护自己。这也是这系列文章的初衷。让大家了解基本的进攻与防御。 一、怎…