Upgrade to Pro — share decks privately, control downloads, hide ads and more …

NexmonによるCSIを用いた人物通過検出システムに関する研究

原田海斗
August 18, 2024
45

 NexmonによるCSIを用いた人物通過検出システムに関する研究

急速な情報化に伴い,監視社会としての側面が強まる現代で,プライバシーを考慮したセンシング技術として,Wi-Fi電波(CSI)を用いた,ストレスフリーな非接触型の人間活動認識が注目を集めている.しかし,Wi-Fiチップの仕様や,コスト面での制限が強いため,CSIの収集は困難であるという問題が存在する.本研究では,オープンソースのCSI収集用ファームウェアパッチであるNexmonを用いて低コストデバイスでCSI収集を行った.そして,NexmonによるCSIベースの人物通過検出システムにおけるプロトタイプを確立するとともに,その評価・検証を行うことで,NexmonによるCSIベースの人物通過検出システムの可能性を示すことを目的とする.

In today's rapidly advancing information society, which increasingly resembles a surveillance society, there is growing interest in stress-free, non-contact human activity recognition using Wi-Fi signals (CSI) as a privacy-conscious sensing technology. However, due to the specifications of Wi-Fi chips and cost-related limitations, collecting CSI data is challenging. In this study, we used Nexmon, an open-source firmware patch for CSI collection, to gather CSI data using low-cost devices. The purpose of this research is to establish a prototype for a CSI-based human passage detection system using Nexmon, and to evaluate and validate its performance, thereby demonstrating the potential of Nexmon for CSI-based human passage detection systems.

原田海斗

August 18, 2024
Tweet

