RuView:将日常WiFi信号转化为实时空间智能与生命体征监测
速览
RuView利用商品WiFi设备发射的无线信号,在无任何视觉传感器的情况下,实时感知空间内人员位置、呼吸频率等生命体征,并检测是否存在人员。适用于隐私敏感场景(如老人看护、智能家居)和复杂环境下的无感监测。
AI 深度解读
这是什么
ruvnet/RuView 是一个开源的边缘空间感知系统(主语言 Rust,GitHub ★76509),它把普通的 WiFi 路由器变成一套无需摄像头、无需穿戴设备的接触式传感器。系统使用低成本 ESP32 微控制器(最低 $9/节点)捕获 WiFi 信道状态信息(Channel State Information, CSI),通过脉冲神经网络和预训练模型实时分析环境中人体的存在、呼吸、心率、活动以及房间级占位状态,并能穿透墙壁、在完全黑暗的环境下工作。
RuView 原生集成四大智能家居生态:Home Assistant(通过 HA-DISCO MQTT)、Apple Home / HomePod(作为 HAP-1.1 桥接设备)、Google Home 和 Amazon Alexa(通过同一 HA 桥接或 Matter 端点)。用户可以直接用 Siri、Google Assistant 或 Alexa 语音查询房间内人员状态和生命体征,无需编写自定义技能。
项目提供完整的硬件固件、边缘服务器、预训练模型(Hugging Face 上的 ruvnet/wifi-densepose-pretrained,4-bit 量化后仅 8KB)、以及 105 个边缘模块目录,所有处理都在本地完成,无需云端。
解决的问题
传统室内人体感知方案存在明显短板:
- 摄像头视觉方案:隐私风险高,无法穿墙,弱光/黑暗环境失效。
- 穿戴设备:需要用户主动佩戴,不适于老人、婴儿或非固定场景,且需要充电。
- 专用传感器(红外、激光雷达等):成本高,部署复杂,覆盖范围有限。
RuView 提出一个纯射频方案:利用现有 WiFi 路由器发射的无线电波在空间中传播时会被人体扰动这一物理现象,通过分析 CSI 随时间的微妙变化来推断位置、运动和生命体征。系统不依赖互联网,所有推理在边缘(ESP32 或本地树莓派)完成,无隐私泄露风险。最终实现:用已有的 WiFi 基础设施 + $9 的 ESP32 芯片,就能获得相当于摄像头+可穿戴设备的感知能力。
核心功能
- 存在检测与人员计数:穿墙检测房间内是否有人,区分单人/多人,跟踪进出事件。使用最小割(mincut)算法实现准确人员计数。
- 生命体征监测:无接触测量呼吸频率和心率,可在睡眠或静坐状态下持续监测。提供 BreathingExtractor 和 HeartRateExtractor 等 Python 接口。
- 活动识别:从时域 CSI 模式识别行走、静坐、手势、跌倒等动作。预训练模型(wifi-densepose-pretrained)实现 82.3% 的时域三元组准确率(held-out,无标签),模型仅 8KB(4-bit 量化),可在树莓派上以微秒级速度运行。
- 环境映射:利用射频指纹区分房间、检测家具移动、识别新增物体。
- 睡眠质量分析:整夜监测,包含睡眠阶段分类和初筛呼吸暂停。
- 多生态原生集成:每个节点暴露 21 个实体(11 个原始信号 + 10 个推断状态,如
someone-sleeping,possible-distress,room-active,fall-risk-elevated,bed-exit等),附带 3 个 Home Assistant 蓝图。通过--mqtt参数即可接入 Home Assistant,或作为 Matter 桥接接入 Apple Home / Google Home / Alexa / SmartThings。 - 边缘模块目录:105 个可直接在 ESP32 上运行的边缘模块,覆盖 CSI 预处理、SNN 学习、证人链(Ed25519)等能力,无需网络。
亮点 / 与同类相比
相比之下,现有 CSI 人体感知项目(如 WiFi-based respiration monitoring、WiFi CSI Action Recognition 研究项目)多停留在实验室原型阶段,依赖昂贵 USRP 或专用网卡,且缺乏完整的集成生态和易用性工具链。RuView 在多个维度具有显著优势:
| 维度 | RuView | 同类竞品(典型研究/开源) |
|------|--------|---------------------------|
| 硬件成本 | $9 ESP32-S3/C6 | 通常需要 USRP 或 Intel 5300 网卡($100+) |
| 部署复杂度 | 一键刷固件 + --mqtt 接入 HA | 需手动搭建 Python 处理 pipeline,无现成集成 |
| 模型大小与速度 | 8KB 4-bit 量化模型,树莓派微秒级推理 | 典型模型 > 10MB,推理需 GPU |
| 智能家居集成 | 四大平台原生支持(HA、Apple、Google、Alexa) | 无集成或仅限 MQTT 桥接 |
| 隐私与离线 | 全边缘处理,无需云、无需互联网 | 多数需服务器或依赖云端 |
| 环境适应性 | 30 秒内自适应(SNN 学习),利用邻居路由器作为免费雷达照明 | 通常需手动校准 |
| 精度 | 真实时域三元组准确率 82.3%(此前单类录制“100%”已撤回) | 多数研究只在单场景下报告 >90% |
RuView 还引入见证链(Ed25519 witness chain),对每个测量结果做密码学认证,确保数据不可篡改,适合需要审计的场景。此外,系统支持 WiFi 6(ESP32-C6)和 802.15.4 网格,利用 HE-LTF 子载波标记和 TWT 省电模式,可实现超低功耗(~5μA 电池节点)的种子节点。
适合谁用 / 上手
适合用户:
- 智能家居爱好者:希望在不改动装修、不添加摄像头的前提下获得房间级智能感知(自动开灯、空调因人调节、离床警报)。
- 远程监护者:用于老人独居异常检测(如长时间不动、跌倒风险),无需对方佩戴任何设备。
- 办公空间管理员:统计会议室占用、工位活跃度,优化空间利用。
- 研究人员:作为 CSI 数据采集和处理的现成平台,可替换预训练模型进行科研。
- 开发者:利用开放的边缘模块目录和 Rust / Python 接口,构建自定义感知应用。
上手方式(提供四种路径):
-
零硬件体验(Docker):
docker pull ruvnet/wifi-densepose:latest docker run -p 3000:3000 ruvnet/wifi-densepose:latest # 打开 http://localhost:3000 查看模拟数据 -
低成本硬件(ESP32-S3,$9):
- 刷写固件,通过串口设置 WiFi 和目标 IP,即可开始采集 CSI 数据。
- 运行
scripts/rf-scan.js等边缘脚本进行实时处理。
-
Python 包(无需硬件,可用于模拟或连接已有节点):
pip install ruview[client] from ruview import BreathingExtractor, HeartRateExtractor # 或使用 asyncio WebSocket + MQTT 客户端 -
完整系统(Cognitum Seed,$140):将 ESP32 节点与 Cognitum Seed 配对,获得持久化存储、kNN 分类和见证链支持。
详细文档见项目仓库 docs/integrations/home-assistant.md 和 Hugging Face 模型页面 ruvnet/wifi-densepose-pretrained。注意当前预训练模型以 JSONL RVF 格式分发,而 v2 解析器仅支持二进制 RVF 段格式(已知差距),社区正在修复中。
