📰 正文

只用普通 WiFi 信号,就能穿墙检测人体姿态、呼吸频率和心跳。

你家的WiFi路由器每秒都在往房间里发射大量无线电波。这些电波穿过墙壁、绕过家具、碰到你的身体后反弹回来。

一直以来,我们只关心这些电波能不能帮我们上网。但有人想到了一个疯狂的主意:如果我们分析这些电波被人体干扰后的变化模式,是不是就能"看到"人在哪里、在做什么,甚至能听到他在呼吸?

答案是:可以。

WiFi 信号检测人体姿态这件事,不是科幻。2023 年卡内基梅隆大学(CMU)就发表了论文《DensePose From WiFi》,用 WiFi 信号的信道状态信息(CSI)成功还原了人体姿态,效果接近摄像头方案。这项研究已经被同行评审,发表在正式学术刊物上。

image

原理:WiFi信号里藏着"人体指纹"

要理解这个项目,首先要知道一个概念:信道状态信息(CSI,Channel State Information)。

普通用户连WiFi时只能看到信号强度(就是手机上那几格信号)。但在底层,WiFi信号其实是由几十个"子载波"组成的,每个子载波都有自己的振幅和相位。当人在房间里移动,甚至只是胸腔因呼吸而微微起伏时,这些子载波的振幅和相位就会发生极其细微的变化。

image

WiFi DensePose 的核心就是:捕获这些变化 → 用信号处理算法去噪 → 用 AI 模型解读 → 输出人体姿态和生理指标。

整个流程可以这样理解:

WiFi路由器发射信号 → 信号穿过房间碰到人体 → 散射模式发生变化 → ESP32芯片以每秒20次的频率捕获56个子载波的振幅和相位 → 6层信号处理算法清洗数据 → AI骨干网络(RuVector)做注意力计算和图算法 → 神经网络输出17个身体关节点 + 呼吸频率 + 心率 → 实时展示。

不需要训练用的摄像头,模型能从原始WiFi数据自监督学习。

它声称能做什么

WiFi DensePose 的核心卖点是:用 WiFi 信号替代摄像头,实现以下能力。

image

这里最让人印象深刻的两个数字:一是54,000帧/秒的处理速度(Rust重写后比Python版快了810倍),二是5米的穿墙深度,意味着它真的能"透视"一堵30厘米厚的混凝土墙。

只要8美元的硬件

WiFi DensePose 提供了三种硬件方案:

image

ESP32 Mesh(推荐):3-6个ESP32-S3芯片加一个WiFi路由器,总成本大约54美元(单个芯片约8美元)。这是唯一能获得完整CSI数据的消费级方案,支持全部功能:姿态估计、呼吸、心跳、运动、在场检测。

研究级网卡:Intel 5300或Atheros AR9580,50-100美元,需要刷固件,仅限Linux。

任何普通WiFi:你现有的笔记本就行,但只能获取RSSI数据(就是信号强弱),功能大打折扣,只能做粗略的在场检测。

换句话说,一个8美元的芯片就能让你的房间具备"感知"能力。

应用场景:从救命到"细思恐极"

这个项目列举了极其丰富的应用场景,从温暖到冰冷,覆盖面远超预期。

image

温暖的一面

养老院和居家养老:每个房间放一个ESP32(8美元),就能实现跌倒检测(报警延迟<2秒)、夜间活动监测、睡眠呼吸监测。老人不需要戴任何设备,不需要忍受被摄像头"看着"的感觉。

医院病房:给非重症病床提供持续的呼吸和心率监测,不需要接线,护士站出现异常自动报警。

智能家居:穿墙的在场检测意味着再也不会有"你明明在卫生间,客厅的灯自己灭了"的尴尬。灯光、空调、音乐可以精确跟随你在房间之间的移动。

酒店节能:精确判断房间是否有人,空房自动调低空调,据估算可节省15-30%的暖通能耗。

专业的一面

搜救(WiFi-Mat模块):这是项目中最硬核的部分。地震废墟下,摄像头和热成像仪都进不去的地方,WiFi信号可以穿透混凝土、木材、石膏板。WiFi-Mat能通过检测废墟下微弱的呼吸信号来发现幸存者,还能用START分诊协议自动对伤员分级(红色/黄色/绿色/黑色)。

