用 WiFi "看见"你:RuView 无接触人体感知系统
没有摄像头,不用红外,仅凭你家的 WiFi 信号,就能感知房间里有没有人、在做什么动作。这不是科幻,而是一个开源项目------RuView。
一、它到底能干嘛?
想象这样一个场景:
- 老人独自在家摔倒,系统自动报警
- 你走进房间,灯自动亮起;人走后,灯自动熄灭
- 不用摄像头,也能追踪人体姿态
RuView 利用 WiFi CSI(信道状态信息) 技术。简单说:WiFi 信号碰到人体会"变形",系统分析这种变形,就能反推出人的位置、动作甚至呼吸心跳。
核心优势:无接触 + 隐私安全。不需要摄像头,不拍摄任何图像,纯靠无线电信号分析。
二、需要哪些硬件?
| 部件 | 说明 | 成本 |
|---|---|---|
| ESP32-S3 开发板 | 采集 WiFi 信号 | ~30元 |
| 电脑 | 运行服务端程序 | 已有 |
ESP32-S3 是一块带 WiFi 的开发板。把它接到电脑 USB 口,配置好 WiFi 账号密码,它就会自动向电脑发送 CSI 数据。
三、软件怎么用?
便携版开箱即用:
下载:https://pan.quark.cn/s/ffbb685d77cc
双击 start.bat 启动服务端
浏览器打开 http://localhost:3000/ui/index.html
配置 ESP32 (文件内有skill,建议搭配AI使用)连上同一 WiFi
完事,看数据!
四、技术栈一览
| 层级 | 技术 |
|---|---|
| 硬件 | ESP32-S3 (8MB Flash + 8MB PSRAM) |
| 固件 | ESP-IDF v5.4 |
| 服务端 | Rust + Axum + Tokio + WebSocket |
| 前端 | 原生 HTML/CSS/JS + Three.js |
| 算法 | 自适应分类器 + 信号特征提取 |
五、三个关键端口
| 端口 | 用途 |
|---|---|
| 3000 | 网页界面 + REST API |
| 8765 | WebSocket 实时数据流 |
| 5005 | ESP32 原始数据接收 |
只要保证 ESP32 和电脑在同一局域网,数据就能自动汇聚到服务端。
六、实际效果
打开网页后,你能看到:
- 实时人员计数:房间里有几个人
- 活动状态:静止 / 走动 / 活跃
- 生命体征:呼吸频率、心率估算
- 3D 姿态:人体骨架在三维空间中的位置
支持多节点部署------你可以在房间不同角落放多块 ESP32,覆盖更大范围。
七、适合谁玩?
- 想做智能家居但不想装摄像头的同学
- 对 WiFi 感知、CSI 信号处理感兴趣的开发者
- 需要无接触监测的科研或养老场景
八、快速上手
bash
# 1. 烧录 ESP32 固件(SPIRAM 版)
esptool write_flash \
0x0 bootloader.bin \
0x8000 partition-table.bin \
0xf000 ota_data_initial.bin \
0x20000 esp32-csi-node-spiram.bin
# 2. 配置 WiFi(修改为目标 IP 和密码)
python provision.py \
--port COM5 \
--ssid "你的WiFi" \
--password "密码" \
--target-ip 192.168.1.100
# 3. 启动服务端
sensing-server.exe \
--source esp32 \
--bind-addr 0.0.0.0 \
--ui-path ui \
--http-port 3000
写在最后
RuView 把学术级别的 WiFi 感知技术,做成了普通人也能玩的开源项目。30 块钱的硬件 + 一个双击启动的程序,就能体验"用 WiFi 看见人"的黑科技。
如果你也对无接触感知、隐私友好的智能交互感兴趣,不妨动手试试。
源码:github.com/ruvnet/RuView
项目关键词:WiFi CSI / 人体感知 / ESP32 / 无接触监测 / 隐私计算 / 开源硬件