移動装置及びプログラム
【課題】低消費電力で、高精度に移動経路を特定する移動装置を提供する。
【解決手段】方向転換検出部12が、方位取得部8の取得結果に基づいて、ユーザ(携帯電話100)の進行方向の転換有無を検出し、絶対位置取得部10が、当該方向転換有無の情報に基づいて定められるタイミング(例えば、方向転換のタイミング)で、携帯電話100の絶対位置を取得し、これら絶対位置情報と移動距離とから、移動経路取得部18が携帯電話100の移動経路を特定する。
【解決手段】方向転換検出部12が、方位取得部8の取得結果に基づいて、ユーザ(携帯電話100)の進行方向の転換有無を検出し、絶対位置取得部10が、当該方向転換有無の情報に基づいて定められるタイミング(例えば、方向転換のタイミング)で、携帯電話100の絶対位置を取得し、これら絶対位置情報と移動距離とから、移動経路取得部18が携帯電話100の移動経路を特定する。
【発明の詳細な説明】
【技術分野】
【0001】
本件は、移動装置及びプログラムに関し、特に移動経路の特定に用いる移動装置及びプログラムに関する。
【背景技術】
【0002】
従来より、自律航法を用いてユーザの移動経路(歩行経路)を算出する装置を具備する携帯端末(移動端末)の開発が進められている(例えば、特許文献1参照)。
【0003】
この種の装置は、例えば、方位を検出する方位検出機能、歩数を検出する歩数検出機能、予め入力されている歩幅と歩数の積から移動距離を算出する移動距離算出機能、GPS受信機のような現在地の絶対位置を取得する位置検出機能などを含み、これらの機能により取得される値(絶対位置、方位、及び移動距離など)に基づいてユーザの移動経路を算出する。
【0004】
このような自律航法を用いた移動経路の算出はGPS受信機のみによる移動経路算出と比較して、GPSによる測定回数を減少させることができるため、消費電力を少なくすることができる。
【0005】
しかるに、歩数検出機能により検出される歩数やGPSの測定値には誤差が含まれ、また、装置の向きと装置の進行方向が異なった場合、方位誤差が生じるため、自律航法を用いる場合には、これらの誤差を補正する必要がある。
【0006】
また、方位検出機能として、磁気センサを用いる場合、当該磁気センサのキャリブレーションを実行する必要がある。例えば、携帯電話などの携帯端末に実装される磁気センサは、2箇所あるいは3箇所に配置され、それぞれの箇所において、地磁気を測定し方位を計測する。この磁気センサは、周辺に配置される部品が着磁すると、着磁された部品から漏れる磁場によって、磁気センサの出力にズレ(オフセット)が生じ、当該オフセットにより方位の検出誤差が生じるおそれがある。このオフセットをキャリブレーションするには、携帯端末を回転させる(8の字に振り回す)ことが有効であることが知られており、回転回数を多くするほど(頻繁に回転させるほど)高精度なキャリブレーションを行える。なお、これに対応するための技術は、例えば特許文献2に開示されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平11−194033号公報
【特許文献2】国際公開第2004/003476号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、たとえ、高精度に磁気センサのオフセットをキャリブレーションできたとしても、±1°〜5°程度の方位誤差が残存する可能性がある。また、キャリブレーションができなかった場合には、30°を超える方位誤差が残存する可能性もある。しかも、磁気センサの出力に基づいて移動経路を検出する場合に、方位誤差が残存していると、進行方向を転換したとき(例えば、曲がり角を曲がったとき)に、移動経路のずれを増幅(最大で、方位誤差の2倍に増幅)するおそれがある。
【0009】
そこで本件は上記の課題に鑑みてなされたものであり、低消費電力で、高精度に移動経路を特定することが可能な移動装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
本明細書に記載の移動装置は、装置本体と、前記装置本体に予め定められた基準軸が指し示す方位を取得する方位取得部と、前記装置本体の移動距離を取得する移動距離取得部と、前記方位取得部の取得結果に基づいて、前記装置本体の進行方向転換有無を検出する方向転換検出部と、前記進行方向転換有無の情報に基づいて定められるタイミングで、前記装置本体の絶対位置情報を取得する絶対位置取得部と、前記絶対位置取得部により取得される前記装置本体の絶対位置情報と、前記移動距離取得部により取得される前記装置本体の移動距離とから、前記装置本体の移動経路を特定する移動経路特定部と、を備える移動装置である。
【0011】
本明細書に記載のプログラムは、コンピュータを、装置本体に予め定められた基準軸が指し示す方位を取得する方位取得部と、前記装置本体の移動距離を取得する移動距離取得部、前記方位取得部の取得結果に基づいて、前記装置本体の進行方向転換有無を検出する方向転換検出部、前記進行方向転換有無の情報に基づいて定められるタイミングで、前記装置本体の絶対位置情報を取得する絶対位置取得部、及び前記装置本体の絶対位置情報、前記移動距離取得部により取得される前記装置本体の移動距離とから、前記装置本体の移動経路を特定する移動経路特定部、として機能させるプログラムである。
【発明の効果】
【0012】
本明細書に記載の移動装置及びプログラムは、低消費電力で、高精度に移動経路を特定することができるという効果を奏する。
【図面の簡単な説明】
【0013】
【図1】第1の実施形態に係る携帯電話の構成を示すブロック図である。
【図2】図1の携帯電話による移動経路取得処理を示すフローチャート(その1)である。
【図3】図1の携帯電話による移動経路取得処理を示すフローチャート(その2)である。
【図4】図4(a)は、相対経路と取得される絶対位置との関係を示す図であり、図4(b)は、相対移動経路の取得手順を示す図であり、図4(c)は、相対移動経路取得時に作成されるデータベースの一例を示す図である。
【図5】絶対位置a、b、cにより転換角度αを算出する方法を説明するための図である。
【図6】図6(a)、図6(b)は、相対経路の角度を転換角度αにて補正する方法を示す図である。
【図7】図3のステップS40の処理を説明するための図である。
【図8】図3のステップS42の処理を説明するための図である。
【図9】図3のステップS44の処理を説明するための図である。
【図10】第1の実施形態の変形例を示す図である。
【図11】第1の実施形態の変形例における処理に関するフローチャートである。
【図12】図11のステップS17、S23の処理内容を示すフローチャートである。
【図13】図12の処理内容を説明するための図である。
【図14】第1の実施形態の別例を示す図である。
【図15】第2の実施形態における相対経路の補正処理を示すフローチャートである。
【図16】図15の処理を説明するための図である。
【図17】第3の実施形態における相対経路の補正処理を示すフローチャート(その1)である。
【図18】第3の実施形態における相対経路の補正処理を示すフローチャート(その2)である。
【発明を実施するための形態】
【0014】
≪第1の実施形態≫
以下、第1の実施形態について、図1〜図9に基づいて詳細に説明する。
【0015】
図1には、移動装置としての携帯電話100の構成がブロック図にて示されている。この図1に示すように、携帯電話100は、装置本体としての携帯電話本体90と、当該携帯電話本体90内に設けられた、地磁気センサ30と、加速度センサ40と、GPS受信機59と、移動経路特定装置50と、を備えている。なお、携帯電話100は、通話機能を備えるとともに、メール、インターネットなどの通信機能、撮影機能などの各種機能を備える場合もあるが、図1では、これらの機能を実現するための構成についての図示は省略している。
【0016】
地磁気センサ30は、例えば3軸座標系上での地磁気の検出が可能な磁気方位センサである。加速度センサ40は、例えば、3軸方向の加速度を検出するセンサである。GPS受信機59は、上空に存在する複数個のGPS衛星からの信号を受けて、絶対位置(緯度・経度で示される位置)に関する情報を得るものである。
【0017】
移動経路特定装置50は、方位取得部8と、絶対位置取得部10と、方向転換検出部12と、移動距離取得部14と、方位算出部16と、移動経路取得部18と、移動経路補正部20と、座標変換部22と、経路情報保持部24と、を有する。
【0018】
方位取得部8は、地磁気センサ30において検出される地磁気値を取得し、当該地磁気値に基づいて、携帯電話本体90に予め定められた軸が指し示す方位(以下、相対方位と呼ぶ)を取得する。絶対位置取得部10は、GPS受信機59を介して絶対位置を取得する。方向転換検出部12は、方位取得部8で取得された相対方位に基づいて、携帯電話100を所持するユーザが、例えば曲がり角を曲がるなどすることにより進行方向を転換したか否かの情報(進行方位を変えずに移動しているか否かの情報)を検出する。
【0019】
移動距離取得部14は、ユーザから入力されたユーザの1歩分の長さを表す歩幅情報を予め保持しており、当該歩幅情報と、加速度センサ40において検出される加速度から算出される歩数情報とから、ユーザの移動距離(=歩幅×歩数)を計算する。なお、移動距離の求め方自体は、一般的な加速度センサを用いた歩数計と同様である。方位算出部16は、絶対位置取得部10で取得された絶対位置に基づいて、携帯電話100を所持するユーザが進行方向の転換を行ったときの、転換角度を算出する。なお、この転換角度の算出方法については後述する。
【0020】
移動経路取得部18は、方位取得部8で取得された相対方位と移動距離取得部14で計算されたユーザの移動距離から相対移動経路を算出するとともに、方位算出部16において算出された転換角度に基づいて、相対移動経路を補正する。以下においては、補正後の相対移動経路を、「補正後移動経路」とも呼ぶものとする。なお、この移動経路取得部18の処理の詳細についても後述する。
【0021】
移動経路補正部20は、補正後移動経路を、絶対位置取得部10で取得された絶対位置を用いて更に補正する。座標変換部22は、移動経路補正部20で補正された相対経路を絶対座標に変換し、経路情報保持部24は、座標変換部22で変換された結果を保持(保存)する。
【0022】
次に、本第1の実施形態における移動経路の取得処理について、図2、図3のフローチャートに沿って、かつその他の図面を適宜参照しつつ、詳細に説明する。
【0023】
図2のフローチャートは、ユーザが、移動経路の取得開始を携帯電話100上で入力した後、ユーザの歩行開始を加速度センサ40が検出した時点から、開始される。なお、図2のフローチャートを実行している間は、図4(c)に示すような取得データのデータベースが作成される。この図4(c)のデータベースは、ユーザが1歩歩くごとに作成され、その日時、歩き始めからの歩数、方位取得部8において取得される方位角(相対方位)、絶対位置取得部10において取得される絶対位置、及びユーザが進行方向の転換を行ったか否かの識別子(0又は1)を含んでいる。
【0024】
まず、図2のステップS10では、絶対位置取得部10が、絶対位置の取得を行う。なお、ここでの絶対位置を、便宜上「絶対位置(0)」と表記するものとする。この場合、絶対位置取得部10は、図4(a)に示す、歩き始めの地点Aにおいて、GPS受信機59により検出される絶対位置(符合aで示される位置)を取得する。この取得結果は、図4(c)の符合101部分に格納される。
【0025】
次いで、ステップS12では、移動経路取得部18が、移動距離取得部14において計算された移動距離と、方位取得部8において取得された相対方位とに基づいて、図4(b)に矢印にて示す相対移動経路V1を算出する。次いで、ステップS14では、方向転換検出部12が、ユーザ(携帯電話100)が方向転換を行ったか否かを判断する。ここでは、まだユーザは1歩目を歩いたのみなので、判断は否定され、ステップS12に戻る。
【0026】
次のステップS12では、上記と同様に、移動経路取得部18が、図4(b)に示す相対移動経路V2を算出し、ステップS14では、方向転換検出部12が、ユーザ(携帯電話100)が方向転換を行ったか否かを判断する。このステップS14では、方向転換検出部12は、方位取得部8において取得された相対方位(方位角)の変化量を参照し、当該変化量が所定の閾値(ここでは、例えば50°とする)を超えていた場合に、方向転換が行われたと判断する。なお、図4(c)では、符合102を付した部分の角度と、符合103を付した部分の角度の差(変化量)が0°(=40°−40°)であるので、ここでの判断は否定される。
【0027】
その後、ステップS14の判断が肯定されるまで、ステップS12とステップS14を繰り返す。そして、図4(c)に示すように、5歩目の時点で、そのときの方位角と、4歩目の時点での方位角との差(変化量)が70°(=110°−40°)になるので、ステップS14の判断が肯定され、ステップS16に移行する。ここで、5歩目の時点とは、図4(a)に示す位置Bに到達した時点を意味している。なお、このように方向転換がされた時点で、方向転換検出部12は、図4(c)のデータベースの方向転換の欄に、識別子1を記録する。なお、識別子1が記録されない欄には、方向転換検出部12は、識別子0を自動的に記録する。
【0028】
次のステップS16では、絶対位置取得部10が、新たな絶対位置を取得する。なお、新たな絶対位置を、便宜上「絶対位置(1)」と表記するものとする。この場合、絶対位置取得部10は、図4(a)に示す、方向転換した位置(曲がり角の位置)BにおいてGPS受信機59により検出される絶対位置(符合bで示される位置)を取得する。この取得結果は、図4(c)の符合104部分に格納される。
【0029】
その後、ステップS18の処理及びステップS20の判断を、ステップS12、S14と同様に繰り返し、図4(b)に矢印にて示す相対移動経路(経路V6、V7…)を算出する。
【0030】
そして、ステップS20の判断が肯定された場合には、次のステップS22において、絶対位置取得部10が、新たな絶対位置を取得する。なお、新たな絶対位置を、便宜上「絶対位置(2)」と表記するものとする。この場合、絶対位置取得部10は、図4(a)に示す、方向転換した位置(曲がり角の位置)CにおいてGPS受信機59により検出される絶対位置(符合cで示される位置)を取得する。この取得結果は、図4(c)のデータベースに格納される。
【0031】
次いで、ステップS24では、方位算出部16が、ステップS10、S16、S22で取得された絶対位置(0)、絶対位置(1)、絶対位置(2)を用いて、図4(a)の位置a,bを結ぶ直線abと、位置b、cを結ぶ直線bcとがなす角(転換角度)αを算出する。
【0032】
ここで、図5に示すように、位置aの座標が(x0,y0)、位置bの座標が(x1,y1)、位置cの座標が(x2,y2)であるとすると、位置b,a間のベクトルは、(x0−x1、y0−y1)、位置b,c間のベクトルは、(x2−x1、y2−y1)と表せる。したがって、両ベクトル間の角度αの余弦(cos(α))は、次式(1)にて表すことができ、cos(α)の値からは、転換角度αを導き出すこともできる。なお、絶対位置a,b,cの各座標は相対位置の座標系上に変換した後の座標である。
【0033】
【数1】
【0034】
次のステップS26では、移動経路取得部18が、相対経路(経路V1〜V12)における方向転換時の角度(曲がり角の角度)を、転換角度αに補正する。すなわち、相対経路が、図6(a)に示すような経路として取得された場合、その方向転換時の角度βを、図6(b)に示すように角度αに補正する。なお、角度αは、直線ABを基準として一側及び他側にそれぞれ存在するが、ここでは、角度βからの補正量が少ない側の角度αを採用することとする。この補正により、地点Cは、地点C’に補正されることになる。
【0035】
次いで、図2のステップS28では、移動経路取得部18が、絶対位置(1)を絶対位置(0)に、絶対位置(2)を絶対位置(1)に置き換える。そして、次のステップ30では、移動距離取得部14が、加速度センサ40による検出結果から、ユーザの歩行が終了したか否かを判断し、当該判断が肯定された場合には、図3のステップS40に移行する。また、ここでの判断が否定された場合には、ステップS18に戻る。
【0036】
ステップS18に戻った場合、図4(a)に示すように、次の方向転換位置Dまで相対経路を作成し(ステップS18)、方向転換位置Dにおいて、絶対位置(2)(符合dで示される位置)を取得する(ステップS22)。そして、直線bcと、直線cd間の角度(転換角度)α’を算出して(ステップS24)、相対経路における方向転換時の角度をα’に補正する(ステップS26)。
【0037】
その後は、ステップS30の判断が肯定されるまで、ステップS18〜S28を繰り返し、算出された転換角度での相対経路の補正を繰り返す。そして、ステップS30の判断が肯定された時点で、図3のステップS40に移行する。
【0038】
図3のステップS40では、移動経路補正部20が、全体方位補正値の計算処理を実行する。なお、以下においては、説明の簡素化のため、ユーザは、位置a〜位置cまで移動した時点で歩行を終了したものとして説明する。
【0039】
全体方位補正値の計算処理では、図7に示すように、移動経路補正部20が、3点の絶対位置(GPS測位値)の中から最も距離の離れた2点を選択するとともに、最も離れた2点の絶対位置に対応する相対経路上の2点を選択する。ここでは、図7に示す点a、c、及び点A,C’がそれぞれ選択される。
【0040】
次いで、移動経路補正部20は、相対経路上の2点(点A,C’)がなす方位角を絶対経路上の2点(点a,c)がなす方位角に一致させるための回転角ηを計算する。本実施形態では、当該回転角ηを、全体方位補正値に設定する。
【0041】
このような全体方位補正値(η)の算出を行うことにより、高精度かつ簡易に全体方位補正値を算出することができる。なお、GPS測位値に測位誤差が存在する場合には、この測位誤差を考慮して、全体方位補正値を算出する必要があるが、この点についての説明は省略するものとする。
【0042】
図3に戻り、次のステップS42では、移動経路補正部20が、距離補正値の算出処理を実行する。
【0043】
この距離補正値の算出処理では、移動経路補正部20は、図8(a)に示すように、絶対経路上の2点a、c間の距離(GPS距離)faを算出するとともに、図8(b)に示すように、相対経路上の2点A,C’間の距離(相対経路距離)fbを算出する。そして、これら2つの距離の比率εを、次式(2)に基づいて算出する。本実施形態では、この比率εを、距離補正値に設定する。
ε=fa/fb …(2)
【0044】
このような距離補正値の算出方法を採用することで、簡易且つ高精度に距離補正値を算出することが可能である。なお、GPS測位値に測位誤差が存在する場合には、この測位誤差を考慮した距離補正値の算出を実行する必要があるが、この点についての説明は省略するものとする。
【0045】
図3に戻り、次のステップS44では、移動経路補正部20が、座標補正値の算出処理を実行する。
【0046】
この座標補正値の算出処理では、移動経路補正部20は、まず、ステップS40,S42で算出した全体方位補正値η及び距離補正値εを用いて相対経路ABC’を補正し、補正前の各点A,B,C’に対応する補正後の点を、図9(b)に示すように点A’,B’,C”とする。
【0047】
次いで、移動経路補正部20は、3点の絶対位置(GPS測位値)a,b,cの重心G(図9(a)参照)を計算するとともに、補正後の相対経路A’B’C”の重心G’(図9(b)参照)を計算する。そして、移動経路補正部20は、重心Gの座標と重心G’の座標との差分Δcx、Δcyを算出する。本実施形態では、この差分Δcx、Δcyを、座標補正値に設定する。このような座標補正値の算出方法を採用することで、簡易且つ高精度に座標補正値を算出することができる。なお、GPS測位値に測位誤差が存在する場合には、この測位誤差を考慮した座標補正値の算出を実行する必要があるが、この点についての説明は省略するものとする。
【0048】
次いで、図3のステップS46では、移動経路補正部20が、全体方位補正値η、距離補正値ε、座標補正値Δcx、Δcyを用いて、転換角度の補正を行った相対経路ABC’を再度補正する。また、座標変換部22が、再度補正された相対経路ABC’を、絶対座標系上の経路(緯度・経度)に変換する。
【0049】
そして、次のステップS48では、経路情報保持部24が、ステップS46の結果得られた経路を、保存(保持)し、図2、図3の全処理を終了する。
【0050】
以上、説明したように、本第1の実施形態によると、方向転換検出部12が、方位取得部8の取得結果に基づいて、ユーザ(携帯電話100)の進行方向の転換有無を検出し、絶対位置取得部10が、当該方向転換有無の情報に基づいて定められるタイミング(ここでは、方向転換のタイミング)で、携帯電話100の絶対位置を取得し、これら絶対位置情報と移動距離とから、移動経路取得部18が、携帯電話100の移動経路を特定する。ここで、漏れ磁場の影響等により地磁気センサ30に計測誤差が存在している場合、地磁気センサ30による方位変更の度合い(曲がり角度)の出力値は信頼度が低いものになる。しかし、方位に変更があったか否か、もしくは、それまでの進行方向と比較して左右どちらの方向に曲がったかについての検出は依然として正しく行うことができる。本実施形態では、地磁気センサ30の検出結果から求められる方向転換のタイミングで取得される絶対位置を用いて進行方向の転換角度αを求めることできる。したがって、この転換角度αを用いて移動経路を特定することにより、高精度に移動経路を特定することができる。すなわち、地磁気センサ30による方位変更の度合い(曲がり角度)の出力値を利用しないので、地磁気センサ30の計測誤差の影響による、計測精度の低下を抑止できる。
【0051】
また、本第1の実施形態では、GPS受信機59は、方向転換のタイミングのみにおいて、GPS衛星からの信号を受信すれば良いので、低消費電力化を図ることも可能である。具体的には、例えば、ユーザが10分間歩いた場合において、GPS受信機59による連続測位(例えば、1秒毎の測位)を行ったとすると、約600(=10×60)の絶対位置が取得されることになる。これに対し、本第1の実施形態では、1回の測位におけるGPS受信機59の稼働時間が15秒程度であれば、10分間の間に40回絶対位置を測定しない限り、連続測位した場合よりも消費電力を小さくすることができる。この場合、40回の絶対位置測定をするような場面は、歩き始めの測定を除いて、方向転換時の測定を39回行う場面、すなわち、歩幅を80cmとするならば、約20mごとに曲がり角が出現するような特殊な場面に限定されることになる。したがって、本第1の実施形態の携帯電話は、通常の使用をしている限り、連続測位をする場合よりも低消費電力化を図ることができるようになる。
【0052】
逆に言えば、例えば、曲がり角と曲がり角との間の平均距離が50mの場合、10分間に歩く距離(約800m)には、16箇所の曲がり角が存在することになる。この場合、歩き始めでの測定を含めると、絶対位置の測定は17回で足りる。したがって、本第1の実施形態の方法を用いれば、GPS受信機59の稼働時間は、(1回あたりの稼働時間(15秒))×(17回)=255秒となる。この稼働時間は、連続測位の場合の稼働時間600秒と比べ、格段に少なくなる。また、曲がり角間の平均距離が長くなればなるほど、稼働時間は短くなることになる。
【0053】
(変形例)
なお、上記第1の実施形態では、地点Bにおいて進行方向を転換したのと同時に絶対位置(b)を取得する場合について説明したが、実際には、絶対位置の取得が進行方向の転換タイミングから遅れる可能性がある。すなわち、GPS受信機59は、方向転換したことを検出した後に起動を開始するため、図10(a)に示すように、GPS衛星からの信号受信が方向転換位置Bからずれた位置B’において行われるおそれがある。このような場合には、図2のフローチャートに代えて、図11のフローチャートの処理を実行する。
【0054】
図11の処理では、ステップS10〜S14を、第1の実施形態と同様に実行することにより、絶対位置取得部10が、絶対位置(0)(位置a’)を取得するとともに、移動経路取得部18が、進行方向を転換するまでの相対経路を作成する。次いで、ステップS16では、絶対位置取得部10が、絶対位置(1)を取得するが、ここでは、図10(a)に示すように、方向転換位置Bからずれた位置B’で、絶対位置b’が取得されることになる。なお、ステップS10の絶対位置(0)の取得においても、歩き始めの位置Aからずれた位置A’において絶対位置a’が取得されているが、これによる移動経路の特定精度に対する影響はほとんど無いので、絶対位置a’をそのまま用いることとする。
【0055】
次いで、ステップS17では、絶対位置取得部10が、図10(b)に示すように、方向転換位置Bにおいて検出されたはずの絶対位置(bとする)を、位置B’の位置と、位置B’で取得された絶対位置(1)の値とから算出する。このステップS17の処理は、図12のフローチャートに沿った処理を実行する。
【0056】
具体的には、図12のステップS32において、絶対位置取得部10が、取得した絶対位置a’,b’を用いて、相対経路を全体補正する。この場合、図3のステップS40(全体方位補正値の計算)、S42(距離補正値の計算)、S44(座標補正値の計算)、S46(各補正値を用いた相対経路の補正)と同様の処理を、相対経路上の2点A’、B’と、絶対経路上の2点a’,b’の座標を用いて実行する。より詳細には、ステップS40と同様の処理では、直線A’B’と直線a’b’との間の角度を全体方位補正値ηとする。また、ステップS42と同様の処理では、点A’、B’間距離と、点a’、b’間距離との比率を距離補正値εとする。また、ステップS44と同様の処理では、点A’、B’の中点の座標と、点a’、b’の中点の座標との差分を座標補正値Δcx、Δcyとする。そして、ステップS46と同様の処理では、図10(a)の相対経路を各補正値η、ε、Δcx、Δcyを用いて補正する。
【0057】
次いで、図12のステップS34では、絶対位置取得部10が、ステップS32にて全体補正した相対経路上で、補正後の点B’の位置座標と、補正後の点Bの位置座標との差分を算出する。具体的には、図13に示すように、補正後の点Bの座標を(bx0,by0)とし、補正後の点B’の座標を(bx1,by1)とすると、それらの差分は、(bx1-bx0,by1-by0)となる。
【0058】
次いで、ステップS36では、絶対位置取得部10が、取得した絶対位置b’の座標(x1,y1)から、ステップS34で算出された差分(bx1-bx0,by1-by0)を差し引いた座標(x1-(bx1-bx0),y1-(by1-by0))を求め、この座標を、方向転換位置Bで検出されたはずの絶対位置bの座標とする。なお、絶対位置bの座標系は、相対経路と同一の座標系である。
【0059】
その後、図11のステップS18に移行する。これ以降は、ステップS18〜S22を上記第1の実施形態と同様に実行する。また、ステップS23では、絶対位置取得部10が、上述したステップS17(図12の処理)と同様の方法により方向転換位置Cで検出されたはずの絶対位置(2’)を求める。
【0060】
次いで、ステップS24では、方位算出部16が、絶対位置(0)、(1’)、(2’)から、それらの位置を結んだ経路がなす角(転換角度)αを上式(1)から算出する。そして、ステップS26では、移動経路取得部18が、相対経路における方向転換時の角度をαに補正し、ステップS28において絶対位置(1’)を絶対位置(0)、絶対位置(2’)を絶対位置(1’)に変換する。
【0061】
これ以降は、上記第1の実施形態と同様の処理が行われる。
【0062】
このような方法を採用することにより、絶対位置の取得タイミングが遅く、方向転換位置で絶対位置を取得できないような場合でも、転換角度αの算出、及び相対経路の補正を高精度に行うことができる。
【0063】
なお、上記第1の実施形態及び変形例では、歩き始めや方向転換位置で、各1点ずつ絶対位置座標を取得する場合について説明したが、これに限られるものではない。例えば、上記第1の実施形態及び変形例において、図14に示すように、歩き始め位置の近傍や方向転換位置の近傍において、絶対位置を複数(2以上)取得することとしても良い。この場合、ユーザが歩いている間に、絶対位置が測位されることになる。したがって、絶対位置はユーザの移動方向にずれた位置で測定されることになるが、各絶対位置の測位地点は、相対経路のどの地点に対応しているかは、図4(c)に示すように、相対経路作成時に紐付けされている。このため、歩き始め位置の近傍で取得された複数の絶対位置からは、歩き始め位置に対応する絶対位置を、上述した変形例のようにしてそれぞれ算出(換算)することができる。また、方向転換位置の近傍で取得された複数の絶対位置から、方向転換位置に対応する絶対位置を上述した変形例のようにしてそれぞれ算出(換算)することができる。この場合、歩き始め位置に対応する絶対位置の平均値、及び方向転換位置に対応する絶対位置の平均値を求め、これを各絶対位置の代表位置として扱うことにより、より高精度な転換角度αの算出を行うことが可能である。
【0064】
≪第2の実施形態≫
次に、第2の実施形態に係る移動装置としての携帯電話について、図15、図16に基づいて説明する。なお、本第2の実施形態の携帯電話は、図1に示す第1の実施形態の携帯電話100と同一の構成を有している。
【0065】
図15は、本第2の実施形態に係る、相対経路の補正処理を示すフローチャートである。このフローチャートは、上記第1の実施形態における図2のフローチャートと対応している。
【0066】
まず、図15のステップS110では、絶対位置取得部10が、定期的な絶対位置取得を開始する。ここで、定期的な絶対位置取得とは、例えば、3分に1回または1分に1回程度の間隔で絶対位置取得を行うことを意味する。次いで、ステップS112、S114の処理・判断では、上記第1の実施形態におけるステップS12、S14と同様の処理・判断を行う。そして、ステップS114の判断が肯定された時点、すなわち、図16に示す地点Bにて方向転換を行った時点で、ステップS116に移行する。
【0067】
次のステップS116では、絶対位置取得部10が、定期的な絶対位置の取得を一旦終了する。ここでは、図16に示すように、地点Aから地点Bにユーザ(携帯電話)が移動するまでの間に、絶対位置が、地点a0、a1、a2、…、a(n−1)の、n箇所にて取得されたものとする。
【0068】
次いで、ステップS118では、方位算出部16が、得られた複数の絶対位置から、近似直線1を計算する。この場合、近似直線1は、最小二乗法を用いて求めることができる。なお、最小二乗法を用いるに際しては、絶対位置a0〜a(n−1)の座標系を相対座標の座標系に変換しておく必要がある。この場合、絶対位置の座標(相対座標系に変換した後の座標)を(x0,y0)、(x1,y1)、…、(xn−1,yn−1)とすると、近似直線y=kx+mの傾きkと切片mは、次式(3)、(4)にて算出することができる。
【0069】
【数2】
【0070】
【数3】
【0071】
次いで、ステップS120では、絶対位置取得部10が、定期的な絶対位置取得を再開する。次いで、ステップS122、S124の処理・判断を、ステップS112、S114と同様に行い、ステップS124の判断が肯定された時点、すなわち、図16に示す地点Cにて方向転換を行った時点で、ステップS126に移行する。
【0072】
次のステップS126では、絶対位置取得部10が、定期的な絶対位置の取得を一旦終了する。次いで、ステップS128では、方位算出部16が、ユーザ(携帯電話)が地点Bから地点Cに移動している間に得られた複数の絶対位置から、近似直線2を計算する。この場合、近似直線2は、上式(3)、(4)から求める。
【0073】
次のステップS130では、方位算出部16が、近似直線1、2がなす角度(転換角度)αを算出する。この場合、まず、2直線の交点を求める。例えば、交点(xc,yc)は、近似直線1を、e1×x+f1×y+g1=0とし、近似直線2をe2×x+f2×y+g2=0とすると、次式(5)、(6)にて求めることができる。
xc=(f1・g2−f2・g1)/(e1・f2−e2・f1) …(5)
yc=(e2・g1−e1・g2)/(e1・f2−e2・f1) …(6)
【0074】
次いで、近似直線1上の任意の1点を求める。例えば、式(3)、(4)を用いて近似直線1を算出した際に用いた絶対座標のいずれかのx座標と、このx座標を近似直線1の式に代入して得られるy座標と、を近似直線1上の任意の点の座標とする。同様に、近似直線2上の任意の1点も求める。例えば、式(3)、(4)を用いて近似直線2を算出した際に用いたいずれかの絶対座標のx座標と、このx座標を近似直線2の式に代入して得られるy座標と、を近似直線2上の任意の点の座標とする。
【0075】
そして、これら3点の座標を用いて、図5及び上式(1)と同様の手法により、転換角度αを算出する。
【0076】
次いで、ステップS132では、移動経路取得部18が、転換角度αを用いて、相対経路を補正し、ステップS134において、方位算出部16が近似直線2を近似直線1に変更する。次いで、ステップS136では、移動距離取得部14が歩行終了か否かを判断する。なお、ステップS136の判断が否定された場合には、ステップS120に戻り、上記と同様の処理を繰り返す。一方、ステップS136の判断が肯定された場合には、上記第1の実施形態と同様、図3の処理を実行することで、移動経路を取得する。
【0077】
以上説明したように、本第2の実施形態によると、方向転換検出部12が、方位取得部8の取得結果に基づいて、ユーザ(携帯電話)の進行方向の転換有無を検出し、絶対位置取得部10が、当該方向転換有無の情報に基づいて定められるタイミング(ここでは、方向転換されるまでの継続した期間)において、携帯電話の複数の絶対位置を取得し、複数の絶対位置から求められる近似直線と移動距離とから、移動経路取得部18が、携帯電話100の移動経路を特定するので、漏れ磁場の影響等により地磁気センサ30に計測誤差が存在している場合でも、地磁気センサ30の検出結果から求められる方向転換のタイミングで取得される絶対位置を用いて進行方向の転換角度αを求めることできる。したがって、この転換角度αを用いて移動経路を特定することにより、高精度に移動経路を特定することができる。この場合、転換角度αを用いて移動経路を特定することにより、高精度に移動経路を特定することができることから、地磁気センサ30による方位変更の度合い(曲がり角度)の出力値を利用しないことにより、地磁気センサ30の計測誤差の影響による計測精度の低下を抑止することができる。また、本第2の実施形態では、GPS受信機59は、GPS衛星からの信号を定期的な間隔で受信すれば良いので、低消費電力化を図ることも可能である。
【0078】
なお、上記第2の実施形態では、3分又は1分間隔で絶対位置を取るため、曲がり角に至るまでの間に取得できる絶対位置の数が、1つしかない場合も存在する。このような絶対位置の数が1つの場合に対応するための実施形態が、次に説明する第3の実施形態である。
【0079】
≪第3の実施形態≫
次に、第3の実施形態に係る移動装置としての携帯電話における相対経路の補正処理について、図17、図18のフローチャートに沿って説明する。なお、これら図17、図18のフローチャートは、第2の実施形態で説明した、図15のフローチャートの一部を改変したものである。したがって、以下においては、当該改変部分(図17、図18の二点差線で囲む部分)についての説明を詳細に行い、共通する部分についての説明を簡略にし、又は省略するものとする。また、共通する部分には、同一のステップ番号を付与している。
【0080】
まず、図17のステップS110〜S116を実行することにより、歩き始めから方向転換位置に至るまでの相対移動経路を取得するとともに、1つ以上の絶対位置を取得すると、次のステップS200に移行する。次いで、ステップS200では、方位算出部16が、絶対位置取得部10により取得された絶対位置の数が2以上であるか否かを判断する。
【0081】
ここでの判断が肯定された場合には、上記第2の実施形態と同様、近似直線1を算出することができるので、ステップS118の近似直線1の計算処理を実行する。そして、次のステップS202において、絶対位置数を0にリセットした後、図18のステップS120に移行する。
【0082】
一方、ステップS200の判断が否定された場合には、歩き始め位置での絶対位置しか取得できていないため、ステップS204において、方向転換位置における絶対位置を新たに取得する。また、次のステップS206では、歩き始め位置での絶対位置と、方向転換位置での絶対位置とを用いて、直線1を算出する。
【0083】
ここで、2点の絶対位置を通る直線y=kx+mの傾きkと、切片mは、2点の座標を(xp,yp)、(xq,yq)とすると、次式(7)、(8)にて計算することができる。
k=(yq−yp)/(xq−xp) …(7)
m=yp−{(yq−yp)/(xq−xp)}×xp …(8)
【0084】
次のステップS208では、方位算出部16が、絶対位置数を1に設定した後、図18のステップS120に移行する。なお、ステップS208において絶対位置数を1に設定するのは、方向転換位置で取得した絶対位置は、直線1の計算においてのみならず、次の直線2(近似直線2)を計算する際にも使用することができるからである。すなわち、ステップS208を経由した場合には、近似直線2を計算するためには、あと1つの絶対位置を取得できれば良い。
【0085】
次いで、図18のステップS120〜S126を実行することにより、前の方向転換位置から次の方向転換位置に至るまでの相対移動経路を取得するとともに、1つ以上の絶対位置を取得すると、次のステップS210に移行する。
【0086】
ステップS210では、ステップS200と同様、方位算出部16が、絶対位置取得部10により取得された絶対位置の数が2以上であるか否かを判断し、判断が肯定された場合には、2以上の絶対位置を用いて近似直線2を算出する。そして、次のステップS212において絶対位置数を0にリセットした後、ステップS130に移行する。
【0087】
一方、ステップS210の判断が否定された場合には、ステップS214において、方向転換位置における絶対位置を新たに取得し、ステップS216において、2つの絶対位置及び上式(7)、(8)を用いて、直線2を算出する。そして、次のステップS218において絶対位置数を1に設定した後、ステップS130に移行する。
【0088】
その後は、ステップS130において、方位算出部16が、直線1(又は近似直線1)及び直線2(又は近似直線2)を用いて、図16と同様の手法により、方向転換時の角度αを算出する。また、ステップS132において、移動経路取得部18が、転換角度αを用いて相対経路を補正し、ステップS134において、方位算出部16が直線2(近似直線2)を直線1(近似直線1)に変更する。そして、ステップS136では、移動距離取得部14が歩行終了か否かを判断する。なお、ステップS136の判断が否定された場合には、ステップS120に戻り、上記と同様の処理を繰り返す。一方、ステップS136の判断が肯定された場合には、上記第1の実施形態と同様、図3の処理を実行することで、移動経路を取得する。
【0089】
なお、図17のステップS204及び図18のステップS214において、絶対位置を取得した際に、図10(a)に示すような取得タイミングの遅れが生じた場合には、上記第1の実施形態の変形例と同様の手法により、絶対位置を補正すれば良い。
【0090】
以上、説明したように、本第3の実施形態によると、第2の実施形態と同様の作用が得られるほか、歩き始めから方向転換をするまでの間、又は方向転換と方向転換との間に絶対位置を1つしか取得できなかった場合にも、支障なく転換角度αの算出及び移動経路の特定を高精度に行うことができる。この場合、転換角度αを用いて移動経路を特定することにより、高精度に移動経路を特定することができることから、地磁気センサ30による方位変更の度合い(曲がり角度)の出力値を利用しないことにより、地磁気センサ30の計測誤差の影響による計測精度の低下を抑止することができる。
【0091】
なお、上記各実施形態では、ユーザ(携帯電話)が方向転換をするたびに、転換角度αで移動経路を補正する場合(リアルタイム補正の場合)について説明したが、これに限られるものではない。例えば、移動経路と、転換角度とを随時取得しておき、後で補正するようにしても良い。リアルタイム補正の場合には、ITS(Intelligent Transport Systems)の安全サービスとして用いることもできる。例えば、携帯電話を保持するユーザ(歩行者)の位置と、車両の位置(ナビゲーションシステムから取得可能)とから、ユーザと車両とが曲がり角で接近するか否かを判断し、接近すると判断した場合に、ユーザ(歩行者)に安全通知を行って注意を促すこともできる。また、ユーザの現在地に合わせて、近隣に位置する商店などの広告を、携帯電話に表示するようにすることもできる。一方、後で補正するような場合には、ウォーキングの歩行履歴を地図上に表示してユーザに確認させるようにすることもできるし、自社のセールスマンが設定されたルートで顧客先を訪問したかを判断する材料として、歩行履歴を上司等に提供することもできる。
【0092】
なお、上記各実施形態では、移動経路特定装置50は、複数の装置(図1の各部に対応)を組み合わせることにより構成しても良いし、各装置を、CPU、ROM、及びRAMなどを組み合わせた計算機システムで構成し、上記各部の機能を計算機システムに内蔵されたプログラムによって実現することとしても良い。
【0093】
また、上記各実施形態では、移動装置が携帯電話である場合について説明したが、これに限らず、移動装置は、自動車等に搭載されるカーナビゲーションシステムであっても良い。この場合、移動距離取得部14は、例えば、自動車のタイヤの外周の長さと、タイヤの回転数と、から自動車の移動距離を取得することとすれば良い。
【0094】
上述した各実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【符号の説明】
【0095】
8 方位取得部
10 絶対位置取得部
12 方向転換検出部
14 移動距離取得部
18 移動経路取得部(移動経路特定部)
90 携帯電話本体(装置本体)
100 携帯電話(移動装置)
【技術分野】
【0001】
本件は、移動装置及びプログラムに関し、特に移動経路の特定に用いる移動装置及びプログラムに関する。
【背景技術】
【0002】
従来より、自律航法を用いてユーザの移動経路(歩行経路)を算出する装置を具備する携帯端末(移動端末)の開発が進められている(例えば、特許文献1参照)。
【0003】
この種の装置は、例えば、方位を検出する方位検出機能、歩数を検出する歩数検出機能、予め入力されている歩幅と歩数の積から移動距離を算出する移動距離算出機能、GPS受信機のような現在地の絶対位置を取得する位置検出機能などを含み、これらの機能により取得される値(絶対位置、方位、及び移動距離など)に基づいてユーザの移動経路を算出する。
【0004】
このような自律航法を用いた移動経路の算出はGPS受信機のみによる移動経路算出と比較して、GPSによる測定回数を減少させることができるため、消費電力を少なくすることができる。
【0005】
しかるに、歩数検出機能により検出される歩数やGPSの測定値には誤差が含まれ、また、装置の向きと装置の進行方向が異なった場合、方位誤差が生じるため、自律航法を用いる場合には、これらの誤差を補正する必要がある。
【0006】
また、方位検出機能として、磁気センサを用いる場合、当該磁気センサのキャリブレーションを実行する必要がある。例えば、携帯電話などの携帯端末に実装される磁気センサは、2箇所あるいは3箇所に配置され、それぞれの箇所において、地磁気を測定し方位を計測する。この磁気センサは、周辺に配置される部品が着磁すると、着磁された部品から漏れる磁場によって、磁気センサの出力にズレ(オフセット)が生じ、当該オフセットにより方位の検出誤差が生じるおそれがある。このオフセットをキャリブレーションするには、携帯端末を回転させる(8の字に振り回す)ことが有効であることが知られており、回転回数を多くするほど(頻繁に回転させるほど)高精度なキャリブレーションを行える。なお、これに対応するための技術は、例えば特許文献2に開示されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平11−194033号公報
【特許文献2】国際公開第2004/003476号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、たとえ、高精度に磁気センサのオフセットをキャリブレーションできたとしても、±1°〜5°程度の方位誤差が残存する可能性がある。また、キャリブレーションができなかった場合には、30°を超える方位誤差が残存する可能性もある。しかも、磁気センサの出力に基づいて移動経路を検出する場合に、方位誤差が残存していると、進行方向を転換したとき(例えば、曲がり角を曲がったとき)に、移動経路のずれを増幅(最大で、方位誤差の2倍に増幅)するおそれがある。
【0009】
そこで本件は上記の課題に鑑みてなされたものであり、低消費電力で、高精度に移動経路を特定することが可能な移動装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
本明細書に記載の移動装置は、装置本体と、前記装置本体に予め定められた基準軸が指し示す方位を取得する方位取得部と、前記装置本体の移動距離を取得する移動距離取得部と、前記方位取得部の取得結果に基づいて、前記装置本体の進行方向転換有無を検出する方向転換検出部と、前記進行方向転換有無の情報に基づいて定められるタイミングで、前記装置本体の絶対位置情報を取得する絶対位置取得部と、前記絶対位置取得部により取得される前記装置本体の絶対位置情報と、前記移動距離取得部により取得される前記装置本体の移動距離とから、前記装置本体の移動経路を特定する移動経路特定部と、を備える移動装置である。
【0011】
本明細書に記載のプログラムは、コンピュータを、装置本体に予め定められた基準軸が指し示す方位を取得する方位取得部と、前記装置本体の移動距離を取得する移動距離取得部、前記方位取得部の取得結果に基づいて、前記装置本体の進行方向転換有無を検出する方向転換検出部、前記進行方向転換有無の情報に基づいて定められるタイミングで、前記装置本体の絶対位置情報を取得する絶対位置取得部、及び前記装置本体の絶対位置情報、前記移動距離取得部により取得される前記装置本体の移動距離とから、前記装置本体の移動経路を特定する移動経路特定部、として機能させるプログラムである。
【発明の効果】
【0012】
本明細書に記載の移動装置及びプログラムは、低消費電力で、高精度に移動経路を特定することができるという効果を奏する。
【図面の簡単な説明】
【0013】
【図1】第1の実施形態に係る携帯電話の構成を示すブロック図である。
【図2】図1の携帯電話による移動経路取得処理を示すフローチャート(その1)である。
【図3】図1の携帯電話による移動経路取得処理を示すフローチャート(その2)である。
【図4】図4(a)は、相対経路と取得される絶対位置との関係を示す図であり、図4(b)は、相対移動経路の取得手順を示す図であり、図4(c)は、相対移動経路取得時に作成されるデータベースの一例を示す図である。
【図5】絶対位置a、b、cにより転換角度αを算出する方法を説明するための図である。
【図6】図6(a)、図6(b)は、相対経路の角度を転換角度αにて補正する方法を示す図である。
【図7】図3のステップS40の処理を説明するための図である。
【図8】図3のステップS42の処理を説明するための図である。
【図9】図3のステップS44の処理を説明するための図である。
【図10】第1の実施形態の変形例を示す図である。
【図11】第1の実施形態の変形例における処理に関するフローチャートである。
【図12】図11のステップS17、S23の処理内容を示すフローチャートである。
【図13】図12の処理内容を説明するための図である。
【図14】第1の実施形態の別例を示す図である。
【図15】第2の実施形態における相対経路の補正処理を示すフローチャートである。
【図16】図15の処理を説明するための図である。
【図17】第3の実施形態における相対経路の補正処理を示すフローチャート(その1)である。
【図18】第3の実施形態における相対経路の補正処理を示すフローチャート(その2)である。
【発明を実施するための形態】
【0014】
≪第1の実施形態≫
以下、第1の実施形態について、図1〜図9に基づいて詳細に説明する。
【0015】
図1には、移動装置としての携帯電話100の構成がブロック図にて示されている。この図1に示すように、携帯電話100は、装置本体としての携帯電話本体90と、当該携帯電話本体90内に設けられた、地磁気センサ30と、加速度センサ40と、GPS受信機59と、移動経路特定装置50と、を備えている。なお、携帯電話100は、通話機能を備えるとともに、メール、インターネットなどの通信機能、撮影機能などの各種機能を備える場合もあるが、図1では、これらの機能を実現するための構成についての図示は省略している。
【0016】
地磁気センサ30は、例えば3軸座標系上での地磁気の検出が可能な磁気方位センサである。加速度センサ40は、例えば、3軸方向の加速度を検出するセンサである。GPS受信機59は、上空に存在する複数個のGPS衛星からの信号を受けて、絶対位置(緯度・経度で示される位置)に関する情報を得るものである。
【0017】
移動経路特定装置50は、方位取得部8と、絶対位置取得部10と、方向転換検出部12と、移動距離取得部14と、方位算出部16と、移動経路取得部18と、移動経路補正部20と、座標変換部22と、経路情報保持部24と、を有する。
【0018】
方位取得部8は、地磁気センサ30において検出される地磁気値を取得し、当該地磁気値に基づいて、携帯電話本体90に予め定められた軸が指し示す方位(以下、相対方位と呼ぶ)を取得する。絶対位置取得部10は、GPS受信機59を介して絶対位置を取得する。方向転換検出部12は、方位取得部8で取得された相対方位に基づいて、携帯電話100を所持するユーザが、例えば曲がり角を曲がるなどすることにより進行方向を転換したか否かの情報(進行方位を変えずに移動しているか否かの情報)を検出する。
【0019】
移動距離取得部14は、ユーザから入力されたユーザの1歩分の長さを表す歩幅情報を予め保持しており、当該歩幅情報と、加速度センサ40において検出される加速度から算出される歩数情報とから、ユーザの移動距離(=歩幅×歩数)を計算する。なお、移動距離の求め方自体は、一般的な加速度センサを用いた歩数計と同様である。方位算出部16は、絶対位置取得部10で取得された絶対位置に基づいて、携帯電話100を所持するユーザが進行方向の転換を行ったときの、転換角度を算出する。なお、この転換角度の算出方法については後述する。
【0020】
移動経路取得部18は、方位取得部8で取得された相対方位と移動距離取得部14で計算されたユーザの移動距離から相対移動経路を算出するとともに、方位算出部16において算出された転換角度に基づいて、相対移動経路を補正する。以下においては、補正後の相対移動経路を、「補正後移動経路」とも呼ぶものとする。なお、この移動経路取得部18の処理の詳細についても後述する。
【0021】
移動経路補正部20は、補正後移動経路を、絶対位置取得部10で取得された絶対位置を用いて更に補正する。座標変換部22は、移動経路補正部20で補正された相対経路を絶対座標に変換し、経路情報保持部24は、座標変換部22で変換された結果を保持(保存)する。
【0022】
次に、本第1の実施形態における移動経路の取得処理について、図2、図3のフローチャートに沿って、かつその他の図面を適宜参照しつつ、詳細に説明する。
【0023】
図2のフローチャートは、ユーザが、移動経路の取得開始を携帯電話100上で入力した後、ユーザの歩行開始を加速度センサ40が検出した時点から、開始される。なお、図2のフローチャートを実行している間は、図4(c)に示すような取得データのデータベースが作成される。この図4(c)のデータベースは、ユーザが1歩歩くごとに作成され、その日時、歩き始めからの歩数、方位取得部8において取得される方位角(相対方位)、絶対位置取得部10において取得される絶対位置、及びユーザが進行方向の転換を行ったか否かの識別子(0又は1)を含んでいる。
【0024】
まず、図2のステップS10では、絶対位置取得部10が、絶対位置の取得を行う。なお、ここでの絶対位置を、便宜上「絶対位置(0)」と表記するものとする。この場合、絶対位置取得部10は、図4(a)に示す、歩き始めの地点Aにおいて、GPS受信機59により検出される絶対位置(符合aで示される位置)を取得する。この取得結果は、図4(c)の符合101部分に格納される。
【0025】
次いで、ステップS12では、移動経路取得部18が、移動距離取得部14において計算された移動距離と、方位取得部8において取得された相対方位とに基づいて、図4(b)に矢印にて示す相対移動経路V1を算出する。次いで、ステップS14では、方向転換検出部12が、ユーザ(携帯電話100)が方向転換を行ったか否かを判断する。ここでは、まだユーザは1歩目を歩いたのみなので、判断は否定され、ステップS12に戻る。
【0026】
次のステップS12では、上記と同様に、移動経路取得部18が、図4(b)に示す相対移動経路V2を算出し、ステップS14では、方向転換検出部12が、ユーザ(携帯電話100)が方向転換を行ったか否かを判断する。このステップS14では、方向転換検出部12は、方位取得部8において取得された相対方位(方位角)の変化量を参照し、当該変化量が所定の閾値(ここでは、例えば50°とする)を超えていた場合に、方向転換が行われたと判断する。なお、図4(c)では、符合102を付した部分の角度と、符合103を付した部分の角度の差(変化量)が0°(=40°−40°)であるので、ここでの判断は否定される。
【0027】
その後、ステップS14の判断が肯定されるまで、ステップS12とステップS14を繰り返す。そして、図4(c)に示すように、5歩目の時点で、そのときの方位角と、4歩目の時点での方位角との差(変化量)が70°(=110°−40°)になるので、ステップS14の判断が肯定され、ステップS16に移行する。ここで、5歩目の時点とは、図4(a)に示す位置Bに到達した時点を意味している。なお、このように方向転換がされた時点で、方向転換検出部12は、図4(c)のデータベースの方向転換の欄に、識別子1を記録する。なお、識別子1が記録されない欄には、方向転換検出部12は、識別子0を自動的に記録する。
【0028】
次のステップS16では、絶対位置取得部10が、新たな絶対位置を取得する。なお、新たな絶対位置を、便宜上「絶対位置(1)」と表記するものとする。この場合、絶対位置取得部10は、図4(a)に示す、方向転換した位置(曲がり角の位置)BにおいてGPS受信機59により検出される絶対位置(符合bで示される位置)を取得する。この取得結果は、図4(c)の符合104部分に格納される。
【0029】
その後、ステップS18の処理及びステップS20の判断を、ステップS12、S14と同様に繰り返し、図4(b)に矢印にて示す相対移動経路(経路V6、V7…)を算出する。
【0030】
そして、ステップS20の判断が肯定された場合には、次のステップS22において、絶対位置取得部10が、新たな絶対位置を取得する。なお、新たな絶対位置を、便宜上「絶対位置(2)」と表記するものとする。この場合、絶対位置取得部10は、図4(a)に示す、方向転換した位置(曲がり角の位置)CにおいてGPS受信機59により検出される絶対位置(符合cで示される位置)を取得する。この取得結果は、図4(c)のデータベースに格納される。
【0031】
次いで、ステップS24では、方位算出部16が、ステップS10、S16、S22で取得された絶対位置(0)、絶対位置(1)、絶対位置(2)を用いて、図4(a)の位置a,bを結ぶ直線abと、位置b、cを結ぶ直線bcとがなす角(転換角度)αを算出する。
【0032】
ここで、図5に示すように、位置aの座標が(x0,y0)、位置bの座標が(x1,y1)、位置cの座標が(x2,y2)であるとすると、位置b,a間のベクトルは、(x0−x1、y0−y1)、位置b,c間のベクトルは、(x2−x1、y2−y1)と表せる。したがって、両ベクトル間の角度αの余弦(cos(α))は、次式(1)にて表すことができ、cos(α)の値からは、転換角度αを導き出すこともできる。なお、絶対位置a,b,cの各座標は相対位置の座標系上に変換した後の座標である。
【0033】
【数1】
【0034】
次のステップS26では、移動経路取得部18が、相対経路(経路V1〜V12)における方向転換時の角度(曲がり角の角度)を、転換角度αに補正する。すなわち、相対経路が、図6(a)に示すような経路として取得された場合、その方向転換時の角度βを、図6(b)に示すように角度αに補正する。なお、角度αは、直線ABを基準として一側及び他側にそれぞれ存在するが、ここでは、角度βからの補正量が少ない側の角度αを採用することとする。この補正により、地点Cは、地点C’に補正されることになる。
【0035】
次いで、図2のステップS28では、移動経路取得部18が、絶対位置(1)を絶対位置(0)に、絶対位置(2)を絶対位置(1)に置き換える。そして、次のステップ30では、移動距離取得部14が、加速度センサ40による検出結果から、ユーザの歩行が終了したか否かを判断し、当該判断が肯定された場合には、図3のステップS40に移行する。また、ここでの判断が否定された場合には、ステップS18に戻る。
【0036】
ステップS18に戻った場合、図4(a)に示すように、次の方向転換位置Dまで相対経路を作成し(ステップS18)、方向転換位置Dにおいて、絶対位置(2)(符合dで示される位置)を取得する(ステップS22)。そして、直線bcと、直線cd間の角度(転換角度)α’を算出して(ステップS24)、相対経路における方向転換時の角度をα’に補正する(ステップS26)。
【0037】
その後は、ステップS30の判断が肯定されるまで、ステップS18〜S28を繰り返し、算出された転換角度での相対経路の補正を繰り返す。そして、ステップS30の判断が肯定された時点で、図3のステップS40に移行する。
【0038】
図3のステップS40では、移動経路補正部20が、全体方位補正値の計算処理を実行する。なお、以下においては、説明の簡素化のため、ユーザは、位置a〜位置cまで移動した時点で歩行を終了したものとして説明する。
【0039】
全体方位補正値の計算処理では、図7に示すように、移動経路補正部20が、3点の絶対位置(GPS測位値)の中から最も距離の離れた2点を選択するとともに、最も離れた2点の絶対位置に対応する相対経路上の2点を選択する。ここでは、図7に示す点a、c、及び点A,C’がそれぞれ選択される。
【0040】
次いで、移動経路補正部20は、相対経路上の2点(点A,C’)がなす方位角を絶対経路上の2点(点a,c)がなす方位角に一致させるための回転角ηを計算する。本実施形態では、当該回転角ηを、全体方位補正値に設定する。
【0041】
このような全体方位補正値(η)の算出を行うことにより、高精度かつ簡易に全体方位補正値を算出することができる。なお、GPS測位値に測位誤差が存在する場合には、この測位誤差を考慮して、全体方位補正値を算出する必要があるが、この点についての説明は省略するものとする。
【0042】
図3に戻り、次のステップS42では、移動経路補正部20が、距離補正値の算出処理を実行する。
【0043】
この距離補正値の算出処理では、移動経路補正部20は、図8(a)に示すように、絶対経路上の2点a、c間の距離(GPS距離)faを算出するとともに、図8(b)に示すように、相対経路上の2点A,C’間の距離(相対経路距離)fbを算出する。そして、これら2つの距離の比率εを、次式(2)に基づいて算出する。本実施形態では、この比率εを、距離補正値に設定する。
ε=fa/fb …(2)
【0044】
このような距離補正値の算出方法を採用することで、簡易且つ高精度に距離補正値を算出することが可能である。なお、GPS測位値に測位誤差が存在する場合には、この測位誤差を考慮した距離補正値の算出を実行する必要があるが、この点についての説明は省略するものとする。
【0045】
図3に戻り、次のステップS44では、移動経路補正部20が、座標補正値の算出処理を実行する。
【0046】
この座標補正値の算出処理では、移動経路補正部20は、まず、ステップS40,S42で算出した全体方位補正値η及び距離補正値εを用いて相対経路ABC’を補正し、補正前の各点A,B,C’に対応する補正後の点を、図9(b)に示すように点A’,B’,C”とする。
【0047】
次いで、移動経路補正部20は、3点の絶対位置(GPS測位値)a,b,cの重心G(図9(a)参照)を計算するとともに、補正後の相対経路A’B’C”の重心G’(図9(b)参照)を計算する。そして、移動経路補正部20は、重心Gの座標と重心G’の座標との差分Δcx、Δcyを算出する。本実施形態では、この差分Δcx、Δcyを、座標補正値に設定する。このような座標補正値の算出方法を採用することで、簡易且つ高精度に座標補正値を算出することができる。なお、GPS測位値に測位誤差が存在する場合には、この測位誤差を考慮した座標補正値の算出を実行する必要があるが、この点についての説明は省略するものとする。
【0048】
次いで、図3のステップS46では、移動経路補正部20が、全体方位補正値η、距離補正値ε、座標補正値Δcx、Δcyを用いて、転換角度の補正を行った相対経路ABC’を再度補正する。また、座標変換部22が、再度補正された相対経路ABC’を、絶対座標系上の経路(緯度・経度)に変換する。
【0049】
そして、次のステップS48では、経路情報保持部24が、ステップS46の結果得られた経路を、保存(保持)し、図2、図3の全処理を終了する。
【0050】
以上、説明したように、本第1の実施形態によると、方向転換検出部12が、方位取得部8の取得結果に基づいて、ユーザ(携帯電話100)の進行方向の転換有無を検出し、絶対位置取得部10が、当該方向転換有無の情報に基づいて定められるタイミング(ここでは、方向転換のタイミング)で、携帯電話100の絶対位置を取得し、これら絶対位置情報と移動距離とから、移動経路取得部18が、携帯電話100の移動経路を特定する。ここで、漏れ磁場の影響等により地磁気センサ30に計測誤差が存在している場合、地磁気センサ30による方位変更の度合い(曲がり角度)の出力値は信頼度が低いものになる。しかし、方位に変更があったか否か、もしくは、それまでの進行方向と比較して左右どちらの方向に曲がったかについての検出は依然として正しく行うことができる。本実施形態では、地磁気センサ30の検出結果から求められる方向転換のタイミングで取得される絶対位置を用いて進行方向の転換角度αを求めることできる。したがって、この転換角度αを用いて移動経路を特定することにより、高精度に移動経路を特定することができる。すなわち、地磁気センサ30による方位変更の度合い(曲がり角度)の出力値を利用しないので、地磁気センサ30の計測誤差の影響による、計測精度の低下を抑止できる。
【0051】
また、本第1の実施形態では、GPS受信機59は、方向転換のタイミングのみにおいて、GPS衛星からの信号を受信すれば良いので、低消費電力化を図ることも可能である。具体的には、例えば、ユーザが10分間歩いた場合において、GPS受信機59による連続測位(例えば、1秒毎の測位)を行ったとすると、約600(=10×60)の絶対位置が取得されることになる。これに対し、本第1の実施形態では、1回の測位におけるGPS受信機59の稼働時間が15秒程度であれば、10分間の間に40回絶対位置を測定しない限り、連続測位した場合よりも消費電力を小さくすることができる。この場合、40回の絶対位置測定をするような場面は、歩き始めの測定を除いて、方向転換時の測定を39回行う場面、すなわち、歩幅を80cmとするならば、約20mごとに曲がり角が出現するような特殊な場面に限定されることになる。したがって、本第1の実施形態の携帯電話は、通常の使用をしている限り、連続測位をする場合よりも低消費電力化を図ることができるようになる。
【0052】
逆に言えば、例えば、曲がり角と曲がり角との間の平均距離が50mの場合、10分間に歩く距離(約800m)には、16箇所の曲がり角が存在することになる。この場合、歩き始めでの測定を含めると、絶対位置の測定は17回で足りる。したがって、本第1の実施形態の方法を用いれば、GPS受信機59の稼働時間は、(1回あたりの稼働時間(15秒))×(17回)=255秒となる。この稼働時間は、連続測位の場合の稼働時間600秒と比べ、格段に少なくなる。また、曲がり角間の平均距離が長くなればなるほど、稼働時間は短くなることになる。
【0053】
(変形例)
なお、上記第1の実施形態では、地点Bにおいて進行方向を転換したのと同時に絶対位置(b)を取得する場合について説明したが、実際には、絶対位置の取得が進行方向の転換タイミングから遅れる可能性がある。すなわち、GPS受信機59は、方向転換したことを検出した後に起動を開始するため、図10(a)に示すように、GPS衛星からの信号受信が方向転換位置Bからずれた位置B’において行われるおそれがある。このような場合には、図2のフローチャートに代えて、図11のフローチャートの処理を実行する。
【0054】
図11の処理では、ステップS10〜S14を、第1の実施形態と同様に実行することにより、絶対位置取得部10が、絶対位置(0)(位置a’)を取得するとともに、移動経路取得部18が、進行方向を転換するまでの相対経路を作成する。次いで、ステップS16では、絶対位置取得部10が、絶対位置(1)を取得するが、ここでは、図10(a)に示すように、方向転換位置Bからずれた位置B’で、絶対位置b’が取得されることになる。なお、ステップS10の絶対位置(0)の取得においても、歩き始めの位置Aからずれた位置A’において絶対位置a’が取得されているが、これによる移動経路の特定精度に対する影響はほとんど無いので、絶対位置a’をそのまま用いることとする。
【0055】
次いで、ステップS17では、絶対位置取得部10が、図10(b)に示すように、方向転換位置Bにおいて検出されたはずの絶対位置(bとする)を、位置B’の位置と、位置B’で取得された絶対位置(1)の値とから算出する。このステップS17の処理は、図12のフローチャートに沿った処理を実行する。
【0056】
具体的には、図12のステップS32において、絶対位置取得部10が、取得した絶対位置a’,b’を用いて、相対経路を全体補正する。この場合、図3のステップS40(全体方位補正値の計算)、S42(距離補正値の計算)、S44(座標補正値の計算)、S46(各補正値を用いた相対経路の補正)と同様の処理を、相対経路上の2点A’、B’と、絶対経路上の2点a’,b’の座標を用いて実行する。より詳細には、ステップS40と同様の処理では、直線A’B’と直線a’b’との間の角度を全体方位補正値ηとする。また、ステップS42と同様の処理では、点A’、B’間距離と、点a’、b’間距離との比率を距離補正値εとする。また、ステップS44と同様の処理では、点A’、B’の中点の座標と、点a’、b’の中点の座標との差分を座標補正値Δcx、Δcyとする。そして、ステップS46と同様の処理では、図10(a)の相対経路を各補正値η、ε、Δcx、Δcyを用いて補正する。
【0057】
次いで、図12のステップS34では、絶対位置取得部10が、ステップS32にて全体補正した相対経路上で、補正後の点B’の位置座標と、補正後の点Bの位置座標との差分を算出する。具体的には、図13に示すように、補正後の点Bの座標を(bx0,by0)とし、補正後の点B’の座標を(bx1,by1)とすると、それらの差分は、(bx1-bx0,by1-by0)となる。
【0058】
次いで、ステップS36では、絶対位置取得部10が、取得した絶対位置b’の座標(x1,y1)から、ステップS34で算出された差分(bx1-bx0,by1-by0)を差し引いた座標(x1-(bx1-bx0),y1-(by1-by0))を求め、この座標を、方向転換位置Bで検出されたはずの絶対位置bの座標とする。なお、絶対位置bの座標系は、相対経路と同一の座標系である。
【0059】
その後、図11のステップS18に移行する。これ以降は、ステップS18〜S22を上記第1の実施形態と同様に実行する。また、ステップS23では、絶対位置取得部10が、上述したステップS17(図12の処理)と同様の方法により方向転換位置Cで検出されたはずの絶対位置(2’)を求める。
【0060】
次いで、ステップS24では、方位算出部16が、絶対位置(0)、(1’)、(2’)から、それらの位置を結んだ経路がなす角(転換角度)αを上式(1)から算出する。そして、ステップS26では、移動経路取得部18が、相対経路における方向転換時の角度をαに補正し、ステップS28において絶対位置(1’)を絶対位置(0)、絶対位置(2’)を絶対位置(1’)に変換する。
【0061】
これ以降は、上記第1の実施形態と同様の処理が行われる。
【0062】
このような方法を採用することにより、絶対位置の取得タイミングが遅く、方向転換位置で絶対位置を取得できないような場合でも、転換角度αの算出、及び相対経路の補正を高精度に行うことができる。
【0063】
なお、上記第1の実施形態及び変形例では、歩き始めや方向転換位置で、各1点ずつ絶対位置座標を取得する場合について説明したが、これに限られるものではない。例えば、上記第1の実施形態及び変形例において、図14に示すように、歩き始め位置の近傍や方向転換位置の近傍において、絶対位置を複数(2以上)取得することとしても良い。この場合、ユーザが歩いている間に、絶対位置が測位されることになる。したがって、絶対位置はユーザの移動方向にずれた位置で測定されることになるが、各絶対位置の測位地点は、相対経路のどの地点に対応しているかは、図4(c)に示すように、相対経路作成時に紐付けされている。このため、歩き始め位置の近傍で取得された複数の絶対位置からは、歩き始め位置に対応する絶対位置を、上述した変形例のようにしてそれぞれ算出(換算)することができる。また、方向転換位置の近傍で取得された複数の絶対位置から、方向転換位置に対応する絶対位置を上述した変形例のようにしてそれぞれ算出(換算)することができる。この場合、歩き始め位置に対応する絶対位置の平均値、及び方向転換位置に対応する絶対位置の平均値を求め、これを各絶対位置の代表位置として扱うことにより、より高精度な転換角度αの算出を行うことが可能である。
【0064】
≪第2の実施形態≫
次に、第2の実施形態に係る移動装置としての携帯電話について、図15、図16に基づいて説明する。なお、本第2の実施形態の携帯電話は、図1に示す第1の実施形態の携帯電話100と同一の構成を有している。
【0065】
図15は、本第2の実施形態に係る、相対経路の補正処理を示すフローチャートである。このフローチャートは、上記第1の実施形態における図2のフローチャートと対応している。
【0066】
まず、図15のステップS110では、絶対位置取得部10が、定期的な絶対位置取得を開始する。ここで、定期的な絶対位置取得とは、例えば、3分に1回または1分に1回程度の間隔で絶対位置取得を行うことを意味する。次いで、ステップS112、S114の処理・判断では、上記第1の実施形態におけるステップS12、S14と同様の処理・判断を行う。そして、ステップS114の判断が肯定された時点、すなわち、図16に示す地点Bにて方向転換を行った時点で、ステップS116に移行する。
【0067】
次のステップS116では、絶対位置取得部10が、定期的な絶対位置の取得を一旦終了する。ここでは、図16に示すように、地点Aから地点Bにユーザ(携帯電話)が移動するまでの間に、絶対位置が、地点a0、a1、a2、…、a(n−1)の、n箇所にて取得されたものとする。
【0068】
次いで、ステップS118では、方位算出部16が、得られた複数の絶対位置から、近似直線1を計算する。この場合、近似直線1は、最小二乗法を用いて求めることができる。なお、最小二乗法を用いるに際しては、絶対位置a0〜a(n−1)の座標系を相対座標の座標系に変換しておく必要がある。この場合、絶対位置の座標(相対座標系に変換した後の座標)を(x0,y0)、(x1,y1)、…、(xn−1,yn−1)とすると、近似直線y=kx+mの傾きkと切片mは、次式(3)、(4)にて算出することができる。
【0069】
【数2】
【0070】
【数3】
【0071】
次いで、ステップS120では、絶対位置取得部10が、定期的な絶対位置取得を再開する。次いで、ステップS122、S124の処理・判断を、ステップS112、S114と同様に行い、ステップS124の判断が肯定された時点、すなわち、図16に示す地点Cにて方向転換を行った時点で、ステップS126に移行する。
【0072】
次のステップS126では、絶対位置取得部10が、定期的な絶対位置の取得を一旦終了する。次いで、ステップS128では、方位算出部16が、ユーザ(携帯電話)が地点Bから地点Cに移動している間に得られた複数の絶対位置から、近似直線2を計算する。この場合、近似直線2は、上式(3)、(4)から求める。
【0073】
次のステップS130では、方位算出部16が、近似直線1、2がなす角度(転換角度)αを算出する。この場合、まず、2直線の交点を求める。例えば、交点(xc,yc)は、近似直線1を、e1×x+f1×y+g1=0とし、近似直線2をe2×x+f2×y+g2=0とすると、次式(5)、(6)にて求めることができる。
xc=(f1・g2−f2・g1)/(e1・f2−e2・f1) …(5)
yc=(e2・g1−e1・g2)/(e1・f2−e2・f1) …(6)
【0074】
次いで、近似直線1上の任意の1点を求める。例えば、式(3)、(4)を用いて近似直線1を算出した際に用いた絶対座標のいずれかのx座標と、このx座標を近似直線1の式に代入して得られるy座標と、を近似直線1上の任意の点の座標とする。同様に、近似直線2上の任意の1点も求める。例えば、式(3)、(4)を用いて近似直線2を算出した際に用いたいずれかの絶対座標のx座標と、このx座標を近似直線2の式に代入して得られるy座標と、を近似直線2上の任意の点の座標とする。
【0075】
そして、これら3点の座標を用いて、図5及び上式(1)と同様の手法により、転換角度αを算出する。
【0076】
次いで、ステップS132では、移動経路取得部18が、転換角度αを用いて、相対経路を補正し、ステップS134において、方位算出部16が近似直線2を近似直線1に変更する。次いで、ステップS136では、移動距離取得部14が歩行終了か否かを判断する。なお、ステップS136の判断が否定された場合には、ステップS120に戻り、上記と同様の処理を繰り返す。一方、ステップS136の判断が肯定された場合には、上記第1の実施形態と同様、図3の処理を実行することで、移動経路を取得する。
【0077】
以上説明したように、本第2の実施形態によると、方向転換検出部12が、方位取得部8の取得結果に基づいて、ユーザ(携帯電話)の進行方向の転換有無を検出し、絶対位置取得部10が、当該方向転換有無の情報に基づいて定められるタイミング(ここでは、方向転換されるまでの継続した期間)において、携帯電話の複数の絶対位置を取得し、複数の絶対位置から求められる近似直線と移動距離とから、移動経路取得部18が、携帯電話100の移動経路を特定するので、漏れ磁場の影響等により地磁気センサ30に計測誤差が存在している場合でも、地磁気センサ30の検出結果から求められる方向転換のタイミングで取得される絶対位置を用いて進行方向の転換角度αを求めることできる。したがって、この転換角度αを用いて移動経路を特定することにより、高精度に移動経路を特定することができる。この場合、転換角度αを用いて移動経路を特定することにより、高精度に移動経路を特定することができることから、地磁気センサ30による方位変更の度合い(曲がり角度)の出力値を利用しないことにより、地磁気センサ30の計測誤差の影響による計測精度の低下を抑止することができる。また、本第2の実施形態では、GPS受信機59は、GPS衛星からの信号を定期的な間隔で受信すれば良いので、低消費電力化を図ることも可能である。
【0078】
なお、上記第2の実施形態では、3分又は1分間隔で絶対位置を取るため、曲がり角に至るまでの間に取得できる絶対位置の数が、1つしかない場合も存在する。このような絶対位置の数が1つの場合に対応するための実施形態が、次に説明する第3の実施形態である。
【0079】
≪第3の実施形態≫
次に、第3の実施形態に係る移動装置としての携帯電話における相対経路の補正処理について、図17、図18のフローチャートに沿って説明する。なお、これら図17、図18のフローチャートは、第2の実施形態で説明した、図15のフローチャートの一部を改変したものである。したがって、以下においては、当該改変部分(図17、図18の二点差線で囲む部分)についての説明を詳細に行い、共通する部分についての説明を簡略にし、又は省略するものとする。また、共通する部分には、同一のステップ番号を付与している。
【0080】
まず、図17のステップS110〜S116を実行することにより、歩き始めから方向転換位置に至るまでの相対移動経路を取得するとともに、1つ以上の絶対位置を取得すると、次のステップS200に移行する。次いで、ステップS200では、方位算出部16が、絶対位置取得部10により取得された絶対位置の数が2以上であるか否かを判断する。
【0081】
ここでの判断が肯定された場合には、上記第2の実施形態と同様、近似直線1を算出することができるので、ステップS118の近似直線1の計算処理を実行する。そして、次のステップS202において、絶対位置数を0にリセットした後、図18のステップS120に移行する。
【0082】
一方、ステップS200の判断が否定された場合には、歩き始め位置での絶対位置しか取得できていないため、ステップS204において、方向転換位置における絶対位置を新たに取得する。また、次のステップS206では、歩き始め位置での絶対位置と、方向転換位置での絶対位置とを用いて、直線1を算出する。
【0083】
ここで、2点の絶対位置を通る直線y=kx+mの傾きkと、切片mは、2点の座標を(xp,yp)、(xq,yq)とすると、次式(7)、(8)にて計算することができる。
k=(yq−yp)/(xq−xp) …(7)
m=yp−{(yq−yp)/(xq−xp)}×xp …(8)
【0084】
次のステップS208では、方位算出部16が、絶対位置数を1に設定した後、図18のステップS120に移行する。なお、ステップS208において絶対位置数を1に設定するのは、方向転換位置で取得した絶対位置は、直線1の計算においてのみならず、次の直線2(近似直線2)を計算する際にも使用することができるからである。すなわち、ステップS208を経由した場合には、近似直線2を計算するためには、あと1つの絶対位置を取得できれば良い。
【0085】
次いで、図18のステップS120〜S126を実行することにより、前の方向転換位置から次の方向転換位置に至るまでの相対移動経路を取得するとともに、1つ以上の絶対位置を取得すると、次のステップS210に移行する。
【0086】
ステップS210では、ステップS200と同様、方位算出部16が、絶対位置取得部10により取得された絶対位置の数が2以上であるか否かを判断し、判断が肯定された場合には、2以上の絶対位置を用いて近似直線2を算出する。そして、次のステップS212において絶対位置数を0にリセットした後、ステップS130に移行する。
【0087】
一方、ステップS210の判断が否定された場合には、ステップS214において、方向転換位置における絶対位置を新たに取得し、ステップS216において、2つの絶対位置及び上式(7)、(8)を用いて、直線2を算出する。そして、次のステップS218において絶対位置数を1に設定した後、ステップS130に移行する。
【0088】
その後は、ステップS130において、方位算出部16が、直線1(又は近似直線1)及び直線2(又は近似直線2)を用いて、図16と同様の手法により、方向転換時の角度αを算出する。また、ステップS132において、移動経路取得部18が、転換角度αを用いて相対経路を補正し、ステップS134において、方位算出部16が直線2(近似直線2)を直線1(近似直線1)に変更する。そして、ステップS136では、移動距離取得部14が歩行終了か否かを判断する。なお、ステップS136の判断が否定された場合には、ステップS120に戻り、上記と同様の処理を繰り返す。一方、ステップS136の判断が肯定された場合には、上記第1の実施形態と同様、図3の処理を実行することで、移動経路を取得する。
【0089】
なお、図17のステップS204及び図18のステップS214において、絶対位置を取得した際に、図10(a)に示すような取得タイミングの遅れが生じた場合には、上記第1の実施形態の変形例と同様の手法により、絶対位置を補正すれば良い。
【0090】
以上、説明したように、本第3の実施形態によると、第2の実施形態と同様の作用が得られるほか、歩き始めから方向転換をするまでの間、又は方向転換と方向転換との間に絶対位置を1つしか取得できなかった場合にも、支障なく転換角度αの算出及び移動経路の特定を高精度に行うことができる。この場合、転換角度αを用いて移動経路を特定することにより、高精度に移動経路を特定することができることから、地磁気センサ30による方位変更の度合い(曲がり角度)の出力値を利用しないことにより、地磁気センサ30の計測誤差の影響による計測精度の低下を抑止することができる。
【0091】
なお、上記各実施形態では、ユーザ(携帯電話)が方向転換をするたびに、転換角度αで移動経路を補正する場合(リアルタイム補正の場合)について説明したが、これに限られるものではない。例えば、移動経路と、転換角度とを随時取得しておき、後で補正するようにしても良い。リアルタイム補正の場合には、ITS(Intelligent Transport Systems)の安全サービスとして用いることもできる。例えば、携帯電話を保持するユーザ(歩行者)の位置と、車両の位置(ナビゲーションシステムから取得可能)とから、ユーザと車両とが曲がり角で接近するか否かを判断し、接近すると判断した場合に、ユーザ(歩行者)に安全通知を行って注意を促すこともできる。また、ユーザの現在地に合わせて、近隣に位置する商店などの広告を、携帯電話に表示するようにすることもできる。一方、後で補正するような場合には、ウォーキングの歩行履歴を地図上に表示してユーザに確認させるようにすることもできるし、自社のセールスマンが設定されたルートで顧客先を訪問したかを判断する材料として、歩行履歴を上司等に提供することもできる。
【0092】
なお、上記各実施形態では、移動経路特定装置50は、複数の装置(図1の各部に対応)を組み合わせることにより構成しても良いし、各装置を、CPU、ROM、及びRAMなどを組み合わせた計算機システムで構成し、上記各部の機能を計算機システムに内蔵されたプログラムによって実現することとしても良い。
【0093】
また、上記各実施形態では、移動装置が携帯電話である場合について説明したが、これに限らず、移動装置は、自動車等に搭載されるカーナビゲーションシステムであっても良い。この場合、移動距離取得部14は、例えば、自動車のタイヤの外周の長さと、タイヤの回転数と、から自動車の移動距離を取得することとすれば良い。
【0094】
上述した各実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【符号の説明】
【0095】
8 方位取得部
10 絶対位置取得部
12 方向転換検出部
14 移動距離取得部
18 移動経路取得部(移動経路特定部)
90 携帯電話本体(装置本体)
100 携帯電話(移動装置)
【特許請求の範囲】
【請求項1】
装置本体と、
前記装置本体に予め定められた基準軸が指し示す方位を取得する方位取得部と、
前記装置本体の移動距離を取得する移動距離取得部と、
前記方位取得部の取得結果に基づいて、前記装置本体の進行方向転換有無を検出する方向転換検出部と、
前記進行方向転換有無の情報に基づいて定められるタイミングで、前記装置本体の絶対位置情報を取得する絶対位置取得部と、
前記絶対位置取得部により取得される前記装置本体の絶対位置情報と、前記移動距離取得部により取得される前記装置本体の移動距離とから、前記装置本体の移動経路を特定する移動経路特定部と、を備える移動装置。
【請求項2】
前記絶対位置取得部は、前記装置本体が進行方向を転換したタイミングで前記装置本体の絶対位置情報を取得し、
前記移動経路特定部は、前記タイミングで取得された絶対位置情報を用いて、前記進行方向の転換角度を算出し、当該転換角度と、前記装置本体の移動距離とから、前記装置本体の移動経路を特定することを特徴とする請求項1に記載の移動装置。
【請求項3】
前記移動距離取得部は、前記方向転換検出部により検出される前記進行方向転換位置と、前記絶対位置取得部により前記装置本体の絶対位置を取得した位置との間の位置誤差を検出し、
前記移動経路特定部は、前記位置誤差を更に用いて、前記装置本体の移動経路を特定することを特徴とする請求項2に記載の移動装置。
【請求項4】
前記絶対位置取得部は、進行方向の転換をする前の連続した時間内及び前記進行方向を転換した後の連続した時間内のそれぞれにおいて、前記装置本体の絶対位置を複数回取得し、
前記移動経路特定部は、前記進行方向を転換する前に取得された複数の絶対位置から定まる第1の直線と、転換後に取得された複数の絶対位置から定まる第2の直線とから前記進行方向の転換角度を算出し、当該転換角度と、前記装置本体の移動距離とから、前記装置本体の移動経路を特定することを特徴とする請求項1に記載の移動装置。
【請求項5】
前記絶対位置取得部が、前記進行方向の転換前及び転換後の少なくとも一方において前記絶対位置を複数回取得できなかった場合に、
前記移動経路特定部は、前記進行方向を転換したタイミングで取得された絶対位置情報を用いて、前記進行方向の転換角度を算出し、当該転換角度と、前記装置本体の移動距離とから、前記装置本体の移動経路を特定することを特徴とする請求項4に記載の移動装置。
【請求項6】
前記移動距離取得部は、前記方向転換検出部により検出される前記進行方向転換位置と、前記絶対位置取得部により前記装置本体の絶対位置を取得した位置との間の位置誤差を検出し、
前記移動経路特定部は、前記位置誤差を更に用いて、前記装置本体の移動経路を特定することを特徴とする請求項5に記載の移動装置。
【請求項7】
コンピュータを、
装置本体に予め定められた基準軸が指し示す方位を取得する方位取得部、
前記装置本体の移動距離を取得する移動距離取得部、
前記方位取得部の取得結果に基づいて、前記装置本体の進行方向転換有無を検出する方向転換検出部、
前記進行方向転換有無の情報に基づいて定められるタイミングで、前記装置本体の絶対位置情報を取得する絶対位置取得部、及び
前記装置本体の絶対位置情報と、前記移動距離取得部により取得される前記装置本体の移動距離とから、前記装置本体の移動経路を特定する移動経路特定部、として機能させるプログラム。
【請求項1】
装置本体と、
前記装置本体に予め定められた基準軸が指し示す方位を取得する方位取得部と、
前記装置本体の移動距離を取得する移動距離取得部と、
前記方位取得部の取得結果に基づいて、前記装置本体の進行方向転換有無を検出する方向転換検出部と、
前記進行方向転換有無の情報に基づいて定められるタイミングで、前記装置本体の絶対位置情報を取得する絶対位置取得部と、
前記絶対位置取得部により取得される前記装置本体の絶対位置情報と、前記移動距離取得部により取得される前記装置本体の移動距離とから、前記装置本体の移動経路を特定する移動経路特定部と、を備える移動装置。
【請求項2】
前記絶対位置取得部は、前記装置本体が進行方向を転換したタイミングで前記装置本体の絶対位置情報を取得し、
前記移動経路特定部は、前記タイミングで取得された絶対位置情報を用いて、前記進行方向の転換角度を算出し、当該転換角度と、前記装置本体の移動距離とから、前記装置本体の移動経路を特定することを特徴とする請求項1に記載の移動装置。
【請求項3】
前記移動距離取得部は、前記方向転換検出部により検出される前記進行方向転換位置と、前記絶対位置取得部により前記装置本体の絶対位置を取得した位置との間の位置誤差を検出し、
前記移動経路特定部は、前記位置誤差を更に用いて、前記装置本体の移動経路を特定することを特徴とする請求項2に記載の移動装置。
【請求項4】
前記絶対位置取得部は、進行方向の転換をする前の連続した時間内及び前記進行方向を転換した後の連続した時間内のそれぞれにおいて、前記装置本体の絶対位置を複数回取得し、
前記移動経路特定部は、前記進行方向を転換する前に取得された複数の絶対位置から定まる第1の直線と、転換後に取得された複数の絶対位置から定まる第2の直線とから前記進行方向の転換角度を算出し、当該転換角度と、前記装置本体の移動距離とから、前記装置本体の移動経路を特定することを特徴とする請求項1に記載の移動装置。
【請求項5】
前記絶対位置取得部が、前記進行方向の転換前及び転換後の少なくとも一方において前記絶対位置を複数回取得できなかった場合に、
前記移動経路特定部は、前記進行方向を転換したタイミングで取得された絶対位置情報を用いて、前記進行方向の転換角度を算出し、当該転換角度と、前記装置本体の移動距離とから、前記装置本体の移動経路を特定することを特徴とする請求項4に記載の移動装置。
【請求項6】
前記移動距離取得部は、前記方向転換検出部により検出される前記進行方向転換位置と、前記絶対位置取得部により前記装置本体の絶対位置を取得した位置との間の位置誤差を検出し、
前記移動経路特定部は、前記位置誤差を更に用いて、前記装置本体の移動経路を特定することを特徴とする請求項5に記載の移動装置。
【請求項7】
コンピュータを、
装置本体に予め定められた基準軸が指し示す方位を取得する方位取得部、
前記装置本体の移動距離を取得する移動距離取得部、
前記方位取得部の取得結果に基づいて、前記装置本体の進行方向転換有無を検出する方向転換検出部、
前記進行方向転換有無の情報に基づいて定められるタイミングで、前記装置本体の絶対位置情報を取得する絶対位置取得部、及び
前記装置本体の絶対位置情報と、前記移動距離取得部により取得される前記装置本体の移動距離とから、前記装置本体の移動経路を特定する移動経路特定部、として機能させるプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【公開番号】特開2010−223829(P2010−223829A)
【公開日】平成22年10月7日(2010.10.7)
【国際特許分類】
【出願番号】特願2009−72603(P2009−72603)
【出願日】平成21年3月24日(2009.3.24)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成22年10月7日(2010.10.7)
【国際特許分類】
【出願日】平成21年3月24日(2009.3.24)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]