鏡の反射を用いた屋内位置検出手法
太田 あすか1（指導教員：椎尾 一郎）

はじめに

現在，屋外環境における位置情報の取得には主にGPS（Global Positioning System）が使われ，ナビゲーション装置等に活用されている。しかし GPS を使う位置推定では，複数の GPS 衛星からの電波を利用しているため，電波の届かない屋内の位置推定には使うことができない．そのため，屋内では Beacon やWi-Fi 等の電波を使った位置推定方法が研究されているが，精度やコストの面から未だ広く普及していない．
そこで本システムでは，安価に製作可能な，傾きセンサ（加速度センサ＋ジャイロセンサ）付き鏡デバイスを用いた屋内位置検出手法を提案する．ユーザが部屋の目印を鏡に映すだけで，ユーザの屋内での位置を検出することが可能である．照明やエアコン等，部屋に設置されているものを目印とするので，インフラ整備が必要ない．あらかじめ目印の 3 次元座標を取得しておき，複数の目印それぞれを鏡で映した際の鏡の傾きを用いて計算することでユーザの位置推定を行う．
本システムを利用して，将来的には，エアコンや扇風機の風向きや，照明の光，TV の向き等を，ユーザの位置及び意図に合わせて動かすことや，プロジェクターによりユーザの手元や足元に情報を表示すること等を目指している．

2

図 1: システム構成

関連研究

図 2: 傾きセンサ付き鏡

屋内の位置検出については既に様々な研究がされており [1]，大きく絶対測位と相対測位の 2 つに分けられる．絶対測位とは，測位系内における絶対的な座標を測定する手法であり，無線 LAN や Beacon からの電波を用いた位置推定 [2] や，RFID や画像認識による位置推定が挙げられる．この手法は，Beacon や Wi-Fi等の設置が必要となるが，高い精度の検出が得られる．
対して，相対測位は，ある地点からどれだけ移動したかを逐次推定する累積的な測位手法であり，加速度センサやジャイロセンサの値から相対的な移動距離を求める方法 [3] である．この手法は，精度が高くないがインフラ整備は必要がなく省電力であるという特徴がある．
本システムは，部屋にすでに設置されている照明やエアコン等を目印として利用し，ユーザの 3 次元座標を検出するという，いわばインフラ整備のいらない絶対測位であり，鏡と加速度センサ，ジャイロセンサで実装できるため低コストである．

3実装

3.1

システムの概要

映るように傾け（図 3 （左）），その時に側面にあるスイッチを押し，水平面からの鏡の傾きを 9 軸センサの値から取得し，取得した値から導出した角度を PCに送る．この時，鏡とユーザの顔の相対位置は極力動かさないように，鏡を傾ける．また，Arduino UNOから PC への通信は Bluetooth モジュール を用いた．
Processing には，あらかじめ取得した目印の 3 次元座標や部屋の大きさ等が組み込まれており，それらと，送られてきた傾きの値を用いてユーザの 3 次元座標を算出する．

3.2

9 軸センサを用いた角度検出について

本システムでは角度検出に，加速度センサ，ジャイロセンサ，地磁気センサが組み込まれた 9 軸センサ（MPU-9250）を使用した．角度の算出方法には，様々な方法があるが，本システムでは，Madgwich Filter[4]というフィルタを使い，引数に加速度センサとジャイロセンサから取得した値を与え，導出される roll，pitchの値を使用している．この Madgwich Filter では，引数に地磁気センサの値を与えることもできるが，地磁気センサは環境に影響を受けやすく，時間経過によるズレが roll，pitch より大きいため，本システムは加速度センサとジャイロセンサのみを引数として与えている．また，Madgwich Filter では，ジャイロセンサのバイアスドリフト補正も行なっている．

