Categories: 工作・開発

カメラなしでWi-Fiの乱れから人の姿勢を検知、ESP32を3台使う卒業研究

部屋の中に人がいるかどうか、どんな姿勢でいるかを知りたい。素直に考えればカメラを置くところだが、寝室や浴室のように映像を撮られたくない場所も多い。カメラを使わずに人の姿勢を捉えられないか。

Abinand氏が公開した「Wi-Fi Vision」は、カメラを一切使わず、Wi-Fiの電波の乱れだけで人の姿勢や動作を推定するシステムだ。3台のマイコン「ESP32」を使い、立つ、座る、歩く、横たわるといった状態を、リアルタイムで見分ける。学部の卒業研究として作られ、実機で動く状態まで仕上げられている。

仕組みの土台になるのがCSI(Channel State Information)だ。Wi-Fiの電波は送信機から受信機へ届くまでに、途中にある人や物にぶつかって強さや位相が変わる。CSIはその変化を細かく記録したデータで、人が動くと固有のパターンで揺らぐ。3台のESP32は、1台が電波を出す送信機、残る2台が受信機として働き、この揺らぎを拾い集める。カメラのように光を撮るのではなく、部屋に満ちた電波の乱れから人の形を逆算する発想だ。

集めたCSIから姿勢を割り出すのは、深層学習モデル「TEDNet」が担う。時系列のパターンを扱うのが得意なTransformerと、特徴を抽出する1次元CNNを組み合わせ、30フレーム分の時間の流れを見て動作を判定する。学習時には正解データとしてWebカメラの映像を併用するが、いったんモデルができれば推論はWi-Fiの信号だけで動く。結果はStreamlit製のダッシュボードに3Dの姿勢として表示される。

Abinand氏は、内蔵アンテナのESP32でも動作するが、外付けアンテナを使えば信号品質と精度が上がると説明する。ソースコードはGitHubで公開されており、ESP-IDFでのファームウェア書き込み手順や学習の流れもまとめられている。

関連情報

FabScene編集部

FabScene編集部