(57)【要約】【課題】携帯端末を手持ちした歩行者であっても、加速度センサ及び地磁気センサを用いて、その進行方向をできる限り正確に決定する携帯端末等を提供する。【解決手段】３軸の加速度センサと、３軸の地磁気センサを有し、歩行者によって所持される携帯端末であって、地磁気データから歩行者の進行方向を決定する進行方向決定手段を有する。その進行方向決定手段は、時間経過に応じた加速度データから、腕振りによって生じた地磁気ベクトル群の分布する円錐底面の法線ベクトルを算出する法線ベクトル算出手段と、地磁気データ及び法線ベクトルから円錐底面を算出する円錐底面近似手段と、円錐における高さｈを算出する円錐高さ算出手段と、高さｈに基づいて、南北方向に対する方向角θを算出する方向角算出手段とを有する。方向角算出手段は、地磁気と重力方向のなす角Ｉを用いて、方向角θ＝arcsin（ｈ／sin Ｉ）によって算出する。【選択図】図２
2010008240.tif 000002
【特許請求の範囲】
【請求項１】
３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサを有し、歩行者によって所持される携帯端末であって、
前記地磁気データから前記歩行者の進行方向を決定する進行方向決定手段を有し、
前記進行方向決定手段は、
時間経過に応じた前記加速度データから、腕振りによって生じた地磁気ベクトル群の分布する円錐底面の法線ベクトルを算出する法線ベクトル算出手段と、
前記地磁気データ及び前記法線ベクトルから円錐底面を算出する円錐底面近似手段と、
前記円錐における高さｈを算出する円錐高さ算出手段と、
前記高さｈに基づいて、南北方向に対する方向角θを算出する方向角算出手段と
を有することを特徴とする携帯端末。
【請求項２】
前記方向角算出手段は、地磁気と重力方向のなす角Ｉを用いて、
方向角θ＝arcsin（ｈ／sin Ｉ）
を算出することを特徴とする請求項１に記載の携帯端末。
【請求項３】
前記法線ベクトル算出手段は、最小二乗法によって前記法線ベクトルを算出することを特徴とする請求項１又は２に記載の携帯端末。
【請求項４】
前記地磁気データ及び端末保持姿勢から、北向きか南向きか、及び東向きか西向きかに基づいて、北東、南東、南西又は北西のおおよその向きを導出する概略方位決定手段と、
前記進行方向決定手段から出力された前記方向角θと、前記概略方位決定手段から出力されたおおよその向きとを受け取り、北を０度とした時計回りの方位角（０〜３６０°）を、以下のように導出する方位角決定手段と
「北東」の場合、方位角＝方向角θ
「南東」の場合、方位角＝１８０−方向角θ
「南西」の場合、方位角＝１８０＋方向角θ
「北西」の場合、方位角＝３６０−方向角θ
を更に有することを特徴とする請求項１から３のいずれか１項に記載の携帯端末。
【請求項５】
３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサとを有し、歩行者によって所持される携帯端末に搭載されたコンピュータを機能させる携帯端末用のプログラムであって、
前記地磁気データから前記歩行者の進行方向を決定する進行方向決定手段としてコンピュータを機能させ、
前記進行方向決定手段は、
時間経過に応じた前記加速度データから、腕振りによって生じた地磁気ベクトル群の分布する円錐底面の法線ベクトルを算出する法線ベクトル算出手段と、
前記地磁気データ及び前記法線ベクトルから円錐底面を算出する円錐底面近似手段と、
前記円錐における高さｈを算出する円錐高さ算出手段と、
前記高さｈに基づいて、南北方向に対する方向角θを算出する方向角算出手段と
してコンピュータを機能させることを特徴とする携帯端末用のプログラム。
【請求項６】
３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサを有し、歩行者によって所持される携帯端末について、前記地磁気データから前記歩行者の進行方向を決定する進行方向決定方法であって、
時間経過に応じた前記加速度データから、腕振りによって生じた地磁気ベクトル群の分布する円錐底面の法線ベクトルを算出する第１のステップと、
前記地磁気データ及び前記法線ベクトルから円錐底面を算出する第２のステップと、
前記円錐における高さｈを算出する第３のステップと、
前記高さｈに基づいて、南北方向に対する方向角θを算出する第４のステップと
を有することを特徴とする携帯端末の進行方向決定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、地磁気センサ及び加速度センサを用いて歩行者の進行方向を決定する携帯端末、プログラム及び方法に関する。特に、進行方向及び現在位置をリアルタイムに導出する自律航法技術に関する。
【背景技術】
【０００２】
従来、加速度センサ及び方位センサを用いて、進行方向及び現在位置をリアルタイムに導出する自律航法技術がある。自律航法技術は、ＧＰＳ(Global Positioning System)技術と組み合わされて、主にカーナビゲーションシステム(Car Navigation System)に利用されている。カーナビゲーションシステムは、自動車の運転者に対して、正確な進行方向及び現在位置と、目的地への走行経路案内とを、ディスプレイに表示する。
【０００３】
カーナビゲーションシステムは、ＧＰＳによって測位した現在位置情報を、車速パルス又はジャイロのような自律航法技術によって補正する。また、道路地図情報を必要に応じて読み出し、現在の走行経路が道路上と一致するように、進行方向及び現在位置を補正する（投影法によるマップマッチング技術、例えば特許文献１参照）。これにより、センサの誤差によって、現在位置が、道路上でない位置になることを防ぐことができる。
【０００４】
これに対し、このようなナビゲーション技術を、歩行者の所持する携帯端末に適応したシステムもある。具体的には、検出した歩行者の「歩数」と、その歩行者の「歩幅」とを用いて、始点からの累積的な現在位置を導出する（例えば特許文献２参照）。自律航法技術を歩行者に適応した場合、水平方向の移動以外の加速度成分も検出される。従って、測定される距離は、単純に加速度センサの出力を積分するのではなく、歩数及び歩幅から導出される。
【０００５】
「歩数」は、携帯端末内の加速度センサによって検出された軸毎の加速度を二乗和の平方根とし(√(ｘ２＋ｙ２＋ｚ２))、そのピーク−ピーク間を１歩として検出する（例えば特許文献３参照）。「歩幅」は、利用者が予め設定するか、若しくは利用者の身長から推定する。又は、他の技術によれば、歩行者に規定距離を歩行させることによって、その歩幅をキャリブレーションする技術もある（例えば非特許文献１参照）。
【０００６】
「進行方向」は、「方位センサ」によって検出される。方位センサとしては、一般に地磁気センサが利用される。地磁気センサを用いて検出した端末の姿勢及び方向を、ディスプレイに３次元表示する技術もある（例えば特許文献４参照）。また、進行方向に交差点を介して複数の道路が存在する場合、その交差点を、現在位置とする技術もある（例えば特許文献５参照）。
【０００７】
自律航法技術を用いた現在位置の決定について、センサデータの累積的誤差の影響を防ぐために、交差点での右折左折を検出した際に、その交差点を、現在位置の特定のための始点とする技術もある（例えば特許文献６参照）。即ち、方向転換が検出される毎に、センサデータの累積的誤差がリセットされることなり、その後の現在位置の特定に、先の累積的誤差が影響しない。
【０００８】
端末の鉛直方向を決定した後に、鉛直方向加速度と進行方向加速度の関係を利用して進行方向を決定する、自律航法技術もある（例えば特許文献７参照）。
【０００９】
【特許文献１】特開平５−０６１４０８号公報
【特許文献２】特開平９−０８９５８４号公報
【特許文献３】特開２００５−０３８０１８号公報
【特許文献４】特開２００４−０４６００６号公報
【特許文献５】特開平３−０９９３９９号公報
【特許文献６】特開昭６３−０１１８１３号公報
【特許文献７】特開２００８−０３９６１９号公報
【非特許文献１】「Nike＋iPodユーザーズガイド」、第２７頁、「online」、［平成２０年６月２０日検索］、インターネット＜ＵＲＬ：http://manuals.info.apple.com/ja/nikeipod_users_guide.pdf＞
【発明の開示】
【発明が解決しようとする課題】
【００１０】
特許文献４に記載された技術によれば、加速度センサ及び地磁気センサを用いて静止状態における方位を導出するものである。しかしながら、実際に、歩行者が手持ちにした携帯端末によって方位を導出する場合、手持ち状態のためにセンサによって検出される波形が乱れ、正しい方位を導出することはできない。特に、歩行者が手を前方と後方に振るために、センサによって検出されるデータは大きく変動する。また、歩行者が手持ちするような携帯端末については、サイズやコストの制約から、カーナビゲーションシステムに搭載されるジャイロセンサを用いることも難しい。
【００１１】
特許文献７に記載された技術は、端末の姿勢を導出した後歩行者の進行方向を決定するものであるが、進行方向を決定する期間において端末の姿勢が変わらないことを前提としており、歩行者が携帯端末を手持ちにしている場合には、端末姿勢が変化することから正しい進行方向を求めることができない。
【００１２】
そこで、本発明は、歩行者が、携帯端末を手持ちで歩行している場合であっても、その携帯端末に搭載された地磁気センサ及び加速度センサを用いて歩行者の進行方向をできる限り正確に決定する携帯端末、プログラム及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明によれば、３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサを有し、歩行者によって所持される携帯端末であって、
地磁気データから歩行者の進行方向を決定する進行方向決定手段を有し、
進行方向決定手段は、
時間経過に応じた加速度データから、腕振りによって生じた地磁気ベクトル群の分布する円錐底面の法線ベクトルを算出する法線ベクトル算出手段と、
地磁気データ及び法線ベクトルから円錐底面を算出する円錐底面近似手段と、
円錐における高さｈを算出する円錐高さ算出手段と、
高さｈに基づいて、南北方向に対する方向角θを算出する方向角算出手段と
を有することを特徴とする。
【００１４】
本発明の携帯端末における他の実施形態によれば、
方向角算出手段は、地磁気と重力方向のなす角Ｉを用いて、
方向角θ＝arcsin（ｈ／sin Ｉ）
を算出することも好ましい。
【００１５】
本発明の携帯端末における他の実施形態によれば、
法線ベクトル算出手段は、最小二乗法によって法線ベクトルを算出することも好ましい。
【００１６】
本発明の携帯端末における他の実施形態によれば、
地磁気データ及び端末保持姿勢から、北向きか南向きか、及び東向きか西向きかに基づいて、北東、南東、南西又は北西のおおよその向きを導出する概略方位決定手段と、
進行方向決定手段から出力された方向角θと、概略方位決定手段から出力されたおおよその向きとを受け取り、北を０度とした時計回りの方位角（０〜３６０°）を、以下のように導出する方位角決定手段と
「北東」の場合、方位角＝方向角θ
「南東」の場合、方位角＝１８０−方向角θ
「南西」の場合、方位角＝１８０＋方向角θ
「北西」の場合、方位角＝３６０−方向角θ
を更に有することも好ましい。
【００１７】
本発明によれば、３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサとを有し、歩行者によって所持される携帯端末に搭載されたコンピュータを機能させる携帯端末用のプログラムであって、
地磁気データから歩行者の進行方向を決定する進行方向決定手段としてコンピュータを機能させ、
進行方向決定手段は、
時間経過に応じた加速度データから、腕振りによって生じた地磁気ベクトル群の分布する円錐底面の法線ベクトルを算出する法線ベクトル算出手段と、
地磁気データ及び法線ベクトルから円錐底面を算出する円錐底面近似手段と、
円錐における高さｈを算出する円錐高さ算出手段と、
高さｈに基づいて、南北方向に対する方向角θを算出する方向角算出手段と
してコンピュータを機能させることを特徴とする。
【００１８】
本発明によれば、３軸の加速度データを出力する加速度センサと、３軸の地磁気データを出力する地磁気センサを有し、歩行者によって所持される携帯端末について、地磁気データから歩行者の進行方向を決定する進行方向決定方法であって、
時間経過に応じた加速度データから、腕振りによって生じた地磁気ベクトル群の分布する円錐底面の法線ベクトルを算出する第１のステップと、
地磁気データ及び法線ベクトルから円錐底面を算出する第２のステップと、
円錐における高さｈを算出する第３のステップと、
高さｈに基づいて、南北方向に対する方向角θを算出する第４のステップと
を有することを特徴とする。
【発明の効果】
【００１９】
本発明の携帯端末、プログラム及び方法によれば、歩行者が、携帯端末を手持ちで歩行している場合であっても、その携帯端末に搭載された地磁気センサ及び加速度センサを用いて歩行者の進行方向をできる限り正確に決定することができる。
【発明を実施するための最良の形態】
【００２０】
以下では、図面を用いて、本発明を実施するための最良の形態について詳細に説明する。
【００２１】
図１は、歩行者の歩行態様と、地磁気変動方向とを表す説明図である。
【００２２】
図１によれば、歩行者は、携帯端末を手持ちにし、その手を前後に振りながら歩行している。このような一般的な歩行態様を横方向から見れば、携帯端末の位置は、円弧を描きながら振り子状に前後に変動している。また、進行方向から見れば、携帯端末の位置は、上下に変動している。
【００２３】
携帯端末を手持ちした腕における肩部分は、携帯端末の位置変動が描く円弧の回転軸となる。この曲線の変動は、携帯端末に搭載された加速度センサ又は地磁気センサによって検出される。即ち、その回転軸とその円弧とからなる平面（扇形）は、加速度面（加速度ベクトル群の成す面）として表される。携帯端末が手持ちで振られる限り、この加速度面は、進行方向と平行になる。
【００２４】
また、加速度センサから出力された加速度データを二乗和の平方根（√(ｘ2＋ｙ2＋ｚ2)）を求めることによって、合成加速度が得られる。携帯端末には加速度センサ及び地磁気センサが搭載されている。センサは、端末に対して固定されており、端末の向きが決まれば、センサの軸の向きも決まる。
【００２５】
図１によれば、歩行者に把持された携帯端末の位置として、位置Ａ、位置Ｂ及び位置Ｃが表されている。位置Ｂは、歩行者の手が真下にある時（最下点）であり、重力方向を表すこととなる。逆に、位置Ａ及び位置Ｃは、歩行者の腕振り運動の中で、最も高い位置にある時（最上点）である。
【００２６】
歩行者及び携帯端末に対しては、地磁気が到来している。歩行者が、端末を一定の姿勢で保持し、一方向に真っ直ぐ進行している限り、その地磁気のセンサ座標系における到来方向は同じである。しかしながら、歩行者は、手持ちにした携帯端末を前後に振るために、その腕振りに応じて、地磁気の到来方向が、曲線を描いて変動する。この曲線の変動は、携帯端末に搭載された地磁気センサによって検出される。即ち、その軸とその曲線とからなる面は、地磁気面（地磁気ベクトル群の成す面）として表される。
【００２７】
図２は、現実に発生する加速度面及び地磁気面を表す説明図である。
【００２８】
図２によれば、加速度センサから得られた３軸の加速度データ（ｘ，ｙ，ｚ）と、地磁気センサから得られた３軸の地磁気データ（ｘ，ｙ，ｚ）とが、３次元座標系にプロットされたものである。また、図２には、携帯端末が図１に表された位置Ａ、位置Ｂ及び位置Ｃにある場合の地磁気及び加速度も、表されている。位置Ａ、位置Ｂ及び位置Ｃの地磁気及び加速度のプロットを結ぶことによって、地磁気面及び加速度面を検出できる。
【００２９】
図２によれば、歩行者は、南から到来している地磁気に対して、方向角θの方向へ歩行している。このとき、携帯端末を手持ちした歩行者による腕振り動作に応じて、地磁気到来方向と反対側に地磁気面が検出できる。この地磁気面は、加速度面の法線ベクトルを軸として、地磁気ベクトルを母線とした、円錐の側面の一部を構成する。また、円錐の底面は、加速度面と平行になる。
【００３０】
地磁気面は、加速度面の法線ベクトルを軸として、地磁気ベクトルを母線とした、円錐の一部を構成する。このとき、円錐の高さｈを算出する。本発明によれば、円錐の高さｈによって、方向角θを算出することができる。
【００３１】
地磁気面は、腕振りに応じた曲面によって表されているが、本発明によれば、腕振りによって生じた円錐状に分布する地磁気ベクトル群を、円錐に近似する必要がある。具体的には、円錐底面を近似的に求め、原点から当該底面までの距離、即ち、円錐の高さｈを算出することで、近似円錐を同定する。
【００３２】
図２によれば、各種パラメータを、以下のように定義する。
ｈ：円錐の高さ（円錐の頂点と、底面との間の距離）
ｌ：円錐の母線の長さ（地磁気ベクトルの長さ）
Ｉ：南から到来する地磁気と、重力方向とのなす角
（携帯端末が位置する緯度によって決定される）
【００３３】
地磁気ベクトルの長さをｌ＝１に正規化した後、円錐の高さｈは、以下のように算出することができる。
ｈ＝sinＩ・sinθ
sinθ＝ｈ／sinＩ
θ＝arcsin（ｈ／sinＩ）
【００３４】
ここで、地磁気面の円錐における高さｈを算出する具体例について説明する。
【００３５】
表１は、加速度センサ及び地磁気センサの出力の例である。
【表１】
2010008240.tif 000003
【００３６】
表２は、表１のデータを正規化したものである。加速度データと地磁気データを大きさが１になるように正規化する。
【表２】
2010008240.tif 000004
【００３７】
円錐底面を求める方法として、例えば、最小二乗法がある。地磁気データに最小二乗法を適用することで円錐底面を求めることができる。しかしながら、地磁気センサで検出される地磁気データは、歩行者の腕振り動作に応じたものであることから、円錐底面の非常に狭い領域に偏っている。従って、誤差の影響を受けると法線ベクトルの向きが変わってしまい、正しい円錐底面を求めることが難しい。
【００３８】
一方、加速度データに最小二乗法を適用することで加速度面を求めることができる。加速度面は、加速度データに加えて原点を通ることから、誤差の影響をあまり受けずに正しい加速度面を求めることができる。また、加速度面と円錐底面は平行であるから、法線ベクトルの向きは同じである。従って、加速度データから加速度面を求め、加速度面の法線ベクトルを利用することで、正しい円錐底面を求めることができる。
【００３９】
最小二乗法は、残差の二乗の和が最小となるように、その現象に対し、予測関数ｆ（ｘ）のそれぞれの係数を決定する方法である。残差とは、ｉ番目のデータｎｉに対して予測された関数値ｆ（ｎｉ）と、測定されたデータｍｉと差、即ち、ｍｉ−ｆ（ｎｉ）である。一般に、原点を通る平面は、以下の式（１）によって表される。
ａｘ＋ｂｙ＋ｃｚ＝０                                                式（１）
【００４０】
このとき、（ａ，ｂ，ｃ）は、平面に対する法線ベクトルとなる。ここで、計算を単純化するため、式（１）を、式（２）のように変形する。
ｚ＝αｘ＋βｙ                                                  式（２）
尚、（ａ，ｂ，ｃ）は法線ベクトルであるため、ｃ＝−１として問題は無い。従って、α＝ａ、β＝ｂとなり、法線ベクトルは（α，β，−１）と表すことができる。ｎ個の点群ｘｉ、ｙｉ、ｚｉ（ｉ＝１〜ｎ）が与えられたとき、以下の式（３）が最小となるα及びβを算出すればよい。
Ｓ＝Σi=1n(ｚｉ−αｘｉ−βｙｉ)                                  式（３）
ここで、以下のように規定したとする。
Ａ＝Σi=1n(ｘｉ２)
Ｂ＝Σi=1n(ｙｉ２)
Ｃ＝Σi=1n(ｚｉ２)
Ｄ＝Σi=1n(ｘｉ×ｙｉ)
Ｅ＝Σi=1n(ｘｉ×ｚｉ)
Ｆ＝Σi=1n(ｙｉ×ｚｉ)
このとき、式（３）は、以下のような式（４）になる。
Ｓ＝Ａα２＋Ｂβ２＋Ｃ＋２αβＤ−２αＥ−２βＦ                  式（４）
式（４）をαの関数とみたとき、凹型の２次関数となり、極小値が最小となる。これは、βにおいても同様である。即ち、Ｓをα、βに関して偏微分し、０となる点が求める解となる。
【数１】
2010008240.tif 000005
【００４１】
式（５）及び式（６）を解くと、以下の式（７）及び式（８）のように算出できる。
α＝（ＢＥ−ＤＦ）／（ＡＢ−Ｄ２）                              式（７）
β＝（ＡＦ−ＤＥ）／（ＡＢ−Ｄ２）                              式（８）
前述したように、法線ベクトルは（α，β，−１）である。
【００４２】
表２から、加速度面の法線ベクトルを求めると次のようになる。
法線ベクトル (-0.28649, 0.07518, -1)
従って、円錐底面は、以下の式（９）によって表される。
-0.28649ｘ＋0.07518ｙ−ｚ＝ｄ                                    式（９）
地磁気データが、式（９）の平面上にあることから、ｄを求めることができる。
地磁気データの平均を以下のように定義する。
（ｘａ，ｙａ，ｚａ）
このとき、ｄは、以下の式（１０）によって求めることができる。
ｄ＝-0.28649ｘａ＋0.07518ｙａ−ｚａ                            式（１０）
表２から、地磁気データの平均を求めると次のようになる。
地磁気データの平均 (-0.66809, -0.40151, 0.52149)
従って、ｄは以下のように算出される。
ｄ＝-0.36027
これにより、円錐底面は、以下のようになる。
-0.28649ｘ＋0.07518ｙ−ｚ＝-0.36027
【００４３】
平面ａｘ＋ｂｙ＋ｃｚ＝ｄと原点との距離、即ち円錐の高さｈは、以下の関係式で算出される。
【数２】
2010008240.tif 000006
【００４４】
式（１１）に、数値例（ａ，ｂ，ｃ，ｄ）＝(-0.28649, 0.07518, -1, -0.36027)を代入すると、円錐の高さｈは、以下のように算出される。
ｈ＝０．３４５４４
【００４５】
更に、図２によれば、到来する地磁気と重力方向のなす角Ｉが表されている。角度Ｉは、携帯端末が位置する緯度によって決定される（緯度によって固定値となる）。
【００４６】
そして、本発明によれば、円錐の高さｈと、地磁気と重力方向のなす角Ｉとを用いて、南北方向に対する方向角θ（南北方向を０°とし、東西方向を９０°とした角度の大きさ）を算出する。
方向角θ＝arcsin（ｈ／sin Ｉ）
【００４７】
前述した具体的な数値例を代入すると、Ｉ＝４１度の場合、以下のように算出される。
方向角θ＝arcsin（0.34544／sin Ｉ）＝31.77184度
【００４８】
図３は、歩行者の進行方向が、北に対してθの角度の方向に向かっている場合のセンサ座標系における地磁気面の位置を表す説明図である。
【００４９】
図３によれば、進行方向及び加速度面は、南北方向に対して角度θの位置にある。地磁気ベクトルは、重力方向に対して角度Ｉを保ったまま、重力方向を軸としてθだけ回転した方向から到来する。地磁気面は、腕振り運動によって、地磁気ベクトルが、加速度面の法線ベクトルを回転軸として円錐振り子状に運動することによって構成される。地磁気の円錐の底面は、進行方向及び加速度面と平行である。このとき、地磁気の円錐の高さｈは、sinＩ・sinθによって表される。地磁気ベクトルは、その地磁気ベクトルを斜辺とした直角三角形（斜線部）の回転体である円錐の表面を通る。
【００５０】
図４は、歩行者の進行方向が、西（北に対して９０°の角度の方向）に向かっている場合のセンサ座標系における地磁気面の位置を表す説明図である。
【００５１】
図４によれば、進行方向及び加速度面は、南北方向に対して垂直になる（θ＝９０°）。地磁気ベクトルは、重力方向に対して角度Iを保ったまま重力方向を軸として９０°だけ回転した方向から到来する。地磁気面は、腕振り運動によって、地磁気ベクトルが、加速面の法線ベクトルを回転軸として円錐振り子状に運動することによって構成される。このとき、地磁気の円錐の高さｈは、sinＩによって表される。
【００５２】
図５は、歩行者の進行方向が、北に向かっている場合の地磁気面のセンサ座標系における位置を表す説明図である。
【００５３】
図５によれば、地磁気面は、腕振り運動によって、地磁気ベクトルが、加速度面の法線ベクトルを回転軸として振り子状に運動することによって構成される。地磁気は南北方向へ検出されるため、地磁気面は、高さｈ＝sinＩ・sinθ＝０（sinθ＝０のため）の円錐の側面の一部、即ち扇形となり、進行方向と平行（重畳）になる（θ＝０°）。
【００５４】
歩行者の歩行のおおよその向き、即ち、北向きか南向きか、及び東向きか西向きかは、端末保持姿勢と地磁気データとの関係から特定することができる。例えば、端末座標系におけるｘ軸が進行方向と平行で且つｚ軸が左右方向であり、ｘ軸の正方向を前方とし且つｚ軸の正方向を右方とするように端末を保持した場合、ｘ軸の地磁気データが正であれば北向きであり、負であれば南向きである。また、ｚ軸の地磁気データが正であれば西向きであり、負であれば東向きである。
【００５５】
南北方向と東西方向とを組み合わせることで、北を０度とした時計回りの方位角（０〜３６０°）に対して、「北東」（０°〜９０°）「南東」（９０°〜１８０°）「南西」（１８０°〜２７０°）「北西」（２７０°〜３６０°）のように特定することができる。
【００５６】
南北方向に対する方向角θとおおよその向きを組み合わせることで、北を０度とした時計回りの方位角（０〜３６０°）を、以下のように導出することができる。
具体的には、おおよその向きが「北東」の場合、方位角＝方向角θ
おおよその向きが「南東」の場合、方位角＝１８０−方向角θ
おおよその向きが「南西」の場合、方位角＝１８０＋方向角θ
おおよその向きが「北西」の場合、方位角＝３６０−方向角θ
【００５７】
図６は、本発明の携帯端末における機能構成図である。
【００５８】
図６によれば、携帯端末１は、プロセッサ・メモリ１０と、地磁気センサ１１と、加速度センサ１２と、ＧＰＳ部１３と、地図情報記憶部１４と、ディスプレイ部１５とを有する。
【００５９】
地磁気センサ１１は、３軸方向（前後方向、左右方向及び上下方向）の地磁気の方向を測定する。地磁気センサ１１は、検出コイルを分離し、分離した検出コイルからそれぞれ検出された値を出力する。
【００６０】
加速度センサ１２は、加速度、即ち単位時間当たりの速度の変化を検出する。携帯端末の傾きを検出することができる３軸タイプの場合、３次元の加速度を検出でき、地球の重力（静的加速度）の計測にも対応できる。
【００６１】
ＧＰＳ部１３は、基準の現在位置となる緯度経度情報を測位する。測位された現在位置を基準点として、歩行者の現在位置を、歩数、歩幅及び進行方向によって積算することができる。
【００６２】
地図情報記憶部１４は、例えば道路地図のような走行経路を表す地図情報を記憶する。また、ディスプレイ部１５は、プロセッサ・メモリ１０から出力された進行方向及び現在位置を、地図情報と共に表示する。これにより、歩行者に対してナビゲーション機能を提供する。
【００６３】
プロセッサ・メモリ１０は、歩行タイミング決定部１０１と、進行方向決定部１０２と、方位角決定部１０３と、歩幅設定部１０４と、移動量積算部１０５と、現在位置決定部１０６と、概略方位決定部１０７として機能するようなプログラムを実行する。
【００６４】
歩行タイミング決定部１０１は、地磁気センサ１１から出力された地磁気データ列を、所定時間毎、例えば歩数毎、又は歩数に基づく時間単位毎の、地磁気データに分割する。例えば、地磁気ベクトルの円錐振り子運動の周期から歩数を算出することもできる。
【００６５】
進行方向決定部１０２は、所定時間毎に、地磁気センサ１１からの地磁気データから、進行方向を決定する。本発明は、この進行方向決定部１０２における進行方向の特定方法に基づく。
【００６６】
概略方位決定部１０７は、地磁気データ及び端末保持姿勢から、北向きか南向きか、及び東向きか西向きかに基づいて、北東、南東、南西又は北西のおおよその向きを導出する。例えば、ｘ軸の正方向を前方とし、ｚ軸の正方向を右方とするような端末保持姿勢の場合、ｘ軸の地磁気データが正であれば北向きであり、負であれば南向きである。また、ｚ軸の地磁気データが正であれば西向きであり、負であれば東向きである。概略方位は、南北方向と東西方向を組み合わせて、「北東」（０°〜９０°）「南東」（９０°〜１８０°）「南西」（１８０°〜２７０°）「北西」（２７０°〜３６０°）のように決定される。端末保持姿勢は、加速度データから決定することも、また、予め制約を設けることによって決定することもできる。
【００６７】
方位角決定部１０３は、進行方向決定部１０２から出力された方向角θと、概略方位決定部１０７から出力されたおおよその向きとを受け取り、北を０度とした時計回りの方位角（０〜３６０°）を、以下のように導出する。
「北東」の場合、方位角＝方向角θ
「南東」の場合、方位角＝１８０−方向角θ
「南西」の場合、方位角＝１８０＋方向角θ
「北西」の場合、方位角＝３６０−方向角θ
【００６８】
また、方位角決定部１０３は、導出した方位角を時間経過に応じてメモリに記憶する。そして、方位角決定部１０３は、メモリに記憶された一定の時間範囲の進行向きについて、方向転換がなされたか否かを判定することもできる。
【００６９】
歩幅設定部１０４は、既知の手法により、歩幅を決定する。例えば、入力された身長の値から推定することができる。決定された歩幅は、移動量積算部１０５へ出力される。尚、歩幅設定部１０４は、その歩幅の情報を方位角決定部１０３にも出力する。
【００７０】
移動量積算部１０５は、方位角決定部１０３から進行向きの情報を受け取り、歩幅決定部１０４から歩幅の情報を受け取る。そして、移動量積算部１０５は、１歩分の進行向き及び歩幅を積算する。現在位置決定部１０６は、地図情報記憶部１４から地図情報を取得し、積算された移動量から現在位置を特定する。現在位置決定部１０６は、方位角決定部１０３が方向転換したと判定すれば、地図情報における近傍の交差点の位置を現在位置として決定する。また、方向転換していないと判定すれば（直進したと判定すれば）、マップマッチングによって投影された位置を、現在位置として決定する。
【００７１】
本発明の特徴となる進行方向決定部１０２は、法線ベクトル算出部１０２１と、円錐底面近似部１０２２と、円錐高さ算出部１０２３と、方向角算出部１０２４とを有する。
【００７２】
法線ベクトル算出部１０２１は、時間経過に応じた加速度データから、腕振りによって生じた地磁気ベクトル群の分布する円錐底面の法線ベクトルを算出する。法線ベクトルの算出については、図２に基づいて前述した。尚、法線ベクトル算出部は、入力される地磁気データについて、所定時間範囲のデータをメモリし、最大値及び最小値から所定割合のデータを除去することも好ましい。即ち、突飛なデータを除去することによって、進行方向の精度を向上させることができる。
【００７３】
円錐底面近似部１０２２は、地磁気データ及び法線ベクトルから円錐底面を算出する。例えば図２のような座標図形が生成される。このとき、地磁気データは、所定時間単位（例えば１歩分）に検出された複数のデータの組に区分する。所定時間単位は、進行方向を導出するタイミング（周期）に依存する。例えば、１歩毎又は２歩毎の地磁気データに区分する。歩行者によって手に所持された携帯端末が前方及び後方に一往復する毎に、１つの円錐状の地磁気面が導出される。
【００７４】
円錐高さ算出部１０２３は、円錐底面近似部１０２２によって算出された円錐における高さｈを算出する。高さｈは、即ち円錐の底面と原点（円錐の頂点）の距離である。高さｈは、腕振り方向、即ち歩行者の進行方向によって変化する。進行方向が南北方向である場合、高さｈは０となる。一方、進行方向が東西方向である場合、高さｈは最大となる。
【００７５】
方向角算出部１０２４は、円錐高さ算出部１０２３によって算出された高さｈに基づいて、地磁気面に対する方向角θを算出する。即ち、地磁気面に対する方向角θは、南北方向を意味する０°から、東西方向を意味する９０°までの間となる。ここで、地磁気と重力方向のなす角Ｉを用いて、以下の式によって、方向角θを算出する。
方向角θ＝arcsin（ｈ／sin Ｉ）
【００７６】
尚、方向角算出部１０２４から出力された方向角θについて、所定時間範囲の方向角θをメモリし、当該方向角θの前後の変化が所定角度閾値以上となっている方向角θを除去することも好ましい。また、除去されたデータについて、時間的に前後に算出された単位区間の方向角θの平均によって補完することも好ましい。更に、蓄積した複数の方向角θの変化が、平均化することも好ましい。
【００７７】
方向角算出部１０２４について、円錐の高さｈと、地磁気と重力方向のなす角Iとによって、前述した計算により数学的に求められる方向角θは、０°〜９０°である。前述した概略方位決定部１０７は、携帯端末の姿勢と地磁気データの関係（地磁気が携帯端末の前後左右どちら向きであるか）によって歩行のおおよその向きを決定する。方向角θは、南北方向に対する進行方向の成す角である。進行方向は、無向直線であり前後の区別が無い。このとき、北を０度とした時計回りの方位角（０〜３６０°）を導出するために、概略方位を決定する必要がある。
【００７８】
以上、詳細に説明したように、本発明の携帯端末、プログラム及び方法によれば、歩行者が、携帯端末を手持ちで歩行している場合であっても、その携帯端末に搭載された地磁気センサ及び加速度センサを用いて歩行者の進行方向をできる限り正確に決定することができる。
【００７９】
前述した本発明における種々の実施形態によれば、当業者は、本発明の技術思想及び見地の範囲における種々の変更、修正及び省略を容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【図面の簡単な説明】
【００８０】
【図１】歩行者の歩行態様と、地磁気変動方向とを表す説明図である。
【図２】現実に発生する加速度面及び地磁気面を表す説明図である。
【図３】歩行者の進行方向が、北に対してθの角度の方向に向かっている場合のセンサ座標系における地磁気面の位置を表す説明図である。
【図４】歩行者の進行方向が、西（北に対して９０°の角度の方向）に向かっている場合のセンサ座標系における地磁気面の位置を表す説明図である。
【図５】歩行者の進行方向が、北に向かっている場合の地磁気面のセンサ座標系における位置を表す説明図である。
【図６】本発明の携帯端末における機能構成図である。
【符号の説明】
【００８１】
１  携帯端末
１０  プロセッサ・メモリ
１０２  進行方向決定部
１０２１  法線ベクトル算出部
１０２２  円錐底面近似部
１０２３  円錐高さ算出部
１０２４  方向角算出部
１０３  方位角決定部
１０４  歩幅設定部
１０５  移動量積算部
１０６  現在位置決定部
１０７  概略方位決定部
１１  地磁気センサ
１２  加速度センサ
１３  ＧＰＳ部
１４  地図情報記憶部
１５  ディスプレイ部
【図１】
2010008240.tif 000007
【図２】
2010008240.tif 000008
【図３】
2010008240.tif 000009
【図４】
2010008240.tif 000010
【図５】
2010008240.tif 000011
【図６】
2010008240.tif 000012