説明

移動距離算出装置及び移動距離算出方法

【課題】測位誤差を含む位置情報に基づいてユーザの移動距離を算出するに際して、誤差の影響を軽減することにより、移動距離の算出精度を向上する。
【解決手段】位置情報取得部11により複数の位置情報が取得され、移動軌跡判定部16により、時系列上で連続する3点の位置情報により形成される折れ角に基づいて、ユーザが曲線移動中であるか、直線移動中であるかが位置情報ごとに判定され、位置情報選択部17により、直線移動中と判定された位置情報の1つ以上が除去され、除去されなかった直線移動中の位置情報と、曲線移動中と判定された位置情報とが処理対象の位置情報として選択される。こうして選択された位置情報に基づくユーザの移動軌跡は、直線移動中において方向転換をしているかのような誤差が排除されたものとなる。従って、かかる位置情報に基づいて算出されるユーザの移動距離は、高精度なものとなる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動距離算出装置及び移動距離算出方法に関する。
【背景技術】
【0002】
従来より、例えばGPS等の手段により取得された位置情報に基づいて、ユーザの移動距離を算出する技術が知られている。例えば、GPSにより移動者の位置座標を測定し、その位置座標を直線で結び、直線の長さを合算した線分長をユーザの移動距離とする技術が知られている(例えば、特許文献1参照)。また、取得された位置情報群から、所定個おきに位置情報を取り出し、取り出した位置情報間の距離を算出することにより移動距離を求める技術が知られている(例えば、特許文献2参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2001−317960号公報
【特許文献2】特開2004−20392号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記従来技術では、ユーザが直線移動している場合であっても、取得される位置情報に含まれる測位誤差等によって、方向転換を繰り返しながら移動しているような移動軌跡が描かれる。このような移動軌跡となる位置情報から算出された移動距離は、大きな誤差を含むこととなる。
【0005】
そこで、本発明は、上記問題点に鑑みてなされたものであり、測位誤差を含む位置情報に基づいてユーザの移動距離を算出するに際して、誤差の影響を軽減することにより、移動距離の算出精度の向上が可能な移動距離算出装置及び移動距離算出方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明の移動距離算出装置は、ユーザの所在位置を示す情報を含む位置情報に基づいて、ユーザの移動距離を算出する移動距離算出装置であって、複数の位置情報を取得する位置情報取得手段と、位置情報取得手段により取得された位置情報を処理対象の位置情報として取得し、時系列上において連続する3つの位置情報を第1〜第3の位置情報としたときに、第1の位置情報と第2の位置情報とを結ぶ直線に対して、第2の位置情報と第3の位置情報とを結ぶ直線が成す角度である折れ角に基づいて、ユーザが曲線移動中であるか否かを位置情報毎に判定する移動軌跡判定手段と、移動軌跡判定手段により曲線移動中と判定されなかった位置情報である直線移動中位置情報のうち少なくとも1つの直線移動中位置情報を除去し、除去されなかった直線移動中位置情報と、移動軌跡判定手段により曲線移動中と判定された位置情報である曲線移動中位置情報とを、移動距離算出のための位置情報として選択する位置情報選択手段と、位置情報選択手段により選択された位置情報に基づいて、位置情報間の距離を算出し、算出された位置情報間の距離を積算することにより、ユーザの移動距離を算出する移動距離算出手段と、移動距離算出手段により算出されたユーザの移動距離を出力する処理結果出力手段とを備えることを特徴とする。
【0007】
また、上記課題を解決するために、本発明の移動距離算出方法は、ユーザの所在位置を示す情報を含む位置情報に基づいて、ユーザの移動距離を算出する移動距離算出装置における移動距離算出方法であって、複数の位置情報を取得する位置情報取得ステップと、位置情報取得ステップにおいて取得された位置情報を処理対象の位置情報として取得し、時系列上において連続する3つの位置情報を第1〜第3の位置情報としたときに、第1の位置情報と第2の位置情報とを結ぶ直線に対して、第2の位置情報と第3の位置情報とを結ぶ直線が成す角度である折れ角に基づいて、ユーザが曲線移動中であるか否かを位置情報毎に判定する移動軌跡判定ステップと、移動軌跡判定ステップにおいて曲線移動中と判定されなかった位置情報である直線移動中位置情報のうち少なくとも1つの直線移動中位置情報を除去し、除去されなかった直線移動中位置情報と、移動軌跡判定ステップにおいて曲線移動中と判定された位置情報である曲線移動中位置情報とを、移動距離算出のための位置情報として選択する位置情報選択ステップと、位置情報選択ステップにおいて選択された位置情報に基づいて、位置情報間の距離を算出し、算出された位置情報間の距離を積算することにより、ユーザの移動距離を算出する移動距離算出ステップと、移動距離算出ステップにおいて算出されたユーザの移動距離を出力する処理結果出力ステップとを有することを特徴とする。
【0008】
本発明の移動距離算出装置及び移動距離算出方法によれば、時系列上で連続する3点の位置情報により形成される折れ角に基づいて、ユーザが曲線移動中であるか、直線移動中であるかが判定され、直線移動中と判定された位置情報の1つ以上を除去されるので、除去されなかった直線移動中の位置情報に基づく移動軌跡が直線となる。そして、除去されなかった直線移動中の位置情報と、曲線移動中と判定された位置情報に基づいて移動距離が算出されるので、移動距離算出の精度が向上する。
【0009】
また、本発明の移動距離算出装置では、移動軌跡判定手段は、位置情報取得手段により取得された位置情報から、時系列上において連続する位置情報p,p,p,・・・p(jは4以上の整数)を取得し、時系列上において連続する3つの位置情報pi−1,p,pi+1(iは2〜(j−1)の整数)に基づき、位置情報pi−1と位置情報pとを結ぶ直線に対して、位置情報pと位置情報pi+1を結ぶ直線が成す角度として形成される折れ角θを求め、折れ角θ〜折れ角θj−1を積算した値である積算角θを求め、積算角θの値が予め設定された所定範囲に含まれる場合に、折れ角θ〜折れ角θj−1の絶対値が最大となる折れ角θを形成する位置情報pを曲線移動中位置情報と判定することを特徴とする。
【0010】
折れ角θの積算角θの値が所定範囲に含まれる場合には、積算された折れ角θ〜折れ角θj−1を形成するいずれかの位置情報pに示される位置において、曲線移動が行われているものと判断することができる。従って、折れ角θ〜折れ角θj−1のうち絶対値が最大となる折れ角θを形成する位置情報pを曲線移動中の位置情報と判定することができる。これにより、ユーザが曲線移動中であるか、直線移動中であるかの判定が適切に行われる。
【0011】
また、本発明の移動距離算出装置では、位置情報選択手段は、曲線移動中位置情報のみを移動距離算出のための位置情報として選択することが好ましい。
【0012】
この場合には、全ての直線移動中位置情報が除去され、曲線移動中位置情報が移動距離算出のための位置情報として選択されるので、選択された位置情報を直線で結んで得られる軌跡は、ユーザの移動軌跡を適切に表したものとなる。また、全ての直線移動中位置情報が除去された上で移動距離の算出が行われるので、移動距離算出の処理負荷が軽減される。
【0013】
また、本発明の移動距離算出装置では、位置情報選択手段は、予め設定された所定数の直線移動中位置情報ごとに1つの直線移動中位置情報を選択し、選択された当該直線移動中位置情報と曲線移動中位置情報とを移動距離算出のための位置情報として選択する構成とすることもできる。
【0014】
この場合には、一部の直線移動中位置情報と曲線移動中位置情報が移動距離算出のための位置情報として選択されるので、選択された位置情報を直線で結んで得られる軌跡は、ユーザの移動軌跡を適切に表したものとなる。一部の直線移動中位置情報が移動距離算出のための位置情報として用いられるので、移動距離算出の精度が向上する。また、ユーザが常に直線移動を行っている場合において、距離算出が行われないことが防止される。
【0015】
また、本発明の移動距離算出装置では、位置情報取得手段により取得された位置情報を処理対象の位置情報として取得し、取得した位置情報から一の位置情報を選択し、一の位置情報から予め設定された所定の距離以内に所在する位置情報を関連位置情報として保持し、一の位置情報及び関連位置情報の重心位置を算出し、重心位置を示す集約位置情報を生成する位置情報集約手段をさらに備え、移動軌跡判定手段は、位置情報取得手段により取得された位置情報及び位置情報集約手段により生成された集約位置情報を処理対象の位置情報として取得することを特徴とする。
【0016】
この場合には、一の位置情報の近傍の所定距離内に所在する位置情報が当該一の位置情報に集約され、集約された複数の位置情報の重心位置から集約位置情報が算出され、算出された集約位置情報が移動距離算出に用いられる。これにより、測位誤差によりユーザが静止している場合であっても細かく移動しているように見えてしまうような複数の位置情報が集約位置情報に集約されるので、移動距離の算出精度が向上する。
【0017】
また、本発明の移動距離算出装置では、位置情報取得手段により取得された位置情報のうち、時系列上において連続する3つの位置情報を位置情報pi−1,p,pi+1としたときに、位置情報pi−1と位置情報pとを結ぶ直線に対して、位置情報pと位置情報pi+1とを結ぶ直線が成す角度が、予め設定された所定の角度以下である場合に、当該位置情報pを異常位置情報として検出することを第1の異常検出条件とし、第1の異常検出条件により検出した異常位置情報を処理対象の位置情報から除去する異常位置情報除去手段をさらに備え、位置情報集約手段は、異常位置情報除去手段により異常位置情報を除去された後の位置情報を処理対象の位置情報として取得することを特徴とする。
【0018】
この場合には、測位誤差または測位異常といった原因により、移動軌跡が成す角度が所定の角度以下となるような位置情報が異常位置情報として検出され、検出された異常位置情報が予め除去されるので、移動距離の算出精度が向上する。
【0019】
また、本発明の移動距離算出装置では、異常位置情報除去手段は、位置情報取得手段により取得された位置情報のうち、時系列上において連続する5つの位置情報を位置情報pi−2,pi−1,p,pi+1,pi+2としたときに、位置情報pi−2と位置情報pi−1との間の距離及び位置情報pi+1と位置情報pi+2との間の距離の和に対する、位置情報pi−1と位置情報pとの間の距離及び位置情報pと位置情報pi+1との間の距離の和の比が、予め設定された所定の閾値以上である場合に、当該位置情報pを異常位置情報として検出することを第2の異常検出条件とし、第1の異常検出条件及び第2の異常検出条件により検出した異常位置情報を処理対象の位置情報から除去することが好ましい。
【0020】
この場合には、位置情報間を直線で結んだ移動距離が極端に大きくなるような位置情報が異常位置情報として検出され、検出された異常位置情報が予め除去されるので、移動距離の算出精度がさらに向上する。
【0021】
また、本発明の移動距離算出装置では、異常位置情報除去手段は,位置情報取得手段により取得された位置情報のうち,時系列上において連続する2つの位置情報をpi−1,pとしたときに、位置情報pi−1,pに基づき算出される移動距離、及び位置情報が測位された時刻に基づき算出される移動時間に基づき算出された移動速度が所定の閾値以上である場合に、当該位置情報pを異常位置情報として検出することを第3の異常検出条件とし,第3の異常検出条件により検出した異常位置情報を処理対象の位置情報から除去することを特徴とする。
【0022】
位置情報から算出される移動速度が極端に大きく所定の閾値以上である場合には、当該位置情報に大きな誤差が含まれている可能性が高い。上記構成によれば、大きな誤差が含まれている可能性が高い位置情報が異常位置情報として検出され、移動距離の算出に用いられないので、移動距離の算出精度が向上する。
【0023】
また、本発明の移動距離算出装置では、異常位置情報除去手段は、位置情報pに関して第3の異常検出条件が満たされる場合において、位置情報pi−1が時系列上において最初に取得した位置情報である場合には,位置情報pに代えて、位置情報pi−1を処理対象の位置情報から除去することを特徴とする。
【0024】
一般的に位置情報取得部により最初に取得された位置情報の測位誤差は大きく、2回目以降の測位において補正され測位精度が向上する場合が多い。上記構成によれば、第3の異常検出条件を満たすような位置情報が検出された場合において、最初に測位された位置情報が異常位置情報として検出され、検出された異常位置情報が移動距離の算出対象から除去されるので、移動距離の算出精度がさらに向上する。
【0025】
また、本発明の移動距離算出装置では、位置情報選択手段は、位置情報集約手段によって集約された時系列上における最新の集約位置情報の生成に用いられた位置情報のうち、時系列上において最新の位置情報を移動距離算出のための位置情報として選択することを特徴とする。
【0026】
この場合には、集約位置情報に代えて、時系列において最新の位置情報を移動距離算出のための位置情報として利用することにより、算出される移動距離のリアルタイム性が向上し、短距離の移動における移動距離算出の精度が向上する。
【発明の効果】
【0027】
測位誤差を含む位置情報に基づいてユーザの移動距離を算出するに際して、誤差の影響を軽減することにより、移動距離の算出精度の向上が可能となる。
【図面の簡単な説明】
【0028】
【図1】移動距離算出装置の機能的構成を示すブロック図である。
【図2】移動距離算出装置のハードブロック図である。
【図3】位置情報の構成及び内容の一例を示す図である。
【図4】時系列上において連続する5点の位置情報の例を示す図である。
【図5】位置情報集約部による位置情報の集約処理を説明するための図である。
【図6】集約位置情報の構成及び内容の一例を示す図である。
【図7】異常集約位置情報除去部による異常集約位置情報の除去処理を説明するための図である。
【図8】異常集約位置情報除去部から取得された集約位置情報の構成及び内容の一例を示す図である。
【図9】移動軌跡判定部における判定処理のアルゴリズムを示すフローチャートである。
【図10】図8に示す集約位置情報p´を時系列順に直線で結んだ状態を示す図である。
【図11】曲線移動中と判定された集約位置情報のデータに曲線移動中フラグが設定された状態を示す図である。
【図12】移動距離算出のための位置情報として選択された集約位置情報のデータに位置情報選択フラグが設定された状態を示す図である。
【図13】移動距離算出のための位置情報として選択された集約位置情報を直線で結んだ軌跡を示す図である。
【図14】移動距離算出部により算出された移動距離のデータの例を示す図である。
【図15】移動距離算出装置において実施される移動距離算出方法の処理内容を示すフローチャートである。
【図16】最新の位置情報が移動距離算出のための位置情報として選択される例を示す図である。
【発明を実施するための形態】
【0029】
本発明に係る移動距離算出装置の実施形態について図面を参照して説明する。なお、可能な場合には、同一の部分には同一の符号を付して、重複する説明を省略する。
【0030】
図1は、実施形態に係る移動距離算出装置の機能的構成を示すブロック図である。移動距離算出装置1は、ユーザの所在位置を示す情報を含む位置情報に基づいて、ユーザの移動距離を算出する装置であって、例えば、移動端末、携帯電話、サーバといったコンピュータにより構成される。
【0031】
移動距離算出装置1は、機能的には、位置情報格納部10、位置情報取得部11(位置情報取得手段)、異常位置情報除去部12(異常位置情報除去手段)、位置情報集約部13(位置情報集約手段)、集約位置情報格納部14、異常集約位置情報除去部15、移動軌跡判定部16(移動軌跡判定手段)、位置情報選択部17(位置情報選択手段)、移動距離算出部18(移動距離算出手段)、移動距離格納部19、及び処理結果出力部20(処理結果出力手段)を備える。
【0032】
図2は、移動距離算出装置1のハードウエア構成図である。移動距離算出装置1は、物理的には、図2に示すように、CPU101、主記憶装置であるRAM102及びROM103、ネットワークカード等のデータ送受信デバイスである通信モジュール104、ハードディスク、フラッシュメモリ等の補助記憶装置105、入力デバイスであるキーボード及びマウス等の入力装置106、ディスプレイ等の出力装置107などを含むコンピュータシステムとして構成されている。図1に示した各機能は、図2に示すCPU101、RAM102等のハードウエア上に所定のコンピュータソフトウェアを読み込ませることにより、CPU101の制御のもとで通信モジュール104、入力装置106、出力装置107を動作させるとともに、RAM102や補助記憶装置105におけるデータの読み出し及び書き込みを行うことで実現される。再び、図1を参照し、移動距離算出装置1の各機能部について詳細に説明する。
【0033】
位置情報格納部10は、ユーザの所在位置を示す位置情報を格納している記憶手段である。図3(a)は、位置情報格納部10の構成及び記憶されているデータの一例を示す図である。図3(a)に示すように、位置情報格納部10には、レコードを識別するID毎に、測位日時、緯度及び経度が記憶されている。ユーザの所在位置を示す緯度及び経度は、例えば、GPS装置(図示せず)により測位される。移動距離算出装置1が携帯電話、移動端末等により構成される場合には、GPS装置は、移動距離算出装置1に備えられる。
【0034】
位置情報取得部11は、複数の位置情報を位置情報格納部10から取得する部分である。位置情報取得部11により取得される位置情報の例は、図3(a)に示される。なお、以降の説明において、ID「i」の位置情報を位置情報pと示すこととする。即ち、本実施形態では、位置情報取得部11は、測位日時が時系列上において連続する位置情報p〜p11を取得する。
【0035】
異常位置情報除去部12は、位置情報取得部11により取得された位置情報から、異常位置情報を検出し、検出した異常位置情報を処理対象の位置情報から除去する部分である。異常位置情報は、例えば、何らかの原因により緯度または経度として異常な値が測定された位置情報や、非常に大きな誤差が含まれる位置情報である。図4を用いて、異常位置情報を検出するための異常検出条件を以下に説明する。
【0036】
図4は、時系列上において連続する5点の位置情報の例を示す図である。第1の異常検出条件は、時系列上において連続する3つの位置情報を位置情報pi−1,p,pi+1としたときに、位置情報pi−1と位置情報pとを結ぶ直線に対して、位置情報pと位置情報pi+1とを結ぶ直線が成す角度θが、予め設定された所定の角度以下である場合に、当該位置情報pを異常位置情報として検出するものである。また、角度θの値は、pを始点とpi−1を終点とするベクトル、及びpを始点とpi+1を終点とするベクトルに基づいてアークコサイン値を算出することにより求められる。なお、第1の異常検出条件において異常位置情報の検出に用いられる所定の角度は、位置情報の測定精度等に基づいて決定され、例えば60度といった値に設定される。
【0037】
また、第2の異常検出条件は、図4に示すように、時系列上において連続する5つの位置情報を位置情報pi−2,pi−1,p,pi+1,pi+2としたときに、位置情報pi−2及び位置情報pi−1間の距離と位置情報pi+1及び位置情報pi+2間の距離との和に対する、位置情報pi−1及び位置情報p間の距離と位置情報p及び位置情報pi+1間の距離の和の比が、予め設定された所定の閾値以上である場合に、当該位置情報pを異常位置情報として検出するものである。即ち、点aと点bとの間の距離をdis(a,b)と表したときに、下記式(1)の値が所定の閾値以上である場合に、位置情報pが異常位置情報として検出される。なお、2点間の距離の算出には、例えば、ヒュベニの距離計算式を用いることができる。
【数1】


なお、第2の異常検出条件において異常位置情報の検出に用いられる所定の閾値は、位置情報の測定精度等に基づいて決定することができる。なお、以上の異常検出条件の説明において、位置情報pの添え字iは、2以上且つ位置情報取得部11により取得された位置情報数から1を減じた数以下の整数である。
【0038】
異常位置情報除去部12は、第1の異常検出条件及び第2の異常検出条件の両方に該当する位置情報を異常位置情報として検出することとしてもよいし、第1の異常検出条件及び第2の異常検出条件のいずれか一方に該当する位置情報を異常位置情報として検出することとしてもよい。また、異常位置情報除去部12は、以下に説明する第3の異常検出条件により異常位置情報を検出することとしてもよい。
【0039】
第3の異常検出条件は、図4に示すように、時系列上において連続する2つの位置情報を位置情報pi−1,pとし、これらの位置情報が測位された時刻をそれぞれ時刻ti−1,tとしたときに、下記式(7)により算出される移動速度が所定の閾値以上である場合に、位置情報pi−1又は位置情報pを異常位置情報として検出するものである。異常位置情報除去部12は、位置情報pi−1が最初に取得した位置情報である場合には、当該位置情報pi−1を異常位置情報として検出し、位置情報pi−1が最初に取得した位置情報でない場合には、当該位置情報pを異常位置情報として検出する。
【数2】

【0040】
位置情報から算出される移動速度が極端に大きく所定の閾値以上である場合には、当該位置情報に大きな誤差が含まれている可能性が高いので、かかる位置情報を異常位置情報として検出し、移動距離の算出に用いないことにより、移動距離の算出精度が向上する。
【0041】
また、一般的に位置情報取得部により最初に取得された位置情報の測位誤差は大きく,2回目以降の測位において補正され測位精度が向上する場合が多いので、第3の異常検出条件を満たすような位置情報が検出された場合において、最初に測位された位置情報を異常位置情報として検出し、検出された異常位置情報を移動距離の算出から除去することにより、移動距離の算出精度がさらに向上する。
【0042】
異常位置情報除去部12は、図3(b)に示すように、異常位置情報として検出した位置情報のデータに対応付けて、異常位置情報フラグを設定する。図3(b)に示す例では、ID「3」の位置情報が異常位置情報として検出されている。異常位置情報フラグが設定された位置情報は、処理対象の位置情報から除去される。以上説明したように、異常位置情報除去部12が異常位置情報を処理対象の位置情報から除外することにより、ユーザの移動距離の算出精度が向上する。
【0043】
位置情報集約部13は、異常位置情報除去部12から処理対象の位置情報を取得し、取得した位置情報から一の位置情報を代表位置情報として選択し、代表位置情報から予め設定された所定の距離以内に所在する位置情報を関連位置情報として保持し、代表位置情報及び関連位置情報の重心位置を算出し、算出した重心位置を集約位置とする集約位置情報を生成する部分である。本実施形態の移動距離算出において、高頻度に取得された位置情報を用いる場合に、それぞれの位置情報に含まれる誤差が少量であっても、位置情報間の移動距離を積算すると、少量の誤差が蓄積されて大きな誤差となる。そこで、位置情報間の距離が所定の距離以内の位置情報を集約して1つの位置情報として扱うことにより、算出される移動距離に誤差が蓄積されることを防止する。以下に、図3(c)及び図5を用いて、集約位置情報の生成を説明する。
【0044】
図5に示すように、まず、位置情報集約部13は、位置情報pを代表位置情報として選択し、図3(c)に示すように、代表位置情報として設定した位置情報pのデータに代表位置情報ID「1」を設定する。続いて、位置情報集約部13は、位置情報pから所定の距離以内に所在する位置情報p,pを関連位置情報として取得・保持し、図3(c)に示すように、関連位置情報として取得した位置情報p,pのデータに、関連付けた代表位置情報のIDとして代表位置関連付け「1」を設定する。なお、位置情報の集約の条件として用いられる所定の距離は、例えば位置情報の測定精度等に基づいて決定され、例えば100mといった値に設定される。
【0045】
そして、位置情報集約部13は、位置情報p,p,pの重心を算出し、算出した重心を集約位置とする集約位置情報p´を生成する。同様に、位置情報集約部13は、集約位置情報p´,p´を生成する。図5に示す例では、集約位置情報p´,p´はそれぞれ、位置情報p,pに基づいて生成されている。図6は、こうして生成された集約位置情報p´の例を示す図である。図6に示す例では、集約位置情報のデータとして、集約位置情報p´のIDに対応付けて、緯度、経度及び被集約位置情報が記憶されている。被集約位置情報は、集約位置(重心)の算出に用いた位置情報のIDである。
【0046】
また、位置情報集約部13は、以上説明したように、異常位置情報が除去された後の位置情報pに対して位置情報pの集約処理を行うことに代えて、位置情報pを取得しながら、集約位置情報の算出を異常位置情報除去と共に逐次算出することができる。例えば、n個の位置情報の重心位置を集約位置とする集約位置情報p´に対して、関連位置情報として位置情報pが追加された場合に、位置情報集約部13は、集約位置情報p´を以下の式(2)により算出する。
p´=(np´+p)/(n+1) ・・・(2)
【0047】
また、n個の位置情報の重心位置を集約位置とする集約位置情報p´が算出された後に、n個の位置情報のうちの位置情報pが異常位置情報として異常位置情報除去部12により除去された場合には、位置情報集約部13は、集約位置情報p´を以下の式(3)により算出する。
p´=(np´−p)/(n−1) ・・・(3)
これにより、位置情報集約部13により位置情報集約の処理を、位置情報の取得に伴い逐次的に行うことが可能となる。
【0048】
以上説明した位置情報集約部13の処理により、一の位置情報の近傍の所定距離内に所在する位置情報が当該一の位置情報に集約され、集約された複数の位置情報の重心位置から集約位置情報が算出され、算出された集約位置情報が移動距離算出に用いられる。これにより、測位誤差によりユーザが静止している場合であっても細かく移動しているように見えてしまうような複数の位置情報が集約位置情報に集約されるので、移動距離の算出精度が向上する。
【0049】
集約位置情報格納部14は、位置情報集約部13により生成された集約位置情報p´を格納する記憶手段であり、例えば、図6に示す集約位置情報p´を格納している。
【0050】
異常集約位置情報除去部15は、位置情報集約部13により生成された集約位置情報から、異常集約位置情報を検出し、検出した異常集約位置情報を処理対象の位置情報から除去する部分である。図7を用いて、異常集約位置情報を検出するための異常集約位置情報検出条件を説明する。
【0051】
図7は、時系列上において連続する3点の集約位置情報の例を示す図である。第1の異常集約位置情報検出条件は、時系列上において連続する3つの集約位置情報を集約位置情報p´i−1,p´,p´i+1としたときに、集約位置情報p´i−1と集約位置情報p´とを結ぶ直線に対して、集約位置情報p´と集約位置情報p´i+1とを結ぶ直線が成す角度θ´が、予め設定された所定の角度以下である場合に、当該集約位置情報p´を異常位置情報として検出するものである。角度θ´値は、p´を始点とp´i−1を終点とするベクトル、及びp´を始点とp´i+1を終点とするベクトルに基づいてアークコサイン値を算出することにより求められる。なお、第1の異常集約位置情報検出条件において異常集約位置情報の検出に用いられる所定の角度は、位置情報の測定精度等に基づいて決定され、例えば60度といった値に設定される。
【0052】
また、第2の異常集約位置情報検出条件は、図7に示すように、時系列上において連続する3つの集約位置情報を集約位置情報p´i−1,p´,p´i+1としたときに、集約位置情報p´i−1及び集約位置情報p´間の距離と集約位置情報p´及び集約位置情報p´i+1間の距離の和の比が、予め設定された所定の閾値以上である場合に、当該集約位置情報pを異常集約位置情報として検出するものである。即ち、点aと点bとの間の距離をdis(a,b)と表したときに、下記式(4)の値が所定の閾値以上である場合に、集約位置情報p´が異常集約位置情報として検出される。なお、2点間の距離の算出には、例えば、ヒュベニの距離計算式を用いることができる。
【数3】


なお、第2の異常集約位置情報検出条件において異常集約位置情報の検出に用いられる所定の閾値は、位置情報の測定精度等に基づいて決定することができる。
【0053】
異常集約位置情報除去部15は、第1の異常集約位置情報検出条件及び第2の異常集約位置情報検出条件の両方に該当する集約位置情報を異常集約位置情報として検出することとしてもよいし、第1の異常集約位置情報検出条件及び第2の異常集約位置情報検出条件のいずれか一方に該当する集約位置情報を異常集約位置情報として検出することとしてもよい。なお集約位置情報p´の添え字iは、2以上且つ位置情報取得部11により取得された位置情報数から2を減じた数以下の整数である。
【0054】
異常集約位置情報除去部15は、図8に示すように、異常集約位置情報として検出した集約位置情報のデータに対応付けて、異常集約位置情報フラグを設定する。図8では、異常集約位置情報が検出されなかった例を示している。異常集約位置情報フラグが設定された集約位置情報は、処理対象の位置情報から除去される。
【0055】
移動軌跡判定部16は、異常集約位置情報除去部15から処理対象の位置情報を取得し、時系列上において連続する3つの位置情報を第1〜第3の位置情報としたときに、第1の位置情報と第2の位置情報とを結ぶ直線に対して、第2の位置情報と第3の位置情報とを結ぶ直線が成す角度である折れ角に基づいて、ユーザが曲線移動中であるか否かを位置情報毎に判定する部分である。本実施形態では、移動軌跡判定部16における処理対象の位置情報は、異常集約位置情報除去部15から取得された集約位置情報である。続いて、図8〜11を用いて、移動軌跡判定部16における判定処理を詳細に説明する。
【0056】
図8は、異常集約位置情報除去部15から取得された集約位置情報の例である。図9は、移動軌跡判定部16における判定処理のアルゴリズムを示すフローチャートである。図10は、図8に示す集約位置情報p´を時系列順に直線で結んだ状態を示す図である。図10において、折れ角θ´は、時系列上において連続する3つの集約位置情報p´i−1,p´,p´i+1に基づいて、集約位置情報p´i−1と集約位置情報p´とを結ぶ直線に対して、集約位置情報p´と集約位置情報p´i+1を結ぶ直線が時計回りの方向に成す角度として形成されている。図11は、曲線移動中と判定された集約位置情報のデータに曲線移動中フラグが設定された状態を示している。以下、図9を参照して、移動軌跡判定部16における判定処理のアルゴリズムを詳細に説明する。
【0057】
まず、移動軌跡判定部16は、集約位置情報p´の曲線移動中フラグを1に設定することにより(図11参照)集約位置情報p´を始点とし、変数jの値を4に設定した後に(S11)、集約位置情報p´,p´,p´,・・・p´,(jは4以上の整数)を取得する(S12)。即ち、ステップ12において、移動軌跡判定部16は、集約位置情報p´〜p´を取得する。
【0058】
次に、移動軌跡判定部16は、連続する3点の集約位置情報p´i−1,p´,p´i+1(iは2〜(j−1)の整数)に基づき、集約位置情報p´i−1と集約位置情報p´とを結ぶ直線に対して、集約位置情報p´と集約位置情報p´i+1を結ぶ直線が成す角度として形成される折れ角θ´を集約位置情報毎に求める(S13)。
【0059】
続いて、移動軌跡判定部16は、折れ角θ´,θ´,θ´,・・・θ´j−1の積算角θを算出する(S14)。そして、移動軌跡判定部16は、積算角θの値が予め設定された第1の所定範囲に含まれるか否かを判定する(S15)。具体的には、移動軌跡判定部16は、下記式(5)が成立するか否かを判定する。
TH_θ1≦|θ|≦TH_θ2 ・・・(5)
【0060】
第1の所定範囲の値としてのTH_θ1及びTH_θ2の値は、例えば、それぞれ60°及び120°に設定されることができる。積算角θの値が予め設定された第1の所定範囲に含まれる場合には、処理手順はステップS16に進められ、積算角θの値が予め設定された第1の所定範囲に含まれない場合には、処理手順はステップS21に進められる。
【0061】
続くステップS16では、折れ角θ´j−1の値が予め設定された第2の所定範囲に含まれるか否かを判定する(S16)。具体的には、移動軌跡判定部16は、下記式(6)が成立するか否かを判定する。
TH_θ´1≦|θ´j−1|≦TH_θ´2 ・・・(6)
【0062】
第2の所定範囲の値としてのTH_θ´1及びTH_θ´2の値は、例えば、それぞれ60°及び120°に設定されることができる。なお、第2の所定範囲の値には、第1の所定範囲の値と同じ値を用いることとしてもよいし、異なる値を用いることとしてもよい。折れ角θ´j−1の値が予め設定された第2の所定範囲に含まれる場合には、処理手順はステップS17に進められ、折れ角θ´j−1の値が予め設定された第2の所定範囲に含まれない場合には、処理手順はステップS19に進められる。
【0063】
ステップS17において、移動軌跡判定部16は、曲線移動中候補フラグに「1」が設定されているか否かを判定する(S17)。曲線移動中候補フラグは、折れ角θ´(i:2〜j−1)を形成する集約位置情報p´(i:2〜j−1)の中に、曲線移動中位置情報であると判定される可能性がある位置情報が含まれていることを示すフラグである。曲線移動中候補フラグに「1」が設定されている場合には、処理手順はステップS19に進められ、曲線移動中候補フラグに「1」が設定されていない場合には、処理手順はステップS18に進められる。
【0064】
ステップS18において、移動軌跡判定部16は、曲線移動中候補フラグに「1」を設定する。一方、ステップS19において、移動軌跡判定部16は、折れ角θ´(i:2〜j−1)のうち、その絶対値が最大値又は当該最大値から予め設定された値θを減じた値以上となる折れ角θ´を抽出し、抽出された折れ角θ´を形成する集約位置情報p´の曲線移動中フラグを「1」に設定する(図11参照)。曲線移動中フラグは、当該位置情報が曲線移動中位置情報であることを示す。また、曲線移動中位置情報は、当該位置情報に示される所在位置においてユーザが曲線移動中に測位された位置情報である。なお、上記値θは、例えば、5度に設定される。
【0065】
続くステップS20において、移動軌跡判定部16は、曲線移動中候補フラグを「0」に設定すると共に、積算値θを「0」に設定することにより、処理を初期化する。一方、ステップS21において、移動軌跡判定部16は、変数jの値をインクリメントする。そして、処理手順は、ステップS12に戻る。
【0066】
ステップS19において、曲線移動中フラグが設定されることにより、曲線移動中位置情報が抽出された後に処理が終了すると、移動軌跡判定部16は、当該曲線移動中位置情報を始点として、ステップS11からの判定処理を再び開始する。
【0067】
以上説明したアルゴリズムでは、折れ角θの積算角θの値が第1の所定範囲に含まれる場合には、積算された折れ角θ〜折れ角θj−1を形成するいずれかの位置情報pに示される位置において、曲線移動が行われているものと判断することができる。従って、折れ角θ〜折れ角θj−1のうち絶対値が最大となる折れ角θ、及び当該最大値から予め設定された値θを減じた値以上となる折れ角θ´を形成する位置情報pを曲線移動中の位置情報と判定することができる。これにより、ユーザが曲線移動中であるか、直線移動中であるかの判定が適切に行われる。
【0068】
なお、以上説明した移動軌跡判定部16における判定処理のアルゴリズムでは、ステップS19において、折れ角θ´(i:2〜j−1)のうち、その絶対値が最大値又は当該最大値から予め設定された値θを減じた値以上となる折れ角θ´を抽出し、抽出された折れ角θ´を形成する集約位置情報p´の曲線移動中フラグを「1」に設定することとしているが、折れ角θ´(i:2〜j−1)のうち、その絶対値が最大値となる折れ角θ´を抽出し、当該折れ角θ´を形成する集約位置情報p´の曲線移動中フラグを「1」に設定することとしてもよい。
【0069】
図10に示した集約位置情報p´に、以上説明したアルゴリズムを適用すると以下のようになる。即ち、まず、集約位置情報p´(i:1〜4)に基づいて(S12)、折れ角θ´、θ´の値がそれぞれ−30°、+30°と求められる(S13)。そして、積算角θは、0°(=(−30°)+(+30°))となるので(S14)、積算角θの値が第1の所定範囲に含まれない(S15)。従って、処理手順は、ステップS21を経由して、ステップS12に戻る。
【0070】
続いて、集約位置情報p´(i:1〜5)に基づき、折れ角θ´、θ´、θ´(=+60°)の値が求められる(S13)。すると、積算角θは、+60°(=(−30°)+(+30°)+(+60°))となるので(S14)、積算角θの値は、第1の所定範囲に含まれる(S15)。さらに、折れ角θ´(=+60°)の値が第2の所定範囲に含まれるので、曲線移動中候補フラグに「1」が設定された後(S17,S18)、処理手順は、ステップS21を経由して、ステップS12に戻る。
【0071】
続いて、集約位置情報p´(i:1〜6)に基づき、折れ角θ´、θ´、θ´、θ´(=+10°)の値が求められる(S13)。すると、積算角θは、+70°(=(−30°)+(+30°)+(+60°)+(+10°))となるので(S14)、積算角θの値は、第1の所定範囲に含まれる(S15)。そして、折れ角θ´(=+10°)の値が第2の所定範囲に含まれないので、処理手順は、ステップS19に進められる。ステップS19において、折れ角θ´、θ´、θ´、θ´のうち、その値が、最大値又は当該最大値から5°を減じた値以上となる折れ角θ´が抽出され、折れ角θ´を形成する集約位置情報p´の曲線移動中フラグが「1」に設定される(図11参照)。そして、曲線移動中候補フラグ及び積算値θが初期化され、判定処理が一旦終了する。この後に、曲線移動中位置情報と判定された集約位置情報p´を始点として、図9のフローチャートに示す処理が再び行われる。以上説明したアルゴリズムを用いて、全ての集約位置情報p´に対する判定処理を実施することにより、集約位置情報p´,p´,p´が、曲線移動中位置情報であると判定される。
【0072】
ユーザが直線移動している場合において、その直線移動過程における集約位置情報p´により形成される折れ角θ´の値が、測位誤差等の理由により、方向転換をしたかのような大きい値となることがあるが、直線移動中における折れ角の積算角θは、直線移動を示すような一定の範囲に収まる。以上説明した移動軌跡判定部16における判定処理のアルゴリズムでは、所定値を超える折れ角θ´が検出された場合であっても、当該折れ角θ´を形成する位置情報を曲線移動中位置情報の候補としておき、時系列上において当該折れ角θ´以降の折れ角θ´i+1を加算した積算角θの値が所定範囲に含まれるか否かにより、当該折れ角θ´を形成する集約位置情報p´が曲線移動中位置情報であるか否かを判定することとしている。これにより、直線移動中の位置情報を曲線移動中と誤判定することが防止される。
【0073】
再び図1を参照して、位置情報選択部17は、移動軌跡判定部16により曲線移動中と判定されなかった集約位置情報である直線移動中位置情報のうち少なくとも1つの直線移動中位置情報を除去し、除去されなかった直線移動中位置情報と、移動軌跡判定部16により曲線移動中と判定された集約位置情報である曲線移動中位置情報とを、移動距離算出のための位置情報として選択する部分である。図12及び図13を用いて、位置情報選択部17による位置情報の選択処理を具体的に説明する。
【0074】
図12は、移動距離算出のための位置情報として選択された集約位置情報のデータに位置情報選択フラグが設定された状態を示す図である。また、図13は、移動距離算出のための位置情報として選択された集約位置情報を直線で結んだ軌跡を示す図である。
【0075】
位置情報選択部17は、例えば、曲線移動中位置情報のみを移動距離算出のための集約位置情報として選択する。そして、位置情報選択部17は、図12(a)に示すように、曲線判定フラグが「1」に設定された集約位置情報のデータに位置情報選択フラグ「1」を設定する。移動距離算出のための位置情報として選択された集約位置情報の移動軌跡は、図13(a)の太線により示される。
【0076】
この例では、全ての直線移動中位置情報が除去され、曲線移動中位置情報が移動距離算出のための位置情報として選択されるので、選択された位置情報を直線で結んで得られる軌跡は、ユーザの移動軌跡を適切に表したものとなる。また、全ての直線移動中位置情報が除去された上で移動距離の算出が行われるので、移動距離算出の処理負荷が軽減される。
【0077】
また、位置情報選択部17は、例えば、予め設定された所定数の直線移動中位置情報ごとに1つの直線移動中位置情報を選択し、選択された当該直線移動中位置情報と曲線移動中位置情報とを移動距離算出のための位置情報として選択することができる。本実施形態では、位置情報選択部17は、例えば、2つの直線移動中位置情報ごとに1つの直線移動中位置情報を選択する。位置情報選択部17は、図12(b)に示すように、選択した直線移動中位置情報、及び曲線移動中位置情報のデータに、位置情報選択フラグ「1」を設定する。移動距離算出のための位置情報として選択された集約位置情報の移動軌跡は、図13(b)の太線により示される。
【0078】
この例では、一部の直線移動中位置情報と曲線移動中位置情報が移動距離算出のための位置情報として選択されるので、選択された位置情報を直線で結んで得られる軌跡は、ユーザの移動軌跡を適切に表したものとなる。一部の直線移動中位置情報が移動距離算出のための位置情報として用いられるので、移動距離算出の精度が向上する。また、ユーザが常に直線移動を行っている場合において、距離算出が行われないことが防止される。
【0079】
なお、位置情報選択部17は、時系列において最新の集約位置情報に代えて、時系列において最新の位置情報を移動距離算出のための位置情報として選択することとしてもよい。かかる位置情報の選択処理を、図16を参照して説明する。図16は、最新の位置情報が移動距離算出のための位置情報として選択される例を示す図である。
【0080】
図16(a)に示すように、新たに取得された位置情報p16に基づき、位置情報集約部13により新たな集約位置情報p´が生成された場合に、位置情報選択部17は、最新の集約位置情報p´に代えて、最新の位置情報p16を移動距離算出のための位置情報として選択する。
【0081】
続けて、図16(b)に示すように、さらに位置情報p17が取得され、位置情報p16及びp17に基づき集約位置情報p´が生成された場合には、位置情報選択部17は、最新の位置情報p17を移動距離算出のための位置情報として選択する。
【0082】
このように、集約位置情報に代えて、時系列において最新の位置情報を移動距離算出のための位置情報として利用することにより、算出される移動距離のリアルタイム性が向上し、短距離の移動における移動距離算出の精度が向上する。
【0083】
移動距離算出部18は、位置情報選択部17により選択された処理対象の位置情報に基づいて、位置情報間の距離を算出し、算出された位置情報間の距離を積算することにより、ユーザの移動距離を算出する部分である。具体的には、移動距離算出部18は、図13(a)または図13(b)において太線に示された移動軌跡の長さを算出する。図14は、移動距離算出部18により算出された移動距離のデータの例を示す図である。移動距離算出部18は、算出した移動距離のデータを移動距離格納部19に記憶させる。移動距離格納部19は、移動距離算出部18により算出された移動距離のデータを格納する記憶手段である。
【0084】
処理結果出力部20は、移動距離算出部18により算出されたユーザの移動距離を出力する部分である。例えば、移動距離算出装置1が移動端末や携帯電話といった装置により構成される場合には、処理結果出力部20は、例えばディスプレイといった出力装置107により構成される。また、移動距離算出装置1が他の装置から移動距離算出の処理要求を受け付けて、処理要求に応じて算出した移動距離を返信するようなサーバ装置により構成される場合には、処理結果出力部20は、処理要求の要求元に対して移動距離のデータを送信する送信手段である。
【0085】
続いて、図15を参照して、本実施形態の移動距離算出方法における移動距離算出装置1の動作について説明する。図15は、移動距離算出装置1において実施される処理内容を示すフローチャートである。
【0086】
まず、位置情報取得部11は、複数の位置情報を位置情報格納部10から取得する(S1、位置情報取得ステップ)。次に、異常位置情報除去部12は、位置情報取得部11により取得された位置情報から、異常位置情報を検出し、検出した異常位置情報を処理対象の位置情報から除去する(S2)。
【0087】
続いて、位置情報集約部13は、異常位置情報除去部12から処理対象の位置情報を取得し、取得した位置情報から一の位置情報を代表位置情報として選択し、代表位置情報から予め設定された所定の距離以内に所在する位置情報を関連位置情報として保持し、代表位置情報及び関連位置情報の重心位置を算出し、算出した重心位置を集約位置とする集約位置情報を生成する(S3)。さらに、異常集約位置情報除去部15は、位置情報集約部13により生成された集約位置情報から、異常集約位置情報を検出し、検出した異常集約位置情報を処理対象の位置情報から除去する(S4)。
【0088】
次に、移動軌跡判定部16は、異常集約位置情報除去部15から処理対象の位置情報を取得し、時系列上において連続する3つの位置情報により形成される折れ角に基づいて、ユーザが曲線移動中であるか否かを位置情報毎に判定する(S5、移動軌跡判定ステップ)。ステップS5において行われる処理のアルゴリズムは、図9のフローチャートにより示される。
【0089】
次に、位置情報選択部17は、移動軌跡判定部16により曲線移動中と判定されなかった集約位置情報である直線移動中位置情報のうち少なくとも1つの直線移動中位置情報を除去し、除去されなかった直線移動中位置情報と、移動軌跡判定部16により曲線移動中と判定された集約位置情報である曲線移動中位置情報とを、移動距離算出のための位置情報として選択する(S6、位置情報選択ステップ)。
【0090】
続いて、移動距離算出部18は、位置情報選択部17により選択された処理対象の位置情報に基づいて、位置情報間の距離を算出し、算出された位置情報間の距離を積算することにより、ユーザの移動距離を算出する(S7、移動距離算出ステップ)。そして、処理結果出力部20は、移動距離算出部18により算出されたユーザの移動距離を出力する(S8、処理結果出力ステップ)。こうして、本実施形態の処理を終了する。
【0091】
以上説明した実施形態の移動距離算出装置1では、時系列上で連続する3点の位置情報により形成される折れ角に基づいて、ユーザが曲線移動中であるか、直線移動中であるかが位置情報ごとに判定され、直線移動中と判定された位置情報の1つ以上が除去され、除去されなかった直線移動中の位置情報と、曲線移動中と判定された位置情報とが処理対象の位置情報として選択される。このように選択された位置情報に基づくユーザの移動軌跡は、直線移動中において方向転換をしているかのような誤差が排除されたものとなる。従って、かかる位置情報に基づいてユーザの移動距離を算出することにより、移動距離算出の精度が向上する。
【0092】
以上、本発明をその実施形態に基づいて詳細に説明した。しかし、本発明は上記実施形態に限定されるものではない。本発明は、その要旨を逸脱しない範囲で様々な変形が可能である。
【0093】
例えば、本実施形態では、位置情報取得部11により取得された位置情報に対して、異常位置情報除去部12による異常位置情報の除去処理、位置情報集約部13による位置情報の集約処理、及び異常集約位置情報除去部15による異常集約位置情報の除去処理を実施し、それらの処理の結果として処理対象とされた位置情報について移動軌跡判定部16による判定処理が行われることとしているが、これには限定されない。例えば、位置情報取得部11により取得された位置情報に対して、移動軌跡判定部16による判定処理が行われることとしてもよい。
【0094】
また、異常位置情報除去部12による異常位置情報の除去処理、位置情報集約部13による位置情報の集約処理、及び異常集約位置情報除去部15による異常集約位置情報の除去処理のうち、いずれか1つまたは複数の処理が実施されることとしてもよい。
【符号の説明】
【0095】
1…移動距離算出装置、10…位置情報格納部、11…位置情報取得部、12…異常位置情報除去部、13…位置情報集約部、14…集約位置情報格納部、15…異常集約位置情報除去部、16…移動軌跡判定部、17…位置情報選択部、18…移動距離算出部、19…移動距離格納部、20…処理結果出力部。

【特許請求の範囲】
【請求項1】
ユーザの所在位置を示す情報を含む位置情報に基づいて、前記ユーザの移動距離を算出する移動距離算出装置であって、
複数の前記位置情報を取得する位置情報取得手段と、
前記位置情報取得手段により取得された前記位置情報を処理対象の位置情報として取得し、時系列上において連続する3つの前記位置情報を第1〜第3の位置情報としたときに、前記第1の位置情報と前記第2の位置情報とを結ぶ直線に対して、前記第2の位置情報と前記第3の位置情報とを結ぶ直線が成す角度である折れ角に基づいて、前記ユーザが曲線移動中であるか否かを前記位置情報毎に判定する移動軌跡判定手段と、
前記移動軌跡判定手段により曲線移動中と判定されなかった前記位置情報である直線移動中位置情報のうち少なくとも1つの前記直線移動中位置情報を除去し、除去されなかった前記直線移動中位置情報と、前記移動軌跡判定手段により曲線移動中と判定された前記位置情報である曲線移動中位置情報とを、移動距離算出のための前記位置情報として選択する位置情報選択手段と、
前記位置情報選択手段により選択された前記位置情報に基づいて、前記位置情報間の距離を算出し、算出された前記位置情報間の距離を積算することにより、前記ユーザの移動距離を算出する移動距離算出手段と、
前記移動距離算出手段により算出されたユーザの移動距離を出力する処理結果出力手段と
を備えることを特徴とする移動距離算出装置。
【請求項2】
前記移動軌跡判定手段は、
前記位置情報取得手段により取得された前記位置情報から、時系列上において連続する位置情報p,p,p,・・・p(jは4以上の整数)を取得し、時系列上において連続する3つの位置情報pi−1,p,pi+1(iは2〜(j−1)の整数)に基づき、位置情報pi−1と位置情報pとを結ぶ直線に対して、位置情報pと位置情報pi+1を結ぶ直線が成す角度として形成される折れ角θを求め、前記折れ角θ〜折れ角θj−1を積算した値である積算角θを求め、前記積算角θの値が予め設定された所定範囲に含まれる場合に、前記折れ角θ〜折れ角θj−1の絶対値が最大となる前記折れ角θを形成する前記位置情報pを前記曲線移動中位置情報と判定する
ことを特徴とする請求項1に記載の移動距離算出装置。
【請求項3】
前記位置情報選択手段は、
前記曲線移動中位置情報のみを移動距離算出のための前記位置情報として選択する
ことを特徴とする請求項1または2に記載の移動距離算出装置。
【請求項4】
前記位置情報選択手段は、
予め設定された所定数の前記直線移動中位置情報ごとに1つの前記直線移動中位置情報を選択し、選択された当該直線移動中位置情報と前記曲線移動中位置情報とを移動距離算出のための前記位置情報として選択する
ことを特徴とする請求項1または2に記載の移動距離算出装置。
【請求項5】
前記位置情報取得手段により取得された前記位置情報を処理対象の位置情報として取得し、取得した前記位置情報から一の位置情報を選択し、前記一の位置情報から予め設定された所定の距離以内に所在する前記位置情報を関連位置情報として保持し、前記一の位置情報及び前記関連位置情報の重心位置を算出し、前記重心位置を示す集約位置情報を生成する位置情報集約手段をさらに備え、
前記移動軌跡判定手段は、前記位置情報取得手段により取得された前記位置情報及び前記位置情報集約手段により生成された前記集約位置情報を処理対象の位置情報として取得する
ことを特徴とする請求項1〜4のいずれか1項に記載の移動距離算出装置。
【請求項6】
前記位置情報取得手段により取得された前記位置情報のうち、時系列上において連続する3つの前記位置情報を位置情報pi−1,p,pi+1としたときに、前記位置情報pi−1と前記位置情報pとを結ぶ直線に対して、前記位置情報pと前記位置情報pi+1とを結ぶ直線が成す角度が、予め設定された所定の角度以下である場合に、当該位置情報pを異常位置情報として検出することを第1の異常検出条件とし、前記第1の異常検出条件により検出した前記異常位置情報を処理対象の前記位置情報から除去する異常位置情報除去手段をさらに備え、
前記位置情報集約手段は、前記異常位置情報除去手段により前記異常位置情報を除去された後の前記位置情報を処理対象の位置情報として取得する
ことを特徴とする請求項5に記載の移動距離算出装置。
【請求項7】
前記異常位置情報除去手段は、
前記位置情報取得手段により取得された前記位置情報のうち、時系列上において連続する5つの前記位置情報を位置情報pi−2,pi−1,p,pi+1,pi+2としたときに、前記位置情報pi−2と前記位置情報pi−1との間の距離及び前記位置情報pi+1と前記位置情報pi+2との間の距離の和に対する、前記位置情報pi−1と前記位置情報pとの間の距離及び前記位置情報pと前記位置情報pi+1との間の距離の和の比が、予め設定された所定の閾値以上である場合に、当該位置情報pを異常位置情報として検出することを第2の異常検出条件とし、前記第1の異常検出条件及び前記第2の異常検出条件により検出した前記異常位置情報を処理対象の前記位置情報から除去する
ことを特徴とする請求項6に記載の移動距離算出装置。
【請求項8】
前記異常位置情報除去手段は,
前記位置情報取得手段により取得された前記位置情報のうち,時系列上において連続する2つの前記位置情報をpi−1,pとしたときに、前記位置情報pi−1,pに基づき算出される移動距離、及び前記位置情報が測位された時刻に基づき算出される移動時間に基づき算出された移動速度が所定の閾値以上である場合に、当該位置情報pを異常位置情報として検出することを第3の異常検出条件とし,前記第3の異常検出条件により検出した前記異常位置情報を処理対象の前記位置情報から除去する
ことを特徴とする請求項6または7に記載の移動距離算出装置。
【請求項9】
前記異常位置情報除去手段は、
前記位置情報pに関して前記第3の異常検出条件が満たされる場合において、位置情報pi−1が時系列上において最初に取得した位置情報である場合には,前記位置情報pに代えて、前記位置情報pi−1を処理対象の前記位置情報から除去する
ことを特徴とする請求項8に記載の移動距離算出装置.
【請求項10】
前記位置情報選択手段は、
前記位置情報集約手段によって集約された時系列上における最新の集約位置情報の生成に用いられた位置情報のうち、時系列上において最新の位置情報を移動距離算出のための位置情報として選択する
ことを特徴とする請求項5〜9のいずれか1項に記載の移動距離算出装置。
【請求項11】
ユーザの所在位置を示す情報を含む位置情報に基づいて、前記ユーザの移動距離を算出する移動距離算出装置における移動距離算出方法であって、
複数の前記位置情報を取得する位置情報取得ステップと、
前記位置情報取得ステップにおいて取得された前記位置情報を処理対象の位置情報として取得し、時系列上において連続する3つの前記位置情報を第1〜第3の位置情報としたときに、前記第1の位置情報と前記第2の位置情報とを結ぶ直線に対して、前記第2の位置情報と前記第3の位置情報とを結ぶ直線が成す角度である折れ角に基づいて、前記ユーザが曲線移動中であるか否かを前記位置情報毎に判定する移動軌跡判定ステップと、
前記移動軌跡判定ステップにおいて曲線移動中と判定されなかった前記位置情報である直線移動中位置情報のうち少なくとも1つの前記直線移動中位置情報を除去し、除去されなかった前記直線移動中位置情報と、前記移動軌跡判定ステップにおいて曲線移動中と判定された前記位置情報である曲線移動中位置情報とを、移動距離算出のための前記位置情報として選択する位置情報選択ステップと、
前記位置情報選択ステップにおいて選択された前記位置情報に基づいて、前記位置情報間の距離を算出し、算出された前記位置情報間の距離を積算することにより、前記ユーザの移動距離を算出する移動距離算出ステップと、
前記移動距離算出ステップにおいて算出されたユーザの移動距離を出力する処理結果出力ステップと
を有することを特徴とする移動距離算出方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2011−117941(P2011−117941A)
【公開日】平成23年6月16日(2011.6.16)
【国際特許分類】
【出願番号】特願2010−232904(P2010−232904)
【出願日】平成22年10月15日(2010.10.15)
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【Fターム(参考)】