RuView:9.4 万星的 WiFi DensePose,不开摄像头隔墙感知呼吸和心率,姿态追踪数字请打折
RuView: 94K-Star WiFi DensePose — Through-Wall Breathing and Heart Rate Work, Pose Tracking Numbers Need a Discount
📌 GitHub:https://github.com/ruvnet/RuView Stars:94,326 | Forks:12,486 | License:MIT | 语言:Rust(含 TypeScript/Python) 创建:2025-06-07 | 学术源头:CMU arXiv:2301.00250(2023)
“不开摄像头,隔着墙也能感知人体动作、呼吸和心率。“这是 RuView 的核心卖点,也是它在 GitHub 上拿到 9.4 万星的原因。
这件事有多少是真的?拆开看。
技术来自哪里:CMU 的 DensePose From WiFi
RuView 的学术根基是卡内基梅隆大学 2023 年发表的论文 “DensePose From WiFi”(arXiv:2301.00250)。原论文的核心思路是:WiFi 信号在传播过程中受到人体影响,通过分析信道状态信息(Channel State Information,CSI)的振幅和相位变化,可以反推人体位置和姿态——就像用 WiFi 信号当”雷达”来感知遮挡后的人体。
CMU 论文里用的是研究级多天线网卡(多根天线 × 多子载波),在受控实验室环境下实现了可观的精度。RuView 的野心是把这套思路搬到 $9 的 ESP32-S3 微控制器上,让消费者能用普通 WiFi 设备实现隔墙感知。
RuView 的技术管道
整个系统分五层:
1. 信号采集(ESP32-S3 / ESP32-C6)
ESP32-S3 或 ESP32-C6 开启 CSI 模式,采集每个 WiFi 信道上各子载波的振幅和相位。配置 3 个信道 × 56 个子载波 = 168 个虚拟子载波,多节点组网通过注意力机制融合不同视角。
2. 信号处理(纯 Rust,零外部 ML 依赖)
原始 CSI 噪声大、抖动高,先过三重滤波:
- Hampel 滤波:剔除异常点
- SpotFi 相位校正:消除时钟偏移引起的相位漂移
- Fresnel 区域建模:用物理几何约束定位信号反射区
3. 生命体征提取
从滤波后的 CSI 提取呼吸频率(FFT + 带通,6–30 BPM)和心率(更高频段,40–120 BPM)。这两个指标有完整的验证数据支撑,是目前 RuView 技术最成熟的部分。
4. AI 推理(图变换器 + 交叉注意力)
一个 graph transformer 把 CSI 特征矩阵映射到 17 个 COCO 身体关键点和 DensePose UV 坐标,目标是输出类似摄像头姿态估计的骨架结果。
5. 集成输出
支持 Home Assistant(MQTT)、Apple HomeKit、Google Home、Amazon Alexa 和 Matter 协议。每个节点暴露 21 个实体:11 个原始信号 + 10 个推断出的语义状态(在场、生命体征、异常标记)。
数字要打折:哪些有效,哪些没有
这是文章里最重要的一段。
| 功能 | 指标 | 可信度 |
|---|---|---|
| 存在检测 | 82.3%(temporal-triplet 预训练编码器) | ✅ 有验证 |
| 呼吸频率 | 6–30 BPM 实时 | ✅ 有验证 |
| 心率 | 40–120 BPM 实时 | ✅ 有验证 |
| 跌倒检测 | <200ms 延迟 | ✅ 有验证(3帧防抖) |
| 17 关键点姿态(MM-Fi 基准) | PCK@20 = 82.69%(研究数据集) | ⚠️ 仅限实验室 |
| 17 关键点姿态(ESP32-S3 实机) | PCK@20 = 3.0%(目标 35%) | ❌ 不可用 |
最重要的一条:README 和早期宣传里曾出现的 92.9% PCK@20 已被正式撤回。事后法证检查发现,这个数字来自一个输出恒定值的模型,在 69 帧近乎静止的帧上用绝对阈值(非归一化)评估。换句话说,这个数字是方法论错误下的虚高,没有参考价值。
目前的实际状态是:实机 ESP32-S3 上的 17 关键点追踪远未达到可用阈值,“运行时路径仍是存根,返回 confidence=0”(引自 RuView 自己的文档)。
如果你看到媒体报道说”WiFi 隔墙精确追踪人体 17 个关键点”,这不是目前的实际情况。
硬件要求
最小配置:
- ESP32-S3(约 ¥65)或 ESP32-C6(约 ¥50-70)—— 必须支持 CSI 模式
- 现有 WiFi 路由器(推荐支持 CSI 的 AP)
- 可选:Cognitum Seed(约 $140)用于持久存储和高级功能
不支持:ESP32-C3 和初代 ESP32 处理能力不足;普通笔记本 WiFi 网卡只能给 RSSI(只有有限的存在检测,没有完整 CSI)。
单节点覆盖:56 个子载波可区分约 3-5 人;多 AP 部署线性扩展,4 AP 覆盖约 15-20 人。
感知范围:穿墙约 5 米,随墙体材料和厚度衰减。
快速部署
Docker(不需硬件,可以先体验软件逻辑):
docker pull ruvnet/wifi-densepose:latest
docker run -p 3000:3000 ruvnet/wifi-densepose:latest
Python SDK:
pip install ruview
PyO3 绑定提供 CSI 处理、呼吸/心率提取和模型推理接口。
预训练模型:HuggingFace 上的 ruvnet/wifi-densepose-pretrained,12.2M 训练步,6 万帧;量化 8 KB 版本可以跑在 ESP32 上(但如前所述,姿态准确率仍低)。
固件烧录:用 esptool 烧写 ESP32 固件,配置 WiFi,通过 WebSocket 或 MQTT 把 CSI 数据流推给感知服务器。
隐私盲区
RuView 的最大争议不是技术准确率,而是它揭示的一个监管空白:
现有的摄像头隐私法规(无论是欧盟 GDPR、中国《个人信息保护法》还是各国摄像头相关规定)都针对图像/视频,不针对 CSI 信号。
一个普通家庭 WiFi 路由器覆盖范围内,只要有 ESP32-S3 节点,理论上可以感知:
- 家里是否有人
- 人的位置(粗粒度)
- 呼吸和心率
- 运动模式
这一切都不触发现有的”摄像头监控”规定。RuView 自身文档里明确写了这个问题:“CSI-based sensing doesn’t trigger existing camera-focused regulations, surfacing a real gap in privacy law.”
这不是指责 RuView 的恶意使用,而是技术提前于法律的现实:任何 CSI 感知设备都有相同的问题。这个空白如何填补,是未来几年的政策课题。
目前实际可用于什么
结合当前验证数据,RuView 实际上已经可以做好的事情:
- 老人/独居安全监护:存在检测 + 呼吸心率异常告警,不需要摄像头,隐私友好
- 智能家居自动化:有人/无人状态触发灯光、空调(准确率 82.3%,Home Assistant 原生集成)
- 跌倒检测:<200ms 响应,3 帧防抖,适合老人护理场景
- 睡眠质量监测:夜间呼吸/心率连续追踪,不需穿戴设备
还不能做好的:
- 准确的 17 关键点体态追踪(生产级要求 PCK@20 ≥ 35%,实机 3.0%)
- 不同房间零样本迁移(需要重新采集环境标注数据)
- 身份识别(WiFi 信道不包含足够细粒度的个人区分信息)
为什么 9.4 万星
从开源社区角度,RuView 的价值不完全在于当前的技术完成度,而在于:
- 它是一个可以运行的原型:Docker 一条命令,Python SDK pip install,不只是论文复现
- 学术 → 消费级硬件的桥接尝试:CMU 论文用研究级网卡,RuView 试图用 $9 硬件实现
- 时机:隔墙感知、无摄像头智能家居、生命体征监测,三个热点正好汇合
- MIT 协议:允许商业使用,吸引了大量二次开发
星数代表了话题热度和想象空间,不代表技术已经达到了宣传里描述的水平。这是两件需要分开看的事。
开源代码与模型仅供学习、勿直接用于工作。
© 2026 Author: Mycelium Protocol. 本文采用 CC BY 4.0 授权——欢迎转载和引用,须注明作者姓名及原文链接,不得去除署名后以原创发布。
📌 GitHub: https://github.com/ruvnet/RuView Stars: 94,326 | Forks: 12,486 | License: MIT | Language: Rust (+ TypeScript/Python) Created: 2025-06-07 | Academic origin: CMU arXiv:2301.00250 (2023)
“No camera, see through walls, track body movement, breathing and heart rate.” That’s RuView’s pitch — and why it has 94K stars on GitHub.
How much of it is real? Let’s break it down.
Academic Origins: CMU’s DensePose From WiFi
RuView’s foundation is Carnegie Mellon’s 2023 paper “DensePose From WiFi” (arXiv:2301.00250). The core idea: WiFi signals are perturbed by human bodies as they propagate; analyzing the amplitude and phase variations in Channel State Information (CSI) reveals body position and pose — using WiFi as a kind of radar that sees through occlusion.
CMU’s paper used research-grade multi-antenna NICs in controlled lab settings. RuView’s ambition is to port this onto $9 ESP32-S3 microcontrollers, making through-wall sensing accessible with commodity hardware.
The Technical Pipeline
The system has five layers:
1. Signal Capture (ESP32-S3 / ESP32-C6)
ESP32-S3 or C6 in CSI mode reads amplitude and phase per subcarrier per WiFi channel. 3 channels × 56 subcarriers = 168 virtual subcarriers per link; multi-node deployments fuse viewpoints with attention weighting.
2. Signal Processing (Pure Rust, Zero External ML Dependencies)
Raw CSI is noisy and jittery. Three-stage filtering:
- Hampel filtering: outlier rejection
- SpotFi phase correction: eliminates clock-offset phase drift
- Fresnel zone modeling: physics-based geometric constraints for reflection localization
3. Vital Sign Extraction
From filtered CSI: breathing rate (FFT + bandpass, 6–30 BPM) and heart rate (higher frequency band, 40–120 BPM). Both have full validated benchmark results — the most mature part of RuView.
4. AI Inference (Graph Transformer + Cross-Attention)
A graph transformer maps CSI feature matrices to 17 COCO body keypoints and DensePose UV coordinates, targeting camera-quality skeleton output.
5. Integration Output
Native support for Home Assistant (MQTT), Apple HomeKit, Google Home, Amazon Alexa, and Matter. Each node exposes 21 entities: 11 raw signals + 10 inferred semantic states (presence, vitals, anomaly flags).
Numbers to Discount: What Works, What Doesn’t
This is the most important part.
| Feature | Metric | Status |
|---|---|---|
| Presence detection | 82.3% (temporal-triplet pretrained encoder) | ✅ Validated |
| Breathing rate | 6–30 BPM real-time | ✅ Validated |
| Heart rate | 40–120 BPM real-time | ✅ Validated |
| Fall detection | <200ms latency | ✅ Validated (3-frame debounce) |
| 17-keypoint pose (MM-Fi benchmark) | PCK@20 = 82.69% (research dataset) | ⚠️ Lab only |
| 17-keypoint pose (live ESP32-S3) | PCK@20 = 3.0% (target: ≥35%) | ❌ Not production-ready |
The most important line: the 92.9% PCK@20 figure that appeared in early README versions and press coverage has been formally retracted. Post-hoc forensic review found it came from a constant-output model evaluated on 69 near-static frames using an absolute (non-normalized) threshold. The number was a methodology artifact with no reference value.
The actual current state: live on-device 17-keypoint tracking is far below usable thresholds, and “the runtime path remains a stub returning confidence=0” (from RuView’s own docs).
If you see media coverage saying “WiFi precisely tracks 17 body keypoints through walls,” that’s not the current reality.
Hardware Requirements
Minimum:
- ESP32-S3 (
$9) or ESP32-C6 ($7) — must support CSI mode - Existing WiFi router (CSI-capable AP recommended)
- Optional: Cognitum Seed (~$140) for persistent storage and advanced features
Not supported: ESP32-C3 and original ESP32 lack processing capacity; consumer WiFi laptop NICs only provide RSSI (presence detection only, no full CSI).
Node coverage: 56 subcarriers can distinguish ~3-5 people; multi-AP scales linearly, 4 APs cover ~15-20 occupants.
Through-wall range: ~5 meters, attenuated by wall material and thickness.
Deployment
Docker (no hardware needed, software-only):
docker pull ruvnet/wifi-densepose:latest
docker run -p 3000:3000 ruvnet/wifi-densepose:latest
Python SDK:
pip install ruview
PyO3 bindings for CSI processing, breathing/heart rate extraction, and model inference.
Pretrained models: ruvnet/wifi-densepose-pretrained on HuggingFace, 12.2M training steps on 60K frames; quantized 8KB variant fits ESP32 (but pose accuracy remains low as noted).
Firmware flashing: Use esptool to flash ESP32 firmware, provision WiFi credentials, stream CSI to the sensing server via WebSocket or MQTT.
The Privacy Gap
RuView’s most significant issue isn’t accuracy — it’s the regulatory blind spot it exposes.
Existing camera privacy laws (GDPR, China’s Personal Information Protection Law, various regional camera surveillance regulations) all target images and video. CSI signals fall outside these frameworks entirely.
Within the WiFi coverage area of an ordinary home router, with ESP32-S3 nodes present, you can theoretically sense:
- Whether anyone is home
- Rough location
- Breathing and heart rate
- Movement patterns
None of this triggers “camera surveillance” rules. RuView’s own docs acknowledge this explicitly: “CSI-based sensing doesn’t trigger existing camera-focused regulations, surfacing a real gap in privacy law.”
This isn’t about RuView’s malicious use — it’s a technology-precedes-regulation reality that applies to any CSI sensing device. Closing this gap is a policy question for the next several years.
What It Can Actually Do Today
Based on validated data, what RuView can already do reliably:
- Elderly / solo-occupant safety monitoring: presence + breathing/heart-rate anomaly alerts, no camera required
- Smart home automation: occupancy state for lighting and HVAC (82.3% accuracy, native Home Assistant integration)
- Fall detection: <200ms response, 3-frame debounce, suitable for elder care
- Sleep quality tracking: continuous overnight breathing/heart rate, no wearable required
Not yet reliable:
- Accurate 17-keypoint pose estimation (production requires PCK@20 ≥ 35%; live measurement: 3.0%)
- Zero-shot cross-room transfer (requires per-room labeled CSI/keypoint data collection)
- Identity recognition (WiFi channels lack fine-grained individual distinguishing information)
Why 94K Stars
From an open-source community perspective, RuView’s value isn’t entirely about current technical completeness — it’s that:
- It runs: Docker one-liner, Python SDK pip install — not just a paper reproduction
- It bridges academic → consumer hardware: CMU used research NICs; RuView tries $9 chips
- Timing: through-wall sensing, camera-free smart home, vital sign monitoring — three hot trends converging
- MIT license: commercial use allowed, attracting extensive downstream development
Star count reflects topic heat and imaginative potential. It doesn’t mean the technology has reached the level described in early marketing. These are two separate things.
Open-source code is for learning purposes only — do not use directly in production work.
© 2026 Author: Mycelium Protocol. Licensed under CC BY 4.0 — free to share and adapt with attribution.
关于本站 · 免责声明
🍄 Mushroom Research Blog 是非营利、免费公开的个人科技观察博客与公众号 XStack18,不接受商业合作、不代表任何企业或机构立场,也不谋求商业利益。我们以个人视角客观中立地记录和分析 AI、Web3 等领域的最新模型发布与技术动态——不止转述新闻标题或二手信息,而是给出有独立思考的深入分析,希望帮更多人获得有价值的一手科技认知。
⚠️ 文中介绍的开源代码与模型,仅供学习交流与技术借鉴。它们大多仍处于早期阶段,有待进一步研究和验证,请勿直接用于工作或生产环境;如需采用,请先自行充分测试,并核实其许可证与安全性。
Open-source code and models featured here are shared for learning and reference only. Most are early-stage and still need further study and verification — please don't use them directly in your work or in production. Test them thoroughly and check their licenses and security first.
- 本站文章均为作者基于公开信息的个人研究与观点整理,不代表文中提及的任何公司、产品、模型的官方立场,未与其构成商业关联或合作关系。
- 科技行业信息更新极快,我们尽力保证内容准确、及时,但不对完整性、实时性做绝对保证,具体请以相关企业/项目官方公告为准。
- 文中引用的第三方商标、产品名称、图片、数据等版权归原权利人所有,我们会尽量注明来源;如你认为存在版权疑问或侵权,请通过下方邮箱联系我们,收到通知后会尽快核实处理(更正、加注来源或删除)。
- 文章内容仅为技术科普与个人观点,不构成投资、法律或其他专业建议,据此进行任何决策的后果需自行判断和承担。
📮 侵权 / 勘误 / 合作咨询:[email protected]
💬 评论与讨论
使用 GitHub 账号登录后发表评论