(57)【特許請求の範囲】
【請求項１】
歩検出における振り補償の方法であって、
モバイルデバイスの移動を示す加速度データを取得するステップと、
前記加速度データの固有値を計算するステップであって、前記固有値の変化が前記モバイルデバイスの振り状態または振りのない状態を表す、ステップと、
前記加速度データの前記計算された固有値に基づいて、前記モバイルデバイスが前記モバイルデバイスのユーザの手の中で振れているかどうかを判断するステップと、
歩データを出力するステップであって、
前記加速度データ、および
前記モバイルデバイスが前記ユーザの前記手の中で振れているかどうかの前記判断
に基づいて、出力するステップと
を含み、
前記モバイルデバイスがユーザの手の中で振れているかどうかを判断するステップが、前記加速度データの周波数解析を行うステップを含む、方法。
【請求項２】
前記モバイルデバイスがユーザの手の中で振れているかどうかを判断するステップが、前記加速度データがしきい値を超えるかどうかを判断するステップを含む、請求項1に記載の方法。
【請求項３】
前記しきい値が10m/s2から12m/s2の間である、請求項2に記載の方法。
【請求項４】
少なくとも1つの固有値がしきい値を超えるかどうかを判断するステップをさらに含む、請求項1に記載の方法。
【請求項５】
前記固有値の比率がしきい値を超えるかどうかを判断するステップをさらに含む、請求項1に記載の方法。
【請求項６】
前記周波数解析が自己相関を含む、または、前記周波数解析が、前記加速度データを仮定した名目歩速度と組み合わせるステップを含む、請求項1に記載の方法。
【請求項７】
前記周波数解析が、
前記加速度データから周波数を判断するステップと、
前記判断された周波数の2倍が既知の所定の歩速度範囲内であることを判断するステップと
を含む、請求項1に記載の方法。
【請求項８】
歩検出における振り補償の方法であって、
モバイルデバイスの移動を示す加速度データを取得するステップと、
前記加速度データの固有値を計算するステップであって、前記固有値の変化が前記モバイルデバイスの振り状態または振りのない状態を表す、ステップと、
前記加速度データの前記計算された固有値に基づいて、前記モバイルデバイスが前記モバイルデバイスのユーザの手の中で振れているかどうかを判断するステップと、
歩データを出力するステップであって、
前記加速度データ、および
前記モバイルデバイスが前記ユーザの前記手の中で振れているかどうかの前記判断
に基づいて、出力するステップと
を含み、
前記方法は、
前記ユーザが歩を進めたかどうかの判断に関する確率を判断するステップをさらに含む、方法。
【請求項９】
歩検出における振り補償の方法であって、
モバイルデバイスの移動を示す加速度データを取得するステップと、
前記加速度データの固有値を計算するステップであって、前記固有値の変化が前記モバイルデバイスの振り状態または振りのない状態を表す、ステップと、
前記加速度データの前記計算された固有値に基づいて、前記モバイルデバイスが前記モバイルデバイスのユーザの手の中で振れているかどうかを判断するステップと、
歩データを出力するステップであって、
前記加速度データ、および
前記モバイルデバイスが前記ユーザの前記手の中で振れているかどうかの前記判断
に基づいて、出力するステップと
を含み、
前記モバイルデバイスがユーザの手の中で振れているかどうかを判断するステップが、
重力の方向を推定するステップと、
重力の前記方向に対する前記モバイルデバイスの角度を判断するステップと、
前記角度がしきい値を超えるかどうかを判断するステップと
を含む、方法。
【請求項１０】
前記モバイルデバイスがユーザの手の中で振れているかどうかを判断するステップが、ジャイロスコープからのデータに少なくとも一部基づく、請求項1に記載の方法。
【請求項１１】
前記歩データを出力するステップが、検出された歩の数を出力するステップを含む、請求項1に記載の方法。
【請求項１２】
検出された歩の前記数が、前記モバイルデバイスが前記ユーザの前記手の中で振れているかどうかの前記判断に基づいて、変更される、および/または、前記歩データを出力するステップが、検出されない歩の数を出力するステップをさらに含む、および/または、前記歩データを出力するステップが、検出された歩の前記数に関連する確率を出力するステップをさらに含む、請求項11に記載の方法。
【請求項１３】
モバイルデバイスの移動を示す加速度データを取得するための手段と、
前記加速度データの固有値を計算するための手段であって、前記固有値の変化が前記モバイルデバイスの振り状態または振りのない状態を表す、手段と、
前記加速度データの前記計算された固有値に基づいて、前記モバイルデバイスが前記モバイルデバイスのユーザの手の中で振れているかどうかを判断するための手段と、
歩データを出力するための手段であって、
前記加速度データと、
前記モバイルデバイスが前記ユーザの前記手の中で振れているかどうかの前記判断と
に基づいて、出力するための手段と
を含み、
前記モバイルデバイスがユーザの手の中で振れているかどうかを判断するための手段が、前記加速度データの周波数解析を行う手段を含む、デバイス。
【請求項１４】
1つまたは複数のコンピューティングデバイスに請求項1から12のいずれか一項に記載の方法を実行させるために組み込まれた命令を含む、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、歩検出における振り補償に関する。
【背景技術】
【０００２】
慣性センサに基づく歩数計および歩検出器(step detectors)は、フィットネス、健康管理、測位システムなどで様々な用途を見出している。これらの用途における歩検出は、概して、歩行者に関する(たとえば、腰、手首、靴など)特定の位置に制約されるセンサに基づく。モバイルフォンおよび他のモバイルデバイスの場合、歩検出はより困難な場合があるが、これは、モバイルデバイスは(たとえば、歩行者の手、ポケット、ハンドバッグなど)種々の位置のいずれかの中で運ばれ、組み合わされた動きを受けることがあるためである。モバイルデバイスがユーザの振られている腕の手の中にあるとき行われる歩検出は特に困難な場合がある。したがって、そのような振り(swinging)が発生しているときに行われるモバイルデバイス内の歩検出は、非常に不正確であり得る。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許出願第13/398,653号
【発明の概要】
【課題を解決するための手段】
【０００４】
本発明の実施形態は、そのような振りが発生しているかどうかを判断することによって、モバイルデバイス内の歩検出精度を高めることに関する。
【０００５】
本発明によれば、振りは、たとえば、本明細書で説明するように、しきい値検出、固有値解析、ハイブリッド周波数解析、および/またはジャイロスコープベースの解析を使用して検出され得る。振りが発生している(または、発生し得る)という判断は、モバイルデバイスが歩検出のために検出された歩をどのように報告するかに影響を及ぼす可能性がある。歩数とともに、振り(swing)検出に基づいて、歩の欠落(missteps)の数および/または確実性レベルを与えることができる。
【０００６】
本開示による、歩検出における振り補償の例示的な方法は、モバイルデバイスの移動を示す加速度データを取得するステップと、モバイルデバイスがそのモバイルデバイスのユーザの手の中で振れている可能性があるかどうかを判断するステップと、加速度データ、およびモバイルデバイスがユーザの手の中で振れている可能性があるかどうかの判断に基づいて、歩データを出力するステップとを含む。
【０００７】
歩検出における振り補償の例示的な方法は、以下の特徴のうちの1つまたは複数を含み得る。モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するステップは、加速度データがしきい値を超えるかどうかを判断するステップを含み得る。しきい値は、10m/s2から12m/s2の間であり得る。モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するステップは、加速度データの固有値を計算するステップを含み得る。この方法は、少なくとも1つの固有値がしきい値を超えるかどうかを判断するステップ、および/または固有値の比率がしきい値を超えるかどうかを判断するステップをやはり含み得る。モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するステップは、加速度データの周波数解析を行うステップを含み得る。周波数解析は、自己相関および/または加速度データを名目歩速度(nominal step rate)と組み合わせることを含み得る。周波数解析は、加速度データから周波数を判断することと、判断された周波数の2倍が知られている所定の歩速度範囲内であることを判断することとを含み得る。この方法は、ユーザが歩を進めたかどうかの判断に関する確率を判断するステップをさらに含み得る。
【０００８】
加えて、または代替として、歩検出における振り補償の例示的な方法は、以下の特徴のうちの1つまたは複数を含み得る。モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するステップは、重力の方向を推定するステップと、重力の方向に対するモバイルデバイスの角度を判断するステップと、その角度がしきい値を超えるかどうかを判断するステップとを含み得る。モバイルデバイスが手の中で振れている可能性があるかどうかを判断するステップは、ジャイロスコープからのデータに少なくとも一部基づき得る。歩データを出力するステップは、検出された歩の数を出力するステップを含み得る。検出された歩の数は、モバイルデバイスがユーザの手の中で振れている可能性があるかどうかの判断に基づいて、元の数から変更され得る。歩データを出力するステップは、検出されていない歩の数および/または検出された歩の数に関連する確率を出力するステップをさらに含み得る。
【０００９】
本開示による例示的な装置は、メモリと、メモリに結合された処理ユニットを含むことが可能であり、処理ユニットは、モバイルデバイスの移動を示す加速度データを取得すること、モバイルデバイスがそのモバイルデバイスのユーザの手の中で振れている可能性があるかどうかを判断することと、加速度データ、およびモバイルデバイスがユーザの手の中で振れている可能性があるかどうかの判断に基づいて、歩データを出力することとを含む機能を実行するように構成される。
【００１０】
例示的な装置は、以下の特徴の1つまたは複数を含み得る。装置は、処理ユニットに通信可能に結合され、かつ加速度データを提供するように構成された加速度計を含み得る。処理ユニットは、ユーザが一歩を進めたかどうかの判断に関する確率を判断するようにさらに構成され得る。処理ユニットは、重力の方向を推定して、重力の方向に対するモバイルデバイスの角度を判断して、その角度がしきい値を超えるかどうかを判断することによって、モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するように構成され得る。処理ユニットは、ジャイロスコープからのデータに少なくとも一部基づいて、モバイルデバイスが手の中で振れている可能性があるかどうかを判断するように構成され得る。処理ユニットは、検出された歩の数を出力することによって、歩データを出力するように構成され得る。処理ユニットは、モバイルデバイスがユーザの手の中で振れている可能性があるかどうかの判断に基づいて、検出された歩の数を元の数から変更するように構成され得る。処理ユニットは、検出されていない歩の数および/または検出された歩の数に関連する確率を出力するようにさらに構成され得る。
【００１１】
本開示による例示的なデバイスは、モバイルデバイスの移動を示す加速度データを取得するための手段と、モバイルデバイスがそのモバイルデバイスのユーザの手の中で振れている可能性があるかどうかを判断するための手段と、加速度データ、およびモバイルデバイスがユーザの手の中で振れている可能性があるかどうかの判断に基づいて、歩データを出力するための手段とを含む。
【００１２】
例示的なデバイスは、以下の特徴の1つまたは複数を含み得る。モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するための手段は、加速度データの固有値を計算するための手段を含み得る。デバイスは、少なくとも1つの固有値がしきい値を超えるかどうかを判断するための手段および/またはその固有値の比率がしきい値を超えるかどうかを判断するための手段をさらに含み得る。モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するための手段は、加速度データの周波数解析を行うための手段を含む。周波数解析は自己相関を含み得る。周波数解析を行うための手段は、加速度データを名目歩速度と組み合わせるための手段を含み得る。周波数解析を行うための手段は、加速度データから周波数を判断するための手段と、判断された周波数の2倍が知られている所定の歩速度範囲内であることを判断するための手段とを含み得る。
【００１３】
本開示による例示的なコンピュータ可読記憶媒体は、1つまたは複数のコンピューティングデバイスに歩検出における振り補償を実行させるための命令を組み込むことができる。これらの命令は、モバイルデバイスの移動を示す加速度データを取得することと、モバイルデバイスがそのモバイルデバイスのユーザの手の中で振れている可能性があるかどうかを判断することと、加速度データ、およびモバイルデバイスがユーザの手の中で振れている可能性があるかどうかの判断に基づいて、歩データを出力することとを行うためのコンピュータコードを含み得る。
【００１４】
例示的なコンピュータ可読記憶媒体は、以下の特徴の1つまたは複数を含み得る。モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するためのコードは、加速度データがしきい値を超えるかどうかを判断するためのコードを含み得る。モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するためのコードは、加速度データの固有値を計算するためのコードを含み得る。モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するためのコードは、加速度データの周波数解析を行うためのコードを含み得る。モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断するためのコードは、重力の方向を推定して、重力の方向に対するモバイルデバイスの角度を判断して、その角度がしきい値を超えるかどうかを判断するためのコードを含み得る。歩データを出力するためのコードは、検出された歩の数を出力するためのコードを含む。
【００１５】
本明細書に記載される項目および/または技法は、以下の能力のうちの1つまたは複数、ならびに言及されていない他の能力を提供することができる。技法は、モバイルデバイスに関する歩検出における精度を高めることができる。これは、次に、フィットネスおよび健康管理、測位アプリケーションに関するデッドレコニングなど、歩数計を利用するアプリケーションの精度を改善し、最終的により良好なユーザ経験を実現し得る。これらのおよび他の利点ならびに特徴は、以下の文書および添付の図面に関連してより詳しく説明される。
【００１６】
様々な実施形態の本質および利点のさらなる理解は、以下の図面を参照することによって実現することができる。添付の図面では、類似の構成要素または特徴は、同じ参照ラベルを有する場合がある。さらに、同じタイプの様々な構成要素は、参照ラベルの後に、複数の類似の構成要素を区別するダッシュおよび第2のラベルを付けることによって、区別され得る。本明細書内で第1の参照ラベルのみが使用される場合、その説明は、第2の参照ラベルとは無関係に、同じ第1の参照ラベルを有する類似の構成要素のうちのいずれか1つに適用可能である。
【図面の簡単な説明】
【００１７】
【図１Ａ】経時的に測定された垂直加速度を示す加速度プロットおよびユーザに対するモバイルデバイスの対応する位置を示す図である。
【図１Ｂ】経時的に測定された垂直加速度を示す加速度プロットおよびユーザに対するモバイルデバイスの対応する位置を示す図である。
【図１Ｃ】経時的に測定された垂直加速度を示す加速度プロットおよびユーザに対するモバイルデバイスの対応する位置を示す図である。
【図２】一実施形態による、本明細書で説明する技法を利用できる測位システムの簡易図である。
【図３】本明細で説明する改善された歩検出の方法を実装するためにモバイルデバイスおよび/または他のデバイスによって利用され得る構成要素の例示的なブロック図である。
【図４】一連の活動の間のモバイルデバイスからの加速度の大きさのプロットである。
【図５】振り検出の例示的な方法のフロー図である。
【図６】振り状態および振りのない状態に関する固有値の変化を示す累積分布関数プロットである。
【図７】固有値解析を使用した振り検出の例示的な方法のフロー図である。
【図８】自己相関式の変化を示すのに役立つ簡素化されたタイミング図である。
【図９Ａ】自己相関が周期性をどのように検出できるかを示すために使用されるプロットである。
【図９Ｂ】自己相関が周期性をどのように検出できるかを示すために使用されるプロットである。
【図１０】本明細で説明する改善された歩検出の方法を実装するために、モバイルデバイスおよび/または他のデバイスによって利用され得る構成要素の例示的なブロック図である。
【図１１】ハイブリッド周波数解析を使用した振り検出の例示的な方法のフロー図である。
【図１２】ハイブリッド周波数解析を使用した歩検出の例示的な方法のフロー図である。
【図１３】加速度の大きさ、加速度拡散、および(加速度の大きさの上に点として示される)検出されたピークのプロットである。
【図１４】一実施形態による、歩検出における振り補償の方法のフロー図である。
【図１５】モバイルデバイスの一実施形態を示す図である。
【発明を実施するための形態】
【００１８】
以下の説明は図面を参照して提供され、全体を通して、同じ参照番号は同じ要素を指すために使用される。本明細書では1つまたは複数の技法の様々な詳細が説明されるが、他の技法も同様に可能である。場合によっては、様々な技法の説明を容易にするために、構造およびデバイスがブロック図の形式で示されている。
【００１９】
本明細書で言及する「命令」は、1つまたは複数の論理演算を表す表現に関係する。たとえば、命令は、1つまたは複数のデータオブジェクトに対して1つまたは複数の動作を実行する機械によって翻訳可能であることにより、「機械可読」であり得る。ただし、これは、命令の例にすぎず、請求する主題は、この点について限定されない。別の例では、本明細書で言及する命令は、符号化コマンドを含むコマンドセットを有する処理ユニットによって実行可能である符号化コマンドに関係し得る。そのような命令は、処理ユニットによって理解される機械語の形態で符号化され得る。やはり、これらは命令の例にすぎず、請求する主題は、この点について限定されない。
【００２０】
慣性センサベースの歩検出器は、フィットネスおよび健康管理、消防士用のデッドレコニングなど、モバイルデバイスのユーザが歩を進めるときの情報を利用することができる種々のアプリケーションで利用される。大部分のアプリケーションでは、センサはユーザに対して制約された位置に配置される。たとえば、センサはユーザの腰、手首、靴などに取り付けられる。モバイルフォン、携帯用メディアプレイヤ、ゲームデバイス、および他の携帯用電子機器など、モバイルデバイス内の慣性センサの普及により、これらのモバイルデバイスを使用して、ユーザが進めた歩の数を推定することもできる。しかしながら、モバイルデバイスは制約された位置に保持されないため、結果として、慣性センサは、歩行の間に振っている手の中にモバイルデバイスを保持することを含めて、歩および他の活動に起因する、組み合わされた動きを測定する可能性がある。
【００２１】
たとえば、モバイルデバイス上で実行するリアルタイム歩数計は、たとえば、測位からフィットネス管理まで、種々のアプリケーションを有し得る。歩行は、モバイルデバイス上の加速度計からのデータに明確な周期的パターンを生じさせる場合がある。図1Aは、画像140-Aに示されるように、ユーザが(およそ毎秒2歩で)一定の歩行を行っているときの、ユーザの腰におけるモバイルデバイス105からの(加速度の大きさとして示される)加速度計データのプロット100-Aを用いた図である。50Hzでサンプリングされたデータは、重力加速度(およそ、9.8m/s2)を中心とする、およそ2〜5メートル毎秒毎秒(m/s2)でピークに達する加速度の変化を示す。加速度計データのパターンを使用して、歩行を検出すること、および/または歩を計数することができる。ここでは、データは比較的単純であり、(より大きなピーク上に出現し得るより小さなピークは無視して)各ピーク110は、ユーザが進める歩に対応する。(注記:簡単のために、図1A〜図1Cのプロット100のピーク110、120、および130の小さなサブセットだけがラベル付けされている)。実施形態は下で加速度計に関して説明されるが、いくつかの実施形態では、加えて、または代替で、ジャイロスコープを使用することが可能である。
【００２２】
図1Bは、図1Aに類似した、経時的に測定された垂直加速度を示す、別の加速度プロット100-Bを示す。プロット100-Bはまた、モバイルデバイスを振ることが歩検出(ユーザが歩を進めることの検出、すなわち「歩み検出」)をどの程度困難にし得るかを示す。この例では、画像140-Bに示すように、ユーザが急ぎ足で歩行している間、モバイルデバイス105はユーザの手の中で前後に振れている。ここでは、加速度データは区別可能なパターンを有するが、ユーザの手の振りに起因する、高いピーク120はユーザの歩に相関するより低いピーク130をマスキングすることが多い。プロット100-Bでは、単一の高いピーク120は2つのより低いピーク130をマスキングし得る。すなわち、各高いピーク120はユーザが進める2歩に相関する。
【００２３】
図1Cは、プロット100-Bと比較して、ユーザがゆっくりした歩調で歩行している間、モバイルデバイス105が(画像140-Cに示すように)ユーザの手の中で前後に振れている加速度プロット100-Cを示す。この例では、より高いピーク120は、2歩ではなく、1歩に相関する、1つのより低いピーク130だけをマスキングする可能性が高い。
【００２４】
振りは歩検出に実質的な影響を及ぼす可能性があるため、振りが発生しているかどうかを判断することは有利であり得る。したがって、本明細書で提供する技法は、そのような振りが発生しているかどうかを判断することによって、モバイルデバイス内の歩検出精度を高めることを可能にする。本発明によれば、振りは、本明細書に詳述されるように、しきい値検出、固有値解析、および/またはハイブリッド周波数解析を使用して検出され得る。振りが発生している(または、発生し得る)という判断は、モバイルデバイスが歩検出のために検出された歩をどのように報告するかに影響を及ぼす可能性がある。歩数とともに、振り検出に基づいて、歩の欠落の数および/または確実性レベルを与えることができる。
【００２５】
図2は、たとえば、本明細書で説明する技法を利用できる測位システム200の簡易図である。モバイルデバイス105および/または測位システム200の他の構成要素は、様々なデータ点を処理して、モバイルデバイス105の位置を判断することができる。そのようなデータ点は、本明細書において下で説明する技法を使用する歩検出を含み得る。測位システムは、モバイルデバイス105と、衛星測位サービス(SPS)衛星210と、送受信基地局220と、モバイルネットワークプロバイダ240と、アクセスポイント230と、ロケーションサーバ260と、マップサーバ270と、インターネット250とを含み得る。図2が、そのいずれかまたは全部を適宜利用することができる様々な構成要素を概略的に示すものにすぎないことに留意されたい。さらに、必要に応じて、異なる構成要素を追加すること、省略すること、組み合わせること、および/または分離することが可能である。示された構成要素に対する多くの変更を当業者は認識されよう。さらに、図2に示す測位システム200は、本明細書で提供される歩検出技法を使用することができる例示的なシステムとして提供される。しかしながら、実施形態はそのように限定されない。すでに示したように、本明細書で提供される歩検出技法は、図2のモバイルデバイス105以外の種々のデバイスで、かつ測位以外の種々のアプリケーションで利用可能である。
【００２６】
測位システム200では、モバイルデバイス105の位置は種々の情報から判断され得る。たとえば、モバイルデバイス105の位置は、SPS衛星210から送信された情報とともに、三角行列化および/または他の測位技法を使用して計算され得る。これらの実施形態では、モバイルデバイス105は、特に、SPS衛星210から送信された複数の信号212から位置データを抽出するSPSとともに使用するように実装される受信機を利用することができる。送信された衛星信号は、たとえば、設定された数のチップの繰返し擬似ランダム雑音(PN)コードによりマークされた信号を含むことが可能であり、地上の制御局、ユーザ機器、および/または宇宙ビークルに配置され得る。衛星測位システムは、Global Positioning System(GPS)、Galileo、Glonass、Compass、日本のQuasi-Zenith Satellite System(QZSS)、インドのIndian Regional Navigational Satellite System(IRNSS)、中国のBeidouなどのシステム、ならびに/あるいは1つもしくは複数の全地球および/または地域航法衛星システムに関連付けるか、または場合によっては、それらのシステムとともに使用することが可能な、様々なオーグメンテーションシステム(augmentation systems)(たとえば、Satellite Based Augmentation System(SBAS))を含み得る。限定ではなく例として、SBASは、たとえば、Wide Area Augmentation System(WAAS)、European Geostationary Navigation Overlay Service(EGNOS)、Multi-functional Satellite Augmentation System(MSAS)、GPS Aided Geo Augmented Navigation、またはGPS and Geo Augmented Navigationシステム(GAGAN)などのような、インテグリティ情報、差分修正などを提供する、補強システムを含み得る。
【００２７】
実施形態は、送受信基地局220およびモバイルネットワークプロバイダ240(たとえば、セルフォンサービスプロバイダ)、ならびにアクセスポイント230によって提供される通信および/または測位能力を使用することも可能である。したがって、いくつかの実施形態では、モバイルデバイス105との間の通信はまた、様々なワイヤレス通信ネットワークを使用して実装され得る。たとえば、モバイルネットワークプロバイダ240は、広域ワイヤレスネットワーク(WWAN)などを含み得る。アクセスポイント230は、ワイヤレスローカルエリアネットワーク(WLAN)、ワイヤレスパーソナルエリアネットワーク(WPAN)などの一部であり得る。「ネットワーク」および「システム」という用語は、交換可能に使用され得る。WWANは、符号分割多重接続(CDMA)ネットワーク、時分割多重接続(TDMA)ネットワーク、周波数分割多重接続(FDMA)ネットワーク、直交周波数分割多重接続(OFDMA)ネットワーク、単一キャリア周波数分割多重接続(SC-FDMA)ネットワーク、WiMax(IEEE802.16)などであってよい。CDMAネットワークは、cdma2000、広帯域CDMA(W-CDMA)などの1つまたは複数の無線アクセス技術(RAT)を実装することができる。cdma2000は、IS-95規格、IS-2000規格、およびIS-856規格を含む。TDMAネットワークは、Global System for Mobile Communications(GSM(登録商標))、Digital Advanced Mobile Phone System(D-AMPS)、または何らかの他のRATを実装することができる。OFDMAネットワークは、Long Term Evolution(LTE)、LTE Advancedなどを実装することができる。LTE、LTE Advanced、GSM(登録商標)、およびW-CDMAは、「第3世代パートナーシッププロジェクト」(3GPP)という名称の組織からの文書で説明される。cdma2000は、「第3世代パートナーシッププロジェクト2」(3GPP2)という名称の組織からの文書で説明される。3GPPおよび3GPP2の文書は、公的に入手可能である。WLANはまたIEEE802.11xネットワークであり得、またWPANはBluetooth(登録商標)ネットワーク、IEEE802.15x、または何らかの他のタイプのネットワークであり得る。本明細書で説明する技法はまた、WWAN、WLAN、および/またはWPANの任意の組合せのために使用され得る。
【００２８】
モバイルネットワークプロバイダ240および/またはアクセスポイント230はさらに、モバイルデバイス105をインターネット250に通信可能に接続することができる。他の実施形態は、インターネット250に加えて、またはインターネット250に代わるものとして、他のネットワークを含み得る。そのようなネットワークは、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)などを含めて、種々の公衆および/または私設通信網のうちのいずれかを含み得る。さらに、ネットワーキング技術は、光技術、無線周波数(RF)技術、有線技術、衛星技術、および/もしくは他の技術を利用する交換ならびに/またはパケット網を含み得る。
【００２９】
アクセスポイント230は、たとえば、RTTおよび/またはRSSI測定に基づく三辺測量ベースの手順を実装することによって、モバイルデバイス105、ならびに位置データの独立したソースとのワイヤレス音声および/またはデータ通信のために使用され得る。アクセスポイント230を使用してモバイルデバイスの位置を判断するさらなる例示的な実施形態は、参照によりその全体が本明細書に組み込まれている、「MEASUREMENTS AND INFORMATION GATHERING IN A WIRELESS NETWORK ENVIRONMENT」という名称の米国特許出願第13/398,653号で提供されている。アクセスポイント230は、WWANよりも小さな地理的領域を通して通信を実行するために建物内で動作するWLANの一部であり得る。アクセスポイント230は、WiFiネットワーク(802.11x)、セルラーピコネットおよび/またはフェムトセル、Bluetooth(登録商標)ネットワークなどの一部であり得る。アクセスポイント230は、Qualcomm屋内測位システム(QUIPSTM:Qualcomm indoor positioning system)の一部を形成することも可能である。実施形態は、そのうちのいずれかは可動ノードであってよく、あるいは、移転されることが可能な任意の数のアクセスポイント230を含み得る。
【００３０】
図2に示した測位システム200の様々な構成要素に加えて、モバイルデバイス105は、内部構成要素からのデータを利用して、位置判断を支援することができる。たとえば、モバイルデバイス105は、ジャイロスコープ、加速度計、線形加速度計として使用される微小電気機械システム(MEMS)センサ、重力計、ならびに磁力計など、種々のセンサを含み得る。たとえば、センサは、いくつかの実施形態において、ジャイロスコープと加速度計とを備え得る。いくつかの実施形態では、センサは慣性航行システム(INS)を備えるか、またはその中に含まれる。INSは、たとえば、ジャイロスコープ情報のみを用いる姿勢のみINS(attitude-only-INS)を備える。いくつかの実施形態では、INSは、たとえば加速度計測定値とジャイロスコープ測定値の両方を用いる6自由度(DOF)INSを備える。いくつかの実施形態では、INSは、たとえば、固定ターゲットフレーム内の、重力ベクトルによって表すことが可能な重力を判断する。上に示したように、そのようなセンサは、位置判断の精度を補完および/またはさらに改善することができる歩数計用の歩検出において利用可能である。そのような慣性センサは、特に、モバイルデバイス105のSPS受信機が、屋内環境など、位置判断のためにSPS衛星から十分な情報を受信することができないときの測位に関して有利であり得る。
【００３１】
図2のモバイルデバイス105など、モバイルデバイスにおける歩検出精度は、振りが発生しているかどうかを判断して、発生している場合、振りを明らかにすることによって改善され得る。図3は、本明細で説明する改善された歩検出の方法を実装するためにモバイルデバイスおよび/または他のデバイスによって利用され得る構成要素の例示的なブロック図を示す。示される実施形態では、構成要素は、歩検出モジュール320、振り検出モジュール330、および/または振り修正モジュール340を含み得る。これらの構成要素は、図15に関して下でより詳細に説明するような、モバイルデバイスのソフトウェアおよび/またはハードウェアで実装され得る。いくつかの実施形態では、振り修正モジュール340は、振り修正および/または振り補償を実装することができる。いくつかの実施形態では、要素の数は示される数よりも多くてよく、または少なくてもよい。いくつかの実施形態では、より多くのまたはより少ない数のモジュール結合が存在する場合があり、かつ/または結合はいずれかの方向に一方向であってよく、もしくは双方向であってもよい。モジュール320、330、および340は感知ユニット310とは別に示されるが、モジュールの各々のすべてまたは一部は、感知ユニット310と組み合わせて実装され得る。
【００３２】
各モジュールの機能は、所望される機能に応じて、異なり得る。感知ユニット310は、1つもしくは複数の加速度計、ジャイロスコープ、および/または図15に関して下でさらに詳細に説明するセンサ1540など、モバイルデバイスの移動を示すデータを提供することが可能な他のセンサを含み得る。歩検出モジュール320は、感知ユニット310および/または振り検出モジュール330から入力を受信して、そのモバイルデバイスのユーザが歩を進めたか否かを検出するように構成され得る。振り検出モジュール330は、感知ユニット310および/または振り修正モジュール340から入力を受信して、そのモバイルデバイスが振り(たとえば、そのモバイルデバイスユーザの腕の中で振れている)状態にあるかどうかを判断することができる。
【００３３】
本明細書の実施形態は、振り検出モジュール330によって実行され得る振り検出のための1つまたは複数の技法を利用することができる。実施形態は、この振り検出をさらに使用して、歩行(たとえば、図1Aの画像140-A)を歩行の間に手の中でモバイルデバイスを振ること(それぞれ、図1Bおよび図1Cの画像140-Bならびに140-C)（本明細書では「振り状態」とも称する）と区別して、それに応じて、検出された歩を修正することができる。さらに、振り検出は、慣性センサを使用してユーザの整合を推定することなど、他の用途に関しても有利であり得る。
【００３４】
しきい値検出
図1Bおよび図1Cに関してすでに示したように、歩行の間にモバイルデバイスを振ることは、一般に、歩行だけよりも、モバイルデバイスによって収集される加速度データにより高いピークをもたらす。これは、振りの間、重力および歩行による力に加えて、遠心力がモバイルデバイスに作用するためである。遠心力の方位はデバイスに対してほぼ一定であり得、これは加速度データにより大きな変化をもたらす。したがって、加速度データがあるしきい値を満たすかまたはそれを超えるかを単に判断することによって、振りを検出することができる。
【００３５】
図4は、加速度データを使用して振りを判断するために、しきい値をどのように利用できるかを示す、一連の活動の間のモバイルデバイスからの加速度の大きさのプロット400である。ここでは、加速度計データは、垂直加速度、データの中心をゼロ加速度に合わせるための重力のオフセットを表す。いくつかの実施形態では、加速度データは、総合的な大きさ(たとえば、加速度計のすべての3つの軸からのデータ)、または加速度計の2つ以上の軸の組合せを含み得る。他の実施形態は、重力加速度をオフセットしない場合がある。
【００３６】
種々の活動を加速度データの種々のパターンから判断することができる。たとえば、第1の期間410に示されたパターンは歩行を表す。期間420は、疲れによる不規則な加速度を示し、期間430は、モバイルデバイスが動かない状態で握られているときを示す。期間440におけるより大きな加速度の振りは、ユーザが歩行の間に手の中でデバイスを振っていることを表す。示されるように、加速時の振りは、他の活動による振りの加速度よりも大きい。したがって、しきい値は、たとえば、そのしきい値以上の任意の加速度が振りを示すことができるように設定され得る。この例では、しきい値はおよそ2.5m/s2である。加速度が重力によってオフセットされる実施形態では、しきい値は10m/s2から12m/s2の間であり得る。他の実施形態は、これらの例より高いかまたは低いしきい値を含み得る。
【００３７】
しきい値が満たされるか、またはそれを超えるとき、振りを示すために信号が生成され得る。たとえば、加速度データに加えて、図4のプロット400はまた、振りを示すために生成された信号450を示す。この信号は、たとえば、図3の振り検出モジュール330によって生成され得る。信号の振幅および周波数は、所望される機能に応じて、異なり得る。
【００３８】
図5は、振り検出の例示的な方法500のフロー図である。いくつかの実施形態では、方法500は、図3の振り検出モジュール330によって実行されてもよい。加えて、または代替で、方法500の構成要素のうちの1つまたは複数を実行するための手段は、図15に関してさらに詳細に説明するハードウェアおよび/またはソフトウェア手段を含み得る。方法500の構成要素は、特定の順序で示されるが、異なる実施形態によれば、異なる順序で、かつ/または同時に実行され得る。さらに、多くの追加、省略、および/または他の変形を当業者は認識されよう。
【００３９】
ブロック510で、加速度データの1つまたは複数のサンプルをしきい値と比較することができる。すでに述べたように、しきい値は、解析されている加速度データのタイプ(たとえば、加速度計の単一の軸または複数の軸)、所望される感度、モバイルデバイスユーザの識別など、種々の要因に応じて変化し得る。いくつかの実施形態では、しきい値は、そのユーザおよび/もしくは他のモバイルデバイスユーザから受信された加速度値に基づいて、そのデバイスならびに/または遠隔システムによって変更され得る。これは、デバイスが、経時的に1人または複数のユーザから学習することによって、しきい値ベースの振り検出の精度を高めことを可能にする。ブロック510における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、および/または他の構成要素を含み得る。
【００４０】
ブロック520で、サンプルがしきい値を超える場合、そのサンプルおよび/またはそのサンプルの周囲の加速度計データの一部が振り状態に対応すると判断される。いくつかの実施形態では、複数のサンプルを比較することができ、判断はサンプルのうちの1つまたは複数のサンプルに基づいて行われてよい。いくつかの実施形態では、窓内のサンプルの大部分がしきい値を超える場合、振り状態を判断することができる。いくつかの実施形態では、サンプルのうちのいずれかがしきい値を超える場合、振り状態を判断することができる。ブロック520における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、および/または他の構成要素を含み得る。
【００４１】
固有値解析
加えて、または代替で、ある窓にわたる加速度データの固有値を計算して、振りが発生しているかどうかを判断することができる。この固有値解析を利用する実施形態は、ある時間窓にわたって、加速度計の1つまたは複数の軸から加速度データの固有値を計算するステップを含み得る。それを用いて固有値を計算することができる時間窓は、所望の機能に応じて、異なり得る。いくつかの実施形態では、時間窓は、加速度データの2つのピークを含むように計算され得る。他の実施形態は、長さが数秒である時間窓を単に含み得る。
【００４２】
固有値はデータの分散を反映する。振りは、結果として、加速度データに大量の分散をもたらす。したがって、モバイルデバイスが振りを受けるとき、加速度データの固有値は、通常の歩行の間よりもかなり大きい可能性がある。図6は、固有値を計算するためのデータ点(y軸)の増大に伴う値の分散(x軸)の増大を示す、振り状態および振りのない状態に関する固有値の変化を示す累積分布関数グラフ600である。プロット640および630は、モバイルデバイスが振り状態にある間の第1の固有値および第2の固有値を表し、これらの値は、プロット610および620に示すように、ユーザが歩行している間にモバイルデバイスがユーザに対して静止位置にある間に計算された第1の固有値および第2の固有値よりもかなり高い。モバイルデバイスがこれらの2つの状態(歩行の間に振る状態、および歩行だけの状態)にある際の固有値のこの差は、2つの状態の検出を実現し得る。
【００４３】
振り検出に関する固有値解析は、加速度計のすべての軸を利用しなくてもよい。1つまたは2つの軸のみが使用される場合、実施形態はまた、どの軸がデータ内の最大分散を有するかを判断するステップと、そのデータを使用して、固有値を計算するステップとを含み得る。固有値を所定のしきい値と比較して、振りが発生しているかどうかを判断することができる。実施形態は、組み合わされたしきい値、別のしきい値(たとえば、各軸に関して1つのしきい値)、および/または比率(たとえば、固有値2に対する固有値1の比率がしきい値を満たすかまたは超えるかどうか)を含み得る。
【００４４】
図7は、固有値解析を使用した振り検出の例示的な方法700のフロー図である。いくつかの実施形態では、方法700は、図3の振り検出モジュール330によって実行されてもよい。加えて、または代替で、方法700の構成要素のうちの1つまたは複数を実行するための手段は、図15に関してさらに詳細に説明するハードウェアおよび/またはソフトウェア手段を含み得る。方法700の構成要素は、特定の順序で示されるが、異なる実施形態によれば、異なる順序で、かつ/または同時に実行され得る。さらに、多くの追加、省略、および/または他の変形を当業者は認識されよう。
【００４５】
ブロック710で、加速度データの1つまたは複数の固有値を計算する。いくつかの実施形態では、最大分散を示す固有値だけが使用される。これらの固有値は、一般に、(ユーザに対するデバイスの左右方向移動ではなく)ユーザに対するデバイスの前方/後方移動および垂直移動が明白な加速度計軸に対応する。ブロック710における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、および/または他の構成要素を含み得る。
【００４６】
ブロック720で、1つまたは複数の固有値が1つまたは複数のしきい値と比較して、ブロック730で、ブロック720における比較に基づいて、加速度データが振り状態に対応するかどうかを判断する。いくつかの実施形態では、第1の固有値および第2の固有値を、単一のしきい値、または2つのそれぞれのしきい値と比較することができる。いくつかの実施形態では、両方の固有値が振り状態に対応すると判断された場合、振り状態が判断される。いくつかの実施形態では、固有値のうちのいずれかが振り状態に対応する場合、振り状態が判断される。加えて、または代替で、ブロック720における比較は、2つの固有値の比率(たとえば、最小固有値に対する最大固有値の比率)がしきい値を超えるかどうかを判断するステップを必要とし得る。ブロック720および/またはブロック730における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、および/または他の構成要素を含み得る。
【００４７】
振り状態の間、通常の歩行と比較して、モバイルデバイスの垂直方位により大きな分散が存在し得る。いくつかの実施形態では、重力を推定することができる。たとえば、(たとえば、図3の感知ユニット310からの)加速度データに関する低域フィルタを使用して、重力の方向を推定することができる。現在の加速度ベクトルと重力とによって形成される角度を計算して、しきい値と比較して、振り状態を検出することができる。低域フィルタを図3の振り修正モジュール340内に含めることができ、かつ/または図15に関して下でさらに詳細に説明するように、モバイルデバイスの他のハードウェアおよび/もしくはソフトウェアで実装することができる。
【００４８】
ハイブリッド周波数解析
振り検出に関する加速度データの周波数解析は、正確であり得るが、周波数解析は、一般に、大きな時間窓からのデータを必要とするため、遅延を生じさせる場合がある。他方で、ピーク検出は遅延がほとんどまたはまったくないが、周波数解析ほど正確でない場合がある。これを考慮に入れて、実施形態は、加速度データに関して自己相関(または、別の周波数解析)を実行して、所与の瞬間に、そのデータが周期性を有するかどうかを判断し、そうである場合、その周波数を判断することができるハイブリッド周波数解析を用いることができる。下で説明するハイブリッド周波数解析に関する技法は自己相関に関するが、他の周波数解析技法を使用して特徴を抽出することができることを当業者は諒解されよう。たとえば、いくつかの実施形態では、FFTなどのフーリエ変換を使用することができる。
【００４９】
自己相関など、周波数解析技法を使用して、モバイルデバイスの加速度計からの信号が周期的であるかどうかを検出することができ、この技法をさらに使用して、優位周波数を推定することができる。多くの状況において、優位周波数は、モバイルデバイスを装着または携帯しているユーザの歩速度に対応する。
【００５０】
自己相関を使用して、たとえば、加速度データの小さな窓にわたってそのデータを表す信号が周期的であるかどうか、ならびに/または信号の周波数が歩行および/もしくは走行に関して予測される範囲内であるかどうかを判断することができる。
いくつかの実施形態では、自己相関は以下の式を使用することができる。
【００５１】
【数１】
0006352299.tif 000002
【００５２】
図8は、At、At+τ、およびτを示すのに役立つ、方程式(1)で使用される簡素化されたタイミング図である。ブロックAtおよびAt+τは、τによって分離された時間窓からのデータを表す。AtおよびAt+τが強く相関すればするほど、出力R(τ)はますます高くなる。自己相関は、ラグ値τの固定範囲に関する加速化の固定時間窓にわたって計算され得る。いくつかの実施形態では、たとえば、ラグ値の範囲は0.3秒から2秒であり得る。
【００５３】
解析の周波数に関して時間窓が利用可能でない場合(たとえば、プロセスが始まったばかりである場合)、名目歩速度を仮定することができる。いくつかの実施形態では、たとえば、毎秒2歩の名目歩速度を仮定することができる。他の実施形態では、毎秒2歩の速度よりもより速くてよく、またはより遅くてもよい、異なる歩速度を仮定することができる。たとえば、いくつかの実施形態は、履歴データ、モバイルデバイスのユーザに関する情報、および/または他のデータに基づいて、カスタマイズされた名目歩速度を提供することができる。この状況で名目歩速度を仮定することは、周波数解析における時間遅延を防ぐことができる。
【００５４】
自己相関がしきい値を超える場合、それは周期性を示す。いくつかの実施形態では、しきい値は0.6であり得るが、他の実施形態は、所望の機能に応じて、異なるしきい値(たとえば、0.50、0.55、0.65、0.70、0.75、0.80など)を有し得る。周期性が検出され、周波数が知られている歩速度の範囲(たとえば、歩当たり0.3秒〜2秒)内である場合、歩みが発生し得る。加えて/代替で、周波数が、2倍にされたとき、この範囲(たとえば、図1Bのプロット100-Bにあるように、2歩当たり1つのピーク)にある場合、振りが発生し得る。
【００５５】
図9Aおよび図9Bは、自己相関が周期性をどのように検出できるかを示す。図9Aは、およそ0.5秒ごとの加速度データのピークを示す加速度プロットである。図9Bは、0.3秒から2秒に及ぶラグ値τに関する、図9Aのデータの自己相関を示すプロットである。自己相関におけるピークはラグ値0.5、1、1.5、および2で生じ、これは毎秒およそ2つのピークの周期性を示す。この例では、周波数は、2倍にされたとき、歩速度の範囲外である(すなわち、歩当たり0.25秒は歩当たり0.3秒〜2秒の範囲に満たない)ため、振りは発生し得ない。当然、他の実施形態は、振りが発生しているかどうかを判断するために範囲および/または要因を利用することができる。
【００５６】
図10は、本明細で説明する改善された歩検出の方法を実装するために、モバイルデバイスおよび/または他のデバイスによって利用され得る構成要素の例示的なブロック図を示す。示される実施形態では、構成要素は、自己相関モジュール1010、ピーク検出モジュール1020、および/または確率モジュール1030を含み得る。図3に示したモジュールに類似して、これらの構成要素は、図15に関して下でより詳細に説明するような、モバイルデバイスのソフトウェアおよび/またはハードウェアで実装され得る。いくつかの実施形態では、モジュール1010、1020および1030のうちの1つまたは複数は、図4の歩検出モジュール320で実装される。いくつかの実施形態では、モジュール1010、1020および1030のうちの1つまたは複数は、代わりに、または加えて、図3の振り検出モジュール330および/または振り修正モジュール340で実装され得る。いくつかの実施形態では、モジュール1010、1020および1030のうちの1つまたは複数は、図3のモジュール320、330、および340のうちの1つまたは複数とは別に実装される。いくつかの実施形態では、モジュール結合の数は、示した数より多くてよく、もしくは少なくてもよく、かつ/または結合は、いずれかの方向に一方向であってよく、もしくは双方向であってよい。下でさらに詳細に説明するモジュール1010、1020、および1030の各々のすべてまたは一部は、感知ユニット310と組み合わせて実装され得る。
【００５７】
図11は、ハイブリッド周波数解析を使用した振り検出の例示的な方法1100のフロー図である。いくつかの実施形態では、方法1100は、図3の振り検出モジュール330、ならびに/または図10のモジュール1010、1020、および/もしくは1030によって実行されてもよい。加えて、または代替で、方法1100の構成要素のうちの1つまたは複数を実行するための手段は、図15に関してさらに詳細に説明するハードウェアおよび/またはソフトウェア手段を含み得る。方法1100の構成要素は、特定の順序で示されるが、異なる実施形態によれば、異なる順序で、かつ/または同時に実行され得る。さらに、多くの追加、省略、および/または他の変形を当業者は認識されよう。
【００５８】
ブロック1110で、加速度データから周波数を判断する。たとえば、自己相関モジュール1010は、感知ユニット310から加速度データを受信することができる。自己相関が周期的な活動を検出しない場合、いくつかの実施形態では、名目歩速度(たとえば、毎秒2歩)を仮定することができる。ブロック1110における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、および/または他の構成要素を含み得る。
【００５９】
ブロック1120で、判断された周波数の2倍が知られている所定の歩速度範囲内であることを判断する。図1Bに示すように、これは歩行速度の半分で加速度データのピークをもたらす振りを示し得る。すでに示したように。ブロック1120における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、および/または他の構成要素を含み得る。
【００６０】
ブロック1130で、振りが発生し得るという表示を提供することができる。この表示は、たとえば、振り検出モジュール330から歩検出モジュール320への信号であり得る。所望される機能に応じて、この表示は2進数(たとえば、振りが発生している)であってよく、またはよりソフトな測定値(たとえば、振りが発生している確率)を示してもよい。確率は、ユーザの歩周波数に関する履歴データを判断された周波数と比較することなど、種々の要因のうちのいずれかに基づき得る。ブロック1130における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、出力デバイス1515、ワイヤレス通信インターフェース1530、および/または他の構成要素を含み得る。
【００６１】
オプションで、ブロック1140で、歩は(ブロック1120で判断された)判断された周波数率の2倍の速度で発生し得るため、2歩に相関し得る各ピークに対して(たとえば、そうでない場合、歩は検出されない場合)、「歩の欠落」を示すことができる。これは、振りが歩行によりピークの半分をマスキングする、図1Bに示したようなシナリオに対応し得る。ブロック1140における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、出力デバイス1515、ワイヤレス通信インターフェース1530、および/または他の構成要素を含み得る。
【００６２】
いくつかの実施形態では、歩数計、ヘルスまたはコンテキストアウェアネスアプリケーション、フィットネスアプリケーションなどのアプリケーションが、歩の欠落がどのように使用されるべきかを決定することができるように、歩の欠落は、たとえば、アプリケーションプログラミングインターフェース(API)内に個別の値として報告され得る。他の実施形態では、歩数がAPIを介して提供される前に、歩の欠落を、(たとえば、検出モジュール320によって)歩数から差し引くことができる。いくつかの実施形態では、歩検出モジュールは(たとえば、確率モジュール1030からの)確率情報に基づいて、歩を修正することができる。歩または歩の欠落判断を利用する他の方法を当業者は理解されよう。
【００６３】
ハイブリッド周波数解析(たとえば、図10のモジュール)のために使用される構成要素は、加えて、または代替で、歩判断のために使用され得る。図12は、ハイブリッド周波数解析を使用した歩検出の例示的な方法1200のフロー図である。図11と同様に、図12の方法1200の構成要素のうちの1つまたは複数を実行するための手段は、図15に関してさらに詳細に説明するハードウェアおよび/またはソフトウェア手段を含み得る。方法1200の構成要素は、特定の順序で示されるが、異なる実施形態によれば、異なる順序で、かつ/または同時に実行され得る。さらに、多くの追加、省略、および/または他の変形を当業者は認識されよう。
【００６４】
ブロック1210で、ブロック1110と同様に、加速度データから周波数を判断する。当初、期的な活動が検出されないとき、名目歩速度(たとえば、毎秒2歩)を仮定することができる。ブロック1210における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、および/または他の構成要素を含み得る。
【００６５】
ブロック1220で、たとえば、感知ユニット310からの加速度の大きさのピークを検出することができ、ピーク間の時間間隔を使用して、瞬間歩速度を計算することができる。いくつかの実施形態では、ピーク検出モジュール1020は、ブロック1220で、この機能を実行することができる。ピーク検出は、たとえば、以下の式を使用して、加速度の大きさの拡散Δを計算することを含み得る。
Δ=(amax-amin)×sign(indexmax_indexmin) (2)
【００６６】
signの変化はピークまたは谷を示すことができる。加速度拡散およびピークの例が図13に示され、図13は、加速度の大きさ1310、加速度拡散1320、および(加速度の大きさに関する点として示される)検出されたピークをプロットする。ブロック1220における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、および/または他の構成要素を含み得る。
【００６７】
ブロック1230で、たとえば、図10の確率モジュール1030によって確率(たとえば、歩の確率)を割り当てるか、または判断することができる。確率は、種々の要因のうちのいずれかに基づき得る。いくつかの実施形態では、たとえば、確率は、ブロック1220における瞬時歩速度がブロック1210において相互相関によって戻された歩速度とどの程度密接に整合するかに基づき得る。ブロック1230における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、および/または他の構成要素を含み得る。
【００６８】
Table 1(表1)は、一実施形態による、歩の確率を計算するための例示的なコードを示す。
【００６９】
【表１】
0006352299.tif 000003
【００７０】
Table 1(表1)では、mu_dtは、自己相関によって戻された歩の長さを表すことができ、deltaTは、たとえば、図13に示すような連続的なピーク間の時間を表すことができる。いくつかの実施形態では、deltaTはmu_dtに近い場合がある。いくつかの実施形態では、deltaTがmu_dtに近い場合、歩の確率は高く、そうでない場合は、小さい。この確率に基づいて、歩はモバイルデバイスによって検出され得る。Table 1(表1)のコードのシンタックスおよびフォーマットは、所望される機能に応じて、異なり得る。
【００７１】
ジャイロスコープベースの解析
すでに説明した実施形態は、たとえば、加速度計からの加速度データに基づいて振り検出を実現する。ジャイロスコープなど、振り検出に役立ち得る他の構成要素と比較して、加速度計の比較的低い電力使用により省電力が課題であるとき、モバイルデバイス内の振り検出に関して、加速度計が望ましい場合がある。それでも、モバイルデバイスは、省電力が課題であるとは限らないとき、またはジャイロスコープが別の機能もしくはアプリケーションに関するデータをすでに生成しているときなど、ある種の状況下での振り検出のためにジャイロスコープを使用することができる。振り判断のためのジャイロスコープベースの解析は、以下の様式のうちの1つまたは複数で実行され得る。
【００７２】
1つの例示的な方法は、モバイルデバイスの角運動を計算して、その角運動または角度の変化がしきい値を超えるかどうかを判断することである。ジャイロスコープからのデータは角速度を提供し得る。(たとえば、1歩間隔、2歩間隔など)時間窓にわたってこの角速度を統合することによって、角度の変化を判断することができる。すなわち、統合は測定値を秒当たり角度から角度に変更する。角度(度数)のこの変化が判断されると、振り状態にあるとき、歩行または他の状況下よりもデバイスが角度の大きな変化を受けるため、その変化をしきい値と比較して、モバイルデバイスが振り状態にあるかどうかを判断することができる。モバイルデバイスは、振りの間、任意の配向にあり得るため、ジャイロスコープのすべての3つの軸からのデータは、結果としてもたらされる、3つの軸のいずれかからの角度の変化がしきい値を超えるかどうかを判断する。しきい値は、ジャイロスコープデータが統合される時間窓の長さに依存し得る。加えて、または代替で、異なる軸は異なるしきい値を有し得る。いくつかの実施形態によれば、角度の変化が50度を超える場合、デバイスは振り状態にあると判断され得る。この角度は、特定の実装形態に応じて変化し得る。いくつかの実施形態では、すべての3つの軸を組み合わせて使用して、振り検出における誤検出を防ぐことができる。たとえば、z軸の統合角度は50度を超える場合があるが、x軸およびy軸に関して、最低30度など、異なるしきい値を依然として検査することができる。
【００７３】
別の例示的な方法は、ジャイロスコープデータを使用することによって、(たとえば、重力ベースの加速度を判断することによって)加速度計の垂直成分および水平成分を使用するステップを含み得る。個々の成分をしきい値と比較して、デバイスが振り状態にあるかどうかを判断することができ、これは、他の技法と比べて非常に正確であり得る。いくつかの実施形態によれば、水平成分が5m/s2を超える場合、かつ/または垂直成分が+/-3m/s2を超える程度異なる場合、デバイスは振り状態にあると判断され得る。水平成分および垂直成分は分けられるため、この方法は、水平成分を解析して、歩数を判断する歩検出に関しても使用可能である。
【００７４】
これらのジャイロスコープベースの解析の変形、および本明細書で詳述される他の振り検出解析は、モバイルデバイスが振れているか、または振れていないかを示す2進出力ではなく、確率または他の可変出力を提供することを必要とし得る。可変出力は、たとえば、モバイルデバイスの角運動の検出が増大するにつれて増大する確率であり得る。そのような実施形態は、任意のしきい値を使用しない場合がある。いくつかの実施形態では、出力のタイプ、すなわち、2進または可変は、API、アプリケーション、および/または他の要因に応じて変化し得る。
【００７５】
たとえば、すでに説明した振り検出技法のうちのいずれかを使用して、モバイルデバイスが振り状態を受けているかどうかが判断されると、それに応じて、歩データの調整を行うことができる。図14は、一実施形態による、歩検出における振り補償の方法1400のフロー図である。いくつかの実施形態では、方法1400を実行するための手段は、図3に示した1つまたは複数の構成要素を組み込むことができる、図2のモバイルデバイス105などのモバイルデバイスを含み得る。さらに、モバイルデバイスのハードウェアおよび/またはソフトウェア手段は、図15に関してさらに詳細に説明される。加えて、または代替で、モバイルデバイスに通信可能に結合された1つまたは複数のデバイスは、方法1400の機能のうちのいくつかまたはすべてを実行することができる。方法1400の構成要素は、特定の順序で示されるが、異なる実施形態によれば、異なる順序で、かつ/または同時に実行され得る。さらに、多くの追加、省略、および/または他の変形を当業者は認識されよう。
【００７６】
ブロック1410で、モバイルデバイスの移動を示す加速度データを取得する。加速度データは、モバイルデバイス内に組み込まれた、かつ/またはモバイルデバイスに通信可能に結合された、1つもしくは複数の加速度計によって提供され得る。所望される機能に応じて、加速度データは、時間窓にわたるモバイルデバイスの加速度を示すことができるか、または加速度データが生成されるにつれて、リアルタイムもしくはニアリアルタイムで提供され得る。ブロック1410における、機能を提供するための手段は、たとえば、図15に関して下で説明するようなモバイルデバイス105のセンサ1540、入力デバイス1570、ワイヤレス通信インターフェース1530、および/または他の構成要素を含み得る。
【００７７】
ブロック1420で、モバイルデバイスがそのモバイルデバイスのユーザの手の中で振れている可能性があるかどうかを判断する。振り検出は、加速度データを処理すること、および/またはデータを1つもしくは複数のしきい値と比較することができる、すでに説明した方法のうちの1つもしくは複数を含む種々の様式のうちのいずれかで実行され得る。上に示したように、振り検出は、加えて、または代替で、ジャイロスコープからの情報を利用することができる。さらに、所望される機能に応じて、モバイルデバイスがユーザの手の中で振れている可能性があるかどうかを判断することは、2進(たとえば、yesもしくはno)であってよく、または可変(たとえば、デバイスがユーザの手の中で振れているという確率もしくは他の信頼基準)であってもよい。ブロック1420における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、および/または他の構成要素を含み得る。
【００７８】
ブロック1430で、加速度データ、およびモバイルデバイスがユーザの手の中で振れている可能性があるかどうかの判断に基づいて、歩データを出力する。歩データは、たとえば、APIを介して、モバイルデバイスによって実行されるアプリケーションに出力され得る。加えて、または代替で、歩データを別個のデバイスに送ることが可能である。前に示したように、歩データは、所望される機能に応じて、歩数および/もしくは歩数に関連する確率、振り確率、振りに起因する「歩の欠落」(すなわち、検出されない歩)の数、ならびに/あるいは歩の欠落のうちの1つもしくは複数に関連する確率(または、他の信頼基準)などを含み得る。ブロック1430における、機能を提供するための手段は、たとえば、図15に関して下で説明するような、モバイルデバイス105の処理ユニット1510、メモリ1560、出力デバイス1515、ワイヤレス通信インターフェース1530、および/または他の構成要素を含み得る。
【００７９】
図15は、図5、図7、図11、図12、および図14に示す方法など、本明細書で論じる画像捕捉、処理、および/または表示技法を実装することができるモバイルデバイス105の一実施形態を示す。さらに、図3および図10のモジュールは、図15に示すモバイルデバイス105のハードウェアおよび/またはソフトウェア構成要素を使用して実装され得る。図15が、その一部または全部を適宜利用することができる様々な構成要素を概略的に示すものにすぎないことに留意されたい。さらに、システム要素は、比較的分離された形で実装できるか、または比較的より一体的に実装できる。加えて、または代替で、図15に示す構成要素のうちのいくつかまたはすべてをモバイルデバイス105に通信可能に結合された別のコンピューティングデバイスで利用することが可能である。
【００８０】
モバイルデバイス105は、バス1505を介して電気的に結合され得る(または、適宜、他の方法で通信しているものとしてよい)ハードウェア要素を備えるように示されている。ハードウェア要素は、限定することなく、図5、図7、図11、図12、および図14に示す方法を含めて、本明細書で説明する方法のうちの1つもしくは複数を実行するように構成され得る、1つもしくは複数の汎用プロセッサ、(デジタル信号プロセッサ(DSP)、グラフィックスアクセラレーションプロセッサ、特定用途向け集積回路(ASIC)など)1つもしくは複数の専用プロセッサ、および/あるいは他の処理構造または手段を含むことが可能な処理ユニット1510を含み得る。図15に示すように、いくつかの実施形態は、所望される機能に応じて、別個のDSP1520を有し得る。モバイルデバイス105はまた、限定することなく、1つもしくは複数のカメラ、タッチスクリーン、タッチパッド、マイクロフォン、ボタン、ダイアル、スイッチなどを含むことが可能な1つもしくは複数の入力デバイス1570と、限定なしに、ディスプレイ、発光ダイオード(LED)、スピーカなどを含むことが可能な、1つもしくは複数の出力デバイス1515とを含み得る。
【００８１】
モバイルデバイス105はまた、限定することなく、モデム、ネットワークカード、赤外線通信デバイス、ワイヤレス通信デバイス、および/または(Bluetooth(登録商標)デバイス、IEEE1502.11デバイス、IEEE1502.15.4デバイス、WiFiデバイス、WiMaxデバイス、セルラー通信設備などの)チップセットなどを含むことが可能なワイヤレス通信インターフェース1530を含み得る。ワイヤレス通信インターフェース1530は、データが、ネットワーク、ネットワークアクセスポイント、他のコンピュータシステム、および/または本明細書で説明する任意の他の電子デバイスと交換されることを可能にし得る。通信は、ワイヤレス信号1534を送り、かつ/または受信する1つもしくは複数のワイヤレス通信アンテナ1532を介して実行され得る。
【００８２】
所望される機能に応じて、ワイヤレス通信インターフェース1530は、送受信基地局(たとえば、セルラーネットワークの送受信基地局)およびアクセスポイントと通信するための別個の送受信機を含み得る。これらの異なるデータネットワークは、OFDMAおよび/または他のタイプのネットワークを含み得る。
【００８３】
モバイルデバイス105は、センサ1540をさらに含み得る。そのようなセンサは、限定することなく、1つまたは複数の加速度計、ジャイロスコープ、カメラ、磁力計、高度計、マイクロフォン、近接センサ、光センサなどを含み得る。センサ1540の少なくともサブセットは、本明細書で論じるように振りに関する動き検出および/または歩検出を実現することがき、図3の感知ユニット310を備え得る。
【００８４】
モバイルデバイスの実施形態はまた、SPSアンテナ1582を使用して、1つまたは複数のSPS衛星から信号1584を受信することができる衛星測位システム(SPS)受信機1580を含み得る。そのような測位を利用して、本明細書で説明する技法を補完および/または組み込むことが可能である。本明細書で使用する場合、SPSは1つもしくは複数の全地球および/または地域航法衛星システムならびに/あるいは補強システムの任意の組合せを含むことがあり、またSPS信号はSPS信号、SPS様信号、および/またはそのような1つまたは複数のSPSに関連する他の信号を含み得ることに留意されたい。
【００８５】
モバイルデバイス105はさらに、メモリ1560を含むことが可能であり、かつ/またはメモリ1560と通信中であり得る。メモリ1560は、プログラム可能、フラッシュ更新可能などとすることができる、ローカルおよび/またはネットワークアクセス可能な記憶装置、ディスクドライブ、ドライブアレイ、光ストレージデバイス、ランダムアクセスメモリ(「RAM」)および/または読取り専用メモリ(「ROM」)などソリッドステートストレージデバイスを含み得る。そのようなストレージデバイスは、本明細書で説明する技法によって利用されるFIFOおよび/もしくは他のメモリなど任意の適切なデータ構造を実装するように構成可能であり、OFDM受信機のハードウェアおよび/またはソフトウェア要素によって割り振られることが可能である。加えて、または代替で、本明細書で説明するデータ構造は、DSP1520または処理ユニット1510のキャッシュもしくは他のローカルメモリによって実装され得る。メモリをさらに使用して、本明細書で説明する画像スタック、動きセンサデータ、および/または他の情報を記憶することができる。
【００８６】
モバイルデバイス105のメモリ1560はまた、本明細書で説明するように、オペレーティングシステム、デバイスドライバ、実行可能ライブラリ、ならびに/あるいは、様々な実施形態によって提供されるコンピュータプログラムを備えることが可能であり、かつ/または、方法を実装し、かつ/または他の実施形態によって提供されるシステムを構成するように設計され得る、1つもしくは複数のアプリケーションプログラムなど、他のコードを含むソフトウェア要素(図示せず)を含み得る。単に例として、図5、図7、図11、図12、および/または図14に示された方法など、上で論じた方法に関して説明した1つもしくは複数の手順は、モバイルデバイス105(および/もしくはモバイルデバイス105内の処理ユニット1510)によって実行可能なコードならびに/または命令として実装可能であり、かつ/あるいは、メモリ1560など、(たとえば、「コンピュータ可読記憶媒体」、「機械可読記憶媒体」など)非一時的および/または機械可読記憶媒体上に記憶可能である。一態様では、その場合、そのようなコードおよび/または命令を使用して、説明した方法に従って、1つもしくは複数の動作を実行するために汎用プロセッサ(または、他のデバイス)を構成および/あるいは適合させることができる。
【００８７】
実質的な変形が特定の要件に従って行われる場合があることが、当業者には明らかであろう。たとえば、カスタマイズされたハードウェアを使用することもでき、かつ/または、特定の要素は、ハードウェア、(アプレットなどの移植可能なソフトウェアを含む)ソフトウェア、もしくはその両方に実装することができる。さらに、ネットワーク入力/出力デバイスなどの他のコンピューティングデバイスへの接続を使用することができる。
【００８８】
上記で論じた方法、システム、およびデバイスは例である。様々な構成において、様々な手順または構成要素を、適宜、省略し、置換し、または追加することができる。たとえば、代替構成では、本方法は、説明される順序とは異なる順序で実行されてもよく、ならびに/または、様々なステージが加えられ、省略され、および/もしくは組み合わされてもよい。また、いくつかの構成に関して説明される特徴が、様々な他の構成と組み合わされてもよい。構成の様々な態様および要素を同様に組み合わせることができる。また、技術は発展するものであり、したがって、要素の多くは、例であり、本開示または特許請求の範囲の範囲を限定しない。
【００８９】
本明細書において使用されるときに、「および」、および「または」という用語は、そのような用語が使用される文脈にも少なくとも部分的に応じて決まると考えられる、種々の意味を含むことができる。通常、「または」は、A、BまたはCのように、列挙したものを関連付けるために使用される場合、本明細書において包含的な意味で用いられる場合の、A、B、およびC、ならびに本明細書において排他的な意味で使用される場合の、A、BまたはCを意味することが意図される。加えて、本明細書において使用されるときに、「1つまたは複数」という用語は、単数の任意の特徴、構造、もしくは特性を説明するのに使用されることがあるか、または、特徴、構造もしくは特性の何らかの組合せについて説明するのに使用される場合がある。しかしながら、これは説明のための例にすぎず、特許請求される主題はこの例に限定されないことに留意されたい。さらに、「少なくとも1つの」という用語は、A、B、またはCのようなリストを関連付けるのに使用されている場合、A、AB、AA、AAB、AABBCCCなどのような、A、B、および/またはCの任意の組合せを意味するように解釈することができる。
【００９０】
いくつかの例示的な構成について説明してきたが、本開示の趣旨から逸脱することなく様々な変更、代替構造、および均等物が使用され得る。たとえば、上記の要素は、より大きいシステムの構成要素であり得、ここにおいて、他の規則が、本発明の適用例よりも優先されるか、または本発明の適用例を変更し得る。また、上記の要素が考慮される前に、その間に、またはその後に、いくつかのステップが行われ得る。したがって、上記の説明は、特許請求の範囲を制限しない。
【符号の説明】
【００９１】
100  プロット
100-A  プロット
100-B  プロット
100-C  加速度プロット
105  モバイルデバイス
110  ピーク
120  ピーク、より高いピーク
130  ピーク
140-A  画像
140-B  画像
140-C  画像
200  測位システム
210  衛星測位サービス(SPS)衛星
212  信号
220  送受信基地局
230  アクセスポイント
240  モバイルネットワークプロバイダ
250  インターネット
260  ロケーションサーバ
270  マップサーバ
310  感知ユニット
320  歩検出モジュール、モジュール
330  振り検出モジュール、モジュール
340  振り修正モジュール、モジュール
400  プロット
410  第1の期間
420  期間
430  期間
440  期間
450  信号
500  方法
600  累積分布関数グラフ
610  プロット
620  プロット
630  プロット
640  プロット
1010  自己相関モジュール、モジュール
1020  ピーク検出モジュール、モジュール
1030  確率モジュール、モジュール、通信サブシステム
1100  方法
1200  方法
1505  バス
1510  処理ユニット
1515  出力デバイス
1520  DSP
1530  ワイヤレス通信インターフェース
1532  ワイヤレス通信アンテナ
1540  センサ
1560  メモリ
1570  入力デバイス
1580  衛星測位システム(SPS)受信機
1582  SPSアンテナ
1584  信号
【図１Ａ】
0006352299.tif 000004
【図１Ｂ】
0006352299.tif 000005
【図１Ｃ】
0006352299.tif 000006
【図２】
0006352299.tif 000007
【図３】
0006352299.tif 000008
【図４】
0006352299.tif 000009
【図５】
0006352299.tif 000010
【図６】
0006352299.tif 000011
【図７】
0006352299.tif 000012
【図８】
0006352299.tif 000013
【図９Ａ】
0006352299.tif 000014
【図９Ｂ】
0006352299.tif 000015
【図１０】
0006352299.tif 000016
【図１１】
0006352299.tif 000017
【図１２】
0006352299.tif 000018
【図１３】
0006352299.tif 000019
【図１４】
0006352299.tif 000020
【図１５】
0006352299.tif 000021