【要約】ESP32-C5のWi-Fi CSIで2×2グリッドの屋内位置を推定してみた [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
筆者はWi-Fi CSIを用いた位置推定において、環境の変化が精度に直結するという課題に直面した。CSIは通信経路の物理的な特性を示すため、以下の問題が生じる。
- ・環境のフィンガープリント依存:時間経過や環境の変化でCSIの特性が変動する。
- ・未知データへの弱さ:学習時と異なるセッションでは分類精度が低下する。
- ・位相情報の扱い:位相は時間変動が大きく、ノイズ除去が困難である。
// Approach
筆者はESP32-C5 2台を用い、追加センサなしで位置を推定するシステムを構築した。以下のステップで実装を行っている。
- ・データ取得:ESP-NOWを利用し、5GHz帯で約50HzのCSIデータを取得。
- ・特徴量抽出:57個のサブキャリア振幅を抽出し、10フレーム平均で平滑化。
- ・モデル構築:1D-CNNを用い、4クラスのsoftmax分類器を学習。
- ・前処理:I/Qデータの振幅化、メディアンフィルタ、最大値正規化を適用。
// Result
筆者は実験を通じて、CSIを用いた位置推定のベースラインと限界を明らかにした。検証の結果は以下の通りである。
- ・分類精度:完全未使用のデータに対し、75%(3/4エリア)の精度を達成。
- ・誤分類傾向:エリア2から隣接するエリア3への誤分類が発生。
- ・課題の特定:時間経過による環境変化が、精度低下の主因であることを確認。
Senior Engineer Insight
> 本技術は低コストで導入可能だが、実運用へのハードルは極めて高い。CSIは環境の「指紋」であり、家具の移動や人の出入りで特性が激変する。現状のモデルは環境依存性が高く、スケーラビリティに欠ける。実戦投入には、位相情報の活用や、環境変化を吸収する強固な学習アルゴリズムの確立が不可欠である。