(57)【特許請求の範囲】
【請求項１】
ユーザの行動によって発生する加速度を取得する加速度取得手段と、
前記加速度取得手段によって取得された加速度に基づいて、前記ユーザの行動が歩行であるか走行であるかを推定する行動推定手段と、
前記ユーザの進行方向を推定するために、前記行動推定手段によって前記ユーザの行動は歩行であると推定された場合は歩行時用方向推定方法を選択し、前記行動推定手段によって前記ユーザの行動は走行であると推定された場合は走行時用方向推定方法を選択する推定方法選択手段と、
前記推定方法選択手段によって選択された前記歩行時用方向推定方法又は前記走行時用方向推定方法によって、前記ユーザの進行方向を推定する方向推定手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記方向推定手段は、
前記行動推定手段によって前記ユーザの行動は歩行であると推定された場合は、前記歩行時用方向推定方法によって、前記加速度取得手段によって取得された加速度の鉛直成分における上方向の加速度の極値を示すタイミングに対して、前記加速度取得手段によって取得された加速度の水平成分における極値のうち、時間軸における未来方向で２番目に近い、または時間軸における過去方向で最も近い極値が示す方向を前記ユーザの進行方向であると推定し、
前記行動推定手段によって前記ユーザの行動は走行であると推定された場合は、前記走行時用方向推定方法によって、前記加速度取得手段によって取得された加速度の鉛直成分における上方向の極値を示すタイミングに対して、前記加速度取得手段によって取得された加速度の水平成分における極値のうち、前記加速度の鉛直成分における上方向の極値と同じ半周期の期間に属する極値が示す方向を前記ユーザの進行方向であると推定する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記行動推定手段によって前記ユーザの行動が歩行であると推定された場合に、前記加速度取得手段によって取得された加速度の波形に対して、歩行時に対応する周波数帯域を通過させる歩行用フィルタを適用する歩行用フィルタ処理手段と、
前記行動推定手段によって前記ユーザの行動が走行であると推定された場合に、前記加速度取得手段によって取得された加速度の波形に対して、走行時に対応する周波数帯域を通過させる走行用フィルタを適用する走行用フィルタ処理手段と、
を備え、
前記方向推定手段は、
前記行動推定手段によって前記ユーザの行動は歩行であると推定された場合は、前記歩行用フィルタによるフィルタ処理後の前記加速度の波形に基づいて、前記ユーザの進行方向を推定し、
前記行動推定手段によって前記ユーザの行動は走行であると推定された場合は、前記走行用フィルタによるフィルタ処理後の前記加速度の波形に基づいて、前記ユーザの進行方向を推定する、
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記行動推定手段は、前記加速度取得手段によって取得された加速度の波形に対して、歩行時に対応する周波数帯域を通過させる歩行用フィルタ及び走行時に対応する周波数帯域を通過させる走行用フィルタを適用し、前記歩行用フィルタ及び前記走行用フィルタの処理結果において、極値がより明確であるフィルタに対応する行動を前記ユーザの行動として推定することを特徴とする請求項１または２に記載の情報処理装置。
【請求項５】
前記加速度取得手段によって取得された加速度の波形に対して、歩行時に対応する周波数帯域及び走行時に対応する周波数帯域を通過させる共通フィルタを適用する共通フィルタ処理手段を備え、
前記行動推定手段は、前記共通フィルタによるフィルタ処理後の前記加速度に基づいて、前記ユーザの行動が歩行であるか走行であるかを推定することを特徴とする請求項１または２に記載の情報処理装置。
【請求項６】
情報処理装置で実行される進行方向推定方法であって、
ユーザの行動によって発生する加速度を取得する加速度取得ステップと、
前記加速度取得ステップにおいて取得された加速度に基づいて、前記ユーザの行動が歩行であるか走行であるかを推定する行動推定ステップと、
前記ユーザの進行方向を推定するために、前記行動推定ステップにおいて前記ユーザの行動は歩行であると推定された場合は歩行時用方向推定方法を選択し、前記行動推定ステップにおいて前記ユーザの行動は走行であると推定された場合は走行時用方向推定方法を選択する推定方法選択ステップと、
前記推定方法選択ステップにおいて選択された前記歩行時用方向推定方法又は前記走行時用方向推定方法によって、前記ユーザの進行方向を推定する方向推定ステップと、
を含むことを特徴とする進行方向推定方法。
【請求項７】
情報処理装置を制御するコンピュータに、
ユーザの行動によって発生する加速度を取得する加速度取得機能と、
前記加速度取得機能によって取得された加速度に基づいて、前記ユーザの行動が歩行であるか走行であるかを推定する行動推定機能と、
前記ユーザの進行方向を推定するために、前記行動推定機能によって前記ユーザの行動は歩行であると推定された場合は歩行時用方向推定方法を選択し、前記行動推定機能によって前記ユーザの行動は走行であると推定された場合は走行時用方向推定方法を選択する推定方法選択機能と、
前記推定方法選択機能によって選択された前記歩行時用方向推定方法又は前記走行時用方向推定方法によって、前記ユーザの進行方向を推定する方向推定機能と、
を実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、進行方向推定方法及びプログラムに関する。
【背景技術】
【０００２】
従来、加速度センサの入力信号に基づいて、歩行者の現在位置を自律的に推定する技術が知られている。
例えば、特許文献１には、加速度センサにより検出された加速度に基づいて、歩行者の進行方向を推定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−２４２１７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の技術は、ユーザが歩行していることを前提として進行方向を推定している。
そのため、ユーザが走行している場合には、進行方向の推定に誤りが生じる可能性が高い。
即ち、従来の技術においては、ユーザの行動状況に応じて、正確に進行方向を推定することが困難であった。
【０００５】
本発明は、このような状況に鑑みてなされたものであり、ユーザの行動状況に応じて、より正確に進行方向を推定することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の一態様の情報処理装置は、
ユーザの行動によって発生する加速度を取得する加速度取得手段と、
前記加速度取得手段によって取得された加速度に基づいて、前記ユーザの行動が歩行であるか走行であるかを推定する行動推定手段と、
前記ユーザの進行方向を推定するために、前記行動推定手段によって前記ユーザの行動は歩行であると推定された場合は歩行時用方向推定方法を選択し、前記行動推定手段によって前記ユーザの行動は走行であると推定された場合は走行時用方向推定方法を選択する推定方法選択手段と、
前記推定方法選択手段によって選択された前記歩行時用方向推定方法又は前記走行時用方向推定方法によって、前記ユーザの進行方向を推定する方向推定手段と、
を備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、ユーザの行動状況に応じて、より正確に進行方向を推定することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態に係る情報処理装置のハードウェアの構成を示すブロック図である。
【図２】図１の情報処理装置の機能的構成のうち、進行方向推定処理を実行するための機能的構成を示す機能ブロック図である。
【図３】ユーザの行動における鉛直方向及び前後方向の加速度（縦軸）と時間（横軸）との対応関係を示す模式図であり、図３（Ａ）は、歩行時における加速度と時間との対応関係、図３（Ｂ）は走行時における加速度と時間との対応関係を示す図である。
【図４】図２の機能的構成を有する図１の情報処理装置が実行する進行方向推定処理の流れを説明するフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について、図面を用いて説明する。
【００１０】
［ハードウェア構成］
図１は、本発明の一実施形態に係る情報処理装置１のハードウェアの構成を示すブロック図である。
情報処理装置１は、例えばスマートフォンとして構成され、使用時には、腰等の体幹に近い部位に装着される。
【００１１】
情報処理装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３と、バス１４と、入出力インターフェース１５と、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）部１６と、センサ部１７と、入力部１８と、出力部１９と、記憶部２０と、通信部２１と、ドライブ２２と、を備えている。
【００１２】
ＣＰＵ１１は、ＲＯＭ１２に記録されているプログラム、または、記憶部２０からＲＡＭ１３にロードされたプログラムに従って各種の処理を実行する。例えば、ＣＰＵ１１は、後述する進行方向推定処理のためのプログラムに従って、進行方向推定処理を実行する。
【００１３】
ＲＡＭ１３には、ＣＰＵ１１が各種の処理を実行する上において必要なデータ等も適宜記憶される。
【００１４】
ＣＰＵ１１、ＲＯＭ１２及びＲＡＭ１３は、バス１４を介して相互に接続されている。このバス１４にはまた、入出力インターフェース１５も接続されている。入出力インターフェース１５には、ＧＰＳ部１６、センサ部１７、入力部１８、出力部１９、記憶部２０、通信部２１及びドライブ２２が接続されている。
【００１５】
ＧＰＳ部１６は、アンテナを含み複数のＧＰＳ衛星から送信されるＧＰＳ信号を受信して、情報処理装置１の位置情報を取得する。
センサ部１７は、３軸加速度センサ及び地磁気センサ等の各種センサを備えている。
【００１６】
入力部１８は、各種釦等で構成され、ユーザの指示操作に応じて各種情報を入力する。
出力部１９は、ディスプレイやスピーカ等で構成され、画像や音声を出力する。
記憶部２０は、ハードディスクあるいはＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成され、各種画像のデータを記憶する。
通信部２１は、インターネットを含むネットワークを介して他の装置（図示せず）との間で行う通信を制御する。
【００１７】
ドライブ２２には、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリ等よりなる、リムーバブルメディア３１が適宜装着される。ドライブ２２によってリムーバブルメディア３１から読み出されたプログラムは、必要に応じて記憶部２０にインストールされる。また、リムーバブルメディア３１は、記憶部２０に記憶されている画像のデータ等の各種データも、記憶部２０と同様に記憶することができる。
【００１８】
［機能的構成］
次に、情報処理装置１の機能的構成のうち、進行方向推定処理を実行するための機能的構成を、図２を参照して説明する。
図２は、このような図１の情報処理装置１の機能的構成のうち、進行方向推定処理を実行するための機能的構成を示す機能ブロック図である。
進行方向推定処理とは、センサからの入力信号に基づいて情報処理装置１を装着したユーザの進行方向を推定して、現在位置を地図上に表示する一連の処理をいう。
【００１９】
進行方向推定処理が実行される場合、図２に示すように、ＣＰＵ１１において、加速度取得部５１と、鉛直方向推定部５２と、行動推定部５３と、フィルタ処理部５４と、進行方向推定部５５と、現在位置算出部５６と、表示制御部５７とが機能する。
【００２０】
また、記憶部２０の一領域には、地図データ記憶部７１が設定される。
地図データ記憶部７１には、進行方向推定処理において表示される地図のデータが記憶される。
【００２１】
加速度取得部５１は、所定時間毎（例えば０．２秒毎）にセンサ部１７から加速度データを取得する。
鉛直方向推定部５２は、加速度取得部５１が取得した加速度データに基づいて、鉛直方向ベクトルを算出する。
具体的には、鉛直方向推定部５２は、加速度取得部５１が取得した加速度データ（鉛直成分）において、予め設定した時間（例えば、４秒等）の平均値を算出することにより鉛直方向ベクトルを算出する。
【００２２】
行動推定部５３は、加速度データに基づいて、推定されるユーザの行動が歩行であるか走行であるかの判定を行う。
なお、人間が走行する場合には、ユーザの両足が同時に地表から離れ、人間が歩行する場合には、ユーザの両足が同時に地表から離れることがないため、本実施形態における「歩行」と「走行」とは、このような観点で区別される。
具体的には、行動推定部５３は、取得した鉛直方向及び前後方向の加速度それぞれについて、各加速度の大きさが走行判定用の加速度閾値以上であって、各加速度のピークが示すピッチ（ピークの時間間隔）が走行判定用のピッチ閾値以下である場合に、ユーザが走行していると判定する。他方、行動推定部５３は、各加速度の大きさが走行判定用の加速度閾値未満、または、各加速度のピークが示すピッチが走行判定用のピッチ閾値未満である場合には、ユーザが歩行していると判定する。ここで、鉛直方向及び前後方向の加速度に関する走行判定用の加速度閾値及びピッチ閾値は、実験値やシミュレーション値を基に設定することができる。
行動推定部５３によるユーザの行動の推定結果（歩行または走行）に応じて、進行方向推定部５５におけるユーザの進行方向の推定方法（図３（Ａ）及び図３（Ｂ）参照）が切り替えられる。
【００２３】
フィルタ処理部５４は、加速度取得部５１が取得した加速度データに対して、行動推定部５３において推定したユーザの行動に応じたフィルタ処理を実行する。
具体的には、フィルタ処理部５４は、行動推定部５３において推定したユーザの行動が歩行である場合、取得した加速度データ（水平成分）に対して、２．０Ｈｚを中心して所定範囲の周波数帯域を通過させるバンドパスフィルタ（歩行用バンドパスフィルタ）による処理を実行する。フィルタ処理部５４は、行動推定部５３において推定したユーザの行動が走行である場合に、取得した加速度データ（水平成分）に対して、３．０Ｈｚを中心として所定範囲の周波数帯域を通過させるバンドパスフィルタ（走行用バンドパスフィルタ）による処理を実行する。
【００２４】
進行方向推定部５５は、ユーザの行動（即ち、歩行または走行）毎に、鉛直方向推定部５２が算出した鉛直方向ベクトル及びフィルタ処理部５４がフィルタ処理した後の加速度データに基づいて、異なる進行方向推定方法（歩行時用の進行方向推定方法または走行時用の進行方向推定方法）によって、鉛直方向ベクトルの極値（ピーク）のタイミングと加速タイミングとの関係から進行方向を推定する。
具体的には、行動推定部５３がユーザの行動を歩行であると判定した場合、進行方向推定部５５は、鉛直方向ベクトルが上方向の極値（ピーク）を示すタイミングに対して、時間軸における未来方向で２番目に近い（または時間軸における過去方向で最も近い）加速度データ（水平成分）の極値の方向を前方と推定する。一方、行動推定部５３がユーザの行動を走行であると判定した場合、進行方向推定部５５は、鉛直方向ベクトルが上方向の極値（ピーク）を示すタイミングに対して、同じ半周期の期間に属する加速度データ（水平成分）の極値の方向を前方と推定する。
【００２５】
ここで、進行方向推定部５５における進行方向の推定方法について、図３を参照して説明する。なお、図３に示す進行方向の推定方法は、人間の基本的な身体的構造に基づくものであるため、個人差を排除して一般化することができる。
図３は、ユーザの行動における鉛直方向及び前後方向の加速度（縦軸）と時間（横軸）との対応関係を示す模式図であり、図３（Ａ）は、歩行時における加速度と時間との対応関係、図３（Ｂ）は走行時における加速度と時間との対応関係を示す図である。
図３においては、縦軸の正側が鉛直方向の上方及び前後方向の前方に対応し、縦軸の負側が鉛直方向の下方及び前後方向の後方に対応している。なお、縦軸の正側及び負側と前後方向の前方及び後方との関係は、進行方向推定部５５によって推定される進行方向によって決定され、ユーザの進行方向が変化した場合、縦軸の正側及び負側に対して、前後方向の前方及び後方は逐次入れ替わることとなる。
【００２６】
図３（Ａ）に示すように、鉛直方向の加速度における上方向の極値Ｐｖ１を示すタイミングに対して、時間軸における未来方向（右方向）で、加速度の極値Ｐｈ２に次いで、２番目に近い水平方向の加速度の極値Ｐｈ３の方向（縦軸の正側）が、歩行時における進行方向の前方と推定される。
【００２７】
また、図３（Ｂ）に示すように、鉛直方向の加速度における上方向の極値Ｐ’ｖ１を示すタイミングに対して、同じ半周期の期間に属する水平方向の加速度の極値Ｐ’ｈ１の方向（縦軸の正側）が、走行時における進行方向の前方と推定される。
【００２８】
このように、本実施形態においては、行動推定部５３によって推定されたユーザの行動（即ち、歩行であるか走行であるか）に応じて、進行方向の推定方法を切り替えている。
そのため、進行方向の推定方法として、単一の方法を用いる場合には、ユーザの行動によっては、進行方向を適切に推定することが困難になるところ、本実施形態の情報処理装置では、ユーザの行動によらず、進行方向を適切に推定することが可能となる。
【００２９】
図２に戻り、現在位置算出部５６は、進行方向の推定結果に応じて、水平方向の加速度のデータから現在位置を算出する。これにより、ＧＰＳ等の測位システムを利用することなく、自律的に現在位置が算出される。
表示制御部５７は、地図データ記憶部７１に記憶された地図のデータを参照し、現在位置算出部５６によって算出された現在位置を地図上に表示する。
【００３０】
［動作］
次に、動作を説明する。
図４は、図２の機能的構成を有する図１の情報処理装置１が実行する進行方向推定処理の流れを説明するフローチャートである。
進行方向推定処理は、所定の時間以上、ＧＰＳ部１６においてＧＰＳ信号を受信できない場合に開始され、ＧＰＳ部１６においてＧＰＳ信号を受信可能となるまで、繰り返し実行される。
【００３１】
ステップＳ１１において、加速度取得部５１は、所定時間毎（例えば０．２秒毎）にセンサ部１７から加速度データを取得する。
ステップＳ１２において、加速度取得部５１が取得した加速度データ（鉛直成分）において、予め設定した時間（例えば、４秒等）の平均値を算出することにより鉛直方向ベクトルを算出する。
【００３２】
ステップＳ１３において、行動推定部５３は、加速度データに基づいて、推定されるユーザの行動が歩行であるか否かの判定を行う。具体的には、行動推定部５３は、ステップＳ１１において取得した各加速度の大きさが走行判定用の加速度閾値未満、または、各加速度のピーク（極値）が示すピッチが走行判定用のピッチ閾値未満である場合には、ユーザが歩行していると判定する。
ユーザの行動が歩行である場合、ステップＳ１３においてＹＥＳと判定されて、処理はステップＳ１４に移行する。
一方、ユーザの行動が歩行でない場合、ステップＳ１３においてＮＯと判定されて、処理はステップＳ１８に移行する。
【００３３】
ステップＳ１４において、フィルタ処理部５４は、ステップＳ１１において取得した加速度データ（水平成分）に対して、２．０Ｈｚを中心して所定範囲の周波数帯域を通過させるバンドパスフィルタ（歩行用バンドパスフィルタ）による処理を実行する。
【００３４】
ステップＳ１５において、進行方向推定部５５は、ステップＳ１２において特定した鉛直方向ベクトルが上方向の極値（ピーク）を示すタイミングに対して、時間軸における未来方向で２番目に近い（または時間軸における過去方向で最も近い）加速度データ（水平成分）の極値の方向を前方と推定する。即ち、進行方向推定部５５は、歩行時用の進行方向推定方法を実行する。
【００３５】
ステップＳ１６において、現在位置算出部５６は、ステップＳ１５における進行方向の推定結果に応じて、水平方向の加速度のデータから現在位置を算出する。
ステップＳ１７において、表示制御部５７は、地図データ記憶部７１に記憶された地図のデータを参照し、現在位置算出部５６によって算出された現在位置を地図上に表示する。
ステップＳ１７の後、終了条件が充足されるまで、進行方向推定処理が繰り返される。
【００３６】
ステップＳ１８において、行動推定部５３は、加速度データに基づいてユーザの行動が走行であるか否かの判定を行う。具体的には、行動推定部５３は、ステップＳ１１において取得した鉛直方向及び前後方向の加速度それぞれについて、各加速度の大きさが走行判定用の加速度閾値以上であって、各加速度のピークが示すピッチ（ピークの時間間隔）が走行判定用のピッチ閾値以下である場合に、ユーザが走行していると判定する。
ユーザの行動が走行である場合、ステップＳ１８においてＹＥＳと判定されて、処理はステップＳ１９に移行する。
一方、ユーザの行動が走行でない場合、ステップＳ１８においてＮＯと判定されて、進行方向推定処理が繰り返される。
【００３７】
ステップＳ１９において、フィルタ処理部５４は、ステップＳ１１において取得した加速度データ（水平成分）に対して、３．０Ｈｚを中心として所定範囲の周波数帯域を通過させるバンドパスフィルタ（走行用バンドパスフィルタ）による処理を実行する。
【００３８】
ステップＳ２０において、進行方向推定部５５は、ステップＳ１２において特定した鉛直方向ベクトルが上方向の極値（ピーク）を示すタイミングに対して、同じ半周期の期間に属する加速度データ（水平成分）の極値の方向を前方と推定する。即ち、進行方向推定部５５は、走行時用の進行方向推定方法を実行する。
ステップＳ２０の後、処理はステップＳ１６に移行する。
【００３９】
以上のように構成される情報処理装置１は、加速度取得部５１と、行動推定部５３と、進行方向推定部５５を備える。
加速度取得部５１は、ユーザの行動によって発生する加速度を取得する。
行動推定部５３は、加速度取得部５１によって取得された加速度に基づいて、ユーザの行動が歩行であるか走行であるかを推定する。
また、行動推定部５３は、ユーザの行動の推定結果に基づいて、ユーザの進行方向を推定するための複数の進行方向推定方法から１つを選択する。
進行方向推定部５５は、行動推定部５３によって選択された進行方向推定方法によって、ユーザの進行方向を推定する。
これにより、ユーザが歩行している場合と走行している場合とで、ユーザの進行方向を推定するための進行方向推定方法が切り替えられる。
したがって、ユーザの行動状況に応じて、より正確に進行方向を推定することができる。
【００４０】
また、行動推定部５３は、ユーザの行動は歩行であると判定した場合は、加速度取得部５１によって取得された加速度の鉛直成分における上方向の加速度の極値を示すタイミングに対して、加速度取得部５１によって取得された加速度の水平成分における極値のうち、時間軸における未来方向で２番目に近い、または時間軸における過去方向で最も近い極値が示す方向をユーザの進行方向であると推定する。
また、行動推定部５３は、ユーザの行動は走行であると判定した場合は、加速度取得部５１によって取得された加速度の鉛直成分における上方向の極値を示すタイミングに対して、加速度取得部５１によって取得された加速度の水平成分における極値のうち、加速度の鉛直成分における上方向の極値と同じ半周期の期間に属する極値が示す方向をユーザの進行方向であると推定する。
これにより、歩行時及び走行時における進行方向をより適切に推定することが可能となる。
【００４１】
また、情報処理装置１は、フィルタ処理部５４をさらに備える。
フィルタ処理部５４は、行動推定部５３によってユーザの行動が歩行であると推定された場合に、加速度取得部５１によって取得された加速度の波形に対して、歩行時に対応する周波数帯域を通過させる歩行用フィルタを適用する。
また、フィルタ処理部５４は、行動推定部５３によってユーザの行動が走行であると推定された場合に、加速度取得部５１によって取得された加速度の波形に対して、走行時に対応する周波数帯域を通過させる走行用フィルタを適用する。
行動推定部５３は、歩行用フィルタまたは走行用フィルタによるフィルタ処理後の加速度の波形に基づいて、ユーザの行動が歩行であるか走行であるかを推定する。
これにより、取得された加速度の波形に対して、ユーザの行動が歩行であるか走行であるかに応じたフィルタ処理を実行することができるため、加速度の波形におけるノイズが除去され、より正確に進行方向を推定することが可能となる。
【００４２】
また、行動推定部５３は、加速度取得部５１によって取得された加速度の波形に対して、歩行時に対応する周波数帯域を通過させる歩行用フィルタ及び走行時に対応する周波数帯域を通過させる走行用フィルタを適用し、歩行用フィルタ及び走行用フィルタの処理結果において、極値がより明確であるフィルタに対応する行動をユーザの行動として推定する。
これにより、進行方向の推定において用いられる加速度の波形から、ユーザの行動が歩行であるか走行であるかを推定することができるため、進行方向の推定結果と整合性が高いユーザの行動の推定を行うことが可能となる。
【００４３】
また、行動推定部５３は、ユーザの行動の推定結果に基づいて、加速度取得部５１によって取得された加速度における鉛直方向の成分におけるピークと、水平方向の成分におけるピークとの関係性が歩行時に対応する第１の進行方向推定方法と、当該関係性が走行時に対応する第２の進行方向推定方法とのいずれかに切り替える。
進行方向推定部５５は、行動推定部５３によって選択された第１の進行方向推定方法または第２の進行方向推定方法によって、ユーザの進行方向を推定する。
これにより、ユーザの行動により適した進行方向推定方法を用いて、加速度の鉛直方向の成分及び水平方向の成分の関係性から、ユーザの進行方向を推定することができる。
したがって、ユーザの行動状況に応じて、より正確に進行方向を推定することができる。
【００４４】
また、フィルタ処理部５４は、加速度取得部５１によって取得された加速度の波形に対して、歩行時に対応する周波数帯域及び走行時に対応する周波数帯域を通過させる共通フィルタを適用する。
行動推定部５３は、共通フィルタによるフィルタ処理後の加速度に基づいて、ユーザの行動が歩行であるか走行であるかを推定する。
これにより、歩行時及び走行時に対応する１つのフィルタを用意することで、加速度の波形における一定のノイズを抑制して、より正確に進行方向を推定することが可能となる。
【００４５】
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
【００４６】
上述の実施形態では、情報処理装置１において、フィルタ処理部５４は、ユーザの行動が歩行であるか走行であるかによって異なる周波数帯域によるバンドパスフィルタ処理を行うこととしたが、これに限られない。
例えば、フィルタ処理部５４におけるバンドパスフィルタ処理は、ユーザの行動が歩行である場合及び走行である場合のいずれの加速度も通過させるような帯域設定（例えば、２．５Ｈｚを中心とする所定の範囲の周波数帯域）にしてもよい。即ち、フィルタ処理部５４は、歩行用と走行用との共通のフィルタによりバンドパスフィルタ処理を行ってもよい。
なお、上述の実施形態に記載されるフィルタ処理部５４によるバンドパスフィルタ処理における周波数帯域は例示に過ぎず、歩行または走行における加速度を適切に抽出可能な帯域を適宜設定することができる。
【００４７】
また、上述の実施形態において、行動推定部５３は、加速度の大きさや加速度のピーク間の間隔に基づいて、ユーザの行動が歩行であるか走行であるかを推定することとしたが、これに限られない。
例えば、フィルタ処理部５４によって、加速度の波形に対して、歩行用バンドパスフィルタ及び走行用バンドパスフィルタによる処理を行い、行動推定部５３は、波形のピークがより明確に表れるフィルタに対応する行動をユーザの行動として推定することができる。
これにより、進行方向の推定において用いられる加速度の波形から、ユーザの行動が歩行であるか走行であるかを推定することができるため、進行方向の推定結果と整合性が高いユーザの行動の推定を行うことが可能となる。
【００４８】
また、上述の実施形態において、行動推定部５３は、ユーザの行動が歩行であるか走行であるかを推定したが、自転車に乗っている状態等、歩行及び走行以外の行動を推定してもよい。
【００４９】
また、上述の実施形態において、進行方向推定処理は、ＧＰＳ信号を受信できない場合に実行することとしたが、これに限られない。即ち、ＧＰＳ信号を受信できる場合においても、進行方向推定処理を併せて行い、ＧＰＳ信号に基づく進行方向と進行方向推定処理に基づく進行方向のうち、より信頼できる進行方向を採用してもよい。
【００５０】
また、上述の実施形態では、本発明が適用される情報処理装置１は、スマートフォンを例として説明したが、特にこれに限定されない。
例えば、本発明は、加速度センサを備え、体幹近くに装着可能な電子機器一般に適用することができる。具体的には、例えば、本発明は、歩数計、ウェアラブル端末、携帯型ナビゲーション装置、携帯電話機、ポータブルゲーム機等に適用可能である。
【００５１】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
換言すると、図２の機能的構成は例示に過ぎず、特に限定されない。即ち、上述した一連の処理を全体として実行できる機能が情報処理装置１に備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に図２の例に限定されない。
また、１つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
【００５２】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。
コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えば汎用のパーソナルコンピュータであってもよい。
【００５３】
このようなプログラムを含む記録媒体は、ユーザにプログラムを提供するために装置本体とは別に配布される図２のリムーバブルメディア３１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される記録媒体等で構成される。リムーバブルメディア３１は、例えば、磁気ディスク（フロッピディスクを含む）、光ディスク、または光磁気ディスク等により構成される。光ディスクは、例えば、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ），ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ），Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ（ブルーレイディスク）等により構成される。光磁気ディスクは、ＭＤ（Ｍｉｎｉ−Ｄｉｓｋ）等により構成される。また、装置本体に予め組み込まれた状態でユーザに提供される記録媒体は、例えば、プログラムが記録されている図１のＲＯＭ１２や、図１の記憶部２０に含まれるハードディスク等で構成される。
【００５４】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムの用語は、複数の装置や複数の手段等より構成される全体的な装置を意味するものとする。
【００５５】
以上、本発明のいくつかの実施形態について説明したが、これらの実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態を取ることが可能であり、さらに、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、本明細書等に記載された発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【００５６】
以下に、本願の出願当初の特許請求の範囲に記載された発明を付記する。
［付記１］
ユーザの行動によって発生する加速度を取得する加速度取得手段と、
前記加速度取得手段によって取得された加速度に基づいて、前記ユーザの行動が歩行であるか走行であるかを推定する行動推定手段と、
前記行動推定手段の推定結果に基づいて、前記ユーザの進行方向を推定するための複数の方向推定方法から１つを選択する推定方法選択手段と、
前記推定方法選択手段によって選択された方向推定方法によって、前記ユーザの進行方向を推定する方向推定手段と、
を備えることを特徴とする情報処理装置。
［付記２］
前記推定方法選択手段は、
前記行動推定手段によって前記ユーザの行動は歩行であると判定した場合は、前記加速度取得手段によって取得された加速度の鉛直成分における上方向の加速度の極値を示すタイミングに対して、前記加速度取得手段によって取得された加速度の水平成分における極値のうち、時間軸における未来方向で２番目に近い、または時間軸における過去方向で最も近い極値が示す方向を前記ユーザの進行方向であると推定し、
前記行動推定手段によって前記ユーザの行動は走行であると判定した場合は、前記加速度取得手段によって取得された加速度の鉛直成分における上方向の極値を示すタイミングに対して、前記加速度取得手段によって取得された加速度の水平成分における極値のうち、前記加速度の鉛直成分における上方向の極値と同じ半周期の期間に属する極値が示す方向を前記ユーザの進行方向であると推定することを特徴とする付記１に記載の情報処理装置。
［付記３］
前記行動推定手段によって前記ユーザの行動が歩行であると推定された場合に、前記加速度取得手段によって取得された加速度の波形に対して、歩行時に対応する周波数帯域を通過させる歩行用フィルタを適用する歩行用フィルタ処理手段と、
前記行動推定手段によって前記ユーザの行動が走行であると推定された場合に、前記加速度取得手段によって取得された加速度の波形に対して、走行時に対応する周波数帯域を通過させる走行用フィルタを適用する走行用フィルタ処理手段と、
を備え、
前記行動推定手段は、前記歩行用フィルタまたは前記走行用フィルタによるフィルタ処理後の前記加速度の波形に基づいて、前記ユーザの行動が歩行であるか走行であるかを推定することを特徴とする付記１または２に記載の情報処理装置。
［付記４］
前記行動推定手段は、前記加速度取得手段によって取得された加速度の波形に対して、歩行時に対応する周波数帯域を通過させる歩行用フィルタ及び走行時に対応する周波数帯域を通過させる走行用フィルタを適用し、前記歩行用フィルタ及び前記走行用フィルタの処理結果において、極値がより明確であるフィルタに対応する行動を前記ユーザの行動として推定することを特徴とする付記１または２に記載の情報処理装置。
［付記５］
前記加速度取得手段によって取得された加速度の波形に対して、歩行時に対応する周波数帯域及び走行時に対応する周波数帯域を通過させる共通フィルタを適用する共通フィルタ処理手段を備え、
前記行動推定手段は、前記共通フィルタによるフィルタ処理後の前記加速度に基づいて、前記ユーザの行動が歩行であるか走行であるかを推定することを特徴とする付記１または２に記載の情報処理装置。
［付記６］
情報処理装置で実行される進行方向推定方法であって、
ユーザの行動によって発生する加速度を取得する加速度取得ステップと、
前記加速度取得ステップにおいて取得された加速度に基づいて、前記ユーザの行動が歩行であるか走行であるかを推定する行動推定ステップと、
前記行動推定ステップにおける推定結果に基づいて、前記ユーザの進行方向を推定するための複数の方向推定方法から１つを選択する推定方法選択ステップと、
前記推定方法選択ステップにおいて選択された進行方向推定方法によって、前記ユーザの進行方向を推定する方向推定ステップと、
を含むことを特徴とする進行方向推定方法。
［付記７］
情報処理装置を制御するコンピュータに、
ユーザの行動によって発生する加速度を取得する加速度取得機能と、
前記加速度取得機能によって取得された加速度に基づいて、前記ユーザの行動が歩行であるか走行であるかを推定する行動推定機能と、
前記行動推定機能の推定結果に基づいて前記ユーザの進行方向を推定するための複数の方向推定方法から１つを選択する推定方法選択機能と、
前記推定方法選択機能によって選択された進行方向推定方法によって、前記ユーザの進行方向を推定する方向推定機能と、
を実現させることを特徴とするプログラム。
【符号の説明】
【００５７】
１・・・情報処理装置，１１・・・ＣＰＵ，１２・・・ＲＯＭ，１３・・・ＲＡＭ，１４・・・バス，１５・・・入出力インターフェース，１６・・・ＧＰＳ部，１７・・・センサ部，１８・・・入力部，１９・・・出力部，２０・・・記憶部，２１・・・通信部，２２・・・ドライブ，３１・・・リムーバブルメディア，５１・・・加速度取得部，５２・・・鉛直方向推定部，５３・・・行動推定部，５４・・・フィルタ処理部，５５・・・進行方向推定部，５６・・・現在位置算出部，５７・・・表示制御部，７１・・・地図データ記憶部
【図１】
0006372249.tif 000002
【図２】
0006372249.tif 000003
【図３】
0006372249.tif 000004
【図４】
0006372249.tif 000005