(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0013】
次に、本発明を実施するための形態について、図面を参照して詳細に説明する。
実施の形態
【0014】
以下、本発明の実施形態について、図面を参照しつつ詳細に説明する。ただし、発明の範囲をこれらに限定するものではない。
【0015】
図1は、本発明の実施の形態による携帯端末(情報処理装置)10のハードウェア構成を示すブロック図である。携帯端末10は、携帯電話機(スマートフォンを含む)、タブレット端末、PDA(Personal Digital Assistants)、ナビゲーション専用端末、パーソナルコンピュータなどである。
図1に示すように、携帯端末10は、制御部11、通信部12、記憶部13、操作部14、表示部15、センサ16及びスピーカ17を備えている。制御部11は、CPU(Central Processing Unit)11a及びメモリ11bを備えている。
【0016】
制御部11では、CPU11aは、記憶部13等に記憶されたプログラムをメモリ11bに展開して実行することにより、携帯端末10が備える各種構成の動作を制御し、また、各種処理の実行を制御する。制御部11において実行される処理の詳細は後述する。
【0017】
通信部12は、外部装置と通信するための通信インタフェースである。通信部12は、例えば、外部装置からデータやコマンドを受信したり、携帯端末10による処理結果を外部へ送信する。
【0018】
記憶部13は、不揮発性の記憶装置であり、例えば、半導体メモリ等により構成される。記憶部13は、制御部11における処理の実行に必要な各種プログラムや各種の情報を記憶する。
【0019】
操作部14は、携帯端末10のユーザの指示を受け付け、制御部11へ出力するためのユーザインタフェースである。操作部14は、例えば、操作キー、及びタッチパネルなどにより構成される。
【0020】
表示部15は、携帯端末10による処理結果を表示するためのユーザインタフェースである。表示部15は、液晶、又はLED(Light Emitting Diode)などを用いた表示装置により構成される。
【0021】
センサ16は、各種のセンサにより構成される。センサ16は、例えば、ジャイロセンサ、加速度センサ、地磁気センサ、及び気圧センサ等を含むことができる。センサ16は、携帯端末10を携帯するユーザの各種の動作を検知することができる。
【0022】
スピーカ17は、制御部11による処理制御に応じて、音声、音楽及び効果音など、各種の音を出力する。
【0023】
なお、本実施形態では、単一の情報処理装置により携帯端末10を構成しているが、これに限定せず、相互に通信可能な複数の情報処理装置により、携帯端末10が有する構成及び機能を実現してもよい。
【0024】
図2は、携帯端末10の機能構成を示すブロック図である。携帯端末10は、機能構成として、データベース110、経路案内部111、信号測位部112、自律航法測位部113、測位情報取得部114、位置推定部115、歩幅補正指示部116、表示制御部117を備える。データベース110は、記憶部13によって実装される。また、経路案内部111、信号測位部112、自律航法測位部113、測位情報取得部114、位置推定部115、歩幅補正指示部116、および表示制御部117の機能は、制御部11において、CPU11aが、記憶部13等に記憶されたプログラムをメモリ11bに展開して実行することにより実現される。以下に、携帯端末10が備える各機能構成の詳細を説明する。
【0025】
データベース110は、携帯端末10において実行される処理に必要な情報、及び当該処理により生成された情報など、各種情報を記憶する。
【0026】
経路案内部111は、入力された経路探索条件に従った出発地から目的地までの案内経路の情報を取得し、表示部15を介して当該案内経路を提示すること等により、ユーザに対して経路案内を行う。本実施形態において、案内経路には、道路、広場、並びに屋内及び地下の廊下などに設定される、ユーザが移動可能なあらゆる経路が含まれる。
【0027】
案内経路の探索に関し、経路案内部111は、例えば、ユーザにより入力された経路探索条件に従って、データベース110に記憶された(または通信部12を介して外部装置から取得した)地図データ等を参照し、経路探索を実行することにより、案内経路の情報を取得する。もしくは、入力された経路探索条件に従った経路探索の処理を外部装置により行い、経路案内部111は、当該経路探索の処理結果を取得することとしてもよい。経路探索の手法としてはラベル確定法やダイクストラ法など、任意の手法を利用することができる。なお、最適な経路とは、出発地点から目的地点までのコスト情報が最小であることをいう。リンクのコスト情報は、距離、所要時間、料金、その他のパラメータ、及び各種パラメータを任意に組み合わせたもの等、目的に応じて設定可能である。
【0028】
また、経路案内部111は、経路案内のために、表示部15を介した経路の提示と共に、後述する処理により特定されたユーザの現在地の情報の表示及びスピーカ17を介した音声案内の出力を行うこともできる。
【0029】
信号測位部112は、GPS受信機(図示せず)により受信したGPS衛星信号に基づいて、携帯端末10(又は携帯端末10のユーザ)の現在位置を測位し、測位した位置の情報(例えば、緯度及び経度の情報)を測位時間の情報と共に出力する。また、信号測位部112は、携帯端末10の近くに設置されたアクセスポイントから受信した信号に応じて、携帯端末10の現在位置を測位することができる。また、携帯端末10は、RFID(Radio Frequency Identifier)やBluetooth(登録商標)等の無線信号の発信装置の信号を受信し、当該受信した信号に応じて、携帯端末10の現在位置を測位することもできる。信号測位部112は、任意のタイミング及び時間間隔(例えば、1秒毎)で測位の処理を行う。以下、本実施形態において、このようにGPS衛星信号、アクセスポイントからの信号、及びRFIDの無線信号など、外部装置から受信した信号に応じて実施される測位処理を信号測位と称する。
【0030】
自律航法測位部113は、センサ16により検知された携帯端末10のユーザの動きの情報に基づいて、携帯端末10(又は携帯端末10のユーザ)の移動距離や移動方向、位置情報(緯度及び経度の情報)を自律航法により測定し、測位情報として測位時間の情報と共に出力する。自律航法測位部113は、任意のタイミング及び時間間隔(例えば、1秒毎)で測位の処理を行う。自律航法測位部113による測位は、センサ16等を用いた任意の自律航法技術を採用することができる。
【0031】
測位を行うために、自律航法測位部113は、例えば、センサ16により検知されたユーザの動きによりユーザの歩行移動時における基準位置(前回の測位時点で特定された測位位置)からの移動の歩数及び移動方向を特定し、特定された歩数及び移動方向に基づいて、基準位置からの相対的な移動距離及び移動方向の情報を算出する。当該相対的な移動距離は、例えば、人の歩行時の標準的な歩幅(若しくは予め測定された携帯端末10のユーザの歩幅)(例えば、65cm)に対して、上記特定された歩数を乗じることによって算出される。なお、後述するように、歩幅は歩幅補正支持部116からの指示を受信した際に補正される。移動方向の情報は、前回の測位時点からの相対的な移動方向(角度)の変位を示している。
【0032】
自律航法測位部113は、基準位置からの当該算出された移動距離及び移動方向の情報に基づいて携帯端末10の現在位置を測位する。なお、信号測位部112の測位処理により基準位置を取得することにより、より正確な現在位置を特定するようにしてもよい。
【0033】
また、自律航法測位部113は、センサ16(気圧センサ)によって計測された時間経過に伴う気圧値の変化量に基づいて、エスカレータ、エレベータ、または階段等の利用による昇降移動の有無を判断する。昇降移動の有無の判断は、気圧センサを用いた自律航法技術を採用することができる。例えば、自律航法測位部113は、各々の測位時点の間に気圧値の上昇または下降が検知された場合には、昇降移動が検出されたことを示す測位情報を出力する。
【0034】
自律航法測位部113は、上記のようにして特定した携帯端末10の測位情報を任意のタイミング及び時間間隔(例えば、1秒毎)で出力する。測位情報には、前回の測位時点からの相対的な移動距離及び移動方向の情報、前回の測位時点からの歩数の情報、現在位置の情報(緯度及び経度の情報)、昇降移動の検出の有無の情報等が含まれる。
【0035】
なお、自律航法測位部113による測位は、携帯端末10がGPS信号やアクセスポイントからの信号を受信できないとき(例えば、携帯端末10を携帯するユーザが屋内や地下にいるとき)に有効である。もしくは、携帯端末10が上記信号を受信できるが信号測位部112による測位精度が低いと考えられるとき(例えば、携帯端末10を携帯するユーザが屋外の高層ビルに囲まれた場所にいるとき)にも自律航法測位部113による測位は有効である。そのため、携帯端末10は、例えば、GPS信号やアクセスポイントからの信号の受信状況に応じて、信号測位部112及び自律航法測位部113のどちらにより測位を行うかを切り替えることができる。
【0036】
測位情報取得部114は、自律航法測位部113から測位情報が出力される毎に測位情報を受信し、位置推定部115に供給する。
【0037】
位置推定部115は、案内経路上の携帯端末10の推定位置(又は携帯端末10のユーザの推定位置)を特定する。具体的には、位置推定部115は、前回の推定位置(初回の場合は起点位置)から案内経路に沿って、目的地の方向に所定の距離だけ進めた位置を携帯端末10の推定位置として特定する。ここでの所定の距離は、自律航法測位部113によって出力される測位情報に基づいて決定される。例えば、測位情報に含まれる移動距離を所定の距離として用いてもよい。また、測位情報に含まれる歩数に予め設定された歩幅を乗じた値を所定の距離としてもよい。
【0038】
また、位置推定部115は、案内経路上で、携帯端末10の前回の推定位置と今回の推定位置の間に曲がり角(方向転換点)がある場合には、測位情報に含まれる移動方向の情報に基づいて、携帯端末10が曲がり角を通過したか否かを判断し、判断結果に基づいて推定位置を特定する。具体的には、例えば、曲がり角の付近で出力された数回分の測位情報に含まれる相対的な移動方向(角度変化)を蓄積した値が、案内経路上の曲がり角による進行方向の変位量と一致した時点で曲がり角を通過したと判断する。例えば、曲がり角の通過によって進行方向が90度変化すると予測される場合には、測位情報に含まれる移動方向の合計が90度になった時点(例えば、30度+40度+20度)で曲がり角を通過したと判断する。位置推定部115は、当該曲がり角からの移動距離は、曲がり角を通過したと判断された時点以降に受信した測位情報に含まれる移動距離に基づいて推定することができる。
【0039】
なお、案内経路上の起点位置としては、携帯端末10のユーザが移動を開始した案内経路上の位置が設定される。また、起点位置の情報は、実際にユーザが移動を開始した位置の情報としてなるべく信頼性の高い情報が設定されることが望ましい。例えば、信号測位部112による測位の精度が高いとき(例えば、受信したGPS信号の強度が強いとき)には、信号測位部112が測位した携帯端末10の位置を起点位置として設定することができる。
【0040】
また、位置推定部115は、信号測位部112による測位の精度が高いとき(例えば、受信したGPS信号の強度が強いとき)には、信号測位部112が測位した携帯端末10の位置を携帯端末10の推定位置として特定することもできる。
【0041】
歩幅補正指示部116は、自律航法測位部113に対して、ユーザの移動距離の算出に用いる歩幅の補正実行指示を与える。自律航法測位部113による歩幅の補正値は、所定の期間におけるユーザの実際の移動距離を歩数で割ることにより算出される。所定の期間は、例えば前回の補正実行指示の出力時点と今回の補正実行指示の出力時点の間とすることができる。歩幅補正指示部116は、所定の期間におけるユーザの実際の移動距離が正確に特定できる場合にのみ補正実行指示を与える。なお、歩数の情報は、所定の期間内に自律航法測位部113が測位した情報を用いることができる。
【0042】
ユーザの実際の移動距離が正確に特定できる場合とは、具体的には、移動区間の始点と終点が、地図データに正確な位置情報(緯度・経度等)が登録されているノード等である場合である。ユーザの推定位置がこのような地点(ノード)と一致する場合、地図データ等に基づいて両地点間の正確な距離を取得することにより、所定の期間におけるユーザの正確な移動距離を特定することができる。これにより、実際の移動距離と歩数の情報に基づいて、歩幅の補正を行うことができる。このようなノードとして、後述するように、例えば案内経路上の曲がり角(方向転換点)を用いることができる。
【0043】
補正実行指示を与えるか否かの判断(すなわち、携帯端末10の推定位置が、地図データに正確な位置情報が登録されている地点と正確に一致しているか否かの判断)は、自律航法測位部113が測位情報を出力し、その測位情報に基づいて位置推定部115が携帯端末10の推定位置を特定したタイミングで行われる。
【0044】
表示制御部117は、表示部15に対する各種情報及び画像の表示の制御を行う。例えば、表示制御部117は、位置推定部115により特定された案内経路上のユーザの推定位置を表示部15に表示するように制御する。
【0045】
(経路案内処理)
次に、携帯端末10において実行される経路案内処理について
図3のフローチャートを用いて説明する。
【0046】
まず、ステップS11において、経路案内部111は、携帯端末10のユーザにより入力された経路探索条件に従って、データベース110に記憶された地図データ等を参照し、経路探索を実行することにより、出発地から目的地までの案内経路の情報を取得する。
【0047】
次に、ステップS12において、位置推定部115は、ステップS11で探索された案内経路上における携帯端末10の起点位置を設定する。
【0048】
次に、ステップS13において、自律航法測位部113は、センサ16により検知された携帯端末10のユーザの歩数等の情報に基づいて、携帯端末10の移動距離及び移動方向の測位等を行う。
【0049】
次に、ステップS14において、自律航法測位部113は、携帯端末10の移動距離及び移動方向の情報、現在位置の情報(緯度及び経度の情報)、昇降移動の有無の情報等を含む測位情報を測位情報取得部114に出力する。
【0050】
次に、ステップS15において、位置推定部115は、自律航法測位部113によって出力された測位情報を測位情報取得部114から取得し、前回の推定位置(初回の場合は起点位置)から案内経路に沿って、自律航法測位部113によって出力された携帯端末10の移動距離だけ進めた位置を携帯端末10の推定位置として特定する。
【0051】
次に、ステップS16において、表示制御部117は、ステップS15で特定された携帯端末10の推定位置を表示部15に表示するように制御する。
【0052】
次に、ステップS17において、経路案内部111は、携帯端末10の推定位置が案内経路の目的地に到達しているか否かを判定し、到達していない場合(NO)にはステップS13に移行する。一方、目的地に到達している場合(YES)には処理を終了する。
【0053】
(歩幅補正処理)
次に、携帯端末10において実行される歩幅補正処理について
図4のフローチャートを用いて説明する。
【0054】
まず、ステップS21において、歩幅補正指示部116は、位置推定部115によって特定された携帯端末10の推定位置(
図3のステップS15)が、携帯端末10の地図データに正確な位置情報が登録されている地点(ノード)と正確に一致していることが確認できるか否かを判断する。
【0055】
具体的には、例えば歩幅補正指示部116は、携帯端末10の推定位置が案内経路上の曲がり角(方向転換点)であることが確認できた場合には、地図上のノードと一致していると判断することができる。上述のように、曲がり角を通過する際には、位置推定部115は測位情報に含まれる移動方向に基づいて携帯端末10が実際に曲がり角を通過したか否かを判断して推定位置を特定する。したがって、推定位置が曲がり角である場合には、携帯端末10の推定位置と実際の位置が正確に一致することが保証できる。
【0056】
ステップS21において、携帯端末10の推定位置がノードと一致していることが確認できた場合には(YES)、ステップS22において、歩幅補正指示部116は、前回補正実行指示を出力した時点から現時点までの間に受信した測位情報に、昇降移動が検出されたことを示す情報が含まれているか否かを判定する。一方、ステップS21において、携帯端末10の推定位置がノードと一致していることが確認できなかった場合には(NO)、ステップS21に戻り、次回の推定位置について判断を行う。
【0057】
ステップS22において、昇降移動が検出されたことを示す情報が含まれていないと判定された場合には(NO)、ステップS23において、歩幅補正指示部116は、前回補正実行指示を出力した時点から現時点までの間に、信号測位部112によって、GPS衛星信号に基づく携帯端末10の測位が行われたか否かを判定する。一方、ステップS22において、昇降移動が検出されたことを示す情報が含まれていると判定された場合には(YES)、ステップS26に移行する。昇降移動が検出された場合に補正実行指示を出力しないのは、昇降移動の手段である階段、エスカレータ、エレベータ等による移動では通常の歩幅による移動が行われないため、歩幅の補正を行うのに適さないからである。
【0058】
ステップS23において、GPS衛星信号に基づく測位が行われていないと判定された場合には(NO)、ステップS24において、歩幅補正指示部116は、補正実行指示を出力する。一方、ステップS23において、GPS衛星信号に基づく測位が行われたと判定された場合には(YES)、ステップS26に移行する。GPS衛星信号に基づく測位が検出された場合、ユーザが移動の途中で案内経路から外れた可能性が高く、このような場合は区間における正確な移動距離が特定できない。したがって、このような場合には補正を実行しないことで、不正確な歩幅補正を避けることができる。
【0059】
次に、ステップS25において、自律航法測位部113は、歩幅補正指示部116から補正実行指示が出力されると、歩幅補正を実行する。具体的には、自律航法測位部113は、登録されている開始点(前回補正実行指示を受信した時の携帯端末10の推定位置)と今回の推定位置の間の距離をその間に測定されたユーザの歩数で割ることによって、歩幅の補正値を算出する。なお、前回の補正実行指示が出力された時の携帯端末10の推定位置と今回の推定位置の間の距離の情報は、位置推定部115が自律航法測位部113に供給することができる。位置推定部115は、例えばデータベース110に記憶された2地点の緯度・経度情報や地図データの情報に基づいて2地点間の距離を取得し、自律航法測位部113に供給する。また、歩幅補正を実行すると、今回歩幅補正を実行した区間の終了点が次回補正実行指示を受信した時の補正実行の開始点として登録される。
【0060】
ステップS26では、歩幅補正指示部116は、補正実行指示を出さずにリセット指示を出力する。この場合、ステップS27において自律航法測位部113は、歩幅補正は行わず、現在の推定位置を次回補正実行指示を受信した時の補正処理の開始点として登録する(リセット処理)。
【0061】
次に、ステップS28において、歩幅補正指示部116は、携帯端末10の推定位置が案内経路の目的地に到達しているか否かを判定し、到達していない場合(NO)にはステップS21に移行する。一方、目的地に到達している場合(YES)には処理を終了する。
【0062】
なお、本実施形態では、携帯端末10の推定位置が案内経路上の曲がり角であることが確認できた場合に、補正実行指示を出力する例をあげているが、この他にも、携帯端末10の推定位置が地図データに正確な位置情報が登録されている地点(ノード)と正確に一致していることが確認できる場合であれば補正実行指示を出力することができる。すなわち、位置推定部115が、前回の補正実行指示を出力した時の携帯端末10の推定位置と、今回の推定位置との間の正確な距離を自律航法測位部113に供給することができる場合には補正実行指示を出力することができる。具体的には、例えば、経路案内の開始点(起点位置)から最初の曲がり角までの区間で歩幅補正を実行させるようにしてもよい。また、補正を行う区間の経路は、開始点と終了点間の距離が正確に特定できれば直線であっても曲線であってもよい。
【0063】
また、歩幅補正を行う区間(開始点と終了点の間)の距離に一定の制限を設けるようにしてもよい。例えば、歩幅補正指示部116は、補正実行指示を出力するか否かを判断する際に、開始点(前回補正実行指示を出力した際の推定位置)と終了点(今回の推定位置)の間の距離が一定値以上(例えば、20m以上)であるか否かを判断し、距離が一定値以上である場合にのみ補正実行指示を出力するようにしてもよい。
【0064】
図5は、本実施形態による歩幅補正を行うタイミングを説明する図である。
図5に示すように、経路案内のスタート地点Sから案内経路Rに沿ってユーザが移動を開始すると、推定位置が曲がり角C1に達した時点で歩幅補正指示部116から1回目の補正実行指示が出力される。自律航法測位部113は、地点C1を補正の開始点として登録する。さらにユーザが経路に沿って移動していくと、次の曲がり角C2に達した時点で2回目の補正実行指示が出力される。自律航法測位部113は、2回目の補正実行指示を受信した際、開始点をC1、終了点をC2として歩幅補正を実行する。具体的には、C1−C2間の距離の情報を位置推定部115から取得し、C1−C2間の歩数で割り算することにより、歩幅の補正値を算出する。補正が終了すると、新たな補正の開始点としてC2が登録される。
【0065】
さらに、ユーザが経路に沿って移動していくと、次の曲がり角C3に達した時点で3回目の補正実行指示が出力され、自律航法測位部113は、開始点をC2、終了点をC3として歩幅補正を実行する。補正が終了すると、新たな補正の開始点としてC3が登録される。
【0066】
さらに、ユーザが経路に沿って移動していくと、次の曲がり角C4に到達するが、C3−C4間には、階段STが存在し、昇降移動が検出されるため、補正実行指示は出力されずにリセット指示が出力される。自律航法測位部113は、リセット指示を受信すると、歩幅補正は行わず、次回の補正実行の開始点としてC4を登録する。
【0067】
さらに、ユーザが経路に沿って移動していくと、次の曲がり角C5に達した時点で4回目の補正実行指示が出力され、自律航法測位部113は、開始点をC4、終了点をC5として歩幅補正を実行する。補正が終了すると、新たな補正の開始点としてC5が登録される。
【0068】
以上のように、本実施形態によれば、歩幅補正指示部116が、ユーザの実際の移動距離が正確に特定できる場合、すなわち、補正を行う区間の開始点と終了点においてユーザの推定位置が地図データに正確な位置情報が登録されている地点(ノード)と一致していることが保証できる場合のみ、歩幅補正の実行指示を出力するようにした。これにより、正確な移動距離と歩数に基づいて歩幅の補正値を算出することができる。補正を行う区間の開始点と終了点としては、例えば案内経路上の曲がり角を利用することができる。
【0069】
また、補正を行う区間においてユーザの昇降移動が検出された場合には、正確な移動距離が特定できる場合でも、補正実行指示は出力しないようにしたので、不正確な歩幅補正を避けることができる。
【0070】
また、補正を行う区間においてGPS信号を利用したユーザの位置特定が行われた場合には、正確な移動距離が特定できる場合でも、補正実行指示は出力しないようにしたので、不正確な歩幅補正を避けることができる。
【0071】
本発明は、上記した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において、他の様々な形で実施することができる。上記実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈されるものではない。
【0072】
また、上記の処理フローに含まれる各処理ステップは、処理内容に矛盾を生じない範囲で、任意に順番を変更して又は並列に実行することができるとともに、各処理ステップ間に他のステップを追加してもよい。また、便宜上1ステップとして記載されているステップは、複数ステップに分けて実行することができる一方、便宜上複数ステップに分けて記載されているものは、1ステップとして把握することができる。
【0073】
また、本発明のプログラムは、CD−ROM等の光学ディスク、磁気ディスク、半導体メモリなどの各種の記録媒体を通じて、又は通信ネットワークなどを介してダウンロードすることにより、コンピュータにインストール又はロードすることができる。