# 用 WiFi 看穿牆的另一側 — 在 ESP32 上試用無攝像頭人體檢測 OSS 『RuView』 > 『RuView』是一款用 Rust 編寫的 OSS,靠 WiFi 反射(CSI)在不用攝像頭的情況下推定人的存在、呼吸與姿勢。本文梳理如何用 9 美元的 ESP32-S3 搭建、如何用 Docker 試用,以及它與 esp-csi 的區別。 Date: 2026-07-21 Tags: WiFi, ESP32, CSI, Rust, OSS, 傳感 --- ![RuView 用 WiFi 信號反射隔牆檢測人體姿勢的示意圖](https://img.wiredxeco.com/wiredxeco/ruview-wifi-esp32/hero.webp) 完全不使用攝像頭,僅憑在房間裡飛來飛去的 WiFi 電波,就能推定人的存在、呼吸次數、心率,甚至身體的姿勢。這聽起來像科幻,但如今已經發展到能用**9 美元的單片機與 OSS**來重現的地步了。 處於其核心的是 [`ruvnet/RuView`](https://github.com/ruvnet/RuView) —— 一個彙集了超過 6 萬顆星的 Rust WiFi 傳感平臺。它把 ESP32-S3 作為傳感器節點,解析 WiFi 電波的「反射模式」,在完全不持有影像的情況下讀取空間的狀態。 本文梳理 RuView 的原理與架構、實際的試用方法,以及它與同類 OSS(espressif/esp-csi、WirelessEye)的區別。目的是為你判斷「是否該在自己的項目中採用」提供依據。 ## 為什麼沒有攝像頭也能「看見」人 關鍵在於 **CSI(Channel State Information / 信道狀態信息)**。 WiFi 電波並非從發射機一直線地到達接收機。它會撞到牆壁、傢俱,以及人體後反射,經由多條路徑抵達接收機。把「哪個頻率的電波、衰減了多少、相位偏移了多少後抵達」細緻記錄下來的,就是 CSI。 - **人在移動** → 反射路徑改變 → CSI 的波形發生變化 - **人在呼吸** → 胸廓以毫米為單位上下起伏 → CSI 上疊加週期性的微小變動 - **人擺出特定姿勢** → 反射模式中出現固有的「指紋」 也就是說,WiFi 路由器僅僅是在發出電波,就**已經在「照亮」房間**了。RuView 的定位就是讀取那束反射光(電波)的接收傳感器。由於不像攝像頭那樣持有影像,在隱私層面的牴觸感壓倒性地更小,這正是它最大的優點。 ## RuView 的架構 RuView 大致分為三層。 ### 1. 傳感器節點(ESP32-S3) **9 美元的 ESP32-S3** 承擔吐出 CSI 原始數據的角色。ESP32 系列在芯片層面就具備 CSI 獲取 API,因此無需購買專用的 SDR(軟件定義無線電)設備,用市售的廉價單片機就能站在 WiFi 傳感的入口。這一點一舉推進了該領域的民主化。 ### 2. 處理引擎(Rust) 原始 CSI 滿是噪聲。RuView 的本體是用 Rust 編寫的信號處理與推理引擎,在這裡進行以下工作。 - 去噪、相位校正等預處理 - 提取呼吸、心跳這類週期成分 - 用於姿勢與存在檢測的特徵量計算與模型推理 選擇 Rust,想必是為了兼顧實時性與內存安全。對於在邊緣常態運行的信號處理來說,這是合乎道理的選擇。 ### 3. 可視化與 API 層 這是把推定結果經由儀表盤或 API 輸出到外部的層。由於可以用 Docker 整套啟動,先在手邊把握整體樣貌是捷徑。 ## 用 Docker 試用 在深入打磨之前,先看到**能跑起來的狀態**是理解的捷徑。RuView 是可以用 Docker Compose 一整套啟動的構成。 ```bash git clone https://github.com/ruvnet/RuView.git cd RuView docker compose up ``` 這樣處理引擎與可視化層就會啟動,可以從瀏覽器訪問儀表盤。這一構成設計成即便手邊沒有實機 ESP32-S3,也**可以灌入樣本 CSI 數據來確認其行為**,所以若想體感「究竟能從 CSI 中讀出什麼」,從這裡開始是最短路徑。 要實際進行傳感,則需進一步:把固件寫入 ESP32-S3,並把 CSI 流朝引擎發送。到了這一階段,「牆那頭的呼吸」才終於以數字的形式呈現出來。 ## 與 esp-csi / WirelessEye 的區別 WiFi 傳感類 OSS 並非只有 RuView。為了便於採用判斷,這裡梳理有代表性的三款。 ### espressif/esp-csi 這是 Espressif 官方的倉庫,以**在 ESP32 上獲取 CSI**的固件與樣本為中心。其定位是「CSI 的獲取與基礎樣本」,上層的推理、可視化、運維則以自行搭建為前提。 - **優勢**:官方、輕量、最貼近芯片,能可靠地取到 CSI - **弱點**:不涵蓋存在檢測或姿勢推定。它是地基,而非成品 把 RuView 理解為在這種 esp-csi 式「獲取 CSI」層的**之上,疊加了推理、可視化與運維**,兩者的關係就一目瞭然了。 ### WirelessEye 這是一款以實時可視化 CSI 為主旨的工具。在「電波里映出了什麼」想先用眼睛看看的研究與學習階段很強。不過它並非那種能原樣嵌入產品的處理基礎設施。 ### RuView 的定位 | OSS | 主旨 | 完成度的性質 | |---|---|---| | esp-csi | CSI 的獲取 | 地基(上層需自制) | | WirelessEye | CSI 的可視化 | 觀察、學習向 | | RuView | 獲取〜推理〜可視化 | 一體化平臺 | **若「想先理解原理」,用 esp-csi 或 WirelessEye 窺看電波會更快。若「想把存在、呼吸、姿勢一氣貫通地試一遍」,那就選 RuView**,這就是它們的分工。 ## 考慮採用時的現實注意點 這是一項富有夢想的技術,但若要用於業務,就需要冷靜地劃清界限。 - **精度依賴環境**:傢俱的擺放、牆壁的材質、其他 WiFi 設備的干擾,都會讓 CSI 大幅變化。並非「在任何房間都能立刻出精度」,逐環境的校準是前提。 - **不是攝像頭的替代,而是另一回事**:個人識別與細緻的動作識別是攝像頭的領域。CSI 擅長的不是「是誰」,而是「有人/動了/在呼吸」這類**顧及隱私的粗略狀態把握**。 - **要挑用途**:老年人守護、通過在室檢測進行的空調與照明控制、睡眠中的生命體徵監測等,正是在**不想放攝像頭的地方**才顯出真正的價值。 反過來說,在這種存在「無法放/不想放攝像頭」約束的現場,能用 9 美元 ESP32 起步的 RuView 是非常有吸引力的選項。 ## 總結 WiFi 傳感已從需要專用昂貴設備的時代,進入了**用廉價單片機與 OSS 誰都能試**的階段。RuView 把「從獲取到推理與可視化」匯於一體,是當下最容易上手的入口之一。 先用 Docker 跑起來體感 CSI 裡映出了什麼,若有手感就買一塊 ESP32-S3 進入實測 —— 按這個順序,幾千日元與幾個小時就能觸及「用 WiFi 看穿牆的另一側」的世界。 如果你正在考慮傳感數據的處理基礎設施,或涉及此類邊緣設備的產品開發,歡迎隨時向 [株式會社 Wired & Eco](https://www.wiredxeco.com/) 諮詢。