Transcript

  1. 2 1ZC-01 1. 調査背景 ◦Wi-Fi(CSI)を用いた人間活動センシング技術 ― CSI(Channel State Information:チャネル状態情報) ➢

    電波散乱,フェージングなどを考慮したWi-Fi電波通信路の状態 ✓ 撮影不要,センサの装着不要(プライバシー配慮〇) ✓ 情報化による多様なIoTデバイスを活用可能(実用面〇) 波 波 ― Nexmon ➢ CSI収集用のオープンソースファームウェアパッチ ✓ 本来,CSIの収集が不可能なデバイスでも収集可能に ✓ 導入コストを抑えたCSIセンシングが可能 実現手法やアーキテクチャに対する検証・評価が十分に実施されてない[1,2] CSIの収集は,ハード/ソフトウェアの制限が強い [1] Shahverdi, H., Nabiti, M., Moshiri, F.R., et al.: Enhancing CSI-Based Human Activity Recognition by Edge Detection Techniques, Information, Vol.14.7, No.404, (2023). [2] Xia, Z. and Chong, S.: WiFi-based indoor passive fall detection for medical Internet of Things. Computers and Electrical Engineering, Vol.109, No.108763, (2023).
  2. 3 1ZC-01 3. 基礎評価 ◦データ収集フェーズ:収集環境, 条件 ― 各種デバイス情報 ➢ CSI収集デバイス:RaspberryPi4B

    ➢ Wi-Fi :WSR-1800AX4P-WH ➢ Wi-Fi :dynabook GX83/MLE ― 設定項目 ➢ 通 条件 ✓ IEEE 802.11n規格 ✓ Pingを20[1/s]間隔で ✓ 間距離は1.5[m] ➢ 収集条件 ✓ 単体の人間の通過を想定 ✓ 教師信号:通過 or 非通過 ✓ 通過速度:Slow/Normal/Fast RaspberryPi4B + Nexmon WSR-1800AX4P-WH (RX) dynabook GX83/MLE (TX) Fast Normal Slow 人物通過の検出、通過速度の分類を行う
  3. 4 1ZC-01 3. 基礎評価 ◦信号処理フェーズ:パイプライン処理 … … … … …

    Difference Filter k-shape Hampel Filter Threshold Filter Zero-Subcarrier Removing 64 Subcarrier 1 Subcarrier
  4. 5 1ZC-01 3. 基礎評価 ◦学習・評価フェーズ:時系列モデルと入力時点数の選定 ― 8種類の時系列モデルで試行 ➢ LSTM-FCN, LSTM,

    TCN, 1D-CNN, 1D-ResNet, 1D-DenseNet, RandomForest, Transformer ― 評価指標はmacro-F1スコアを使用 ➢ 通過区間に比べて、非通過区間のラベル数が圧倒的に多い ➢ 入力時点数は、10~100[Packet]で変化 時系列モデル 入力時点数[Packet] 10 20 30 40 50 60 70 80 90 100 LSTM-FCN 0.974 0.974 0.973 0.974 0.973 0.970 0.969 0.961 0.958 0.962 LSTM 0.963 0.974 0.975 0.975 0.970 0.964 0.966 0.958 0.961 0.954 TCN 0.971 0.973 0.974 0.974 0.972 0.970 0.965 0.959 0.967 0.975 1D-CNN 0.964 0.967 0.968 0.969 0.966 0.965 0.963 0.957 0.955 0.964 1D-ResNet 0.958 0.967 0.969 0.969 0.968 0.968 0.958 0.949 0.963 0.971 1D-DenseNet 0.950 0.962 0.964 0.961 0.961 0.965 0.960 0.942 0.954 0.965 RamdomForest 0.952 0.954 0.957 0.958 0.956 0.959 0.962 0.958 0.961 0.967 Transformer 0.953 0.954 0.957 0.967 0.963 0.959 0.953 0.948 0.952 0.958 8039 87 69 2166 CPU Intel Corei9-13900KF GPU GeForce RTX-3090 OS Ubuntu 22.04.2 LTS Software Python3.9, tensorflow2.12, CUDA11.8 学習器:LSTM-FCN, 入力時点数:55[Packet]でF1スコア:0.978を確認 Non-Passed Passed Passed Non-Passed Predict Label True Label Accuracy[%]:98.5, macro-F1:0.978 最良結果(学習器:LSTM-FCN)
  5. 6 1ZC-01 3. 基礎評価 ◦学習・評価フェーズ:通過速度の分類 ― 仮説:通過速度と検出区間幅に相関関係が存在 ➢ 通過速度が速いほど、検出区間幅は小さくなる ―

    検証:k-means法で通過速度を分類 ➢ 全23箇所の通過区間に対して、検出区間幅を算出 CPU Intel Corei9-13900KF GPU GeForce RTX-3090 OS Ubuntu 22.04.2 LTS Software Python3.9, tensorflow2.12, CUDA11.8 7 0 0 0 7 0 0 0 9 Predict Label True Label Normal Slow Fast Normal Fast Slow Slow Fast 検出区間幅 検出区間幅からの通過速度の分類(3段階)を確認
  6. 7 1ZC-01 4. 考察 ◦サンプリングレートによる精度比較 ― サンプリングレート ➢ Wi-Fi 間で1秒間に送信されるPingの回数

    ― 各種条件設定 ➢ 学習器:LSTM-FCN ➢ 入力時点数:5~50[Packet] ➢ 2.0~20.0[Ping/s]で試行 CPU Intel Corei9-13900KF GPU GeForce RTX-3090 OS Ubuntu 22.04.2 LTS Software Python3.9, tensorflow2.12, CUDA11.8 サンプリングレート:4.0[Ping/s]以下で, 精度が大幅に低下 20.0[Ping/s] 2.0[Ping/s] 𝛼 [Ping/s] 𝛼 2 [Ping/s]
  7. 8 1ZC-01 4. 考察 ◦信号処理パイプラインの有効性確認 ― 各信号処理後のデータで学習し、macro-F1スコアを算出 ➢ k-shapeによる重心 号抽出処理は共通

    ― 各種条件設定 ➢ 学習器:LSTM-FCN ➢ 入力時点数:5~50[Packet] ➢ サブセット分割数:2~6 CPU Intel Corei9-13900KF GPU GeForce RTX-3090 OS Ubuntu 22.04.2 LTS Software Python3.9, tensorflow2.12, CUDA11.8 zero_remove threshold hampel difference 信号処理フェーズにおける, パイプライン処理が 前処理として有効に作用していることを確認
  8. 9 1ZC-01 4. 考察 ◦サブセット分割数による精度比較 ― サブセット分割数を変化させてアンサンブル学習を実施 ➢ 入力時点数の次元で標準正規化 ―

    各種条件設定 ➢ 学習器:LSTM-FCN ➢ 入力時点数:10~100[Packet] ➢ サブセット分割数:2~10で試行 CPU Intel Corei9-13900KF GPU GeForce RTX-3090 OS Ubuntu 22.04.2 LTS Software Python3.9, tensorflow2.12, CUDA11.8 アンサンブル学習時にサブセット数が増加するほど, 安定した検出が可能 入力 時点数 サブセット分割数 2 3 4 5 10 20 30 40 50 ①標準正規化 ② 平均
  9. 10 1ZC-01 ◦補正処理の有効性確認 ― 各入力時点数に対して、補正処理前/後の検出精度を比較 ― 各種条件設定 ➢ 学習器:LSTM-FCN ➢

    補正方法:hampelフィルター ➢ 入力時点数:5~100[Packet] ➢ サブセット分割数:2~4 4. 考察 CPU Intel Corei9-13900KF GPU GeForce RTX-3090 OS Ubuntu 22.04.2 LTS Software Python3.9, tensorflow2.12, CUDA11.8 補正前 補正後 入力時点数が比較的小さい場合に補正処理は有効 補正処理 様々な補正アルゴリズムに対する検証が必要
  10. 11 1ZC-01 4. まとめ 背景 提案 今後 Wi-Fi(CSI)を用いた人間活動センシング技術 ― プライバシー問題や実用化に有効

    ➢ ハードウェアやソフトウェアの制限が強い ― Nexmonを用いた低コスト化が可能 ➢ 先行研究で十分に評価されているとは言えない NexmonによるCSIを用いた人物通過検出(初期検討) ― 人物通過検出システムに対するプロトタイプを提案 ― Accuracy:98.5[%]、F1スコア:0.978を確認 ➢ 検出区間幅から通過速度を推定可能なことを確認 ➢ サンプリングレートや補正処理、サブセット分割などの検証 NexmonによるCSIセンシングの検出システム実現 ― CSIの特徴量に影響を与える要因の分析 ➢ 通過人数や通信条件、データ収集環境、個人差など ― より汎用的かつ、プライバシーに配慮したセンシングの実現 ➢ ドメインシフトの考慮、秘匿性の高い学習モデル構築