携帯端末装置の移動状態を推定する方法及びシステム
【課題】ユーザの移動状態を推定するためのモデルを作成し、該モデルに基づいてユーザの移動状態を携帯端末装置を用いて自動的に推定する方法及びシステムに関する。
【解決手段】少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該CPUが時系列に前記メモリに格納された1又は複数のパラメータから構成される推定用特徴パラメータと1又は複数のパラメータから構成される各該代表特徴パラメータとのパラメータ毎の差に基づいて、該複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、該選定された第1クラスタに対応する該第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定するステップと、からなる方法。
【解決手段】少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該CPUが時系列に前記メモリに格納された1又は複数のパラメータから構成される推定用特徴パラメータと1又は複数のパラメータから構成される各該代表特徴パラメータとのパラメータ毎の差に基づいて、該複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、該選定された第1クラスタに対応する該第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定するステップと、からなる方法。
【発明の詳細な説明】
【発明の属する技術分野】
【0001】
本願発明は、ユーザの移動状態を推定する方法及びシステムに関し、特には、ユビキタス環境下におけるユーザの移動状態を携帯端末装置を用いて自動的に推定する方法及びシステムに関する。
【背景技術】
【0002】
近年、ユーザの移動状態を検出し、あるいはユーザの移動状態を正確に自動認識・識別する必要性が生じており、ユーザの移動状態の推定に関する技術が種々提案されている。しかしながら、従来、ユーザの一定の状態、例えば停止している状態、自動車、バス、電車に乗っている状態等を識別することは、ユーザからの情報を長時間にわたって測定しても移動状態の推定精度は低かった。従来、ユーザの移動状態を推定する際には、ユーザが有する加速度センサから得られるデータを用いて一定時間毎に1つのパワースペクトルを選定し、当該選定されたパワースペクトルと、各移動状態を代表するそれぞれの代表パワースペクトルとを比較して移動状態を推定していた。従って、選定された1つのパワースペクトルは時系列変化を含まず、突発的に加速度センサの変化が起こると、正しくユーザの状態を推定することができない場合があった。このため、従来のパワースペクトルのパターンマッチングでは突発的なノイズや振動パターンのぶれに対応することは困難であり、移動状態の推定精度の低下を招いた。
【0003】
さらに、非特許文献1においては、身体の複数箇所に加速度センサを装着し、「座る」「立つ」「歩く」「階段を上る」「階段を下る」「握手」「黒板への書き込み」「キーボードのタイピング」などの動作推定を行っている。また、非特許文献2、及び3は両手首、両足首、腿の5箇所に加速度センサを装着し、20種類の動作推定を行っている。
【0004】
しかしながら、これらの非特許文献においては、様々なセンサを用いて、人間の様々な動作状態を推定可能であるが、センサ装着箇所が複数必要であったり、装着方法が固定化されたりしている。従って、これらの方式を用いてユーザの移動状態を推定する場合、ユーザは重装備となるため利便性が低下し望ましくない。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】Nicky Kern、 "A Model for Human Interruptability: Experimental Evaluation and Automatic Estimation from Wearable Sensors、" ISWC'04、pp.158-165(2004).
【非特許文献2】Stephen S.Intille、 "Acquiring In Situ Training Data for Context-Aware Ubiquitous Computing Applications、"CHI 2004、 ACM Press、 pp. 1-9(2004).
【非特許文献3】L. Bao and S. S. Intille、"Activity recognition from user-annotated acceleration data、" in Proceedings of PERVASIVE 2004、vol. LNCS 3001、 A. Ferscha and F. Mattern、 Eds. Berlin Heidelberg: Springer-Verlag、2004、 pp. 1-17.
【発明の概要】
【発明が解決しようとする課題】
【0006】
本願発明は、上記の問題点の解決を目的とするものであり、人の手のひらサイズに収まる携帯端末装置に搭載された加速度センサ等の外部環境情報取得装置を用いて、ユーザの移動状態を短時間で精度高く自動的に推定する方法及びシステムを提供するものである。ここで、ユーザの移動状態とは例えば、走行、歩行、停止といった人間の活動状態と、自転車、自動車、バス、電車といった交通機関の乗車状態を指している。以下、上述した状態をそれぞれ、停止状態、歩行状態、走行状態、自転車状態、自動車状態、バス状態、電車状態と記す。また、自動車状態、バス状態、電車状態をまとめて電動車状態と記す。なお、携帯端末装置は人の手のひらサイズに収まる大きさであっても、それよりも小さい大きさであっても良い。
【0007】
従来、ユーザの移動状態を推定する際には、ユーザが有する加速度センサから得られるデータを用いて一定時間毎に1つのパワースペクトルを選定し、当該選定されたパワースペクトルと、各移動状態を代表するそれぞれの代表パワースペクトルとを比較して移動状態を推定していた。しかしながら、選定された1のパワースペクトルは、一般的に複数の移動状態に対応する代表パワースペクトルの特徴を含む。従って、1のパワースペクトルが、他の移動状態におけるパワースペクトルと類似する場合に、高い推定精度で移動状態を推定することが困難であった。
【0008】
また、選定された1つのパワースペクトルは時系列変化を含まず、突発的に加速度センサの変化が起こると、正しくユーザの状態を推定することができない場合があった。このため、従来のパワースペクトルのパターンマッチングでは突発的なノイズや振動パターンのぶれに対応することは困難であり、移動状態の推定精度の低下を招いた。
【0009】
また、従来は、様々なセンサを用いて、人間の様々な動作状態を推定していた。しかしながら、センサ装着箇所が複数必要であったり、装着方法が固定化されたりしている。さらに複数の装置は多くの電力を消費する。従って、これらの方式を用いてユーザの移動状態を推定する場合、ユーザは重装備となるため利便性が低下し望ましくない。
【課題を解決するための手段】
【0010】
本願発明は、ユーザの移動状態を推定するためのモデルを生成し、該生成されたモデルを用いて、移動状態にあるユーザの特徴パラメータから移動状態を特定することによりユーザの移動状態を推定することを目的とする。
【0011】
本願発明は、ユーザの加速度センサから得られる特徴パラメータの情報が、一般的に1又は複数の移動状態に対応する特徴を有していることに着目して、移動状態を推定することを特徴とする。本願発明は、ユーザの有する加速度センサから得られる1の推定用特徴パラメータに基づいて、実際のユーザの移動状態を、移動状態毎に確率として求め、もっとも確率の高い移動状態を選定することにより、移動状態の推定精度を高めるものである。また、本願発明により、ポケットや鞄に入れた状態、手に所持した状態、腕等に装着している状態等、携帯端装置の所持状態を推定することも可能となる。さらに、本願発明により、携帯端末装置を保有している人物を特定することも可能となる。
【0012】
また、本願発明は、特定の参照状態にて取得された学習用加速度データ・リストから生成されたクラスタ群からなるモデルを生成し、該生成されたモデルを用いて、ユーザの移動状態を推定するものである。単に加速度センサより得られたユーザの加速度データ値をフーリエ変換することにより求められたパワースペクトルは、加速度データの時系列変化に関する情報を有さない。本願発明はユーザの有する加速度センサから得られる特徴パラメータの時系列データを用いてモデルを作成し、該モデルを用いてユーザの移動状態を推定する。従って、本願発明においては、ユーザの移動状態を示す時系列のデータを用いてユーザの移動状態を推定するため、ユーザ移動状態に突発的な変化を含む場合や、他状態と類似する時間帯が発生する場合であっても、ユーザの移動状態を正しく推定することが可能となる。
【0013】
また、本願発明は、特定の参照状態にて取得された学習用加速度データ・リストから生成されたクラスタ群からなるモデルを用いて、ユーザの移動状態を推定するものである。1の加速度データから求められる特徴パラメータは、複数の移動状態における特徴パラメータと類似する場合がある。本願発明は、1の加速度データから求められる特徴パラメータが複数の移動状態における特徴パラメータと類似する場合であっても、モデルを用いることにより、該特徴パラメータが各移動状態に現れる頻度から移動状態を推定することが可能となる。従って、複数の移動状態における特徴パラメータと類似する場合であっても、ユーザの移動状態を高い精度で推定可能である。
【0014】
また、本願発明は、ユーザの移動状態推定の際に、複数の推定用モデル、即ち、第1モデル及び第2モデルを生成し、第1モデルから得られた推定結果と第2モデルから得られた推定結果とが等しいときに、第1モデルによって推定された移動状態は信頼性が高いとして、推定された移動状態を、ユーザの移動状態として特定する。このように本願発明は得られた推定結果の信頼性を評価し、信頼性が高い時間帯のみを抽出することにより、より信頼性の高い推定を可能とするものである。
【0015】
さらに、本願発明は、携帯端末装置が有する加速度センサを用いて主にユーザの移動状態を推定するものである。また、本願発明においては、加速度センサから得られる情報の他に、携帯端末装置に備える他の外部情報取得装置から得られる情報に基づいてユーザの移動状態を推定することも可能である。従って、ユーザは携帯端末装置の他に、装置を装備することなく、軽装備で移動状態の推定をすることが可能である。また、これらの外部情報取得装置は、加速度センサに比較して消費電力の少なく、外部情報を取得する際の処理負荷も小さい。本願発明において、通常は、ユーザの移動状態に変化があるか否かを、加速度センサに比してより消費電力の小さい、処理負荷の小さいこれらの外部情報取得装置により判断する。変化がある場合には、加速度センサを用いて移動状態を推定することにより、全体の推定処理にかかる処理負荷を低減させ、省電力化することが可能となる。
【0016】
また、本願発明は、加速度センサから得られる加速度に加えて、他の外部情報取得装置を複合的に用いることにより、移動状態を推定する。このように複数種類のユーザの外部情報を取得することにより、ユーザの移動状態の推定精度をさらに高めることが可能となる。
【0017】
以上より、本願発明は携帯端末装置の所持状態に依存せず、ユーザの置かれている環境に依存せず、ユーザによる操作を必要としないで自動で移動状態を推定することを特徴とする。また、比較的短期間に得られたセンサのデータを用いることで一回の推定処理にかかる負荷を低減すると共に、ユーザの移動状態の変化を短時間で検知することを特徴とする。
【0018】
本願発明は、少なくとも1つのCPU(中央処理装置)とメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータ(第1平均パワースペクトル)と、移動状態毎の確率を有する1の第1確率表(確率表)とに対応する複数の第1クラスタを格納し、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータ(推定用パワースペクトル)と、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、選定された第1クラスタに対応する第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定するステップと(第1推定)からなる方法を特徴とする。
【0019】
ここで、第1確率表は、各第1クラスタに含まれる学習用特徴パラメータに対応する移動状態毎の確率データを移動状態毎に有することを特徴とする。
【0020】
また、本願発明は、少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータ(第1平均パワースペクトル)と、移動状態毎の確率を有する1の第1確率表(確率表)とに対応する複数の第1クラスタを格納し、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータ(推定用パワースペクトル)と、1又は複数のパラメータから構成される各代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、選定された第1クラスタに対応する第1確率表に基づいて時系列に推定用セグメント確率表を算出するステップと、推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表(第2平均確率表)と、移動状態毎の確率を有する1の第2確率表(移動状態ランク表)とに対応する、複数の第2クラスタを生成するステップと、1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各第2代表確率表(第2平均確率表)とのパラメータ毎の差に基づいて、複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、選定された第2クラスタに対応する前記第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定するステップと、(第2推定)からなる方法を特徴とする。
【0021】
ここで、第2確率表(移動状態ランク表)は、前記各第2クラスタに含まれる学習用セグメント確率表に対応する移動状態毎の確率データを移動状態毎に有することを特徴とする。
【0022】
また、本願発明は、少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUが、時系列にメモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、選定された第1クラスタに対応する第1確率表に基づいて算出された時系列にメモリに格納された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定ステップと(第1推定)、推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成するステップと、1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、複数のクラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定ステップと、第1の推定ステップ、および第2の推定ステップにより推定された結果を用いて移動状態を推定するステップと、からなる方法を特徴とする。
【0023】
さらに、本願発明はキーフレームを用いた移動状態推定を特徴とする。より詳細には、本願発明は、少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUは、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、選定された第1クラスタに対応する第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定ステップと(第1推定)、
推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成するステップと、1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各第2代表確率表(第2平均確率表)とのパラメータ毎の差に基づいて、複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定ステップと(第2推定)、第1の推定ステップ、および第2の推定ステップにより推定された結果が第5の条件を満足する場合に、該第5の条件により求められた結果に対応するフレームをキーフレームとして、フレーム・リストへ順次格納することによりフレーム・リストを生成するステップと、生成されたフレーム・リストにおいて、一のキーフレームと、その直前の一のキーフレームとが同一の移動状態に対応する場合に、該一のキーフレームに対応する移動状態が、所定の移動状態の場合に、該一のキーフレームと、該その直前の一のキーフレームとの間において、所定の条件を満たしているか判定するステップと、該所定の条件を満たしている場合に、該直前の一のキーフレームから該一のキーフレームに対応する移動状態を該キーフレームに対応する移動状態として確定することにより、移動状態を推定するステップと、からなる方法を特徴とする。
【0024】
さらに、本願発明は、クラスタリングにより第1モデルを生成することを特徴とする。より詳細には、本願発明は、少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態の推定に用いるモデルを生成する方法であって、該CPUが、時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の該学習用特徴パラメータからなる第1クラスタの群を生成するステップと、該第1クラスタの群において、該第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とに対応する第1クラスタを生成するステップと(第1モデル)、を含む方法を特徴とする。
【0025】
さらに、本願発明は、クラスタリングにより第1モデル、及び第2モデルを生成することを特徴とする。より詳細には、本願発明は、少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態の推定に用いる第1及び第2モデルを生成する方法であって、該CPUが、時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータ(学習用パワースペクトル)を複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の学習用特徴パラメータからなる第1クラスタの群を生成するステップと、第1クラスタの群において、該第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とが対応する第1クラスタを生成するステップと(第1モデル)、学習用特徴パラメータ毎に、該学習用特徴パラメータと、代表特徴パラメータとのパラメータ毎の差に基づいて、該差が所定の条件を満足する1の第1クラスタを順次選定するステップと、該順次選定された第1のクラスタの所定数毎に、各第1クラスタに対応する各第1確率表に基づいて、学習用セグメント確率表を算出するステップと、該算出された各学習用セグメント確率表を複数の第2クラスタにクラスタリングし、該各第2クラスタは1又は複数の学習用セグメント確率表からなる第2クラスタの群を生成するステップと、第2クラスタの群において、第2クラスタ毎に、該各第2クラスタを代表する1の第2代表確率表と、各移動状態が出現する確率を表す第2確率表と、が対応する第2クラスタを生成するステップと(第2モデル)、を含む方法を特徴とする。
【0026】
さらに、本願発明は、歩数、基地局情報を用いた移動状態の推定を特徴とする。より詳細には、本願発明は、少なくとも1つのCPUと、歩数計と、アンテナと、加速度センサとを備える携帯端末装置の移動状態の変化を検知する方法であって、該携帯端末装置は該歩数計により第1の情報(歩数)を、該アンテナにより第2の情報(基地局情報)を、該加速度センサにより第3の情報(加速度)を取得可能であって、該CPUは、推定された移動状態が第1の移動状態(走行、歩行、自転車状態)の場合には第1の情報のみを取得し、該第1の情報が該第1の移動状態に対応している場合には、該推定された第1の移動状態を推定結果として取得し、前記第3の情報に変化があるか否かを監視するステップと、推定された移動状態が第2の移動状態(停止状態)の場合には、前記第1の情報及び第2の情報を取得し、前記第1の情報及び前記第2の情報が第2の移動状態に対応している場合には、該推定された第2の移動状態を推定結果として取得し、前記第1の情報(歩数)及び前記第2の情報に変化があるか否かを監視するステップと、推定された移動状態が第3の移動状態(電車、自動車、バス状態)の場合には、前記第1の情報を取得し、前記第1の情報が第3の移動状態に対応している場合には、該推定された第3の移動状態を推定結果として取得し、前記第1の情報に変化があるか否かを監視するステップと、からなる移動状態の変化を検知する方法を特徴とする。
【0027】
さらに、本願発明は、携帯端末装置の移動状態を推定する携帯端末装置に関する。より詳細には、携帯端末装置の移動状態を推定する携帯端末装置であって、複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、CPUとであって、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、選定された第1クラスタに対応する確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する(第1推定)携帯端末装置を特徴とする。
【0028】
さらに、本願発明は、携帯端末装置の移動状態を推定する携帯端末装置であって、
複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、CPUと、であって、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、該複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、選定された第1クラスタに対応する第1確率表に基づいて時系列に推定用セグメント確率表を算出し、推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各第2代表確率表とのパラメータ毎の差に基づいて、複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定し、選定された第2クラスタに対応する前記第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する(第2推定)携帯端末装置と特徴とする。
【0029】
さらに、本願発明は、携帯端末装置であって、複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、CPUと、であって、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、選定された第1クラスタに対応する前記第1確率表に基づいて算出された時系列にメモリに格納された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定をし(第1推定)、推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各第2代表確率表とのパラメータ毎の差に基づいて、複数のクラスタから該差が第3の条件を満足する1の第2クラスタを選定し、選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定をし(第2推定)、第1の推定ステップ、および前記第2の推定ステップにより推定された結果を用いて移動状態を推定する、携帯端末装置を特徴とする。
【0030】
さらに、本願発明は、携帯端末装置の移動状態を推定する携帯端末装置であって、複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、CPUと、であって、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、選定された第1クラスタに対応する前記第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定をし(第1推定)、推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、1又は複数のパラメータから構成される前記推定用セグメント確率表と、1又は複数のパラメータから構成される各第2代表確率表とのパラメータ毎の差に基づいて、複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定し、選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定をし(第2推定)、前記第1の推定ステップ、および前記第2の推定ステップにより推定された結果が第5の条件を満足する場合に、該第5の条件により求められた結果に対応するフレームをキーフレームとして、フレーム・リストへ順次格納することによりフレーム・リストを生成し、前記生成されたフレーム・リストにおいて、一のキーフレームと、その直前の一のキーフレームとが同一の移動状態に対応する場合に、前記一のキーフレームに対応する移動状態が、所定の移動状態の場合に、前記一のキーフレームと、前記その直前の一のキーフレームとの間において、所定の条件を満たしているか判定し、前記所定の条件を満たしている場合に、前記直前の一のキーフレームから前記一のキーフレームに対応する移動状態を前記キーフレームに対応する移動状態として確定することにより、移動状態を推定する携帯端末装置を特徴とする。
【0031】
さらに、本願発明は、携帯端末装置の移動状態の推定に用いるモデルを生成するシステムであって、全ての移動状態に対応する複数の学習用特徴パラメータを時系列に格納しているメモリと、CPUと、であって、該CPUが時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の学習用特徴パラメータからなる第1クラスタの群を生成し、該第1クラスタの群において、該第1クラスタ毎に該各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とに対応する第1クラスタを生成する(第1モデル)、を含むシステムを特徴とする。
【0032】
さらに、本願発明は、携帯端末装置の移動状態の推定に用いる第1及び第2モデルを生成するシステムであって、全ての移動状態に対応する複数の学習用特徴パラメータを時系列に格納しているメモリと、CPUと、であって、該CPUが、時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の該学習用特徴パラメータからなる第1クラスタの群を生成し、該第1クラスタの群において、該第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とが対応する第1クラスタを生成し(第1モデル)、該学習用特徴パラメータ毎に、該学習用特徴パラメータと、代表特徴パラメータとのパラメータ毎の差に基づいて、該差が所定の条件を満足する1の第1クラスタを順次選定し、該順次選定された第1のクラスタの所定数毎に、各第1クラスタに対応する各第1確率表に基づいて、学習用セグメント確率表を算出し、該算出された各学習用セグメント確率表を複数の第2クラスタにクラスタリングし、該各第2クラスタは1又は複数の該学習用セグメント確率表からなる第2クラスタの群を生成し、該第2クラスタの群において、第2クラスタ毎に、該各第2クラスタを代表する1の第2代表確率表と、各移動状態が出現する確率を表す第2確率表と、が対応する第2クラスタを生成する(第2モデル)、システムを特徴とする。
【0033】
さらに、本願発明は、少なくとも1つのCPUと、歩数計と、アンテナと、加速度センサとを備える携帯端末装置の移動状態の変化を検知するシステムであって、該携帯端末装置は該歩数計により第1の情報を、該アンテナにより第2の情報を、該加速度センサにより第3の情報を取得可能であって、該CPUは、推定された移動状態が第1の移動状態の場合には第1の情報のみを取得し、該第1の情報が該第1の移動状態に対応している場合には、該推定された第1の移動状態を推定結果として取得し、前記第3の情報に変化があるか否かを監視し、推定された移動状態が第2の移動状態の場合には、該第1の情報及び第2の情報を取得し、該第1の情報及び該第2の情報が第2の移動状態に対応している場合には、該推定された第2の移動状態を推定結果として取得し、該第1の情報及び前記第2の情報に変化があるか否かを監視し、推定された移動状態が第3の移動状態の場合には、該第1の情報を取得し、該第1の情報が該第3の移動状態に対応している場合には、該推定された第3の移動状態を推定結果として取得し、第1の情報に変化があるか否かを監視する、移動状態の変化を検知するシステムを特徴とする。
【図面の簡単な説明】
【0034】
【図1】本願発明の一実施態様におけるシステム構成図である。
【図2】学習用モデル作成処理のフロー図である。
【図3】学習用パワースペクトル(PS)・リストの生成処理のフロー図である。
【図4】学習用パワースペクトル・リストの群をクラスタリングする処理のフロー図である。
【図5】学習用セグメント確率表リストのクラスタリング処理のフロー図である
【図6】第1モデル及び第2モデルを用いた移動状態の推定処理のフロー図である。
【図7】本願発明の他の実施態様におけるシステム構成図である。
【図8】第1モデル及び第2モデルを用いた推定に加えて、外部情報取得装置からの情報を用いて移動状態を推定する処理のフロー図である。
【図9】第1モデル及び第2モデルを用いた推定に加えて、外部情報取得装置からの情報を用いて移動状態を推定する他の実施態様における処理のフロー図である。
【図10】キーフレーム区間の解除処理のフロー図である。
【図11A】本願発明において生成されるデータ表を示した図である。学習用パワースペクトル・リストの群のデータ構成を示した図である。
【図11B】本願発明において生成されるデータ表を示した図である。第1クラスタの群のデータ構成を示した図である。
【図11C】本願発明において生成されるデータ表を示した図である。学習用シンボル列のデータ構成を示した図である。
【図11D】本願発明において生成されるデータ表を示した図である。学習用セグメント確率表リストのデータ構成を示した図である。
【図11E】本願発明において生成されるデータ表を示した図である。第2クラスタの群のデータ構成を示した図である。
【図11F】本願発明において生成されるデータ表を示した図である。推定用パワースペクトル・リストのデータ構成を示した図である。
【図11G】本願発明において生成されるデータ表を示した図である。推定用シンボル列のデータ構成を示した図である。
【図11H】本願発明において生成されるデータ表を示した図である。第1モデル及び第2モデルによる推定結果と、フレーム・リストとを時系列にメモリに格納したデータ構成を示した図である。
【発明を実施するための最良の形態】
【0035】
図1は本願発明の一態様によるユーザ移動状態推定方式のシステム構成を示した図である。ユーザ移動状態推定方式は、例えば携帯端末装置に搭載され、携帯端末装置(A1)は加速度センサ(A50)、メモリ、中央演算装置(CPU)(A10)を含む。メモリにはヒープメモリ(A20)、フラッシュメモリ(A30)があっても良い。ここで、加速度センサは、加速度データを取得し、センサ内のメモリ空間へ加速度データを格納する。CPUは例えば、プログラムをフラッシュメモリからロードして、ヒープメモリへ格納するよう命令する。フラッシュメモリは例えば、データ取得関数等のプログラムを格納する。ヒープメモリは例えば、フラッシュメモリに格納されているプログラムを一時的に格納する。
モデルの生成
図2はモデルを生成するためのフロー図である。まず、全ての参照状態における学習用加速度データを参照状態毎に取得し、学習用特徴パラメータの群を生成する。本実施態様においては、学習用特徴パラメータの群として、学習用パワースペクトル・リストの群を生成する(B1)。学習用パワースペクトルのリストの群は、CPUによる演算により、学習用加速度データから、加速度値からなる関数をその周波成分の連続スペクトルに分解(例えば、フーリエ変換)することにより生成され、フラッシュメモリに格納される。なお、学習用特徴パラメータは、学習用パワースペクトル(学習用PS)の最大振幅周波数や、学習用加速度の3軸加速度ベクトル、加速度値の2乗和、加速度値の2乗和の分散値とすることもできる。学習用パワースペクトル・リストの群は、全ての移動状態の学習用パワースペクトル・リストからなり、学習用パワースペクトル・リストは、ある参照状態における全ての学習用パワースペクトルからなる。それぞれの学習用パワースペクトルはそれぞれ一の参照状態における移動状態に対応している。参照状態には、人間の活動状態だけではなく、人間が乗車している状態まで含めた状態、例えば歩行状態、走行状態、停止状態、自転車状態、自動車状態、バス状態、電車状態が含まれ、携帯端末装置を有しているユーザがとりうると想定される状態を参照状態として予め規定しておく。モデルの作成にあたって、事前に様々な条件下で参照状態毎に参照ユーザの有する加速度センサからの学習用加速度データを取得しておく。参照状態におけるユーザのデータは、想定しうる携帯端末装置の所持状態、例えばポケットや鞄に入れた状態、手のひらに所持している状態、腕等に装着している等、さまざまな状態に基づいて取得することができる。また、参照状態におけるユーザのデータは、想定しうるユーザの特徴、例えば性別、年齢、身長や体重等に基づいて取得することもできる。そしてモデルは、該参照状態において取得された十分なバリエーションのデータを元に生成される。
【0036】
より詳細には、CPUが、あらかじめ、モデル作成関数(フーリエ変換関数、クラスタリング関数、パターンマッチング関数、シンボル列生成関数で構成)をフラッシュメモリから読み込み、ヒープメモリ上にロードする。モデル作成関数内のフーリエ変換関数により、CPUが学習用パワースペクトル・リストを計算し、算出結果をヒープメモリに蓄積する。
【0037】
次に、生成された学習用パワースペクトル・リストの群をクラスタリングする(B2)。より詳細には、モデル作成関数内のクラスタリング関数により、CPUが全ての参照状態に対応する学習用パワースペクトル・リストの群に含まれる、全ての学習用パワースペクトル(N個)をフラッシュメモリから読み込みし、ヒープメモリに展開した上で、クラスタリング関数に読み込ませることにより、クラスタリングする。ここで、学習用パワースペクトル・リストの群は、全ての参照状態に対応する学習用パワースペクトル・リストからなる群である。移動状態毎に個別のIDが設定されており、各学習用パワースペクトルには、参照状態における移動状態のIDがそれぞれ関連付けられている。学習用パワースペクトル・リストの群は、1の学習用パワースペクトル毎に、対応する1の移動状態のIDと、周波数(i)毎の学習用パワースペクトルの振幅とから構成される(図11A)。本実施態様においては、図11Aに示されるように7つの移動状態を全ての参照状態とする。また、nは任意の整数であり、iは任意の正の数である。クラスタリングとは、分類対象の集合を、内的結合と外的分離が達成されるような部分集合に分割することをいう。なお、学習用パワースペクトルのクラスタリングは、図4に示される処理フローに従って行われる。
第1モデルの生成
次に、モデルの生成(第1モデルの生成)を行う(B3)。第1モデルは、学習用パワースペクトル・リストの群に含まれる学習用パワースペクトルの各々をクラスタリングすることにより生成される。従って、第1モデルは、1又は複数の学習用パワースペクトルを有するクラスタの集まり(第1クラスタの群)で構成される。ここで、クラスタとは、一般的にある集合を分割した後の各部分集合をいい、クラスタ群とは、このようなクラスタの集まりをいう。
【0038】
第1モデルに含まれる各第1クラスタは、それぞれ1又は複数の学習用特徴パラメータを有し、また各第1クラスタは、それぞれ1の第1代表特徴パラメータ、及び1の確率表に対応する。本実施態様においては、CPUによる演算により、各第1クラスタを代表する第1代表特徴パラメータとして、第1平均パワースペクトル(PS)が求められる。第1平均パワースペクトルは、第1クラスタ内に含まれる各学習用パワースペクトルの周波数毎の振幅の平均値を求め、求められた平均値を周波数毎の大きさとすることにより求められる。なお、本実施形態においては第1代表特徴パラメータとして平均パワースペクトルを用いているが、第1代表特徴パラメータは、対応するクラスタを代表する特徴パラメータで構成されるものであれば良く、種々の条件に基づいて求めることができる。第1平均パワースペクトルは、クラスタリング過程、即ち図4のステップ実行中は、ヒープメモリへ格納され、クラスタリング完了後はフラッシュメモリに格納される。また、各第1クラスタに対応する確率表は、各第1クラスタに含まれる全ての学習用パワースペクトルにおいて、各学習用パワースペクトルに対応する移動状態のIDが含まれる確率を、移動状態毎に求めることにより生成される。従って、確率表は、各学習用パワースペクトルに対応する各移動状態のIDがクラスタ内に含まれる確率を移動状態毎に求めた値と、それに対応する移動状態のIDとを関連付けるデータ表である。そして、CPUは、クラスタ毎に生成された確率表をフラッシュメモリに書き込む。以上より、CPUは、クラスタリングされた第1クラスタ(M個)のそれぞれに対して、クラスタのIDと第1平均パワースペクトル、及び確率表を対応させ、第1クラスタ群を構成する(図11B)。
【0039】
次に、学習用パワースペクトルと最近傍の第1平均パワースペクトルに対応する第1クラスタを選定する(B4)。より詳細には、モデル作成関数内のパターンマッチング関数により、学習用パワースペクトルからなるクラスタ群の内の各クラスタにおける第1平均パワースペクトルと、学習用パワースペクトルとをそれぞれパターンマッチングする。即ち、学習用パワースペクトル・リストへ時系列に格納された1の学習用パワースペクトル・リストをCPUがロードし、クラスタ群の各クラスタに対応するそれぞれ1の第1平均パワースペクトルとの、周波数毎の振幅の誤差の総和(パワースペクトルの場合)を算出する。CPUは、算出された総和が最小の第1平均パワースペクトルを求め、求められた第1平均パワースペクトルを、学習用パワースペクトルと最近傍の第1平均パワースペクトルとして選定し、当該第1平均パワースペクトルに対応するクラスタのシンボルをメモリへ格納する(シンボル化)。ここで、各クラスタには個別のシンボルがそれぞれ1つ割り振られている。
【0040】
次に、CPUは、学習用パワースペクトル・リストの群に含まれる全ての学習用パワースペクトルがシンボル化されたか否か判定する(B5)。ステップB5において、全ての学習用パワースペクトルがシンボル化されていない場合は、前回ロードされた学習用パワースペクトルの次に格納されている学習用パワースペクトルをロードし、該ロードされた学習用パワースペクトルに対して、ステップB4を繰り返し、前回に格納されたシンボルの次のアドレスへ第1平均パワースペクトルに対応するクラスタのシンボルをシンボル列へ格納する。一方、ステップB5において、学習用パワースペクトル・リストの群に含まれる全ての学習用パワースペクトルがシンボル化されている場合は、メモリへ格納されたシンボル化されたシンボルの列を、学習用シンボル列(図11C)として、ヒープメモリに格納する(B6)。
【0041】
次に、学習用セグメント確率表を生成する(B7)。より詳細には、まずCPUが、学習用シンボル列の一定区間(セグメント)において格納されている各シンボルに対応する確率表をそれぞれフラッシュメモリからロードする。ここで、学習用シンボル列に含まれる個々の第1クラスタのシンボルには1の確率表がそれぞれ対応している。一定区間は、予め定められおり、複数個(a個)のシンボルが含まれる一定の区間である。本一定区間が短すぎると、突発的に発生するノイズによる影響を大きく受けて推定誤差が大きくなることがある。また本区間が長すぎると、期間内に発生しうる移動状態の変化をタイミング良く把握できなくなることがある。そして、CPUによる演算によりロードされた各確率表の1の移動状態における確率の平均を、移動状態毎に算出する。学習用セグメント確率表は、一定区間に対する移動状態毎に算出された平均確率と、移動状態とを関連付けたデータ表である。生成された学習用セグメント確率表は、一定区間毎にヒープメモリへ時系列に格納される。
【0042】
次に、学習用セグメント確率表が、学習用シンボル列の全区間(N/a区間)において生成されたか否か判定する(B8)。ここで、学習用シンボル列の全区間とは、学習用シンボル列の全体を一定区間毎に区切った場合の全ての区間である。ステップB8において、学習用シンボル列の全区間に対応する学習用セグメント確率表が生成されていない場合は、ステップB7の処理を繰り返す。ここで、学習用セグメント確率表を時系列に格納したものを、学習用セグメント確率表リストとする。ステップB8において、学習用シンボル列の全区間に対応する学習用セグメント確率表が生成されている場合は、学習用セグメント確率表リストの生成は終了し(B9)、生成結果はヒープメモリへ格納される。
【0043】
次に、生成された学習用セグメント確率表リストに含まれる全ての学習用セグメント確率表をクラスタリングする(B10)。より詳細には、モデル作成関数内のクラスタリング関数により、CPUが学習用セグメント確率表リストに含まれる全ての学習用セグメント確率表を対象にクラスタリングを行う。なお、学習用セグメント確率表のクラスタリングは、図5に示される処理フローに従って行われる。
第2モデルの生成
次に、第2モデルの生成を行う(B11)。第2モデルは、学習用セグメント確率表リストに含まれる学習用セグメント確率表の各々をクラスタリングすることにより生成される。従って、第2モデルは、1又は複数の学習用セグメント確率表をそれぞれ有するクラスタの集まり(第2クラスタの群)で構成される。まず、CPUによる演算により、学習用セグメント確率表をクラスタリングする。そして、クラスタリング結果はフラッシュメモリへ格納される。
【0044】
クラスタリングにより、第2モデルを構成する第2クラスタ群に含まれる各第2クラスタは、それぞれ1又は複数の学習用セグメント確率表を有する。また、各第2クラスタはそれぞれ1の第2代表確率表、及び1の移動状態ランク表に対応する。本実施態様においては、CPUによる演算により、各第2クラスタに対応する第2代表確率表として、第2平均確率表が求められる。第2平均確率表は、第2クラスタ内に含まれる各学習用セグメント確率表の移動状態毎の確率の平均値を求め、求められた平均値を移動状態毎の確率とすることにより求められる。なお、本実施形態においては第2代表確率表として各学習用セグメント確率表の平均を用いているが、第2代表確率表は、対応するクラスタを代表する特徴パラメータで構成されるものであれば良く、種々の条件に基づいて求めることができる。
【0045】
また、各第2クラスタに対応する移動状態ランク表は、各第2クラスタに含まれる全ての学習用セグメント確率表において、各学習用セグメント確率表に対応する移動状態のIDが含まれる確率を、移動状態毎に求めることにより生成される。従って、移動状態ランク表は、第2クラスタに含まれる各学習用セグメント確率表に対応する各移動状態のIDがクラスタ内に含まれる確率を移動状態毎に求めた値と、それに対応する移動状態のIDとを関連付けるデータ表である。そして、CPUは、クラスタ毎に生成された移動状態ランク表をフラッシュメモリに書き込む。以上より、CPUは、クラスタリングされた第2クラスタ(P個)のそれぞれに対して、クラスタのIDと第2代表確率表、及び移動状態ランク表とを対応させ、第2クラスタ群を構成する(図11E)。
学習用特徴パラメータ・リストの生成
図3は学習用特徴パラメータ・リストの生成処理のフロー図である。図2のステップB1に対応する処理である。本実施態様においては、学習用特徴パラメータ・リストとして、学習用パワースペクトル・リストを生成する。学習用パワースペクトル・リストは、学習用モデルを生成するために利用されるデータ・リストであり、ある特定の移動状態における参照状態のデータを一定期間取得することにより生成される。ここで、学習用特徴パラメータは、学習用パワースペクトルの最大振幅周波数や、学習用加速度の3軸加速度値ベクトル、学習用加速度の加速度値の2乗和、加速度値の2乗和の分散値とすることも可能である。
【0046】
まず、加速度センサから参照状態の学習用加速度データ(x、y、z)を取得する(C1)。なお、ここではx、y、zは3軸上の加速度であるが、1軸、または2軸上の加速度でも良い。より詳細には、CPUは、あらかじめ、学習用パワースペクトル・リスト生成関数(加速度値算出、時間間隔判定、加速度値の時間窓データ算出関数、FF変換関数)、及び加速度センサのデバイス・ドライバをフラッシュメモリから読み込み、ヒープメモリ上にロードする。そして、CPUがデバイス・ドライバにより、加速度センサを起動し、計測を開始する。デバイス・ドライバは、加速度センサの測定値(学習用加速度データ)を読み出し、ヒープメモリに蓄積する。
【0047】
次に、加速度値算出関数により、CPUがヒープメモリから学習用加速度データを読み込み、CPUによる演算により学習用加速度データから加速度値α=(x2+y2+z2)1/2を生成し(C2)、ヒープメモリへ蓄積する。
【0048】
そして、加速度値の時間窓データ算出関数により、CPUは所定期間(例えば2秒間)にわたって加速度値αを生成し、加速度の学習用の時間窓データを生成し(C3)、その結果をヒープメモリへ蓄積する。ここで、例えばサンプリングレートを128Hzとすると、加速度の学習用の時間窓データは2秒間で256個の加速度値αからなる。また、サンプリングレートが256Hzの加速度センサであれば、所定期間は1秒間でも良い。
【0049】
次に、時間間隔判定関数により、CPUが前回の学習用パワースペクトル生成時刻をヒープメモリから読み出し、経過時間を計測し、閾値を超えているか判断し、閾値を超えていない場合は加速度の学習用の時間窓データを生成するステップを繰り返す(C4)。閾値を超えている場合はステップD5に移る。
【0050】
次に、CPUは、FF変換関数により、ヒープメモリから加速度の時間窓データの束(ここで、取得された時間窓データの束を時系列データ・リストという)を読み出し、それぞれの時間窓データをフーリエ変換して学習用パワースペクトルを算出し(C5)、ヒープメモリへそれぞれ蓄積する。なお、時間窓データをフーリエ変換して得られた学習用パワースペクトルのうち、所定の周波数帯域のスペクトル、例えば1〜10Hzのスペクトルを用いることができる。加速度の時間窓データを取得するステップを繰り返す間隔は、前記所定期間であっても良いし、それよりも長いまたは短い間隔でもよい。本実施態様においては、例えば2秒間の時間窓のずらし幅を0.5秒間に設定する。
【0051】
以上により、格納された学習用パワースペクトルのリストを学習用パワースペクトル・リストとする。
学習用特徴パラメータ・リストの群のクラスタリング
図4は学習用特徴パラメータ・リストの群のクラスタリング処理フロー図である。本処理は図2のステップB2に対応する処理である。本実施態様においては、学習用特徴パラメータ・リストとして、学習用パワースペクトル・リストを用いる。ここで、学習用パワースペクトル・リストとは、1の移動状態における参照状態の学習用パワースペクトルから構成されるリストであり、学習用パワースペクトル・リストの群とは、全移動状態の参照状態における学習用パワースペクトル・リストから構成されるリスト群である。
【0052】
学習用パワースペクトル・リストの群に含まれる全ての学習用パワースペクトルのクラスタリングにより、分類対象である複数の学習用パワースペクトルは、類似する学習用パワースペクトルが同じ部分集合になるように分類される。代表的なクラスタリング手法にはk−means法がある。k−means法は、入力データからK個のランダムな個体を初期クラスタの中心として選択し、以降、クラスタの重心を移動させるステップを繰り返すことでクラスタリングを行う非階層的手法である。ここでは、例えばk−means法を用いてクラスタリングを行う。なお、K−means法に代えて、SVM等を用いることも可能である。SVM(Support Vector Machine)は2クラスの分類を行う学習機械の一種で、与えられた訓練点のなかでサポートベクトルと呼ばれるクラス境界近傍に位置する訓練点と識別面との距離であるマージンを最大化するように分離超平面を構築しクラス分類を行う。
【0053】
まず、CPUは、モデル作成関数内のクラスタリング関数をフラッシュメモリから読み込みヒープメモリに展開する。そして、学習用パワースペクトル・リストの群に含まれる全ての学習用パワースペクトルをランダムに2つのクラスタに分類する(D1)。分類結果はヒープメモリに格納に格納される。「全ての学習用パワースペクトル」とは、当初は、全参照状態分の学習用パワースペクトル・リストに含まれる全ての学習用パワースペクトルである。この当初の全参照状態分の学習用パワースペクトル・リストに含まれる全ての学習用パワースペクトルの集合を学習用パワースペクトルの「初期母集団」とする。また、ステップD1において、これから各クラスタに分類されるであろう、全ての学習用パワースペクトルの集合を「母集団」とする。なお、本実施態様においては2つのクラスタへ分類している。これは、3以上のクラスタへ分類すると、一つの群に最も特徴のある学習用パワースペクトルが集中して分類され、他の群における学習用パワースペクトルの特徴は考慮されなくなるため、複数の移動状態を推定することが困難となる場合があるためである。なお、最も特徴のある1の移動状態のみを推定する場合には、3以上へのクラスタへ分類することも有効である。
【0054】
次に、ステップD1にて分類されたクラスタ内の全ての学習用パワースペクトルから、平均パワースペクトルを求め、該求められた平均パワースペクトルを代表パワースペクトルとする(D2)。より詳細には、各学習用パワースペクトルの周波数毎の振幅の平均値を求め、求められた平均値を周波数毎の大きさとする平均パワースペクトルを代表パワースペクトルとする。なお、本実施形態においては代表パワースペクトルとして平均パワースペクトルを用いているが、代表パワースペクトルは、対応するクラスタを代表する特徴パラメータで構成されるものであれば良く、種々の条件に基づいて求めることができる。
【0055】
次に、母集団内の全ての学習用パワースペクトルを、距離の近い代表パワースペクトルへ分類する(D3)。より詳細には、例えばそれぞれ1の学習用パワースペクトルと、各クラスタの代表パワースペクトルとの周波数毎の振幅の誤差の総和を算出する。そして、算出された総和が小さい方の代表パワースペクトルに対応するクラスタへ1の学習用パワースペクトルを分類する。従って、それぞれの学習用パワースペクトルは、周波数毎の誤差の総和の差がより小さい、即ち、より距離の近い代表パワースペクトルを有する一方のクラスタへ分類される。
【0056】
次に、ステップD3における分類結果に基づいて、各クラスタに含まれる全ての学習用パワースペクトルからそれらの平均パワースペクトルを算出し、算出された結果を各クラスタの代表パワースペクトルとして更新する(D4)。より詳細には、分類されたクラスタに含まれる全ての学習用パワースペクトルに基づいて、周波数毎に学習用パワースペクトルの大きさの平均値を算出する。そして、算出された平均値を周波数毎に有する新たなパワースペクトルを新たな代表パワースペクトルとして、クラスタ毎にそれぞれ更新し、ヒープメモリへ格納する。
【0057】
次に、ステップD3において学習用パワースペクトルが各クラスタへ分類された結果が、直前の分類結果と同等か否か判定する(D5)。本実施態様においては、例えばそれぞれのクラスタに含まれる分類された学習用パワースペクトルの周波数毎の平均値が、直前に分類された学習用パワースペクトルの周波数毎の平均値と同じか否か判定する。ここで、それぞれのクラスタに含まれる分類された学習用パワースペクトルの平均値と、直前に分類された学習用パワースペクトルの周波数毎の平均値との誤差を算出し、誤差の総和がしきい値以下か否か判定しても良い。しきい値に基づいて判定する場合はより早く分類結果が収束するため、処理速度が向上する。分類された結果が直前の分類結果と同等ではない場合、ステップD3、及びD4の処理を繰り返す。分類された結果が直前の分類結果と同等の場合、各クラスタに含まれる学習用パワースペクトルの個数が、どちらのクラスタに多いか/少ないかを比較する(D6)。
【0058】
分類されたクラスタに含まれる個数が少ない場合は、該クラスタに属する学習用パワースペクトルに基づいて確率表が生成される(D7)。そして、生成結果はヒープメモリへ格納される。より詳細には、確率表は、該クラスタに含まれる全ての学習用パワースペクトルにおいて、各学習用パワースペクトルに対応する移動状態のIDが含まれる確率を、移動状態毎に求め、求められた移動状態毎のIDが含まれる確率と、それに対応する移動状態とを関連付けることにより生成される。即ち、確率表は、各学習用パワースペクトルに対応する各移動状態のIDがクラスタ内に含まれる確率を移動状態毎に求めた値と、それに対応する移動状態のIDとを関連付けたデータ・リストである。そして、CPUは、該個数の少ないクラスタに属する全ての学習用パワースペクトルを母集団から除き(D8)、ヒープメモリへ格納する。該個数の少ないクラスタに属する全ての学習用パワースペクトルを除いた母集団が、次の母集団となる。次に、該個数の少ないクラスタに含まれる学習用パワースペクトルの数が、初期母集団の一定割合以下かの判定(母集団の規模判定)、又は更なるクラスタリングが不可能であるかの判定をする(D8)。ここで、一定割合とは、初期母集団に含まれる学習用パワースペクトルの数と、分類されたクラスタに含まれる学習用パワースペクトルの数との割合であり、予め規定されている。また、更なるクラスタリングが不可能である場合とは、全ての学習用パワースペクトルが、片方のクラスタにマッピングされた状態をいう。ここで、母集団の規模判定や、更なるクラスタリングが不可能であるかの判定に加えて、例えば、移動状態の分布の偏りに基づいて判定することもできる。移動状態の分布の偏りに基づく判定とは、該個数の少ないクラスタに属する全ての学習用パワースペクトルを用いて、各移動状態の出現する確率を算出し、最高確率に対応する移動状態の確率が、第2位の確率に対応する移動状態の確率の倍以上であるか否かを判定することをいう。ここで、倍以上である場合には、該クラスタのクラスタリング処理が終了し1つの第1モデルが生成される。倍以下である場合には、ステップD1へ戻り引き続きクラスタリング処理が行われる。
【0059】
一方、分類されたクラスタに含まれる個数が多い場合は、該クラスタに含まれる学習用パワースペクトルの数が、初期母集団の一定割合以下か、又は更なるクラスタリングが不可能であるか判定する(D9)。ステップD9における判定の結果が否定的である場合、さらにステップD1からD6の処理を繰り返す。これは、クラスタに含まれる学習用パワースペクトルの個数が多いため、更なるクラスタリング処理によって、学習用パワースペクトルの分類が必要であることを意味する。一方、ステップD9における判定の結果が肯定的である場合、クラスタリングにより学習用パワースペクトルの分類が収束しており、クラスタリングによりクラスタが、すでに適切な大きさに細分化されていることを意味する。そして、当該クラスタに対応する確率表を生成し、学習用パワースペクトル・リストのクラスタリング処理は終了する。クラスタリングにより、全ての学習用パワースペクトルは、1のクラスタ(ここでは、第1クラスタ)に含まれるよう分類され、1のクラスタには1の確率表が対応するよう構成される。
学習用セグメント確率表リストのクラスタリング
図5は学習用セグメント確率表リストのクラスタリング処理フロー図である。本処理は、図2のステップB10に対応する処理である。ステップB9にて学習用シンボル列の全区間において学習用セグメント確率表を算出することにより、複数の学習用セグメント確率表からなる学習用セグメント確率表リストが生成される。学習用セグメント確率表リストに含まれる学習用セグメント確率表をクラスタリングすることにより、分類対象である複数の学習用セグメント確率表は、類似する学習用セグメント確率表が同じ部分集合になるように分類される。
【0060】
まず、CPUは、モデル作成関数内のクラスタリング関数をフラッシュメモリから読み込みヒープメモリに展開する。そして、学習用セグメント確率表リストに含まれる全ての学習用セグメント確率表をランダムに2つのクラスタに分類する(E1)。分類結果はヒープメモリに格納に格納される。「全ての学習用セグメント確率表」とは、当初は、ステップB9にて生成された全ての学習用セグメント確率表である。この当初の全ての学習用セグメント確率表、即ち、ステップB9にて生成された全ての学習用セグメント確率表の集合を学習用セグメント確率表の「初期母集団」とする。また、ステップE1において、これから各クラスタに分類されるであろう、全ての学習用セグメント確率表の集合を「母集団」とする。
【0061】
次に、ステップE1にて分類されたクラスタ内の学習用セグメント確率表から、平均確率表を求め、該求められた平均確率表を代表確率表とする(E2)。より詳細には、各学習用セグメント確率表の移動状態毎に平均確率を求め、求められた平均確率を移動状態毎の代表確率とする代表確率表を求める。
【0062】
次に、母集団内の全ての学習用セグメント確率表を、距離の近い代表確率表へ分類する(E3)。より詳細には、例えばそれぞれ1の学習用セグメント確率表と、各クラスタの代表確率表との移動状態毎の確率の誤差の総和を算出する。そして、算出された総和が小さい方の代表確率表に対応するクラスタへ1の学習用セグメント確率表を分類する。従って、それぞれの学習用セグメント確率表は、移動状態毎の確率の誤差の総和の差がより小さい、即ち、より距離の近い代表確率表を有する一方のクラスタへ分類される。
【0063】
次に、ステップE3における分類結果に基づいて、各クラスタに含まれる全ての学習用セグメント確率表からそれらを平均した平均確率表を算出し、算出された結果を各クラスタの代表確率表として更新する(E4)。より詳細には、分類されたクラスタに含まれる全ての学習用セグメント確率表に基づいて、移動状態毎に確率の平均値を算出する。そして、算出された平均値を移動状態毎に有する新たな確率表を新たな代表確率表として、クラスタ毎にそれぞれ更新し、ヒープメモリへ格納する。
【0064】
次に、ステップE3において学習用セグメント確率表が各クラスタへ分類された結果が、直前の分類結果と同等か判定する(E5)。本実施態様においては、例えばそれぞれのクラスタに含まれる分類された学習用セグメント確率表の移動状態毎の平均確率が、直前に分類された学習用セグメント確率表の移動状態毎の平均確率と同じか否か判定する。ここで、それぞれのクラスタに含まれる分類された学習用セグメント確率表の移動状態毎の平均確率と、直前に分類された学習用セグメント確率表の移動状態毎の平均確率との誤差を算出し、誤差の総和がしきい値以下か否か判定しても良い。しきい値に基づいて判定する場合はより早く分類結果が収束するため、処理速度が向上する。分類された結果が直前の分類結果と同等ではない場合、ステップE3、及びE4の処理を繰り返す。分類された結果が直前の分類結果と同等の場合、各クラスタに含まれる学習用セグメント確率表の個数が、どちらのクラスタに多いか/少ないかを比較する(E6)。
【0065】
分類されたクラスタに含まれる個数が少ない場合は、該クラスタに属する学習用セグメント確率表からなる群の移動状態ランク表が生成される(E7)。そして、生成結果はヒープメモリへ格納される。より詳細には、移動状態ランク表は、各第2クラスタに含まれる全ての学習用セグメント確率表に基づいて、各学習用セグメント確率表に対応する移動状態のIDが含まれる確率を移動状態毎に求めることにより生成される。即ち、移動状態ランク表は、クラスタ内に含まれる全ての学習用セグメント確率表に対応する各移動状態のIDがクラスタ内に含まれる確率を移動状態毎に求めた値と、それに対応する移動状態のIDとを関連付けたデータ・リストである。そして、CPUは、該個数の少ないクラスタに属する全ての学習用セグメント確率表を母集団から除き(E7)、ヒープメモリへ格納する。該個数の少ないクラスタに属する全ての学習用セグメント確率表を除いた母集団が、次の母集団となる。次に、該個数の少ないクラスタに含まれる学習用セグメント確率表の数が、初期母集団の一定割合以下かの判定(母集団の規模判定)、又は更なるクラスタリングが不可能であるかの判定をする(E8)。ここで、一定割合とは、初期母集団に含まれる学習用セグメント確率表の数と、分類されたクラスタに含まれる学習用セグメント確率表の数との割合であり、予め規定されている。また、更なるクラスタリングが不可能である場合とは、全ての学習用セグメント確率表が、片方のクラスタにマッピングされた状態をいう。ここで、母集団の規模判定や、更なるクラスタリングが不可能であるかの判定に加えて、例えば、移動状態の分布の偏りに基づいて判定することもできる。移動状態の分布の偏りに基づく判定とは、該個数の少ないクラスタに属する全ての学習用セグメント確率表を用いて、各移動状態の出現する確率を算出し、最高確率に対応する移動状態の確率が、第2位の確率に対応する移動状態の確率の倍以上であるか否かを判定することをいう。ここで、倍以上である場合には、該クラスタのクラスタリング処理が終了し1つの第2モデルが生成される。倍以下である場合には、ステップE1へ戻り引き続きクラスタリング処理が行われる。
【0066】
一方、分類されたクラスタに含まれる個数が多い場合は、該クラスタに含まれる学習用セグメント確率表の数が、初期母集団の一定割合以下か、又は更なるクラスタリングが不可能であるか判定する(E9)。ステップE9における判定の結果が否定的である場合、さらにステップE1からE6の処理を繰り返す。これは、クラスタに含まれる学習用セグメント確率表の個数が多いため、更なるクラスタリング処理によって、学習用セグメント確率表の分類が必要であることを意味する。一方、ステップE9における判定の結果が肯定的である場合、クラスタリングにより学習用セグメント確率表の分類が収束しており、クラスタリングにより学習用セグメント確率表が、すでに適切な大きさに細分化されていることを意味する。そして、当該クラスタに対応する移動状態ランク表を生成し、学習用セグメント確率表のクラスタリング処理は終了する。クラスタリングにより、全ての学習用セグメント確率表は、1のクラスタ(ここでは、第2クラスタ)に含まれるよう分類され、1のクラスタには1の移動状態ランク表が対応するよう構成される。
ユーザの移動状態の推定
図6は、ユーザの移動状態を推定するためのフロー図である。ユーザの移動状態の推定は、学習用パワースペクトルを用いて生成されたモデル、即ち第1モデル及び/又は第2モデルを用いて行う。
【0067】
一実施態様では、第1モデルのみを用いることによりユーザの移動状態を推定することが可能である。第1モデルのみを用いることによりユーザの移動状態を推定するための処理負荷が軽減される。
【0068】
さらに別の実施態様では、第2モデルのみを用いることにより移動状態を推定することが可能である。第2モデルのみを用いることによりユーザの移動状態を推定するための処理負荷が軽減される。
【0069】
また、さらに別の実施態様では、第1モデルと第2モデルを合わせてユーザの移動状態を推定することが可能であり、これによりさらに移動状態の推定誤差を少なくすることが可能である。具体的には、第1モデルを用いることにより得られる移動状態の推定結果(第1推定結果)と、第2モデルを用いることにより得られる移動状態の推定結果(第2推定結果)とが同一である場合に、移動状態を選定し、これを推定結果とする。これにより第1モデルによる推定された結果の信頼性を、第2モデルを用いて評価することが可能となり、信頼性の高い推定結果を得ることが可能となる。
第1モデルによる推定結果の取得
図6のフロー図に従って、移動状態の推定方式を以下に詳述する。まず、移動状態を推定するユーザの有する携帯端末装置に備えられている加速度センサから加速度データを取得し、加速度からなる関数をその周波成分の連続スペクトルに分解すること(例えば、フーリエ変換)により推定用パワースペクトル・リストを生成する(F1)。推定用パワースペクトル・リストには、各推定用パワースペクトルのIDと、各推定用パワースペクトル(Q個)に対応する周波数毎の振幅が時系列に格納されている(図11F)。
【0070】
次に、第1モデルを用いて、推定用パワースペクトル・リストのうち1の推定用パワースペクトルと、最近傍の第1平均パワースペクトルに対応する第1クラスタを選定する(F2)。より詳細には、例えば、CPUは、クラスタ群の各第1クラスタにおけるそれぞれ1の第1平均パワースペクトルと、推定用パワースペクトルとの周波数毎の振幅の誤差の総和を算出する。そして、算出された総和が最小の第1平均パワースペクトルに対応する第1クラスタを、推定用パワースペクトルと最近傍の第1平均パワースペクトルとして選定する。なお、最近傍の第1平均パワースペクトルは、移動状態毎の確率の差の2乗の総和が最小となる第1平均パワースペクトルを選定すること等により求めても良い。
【0071】
次に、選定された最近傍の第1クラスタに対応するシンボルを推定用シンボル列へ格納(シンボル化)する(F3)。各第1クラスタには、1の第1平均パワースペクトル、及び1の確率表が対応しており、各第1クラスタに対してそれぞれ1の異なるシンボルが割り振られている。
【0072】
次に、推定用パワースペクトル・リストにおける一定区間内の推定用パワースペクトルが全てシンボル化されたか否か判定する(F4)。ここで、一定区間は、予め定められており、移動状態を推定するために必要な最小個数(b個)の推定用パワースペクトルに対応する一定の区間である。本一定区間が短すぎると、突発的に発生するノイズによる影響を大きく受けて推定誤差が大きくなることがある。また本区間が長すぎると、期間内に発生しうる移動状態の変化をタイミング良く把握できなくなることがある。一定区間内の推定用パワースペクトルが全てシンボル化されていない場合は、全てのシンボル化が終了するまでステップF2、F3を繰り返す。一定区間内の推定用パワースペクトルが全てシンボル化された場合は、ステップF5へ進む。
【0073】
次に、生成された推定用シンボル列(図11G)に基づいて、推定用セグメント確率表を生成する(F5)。推定用セグメント確率表とは、推定用シンボル列において、一定区間の連続したシンボルに対応する各確率表に基づいて求められる確率表である。推定用セグメント確率表は、推定用シンボル列の一定区間内に格納された複数のシンボルにそれぞれ対応する第1クラスタの確率表を用いて、移動状態毎に確率の平均値を算出することにより求められる。推定用セグメント確率表は、算出された移動状態毎の一定区間毎の平均確率を移動状態毎に有する表である。
【0074】
次に、CPUは推定用セグメント確率表を参照し、移動状態毎にある平均確率のうち、最高の確率に対応する移動状態を選定する(第1モデルによる移動状態の推定結果取得)(F6)。なお、本実施形態においては最高確率に対応する移動状態を選定しているが、選定するにあたって、他の所定の条件を設けることができる。例えば、携帯端末装置の所持状態には、ポケットや鞄に入れた状態、手に所持した状態、腕等に装着している状態等がある。これらの所持状態を推定する場合は、推定用セグメント確率表の、例えば上位から複数の確率に対応する状態を選定することにより、所持状態を推定することができる。さらに、本実施態様においては、移動状態を選定しているが、同様の方法を用いて、例えば携帯端末装置を保有している人物を特定することもできる。また、例えば上位から複数の確率に対応する状態を選定することにより、可能性の高い複数の人物を特定することも可能となる。
【0075】
そして、CPUは、選定された移動状態に対応するIDを推定結果としてメモリへ格納する。CPUは、時系列にメモリに格納された推定用パワースペクトルを用いて、推定用セグメント確率表を参照し、最高の確率に対応する移動状態を順次選定していく。そして、第1モデルによるユーザの移動状態の推定結果が、時系列にメモリへ格納される(図11Hの第1モデル推定結果)。以上より、時系列データを用いた第1モデルによるユーザの移動状態の推定がなされる。ユーザ移動状態に突発的な変化を含む場合や、他状態と類似する時間帯が発生する場合であっても、ユーザの移動状態を正しく推定することが可能となる。また、ユーザの加速度センサから得られる1のパワースペクトルの情報は、1又は複数の移動状態に対応する特徴を有している場合がある。本願発明は、1の加速度データから求められる特徴パラメータが複数の移動状態における特徴パラメータと類似する場合であっても、第1モデルを用いることにより、該特徴パラメータが各移動状態に現れる頻度から移動状態を推定することが可能となる。従って、複数の移動状態における特徴パラメータと類似する場合であっても、ユーザの移動状態を高い精度で推定可能である。
推定用パワースペクトル・リストの生成
推定用パワースペクトルの生成(ステップF1)を以下に詳述する。ある移動状態にいるユーザの移動状態を推定するために用いる推定用パワースペクトル・リストは、学習用パワースペクトル・リストの選定と同様のプロセスにより行われる。より詳細には、ある移動状態にいるユーザが有する加速度センサから所定期間に亘って推定用の加速度データを取得し、得られた推定用加速度データから加速度の時間窓データを生成する。
【0076】
そして、推定用加速度の時間窓データの生成を所定回数繰り返し、推定用加速度の時系列データ・リスト(推定用データ・リスト)を取得する。尚、推定用加速度の時間窓データの生成は、ユーザの移動状態を推定するために必要なデータ数が得られるまで、所定回数繰り返す。そして、CPUによる演算により、複数の推定用加速度の時間窓データはそれぞれフーリエ変換され、複数の推定用パワースペクトルからなる推定用パワースペクトル・リストが算出される。
第2モデルによる推定結果の取得
次に、CPUは、第2モデルを用いて推定用セグメント確率表と、最近傍の第2代表確率表を有する第2クラスタを選定する(F7)。本実施態様においては、第2代表確率表として、第2平均確率表を用いる。より詳細には、第2平均確率表は、例えば、第2モデルを構成するクラスタ群に含まれる各クラスタにおいて、各第2クラスタに対応する1又は複数の学習用セグメント確率表を用いて、移動状態毎に平均確率を求めることにより、クラスタ毎に生成される。また、第2平均確率表は、移動状態毎の平均確率と、それに対応する移動状態のIDとを関連付けたデータ表である。ここで、推定用セグメント確率表と最近傍の第2平均確率表は、例えば、第2モデルを構成する各クラスタに対応する、それぞれ1の第2平均確率表と、推定用セグメント確率表との移動状態毎の確率の差を求め、その差の総和が最小の第2平均確率表を選定することにより求められる。なお、最近傍の第2平均確率表は、移動状態毎の差の総和の2乗が最小となる確率表を選定することにより求めても良い。
【0077】
次に、CPUは、該選定された第2クラスタに対応する移動状態ランク表に基づいて、最高確率に対応する移動状態のIDを選定することより第2モデルによるユーザの移動状態を選定する(第2モデルによる移動状態の推定結果取得)(F8)。そして、CPUは選定された移動状態のIDを推定結果としてメモリへ格納する。ここで、第2モデルを構成する第2クラスタには、クラスタ毎に1の第2平均確率表、及び1の移動状態ランク表が対応している(図11E)。移動状態ランク表は、第2クラスタに含まれる全ての学習用セグメント確率表において、各学習用セグメント確率表に対応する各移動状態のIDがクラスタ内に含まれる確率を移動状態毎に求めた値と、それに対応する移動状態のIDとを関連付けたデータ表である。
【0078】
CPUは、生成された推定用セグメント確率表を用いて、推定用セグメント確率表と最近傍の第2平均確率表に対応するクラスタを選定し、該クラスタに対応する移動状態ランク表を参照し、最高の確率に対応する移動状態を順次選定していく。そして、第2モデルによるユーザの移動状態の推定結果が、時系列にメモリへ格納される(図11H)。以上より、時系列データを用いた、第2モデルによるユーザの移動状態の推定がなされる。従って、本実施態様においては、ユーザの移動状態を示す時系列のデータを用いてユーザの移動状態を推定するため、ユーザ移動状態に突発的な変化を含む場合や、他状態と類似する時間帯が発生する場合であっても、ユーザの移動状態を正しく推定することが可能となる。また、該得られた確率表の特徴が他の移動状態における確率表の特徴と類似している場合であっても、高い精度で移動状態を推定することができる。
キーフレームの判定
次に、メモリへ格納された第1モデル推定結果と第2モデル推定結果とが同一の移動状態か否か判定する(F9)。より詳細には、ステップF9において、一定区間において第1モデルにより選定された移動状態のIDが、第2モデルにより選定された移動状態のIDと同一か否か判定する。ステップF9において判定した結果が同一ではない場合、第1モデル、第2モデルにより選定されたユーザの移動状態は信頼性が高くないとして、この一定区間に対応する1のフレームを、未確定フレーム(unknown)としてフレーム・リストの1のフレームへ格納する(F11)。そして、さらにステップF1からステップF9の処理を繰り返す。
【0079】
一方、ステップF9において判定した結果が同一の移動状態である場合、第1モデル、及び第2モデルにより得られた推定結果は信頼性が高いとして、この一定区間に対応する1のフレームを、キーフレーム(known)として、フレーム・リストの1のフレームへ格納する(F10)。フレーム・リストとは、1の一定区間に1のフレームが対応した、複数のフレームから構成されるリストである。各フレームは、当該フレームがキーフレームか、又は未確定フレームかをそれぞれ時系列に格納されている。
【0080】
以上より、図6に示されるように、第1モデルを用いた移動状態の推定と、第2モデルを用いた移動状態の推定とを行うことにより、両モデルによる推定結果が一致した場合に、推定精度が高いとして移動状態を推定することにより、推定精度を高めることが可能となる。
歩数、基地局情報を用いた移動状態推定方式
図7は、外部情報取得装置を用いた移動状態推定方式のシステム構成を示した図である。図7は図1の構成に加えて、外部情報取得装置としてアンテナ(G60)、歩数計(G70)を含む構成である。携帯端末装置は、アンテナ(G60)を通じて、基地局と通信することにより携帯端末装置に最も近い基地局の緯度、経度の情報を取得する。また、携帯端末装置は、基地局情報として基地局のID情報を取得することもできる。なお、基地局情報は、CDMA基地局や、無線タグ、無線LAN等の基地局からも取得することもできる。本実施態様においては、外部情報取得装置を用いて得られた情報をさらに用いることにより、更なる移動状態の推定精度を高め、処理負荷を軽減することができる。
【0081】
基地局の緯度、経度情報は直接ヒープメモリへ格納される。また、歩数計(G70)は、一定レベル以上の振動(加速度)が加わることで作動し、ユーザの歩数をカウントする。携帯端末装置に搭載されている歩数計は、一般にハードウェア化されており、加速度センサに比べ小電力で動作することが可能である。本実施態様においては、得られた推定移動状態の信頼性が高い場合には、消費電力の低い歩数計のみを用いて移動状態に変化が無いか否か判定する。さらに、得られた推定移動状態が停止状態や、電動車状態、即ち、自動車状態、バス状態、電車状態の場合は、歩数が変化しないことのみを検出し、その他の移動状態の場合には歩数のリズムをのみを検出することにより、移動状態の変化を判定することができる。ここで、歩数のリズムの検出とは、一定時間にカウントされる歩数を検出することにより行う。このように、移動状態に変化がある場合に、ユーザの情報を取得する装置を適切に選択することにより、移動状態の推定にかかる処理負荷を軽減させることができる。
【0082】
ここで、歩数計から取得される歩数やアンテナから取得される基地局情報はCPUによる動作無し(低負荷な処理により)に、メモリへアクセスすることにより取得することが可能である。従って、加速度センサを常時動作させることにより移動状態を推定するよりも、低い消費電力で移動状態の推定が可能である。さらに、加速度センサを常時動作させて加速度値を取得するよりも、CPUの負荷を低減させ、高速に外部情報の取得が可能となり、かつ低消費電力で動作可能であることからより長期間の移動状態推定が可能となる。なお、携帯端末装置の位置を取得するために、グローバル・ポジショニング・システム(GPS)基地局からの情報を利用することもできる。
【0083】
図8は、第1、及び第2モデルを用いた推定に加えて、外部情報取得装置、から取得された情報を用いて移動状態を推定するための処理フロー図である。本実施態様により、第1モデル、及び第2モデルを用いることにより得られた推定結果に基づいて選定された、キーフレーム区間の推定結果の妥当性を評価することができる。これにより、さらに移動状態推定の精度を向上させることができる。
【0084】
図8による移動状態を推定方式は、第1、及び第2モデルを用いた推定をした後に、ユーザの有する歩数計G70から得られる歩数情報、アンテナG60から得られる基地局情報を用いて、第1、第2モデルにより推定された移動状態の妥当性を評価するものである。アンテナから得られる基地局情報は、例えば、ユーザの有する携帯端末装置に最も近い基地局の、緯度、経度情報により構成される。本推定方式では、図6に示される推定処理を経た後に、図8に示される推定処理フローに従って移動状態が推定される。
【0085】
まず、現在のキーフレームに対応する移動状態が、直前に登録されたキーフレームに対応する移動状態と同一か否か判定する(H1)。現在のキーフレームに対応する移動状態のIDと、直前に登録されたキーフレームに対応する移動状態のIDとを比較し、それらが同一ではない場合、得られた現在のキーフレームと、直前に登録されたキーフレームにおいて、選定された移動状態の信頼性は低いと考えられるため、再度ステップF1に戻り、推定処理を開始する。
【0086】
現在のキーフレームに対応する移動状態が、直前に登録されたキーフレームに対応する移動状態と同一である場合、ステップH2に進む。ステップH2において、キーフレームに対応する移動状態が第1、第2、第3のいずれの移動状態かを判定する(H2)。ここで、第1の移動状態とは、例えば走行状態、歩行状態、自転車状態をいう。また、第2の移動状態とは、例えば停止状態をいう。第3の移動状態とは、例えば、電車状態、自動車状態、バス状態をいう。全ての移動状態は、歩数、基地局情報に関連して、予め第1、2及び3の移動状態へ分類されている。本実施態様においては、外部情報取得装置、例えば歩数計及び/又はアンテナにより取得された情報から推定されるユーザの移動状態と、第1、及び第2モデルを用いた推定移動状態が対応しているか否か判定する。ここで、CPUは、歩数、基地局情報をフラッシュメモリから取得し、ヒープメモリへ格納して判定する(H2)。そして、判定結果はヒープメモリに格納される。
【0087】
キーフレームに対応する移動状態が第1の移動状態である場合、直前に登録されたキーフレームから、現在のキーフレームまでの間の全てのフレームにおいて、歩数計から得られる歩数が増加しているか否かが判定される(H3)。歩数計によるユーザの歩数情報の測定は常時行われており、歩数計から取得された歩数は、ステップF10にて構成されるフレーム毎に時系列にヒープメモリに格納されている。CPUは、一定区間のフレーム毎にメモリへ格納されている歩数情報を取得し、CPUは、得られた歩数情報において、全てのフレームで歩数が増加しているか否か判定する。なお、自転車状態の場合、全てのフレームで歩数が増加していなくても良く、1以上のフレームにおいて歩数が増加しているか否かによって判定することもできる。推定対象のユーザが自転車状態にある場合、ペダルを漕がずに下り坂を下っている場合等、全てのフレームで歩数が増加しない場合があるからである。
【0088】
全てのフレームにおいて歩数が増加している場合は、キーフレームに対応する移動状態、即ち第1の移動状態は正しいと判定される。即ち、歩数の増加は、ユーザ自身が移動している状態に該当するため、走行、歩行、自転車状態を含む第1の移動状態に対応する。従って、第1モデル、第2モデルで推定された結果の信頼性が高いと認定される。そして、直前に登録されたキーフレームから現在のキーフレームまでの区間をキーフレーム区間として確定する(H6)。一方、判定の結果、歩数が増加していない場合は、モデルにより推定結果として得られた移動状態は信頼性が低いとして、再度推定処理を行う(F1)。
【0089】
キーフレームに対応する移動状態が第2の移動状態である場合、直前に登録されたキーフレームから、現在のキーフレームまでの間の全てのフレームにおいて歩数、基地局に変化がないかが判定される(H4)。より詳細には、現在のキーフレームまでの間の全てのフレームに対応する歩数情報、及び基地局情報は、それぞれメモリへ格納されており、CPUは、ステップF10にて構成される一定区間のフレーム毎に、メモリへ格納されている歩数情報、及び基地局情報を取得する。そしてCPUは、得られた歩数情報、及び基地局情報に基づいて、全てのフレームで歩数が増加していないか、基地局に変化がないか否か判定する。歩数が増加しておらず、基地局に変化がない状態はユーザがほぼ停止している状態に該当するため、第2の移動状態に対応する。従って、第1モデル、第2モデルで推定された結果の信頼性が高いと認定される。そして、直前に登録されたキーフレームから現在のキーフレームまでの区間をキーフレーム区間として確定する(H6)。判定の結果、歩数が増加している場合、又は、基地局の変化がある場合は、モデルにより推定結果として得られた移動状態は信頼性が低いとして、再度推定処理を行う(F1)。
【0090】
キーフレームに対応する移動状態が第3の移動状態である場合、直前に登録されたキーフレームから、現在のキーフレームまでの間の全てのフレームにおいて歩数に変化がないかが判定される(H5)。より詳細には、現在のキーフレームまでの間の全てのフレームに対応する歩数情報はメモリへ格納されており、CPUは、ステップF10にて構成される一定区間のフレーム毎に、メモリへ格納されている歩数情報を取得する。そしてCPUは、得られた歩数情報に基づいて、全てのフレームで歩数が増加していないか否か判定する。歩数が増加していないが、基地局に変化がある/ない場合は、ユーザ自身は移動していないが、ユーザが乗車している車両が移動/停止している状態に該当するため、電車状態、自動車状態、バス状態である第3の移動状態に対応する。そして、直前に登録されたキーフレームから現在のキーフレームまでの区間をキーフレーム区間として確定する(H6)。判定の結果、歩数が増加している場合は、モデルにより推定結果として得られた移動状態は信頼性が低いとして、再度推定処理を行う(F1)。
【0091】
次に、キーフレーム区間内の全てのフレームは、キーフレームに対応する移動状態が対応付けられている(図11H)。これにより、CPUは移動状態の推定結果を確定する(H7)。そして、推定結果が第2の移動状態である場合、即ちここでは停止状態である場合、加速度データの取得を止め、歩数、基地局情報のみを取得する(歩数・基地局情報監視モードへの移行)。推定結果が第3の移動状態である場合、即ちここでは電車状態、自動車状態、バス状態である場合、加速度データの取得を止め、歩数のみを取得する(歩数監視モードへの移行)。このように、加速度データの取得を止めること(低消費電力モードへの移行)で、省電力化を図ることが可能となる。一方、推定結果が第1の移動状態の場合、即ち、ここでは走行状態、歩行状態、自転車状態の場合、加速度データの取得を続ける。第2の移動状態、及び第3の移動状態の場合は、加速度データを用いることなく歩数及び/又は基地局情報のみを取得することで、第2の移動状態及び第3の移動状態を保持し続けていることを把握することが可能であるのに対し、第1の移動状態の場合には、歩数及び基地局情報のみでは第1の移動状態を保持し続けているかを把握することが難しい場合があるからである。
【0092】
図9は、更なる実施態様についての処理フローを示す。図9に示される処理フローは、図8に示される処理フローと類似しているが、更なる実施態様においては、現在のキーフレームに対応する移動状態が、直前のキーフレームに対応する移動状態と同一か否かを判定し、判定結果が同一ではない場合に、さらに現在のキーフレームに対応する移動状態が第3の移動状態であるか判定する。本実施態様においては、現在のキーフレームに対応する移動状態が第3の移動状態である場合、キーフレーム区間内に第2の移動状態に対応するキーフレームが存在する場合でも、第3の移動状態であるとしてキーフレーム区間を確定する。これは、例えば、第3の移動状態である自動車状態やバス状態において、車両が渋滞等で頻繁に停止する場合、直前のキーフレームに対応する移動状態と、現在のキーフレームに対応する移動状態とが異なるためにキーフレーム区間を確定できなくなることを避けるためである。
【0093】
より詳細には、まず、現在のキーフレームに対応する移動状態が、直前のキーフレームに対応する移動状態と同一か否かを判定する(I1)。判定結果が同一である場合には、この移動状態が第1、第2、第3のいずれの移動状態かを判定する(I2)。そして、I3からI7までは、図8のその後の対応する処理(H3からH7まで)と同一の処理を行う。一方、判定結果が同一ではない場合に、直前のキーフレームに対応する移動状態が第2の移動状態であって、かつ現在のキーフレームに対応する移動状態が第3の移動状態であるか判定する(H8)。ここで、直前のキーフレームに対応する移動状態が第3の移動状態であって、かつ現在のキーフレームに対応する移動状態が第2の移動状態であるかも同様に判定することができる。H8による判定の結果が肯定的である場合は、直前のキーフレームから、現在のキーフレームまでの区間を、第3の移動状態に対応するキーフレーム区間であるとして確定する(H6)。ここで、直前の移動状態が第3で、現在の移動状態が第2である場合も、現在のキーフレームまでの区間を第3の移動状態に対応するキーフレーム区間であるとして確定する。以上のように、第3の移動状態である自動車状態やバス状態において、車両が渋滞等で頻繁に停止する場合であっても、第3の移動状態であるとしてキーフレーム区間を確定し、より早くキーフレーム区間の確定を行うことができる。
キーフレーム区間の解除処理
図10はキーフレーム区間の解除処理のフローを示す。キーフレーム区間は一旦設定されると、次のキーフレームが検知されるか、若しくは歩数及び/又は基地局情報に変化があるまでは解除されることはない。
【0094】
移動状態推定処理(F1からF10及びH1からH7)が行われた後に、図10によるキーフレーム区間の解除処理が行われる。ステップH7、又はI7により、移動状態が推定された後、推定結果が第2の移動状態である場合、即ちここでは停止状態である場合、加速度データの取得を止め、歩数、基地局情報のみを取得する。推定結果が第3の移動状態である場合、即ちここでは電車状態、自動車状態、バス状態である場合、加速度データの取得を止め、歩数のみを取得する。推定結果が第1の移動状態の場合、即ち、ここでは走行状態、歩行状態、自転車状態の場合、加速度データが取得される(F1)。
【0095】
次に、CPUは、キーフレーム区間のキーフレームに対応する移動状態が第1、第2、第3の移動状態のいずれであるかを判定する(J1)。キーフレームに対応する移動状態が第1の移動状態である場合には、CPUによる演算により、新たなキーフレームを検知する(J2)。即ち、ステップF1からF10までの処理を、新たなキーフレームが検知されるまで繰り返す。次に、検知されたキーフレームに対応する移動状態が、直前のキーフレームに対応する移動状態と同一か否か判定する(J3)。判定の結果、同一の移動状態ではない場合、キーフレーム区間を解除する(J4)。即ち、直前のキーフレームの次にあるフレームから、検知されたキーフレームまでのフレーム区間に対応する全てのフレームを、未確定フレームとしてそれぞれ確定する。ここで、キーフレーム区間の解除とは、キーフレーム(known)を未確定フレーム(unknown)へ戻す処理をいう。そして、次のフレーム区間の推定処理(F1からF10)を実施する(J5)。一方、判定の結果、同一の移動状態である場合は、次のフレーム区間の推定処理(F1からF10)を実施する(J5)。
【0096】
次に、キーフレームに対応する移動状態が第2の移動状態である場合には、CPUは歩数、若しくは基地局情報に変化があるか否か判定する(J6)。歩数、若しくは基地局情報に変化がある場合には、キーフレーム区間を解除する(J4)。即ち、直前のキーフレームの次にあるフレームから、検知されたキーフレームまでのフレーム区間に対応する全てのフレームを、未確定フレームとしてそれぞれ確定する。そして、次のフレーム区間の推定処理を実施する(J5)。一方、判定の結果、歩数、若しくは基地局情報に変化がない場合は、次のフレーム区間の推定処理(F1からF10)を実施する(J5)。
【0097】
次に、キーフレームに対応する移動状態が第3の移動状態である場合には、CPUは歩数に変化があるか否か判定する(J7)。歩数に変化がある場合には、キーフレーム区間を解除する(J4)。即ち、直前のキーフレームの次にあるフレームから、検知されたキーフレームまでのフレーム区間に対応する全てのフレームを、未確定フレームとしてそれぞれ確定する。そして、次のフレーム区間の推定処理を実施する(J5)。一方、判定の結果、歩数に変化がない場合は、次のフレーム区間の推定処理(F1からF10)を実施する(J5)。
【0098】
以上より、キーフレーム区間は、キーフレームに対応する移動状態の種別によって、異なる方法で解除される。以上より、キーフレーム区間を用いることにより、キーフレーム区間が解除されるまでは低消費電力モードで移動状態を推定することが可能となると共に、移動状態の変更を検知することが可能となる。
【発明の属する技術分野】
【0001】
本願発明は、ユーザの移動状態を推定する方法及びシステムに関し、特には、ユビキタス環境下におけるユーザの移動状態を携帯端末装置を用いて自動的に推定する方法及びシステムに関する。
【背景技術】
【0002】
近年、ユーザの移動状態を検出し、あるいはユーザの移動状態を正確に自動認識・識別する必要性が生じており、ユーザの移動状態の推定に関する技術が種々提案されている。しかしながら、従来、ユーザの一定の状態、例えば停止している状態、自動車、バス、電車に乗っている状態等を識別することは、ユーザからの情報を長時間にわたって測定しても移動状態の推定精度は低かった。従来、ユーザの移動状態を推定する際には、ユーザが有する加速度センサから得られるデータを用いて一定時間毎に1つのパワースペクトルを選定し、当該選定されたパワースペクトルと、各移動状態を代表するそれぞれの代表パワースペクトルとを比較して移動状態を推定していた。従って、選定された1つのパワースペクトルは時系列変化を含まず、突発的に加速度センサの変化が起こると、正しくユーザの状態を推定することができない場合があった。このため、従来のパワースペクトルのパターンマッチングでは突発的なノイズや振動パターンのぶれに対応することは困難であり、移動状態の推定精度の低下を招いた。
【0003】
さらに、非特許文献1においては、身体の複数箇所に加速度センサを装着し、「座る」「立つ」「歩く」「階段を上る」「階段を下る」「握手」「黒板への書き込み」「キーボードのタイピング」などの動作推定を行っている。また、非特許文献2、及び3は両手首、両足首、腿の5箇所に加速度センサを装着し、20種類の動作推定を行っている。
【0004】
しかしながら、これらの非特許文献においては、様々なセンサを用いて、人間の様々な動作状態を推定可能であるが、センサ装着箇所が複数必要であったり、装着方法が固定化されたりしている。従って、これらの方式を用いてユーザの移動状態を推定する場合、ユーザは重装備となるため利便性が低下し望ましくない。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】Nicky Kern、 "A Model for Human Interruptability: Experimental Evaluation and Automatic Estimation from Wearable Sensors、" ISWC'04、pp.158-165(2004).
【非特許文献2】Stephen S.Intille、 "Acquiring In Situ Training Data for Context-Aware Ubiquitous Computing Applications、"CHI 2004、 ACM Press、 pp. 1-9(2004).
【非特許文献3】L. Bao and S. S. Intille、"Activity recognition from user-annotated acceleration data、" in Proceedings of PERVASIVE 2004、vol. LNCS 3001、 A. Ferscha and F. Mattern、 Eds. Berlin Heidelberg: Springer-Verlag、2004、 pp. 1-17.
【発明の概要】
【発明が解決しようとする課題】
【0006】
本願発明は、上記の問題点の解決を目的とするものであり、人の手のひらサイズに収まる携帯端末装置に搭載された加速度センサ等の外部環境情報取得装置を用いて、ユーザの移動状態を短時間で精度高く自動的に推定する方法及びシステムを提供するものである。ここで、ユーザの移動状態とは例えば、走行、歩行、停止といった人間の活動状態と、自転車、自動車、バス、電車といった交通機関の乗車状態を指している。以下、上述した状態をそれぞれ、停止状態、歩行状態、走行状態、自転車状態、自動車状態、バス状態、電車状態と記す。また、自動車状態、バス状態、電車状態をまとめて電動車状態と記す。なお、携帯端末装置は人の手のひらサイズに収まる大きさであっても、それよりも小さい大きさであっても良い。
【0007】
従来、ユーザの移動状態を推定する際には、ユーザが有する加速度センサから得られるデータを用いて一定時間毎に1つのパワースペクトルを選定し、当該選定されたパワースペクトルと、各移動状態を代表するそれぞれの代表パワースペクトルとを比較して移動状態を推定していた。しかしながら、選定された1のパワースペクトルは、一般的に複数の移動状態に対応する代表パワースペクトルの特徴を含む。従って、1のパワースペクトルが、他の移動状態におけるパワースペクトルと類似する場合に、高い推定精度で移動状態を推定することが困難であった。
【0008】
また、選定された1つのパワースペクトルは時系列変化を含まず、突発的に加速度センサの変化が起こると、正しくユーザの状態を推定することができない場合があった。このため、従来のパワースペクトルのパターンマッチングでは突発的なノイズや振動パターンのぶれに対応することは困難であり、移動状態の推定精度の低下を招いた。
【0009】
また、従来は、様々なセンサを用いて、人間の様々な動作状態を推定していた。しかしながら、センサ装着箇所が複数必要であったり、装着方法が固定化されたりしている。さらに複数の装置は多くの電力を消費する。従って、これらの方式を用いてユーザの移動状態を推定する場合、ユーザは重装備となるため利便性が低下し望ましくない。
【課題を解決するための手段】
【0010】
本願発明は、ユーザの移動状態を推定するためのモデルを生成し、該生成されたモデルを用いて、移動状態にあるユーザの特徴パラメータから移動状態を特定することによりユーザの移動状態を推定することを目的とする。
【0011】
本願発明は、ユーザの加速度センサから得られる特徴パラメータの情報が、一般的に1又は複数の移動状態に対応する特徴を有していることに着目して、移動状態を推定することを特徴とする。本願発明は、ユーザの有する加速度センサから得られる1の推定用特徴パラメータに基づいて、実際のユーザの移動状態を、移動状態毎に確率として求め、もっとも確率の高い移動状態を選定することにより、移動状態の推定精度を高めるものである。また、本願発明により、ポケットや鞄に入れた状態、手に所持した状態、腕等に装着している状態等、携帯端装置の所持状態を推定することも可能となる。さらに、本願発明により、携帯端末装置を保有している人物を特定することも可能となる。
【0012】
また、本願発明は、特定の参照状態にて取得された学習用加速度データ・リストから生成されたクラスタ群からなるモデルを生成し、該生成されたモデルを用いて、ユーザの移動状態を推定するものである。単に加速度センサより得られたユーザの加速度データ値をフーリエ変換することにより求められたパワースペクトルは、加速度データの時系列変化に関する情報を有さない。本願発明はユーザの有する加速度センサから得られる特徴パラメータの時系列データを用いてモデルを作成し、該モデルを用いてユーザの移動状態を推定する。従って、本願発明においては、ユーザの移動状態を示す時系列のデータを用いてユーザの移動状態を推定するため、ユーザ移動状態に突発的な変化を含む場合や、他状態と類似する時間帯が発生する場合であっても、ユーザの移動状態を正しく推定することが可能となる。
【0013】
また、本願発明は、特定の参照状態にて取得された学習用加速度データ・リストから生成されたクラスタ群からなるモデルを用いて、ユーザの移動状態を推定するものである。1の加速度データから求められる特徴パラメータは、複数の移動状態における特徴パラメータと類似する場合がある。本願発明は、1の加速度データから求められる特徴パラメータが複数の移動状態における特徴パラメータと類似する場合であっても、モデルを用いることにより、該特徴パラメータが各移動状態に現れる頻度から移動状態を推定することが可能となる。従って、複数の移動状態における特徴パラメータと類似する場合であっても、ユーザの移動状態を高い精度で推定可能である。
【0014】
また、本願発明は、ユーザの移動状態推定の際に、複数の推定用モデル、即ち、第1モデル及び第2モデルを生成し、第1モデルから得られた推定結果と第2モデルから得られた推定結果とが等しいときに、第1モデルによって推定された移動状態は信頼性が高いとして、推定された移動状態を、ユーザの移動状態として特定する。このように本願発明は得られた推定結果の信頼性を評価し、信頼性が高い時間帯のみを抽出することにより、より信頼性の高い推定を可能とするものである。
【0015】
さらに、本願発明は、携帯端末装置が有する加速度センサを用いて主にユーザの移動状態を推定するものである。また、本願発明においては、加速度センサから得られる情報の他に、携帯端末装置に備える他の外部情報取得装置から得られる情報に基づいてユーザの移動状態を推定することも可能である。従って、ユーザは携帯端末装置の他に、装置を装備することなく、軽装備で移動状態の推定をすることが可能である。また、これらの外部情報取得装置は、加速度センサに比較して消費電力の少なく、外部情報を取得する際の処理負荷も小さい。本願発明において、通常は、ユーザの移動状態に変化があるか否かを、加速度センサに比してより消費電力の小さい、処理負荷の小さいこれらの外部情報取得装置により判断する。変化がある場合には、加速度センサを用いて移動状態を推定することにより、全体の推定処理にかかる処理負荷を低減させ、省電力化することが可能となる。
【0016】
また、本願発明は、加速度センサから得られる加速度に加えて、他の外部情報取得装置を複合的に用いることにより、移動状態を推定する。このように複数種類のユーザの外部情報を取得することにより、ユーザの移動状態の推定精度をさらに高めることが可能となる。
【0017】
以上より、本願発明は携帯端末装置の所持状態に依存せず、ユーザの置かれている環境に依存せず、ユーザによる操作を必要としないで自動で移動状態を推定することを特徴とする。また、比較的短期間に得られたセンサのデータを用いることで一回の推定処理にかかる負荷を低減すると共に、ユーザの移動状態の変化を短時間で検知することを特徴とする。
【0018】
本願発明は、少なくとも1つのCPU(中央処理装置)とメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータ(第1平均パワースペクトル)と、移動状態毎の確率を有する1の第1確率表(確率表)とに対応する複数の第1クラスタを格納し、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータ(推定用パワースペクトル)と、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、選定された第1クラスタに対応する第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定するステップと(第1推定)からなる方法を特徴とする。
【0019】
ここで、第1確率表は、各第1クラスタに含まれる学習用特徴パラメータに対応する移動状態毎の確率データを移動状態毎に有することを特徴とする。
【0020】
また、本願発明は、少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータ(第1平均パワースペクトル)と、移動状態毎の確率を有する1の第1確率表(確率表)とに対応する複数の第1クラスタを格納し、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータ(推定用パワースペクトル)と、1又は複数のパラメータから構成される各代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、選定された第1クラスタに対応する第1確率表に基づいて時系列に推定用セグメント確率表を算出するステップと、推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表(第2平均確率表)と、移動状態毎の確率を有する1の第2確率表(移動状態ランク表)とに対応する、複数の第2クラスタを生成するステップと、1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各第2代表確率表(第2平均確率表)とのパラメータ毎の差に基づいて、複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、選定された第2クラスタに対応する前記第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定するステップと、(第2推定)からなる方法を特徴とする。
【0021】
ここで、第2確率表(移動状態ランク表)は、前記各第2クラスタに含まれる学習用セグメント確率表に対応する移動状態毎の確率データを移動状態毎に有することを特徴とする。
【0022】
また、本願発明は、少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUが、時系列にメモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、選定された第1クラスタに対応する第1確率表に基づいて算出された時系列にメモリに格納された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定ステップと(第1推定)、推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成するステップと、1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、複数のクラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定ステップと、第1の推定ステップ、および第2の推定ステップにより推定された結果を用いて移動状態を推定するステップと、からなる方法を特徴とする。
【0023】
さらに、本願発明はキーフレームを用いた移動状態推定を特徴とする。より詳細には、本願発明は、少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUは、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、選定された第1クラスタに対応する第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定ステップと(第1推定)、
推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成するステップと、1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各第2代表確率表(第2平均確率表)とのパラメータ毎の差に基づいて、複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定ステップと(第2推定)、第1の推定ステップ、および第2の推定ステップにより推定された結果が第5の条件を満足する場合に、該第5の条件により求められた結果に対応するフレームをキーフレームとして、フレーム・リストへ順次格納することによりフレーム・リストを生成するステップと、生成されたフレーム・リストにおいて、一のキーフレームと、その直前の一のキーフレームとが同一の移動状態に対応する場合に、該一のキーフレームに対応する移動状態が、所定の移動状態の場合に、該一のキーフレームと、該その直前の一のキーフレームとの間において、所定の条件を満たしているか判定するステップと、該所定の条件を満たしている場合に、該直前の一のキーフレームから該一のキーフレームに対応する移動状態を該キーフレームに対応する移動状態として確定することにより、移動状態を推定するステップと、からなる方法を特徴とする。
【0024】
さらに、本願発明は、クラスタリングにより第1モデルを生成することを特徴とする。より詳細には、本願発明は、少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態の推定に用いるモデルを生成する方法であって、該CPUが、時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の該学習用特徴パラメータからなる第1クラスタの群を生成するステップと、該第1クラスタの群において、該第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とに対応する第1クラスタを生成するステップと(第1モデル)、を含む方法を特徴とする。
【0025】
さらに、本願発明は、クラスタリングにより第1モデル、及び第2モデルを生成することを特徴とする。より詳細には、本願発明は、少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態の推定に用いる第1及び第2モデルを生成する方法であって、該CPUが、時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータ(学習用パワースペクトル)を複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の学習用特徴パラメータからなる第1クラスタの群を生成するステップと、第1クラスタの群において、該第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とが対応する第1クラスタを生成するステップと(第1モデル)、学習用特徴パラメータ毎に、該学習用特徴パラメータと、代表特徴パラメータとのパラメータ毎の差に基づいて、該差が所定の条件を満足する1の第1クラスタを順次選定するステップと、該順次選定された第1のクラスタの所定数毎に、各第1クラスタに対応する各第1確率表に基づいて、学習用セグメント確率表を算出するステップと、該算出された各学習用セグメント確率表を複数の第2クラスタにクラスタリングし、該各第2クラスタは1又は複数の学習用セグメント確率表からなる第2クラスタの群を生成するステップと、第2クラスタの群において、第2クラスタ毎に、該各第2クラスタを代表する1の第2代表確率表と、各移動状態が出現する確率を表す第2確率表と、が対応する第2クラスタを生成するステップと(第2モデル)、を含む方法を特徴とする。
【0026】
さらに、本願発明は、歩数、基地局情報を用いた移動状態の推定を特徴とする。より詳細には、本願発明は、少なくとも1つのCPUと、歩数計と、アンテナと、加速度センサとを備える携帯端末装置の移動状態の変化を検知する方法であって、該携帯端末装置は該歩数計により第1の情報(歩数)を、該アンテナにより第2の情報(基地局情報)を、該加速度センサにより第3の情報(加速度)を取得可能であって、該CPUは、推定された移動状態が第1の移動状態(走行、歩行、自転車状態)の場合には第1の情報のみを取得し、該第1の情報が該第1の移動状態に対応している場合には、該推定された第1の移動状態を推定結果として取得し、前記第3の情報に変化があるか否かを監視するステップと、推定された移動状態が第2の移動状態(停止状態)の場合には、前記第1の情報及び第2の情報を取得し、前記第1の情報及び前記第2の情報が第2の移動状態に対応している場合には、該推定された第2の移動状態を推定結果として取得し、前記第1の情報(歩数)及び前記第2の情報に変化があるか否かを監視するステップと、推定された移動状態が第3の移動状態(電車、自動車、バス状態)の場合には、前記第1の情報を取得し、前記第1の情報が第3の移動状態に対応している場合には、該推定された第3の移動状態を推定結果として取得し、前記第1の情報に変化があるか否かを監視するステップと、からなる移動状態の変化を検知する方法を特徴とする。
【0027】
さらに、本願発明は、携帯端末装置の移動状態を推定する携帯端末装置に関する。より詳細には、携帯端末装置の移動状態を推定する携帯端末装置であって、複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、CPUとであって、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、選定された第1クラスタに対応する確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する(第1推定)携帯端末装置を特徴とする。
【0028】
さらに、本願発明は、携帯端末装置の移動状態を推定する携帯端末装置であって、
複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、CPUと、であって、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、該複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、選定された第1クラスタに対応する第1確率表に基づいて時系列に推定用セグメント確率表を算出し、推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各第2代表確率表とのパラメータ毎の差に基づいて、複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定し、選定された第2クラスタに対応する前記第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する(第2推定)携帯端末装置と特徴とする。
【0029】
さらに、本願発明は、携帯端末装置であって、複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、CPUと、であって、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、選定された第1クラスタに対応する前記第1確率表に基づいて算出された時系列にメモリに格納された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定をし(第1推定)、推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各第2代表確率表とのパラメータ毎の差に基づいて、複数のクラスタから該差が第3の条件を満足する1の第2クラスタを選定し、選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定をし(第2推定)、第1の推定ステップ、および前記第2の推定ステップにより推定された結果を用いて移動状態を推定する、携帯端末装置を特徴とする。
【0030】
さらに、本願発明は、携帯端末装置の移動状態を推定する携帯端末装置であって、複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、CPUと、であって、該CPUが、時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、選定された第1クラスタに対応する前記第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定をし(第1推定)、推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、1又は複数のパラメータから構成される前記推定用セグメント確率表と、1又は複数のパラメータから構成される各第2代表確率表とのパラメータ毎の差に基づいて、複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定し、選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定をし(第2推定)、前記第1の推定ステップ、および前記第2の推定ステップにより推定された結果が第5の条件を満足する場合に、該第5の条件により求められた結果に対応するフレームをキーフレームとして、フレーム・リストへ順次格納することによりフレーム・リストを生成し、前記生成されたフレーム・リストにおいて、一のキーフレームと、その直前の一のキーフレームとが同一の移動状態に対応する場合に、前記一のキーフレームに対応する移動状態が、所定の移動状態の場合に、前記一のキーフレームと、前記その直前の一のキーフレームとの間において、所定の条件を満たしているか判定し、前記所定の条件を満たしている場合に、前記直前の一のキーフレームから前記一のキーフレームに対応する移動状態を前記キーフレームに対応する移動状態として確定することにより、移動状態を推定する携帯端末装置を特徴とする。
【0031】
さらに、本願発明は、携帯端末装置の移動状態の推定に用いるモデルを生成するシステムであって、全ての移動状態に対応する複数の学習用特徴パラメータを時系列に格納しているメモリと、CPUと、であって、該CPUが時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の学習用特徴パラメータからなる第1クラスタの群を生成し、該第1クラスタの群において、該第1クラスタ毎に該各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とに対応する第1クラスタを生成する(第1モデル)、を含むシステムを特徴とする。
【0032】
さらに、本願発明は、携帯端末装置の移動状態の推定に用いる第1及び第2モデルを生成するシステムであって、全ての移動状態に対応する複数の学習用特徴パラメータを時系列に格納しているメモリと、CPUと、であって、該CPUが、時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の該学習用特徴パラメータからなる第1クラスタの群を生成し、該第1クラスタの群において、該第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とが対応する第1クラスタを生成し(第1モデル)、該学習用特徴パラメータ毎に、該学習用特徴パラメータと、代表特徴パラメータとのパラメータ毎の差に基づいて、該差が所定の条件を満足する1の第1クラスタを順次選定し、該順次選定された第1のクラスタの所定数毎に、各第1クラスタに対応する各第1確率表に基づいて、学習用セグメント確率表を算出し、該算出された各学習用セグメント確率表を複数の第2クラスタにクラスタリングし、該各第2クラスタは1又は複数の該学習用セグメント確率表からなる第2クラスタの群を生成し、該第2クラスタの群において、第2クラスタ毎に、該各第2クラスタを代表する1の第2代表確率表と、各移動状態が出現する確率を表す第2確率表と、が対応する第2クラスタを生成する(第2モデル)、システムを特徴とする。
【0033】
さらに、本願発明は、少なくとも1つのCPUと、歩数計と、アンテナと、加速度センサとを備える携帯端末装置の移動状態の変化を検知するシステムであって、該携帯端末装置は該歩数計により第1の情報を、該アンテナにより第2の情報を、該加速度センサにより第3の情報を取得可能であって、該CPUは、推定された移動状態が第1の移動状態の場合には第1の情報のみを取得し、該第1の情報が該第1の移動状態に対応している場合には、該推定された第1の移動状態を推定結果として取得し、前記第3の情報に変化があるか否かを監視し、推定された移動状態が第2の移動状態の場合には、該第1の情報及び第2の情報を取得し、該第1の情報及び該第2の情報が第2の移動状態に対応している場合には、該推定された第2の移動状態を推定結果として取得し、該第1の情報及び前記第2の情報に変化があるか否かを監視し、推定された移動状態が第3の移動状態の場合には、該第1の情報を取得し、該第1の情報が該第3の移動状態に対応している場合には、該推定された第3の移動状態を推定結果として取得し、第1の情報に変化があるか否かを監視する、移動状態の変化を検知するシステムを特徴とする。
【図面の簡単な説明】
【0034】
【図1】本願発明の一実施態様におけるシステム構成図である。
【図2】学習用モデル作成処理のフロー図である。
【図3】学習用パワースペクトル(PS)・リストの生成処理のフロー図である。
【図4】学習用パワースペクトル・リストの群をクラスタリングする処理のフロー図である。
【図5】学習用セグメント確率表リストのクラスタリング処理のフロー図である
【図6】第1モデル及び第2モデルを用いた移動状態の推定処理のフロー図である。
【図7】本願発明の他の実施態様におけるシステム構成図である。
【図8】第1モデル及び第2モデルを用いた推定に加えて、外部情報取得装置からの情報を用いて移動状態を推定する処理のフロー図である。
【図9】第1モデル及び第2モデルを用いた推定に加えて、外部情報取得装置からの情報を用いて移動状態を推定する他の実施態様における処理のフロー図である。
【図10】キーフレーム区間の解除処理のフロー図である。
【図11A】本願発明において生成されるデータ表を示した図である。学習用パワースペクトル・リストの群のデータ構成を示した図である。
【図11B】本願発明において生成されるデータ表を示した図である。第1クラスタの群のデータ構成を示した図である。
【図11C】本願発明において生成されるデータ表を示した図である。学習用シンボル列のデータ構成を示した図である。
【図11D】本願発明において生成されるデータ表を示した図である。学習用セグメント確率表リストのデータ構成を示した図である。
【図11E】本願発明において生成されるデータ表を示した図である。第2クラスタの群のデータ構成を示した図である。
【図11F】本願発明において生成されるデータ表を示した図である。推定用パワースペクトル・リストのデータ構成を示した図である。
【図11G】本願発明において生成されるデータ表を示した図である。推定用シンボル列のデータ構成を示した図である。
【図11H】本願発明において生成されるデータ表を示した図である。第1モデル及び第2モデルによる推定結果と、フレーム・リストとを時系列にメモリに格納したデータ構成を示した図である。
【発明を実施するための最良の形態】
【0035】
図1は本願発明の一態様によるユーザ移動状態推定方式のシステム構成を示した図である。ユーザ移動状態推定方式は、例えば携帯端末装置に搭載され、携帯端末装置(A1)は加速度センサ(A50)、メモリ、中央演算装置(CPU)(A10)を含む。メモリにはヒープメモリ(A20)、フラッシュメモリ(A30)があっても良い。ここで、加速度センサは、加速度データを取得し、センサ内のメモリ空間へ加速度データを格納する。CPUは例えば、プログラムをフラッシュメモリからロードして、ヒープメモリへ格納するよう命令する。フラッシュメモリは例えば、データ取得関数等のプログラムを格納する。ヒープメモリは例えば、フラッシュメモリに格納されているプログラムを一時的に格納する。
モデルの生成
図2はモデルを生成するためのフロー図である。まず、全ての参照状態における学習用加速度データを参照状態毎に取得し、学習用特徴パラメータの群を生成する。本実施態様においては、学習用特徴パラメータの群として、学習用パワースペクトル・リストの群を生成する(B1)。学習用パワースペクトルのリストの群は、CPUによる演算により、学習用加速度データから、加速度値からなる関数をその周波成分の連続スペクトルに分解(例えば、フーリエ変換)することにより生成され、フラッシュメモリに格納される。なお、学習用特徴パラメータは、学習用パワースペクトル(学習用PS)の最大振幅周波数や、学習用加速度の3軸加速度ベクトル、加速度値の2乗和、加速度値の2乗和の分散値とすることもできる。学習用パワースペクトル・リストの群は、全ての移動状態の学習用パワースペクトル・リストからなり、学習用パワースペクトル・リストは、ある参照状態における全ての学習用パワースペクトルからなる。それぞれの学習用パワースペクトルはそれぞれ一の参照状態における移動状態に対応している。参照状態には、人間の活動状態だけではなく、人間が乗車している状態まで含めた状態、例えば歩行状態、走行状態、停止状態、自転車状態、自動車状態、バス状態、電車状態が含まれ、携帯端末装置を有しているユーザがとりうると想定される状態を参照状態として予め規定しておく。モデルの作成にあたって、事前に様々な条件下で参照状態毎に参照ユーザの有する加速度センサからの学習用加速度データを取得しておく。参照状態におけるユーザのデータは、想定しうる携帯端末装置の所持状態、例えばポケットや鞄に入れた状態、手のひらに所持している状態、腕等に装着している等、さまざまな状態に基づいて取得することができる。また、参照状態におけるユーザのデータは、想定しうるユーザの特徴、例えば性別、年齢、身長や体重等に基づいて取得することもできる。そしてモデルは、該参照状態において取得された十分なバリエーションのデータを元に生成される。
【0036】
より詳細には、CPUが、あらかじめ、モデル作成関数(フーリエ変換関数、クラスタリング関数、パターンマッチング関数、シンボル列生成関数で構成)をフラッシュメモリから読み込み、ヒープメモリ上にロードする。モデル作成関数内のフーリエ変換関数により、CPUが学習用パワースペクトル・リストを計算し、算出結果をヒープメモリに蓄積する。
【0037】
次に、生成された学習用パワースペクトル・リストの群をクラスタリングする(B2)。より詳細には、モデル作成関数内のクラスタリング関数により、CPUが全ての参照状態に対応する学習用パワースペクトル・リストの群に含まれる、全ての学習用パワースペクトル(N個)をフラッシュメモリから読み込みし、ヒープメモリに展開した上で、クラスタリング関数に読み込ませることにより、クラスタリングする。ここで、学習用パワースペクトル・リストの群は、全ての参照状態に対応する学習用パワースペクトル・リストからなる群である。移動状態毎に個別のIDが設定されており、各学習用パワースペクトルには、参照状態における移動状態のIDがそれぞれ関連付けられている。学習用パワースペクトル・リストの群は、1の学習用パワースペクトル毎に、対応する1の移動状態のIDと、周波数(i)毎の学習用パワースペクトルの振幅とから構成される(図11A)。本実施態様においては、図11Aに示されるように7つの移動状態を全ての参照状態とする。また、nは任意の整数であり、iは任意の正の数である。クラスタリングとは、分類対象の集合を、内的結合と外的分離が達成されるような部分集合に分割することをいう。なお、学習用パワースペクトルのクラスタリングは、図4に示される処理フローに従って行われる。
第1モデルの生成
次に、モデルの生成(第1モデルの生成)を行う(B3)。第1モデルは、学習用パワースペクトル・リストの群に含まれる学習用パワースペクトルの各々をクラスタリングすることにより生成される。従って、第1モデルは、1又は複数の学習用パワースペクトルを有するクラスタの集まり(第1クラスタの群)で構成される。ここで、クラスタとは、一般的にある集合を分割した後の各部分集合をいい、クラスタ群とは、このようなクラスタの集まりをいう。
【0038】
第1モデルに含まれる各第1クラスタは、それぞれ1又は複数の学習用特徴パラメータを有し、また各第1クラスタは、それぞれ1の第1代表特徴パラメータ、及び1の確率表に対応する。本実施態様においては、CPUによる演算により、各第1クラスタを代表する第1代表特徴パラメータとして、第1平均パワースペクトル(PS)が求められる。第1平均パワースペクトルは、第1クラスタ内に含まれる各学習用パワースペクトルの周波数毎の振幅の平均値を求め、求められた平均値を周波数毎の大きさとすることにより求められる。なお、本実施形態においては第1代表特徴パラメータとして平均パワースペクトルを用いているが、第1代表特徴パラメータは、対応するクラスタを代表する特徴パラメータで構成されるものであれば良く、種々の条件に基づいて求めることができる。第1平均パワースペクトルは、クラスタリング過程、即ち図4のステップ実行中は、ヒープメモリへ格納され、クラスタリング完了後はフラッシュメモリに格納される。また、各第1クラスタに対応する確率表は、各第1クラスタに含まれる全ての学習用パワースペクトルにおいて、各学習用パワースペクトルに対応する移動状態のIDが含まれる確率を、移動状態毎に求めることにより生成される。従って、確率表は、各学習用パワースペクトルに対応する各移動状態のIDがクラスタ内に含まれる確率を移動状態毎に求めた値と、それに対応する移動状態のIDとを関連付けるデータ表である。そして、CPUは、クラスタ毎に生成された確率表をフラッシュメモリに書き込む。以上より、CPUは、クラスタリングされた第1クラスタ(M個)のそれぞれに対して、クラスタのIDと第1平均パワースペクトル、及び確率表を対応させ、第1クラスタ群を構成する(図11B)。
【0039】
次に、学習用パワースペクトルと最近傍の第1平均パワースペクトルに対応する第1クラスタを選定する(B4)。より詳細には、モデル作成関数内のパターンマッチング関数により、学習用パワースペクトルからなるクラスタ群の内の各クラスタにおける第1平均パワースペクトルと、学習用パワースペクトルとをそれぞれパターンマッチングする。即ち、学習用パワースペクトル・リストへ時系列に格納された1の学習用パワースペクトル・リストをCPUがロードし、クラスタ群の各クラスタに対応するそれぞれ1の第1平均パワースペクトルとの、周波数毎の振幅の誤差の総和(パワースペクトルの場合)を算出する。CPUは、算出された総和が最小の第1平均パワースペクトルを求め、求められた第1平均パワースペクトルを、学習用パワースペクトルと最近傍の第1平均パワースペクトルとして選定し、当該第1平均パワースペクトルに対応するクラスタのシンボルをメモリへ格納する(シンボル化)。ここで、各クラスタには個別のシンボルがそれぞれ1つ割り振られている。
【0040】
次に、CPUは、学習用パワースペクトル・リストの群に含まれる全ての学習用パワースペクトルがシンボル化されたか否か判定する(B5)。ステップB5において、全ての学習用パワースペクトルがシンボル化されていない場合は、前回ロードされた学習用パワースペクトルの次に格納されている学習用パワースペクトルをロードし、該ロードされた学習用パワースペクトルに対して、ステップB4を繰り返し、前回に格納されたシンボルの次のアドレスへ第1平均パワースペクトルに対応するクラスタのシンボルをシンボル列へ格納する。一方、ステップB5において、学習用パワースペクトル・リストの群に含まれる全ての学習用パワースペクトルがシンボル化されている場合は、メモリへ格納されたシンボル化されたシンボルの列を、学習用シンボル列(図11C)として、ヒープメモリに格納する(B6)。
【0041】
次に、学習用セグメント確率表を生成する(B7)。より詳細には、まずCPUが、学習用シンボル列の一定区間(セグメント)において格納されている各シンボルに対応する確率表をそれぞれフラッシュメモリからロードする。ここで、学習用シンボル列に含まれる個々の第1クラスタのシンボルには1の確率表がそれぞれ対応している。一定区間は、予め定められおり、複数個(a個)のシンボルが含まれる一定の区間である。本一定区間が短すぎると、突発的に発生するノイズによる影響を大きく受けて推定誤差が大きくなることがある。また本区間が長すぎると、期間内に発生しうる移動状態の変化をタイミング良く把握できなくなることがある。そして、CPUによる演算によりロードされた各確率表の1の移動状態における確率の平均を、移動状態毎に算出する。学習用セグメント確率表は、一定区間に対する移動状態毎に算出された平均確率と、移動状態とを関連付けたデータ表である。生成された学習用セグメント確率表は、一定区間毎にヒープメモリへ時系列に格納される。
【0042】
次に、学習用セグメント確率表が、学習用シンボル列の全区間(N/a区間)において生成されたか否か判定する(B8)。ここで、学習用シンボル列の全区間とは、学習用シンボル列の全体を一定区間毎に区切った場合の全ての区間である。ステップB8において、学習用シンボル列の全区間に対応する学習用セグメント確率表が生成されていない場合は、ステップB7の処理を繰り返す。ここで、学習用セグメント確率表を時系列に格納したものを、学習用セグメント確率表リストとする。ステップB8において、学習用シンボル列の全区間に対応する学習用セグメント確率表が生成されている場合は、学習用セグメント確率表リストの生成は終了し(B9)、生成結果はヒープメモリへ格納される。
【0043】
次に、生成された学習用セグメント確率表リストに含まれる全ての学習用セグメント確率表をクラスタリングする(B10)。より詳細には、モデル作成関数内のクラスタリング関数により、CPUが学習用セグメント確率表リストに含まれる全ての学習用セグメント確率表を対象にクラスタリングを行う。なお、学習用セグメント確率表のクラスタリングは、図5に示される処理フローに従って行われる。
第2モデルの生成
次に、第2モデルの生成を行う(B11)。第2モデルは、学習用セグメント確率表リストに含まれる学習用セグメント確率表の各々をクラスタリングすることにより生成される。従って、第2モデルは、1又は複数の学習用セグメント確率表をそれぞれ有するクラスタの集まり(第2クラスタの群)で構成される。まず、CPUによる演算により、学習用セグメント確率表をクラスタリングする。そして、クラスタリング結果はフラッシュメモリへ格納される。
【0044】
クラスタリングにより、第2モデルを構成する第2クラスタ群に含まれる各第2クラスタは、それぞれ1又は複数の学習用セグメント確率表を有する。また、各第2クラスタはそれぞれ1の第2代表確率表、及び1の移動状態ランク表に対応する。本実施態様においては、CPUによる演算により、各第2クラスタに対応する第2代表確率表として、第2平均確率表が求められる。第2平均確率表は、第2クラスタ内に含まれる各学習用セグメント確率表の移動状態毎の確率の平均値を求め、求められた平均値を移動状態毎の確率とすることにより求められる。なお、本実施形態においては第2代表確率表として各学習用セグメント確率表の平均を用いているが、第2代表確率表は、対応するクラスタを代表する特徴パラメータで構成されるものであれば良く、種々の条件に基づいて求めることができる。
【0045】
また、各第2クラスタに対応する移動状態ランク表は、各第2クラスタに含まれる全ての学習用セグメント確率表において、各学習用セグメント確率表に対応する移動状態のIDが含まれる確率を、移動状態毎に求めることにより生成される。従って、移動状態ランク表は、第2クラスタに含まれる各学習用セグメント確率表に対応する各移動状態のIDがクラスタ内に含まれる確率を移動状態毎に求めた値と、それに対応する移動状態のIDとを関連付けるデータ表である。そして、CPUは、クラスタ毎に生成された移動状態ランク表をフラッシュメモリに書き込む。以上より、CPUは、クラスタリングされた第2クラスタ(P個)のそれぞれに対して、クラスタのIDと第2代表確率表、及び移動状態ランク表とを対応させ、第2クラスタ群を構成する(図11E)。
学習用特徴パラメータ・リストの生成
図3は学習用特徴パラメータ・リストの生成処理のフロー図である。図2のステップB1に対応する処理である。本実施態様においては、学習用特徴パラメータ・リストとして、学習用パワースペクトル・リストを生成する。学習用パワースペクトル・リストは、学習用モデルを生成するために利用されるデータ・リストであり、ある特定の移動状態における参照状態のデータを一定期間取得することにより生成される。ここで、学習用特徴パラメータは、学習用パワースペクトルの最大振幅周波数や、学習用加速度の3軸加速度値ベクトル、学習用加速度の加速度値の2乗和、加速度値の2乗和の分散値とすることも可能である。
【0046】
まず、加速度センサから参照状態の学習用加速度データ(x、y、z)を取得する(C1)。なお、ここではx、y、zは3軸上の加速度であるが、1軸、または2軸上の加速度でも良い。より詳細には、CPUは、あらかじめ、学習用パワースペクトル・リスト生成関数(加速度値算出、時間間隔判定、加速度値の時間窓データ算出関数、FF変換関数)、及び加速度センサのデバイス・ドライバをフラッシュメモリから読み込み、ヒープメモリ上にロードする。そして、CPUがデバイス・ドライバにより、加速度センサを起動し、計測を開始する。デバイス・ドライバは、加速度センサの測定値(学習用加速度データ)を読み出し、ヒープメモリに蓄積する。
【0047】
次に、加速度値算出関数により、CPUがヒープメモリから学習用加速度データを読み込み、CPUによる演算により学習用加速度データから加速度値α=(x2+y2+z2)1/2を生成し(C2)、ヒープメモリへ蓄積する。
【0048】
そして、加速度値の時間窓データ算出関数により、CPUは所定期間(例えば2秒間)にわたって加速度値αを生成し、加速度の学習用の時間窓データを生成し(C3)、その結果をヒープメモリへ蓄積する。ここで、例えばサンプリングレートを128Hzとすると、加速度の学習用の時間窓データは2秒間で256個の加速度値αからなる。また、サンプリングレートが256Hzの加速度センサであれば、所定期間は1秒間でも良い。
【0049】
次に、時間間隔判定関数により、CPUが前回の学習用パワースペクトル生成時刻をヒープメモリから読み出し、経過時間を計測し、閾値を超えているか判断し、閾値を超えていない場合は加速度の学習用の時間窓データを生成するステップを繰り返す(C4)。閾値を超えている場合はステップD5に移る。
【0050】
次に、CPUは、FF変換関数により、ヒープメモリから加速度の時間窓データの束(ここで、取得された時間窓データの束を時系列データ・リストという)を読み出し、それぞれの時間窓データをフーリエ変換して学習用パワースペクトルを算出し(C5)、ヒープメモリへそれぞれ蓄積する。なお、時間窓データをフーリエ変換して得られた学習用パワースペクトルのうち、所定の周波数帯域のスペクトル、例えば1〜10Hzのスペクトルを用いることができる。加速度の時間窓データを取得するステップを繰り返す間隔は、前記所定期間であっても良いし、それよりも長いまたは短い間隔でもよい。本実施態様においては、例えば2秒間の時間窓のずらし幅を0.5秒間に設定する。
【0051】
以上により、格納された学習用パワースペクトルのリストを学習用パワースペクトル・リストとする。
学習用特徴パラメータ・リストの群のクラスタリング
図4は学習用特徴パラメータ・リストの群のクラスタリング処理フロー図である。本処理は図2のステップB2に対応する処理である。本実施態様においては、学習用特徴パラメータ・リストとして、学習用パワースペクトル・リストを用いる。ここで、学習用パワースペクトル・リストとは、1の移動状態における参照状態の学習用パワースペクトルから構成されるリストであり、学習用パワースペクトル・リストの群とは、全移動状態の参照状態における学習用パワースペクトル・リストから構成されるリスト群である。
【0052】
学習用パワースペクトル・リストの群に含まれる全ての学習用パワースペクトルのクラスタリングにより、分類対象である複数の学習用パワースペクトルは、類似する学習用パワースペクトルが同じ部分集合になるように分類される。代表的なクラスタリング手法にはk−means法がある。k−means法は、入力データからK個のランダムな個体を初期クラスタの中心として選択し、以降、クラスタの重心を移動させるステップを繰り返すことでクラスタリングを行う非階層的手法である。ここでは、例えばk−means法を用いてクラスタリングを行う。なお、K−means法に代えて、SVM等を用いることも可能である。SVM(Support Vector Machine)は2クラスの分類を行う学習機械の一種で、与えられた訓練点のなかでサポートベクトルと呼ばれるクラス境界近傍に位置する訓練点と識別面との距離であるマージンを最大化するように分離超平面を構築しクラス分類を行う。
【0053】
まず、CPUは、モデル作成関数内のクラスタリング関数をフラッシュメモリから読み込みヒープメモリに展開する。そして、学習用パワースペクトル・リストの群に含まれる全ての学習用パワースペクトルをランダムに2つのクラスタに分類する(D1)。分類結果はヒープメモリに格納に格納される。「全ての学習用パワースペクトル」とは、当初は、全参照状態分の学習用パワースペクトル・リストに含まれる全ての学習用パワースペクトルである。この当初の全参照状態分の学習用パワースペクトル・リストに含まれる全ての学習用パワースペクトルの集合を学習用パワースペクトルの「初期母集団」とする。また、ステップD1において、これから各クラスタに分類されるであろう、全ての学習用パワースペクトルの集合を「母集団」とする。なお、本実施態様においては2つのクラスタへ分類している。これは、3以上のクラスタへ分類すると、一つの群に最も特徴のある学習用パワースペクトルが集中して分類され、他の群における学習用パワースペクトルの特徴は考慮されなくなるため、複数の移動状態を推定することが困難となる場合があるためである。なお、最も特徴のある1の移動状態のみを推定する場合には、3以上へのクラスタへ分類することも有効である。
【0054】
次に、ステップD1にて分類されたクラスタ内の全ての学習用パワースペクトルから、平均パワースペクトルを求め、該求められた平均パワースペクトルを代表パワースペクトルとする(D2)。より詳細には、各学習用パワースペクトルの周波数毎の振幅の平均値を求め、求められた平均値を周波数毎の大きさとする平均パワースペクトルを代表パワースペクトルとする。なお、本実施形態においては代表パワースペクトルとして平均パワースペクトルを用いているが、代表パワースペクトルは、対応するクラスタを代表する特徴パラメータで構成されるものであれば良く、種々の条件に基づいて求めることができる。
【0055】
次に、母集団内の全ての学習用パワースペクトルを、距離の近い代表パワースペクトルへ分類する(D3)。より詳細には、例えばそれぞれ1の学習用パワースペクトルと、各クラスタの代表パワースペクトルとの周波数毎の振幅の誤差の総和を算出する。そして、算出された総和が小さい方の代表パワースペクトルに対応するクラスタへ1の学習用パワースペクトルを分類する。従って、それぞれの学習用パワースペクトルは、周波数毎の誤差の総和の差がより小さい、即ち、より距離の近い代表パワースペクトルを有する一方のクラスタへ分類される。
【0056】
次に、ステップD3における分類結果に基づいて、各クラスタに含まれる全ての学習用パワースペクトルからそれらの平均パワースペクトルを算出し、算出された結果を各クラスタの代表パワースペクトルとして更新する(D4)。より詳細には、分類されたクラスタに含まれる全ての学習用パワースペクトルに基づいて、周波数毎に学習用パワースペクトルの大きさの平均値を算出する。そして、算出された平均値を周波数毎に有する新たなパワースペクトルを新たな代表パワースペクトルとして、クラスタ毎にそれぞれ更新し、ヒープメモリへ格納する。
【0057】
次に、ステップD3において学習用パワースペクトルが各クラスタへ分類された結果が、直前の分類結果と同等か否か判定する(D5)。本実施態様においては、例えばそれぞれのクラスタに含まれる分類された学習用パワースペクトルの周波数毎の平均値が、直前に分類された学習用パワースペクトルの周波数毎の平均値と同じか否か判定する。ここで、それぞれのクラスタに含まれる分類された学習用パワースペクトルの平均値と、直前に分類された学習用パワースペクトルの周波数毎の平均値との誤差を算出し、誤差の総和がしきい値以下か否か判定しても良い。しきい値に基づいて判定する場合はより早く分類結果が収束するため、処理速度が向上する。分類された結果が直前の分類結果と同等ではない場合、ステップD3、及びD4の処理を繰り返す。分類された結果が直前の分類結果と同等の場合、各クラスタに含まれる学習用パワースペクトルの個数が、どちらのクラスタに多いか/少ないかを比較する(D6)。
【0058】
分類されたクラスタに含まれる個数が少ない場合は、該クラスタに属する学習用パワースペクトルに基づいて確率表が生成される(D7)。そして、生成結果はヒープメモリへ格納される。より詳細には、確率表は、該クラスタに含まれる全ての学習用パワースペクトルにおいて、各学習用パワースペクトルに対応する移動状態のIDが含まれる確率を、移動状態毎に求め、求められた移動状態毎のIDが含まれる確率と、それに対応する移動状態とを関連付けることにより生成される。即ち、確率表は、各学習用パワースペクトルに対応する各移動状態のIDがクラスタ内に含まれる確率を移動状態毎に求めた値と、それに対応する移動状態のIDとを関連付けたデータ・リストである。そして、CPUは、該個数の少ないクラスタに属する全ての学習用パワースペクトルを母集団から除き(D8)、ヒープメモリへ格納する。該個数の少ないクラスタに属する全ての学習用パワースペクトルを除いた母集団が、次の母集団となる。次に、該個数の少ないクラスタに含まれる学習用パワースペクトルの数が、初期母集団の一定割合以下かの判定(母集団の規模判定)、又は更なるクラスタリングが不可能であるかの判定をする(D8)。ここで、一定割合とは、初期母集団に含まれる学習用パワースペクトルの数と、分類されたクラスタに含まれる学習用パワースペクトルの数との割合であり、予め規定されている。また、更なるクラスタリングが不可能である場合とは、全ての学習用パワースペクトルが、片方のクラスタにマッピングされた状態をいう。ここで、母集団の規模判定や、更なるクラスタリングが不可能であるかの判定に加えて、例えば、移動状態の分布の偏りに基づいて判定することもできる。移動状態の分布の偏りに基づく判定とは、該個数の少ないクラスタに属する全ての学習用パワースペクトルを用いて、各移動状態の出現する確率を算出し、最高確率に対応する移動状態の確率が、第2位の確率に対応する移動状態の確率の倍以上であるか否かを判定することをいう。ここで、倍以上である場合には、該クラスタのクラスタリング処理が終了し1つの第1モデルが生成される。倍以下である場合には、ステップD1へ戻り引き続きクラスタリング処理が行われる。
【0059】
一方、分類されたクラスタに含まれる個数が多い場合は、該クラスタに含まれる学習用パワースペクトルの数が、初期母集団の一定割合以下か、又は更なるクラスタリングが不可能であるか判定する(D9)。ステップD9における判定の結果が否定的である場合、さらにステップD1からD6の処理を繰り返す。これは、クラスタに含まれる学習用パワースペクトルの個数が多いため、更なるクラスタリング処理によって、学習用パワースペクトルの分類が必要であることを意味する。一方、ステップD9における判定の結果が肯定的である場合、クラスタリングにより学習用パワースペクトルの分類が収束しており、クラスタリングによりクラスタが、すでに適切な大きさに細分化されていることを意味する。そして、当該クラスタに対応する確率表を生成し、学習用パワースペクトル・リストのクラスタリング処理は終了する。クラスタリングにより、全ての学習用パワースペクトルは、1のクラスタ(ここでは、第1クラスタ)に含まれるよう分類され、1のクラスタには1の確率表が対応するよう構成される。
学習用セグメント確率表リストのクラスタリング
図5は学習用セグメント確率表リストのクラスタリング処理フロー図である。本処理は、図2のステップB10に対応する処理である。ステップB9にて学習用シンボル列の全区間において学習用セグメント確率表を算出することにより、複数の学習用セグメント確率表からなる学習用セグメント確率表リストが生成される。学習用セグメント確率表リストに含まれる学習用セグメント確率表をクラスタリングすることにより、分類対象である複数の学習用セグメント確率表は、類似する学習用セグメント確率表が同じ部分集合になるように分類される。
【0060】
まず、CPUは、モデル作成関数内のクラスタリング関数をフラッシュメモリから読み込みヒープメモリに展開する。そして、学習用セグメント確率表リストに含まれる全ての学習用セグメント確率表をランダムに2つのクラスタに分類する(E1)。分類結果はヒープメモリに格納に格納される。「全ての学習用セグメント確率表」とは、当初は、ステップB9にて生成された全ての学習用セグメント確率表である。この当初の全ての学習用セグメント確率表、即ち、ステップB9にて生成された全ての学習用セグメント確率表の集合を学習用セグメント確率表の「初期母集団」とする。また、ステップE1において、これから各クラスタに分類されるであろう、全ての学習用セグメント確率表の集合を「母集団」とする。
【0061】
次に、ステップE1にて分類されたクラスタ内の学習用セグメント確率表から、平均確率表を求め、該求められた平均確率表を代表確率表とする(E2)。より詳細には、各学習用セグメント確率表の移動状態毎に平均確率を求め、求められた平均確率を移動状態毎の代表確率とする代表確率表を求める。
【0062】
次に、母集団内の全ての学習用セグメント確率表を、距離の近い代表確率表へ分類する(E3)。より詳細には、例えばそれぞれ1の学習用セグメント確率表と、各クラスタの代表確率表との移動状態毎の確率の誤差の総和を算出する。そして、算出された総和が小さい方の代表確率表に対応するクラスタへ1の学習用セグメント確率表を分類する。従って、それぞれの学習用セグメント確率表は、移動状態毎の確率の誤差の総和の差がより小さい、即ち、より距離の近い代表確率表を有する一方のクラスタへ分類される。
【0063】
次に、ステップE3における分類結果に基づいて、各クラスタに含まれる全ての学習用セグメント確率表からそれらを平均した平均確率表を算出し、算出された結果を各クラスタの代表確率表として更新する(E4)。より詳細には、分類されたクラスタに含まれる全ての学習用セグメント確率表に基づいて、移動状態毎に確率の平均値を算出する。そして、算出された平均値を移動状態毎に有する新たな確率表を新たな代表確率表として、クラスタ毎にそれぞれ更新し、ヒープメモリへ格納する。
【0064】
次に、ステップE3において学習用セグメント確率表が各クラスタへ分類された結果が、直前の分類結果と同等か判定する(E5)。本実施態様においては、例えばそれぞれのクラスタに含まれる分類された学習用セグメント確率表の移動状態毎の平均確率が、直前に分類された学習用セグメント確率表の移動状態毎の平均確率と同じか否か判定する。ここで、それぞれのクラスタに含まれる分類された学習用セグメント確率表の移動状態毎の平均確率と、直前に分類された学習用セグメント確率表の移動状態毎の平均確率との誤差を算出し、誤差の総和がしきい値以下か否か判定しても良い。しきい値に基づいて判定する場合はより早く分類結果が収束するため、処理速度が向上する。分類された結果が直前の分類結果と同等ではない場合、ステップE3、及びE4の処理を繰り返す。分類された結果が直前の分類結果と同等の場合、各クラスタに含まれる学習用セグメント確率表の個数が、どちらのクラスタに多いか/少ないかを比較する(E6)。
【0065】
分類されたクラスタに含まれる個数が少ない場合は、該クラスタに属する学習用セグメント確率表からなる群の移動状態ランク表が生成される(E7)。そして、生成結果はヒープメモリへ格納される。より詳細には、移動状態ランク表は、各第2クラスタに含まれる全ての学習用セグメント確率表に基づいて、各学習用セグメント確率表に対応する移動状態のIDが含まれる確率を移動状態毎に求めることにより生成される。即ち、移動状態ランク表は、クラスタ内に含まれる全ての学習用セグメント確率表に対応する各移動状態のIDがクラスタ内に含まれる確率を移動状態毎に求めた値と、それに対応する移動状態のIDとを関連付けたデータ・リストである。そして、CPUは、該個数の少ないクラスタに属する全ての学習用セグメント確率表を母集団から除き(E7)、ヒープメモリへ格納する。該個数の少ないクラスタに属する全ての学習用セグメント確率表を除いた母集団が、次の母集団となる。次に、該個数の少ないクラスタに含まれる学習用セグメント確率表の数が、初期母集団の一定割合以下かの判定(母集団の規模判定)、又は更なるクラスタリングが不可能であるかの判定をする(E8)。ここで、一定割合とは、初期母集団に含まれる学習用セグメント確率表の数と、分類されたクラスタに含まれる学習用セグメント確率表の数との割合であり、予め規定されている。また、更なるクラスタリングが不可能である場合とは、全ての学習用セグメント確率表が、片方のクラスタにマッピングされた状態をいう。ここで、母集団の規模判定や、更なるクラスタリングが不可能であるかの判定に加えて、例えば、移動状態の分布の偏りに基づいて判定することもできる。移動状態の分布の偏りに基づく判定とは、該個数の少ないクラスタに属する全ての学習用セグメント確率表を用いて、各移動状態の出現する確率を算出し、最高確率に対応する移動状態の確率が、第2位の確率に対応する移動状態の確率の倍以上であるか否かを判定することをいう。ここで、倍以上である場合には、該クラスタのクラスタリング処理が終了し1つの第2モデルが生成される。倍以下である場合には、ステップE1へ戻り引き続きクラスタリング処理が行われる。
【0066】
一方、分類されたクラスタに含まれる個数が多い場合は、該クラスタに含まれる学習用セグメント確率表の数が、初期母集団の一定割合以下か、又は更なるクラスタリングが不可能であるか判定する(E9)。ステップE9における判定の結果が否定的である場合、さらにステップE1からE6の処理を繰り返す。これは、クラスタに含まれる学習用セグメント確率表の個数が多いため、更なるクラスタリング処理によって、学習用セグメント確率表の分類が必要であることを意味する。一方、ステップE9における判定の結果が肯定的である場合、クラスタリングにより学習用セグメント確率表の分類が収束しており、クラスタリングにより学習用セグメント確率表が、すでに適切な大きさに細分化されていることを意味する。そして、当該クラスタに対応する移動状態ランク表を生成し、学習用セグメント確率表のクラスタリング処理は終了する。クラスタリングにより、全ての学習用セグメント確率表は、1のクラスタ(ここでは、第2クラスタ)に含まれるよう分類され、1のクラスタには1の移動状態ランク表が対応するよう構成される。
ユーザの移動状態の推定
図6は、ユーザの移動状態を推定するためのフロー図である。ユーザの移動状態の推定は、学習用パワースペクトルを用いて生成されたモデル、即ち第1モデル及び/又は第2モデルを用いて行う。
【0067】
一実施態様では、第1モデルのみを用いることによりユーザの移動状態を推定することが可能である。第1モデルのみを用いることによりユーザの移動状態を推定するための処理負荷が軽減される。
【0068】
さらに別の実施態様では、第2モデルのみを用いることにより移動状態を推定することが可能である。第2モデルのみを用いることによりユーザの移動状態を推定するための処理負荷が軽減される。
【0069】
また、さらに別の実施態様では、第1モデルと第2モデルを合わせてユーザの移動状態を推定することが可能であり、これによりさらに移動状態の推定誤差を少なくすることが可能である。具体的には、第1モデルを用いることにより得られる移動状態の推定結果(第1推定結果)と、第2モデルを用いることにより得られる移動状態の推定結果(第2推定結果)とが同一である場合に、移動状態を選定し、これを推定結果とする。これにより第1モデルによる推定された結果の信頼性を、第2モデルを用いて評価することが可能となり、信頼性の高い推定結果を得ることが可能となる。
第1モデルによる推定結果の取得
図6のフロー図に従って、移動状態の推定方式を以下に詳述する。まず、移動状態を推定するユーザの有する携帯端末装置に備えられている加速度センサから加速度データを取得し、加速度からなる関数をその周波成分の連続スペクトルに分解すること(例えば、フーリエ変換)により推定用パワースペクトル・リストを生成する(F1)。推定用パワースペクトル・リストには、各推定用パワースペクトルのIDと、各推定用パワースペクトル(Q個)に対応する周波数毎の振幅が時系列に格納されている(図11F)。
【0070】
次に、第1モデルを用いて、推定用パワースペクトル・リストのうち1の推定用パワースペクトルと、最近傍の第1平均パワースペクトルに対応する第1クラスタを選定する(F2)。より詳細には、例えば、CPUは、クラスタ群の各第1クラスタにおけるそれぞれ1の第1平均パワースペクトルと、推定用パワースペクトルとの周波数毎の振幅の誤差の総和を算出する。そして、算出された総和が最小の第1平均パワースペクトルに対応する第1クラスタを、推定用パワースペクトルと最近傍の第1平均パワースペクトルとして選定する。なお、最近傍の第1平均パワースペクトルは、移動状態毎の確率の差の2乗の総和が最小となる第1平均パワースペクトルを選定すること等により求めても良い。
【0071】
次に、選定された最近傍の第1クラスタに対応するシンボルを推定用シンボル列へ格納(シンボル化)する(F3)。各第1クラスタには、1の第1平均パワースペクトル、及び1の確率表が対応しており、各第1クラスタに対してそれぞれ1の異なるシンボルが割り振られている。
【0072】
次に、推定用パワースペクトル・リストにおける一定区間内の推定用パワースペクトルが全てシンボル化されたか否か判定する(F4)。ここで、一定区間は、予め定められており、移動状態を推定するために必要な最小個数(b個)の推定用パワースペクトルに対応する一定の区間である。本一定区間が短すぎると、突発的に発生するノイズによる影響を大きく受けて推定誤差が大きくなることがある。また本区間が長すぎると、期間内に発生しうる移動状態の変化をタイミング良く把握できなくなることがある。一定区間内の推定用パワースペクトルが全てシンボル化されていない場合は、全てのシンボル化が終了するまでステップF2、F3を繰り返す。一定区間内の推定用パワースペクトルが全てシンボル化された場合は、ステップF5へ進む。
【0073】
次に、生成された推定用シンボル列(図11G)に基づいて、推定用セグメント確率表を生成する(F5)。推定用セグメント確率表とは、推定用シンボル列において、一定区間の連続したシンボルに対応する各確率表に基づいて求められる確率表である。推定用セグメント確率表は、推定用シンボル列の一定区間内に格納された複数のシンボルにそれぞれ対応する第1クラスタの確率表を用いて、移動状態毎に確率の平均値を算出することにより求められる。推定用セグメント確率表は、算出された移動状態毎の一定区間毎の平均確率を移動状態毎に有する表である。
【0074】
次に、CPUは推定用セグメント確率表を参照し、移動状態毎にある平均確率のうち、最高の確率に対応する移動状態を選定する(第1モデルによる移動状態の推定結果取得)(F6)。なお、本実施形態においては最高確率に対応する移動状態を選定しているが、選定するにあたって、他の所定の条件を設けることができる。例えば、携帯端末装置の所持状態には、ポケットや鞄に入れた状態、手に所持した状態、腕等に装着している状態等がある。これらの所持状態を推定する場合は、推定用セグメント確率表の、例えば上位から複数の確率に対応する状態を選定することにより、所持状態を推定することができる。さらに、本実施態様においては、移動状態を選定しているが、同様の方法を用いて、例えば携帯端末装置を保有している人物を特定することもできる。また、例えば上位から複数の確率に対応する状態を選定することにより、可能性の高い複数の人物を特定することも可能となる。
【0075】
そして、CPUは、選定された移動状態に対応するIDを推定結果としてメモリへ格納する。CPUは、時系列にメモリに格納された推定用パワースペクトルを用いて、推定用セグメント確率表を参照し、最高の確率に対応する移動状態を順次選定していく。そして、第1モデルによるユーザの移動状態の推定結果が、時系列にメモリへ格納される(図11Hの第1モデル推定結果)。以上より、時系列データを用いた第1モデルによるユーザの移動状態の推定がなされる。ユーザ移動状態に突発的な変化を含む場合や、他状態と類似する時間帯が発生する場合であっても、ユーザの移動状態を正しく推定することが可能となる。また、ユーザの加速度センサから得られる1のパワースペクトルの情報は、1又は複数の移動状態に対応する特徴を有している場合がある。本願発明は、1の加速度データから求められる特徴パラメータが複数の移動状態における特徴パラメータと類似する場合であっても、第1モデルを用いることにより、該特徴パラメータが各移動状態に現れる頻度から移動状態を推定することが可能となる。従って、複数の移動状態における特徴パラメータと類似する場合であっても、ユーザの移動状態を高い精度で推定可能である。
推定用パワースペクトル・リストの生成
推定用パワースペクトルの生成(ステップF1)を以下に詳述する。ある移動状態にいるユーザの移動状態を推定するために用いる推定用パワースペクトル・リストは、学習用パワースペクトル・リストの選定と同様のプロセスにより行われる。より詳細には、ある移動状態にいるユーザが有する加速度センサから所定期間に亘って推定用の加速度データを取得し、得られた推定用加速度データから加速度の時間窓データを生成する。
【0076】
そして、推定用加速度の時間窓データの生成を所定回数繰り返し、推定用加速度の時系列データ・リスト(推定用データ・リスト)を取得する。尚、推定用加速度の時間窓データの生成は、ユーザの移動状態を推定するために必要なデータ数が得られるまで、所定回数繰り返す。そして、CPUによる演算により、複数の推定用加速度の時間窓データはそれぞれフーリエ変換され、複数の推定用パワースペクトルからなる推定用パワースペクトル・リストが算出される。
第2モデルによる推定結果の取得
次に、CPUは、第2モデルを用いて推定用セグメント確率表と、最近傍の第2代表確率表を有する第2クラスタを選定する(F7)。本実施態様においては、第2代表確率表として、第2平均確率表を用いる。より詳細には、第2平均確率表は、例えば、第2モデルを構成するクラスタ群に含まれる各クラスタにおいて、各第2クラスタに対応する1又は複数の学習用セグメント確率表を用いて、移動状態毎に平均確率を求めることにより、クラスタ毎に生成される。また、第2平均確率表は、移動状態毎の平均確率と、それに対応する移動状態のIDとを関連付けたデータ表である。ここで、推定用セグメント確率表と最近傍の第2平均確率表は、例えば、第2モデルを構成する各クラスタに対応する、それぞれ1の第2平均確率表と、推定用セグメント確率表との移動状態毎の確率の差を求め、その差の総和が最小の第2平均確率表を選定することにより求められる。なお、最近傍の第2平均確率表は、移動状態毎の差の総和の2乗が最小となる確率表を選定することにより求めても良い。
【0077】
次に、CPUは、該選定された第2クラスタに対応する移動状態ランク表に基づいて、最高確率に対応する移動状態のIDを選定することより第2モデルによるユーザの移動状態を選定する(第2モデルによる移動状態の推定結果取得)(F8)。そして、CPUは選定された移動状態のIDを推定結果としてメモリへ格納する。ここで、第2モデルを構成する第2クラスタには、クラスタ毎に1の第2平均確率表、及び1の移動状態ランク表が対応している(図11E)。移動状態ランク表は、第2クラスタに含まれる全ての学習用セグメント確率表において、各学習用セグメント確率表に対応する各移動状態のIDがクラスタ内に含まれる確率を移動状態毎に求めた値と、それに対応する移動状態のIDとを関連付けたデータ表である。
【0078】
CPUは、生成された推定用セグメント確率表を用いて、推定用セグメント確率表と最近傍の第2平均確率表に対応するクラスタを選定し、該クラスタに対応する移動状態ランク表を参照し、最高の確率に対応する移動状態を順次選定していく。そして、第2モデルによるユーザの移動状態の推定結果が、時系列にメモリへ格納される(図11H)。以上より、時系列データを用いた、第2モデルによるユーザの移動状態の推定がなされる。従って、本実施態様においては、ユーザの移動状態を示す時系列のデータを用いてユーザの移動状態を推定するため、ユーザ移動状態に突発的な変化を含む場合や、他状態と類似する時間帯が発生する場合であっても、ユーザの移動状態を正しく推定することが可能となる。また、該得られた確率表の特徴が他の移動状態における確率表の特徴と類似している場合であっても、高い精度で移動状態を推定することができる。
キーフレームの判定
次に、メモリへ格納された第1モデル推定結果と第2モデル推定結果とが同一の移動状態か否か判定する(F9)。より詳細には、ステップF9において、一定区間において第1モデルにより選定された移動状態のIDが、第2モデルにより選定された移動状態のIDと同一か否か判定する。ステップF9において判定した結果が同一ではない場合、第1モデル、第2モデルにより選定されたユーザの移動状態は信頼性が高くないとして、この一定区間に対応する1のフレームを、未確定フレーム(unknown)としてフレーム・リストの1のフレームへ格納する(F11)。そして、さらにステップF1からステップF9の処理を繰り返す。
【0079】
一方、ステップF9において判定した結果が同一の移動状態である場合、第1モデル、及び第2モデルにより得られた推定結果は信頼性が高いとして、この一定区間に対応する1のフレームを、キーフレーム(known)として、フレーム・リストの1のフレームへ格納する(F10)。フレーム・リストとは、1の一定区間に1のフレームが対応した、複数のフレームから構成されるリストである。各フレームは、当該フレームがキーフレームか、又は未確定フレームかをそれぞれ時系列に格納されている。
【0080】
以上より、図6に示されるように、第1モデルを用いた移動状態の推定と、第2モデルを用いた移動状態の推定とを行うことにより、両モデルによる推定結果が一致した場合に、推定精度が高いとして移動状態を推定することにより、推定精度を高めることが可能となる。
歩数、基地局情報を用いた移動状態推定方式
図7は、外部情報取得装置を用いた移動状態推定方式のシステム構成を示した図である。図7は図1の構成に加えて、外部情報取得装置としてアンテナ(G60)、歩数計(G70)を含む構成である。携帯端末装置は、アンテナ(G60)を通じて、基地局と通信することにより携帯端末装置に最も近い基地局の緯度、経度の情報を取得する。また、携帯端末装置は、基地局情報として基地局のID情報を取得することもできる。なお、基地局情報は、CDMA基地局や、無線タグ、無線LAN等の基地局からも取得することもできる。本実施態様においては、外部情報取得装置を用いて得られた情報をさらに用いることにより、更なる移動状態の推定精度を高め、処理負荷を軽減することができる。
【0081】
基地局の緯度、経度情報は直接ヒープメモリへ格納される。また、歩数計(G70)は、一定レベル以上の振動(加速度)が加わることで作動し、ユーザの歩数をカウントする。携帯端末装置に搭載されている歩数計は、一般にハードウェア化されており、加速度センサに比べ小電力で動作することが可能である。本実施態様においては、得られた推定移動状態の信頼性が高い場合には、消費電力の低い歩数計のみを用いて移動状態に変化が無いか否か判定する。さらに、得られた推定移動状態が停止状態や、電動車状態、即ち、自動車状態、バス状態、電車状態の場合は、歩数が変化しないことのみを検出し、その他の移動状態の場合には歩数のリズムをのみを検出することにより、移動状態の変化を判定することができる。ここで、歩数のリズムの検出とは、一定時間にカウントされる歩数を検出することにより行う。このように、移動状態に変化がある場合に、ユーザの情報を取得する装置を適切に選択することにより、移動状態の推定にかかる処理負荷を軽減させることができる。
【0082】
ここで、歩数計から取得される歩数やアンテナから取得される基地局情報はCPUによる動作無し(低負荷な処理により)に、メモリへアクセスすることにより取得することが可能である。従って、加速度センサを常時動作させることにより移動状態を推定するよりも、低い消費電力で移動状態の推定が可能である。さらに、加速度センサを常時動作させて加速度値を取得するよりも、CPUの負荷を低減させ、高速に外部情報の取得が可能となり、かつ低消費電力で動作可能であることからより長期間の移動状態推定が可能となる。なお、携帯端末装置の位置を取得するために、グローバル・ポジショニング・システム(GPS)基地局からの情報を利用することもできる。
【0083】
図8は、第1、及び第2モデルを用いた推定に加えて、外部情報取得装置、から取得された情報を用いて移動状態を推定するための処理フロー図である。本実施態様により、第1モデル、及び第2モデルを用いることにより得られた推定結果に基づいて選定された、キーフレーム区間の推定結果の妥当性を評価することができる。これにより、さらに移動状態推定の精度を向上させることができる。
【0084】
図8による移動状態を推定方式は、第1、及び第2モデルを用いた推定をした後に、ユーザの有する歩数計G70から得られる歩数情報、アンテナG60から得られる基地局情報を用いて、第1、第2モデルにより推定された移動状態の妥当性を評価するものである。アンテナから得られる基地局情報は、例えば、ユーザの有する携帯端末装置に最も近い基地局の、緯度、経度情報により構成される。本推定方式では、図6に示される推定処理を経た後に、図8に示される推定処理フローに従って移動状態が推定される。
【0085】
まず、現在のキーフレームに対応する移動状態が、直前に登録されたキーフレームに対応する移動状態と同一か否か判定する(H1)。現在のキーフレームに対応する移動状態のIDと、直前に登録されたキーフレームに対応する移動状態のIDとを比較し、それらが同一ではない場合、得られた現在のキーフレームと、直前に登録されたキーフレームにおいて、選定された移動状態の信頼性は低いと考えられるため、再度ステップF1に戻り、推定処理を開始する。
【0086】
現在のキーフレームに対応する移動状態が、直前に登録されたキーフレームに対応する移動状態と同一である場合、ステップH2に進む。ステップH2において、キーフレームに対応する移動状態が第1、第2、第3のいずれの移動状態かを判定する(H2)。ここで、第1の移動状態とは、例えば走行状態、歩行状態、自転車状態をいう。また、第2の移動状態とは、例えば停止状態をいう。第3の移動状態とは、例えば、電車状態、自動車状態、バス状態をいう。全ての移動状態は、歩数、基地局情報に関連して、予め第1、2及び3の移動状態へ分類されている。本実施態様においては、外部情報取得装置、例えば歩数計及び/又はアンテナにより取得された情報から推定されるユーザの移動状態と、第1、及び第2モデルを用いた推定移動状態が対応しているか否か判定する。ここで、CPUは、歩数、基地局情報をフラッシュメモリから取得し、ヒープメモリへ格納して判定する(H2)。そして、判定結果はヒープメモリに格納される。
【0087】
キーフレームに対応する移動状態が第1の移動状態である場合、直前に登録されたキーフレームから、現在のキーフレームまでの間の全てのフレームにおいて、歩数計から得られる歩数が増加しているか否かが判定される(H3)。歩数計によるユーザの歩数情報の測定は常時行われており、歩数計から取得された歩数は、ステップF10にて構成されるフレーム毎に時系列にヒープメモリに格納されている。CPUは、一定区間のフレーム毎にメモリへ格納されている歩数情報を取得し、CPUは、得られた歩数情報において、全てのフレームで歩数が増加しているか否か判定する。なお、自転車状態の場合、全てのフレームで歩数が増加していなくても良く、1以上のフレームにおいて歩数が増加しているか否かによって判定することもできる。推定対象のユーザが自転車状態にある場合、ペダルを漕がずに下り坂を下っている場合等、全てのフレームで歩数が増加しない場合があるからである。
【0088】
全てのフレームにおいて歩数が増加している場合は、キーフレームに対応する移動状態、即ち第1の移動状態は正しいと判定される。即ち、歩数の増加は、ユーザ自身が移動している状態に該当するため、走行、歩行、自転車状態を含む第1の移動状態に対応する。従って、第1モデル、第2モデルで推定された結果の信頼性が高いと認定される。そして、直前に登録されたキーフレームから現在のキーフレームまでの区間をキーフレーム区間として確定する(H6)。一方、判定の結果、歩数が増加していない場合は、モデルにより推定結果として得られた移動状態は信頼性が低いとして、再度推定処理を行う(F1)。
【0089】
キーフレームに対応する移動状態が第2の移動状態である場合、直前に登録されたキーフレームから、現在のキーフレームまでの間の全てのフレームにおいて歩数、基地局に変化がないかが判定される(H4)。より詳細には、現在のキーフレームまでの間の全てのフレームに対応する歩数情報、及び基地局情報は、それぞれメモリへ格納されており、CPUは、ステップF10にて構成される一定区間のフレーム毎に、メモリへ格納されている歩数情報、及び基地局情報を取得する。そしてCPUは、得られた歩数情報、及び基地局情報に基づいて、全てのフレームで歩数が増加していないか、基地局に変化がないか否か判定する。歩数が増加しておらず、基地局に変化がない状態はユーザがほぼ停止している状態に該当するため、第2の移動状態に対応する。従って、第1モデル、第2モデルで推定された結果の信頼性が高いと認定される。そして、直前に登録されたキーフレームから現在のキーフレームまでの区間をキーフレーム区間として確定する(H6)。判定の結果、歩数が増加している場合、又は、基地局の変化がある場合は、モデルにより推定結果として得られた移動状態は信頼性が低いとして、再度推定処理を行う(F1)。
【0090】
キーフレームに対応する移動状態が第3の移動状態である場合、直前に登録されたキーフレームから、現在のキーフレームまでの間の全てのフレームにおいて歩数に変化がないかが判定される(H5)。より詳細には、現在のキーフレームまでの間の全てのフレームに対応する歩数情報はメモリへ格納されており、CPUは、ステップF10にて構成される一定区間のフレーム毎に、メモリへ格納されている歩数情報を取得する。そしてCPUは、得られた歩数情報に基づいて、全てのフレームで歩数が増加していないか否か判定する。歩数が増加していないが、基地局に変化がある/ない場合は、ユーザ自身は移動していないが、ユーザが乗車している車両が移動/停止している状態に該当するため、電車状態、自動車状態、バス状態である第3の移動状態に対応する。そして、直前に登録されたキーフレームから現在のキーフレームまでの区間をキーフレーム区間として確定する(H6)。判定の結果、歩数が増加している場合は、モデルにより推定結果として得られた移動状態は信頼性が低いとして、再度推定処理を行う(F1)。
【0091】
次に、キーフレーム区間内の全てのフレームは、キーフレームに対応する移動状態が対応付けられている(図11H)。これにより、CPUは移動状態の推定結果を確定する(H7)。そして、推定結果が第2の移動状態である場合、即ちここでは停止状態である場合、加速度データの取得を止め、歩数、基地局情報のみを取得する(歩数・基地局情報監視モードへの移行)。推定結果が第3の移動状態である場合、即ちここでは電車状態、自動車状態、バス状態である場合、加速度データの取得を止め、歩数のみを取得する(歩数監視モードへの移行)。このように、加速度データの取得を止めること(低消費電力モードへの移行)で、省電力化を図ることが可能となる。一方、推定結果が第1の移動状態の場合、即ち、ここでは走行状態、歩行状態、自転車状態の場合、加速度データの取得を続ける。第2の移動状態、及び第3の移動状態の場合は、加速度データを用いることなく歩数及び/又は基地局情報のみを取得することで、第2の移動状態及び第3の移動状態を保持し続けていることを把握することが可能であるのに対し、第1の移動状態の場合には、歩数及び基地局情報のみでは第1の移動状態を保持し続けているかを把握することが難しい場合があるからである。
【0092】
図9は、更なる実施態様についての処理フローを示す。図9に示される処理フローは、図8に示される処理フローと類似しているが、更なる実施態様においては、現在のキーフレームに対応する移動状態が、直前のキーフレームに対応する移動状態と同一か否かを判定し、判定結果が同一ではない場合に、さらに現在のキーフレームに対応する移動状態が第3の移動状態であるか判定する。本実施態様においては、現在のキーフレームに対応する移動状態が第3の移動状態である場合、キーフレーム区間内に第2の移動状態に対応するキーフレームが存在する場合でも、第3の移動状態であるとしてキーフレーム区間を確定する。これは、例えば、第3の移動状態である自動車状態やバス状態において、車両が渋滞等で頻繁に停止する場合、直前のキーフレームに対応する移動状態と、現在のキーフレームに対応する移動状態とが異なるためにキーフレーム区間を確定できなくなることを避けるためである。
【0093】
より詳細には、まず、現在のキーフレームに対応する移動状態が、直前のキーフレームに対応する移動状態と同一か否かを判定する(I1)。判定結果が同一である場合には、この移動状態が第1、第2、第3のいずれの移動状態かを判定する(I2)。そして、I3からI7までは、図8のその後の対応する処理(H3からH7まで)と同一の処理を行う。一方、判定結果が同一ではない場合に、直前のキーフレームに対応する移動状態が第2の移動状態であって、かつ現在のキーフレームに対応する移動状態が第3の移動状態であるか判定する(H8)。ここで、直前のキーフレームに対応する移動状態が第3の移動状態であって、かつ現在のキーフレームに対応する移動状態が第2の移動状態であるかも同様に判定することができる。H8による判定の結果が肯定的である場合は、直前のキーフレームから、現在のキーフレームまでの区間を、第3の移動状態に対応するキーフレーム区間であるとして確定する(H6)。ここで、直前の移動状態が第3で、現在の移動状態が第2である場合も、現在のキーフレームまでの区間を第3の移動状態に対応するキーフレーム区間であるとして確定する。以上のように、第3の移動状態である自動車状態やバス状態において、車両が渋滞等で頻繁に停止する場合であっても、第3の移動状態であるとしてキーフレーム区間を確定し、より早くキーフレーム区間の確定を行うことができる。
キーフレーム区間の解除処理
図10はキーフレーム区間の解除処理のフローを示す。キーフレーム区間は一旦設定されると、次のキーフレームが検知されるか、若しくは歩数及び/又は基地局情報に変化があるまでは解除されることはない。
【0094】
移動状態推定処理(F1からF10及びH1からH7)が行われた後に、図10によるキーフレーム区間の解除処理が行われる。ステップH7、又はI7により、移動状態が推定された後、推定結果が第2の移動状態である場合、即ちここでは停止状態である場合、加速度データの取得を止め、歩数、基地局情報のみを取得する。推定結果が第3の移動状態である場合、即ちここでは電車状態、自動車状態、バス状態である場合、加速度データの取得を止め、歩数のみを取得する。推定結果が第1の移動状態の場合、即ち、ここでは走行状態、歩行状態、自転車状態の場合、加速度データが取得される(F1)。
【0095】
次に、CPUは、キーフレーム区間のキーフレームに対応する移動状態が第1、第2、第3の移動状態のいずれであるかを判定する(J1)。キーフレームに対応する移動状態が第1の移動状態である場合には、CPUによる演算により、新たなキーフレームを検知する(J2)。即ち、ステップF1からF10までの処理を、新たなキーフレームが検知されるまで繰り返す。次に、検知されたキーフレームに対応する移動状態が、直前のキーフレームに対応する移動状態と同一か否か判定する(J3)。判定の結果、同一の移動状態ではない場合、キーフレーム区間を解除する(J4)。即ち、直前のキーフレームの次にあるフレームから、検知されたキーフレームまでのフレーム区間に対応する全てのフレームを、未確定フレームとしてそれぞれ確定する。ここで、キーフレーム区間の解除とは、キーフレーム(known)を未確定フレーム(unknown)へ戻す処理をいう。そして、次のフレーム区間の推定処理(F1からF10)を実施する(J5)。一方、判定の結果、同一の移動状態である場合は、次のフレーム区間の推定処理(F1からF10)を実施する(J5)。
【0096】
次に、キーフレームに対応する移動状態が第2の移動状態である場合には、CPUは歩数、若しくは基地局情報に変化があるか否か判定する(J6)。歩数、若しくは基地局情報に変化がある場合には、キーフレーム区間を解除する(J4)。即ち、直前のキーフレームの次にあるフレームから、検知されたキーフレームまでのフレーム区間に対応する全てのフレームを、未確定フレームとしてそれぞれ確定する。そして、次のフレーム区間の推定処理を実施する(J5)。一方、判定の結果、歩数、若しくは基地局情報に変化がない場合は、次のフレーム区間の推定処理(F1からF10)を実施する(J5)。
【0097】
次に、キーフレームに対応する移動状態が第3の移動状態である場合には、CPUは歩数に変化があるか否か判定する(J7)。歩数に変化がある場合には、キーフレーム区間を解除する(J4)。即ち、直前のキーフレームの次にあるフレームから、検知されたキーフレームまでのフレーム区間に対応する全てのフレームを、未確定フレームとしてそれぞれ確定する。そして、次のフレーム区間の推定処理を実施する(J5)。一方、判定の結果、歩数に変化がない場合は、次のフレーム区間の推定処理(F1からF10)を実施する(J5)。
【0098】
以上より、キーフレーム区間は、キーフレームに対応する移動状態の種別によって、異なる方法で解除される。以上より、キーフレーム区間を用いることにより、キーフレーム区間が解除されるまでは低消費電力モードで移動状態を推定することが可能となると共に、移動状態の変更を検知することが可能となる。
【特許請求の範囲】
【請求項1】
少なくとも1つのCPU(中央処理装置)とメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、
前記選定された第1クラスタに対応する前記第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定するステップと、
からなる方法。
【請求項2】
請求項1において、前記第1確率表は、前記各第1クラスタに含まれる学習用特徴パラメータに対応する移動状態毎の確率データを移動状態毎に有する、方法。
【請求項3】
少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、
前記選定された第1クラスタに対応する前記第1確率表に基づいて時系列に推定用セグメント確率表を算出するステップと、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成するステップと、
1又は複数のパラメータから構成される前記推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、前記複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、
前記選定された第2クラスタに対応する前記第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定するステップと、
からなる方法。
【請求項4】
請求項3において、前記第1確率表は、前記各第1クラスタに含まれる学習用特徴パラメータに対応する移動状態毎の確率データを移動状態毎に有し、前記第2確率表は、前記各第2クラスタに含まれる学習用セグメント確率表に対応する移動状態毎の確率データを移動状態毎に有する、方法。
【請求項5】
少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、
前記選定された第1クラスタに対応する前記第1確率表に基づいて算出された時系列にメモリに格納された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定ステップと、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成するステップと、
1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、複数のクラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、
前記選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定ステップと、
前記第1の推定ステップ、および前記第2の推定ステップにより推定された結果を用いて移動状態を推定するステップと、
からなる方法。
【請求項6】
少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUは、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、
前記選定された第1クラスタに対応する前記第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定ステップと、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成するステップと、
1又は複数のパラメータから構成される前記推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、前記複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、
前記選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定ステップと、
前記第1の推定ステップ、および前記第2の推定ステップにより推定された結果が第5の条件を満足する場合に、該第5の条件により求められた結果に対応するフレームをキーフレームとして、フレーム・リストへ順次格納することによりフレーム・リストを生成するステップと、
前記生成されたフレーム・リストにおいて、一のキーフレームと、その直前の一のキーフレームとが同一の移動状態に対応する場合に、
前記一のキーフレームに対応する移動状態が、所定の移動状態の場合に、前記一のキーフレームと、前記その直前の一のキーフレームとの間において、所定の条件を満たしているか判定するステップと、
前記所定の条件を満たしている場合に、前記直前の一のキーフレームから前記一のキーフレームに対応する移動状態を前記キーフレームに対応する移動状態として確定することにより、移動状態を推定するステップと、
からなる方法。
【請求項7】
少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態の推定に用いるモデルを生成する方法であって、該CPUが、
時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の前記学習用特徴パラメータからなる第1クラスタの群を生成するステップと、
前記第1クラスタの群において、前記第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とに対応する第1クラスタを生成するステップと、
を含む方法。
【請求項8】
少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態の推定に用いる第1及び第2モデルを生成する方法であって、該CPUが、
時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の前記学習用特徴パラメータからなる第1クラスタの群を生成するステップと、
前記第1クラスタの群において、前記第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とが対応する第1クラスタを生成するステップと、
前記学習用特徴パラメータ毎に、前記学習用特徴パラメータと、代表特徴パラメータとのパラメータ毎の差に基づいて、該差が所定の条件を満足する1の第1クラスタを順次選定するステップと、
前記順次選定された第1のクラスタの所定数毎に、各第1クラスタに対応する各第1確率表に基づいて、学習用セグメント確率表を算出するステップと、
前記算出された各学習用セグメント確率表を複数の第2クラスタにクラスタリングし、該各第2クラスタは1又は複数の前記学習用セグメント確率表からなる第2クラスタの群を生成するステップと、
前記第2クラスタの群において、第2クラスタ毎に、前記各第2クラスタを代表する1の第2代表確率表と、各移動状態が出現する確率を表す第2確率表と、が対応する第2クラスタを生成するステップと、
を含む方法。
【請求項9】
少なくとも1つのCPUと、歩数計と、アンテナと、加速度センサとを備える携帯端末装置の移動状態の変化を検知する方法であって、該携帯端末装置は該歩数計により第1の情報を、該アンテナにより第2の情報を、該加速度センサにより第3の情報を取得可能であって、該CPUは、
推定された移動状態が第1の移動状態の場合には第1の情報のみを取得し、該第1の情報が該第1の移動状態に対応している場合には、該推定された第1の移動状態を推定結果として取得し、前記第3の情報に変化があるか否かを監視するステップと、
推定された移動状態が第2の移動状態の場合には、前記第1の情報及び第2の情報を取得し、前記第1の情報及び前記第2の情報が第2の移動状態に対応している場合には、該推定された第2の移動状態を推定結果として取得し、前記第1の情報及び前記第2の情報に変化があるか否かを監視するステップと、
推定された移動状態が第3の移動状態の場合には、前記第1の情報を取得し、前記第1の情報が第3の移動状態に対応している場合には、該推定された第3の移動状態を推定結果として取得し、前記第1の情報に変化があるか否かを監視するステップと、
からなる移動状態の変化を検知する方法。
【請求項10】
携帯端末装置の移動状態を推定する携帯端末装置であって、
複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、
CPUと、であって、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、
前記選定された第1クラスタに対応する前記確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する、
携帯端末装置。
【請求項11】
請求項10において、前記第1確率表は、前記各第1クラスタに含まれる学習用特徴パラメータに対応する移動状態毎の確率データを移動状態毎に有する、携帯端末装置。
【請求項12】
携帯端末装置の移動状態を推定する携帯端末装置であって、
複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、
CPUと、であって、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、
前記選定された第1クラスタに対応する前記第1確率表に基づいて時系列に推定用セグメント確率表を算出し、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、
1又は複数のパラメータから構成される前記推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、前記複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定し、
前記選定された第2クラスタに対応する前記第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する、
携帯端末装置。
【請求項13】
請求項12において、前記第1確率表は、前記各第1クラスタに含まれる学習用特徴パラメータに対応する移動状態毎の確率データを移動状態毎に有し、前記第2確率表は、前記各第2クラスタに含まれる学習用セグメント確率表に対応する移動状態毎の確率データを移動状態毎に有する、携帯端末装置。
【請求項14】
携帯端末装置の移動状態を推定する携帯端末装置であって、
複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、
CPUと、であって、該CPUが
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、
前記選定された第1クラスタに対応する前記第1確率表に基づいて算出された時系列にメモリに格納された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定をし、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、
1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、複数のクラスタから該差が第3の条件を満足する1の第2クラスタを選定し、
前記選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定をし、
前記第1の推定ステップ、および前記第2の推定ステップにより推定された結果を用いて移動状態を推定する、
携帯端末装置。
【請求項15】
携帯端末装置の移動状態を推定する携帯端末装置であって、
複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、
CPUと、であって、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、
前記選定された第1クラスタに対応する前記第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定をし、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、
1又は複数のパラメータから構成される前記推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、前記複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定し、
前記選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定をし、
前記第1の推定ステップ、および前記第2の推定ステップにより推定された結果が第5の条件を満足する場合に、該第5の条件により求められた結果に対応するフレームをキーフレームとして、フレーム・リストへ順次格納することによりフレーム・リストを生成し、
前記生成されたフレーム・リストにおいて、一のキーフレームと、その直前の一のキーフレームとが同一の移動状態に対応する場合に、
前記一のキーフレームに対応する移動状態が、所定の移動状態の場合に、前記一のキーフレームと、前記その直前の一のキーフレームとの間において、所定の条件を満たしているか判定し、
前記所定の条件を満たしている場合に、前記直前の一のキーフレームから前記一のキーフレームに対応する移動状態を前記キーフレームに対応する移動状態として確定することにより、移動状態を推定する、
携帯端末装置。
【請求項16】
携帯端末装置の移動状態の推定に用いるモデルを生成するシステムであって、
全ての移動状態に対応する複数の学習用特徴パラメータを時系列に格納しているメモリと、
CPUと、であって、該CPUが
時系列に前記メモリに格納されている全ての移動状態に対応する前記複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の前記学習用特徴パラメータからなる第1クラスタの群を生成し、
前記第1クラスタの群において、前記第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とに対応する第1クラスタを生成する、
システム。
【請求項17】
携帯端末装置の移動状態の推定に用いる第1及び第2モデルを生成するシステムであって、
全ての移動状態に対応する複数の学習用特徴パラメータを時系列に格納しているメモリと、
CPUと、であって、該CPUが、
時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の前記学習用特徴パラメータからなる第1クラスタの群を生成し、
前記第1クラスタの群において、前記第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とが対応する第1クラスタを生成し、
前記学習用特徴パラメータ毎に、前記学習用特徴パラメータと、代表特徴パラメータとのパラメータ毎の差に基づいて、該差が所定の条件を満足する1の第1クラスタを順次選定し、
前記順次選定された第1のクラスタの所定数毎に、各第1クラスタに対応する各第1確率表に基づいて、学習用セグメント確率表を算出し、
前記算出された各学習用セグメント確率表を複数の第2クラスタにクラスタリングし、該各第2クラスタは1又は複数の前記学習用セグメント確率表からなる第2クラスタの群を生成し、
前記第2クラスタの群において、第2クラスタ毎に、前記各第2クラスタを代表する1の第2代表確率表と、各移動状態が出現する確率を表す第2確率表と、が対応する第2クラスタを生成する、
システム。
【請求項18】
少なくとも1つのCPUと、歩数計と、アンテナと、加速度センサとを備える携帯端末装置の移動状態の変化を検知する携帯端末装置であって、該携帯端末装置は該歩数計により第1の情報を、該アンテナにより第2の情報を、該加速度センサにより第3の情報を取得可能であって、該CPUは、
推定された移動状態が第1の移動状態の場合には第1の情報のみを取得し、該第1の情報が該第1の移動状態に対応している場合には、該推定された第1の移動状態を推定結果として取得し、前記第3の情報に変化があるか否かを監視し、
推定された移動状態が第2の移動状態の場合には、前記第1の情報及び第2の情報を取得し、前記第1の情報及び前記第2の情報が第2の移動状態に対応している場合には、該推定された第2の移動状態を推定結果として取得し、前記第1の情報及び前記第2の情報に変化があるか否かを監視し、
推定された移動状態が第3の移動状態の場合には、前記第1の情報を取得し、前記第1の情報が第3の移動状態に対応している場合には、該推定された第3の移動状態を推定結果として取得し、前記第1の情報に変化があるか否かを監視する、
ことにより、移動状態の変化を検知する携帯端末装置。
【請求項1】
少なくとも1つのCPU(中央処理装置)とメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、
前記選定された第1クラスタに対応する前記第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定するステップと、
からなる方法。
【請求項2】
請求項1において、前記第1確率表は、前記各第1クラスタに含まれる学習用特徴パラメータに対応する移動状態毎の確率データを移動状態毎に有する、方法。
【請求項3】
少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、
前記選定された第1クラスタに対応する前記第1確率表に基づいて時系列に推定用セグメント確率表を算出するステップと、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成するステップと、
1又は複数のパラメータから構成される前記推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、前記複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、
前記選定された第2クラスタに対応する前記第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定するステップと、
からなる方法。
【請求項4】
請求項3において、前記第1確率表は、前記各第1クラスタに含まれる学習用特徴パラメータに対応する移動状態毎の確率データを移動状態毎に有し、前記第2確率表は、前記各第2クラスタに含まれる学習用セグメント確率表に対応する移動状態毎の確率データを移動状態毎に有する、方法。
【請求項5】
少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、
前記選定された第1クラスタに対応する前記第1確率表に基づいて算出された時系列にメモリに格納された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定ステップと、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成するステップと、
1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、複数のクラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、
前記選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定ステップと、
前記第1の推定ステップ、および前記第2の推定ステップにより推定された結果を用いて移動状態を推定するステップと、
からなる方法。
【請求項6】
少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態を推定する方法であって、該メモリは、複数の第1クラスタであって、それぞれ該第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する複数の第1クラスタを格納し、該CPUは、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定するステップと、
前記選定された第1クラスタに対応する前記第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定ステップと、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成するステップと、
1又は複数のパラメータから構成される前記推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、前記複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定するステップと、
前記選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定ステップと、
前記第1の推定ステップ、および前記第2の推定ステップにより推定された結果が第5の条件を満足する場合に、該第5の条件により求められた結果に対応するフレームをキーフレームとして、フレーム・リストへ順次格納することによりフレーム・リストを生成するステップと、
前記生成されたフレーム・リストにおいて、一のキーフレームと、その直前の一のキーフレームとが同一の移動状態に対応する場合に、
前記一のキーフレームに対応する移動状態が、所定の移動状態の場合に、前記一のキーフレームと、前記その直前の一のキーフレームとの間において、所定の条件を満たしているか判定するステップと、
前記所定の条件を満たしている場合に、前記直前の一のキーフレームから前記一のキーフレームに対応する移動状態を前記キーフレームに対応する移動状態として確定することにより、移動状態を推定するステップと、
からなる方法。
【請求項7】
少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態の推定に用いるモデルを生成する方法であって、該CPUが、
時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の前記学習用特徴パラメータからなる第1クラスタの群を生成するステップと、
前記第1クラスタの群において、前記第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とに対応する第1クラスタを生成するステップと、
を含む方法。
【請求項8】
少なくとも1つのCPUとメモリとを備える携帯端末装置の移動状態の推定に用いる第1及び第2モデルを生成する方法であって、該CPUが、
時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の前記学習用特徴パラメータからなる第1クラスタの群を生成するステップと、
前記第1クラスタの群において、前記第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とが対応する第1クラスタを生成するステップと、
前記学習用特徴パラメータ毎に、前記学習用特徴パラメータと、代表特徴パラメータとのパラメータ毎の差に基づいて、該差が所定の条件を満足する1の第1クラスタを順次選定するステップと、
前記順次選定された第1のクラスタの所定数毎に、各第1クラスタに対応する各第1確率表に基づいて、学習用セグメント確率表を算出するステップと、
前記算出された各学習用セグメント確率表を複数の第2クラスタにクラスタリングし、該各第2クラスタは1又は複数の前記学習用セグメント確率表からなる第2クラスタの群を生成するステップと、
前記第2クラスタの群において、第2クラスタ毎に、前記各第2クラスタを代表する1の第2代表確率表と、各移動状態が出現する確率を表す第2確率表と、が対応する第2クラスタを生成するステップと、
を含む方法。
【請求項9】
少なくとも1つのCPUと、歩数計と、アンテナと、加速度センサとを備える携帯端末装置の移動状態の変化を検知する方法であって、該携帯端末装置は該歩数計により第1の情報を、該アンテナにより第2の情報を、該加速度センサにより第3の情報を取得可能であって、該CPUは、
推定された移動状態が第1の移動状態の場合には第1の情報のみを取得し、該第1の情報が該第1の移動状態に対応している場合には、該推定された第1の移動状態を推定結果として取得し、前記第3の情報に変化があるか否かを監視するステップと、
推定された移動状態が第2の移動状態の場合には、前記第1の情報及び第2の情報を取得し、前記第1の情報及び前記第2の情報が第2の移動状態に対応している場合には、該推定された第2の移動状態を推定結果として取得し、前記第1の情報及び前記第2の情報に変化があるか否かを監視するステップと、
推定された移動状態が第3の移動状態の場合には、前記第1の情報を取得し、前記第1の情報が第3の移動状態に対応している場合には、該推定された第3の移動状態を推定結果として取得し、前記第1の情報に変化があるか否かを監視するステップと、
からなる移動状態の変化を検知する方法。
【請求項10】
携帯端末装置の移動状態を推定する携帯端末装置であって、
複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、
CPUと、であって、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、
前記選定された第1クラスタに対応する前記確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する、
携帯端末装置。
【請求項11】
請求項10において、前記第1確率表は、前記各第1クラスタに含まれる学習用特徴パラメータに対応する移動状態毎の確率データを移動状態毎に有する、携帯端末装置。
【請求項12】
携帯端末装置の移動状態を推定する携帯端末装置であって、
複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、
CPUと、であって、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、
前記選定された第1クラスタに対応する前記第1確率表に基づいて時系列に推定用セグメント確率表を算出し、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、
1又は複数のパラメータから構成される前記推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、前記複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定し、
前記選定された第2クラスタに対応する前記第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する、
携帯端末装置。
【請求項13】
請求項12において、前記第1確率表は、前記各第1クラスタに含まれる学習用特徴パラメータに対応する移動状態毎の確率データを移動状態毎に有し、前記第2確率表は、前記各第2クラスタに含まれる学習用セグメント確率表に対応する移動状態毎の確率データを移動状態毎に有する、携帯端末装置。
【請求項14】
携帯端末装置の移動状態を推定する携帯端末装置であって、
複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、
CPUと、であって、該CPUが
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、
前記選定された第1クラスタに対応する前記第1確率表に基づいて算出された時系列にメモリに格納された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定をし、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、
1又は複数のパラメータから構成される推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、複数のクラスタから該差が第3の条件を満足する1の第2クラスタを選定し、
前記選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定をし、
前記第1の推定ステップ、および前記第2の推定ステップにより推定された結果を用いて移動状態を推定する、
携帯端末装置。
【請求項15】
携帯端末装置の移動状態を推定する携帯端末装置であって、
複数の第1クラスタを格納するメモリであって、該各第1クラスタは、該各第1クラスタを代表する1の代表特徴パラメータと、移動状態毎の確率を有する1の第1確率表とに対応する、メモリと、
CPUと、であって、該CPUが、
時系列に前記メモリに格納された、1又は複数のパラメータから構成される推定用特徴パラメータと、1又は複数のパラメータから構成される各前記代表特徴パラメータとのパラメータ毎の差に基づいて、前記複数の第1クラスタから該差が第1の条件を満足する1の第1クラスタを選定し、
前記選定された第1クラスタに対応する前記第1確率表に基づいて算出された推定用セグメント確率表から、第2の条件を満足する移動状態を特定することにより移動状態を推定する第1の推定をし、
前記推定用セグメント確率表を用いて複数の第2クラスタを生成するステップであって、それぞれ該第2クラスタを代表する1の第2代表確率表と、移動状態毎の確率を有する1の第2確率表とに対応する、複数の第2クラスタを生成し、
1又は複数のパラメータから構成される前記推定用セグメント確率表と、1又は複数のパラメータから構成される各前記第2代表確率表とのパラメータ毎の差に基づいて、前記複数の第2クラスタから該差が第3の条件を満足する1の第2クラスタを選定し、
前記選定された第2クラスタに対応する第2確率表から、第4の条件を満足する移動状態を選定することにより移動状態を推定する第2の推定をし、
前記第1の推定ステップ、および前記第2の推定ステップにより推定された結果が第5の条件を満足する場合に、該第5の条件により求められた結果に対応するフレームをキーフレームとして、フレーム・リストへ順次格納することによりフレーム・リストを生成し、
前記生成されたフレーム・リストにおいて、一のキーフレームと、その直前の一のキーフレームとが同一の移動状態に対応する場合に、
前記一のキーフレームに対応する移動状態が、所定の移動状態の場合に、前記一のキーフレームと、前記その直前の一のキーフレームとの間において、所定の条件を満たしているか判定し、
前記所定の条件を満たしている場合に、前記直前の一のキーフレームから前記一のキーフレームに対応する移動状態を前記キーフレームに対応する移動状態として確定することにより、移動状態を推定する、
携帯端末装置。
【請求項16】
携帯端末装置の移動状態の推定に用いるモデルを生成するシステムであって、
全ての移動状態に対応する複数の学習用特徴パラメータを時系列に格納しているメモリと、
CPUと、であって、該CPUが
時系列に前記メモリに格納されている全ての移動状態に対応する前記複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の前記学習用特徴パラメータからなる第1クラスタの群を生成し、
前記第1クラスタの群において、前記第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とに対応する第1クラスタを生成する、
システム。
【請求項17】
携帯端末装置の移動状態の推定に用いる第1及び第2モデルを生成するシステムであって、
全ての移動状態に対応する複数の学習用特徴パラメータを時系列に格納しているメモリと、
CPUと、であって、該CPUが、
時系列にメモリに格納されている全ての移動状態に対応する複数の学習用特徴パラメータを複数の第1クラスタにクラスタリングし、該各第1クラスタは1又は複数の前記学習用特徴パラメータからなる第1クラスタの群を生成し、
前記第1クラスタの群において、前記第1クラスタ毎に前記各第1クラスタを代表する1の代表特徴パラメータと、各移動状態が出現する確率を有する第1確率表とが対応する第1クラスタを生成し、
前記学習用特徴パラメータ毎に、前記学習用特徴パラメータと、代表特徴パラメータとのパラメータ毎の差に基づいて、該差が所定の条件を満足する1の第1クラスタを順次選定し、
前記順次選定された第1のクラスタの所定数毎に、各第1クラスタに対応する各第1確率表に基づいて、学習用セグメント確率表を算出し、
前記算出された各学習用セグメント確率表を複数の第2クラスタにクラスタリングし、該各第2クラスタは1又は複数の前記学習用セグメント確率表からなる第2クラスタの群を生成し、
前記第2クラスタの群において、第2クラスタ毎に、前記各第2クラスタを代表する1の第2代表確率表と、各移動状態が出現する確率を表す第2確率表と、が対応する第2クラスタを生成する、
システム。
【請求項18】
少なくとも1つのCPUと、歩数計と、アンテナと、加速度センサとを備える携帯端末装置の移動状態の変化を検知する携帯端末装置であって、該携帯端末装置は該歩数計により第1の情報を、該アンテナにより第2の情報を、該加速度センサにより第3の情報を取得可能であって、該CPUは、
推定された移動状態が第1の移動状態の場合には第1の情報のみを取得し、該第1の情報が該第1の移動状態に対応している場合には、該推定された第1の移動状態を推定結果として取得し、前記第3の情報に変化があるか否かを監視し、
推定された移動状態が第2の移動状態の場合には、前記第1の情報及び第2の情報を取得し、前記第1の情報及び前記第2の情報が第2の移動状態に対応している場合には、該推定された第2の移動状態を推定結果として取得し、前記第1の情報及び前記第2の情報に変化があるか否かを監視し、
推定された移動状態が第3の移動状態の場合には、前記第1の情報を取得し、前記第1の情報が第3の移動状態に対応している場合には、該推定された第3の移動状態を推定結果として取得し、前記第1の情報に変化があるか否かを監視する、
ことにより、移動状態の変化を検知する携帯端末装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11A】
【図11B】
【図11C】
【図11D】
【図11E】
【図11F】
【図11G】
【図11H】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11A】
【図11B】
【図11C】
【図11D】
【図11E】
【図11F】
【図11G】
【図11H】
【公開番号】特開2010−286344(P2010−286344A)
【公開日】平成22年12月24日(2010.12.24)
【国際特許分類】
【出願番号】特願2009−140074(P2009−140074)
【出願日】平成21年6月11日(2009.6.11)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】
【公開日】平成22年12月24日(2010.12.24)
【国際特許分類】
【出願日】平成21年6月11日(2009.6.11)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】
[ Back to top ]