消防:在充满浓烟的建筑里,摄像头完全失效,但WiFi信号不受影响。消防员进入之前就能知道里面还有没有被困人员。

零售客流分析:没有摄像头意味着天然GDPR友好。实时统计各区域客流、停留时间、排队长度,顾客完全无感知。

“细思恐极"的一面

项目也非常坦率地列出了军事和安全相关的应用:穿墙人员探测、房间清理确认、人质生命体征远距离监测、边境隧道探测、监狱牢房占用验证。

这让人不由得想到一个问题:如果8美元的芯片就能实现穿墙监控,那大规模隐蔽监控的门槛正在变得极低,而且不需要任何摄像头,传统的反监控手段(比如找摄像头)完全失效。

技术深度:不只是"WiFi版摄像头”

这个项目在技术上有几个值得关注的亮点。

Rust重写:810倍加速

项目最初用Python实现,后来全部用Rust重写。全流程处理速度从每帧15毫秒降到18微秒,提升了810倍。最夸张的是运动检测,从1毫秒降到186纳秒,提速5400倍。Docker镜像从569MB压缩到132MB,测试从41个增加到542+个。

自学习系统(ADR-024)

模型只有55KB大小,能直接运行在ESP32芯片上(可用内存520KB中占55KB)。更关键的是,它能从原始WiFi数据自监督学习,不需要标注数据,不需要摄像头辅助。插上电源等10分钟,它就能学会这个房间的"WiFi指纹"。

它能做到的事情包括:识别不同房间(每个房间有独特的WiFi散射模式)、检测异常(陌生人进入会产生未见过的指纹)、个人识别(每个人干扰WiFi的方式略有不同)。

跨环境泛化(MERIDIAN)

WiFi感知领域一直有一个大问题:在A房间训练的模型,搬到B房间准确率暴跌40-70%,因为模型记住了房间特有的多径传播模式,而不是人体运动的通用规律。

MERIDIAN通过对抗训练解决这个问题:训练一个分类器去猜数据来自哪个房间,同时训练主网络去欺骗这个分类器。最终效果是,模型被迫"忘记"房间特征,只保留人体运动信息。部署到新房间时,用几帧未标注数据就能快速适应。

信号处理:6个顶会级算法

项目实现了6个来自顶级学术会议的信号处理算法:SpotFi的共轭乘法(消除载波频偏)、Hampel滤波器(比标准Z-score更抗污染的异常值剔除)、FarSense的菲涅尔区模型(物理建模呼吸信号)、CSI频谱图(时频分解区分呼吸和走动)、WiDance的子载波选择(只用对运动敏感的通道,提升6-10dB信噪比)、Widar 3.0的体速度剖面(跨环境域无关的运动特征)。

适合谁关注

硬件/嵌入式开发者: 如果你有 ESP32 开发经验,可以拿来做 CSI 采集实验,项目的信号处理管线可以当学习参考。

学术研究者: 项目引用了大量 WiFi 感知领域的论文(虽然引用准确性有争议),整体框架可以作为 survey 的补充材料。

物联网创业者: WiFi 人体感知是个有商业潜力的方向,了解技术边界和当前进展是有价值的。

普通读者: 了解就好。这个技术离"装个 App 就能用"还有很远的距离。

30秒体验

docker pull ruvnet/wifi-densepose:latest
docker run -p 3000:3000 ruvnet/wifi-densepose:latest
# 打开 http://localhost:3000

没有硬件也能跑,模拟模式会生成合成数据展示完整的信号处理流水线和UI界面。想要真实感知功能,需要准备ESP32-S3硬件。

一个值得思考的问题

WiFi DensePose 这个项目本身可能还不成熟,但它指向的技术方向是不可忽视的。

当你家的路由器不仅能联网,还能"感知"到你在哪个房间、在做什么动作、心跳是否正常的时候,我们对"隐私"的定义可能需要重写。


本文参考:GitHub 项目 ruvnet/wifi-densepose | CMU 论文 DensePose From WiFi (2023) 社区讨论:Hacker News、GitHub Issue #37


来源:WiFi-DensePose :不用摄像头 通过WiFi 就能"看见"你的姿势和心跳