システムの全体構成を図 1 に示す．
本システムは，Arduino UNO，9 軸センサ（MPU9250）, 鏡，PC で構成される（図 2）．部屋に既に設置されている照明やエアコン等の中から，鏡に映す目印となる点を 2 点定め，それらの 3 次元座標をあらかじめ取得しておく．ユーザは，定めた目印の 1 つがグリッドを引き中央を１点に定めた鏡（図 2（右））に55

図 5: 実験結果
図 3: 本システムを使用図（左）と持ち方（右）験者番号 3，4，5 の誤差が他に比べて大きくなっている原因として，目印の 1 つが被験者 3，4，5 の身長より低くなってしまい，位置推定に影響を与えたためだと考えられる．

5

応用例

本システムで推定したユーザの位置に，扇風機の風向きを向けるという応用も行なった．あらかじめ取得した扇風機の向きと座標から，ユーザへ向けるための角度を計算し，Arduino UNO により制御されたサーボモータで扇風機を動かした．

6

ユーザが部屋の目印を鏡付きセンサの鏡で映すだけで，ユーザの屋内での位置を検出するシステムを提案・実装した．実験では，実際の位置と推定した位置の誤差が被験者によってばらつきがあり，平均誤差が 45.6cmであった．
今後の課題として，正確なユーザの位置を推定できるためにも，さらに精度を上げる必要がある．実際の位置とユーザの位置の差分である誤差の原因として，yaw 方向のブレやスイッチを押した時のブレ等のユーザの手ブレが考えられるため，角度検出の際に条件を設定する等の対策を行って行く必要がある．また，実験を行うにあたり誤差を最小限にするため設けた制約は，実際使用する際にユーザが不便だと感じてしまうため，今後無くしていく必要がある．

図 4: 実験結果

4

実験

本システムを実装するために，いくつかの制約を設けた．

4.1

実験上の制約

実験を行なった場所に対して，ユーザの向く方向を一定方向に固定した（図 4）．また、傾きセンサ付き鏡を傾ける方向も，roll，pitch 方向のみに限定し，yaw方向には極力傾けないようにした．

4.2

まとめと今後の展望

参考文献[1] 奥山敏, 森信一郎, 小川晃弘. 屋内ロケーション管理技術 (特集 新しい世界への ict 活用). Fujitsu,
Vol. 64, No. 1, pp. 66–73, jan 2013.

実験結果

実験は，理学部 3 号館 4 階の廊下で行った．ユーザの目と鏡の相対距離を固定させ，鏡を yaw 方向に傾けないようにするため，鏡の持ち方を指定した．
（図 3（右））また、目印を映す順番も図 4 のように固定した．
被験者の実際の位置や目印の座標は図 4 の原点と３軸を基準にレーザー距離計を用いて測定した．ここで廊下においた 3 軸は，廊下の奥行き方向を x 軸，廊下の高さ方向を y 軸，廊下の幅方向を z 軸とした．身長にばらつきのある 5 人の被験者に５回ずつ実験を行なってもらい，実際の位置と推定した位置の直線距離を誤差とした．5 人の結果は図 5 となった．被験者番号は被験者の身長順に振り分けた（151cm，154cm，160cm，164cm，175cm）．誤差は，ユーザによってばらつきがあるものの，平均して 45.6cm となった．
（図 5）被[2] 工藤大希, 堀川三好, 古舘達也, 岡本東. Ble ビーコンを用いたエリア推定による屋内位置測位手法の提案. 第 78 回全国大会講演論文集, 第 2016 巻, pp.
425–426, mar 2016.
[3] 星尚志, 羽多野裕之, 藤井雅弘, 渡辺裕. スマート
フォンのセンサを用いた保持状態に基づく歩行者デッドレコニングに関する一検討. 第 76 回全国大会講演論文集, 第 2014 巻, pp. 211–212, mar 2014.
[4] Sebastian O.H. Madgwick. An eﬃcient orientation filter for inertial and inertial/magnetic sensor
arrays. Technical report, 2010.

56