(57)【要約】【課題】歩行者が、携帯端末を手持ちで歩行している場合であっても、その携帯端末に搭載された地磁気センサのみを用いて、歩行者の進行方向をできる限り正確に決定する携帯端末、プログラム及び方法を提供する。【解決手段】携帯端末の進行方向決定手段は、腕振り運動に基づく加速度面に対する法線ベクトルとなる歩行基準ベクトルを算出する歩行基準ベクトル算出手段と、加速度データ及び地磁気データから、重力ベクトルと、該重力ベクトルに対応する地磁気ベクトルとを導出し、重力ベクトル及び地磁気ベクトルの方位基準面に対する法線ベクトルとなる方位基準ベクトルを算出する方位基準ベクトル算出手段と、歩行基準ベクトル及び方位基準ベクトルに基づいて、進行方向の方位角を算出する方位角算出手段とを有する。【選択図】図３
2010008103.tif 000002
【特許請求の範囲】
【請求項１】
３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサと、前記加速度データ及び前記地磁気データから歩行者の進行方向を決定する進行方向決定手段とを有し、歩行者によって所持される携帯端末であって、
前記進行方向決定手段は、
腕振り運動に基づく加速度面に対する法線ベクトルとなる歩行基準ベクトルを算出する歩行基準ベクトル算出手段と、
前記加速度データ及び地磁気データから、重力ベクトルと、該重力ベクトルに対応する地磁気ベクトルとを導出し、前記重力ベクトル及び前記地磁気ベクトルの方位基準面に対する法線ベクトルとなる方位基準ベクトルを算出する方位基準ベクトル算出手段と、
前記歩行基準ベクトル及び前記方位基準ベクトルに基づいて、前記進行方向の方位角を算出する方位角算出手段と
を有することを特徴とする携帯端末。
【請求項２】
前記歩行基準ベクトル算出手段は、前記歩行基準ベクトルＵを、加速度面の後方を示す最上点での加速度ベクトルＢと、加速度面の前方を示す最上点での加速度ベクトルＦとの外積（Ｕ＝Ｂ×Ｆ（又はＦ×Ｂ））によって算出し、
前記方位基準ベクトル算出手段は、前記方位基準ベクトルＰを、重力ベクトルＧと、地磁気ベクトルＭとの外積（Ｐ＝Ｇ×Ｍ（又はＭ×Ｇ））によって算出し、
前記方位角算出手段は、方位基準ベクトルＰ及び歩行基準ベクトルＵを用いて、内積とノルム（ベクトルの大きさ）積から、両ベクトルのなす角αを以下の式によって算出し、そのなす角αから方位角θを導出する
α＝arccos（(Ｐ・Ｕ)／(|Ｐ||Ｕ|)）
ことを特徴とする請求項１に記載の携帯端末。
【請求項３】
前記方位角算出手段は、前記方位基準ベクトルＰと前記歩行基準ベクトルＵの外積ベクトル（Ｐ×Ｕ）を算出し、方位角θを前記外積ベクトルと前記重力ベクトルＧのなす角βと前記なす角αから以下の式によって導出する
ｃｏｓβ≧０：θ＝α
ｃｏｓβ＜０：θ＝３６０−α
ことを特徴とする請求項２に記載の携帯端末。
【請求項４】
前記加速度センサから入力された前記加速度データを、歩数毎、又は歩数に基づく時間単位毎に区分し、前記進行方向決定手段へ出力する歩行タイミング決定手段と、
前記進行方向決定手段から出力された、前記歩数毎、又は歩数に基づく時間単位毎の進行方向について、方向転換がなされたか否かを判定する方向転換判定手段と
を更に有することを特徴とする請求項１から３のいずれか１項に記載の携帯端末。
【請求項５】
３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサとを有し、歩行者によって所持される携帯端末に搭載されたコンピュータを、前記加速度データ及び前記地磁気データから前記歩行者の進行方向を決定する進行方向決定手段として機能させる携帯端末用のプログラムであって、
前記進行方向決定手段は、
腕振り運動に基づく加速度面に対する法線ベクトルとなる歩行基準ベクトルを算出する歩行基準ベクトル算出手段と、
前記加速度データ及び地磁気データから、重力ベクトルと、該重力ベクトルに対応する地磁気ベクトルとを導出し、前記重力ベクトル及び前記地磁気ベクトルの方位基準面に対する法線ベクトルとなる方位基準ベクトルを算出する方位基準ベクトル算出手段と、
前記歩行基準ベクトル及び前記方位基準ベクトルに基づいて、前記進行方向の方位角を算出する方位角算出手段と
してコンピュータを機能させることを特徴とする携帯端末用のプログラム。
【請求項６】
３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサとを有し、歩行者によって所持される携帯端末について、前記加速度データ及び前記地磁気データから前記歩行者の進行方向を決定する進行方向決定方法であって、
腕振り運動に基づく加速度面に対する法線ベクトルとなる歩行基準ベクトルを算出する第１のステップと、
前記加速度データ及び地磁気データから、重力ベクトルと、該重力ベクトルに対応する地磁気ベクトルとを導出し、前記重力ベクトル及び前記地磁気ベクトルの方位基準面に対する法線ベクトルとなる方位基準ベクトルを算出する第２のステップと、
前記歩行基準ベクトル及び前記方位基準ベクトルに基づいて、前記進行方向の方位角を算出する第３のステップと
を有することを特徴とする携帯端末の進行方向決定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、加速度センサ及び地磁気センサを用いて歩行者の進行方向を決定する携帯端末、プログラム及び方法に関する。特に、進行方向及び現在位置をリアルタイムに導出する自律航法技術に関する。
【背景技術】
【０００２】
従来、加速度センサ及び方位センサを用いて、進行方向及び現在位置をリアルタイムに導出する自律航法技術がある。自律航法技術は、ＧＰＳ(Global Positioning System)技術と組み合わされて、主にカーナビゲーションシステム(Car Navigation System)に利用されている。カーナビゲーションシステムは、自動車の運転者に対して、正確な進行方向及び現在位置と、目的地への走行経路案内とを、ディスプレイに表示する。
【０００３】
カーナビゲーションシステムは、ＧＰＳによって測位した現在位置情報を、車速パルス又はジャイロのような自律航法技術によって補正する。また、道路地図情報を必要に応じて読み出し、現在の走行経路が道路上と一致するように、進行方向及び現在位置を補正する（投影法によるマップマッチング技術、例えば特許文献１参照）。これにより、センサの誤差によって、現在位置が、道路上でない位置になることを防ぐことができる。
【０００４】
これに対し、このようなナビゲーション技術を、歩行者の所持する携帯端末に適応したシステムもある。具体的には、検出した歩行者の「歩数」と、その歩行者の「歩幅」とを用いて、始点からの累積的な現在位置を導出する（例えば特許文献２参照）。自律航法技術を歩行者に適応した場合、水平方向の移動以外の加速度成分も検出される。従って、測定される距離は、単純に加速度センサの出力を積分するのではなく、歩数及び歩幅から導出される。
【０００５】
「歩数」は、携帯端末内の加速度センサによって検出された軸毎の加速度を二乗和の平方根とし（√(ｘ2＋ｙ2＋ｚ2)）、そのピーク−ピーク間を１歩として検出する（例えば特許文献３参照）。「歩幅」は、利用者が予め設定するか、若しくは利用者の身長から推定する。又は、他の技術によれば、歩行者に規定距離を歩行させることによって、その歩幅をキャリブレーションする技術もある（例えば非特許文献１参照）。
【０００６】
「進行方向」は、「方位センサ」によって検出される。方位センサとしては、一般に地磁気センサが利用される。地磁気センサを用いて検出した端末の姿勢及び方向を、ディスプレイに３次元表示する技術もある（例えば特許文献４参照）。また、進行方向に交差点を介して複数の道路が存在する場合、その交差点を、現在位置とする技術もある（例えば特許文献５参照）。
【０００７】
自律航法技術を用いた現在位置の決定について、センサデータの累積的誤差の影響を防ぐために、交差点での右折左折を検出した際に、その交差点を、現在位置の特定のための始点とする技術もある（例えば特許文献６参照）。即ち、方向転換が検出される毎に、センサデータの累積的誤差がリセットされることなり、その後の現在位置の特定に、先の累積的誤差が影響しない。
【０００８】
端末の鉛直方向を決定した後に、鉛直方向加速度と進行方向加速度の関係を利用して進行方向を決定する、自律航法技術もある（例えば特許文献７参照）。
【０００９】
【特許文献１】特開平５−０６１４０８号公報
【特許文献２】特開平９−０８９５８４号公報
【特許文献３】特開２００５−０３８０１８号公報
【特許文献４】特開２００４−０４６００６号公報
【特許文献５】特開平３−０９９３９９号公報
【特許文献６】特開昭６３−０１１８１３号公報
【特許文献７】特開２００８−０３９６１９号公報
【非特許文献１】「Nike＋iPodユーザーズガイド」、第２７頁、「online」、［平成２０年６月１９日検索］、インターネット＜ＵＲＬ：http://manuals.info.apple.com/ja/nikeipod_users_guide.pdf＞
【発明の開示】
【発明が解決しようとする課題】
【００１０】
特許文献４に記載された技術によれば、加速度センサ及び地磁気センサを用いて静止状態における方位を導出することができる。静止状態では、加速度センサによって検出される加速度ベクトルは、重力のみを表す。従って、その重力ベクトルとその地磁気ベクトルとを用いて導出される世界座標系から、方位を導出することができる。
【００１１】
しかしながら、実際に、歩行者に所持された携帯端末によって方位を導出する場合、手持ち状態のためにセンサによって検出される波形が乱れ、正しい方位を導出することはできない。特に、歩行時に生じる加速度ベクトルは、重力の他に、運動加速度や腕振り運動による遠心力などが合成されたものである。従って、重力方向を決定できないために世界座標系も導出できず、結局、方位を導出することもできない。また、歩行者が手持ちするような携帯端末については、サイズやコストの制約から、カーナビゲーションシステムに搭載されるジャイロセンサを用いることも難しい。
【００１２】
特許文献７に記載された技術によれば、端末の姿勢を導出した後で、歩行者の進行方向を決定する。しかしながら、進行方向を決定する期間に、端末の姿勢が変わらないことを前提としており、歩行者が携帯端末を手持ちにしている場合には、端末姿勢が変化するために、正しい進行方向を決定することができない。
【００１３】
そこで、本発明は、歩行者が、携帯端末を手持ちで歩行している場合であっても、その携帯端末に搭載された加速度センサ及び地磁気センサを用いて、歩行者の進行方向をできる限り正確に決定する携帯端末、プログラム及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明によれば、３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサと、加速度データ及び地磁気データから歩行者の進行方向を決定する進行方向決定手段とを有し、歩行者によって所持される携帯端末であって、
進行方向決定手段は、
腕振り運動に基づく加速度面に対する法線ベクトルとなる歩行基準ベクトルを算出する歩行基準ベクトル算出手段と、
加速度データ及び地磁気データから、重力ベクトルと、該重力ベクトルに対応する地磁気ベクトルとを導出し、重力ベクトル及び地磁気ベクトルの方位基準面に対する法線ベクトルとなる方位基準ベクトルを算出する方位基準ベクトル算出手段と、
歩行基準ベクトル及び方位基準ベクトルに基づいて、進行方向の方位角を算出する方位角算出手段と
を有することを特徴とする。
【００１５】
本発明の携帯端末における他の実施形態によれば、
歩行基準ベクトル算出手段は、歩行基準ベクトルＵを、加速度面の後方を示す最上点での加速度ベクトルＢと、加速度面の前方を示す最上点での加速度ベクトルＦとの外積（Ｕ＝Ｂ×Ｆ（又はＦ×Ｂ））によって算出し、
方位基準ベクトル算出手段は、方位基準ベクトルＰを、重力ベクトルＧと、地磁気ベクトルＭとの外積（Ｐ＝Ｇ×Ｍ（又はＭ×Ｇ））によって算出し、
方位角算出手段は、方位基準ベクトルＰ及び歩行基準ベクトルＵを用いて、内積とノルム（ベクトルの大きさ）積から、両ベクトルのなす角αを以下の式によって算出し、そのなす角αから方位角θを導出する
α＝arccos（(Ｐ・Ｕ)／(|Ｐ||Ｕ|)）
ことも好ましい。
【００１６】
本発明の携帯端末における他の実施形態によれば、
方位角算出手段は、方位基準ベクトルＰと歩行基準ベクトルＵの外積ベクトル（Ｐ×Ｕ）を算出し、方位角θを外積ベクトルと重力ベクトルＧのなす角βとなす角αから以下の式によって導出する
ｃｏｓβ≧０：θ＝α
ｃｏｓβ＜０：θ＝３６０−α
ことも好ましい。
【００１７】
本発明の携帯端末における他の実施形態によれば、
加速度センサから入力された加速度データを、歩数毎、又は歩数に基づく時間単位毎に区分し、進行方向決定手段へ出力する歩行タイミング決定手段と、
進行方向決定手段から出力された、歩数毎、又は歩数に基づく時間単位毎の進行方向について、方向転換がなされたか否かを判定する方向転換判定手段と
を更に有することも好ましい。
【００１８】
本発明によれば、３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサとを有し、歩行者によって所持される携帯端末に搭載されたコンピュータを、加速度データ及び地磁気データから歩行者の進行方向を決定する進行方向決定手段として機能させる携帯端末用のプログラムであって、
進行方向決定手段は、
腕振り運動に基づく加速度面に対する法線ベクトルとなる歩行基準ベクトルを算出する歩行基準ベクトル算出手段と、
加速度データ及び地磁気データから、重力ベクトルと、該重力ベクトルに対応する地磁気ベクトルとを導出し、重力ベクトル及び地磁気ベクトルの方位基準面に対する法線ベクトルとなる方位基準ベクトルを算出する方位基準ベクトル算出手段と、
歩行基準ベクトル及び方位基準ベクトルに基づいて、進行方向の方位角を算出する方位角算出手段と
してコンピュータを機能させることを特徴とする。
【００１９】
本発明によれば、３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサとを有し、歩行者によって所持される携帯端末について、加速度データ及び地磁気データから歩行者の進行方向を決定する進行方向決定方法であって、
腕振り運動に基づく加速度面に対する法線ベクトルとなる歩行基準ベクトルを算出する第１のステップと、
加速度データ及び地磁気データから、重力ベクトルと、該重力ベクトルに対応する地磁気ベクトルとを導出し、重力ベクトル及び地磁気ベクトルの方位基準面に対する法線ベクトルとなる方位基準ベクトルを算出する第２のステップと、
歩行基準ベクトル及び方位基準ベクトルに基づいて、進行方向の方位角を算出する第３のステップと
を有することを特徴とする。
【発明の効果】
【００２０】
本発明の携帯端末、プログラム及び方法によれば、腕振り方向と北方位との方位角を算出できるので、歩行者が、携帯端末を手持ちで歩行している場合であっても、その携帯端末に搭載された加速度センサ及び地磁気センサを用いて、歩行者の進行方向をできる限り正確に決定することができる。
【発明を実施するための最良の形態】
【００２１】
以下では、図面を用いて、本発明を実施するための最良の形態について詳細に説明する。
【００２２】
図１は、歩行者の歩行態様と、加速度変動方向及び地磁気変動方向とを表す説明図である。
【００２３】
図１によれば、歩行者は、携帯端末を手持ちにし、その手を前後に振りながら歩行している。このような一般的な歩行態様を横方向から見れば、携帯端末の位置は、円弧を描きながら振り子状に前後に変動している。また、進行方向から見れば、携帯端末の位置は、上下に変動している。
【００２４】
携帯端末を手持ちした腕における肩部分は、携帯端末の位置変動が描く円弧の回転軸となる。この曲線の変動は、携帯端末に搭載された加速度センサによって検出される。即ち、その回転軸とその円弧とからなる平面（扇形）は、加速度面（加速度ベクトル群の成す面）として表される。携帯端末が手持ちで振られる限り、この加速度面は、進行方向と平行になる。
【００２５】
また、加速度センサから出力された加速度データを二乗和の平方根（√(ｘ2＋ｙ2＋ｚ2)）を導出することによって、合成加速度が得られる。図１によれば、歩行者に把持された携帯端末の位置として、位置ア、位置イ及び位置ウが表されている。位置イは、歩行者の手が真下にある時（最下点）であり、手持ちされた携帯端末の合成加速度は、極大（最大）となる。逆に、位置ア及び位置ウは、歩行者の手が最も高い位置にある時（最上点）であり、その合成加速度は、極小（最小）となる。
【００２６】
更に、歩行者及び携帯端末に対しては、地磁気が到来している。歩行者が、端末を一定の姿勢で保持し、一方向に真っ直ぐ進行している限り、その地磁気のセンサ座標系における到来方向は同じである。しかしながら、歩行者は、手持ちにした携帯端末を前後に振るために、その腕振りに応じて、地磁気の到来方向が、曲線を描いて変動する。この曲線の変動は、携帯端末に搭載された地磁気センサによって検出される。
【００２７】
図２は、腕振り運動と加速度ベクトルとの関係を表す説明図である。
【００２８】
図２によれば、加速度面の２つの振りの端点について、位置アが進行方向前方となり、位置ウが進行方向後方となる。最上点は、加速度面の扇形の両端（位置ア及び位置ウ）を表し、その一方が進行方向前方（位置ア）となり、他方が進行方向後方（位置ウ）となる。進行方向における前方及び後方は、２つの最上点における合成加速度の大きさの違いから判断できる。これによって、加速度データに基づいて、腕振り方向における歩行方向を導出することができる。
【００２９】
図２によれば、携帯端末にかかる加速度ベクトルも表されている。この加速度ベクトルは、携帯端末の進行方向に対して逆方向に検出される。即ち、腕を進行方向前方（位置ア）に振り上げれば、加速度ベクトルは、携帯端末の後方に傾く。逆に、腕を進行方向後方（位置ウ）に振り下げれば、加速度ベクトルは、携帯端末の前方に傾く。従って、腕が前方となる位置アの瞬間の加速度ベクトルが進行方向後方を表し、腕が後方となる位置ウの瞬間の加速度ベクトルが進行方向前方を表す。
【００３０】
図３は、現実に発生する歩行基準ベクトル及び方位基準ベクトルを表す説明図である。
【００３１】
図３（ａ）によれば、加速度センサから得られた３軸の加速度データ（ｘ、ｙ、ｚ）と、地磁気センサから得られた３軸の地磁気データ（ｘ、ｙ、ｚ）とが、３次元座標系にプロットされている。
【００３２】
これに対し、図３（ｂ）によれば、異なる端末位置で測定された加速度データのプロットから、加速度面が検出される。そして、加速度面（歩行者の進行方向）に対する右方（又は左方）を示すベクトルを、「歩行基準ベクトル」とする。また、図３（ｂ）によれば、歩行者は、南から到来している地磁気に対して、方位角θの方向へ歩行している。このとき、重力方向を示す加速度ベクトルと、北方向を示す地磁気ベクトルとから、方位基準面を検出することができる。そして、東方（又は西方）を示すベクトルを、「方位基準ベクトル」とする。図３（ｂ）によれば、携帯端末を手持ちした歩行者による腕振り動作に応じて、進行方向右方に「歩行基準ベクトル」が検出でき、東方向に「方位基準ベクトル」が検出できる。本発明によれば、歩行基準ベクトル及び方向基準ベクトルに基づいて、方位角θを算出することができる。
【００３３】
図４は、図３（ｂ）を鉛直上方向から見た説明図である。
【００３４】
図４によれば、北を上方として方位基準面が位置する。方位基準ベクトルは、方位基準面に対して東に向く。また、その方位基準面から時計回りに方位角θだけ傾いて加速度面（進行方向）が位置する。歩行基準ベクトルは、加速度面に対して右に向く。
【００３５】
図５は、時間経過に応じた合成加速度を表すグラフである。
【００３６】
図５によれば、合成加速度の極大点が腕の最下点であり、極小点が腕の最上点である。歩行により発生する加速度の大きさは、体の左右で対称であるが、端末は、片手で保持するため、左右非対称に検出される。腕の最下点（合成加速度の極大点）は、腕の振り上げ時と腕の振り下げ時との両方で出現するが、両者で加速度の大きさは異なる。腕の振り上げ時とは、腕が後方から前方へ向けて移動している途中であり、腕の振り下げ時とは、腕が前方から後方へ向けて移動している途中である。具体的には、腕の振り上げ時と振り下げ時では、振り下げ時の加速度の方が大きい。
【００３７】
図５によれば、最下点（極大点）における振り上げ時と振り下げ時との加速度の差よりも、最上点（極小点）における前方と後方との加速度の差の方が大きい。具体的には、振り下げ時の最下点の直前の最上点の合成加速度の方が、直後の最上点での合成加速度より大きい。振り下げ運動の直前の最上点では腕は前方にあり、直後の最上点では腕は後方にある。従って、最上点（極小点）について、合成加速度が大きい方は腕が前方にあり、逆に合成加速度が小さい方には腕が後方にある。
【００３８】
図２で前述したように、加速度ベクトルは、腕の振りと反対側に働いているため、加速度面の前後は、腕の前後に対して反転している。即ち、腕が前方にあるとき、加速度ベクトルは後方にあり、腕が後方にあるとき、加速度ベクトルは前方にある。従って、腕の最上点について、合成加速度の大きい方が、加速度面の後方を示す加速度ベクトルであり、合成加速度の小さい方が前方を示す加速度ベクトルである。尚、端末を保持しているのが右手であるのか左手であるのかという情報は必要ない。
【００３９】
以下の表１は、加速度データ及び地磁気データの所定期間における観測データである。表１によれば、加速度データａｘ，ａｙ，ａｚと、地磁気データｍｘ，ｍｙ，ｍｚと、合成加速度と、その増減と、加速度面（進行方向）の前方後方の判定結果が表されている。
【表１】
2010008103.tif 000003
【００４０】
最初に、加速度面から「歩行基準ベクトル」を算出する。歩行基準ベクトルは、歩行方向を示すもので、加速度面の法線ベクトルで表現される。原点から伸びる法線ベクトルは、加速度面に対して２方向に引くことができる。加速度面は、進行方向（歩行者の前後）を示すので、２方向の法線ベクトルは、歩行者の右方と左方にあたる。ここでは、歩行基準ベクトルは、２方向の法線ベクトルのうち歩行者右方である、と定義する（勿論、左方でもよい）。右方は、加速度面の後方・前方を示す２つの最上点における加速度ベクトルの外積から算出される。
【００４１】
以下の式（１）によって、歩行基準ベクトルを算出する。
加速度面の前方を示す最上点での加速度ベクトル：Ｆ＝（ｘＦ，ｙＦ，ｚＦ）
加速度面の後方を示す最上点での加速度ベクトル：Ｂ＝（ｘＢ，ｙＢ，ｚＢ）
加速度面の右方を示す歩行基準ベクトル：      ：Ｕ＝（ｘＵ，ｙＵ，ｚＵ）
Ｕ＝Ｂ×Ｆ
＝（ｙＢｚＦ−ｚＢｙＦ，ｚＢｘＦ−ｘＢｚＦ，ｘＢｙＦ−ｙＢｘＦ）式（１）
尚、歩行基準ベクトルを歩行者の左方と定義した場合は、式（１）は、以下のようになる。
Ｕ＝Ｆ×Ｂ
＝（ｙＦｚＢ−ｚＦｙＢ，ｚＦｘＢ−ｘＦｚＢ，ｘＦｙＢ−ｙＦｘＢ）
【００４２】
例えば、表１の時刻15070と時刻15530（太囲線）の加速度ベクトルをそれぞれ、Ｆ、Ｂとして選択し、式（１）を適用した場合、以下の歩行基準ベクトルＵが得られる。
Ｕ＝（20300，114660，−749115）
【００４３】
次に、「方位基準ベクトル」を算出する。方位基準ベクトルは、重力ベクトルと、それに対応する地磁気ベクトルとから成る方位基準面における法線ベクトルで表される。ここで、法線ベクトルは、歩行基準ベクトルと同様に、原点から２方向に引くことができる。但し、計算を簡単化するため、歩行基準ベクトルで定めた方向に合わせて決定するのが望ましい。即ち、歩行基準ベクトルを歩行者の右方と定めた場合は、方位基準ベクトルも同じく右方（東方）として決定し、歩行基準ベクトルの左方と定めた場合は、方位基準ベクトルも同じく左方（西方）として決定する。以後は、歩行基準ベクトルと方位基準ベクトルを同じ方向に決定するものとして説明する。
【００４４】
方位基準ベクトルを算出するには、重力ベクトルと、それに対応する地磁気ベクトルを決定する必要がある。第１の算出方法として、歩行基準ベクトルを導出する際に算出した前方・後方の２つの最上点での加速度ベクトルの中点（平均）を重力ベクトルとして用いることができる（重力ベクトルＧ＝（Ｂ＋Ｆ）／２）。また、重力ベクトルに対応する地磁気ベクトルとしては、２つの最上点のタイミングの間で検出された複数の地磁気ベクトルの平均を用いることができる。
【００４５】
重力ベクトルと、それに対応する地磁気ベクトルとから、方位基準ベクトルを算出する。方位基準ベクトルは、ここでは歩行基準ベクトルに合わせて、右方（東方）と定義する。
以下の式（２）によって、方位基準ベクトルを算出する。
重力ベクトル  ：Ｇ＝（ｘＧ，ｙＧ，ｚＧ）
地磁気ベクトル：Ｍ＝（ｘＭ，ｙＭ，ｚＭ）
方位基準ベクトル：Ｐ＝（ｘＰ，ｙＰ,ｚＰ）
Ｐ＝Ｇ×Ｍ
＝（ｙＧｚＭ−ｚＧｙＭ，ｚＧｘＭ−ｘＧｚＭ，ｘＧｙＭ−ｙＧｘＭ）式（２）
尚、方位基準ベクトルを左方(西方)と定義した場合は、式（２）は、以下のようになる。
Ｐ＝Ｍ×Ｇ
＝（ｙＭｚＧ−ｚＭｙＧ，ｚＭｘＧ−ｘＭｚＧ，ｘＭｙＧ−ｙＭｘＧ）
【００４６】
例として、表１のデータを用いて、重力ベクトルＧを、最上点後方加速度ベクトルＢと最上点前方加速度ベクトルＦとの中点とし、地磁気ベクトルＭを、Ｂ−Ｆ間（時刻15070−15530間）の地磁気ベクトルの平均として、式（２）を適用すると、以下の値が得られる。
重力ベクトル    ：Ｇ＝(40.5, 907.5, 140)
地磁気ベクトル  ：Ｍ＝(534.7, 351, 126. 7)
方位基準ベクトル：Ｐ＝(65810, 69723.3, −470994.5)
【００４７】
方位基準ベクトルを算出する第２の算出方法として、最下点（合成加速度の極大点）での加速度ベクトルをそのまま重力ベクトルと見なしても良い。また、地磁気ベクトルは、重力ベクトルと同様に、最下点で選択することもできる。
【００４８】
歩行基準ベクトルと方位基準ベクトルのなす角から、方位角θを求める。２つのベクトルのなす角は、内積とノルム（ベクトルの大きさ）積から算出できる。方位基準ベクトルＰ及び歩行基準ベクトルＵから、両ベクトルのなす角αは、以下の式で表される。
α＝arccos（(Ｐ・Ｕ)／(|Ｐ||Ｕ|)）                              式（３）
【００４９】
ここで、なす角αは、劣角である（０〜１８０度）。これに対し、求める方位角θは、０〜３６０度（北方位を０度とした時計回りの角度）であり、優角を含む。そのため、なす角を方位角に変換する。
【００５０】
図６は、なす角と方位角の関係を表す説明図である。
【００５１】
図６によれば、方位基準ベクトルＰと歩行基準ベクトルＵの外積ベクトルＰ×Ｕによれば、θが１８０未満のとき重力ベクトルと同一方向を示す。このとき、θ＝αである。一方で、θが１８０度以上になるべきときには、Ｐ×Ｕは、重力ベクトルと逆方向を示す。このとき、θ＝３６０−αである。そのため、Ｐ×Ｕと重力ベクトルＧのなす角を求め（角度ではなく余弦でもよい）、その結果に基づいてαをθに変換する。
【００５２】
Ｐ×Ｕと重力ベクトルＧとのなす角をβとすると、以下の式になる。
ｃｏｓβ≧０：θ＝α
ｃｏｓβ＜０：θ＝３６０−α
【００５３】
例として、表１のデータを用いて、式（３）を計算すると、以下のようになる。
α＝６．３(deg)
【００５４】
このとき、
Ｐ×Ｕ＝(1773434520 , 39738069800, −6130390933) 
ｃｏｓβ＝１
であるため、以下のようになる。
θ＝α＝６．３(deg)
【００５５】
図７は、本発明の携帯端末における機能構成図である。
【００５６】
図７によれば、携帯端末１は、プロセッサ・メモリ１０と、地磁気センサ１１と、加速度センサ１２と、ＧＰＳ部１３と、地図情報記憶部１４と、ディスプレイ部１５とを有する。
【００５７】
地磁気センサ１１は、３軸方向（前後方向、左右方向及び上下方向）の地磁気の方向を測定する。地磁気センサ１１は、ホール素子を分離し、分離したホール素子からそれぞれ検出された値を出力する。
【００５８】
加速度センサ１２は、加速度、即ち単位時間当たりの速度の変化を検出する。携帯端末の傾きを検出することができる３軸タイプの場合、３次元の加速度を検出でき、地球の重力（静的加速度）の計測にも対応できる。
【００５９】
ＧＰＳ部１３は、基準の現在位置となる緯度経度情報を測位する。測位された現在位置を基準点として、歩行者の現在位置を、歩数、歩幅及び進行方向によって積算することができる。
【００６０】
地図情報記憶部１４は、例えば道路地図のような走行経路を表す地図情報を記憶する。また、ディスプレイ部１５は、プロセッサ・メモリ１０から出力された進行方向及び現在位置を、地図情報と共に表示する。これにより、歩行者に対してナビゲーション機能を提供する。
【００６１】
プロセッサ・メモリ１０は、歩行タイミング決定部１０１と、進行方向決定部１０２と、方向転換判定部１０３と、歩幅決定部１０４と、移動量積算部１０５と、現在位置決定部１０６として機能するようなプログラムを実行する。
【００６２】
歩行タイミング決定部１０１は、加速度センサ１２から出力された加速度データ列を、所定時間毎、例えば歩数毎、又は歩数に基づく時間単位毎の、加速度データに分割する。例えば、合成加速度の変化、即ち移動時の揺れ具合から歩数を算出することもできる。
【００６３】
進行方向決定部１０２は、所定時間毎に、地磁気センサ１１からの地磁気データと、加速度センサ１２からの加速度データと、歩行タイミング決定部１０１からの歩行タイミングデータから、進行方向を決定する。本発明は、この進行方向決定部１０２における進行方向の特定方法に基づく。
【００６４】
方向転換判定部１０３は、進行方向決定部１０２から進行方向のデータを受け取る。方向転換判定部１０３は、メモリを有し、進行方向のデータを時間経過に応じて記憶する。そして、方向転換判定部１０３は、メモリに記憶された一定の時間範囲の進行方向について、方向転換がなされたか否かを判定する。
【００６５】
歩幅決定部１０４は、歩行タイミング決定部１０１から１歩分の加速度データを受け取り、１歩毎の歩幅を決定する。決定された歩幅は、移動量積算部１０５へ出力される。尚、歩幅決定部１０４は、その歩幅の情報を方向転換判定部１０３にも出力する。
【００６６】
移動量積算部１０５は、進行方向決定部１０２から進行方向の情報を受け取り、歩幅決定部１０４から歩幅の情報を受け取る。そして、移動量積算部１０５は、１歩分の進行方向及び歩幅を積算する。現在位置決定部１０６は、地図情報記憶部１４から地図情報を取得し、積算された移動量から現在位置を特定する。現在位置決定部１０６は、方向転換判定部１０３が方向転換したと判定すれば、地図情報における近傍の交差点の位置を現在位置として決定する。また、方向転換していないと判定すれば（直進したと判定すれば）、マップマッチングによって投影された位置を、現在位置として決定する。
【００６７】
本発明の特徴となる進行方向決定部１０２は、歩行基準ベクトル算出部１０２１と、方位基準ベクトル算出部１０２２と、方位角算出部１０２３とを有する。
【００６８】
歩行基準ベクトル算出部１０２１は、腕振り運動に基づく加速度面に対する法線ベクトルとなる歩行基準ベクトルＵを算出する。加速度データ群から腕の最上点（合成加速度の極小点）を選択し、２つの最上点の合成加速度の大きさの違いから、前方又は後方を決定する。それに基づいて、歩行基準ベクトルＵを、加速度面の後方を示す最上点での加速度ベクトルＢと、加速度面の前方を示す最上点での加速度ベクトルＦとの外積（Ｕ＝Ｂ×Ｆ（又はＦ×Ｂ））によって算出する。
【００６９】
尚、基準ベクトル算出部１０２１は、入力される加速度データ及び地磁気データについて、所定時間範囲のデータをメモリし、最大値及び最小値から所定割合のデータを除去することも好ましい。即ち、突飛なデータを除去することによって、進行方向の精度を向上させることができる。
【００７０】
方位基準ベクトル算出部１０２２は、加速度データ及び地磁気データから、重力ベクトルと、該重力ベクトルに対応する地磁気ベクトルとを導出し、重力ベクトル及び地磁気ベクトルの方位基準面に対する法線ベクトルとなる方位基準ベクトルＰを算出する。具体的には、方位基準ベクトルＰを、重力ベクトルＧと、地磁気ベクトルＭとの外積（Ｐ＝Ｇ×Ｍ（又はＭ×Ｇ））によって算出する。重力ベクトルには、歩行基準ベクトル算出部１０２１によって算出された２つの最上点（極小点）ベクトルの中点か、又は、腕の最下点（合成加速度の極大点）での加速度データを用いることができる。重力ベクトルに対応する地磁気ベクトルは、２つの最上点間の平均値を用いるか、又は重力ベクトル同様、最下点を用いることができる。方位基準ベクトルは、歩行基準ベクトルに合わせて、東方又は西方に決定する。
【００７１】
方位角算出部１０２３は、歩行基準ベクトル及び方位基準ベクトルに基づいて、進行方向の方位角θを算出する。具体的には、方位基準ベクトルＰ及び歩行基準ベクトルＵを用いて、内積とノルム（ベクトルの大きさ）積から、両ベクトルのなす角を以下の式によって算出する。
α＝arccos（(Ｐ・Ｕ)／(|Ｐ||Ｕ|)）
そして、両ベクトルのなす角αから、方位角θを導出する。
【００７２】
方位角算出部１０２３は、方位基準ベクトルＰと歩行基準ベクトルＵの外積ベクトル（Ｐ×Ｕ）を算出し、方位角θを外積ベクトルと重力ベクトルＧのなす角βとなす角αから以下の式によって導出する。
ｃｏｓβ≧０：θ＝α
ｃｏｓβ＜０：θ＝３６０−α
【００７３】
尚、方位角算出部１０２３から出力された方位角θについて、所定時間範囲の方位角θをメモリし、当該方位角θの前後の変化が所定角度閾値以上となっている方位角θを除去することも好ましい。また、除去されたデータについて、時間的に前後に算出された単位区間の方位角θの平均によって補完することも好ましい。ここでの平均の計算には、の方位角θの変化の大きさを求める際と同様、劣角を用いる。例えば、２度と３５８度の平均は、０度である（１８０度ではない）。更に、蓄積した複数の方位角θの変化を平均化することも好ましい。具体的には、直近数歩分の方位角θの移動平均を求めることで、方位角θの値のばたつきを抑制することができる。ここでの移動平均の計算にも、と同様、劣角を用いる。
【００７４】
以上、詳細に説明したように、本発明の携帯端末、プログラム及び方法によれば、歩行者が、携帯端末を手持ちで歩行している場合であっても、その携帯端末に搭載された加速度センサ及び地磁気センサを用いて、歩行者の進行方向をできる限り正確に決定することができる。
【００７５】
前述した本発明における種々の実施形態によれば、当業者は、本発明の技術思想及び見地の範囲における種々の変更、修正及び省略を容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【図面の簡単な説明】
【００７６】
【図１】歩行者の歩行態様と、加速度変動方向及び地磁気変動方向とを表す説明図である。
【図２】腕振り運動と加速度ベクトルとの関係を表す説明図である。
【図３】現実に発生する歩行基準ベクトル及び方位基準ベクトルを表す説明図である。
【図４】図３（ｂ）を鉛直上方向から見た説明図である。
【図５】時間経過に応じた合成加速度を表すグラフである。
【図６】なす角と方位角の関係を表す説明図である。
【図７】本発明の携帯端末における機能構成図である。
【符号の説明】
【００７７】
１  携帯端末
１０  プロセッサ・メモリ
１０１  歩行タイミング決定部
１０２  進行方向決定部
１０２１  歩行基準ベクトル算出部
１０２２  方位基準ベクトル算出部
１０２３  方位角算出部
１０３  方向転換判定部
１０４  歩幅決定部
１０５  移動量積算部
１０６  現在位置決定部
１１  地磁気センサ
１２  加速度センサ
１３  ＧＰＳ部
１４  地図情報記憶部
１５  ディスプレイ部
【図１】
2010008103.tif 000004
【図２】
2010008103.tif 000005
【図３】
2010008103.tif 000006
【図４】
2010008103.tif 000007
【図５】
2010008103.tif 000008
【図６】
2010008103.tif 000009
【図７】
2010008103.tif 000010