(57)【要約】本明細書で提供される技法は、推測航法に使用されることができるユーザ固有の運動モデルを作成するためのオンデバイス学習を可能にすることを対象としている。これらの移動モデルがユーザ固有であるため、それらは、推測航法ロケーション推定を提供する方法でユーザ固有のモーションを識別するために、後に使用されることができる。いくつかの実施形態では、これらのモデルは、ユーザがストライド（歩行、ジョギング、ランニング、等）を行うときに生じる反復モーションまたは他の反復モーション（水泳、乗馬、等）に基づいて、歩行者の運動に焦点を当てることができる。【選択図】  図６Ａ
2019530865.tif 000002
【特許請求の範囲】
【請求項１】
モバイルデバイスであって、
ユーザのモーションを示すＭＥＭＳセンサデータを提供するように構成された１つまたは複数のマイクロエレクトロメカニカルシステム（ＭＥＭＳ）ベースセンサと、
前記ＭＥＭＳベースセンサと通信的に結合された処理ユニットと
を備え、前記処理ユニットは、
トレーニングフェーズにおいて、
前記ユーザが複数のストライドを行う第１の時間期間にわたって第１のセットのＭＥＭＳセンサデータを、前記ＭＥＭＳベースセンサから、収集することと、
ストライドにわたるアロングトラックモーションを増幅させるか、前記ストライドにわたるクロストラックモーションを減衰させるか、または両方を行う重付け関数を決定するために、前記第１のセットのＭＥＭＳセンサデータと基準軌道とに基づいて、前記第１のセットのＭＥＭＳセンサデータに関連する運動モデルを作成することと、
前記トレーニングフェーズに続いて、
モーションが前記ＭＥＭＳベースセンサによって検出される第２の時間期間にわたって第２のセットのＭＥＭＳセンサデータを、前記ＭＥＭＳベースセンサから、収集することと、
前記第２のセットのＭＥＭＳセンサデータが前記運動モデルと一致するかどうかを決定することと、
前記第２のセットのＭＥＭＳセンサデータと前記運動モデルとの間の一致の決定に応じて、前記運動モデルに対応する前記重付け関数を前記第２のセットのＭＥＭＳセンサデータに適用することで、前記第２のセットのＭＥＭＳセンサデータを使用して、前記モバイルデバイスのロケーションを決定することと
を行うように構成される、モバイルデバイス。
【請求項２】
前記処理ユニットと通信的に結合された全地球的航法衛星システム（ＧＮＳＳ）受信機をさらに備え、ここにおいて、前記処理ユニットは、前記ＧＮＳＳ受信機から受信される情報を使用して前記基準軌道を決定するようにさらに構成される、請求項１に記載のモバイルデバイス。
【請求項３】
前記処理ユニットは、前記トレーニングフェーズにおいて、
複数のセットのＭＥＭＳセンサデータを収集することと、
複数の運動モデルを作成することと、前記複数の運動モデルの各運動モデルは、前記複数のセットのＭＥＭＳセンサデータのうちの１つのセットのＭＥＭＳセンサデータに対応する、
を行うようにさらに構成される、請求項１に記載のモバイルデバイス。
【請求項４】
前記第１のセットのＭＥＭＳセンサデータと前記基準軌道とに基づいて前記運動モデルを作成するように構成された前記処理ユニットは、アロングトラックトレーニングデータおよびクロストラックトレーニングデータを生成するために、前記基準軌道に基づいて前記第１のセットのＭＥＭＳセンサデータを基準フレームに変換することを備える、請求項１に記載のモバイルデバイス。
【請求項５】
前記処理ユニットは、前記アロングトラックトレーニングデータと前記クロストラックトレーニングデータとに基づいて最小二乗最適化を実行することで前記重付け関数を決定するように構成される、請求項４に記載のモバイルデバイス。
【請求項６】
前記処理ユニットは、少なくとも１つの基準波形を生成するようにさらに構成され、前記運動モデルは、前記重付け関数および前記少なくとも１つの基準波形を備える、請求項１に記載のモバイルデバイス。
【請求項７】
前記少なくとも１つの基準波形は、前記モバイルデバイスの垂直運動を表す波形を含む、請求項６に記載のモバイルデバイス。
【請求項８】
前記処理ユニットは、前記第２のセットのＭＥＭＳセンサデータから導出された波形と、前記運動モデルの前記少なくとも１つの基準波形とに基づいて、前記第２のセットのＭＥＭＳセンサデータが前記運動モデルと一致するかどうかを決定するように構成される、請求項７に記載のモバイルデバイス。
【請求項９】
前記処理ユニットは、相関演算を実行することで、前記第２のセットのＭＥＭＳセンサデータから導出された前記波形が前記運動モデルの前記少なくとも１つの基準波形と一致するかどうかを決定するように構成される、請求項８に記載のモバイルデバイス。
【請求項１０】
前記処理ユニットは、前記第２のセットのＭＥＭＳセンサデータから導出された前記波形、前記運動モデルの前記少なくとも１つの基準波形、または両方に、時間オフセットを含めることで、前記相関演算を実行するように構成される、請求項９に記載のモバイルデバイス。
【請求項１１】
前記処理ユニットは、前記相関演算の値が少なくとも閾値相関値と同じ大きさであると決定することで、第２のセットのＭＥＭＳセンサデータが運動モデルと一致するかどうかを決定するように構成される、請求項９に記載のモバイルデバイス。
【請求項１２】
１つまたは複数のマイクロエレクトロメカニカルシステム（ＭＥＭＳ）ベースセンサを有するモバイルデバイスにおける歩行者モーションモデリングの方法であって、
トレーニングフェーズにおいて、
ユーザのモーションを示す第１のセットのＭＥＭＳセンサデータを、前記ＭＥＭＳベースセンサから、収集することと、前記第１のセットのＭＥＭＳセンサデータは、前記ユーザが複数のストライドを行う第１の時間期間にわたって収集される、
ストライドにわたるアロングトラックモーションを増幅させるか、前記ストライドにわたるクロストラックモーションを減衰させるか、または両方を行う重付け関数を決定するために、前記第１のセットのＭＥＭＳセンサデータと基準軌道とに基づいて、前記第１のセットのＭＥＭＳセンサデータに関連する運動モデルを作成することと、
前記トレーニングフェーズに続いて、
モーションが前記ＭＥＭＳベースセンサによって検出される第２の時間期間にわたって第２のセットのＭＥＭＳセンサデータを、前記ＭＥＭＳベースセンサから、収集することと、
前記第２のセットのＭＥＭＳセンサデータが前記運動モデルと一致するかどうかを決定することと、
前記第２のセットのＭＥＭＳセンサデータと前記運動モデルとの間の一致の決定に応じて、前記運動モデルに対応する前記重付け関数を前記第２のセットのＭＥＭＳセンサデータに適用することで、前記第２のセットのＭＥＭＳセンサデータを使用して、前記モバイルデバイスのロケーションを決定することと
を備える方法。
【請求項１３】
前記モバイルデバイスの全地球的航法衛星システム（ＧＮＳＳ）受信機から受信される情報を使用して前記基準軌道を決定することをさらに備える、請求項１２に記載の方法。
【請求項１４】
前記トレーニングフェーズにおいて、
複数のセットのＭＥＭＳセンサデータを収集することと、
複数の運動モデルを作成することと、前記複数の運動モデルの各運動モデルは、前記複数のセットのＭＥＭＳセンサデータのうちの１つのセットのＭＥＭＳセンサデータに対応する、
をさらに備える、請求項１２に記載の方法。
【請求項１５】
前記第１のセットのＭＥＭＳセンサデータと前記基準軌道とに基づいて前記運動モデルを作成することは、アロングトラックトレーニングデータおよびクロストラックトレーニングデータを生成するために、前記基準軌道に基づいて前記第１のセットのＭＥＭＳセンサデータを基準フレームに変換することを備える、請求項１２に記載の方法。
【請求項１６】
前記重付け関数を決定することは、前記アロングトラックトレーニングデータと前記クロストラックトレーニングデータとに基づいて最小二乗最適化を実行することを備える、請求項１５に記載の方法。
【請求項１７】
少なくとも１つの基準波形を生成することをさらに備え、ここにおいて、前記運動モデルは、前記重付け関数および前記少なくとも１つの基準波形を備える、請求項１２に記載の方法。
【請求項１８】
前記少なくとも１つの基準波形は、前記モバイルデバイスの垂直運動を表す波形を含む、請求項１７に記載の方法。
【請求項１９】
前記第２のセットのＭＥＭＳセンサデータが前記運動モデルと一致するかどうかを決定することは、前記第２のセットのＭＥＭＳセンサデータから導出された波形と、前記運動モデルの前記少なくとも１つの基準波形とに基づく、請求項１８に記載の方法。
【請求項２０】
前記第２のセットのＭＥＭＳセンサデータから導出された前記波形が前記運動モデルの前記少なくとも１つの基準波形と一致するかどうかを決定することは、相関演算を実行することを備える、請求項１９に記載の方法。
【請求項２１】
前記相関演算を実行することは、前記第２のセットのＭＥＭＳセンサデータから導出された前記波形、前記運動モデルの前記少なくとも１つの基準波形、または両方に、時間オフセットを含めることを備える、請求項２０に記載の方法。
【請求項２２】
第２のセットのＭＥＭＳセンサデータが運動モデルと一致するかどうかを決定することは、前記相関演算の値が少なくとも閾値相関値と同じ大きさであると決定することを備える、請求項２０に記載の方法。
【請求項２３】
装置であって、
モーションを検出するための手段と、
トレーニングフェーズにおいて、モーションを検出するための前記手段から第１のセットのモーションデータを収集するための手段と、前記第１のセットのモーションデータは、ユーザのモーションを示し、前記ユーザが複数のストライドを行う第１の時間期間にわたって収集される、
前記トレーニングフェーズにおいて、ストライドにわたるアロングトラックモーションを増幅させるか、前記ストライドにわたるクロストラックモーションを減衰させるか、または両方を行う重付け関数を決定するために、前記第１のセットのモーションデータと基準軌道とに基づいて、前記第１のセットのモーションデータに関連する運動モデルを作成するための手段と、
前記トレーニングフェーズに続いて、モーションを検出するための前記手段から、第２のセットのモーションデータを収集するための手段と、前記第２のセットのモーションデータは、モーションが検出される第２の時間期間にわたって収集される、
前記第２のセットのモーションデータが前記運動モデルと一致するかどうかを決定するための手段と、
前記第２のセットのモーションデータと前記運動モデルとの間の一致の決定に応じて、前記運動モデルに対応する前記重付け関数を前記第２のセットのモーションデータに適用することで、前記第２のセットのモーションデータを使用して、前記装置のロケーションを決定するための手段と
を備える装置。
【請求項２４】
全地球的航法衛星システム（ＧＮＳＳ）受信機から受信された情報を使用して前記基準軌道を決定するための手段をさらに備える、請求項２３に記載の装置。
【請求項２５】
前記トレーニングフェーズにおいて、複数のセットのモーションデータを収集するための手段と、
前記トレーニングフェーズにおいて、複数の運動モデルを作成するための手段と、前記複数の運動モデルの各運動モデルは、前記複数のセットのモーションデータのうちの１つのセットのモーションデータに対応する、
をさらに備える、請求項２３に記載の装置。
【請求項２６】
前記第１のセットのモーションデータと、前記基準軌道とに基づいて前記運動モデルを作成するための前記手段は、アロングトラックトレーニングデータおよびクロストラックトレーニングデータを生成するために、前記基準軌道に基づいて前記第１のセットのＭＥＭＳセンサデータを基準フレームに変換するための手段を備える、請求項２３に記載の装置。
【請求項２７】
前記重付け関数を決定するための前記手段は、前記アロングトラックトレーニングデータと前記クロストラックトレーニングデータとに基づいて最小二乗最適化を実行するための手段を備える、請求項２６に記載の装置。
【請求項２８】
少なくとも１つの基準波形を生成するための手段をさらに備え、ここにおいて、前記運動モデルは、前記重付け関数および前記少なくとも１つの基準波形を備える、請求項２３に記載の装置。
【請求項２９】
前記少なくとも１つの基準波形は、前記モバイルデバイスの垂直運動を表す波形を含む、請求項２８に記載の装置。
【請求項３０】
１つまたは複数のマイクロエレクトロメカニカルシステム（ＭＥＭＳ）ベースセンサを有するモバイルデバイスにおける歩行者モーションモデリングのための、コンピュータ実行可能な命令が埋め込まれている非一時的なコンピュータ読取可能な媒体であって、前記コンピュータ実行可能な命令は、
トレーニングフェーズにおいて、
ユーザのモーションを示す第１のセットのＭＥＭＳセンサデータを、前記ＭＥＭＳベースセンサから、収集することと、前記第１のセットのＭＥＭＳセンサデータは、前記ユーザが複数のストライドを行う第１の時間期間にわたって収集される、
ストライドにわたるアロングトラックモーションを増幅させるか、前記ストライドにわたるクロストラックモーションを減衰させるか、または両方を行う重付け関数を決定するために、前記第１のセットのＭＥＭＳセンサデータと基準軌道とに基づいて、前記第１のセットのＭＥＭＳセンサデータに関連する運動モデルを作成することと、
前記トレーニングフェーズに続いて、
モーションが前記ＭＥＭＳベースセンサによって検出される第２の時間期間にわたって第２のセットのＭＥＭＳセンサデータを、前記ＭＥＭＳベースセンサから、収集することと、
前記第２のセットのＭＥＭＳセンサデータが前記運動モデルと一致するかどうかを決定することと、
前記第２のセットのＭＥＭＳセンサデータと前記運動モデルとの間の一致の決定に応じて、前記運動モデルに対応する前記重付け関数を前記第２のセットのＭＥＭＳセンサデータに適用することで、前記第２のセットのＭＥＭＳセンサデータを使用して、前記モバイルデバイスのロケーションを決定することと
を行うためのコンピュータコードを含む、非一時的なコンピュータ読取可能な媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]モバイルデバイス（例えば、セルラ電話、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、ウェアラブルコンピュータ、ナビゲーションおよび／またはトラッキングデバイス、等）は、全地球的航法衛星システム（ＧＮＳＳ）、固定基地局またはアクセスポイントを使用した三辺測量、および／または同様のものを含むロケーション決定技術を使用してそのロケーションを決定することが可能にされ得る。ロケーション決定技術は、追加的または代替的に、推測航法のためにモバイルデバイス上のセンサを使用することを含み得る。マイクロエレクトロメカニカルシステム（ＭＥＭＳ）ベースセンサおよび非ＭＥＭＳベースセンサには、加速度計、ジャイロスコープ、磁気計、および／または他のＭＥＭＳベースセンサが含まれることができる。
【０００２】
[0002]しかしながら、問題なことに、ＭＥＭＳベース推測航法の精度は、度重なるＭＥＭＳセンサ誤差により、時間および距離に伴って劣化する。また、ワイヤレス通信を追加的に使用するロケーション決定ソリューションの場合、これは、ターゲット精度を維持するために、他の比較的高い電力の技術（例えば、ＧＮＳＳ、ＷｉＦｉ、等）のより頻繁な使用をもたらし得る。
【発明の概要】
【０００３】
[0003]本明細書で提供される技法は、推測航法に使用されることができるユーザ固有の運動モデルを作成するためのオンデバイス学習を可能にすることを対象としている。これらの移動モデルがユーザ固有であるため、それらは、比較的高い精度の推測航法ロケーション推定を提供する方法でユーザ固有のモーションを識別するために、後に使用されることができる。いくつかの実施形態では、これらのモデルは、ユーザがストライド（歩行、ジョギング、ランニング、等）を行うときに生じる反復モーションに基づいて、歩行者の運動に焦点を当てることができる。
【０００４】
[0004]例となるモバイルデバイスは、本説明によれば、ユーザのモーションを示すＭＥＭＳセンサデータを提供するように構成された１つまたは複数のマイクロエレクトロメカニカルシステム（ＭＥＭＳ）ベースセンサと、このＭＥＭＳベースセンサと通信的に結合された処理ユニットとを備える。処理ユニットは、トレーニングフェーズにおいて、ユーザが複数のストライドを行う第１の時間期間にわたって第１のセットのＭＥＭＳセンサデータを、ＭＥＭＳベースセンサから、収集することと、ストライドにわたるアロングトラックモーション（along-track motion）を増幅させるか、ストライドにわたるクロストラックモーション（cross-track motion）を減衰させるか、または両方を行う重付け関数を決定するために、第１のセットのＭＥＭＳセンサデータと基準軌道とに基づいて、第１のセットのＭＥＭＳセンサデータに関連する運動モデルを作成することとを行うように構成され得る。処理ユニットは、トレーニングフェーズに続いて、モーションがＭＥＭＳベースセンサによって検出される第２の時間期間にわたって第２のセットのＭＥＭＳセンサデータを、ＭＥＭＳベースセンサから、収集することと、第２のセットのＭＥＭＳセンサデータが運動モデルと一致するかどうかを決定することと、第２のセットのＭＥＭＳセンサデータと運動モデルとの間の一致の決定に応じて、運動モデルに対応する重付け関数を第２のセットのＭＥＭＳセンサデータに適用することで、第２のセットのＭＥＭＳセンサデータを使用して、モバイルデバイスのロケーションを決定することとを行うようにさらに構成され得る。
【０００５】
[0005]モバイルデバイスは、以下の特徴のうちの１つまたは複数を備え得る。モバイルデバイスは、処理ユニットと通信的に結合された全地球的航法衛星システム（ＧＮＳＳ）受信機を備え得、ここにおいて、処理ユニットは、ＧＮＳＳ受信機から受信される情報を使用して基準軌道を決定するようにさらに構成される。処理ユニットは、トレーニングフェーズにおいて、複数のセットのＭＥＭＳセンサデータを収集することと、複数の運動モデルを作成することとを行うようにさらに構成され得、複数の運動モデルの各運動モデルは、複数のセットのＭＥＭＳセンサデータのうちの１つのセットのＭＥＭＳセンサデータに対応する。処理ユニットは、第１のセットのＭＥＭＳセンサデータと基準軌道とに基づいて運動モデルを作成するように構成され得、アロングトラックトレーニングデータ（along-track training data）およびクロストラックトレーニングデータ（cross-track training data）を生成するために、基準軌道に基づいて第１のセットのＭＥＭＳセンサデータを基準フレームに変換することを備える。処理ユニットは、アロングトラックトレーニングデータとクロストラックトレーニングデータとに基づいて最小二乗最適化を実行することで重付け関数を決定するように構成され得る。処理ユニットは、少なくとも１つの基準波形を生成するようにさらに構成され得、運動モデルは、重付け関数および少なくとも１つの基準波形を備える。少なくとも１つの基準波形は、モバイルデバイスの垂直運動を表す波形を含み得る。処理ユニットは、第２のセットのＭＥＭＳセンサデータから導出された波形と、運動モデルの少なくとも１つの基準波形とに基づいて、第２のセットのＭＥＭＳセンサデータが運動モデルと一致するかどうかを決定するように構成され得る。処理ユニットは、相関演算を実行することで、第２のセットのＭＥＭＳセンサデータから導出された波形が運動モデルの少なくとも１つの基準波形と一致するかどうかを決定するように構成され得る。処理ユニットは、第２のセットのＭＥＭＳセンサデータから導出された波形、運動モデルの少なくとも１つの基準波形、または両方に、時間オフセットを含めることで、相関演算を実行するように構成され得る。処理ユニットは、相関演算の値が少なくとも閾値相関値と同じ大きさであると決定することで、第２のセットのＭＥＭＳセンサデータが運動モデルと一致するかどうかを決定するように構成され得る。
【０００６】
[0006]本説明に係る、１つまたは複数のマイクロエレクトロメカニカルシステム（ＭＥＭＳ）ベースセンサを有するモバイルデバイスにおける歩行者モーションモデリングの例となる方法は、トレーニングフェーズにおいて、ユーザのモーションを示す第１のセットのＭＥＭＳセンサデータを、ＭＥＭＳベースセンサから、収集することと、ここで、第１のセットのＭＥＭＳセンサデータは、ユーザが複数のストライドを行う第１の時間期間にわたって収集される、ストライドにわたるアロングトラックモーションを増幅させるか、ストライドにわたるクロストラックモーションを減衰させるか、または両方を行う重付け関数を決定するために、第１のセットのＭＥＭＳセンサデータと基準軌道とに基づいて、第１のセットのＭＥＭＳセンサデータに関連する運動モデルを作成することとを備える。方法は、トレーニングフェーズに続いて、モーションがＭＥＭＳベースセンサによって検出される第２の時間期間にわたって第２のセットのＭＥＭＳセンサデータを、ＭＥＭＳベースセンサから、収集することと、第２のセットのＭＥＭＳセンサデータが運動モデルと一致するかどうかを決定することと、第２のセットのＭＥＭＳセンサデータと運動モデルとの間の一致の決定に応じて、運動モデルに対応する重付け関数を第２のセットのＭＥＭＳセンサデータに適用することで、第２のセットのＭＥＭＳセンサデータを使用して、モバイルデバイスのロケーションを決定することとをさらに備える。
【０００７】
[0007]方法は、以下の特徴のうちの１つまたは複数を含み得る。方法は、モバイルデバイスの全地球的航法衛星システム（ＧＮＳＳ）受信機から受信される情報を使用して基準軌道を決定することを含み得る。方法は、トレーニングフェーズにおいて、複数のセットのＭＥＭＳセンサデータを収集することと、複数の運動モデルを作成することとを含み得、複数の運動モデルの各運動モデルは、複数のセットのＭＥＭＳセンサデータのうちの１つのセットのＭＥＭＳセンサデータに対応する。第１のセットのＭＥＭＳセンサデータと基準軌道とに基づいて運動モデルを作成することは、アロングトラックトレーニングデータおよびクロストラックトレーニングデータを生成するために、基準軌道に基づいて第１のセットのＭＥＭＳセンサデータを基準フレームに変換することを備え得る。重付け関数を決定することは、アロングトラックトレーニングデータとクロストラックトレーニングデータとに基づいて最小二乗最適化を実行することを備え得る。方法は、少なくとも１つの基準波形を生成することをさらに備え得、ここにおいて、運動モデルは、重付け関数および少なくとも１つの基準波形を備える。少なくとも１つの基準波形は、モバイルデバイスの垂直運動を表す波形を含み得る。第２のセットのＭＥＭＳセンサデータが運動モデルと一致するかどうかを決定することは、第２のセットのＭＥＭＳセンサデータから導出された波形と、運動モデルの少なくとも１つの基準波形とに基づき得る。第２のセットのＭＥＭＳセンサデータから導出された波形が運動モデルの少なくとも１つの基準波形と一致するかどうかを決定することは、相関演算を実行することを備え得る。相関演算を実行することは、第２のセットのＭＥＭＳセンサデータから導出された波形、運動モデルの少なくとも１つの基準波形、または両方に、時間オフセットを含めることを備え得る。第２のセットのＭＥＭＳセンサデータが運動モデルと一致するかどうかを決定することは、相関演算の値が少なくとも閾値相関値と同じ大きさであると決定することを備える。
【０００８】
[0008]本説明によると、例となる装置は、モーションを検出するための手段と、トレーニングフェーズにおいて、モーションを検出するための手段から第１のセットのモーションデータを収集するための手段と、ここで、第１のセットのモーションデータは、ユーザのモーションを示し、ユーザが複数のストライドを行う第１の時間期間にわたって収集される、トレーニングフェーズにおいて、ストライドにわたるアロングトラックモーションを増幅させるか、ストライドにわたるクロストラックモーションを減衰させるか、または両方を行う重付け関数を決定するために、第１のセットのモーションデータと基準軌道とに基づいて、第１のセットのモーションデータに関連する運動モデルを作成するための手段とを備える。装置は、トレーニングフェーズに続いて、モーションを検出するための手段から、第２のセットのモーションデータを収集するための手段と、ここで、第２のセットのモーションデータは、モーションが検出される第２の時間期間にわたって収集される、第２のセットのモーションデータが運動モデルと一致するかどうかを決定するための手段と、第２のセットのモーションデータと運動モデルとの間の一致の決定に応じて、運動モデルに対応する重付け関数を第２のセットのモーションデータに適用することで、第２のセットのモーションデータを使用して、装置のロケーションを決定するための手段とをさらに備える。
【０００９】
[0009]装置は、以下の特徴のうちの１つまたは複数を備え得る。装置は、全地球的航法衛星システム（ＧＮＳＳ）受信機から受信された情報を使用して基準軌道を決定するための手段をさらに備え得る。装置は、トレーニングフェーズにおいて、複数のセットのモーションデータを収集するための手段と、トレーニングフェーズにおいて、複数の運動モデルを作成するための手段と、ここで、複数の運動モデルの各運動モデルは、複数のセットのモーションデータのうちの１つのセットのモーションデータに対応する、をさらに備え得る。第１のセットのモーションデータと基準軌道とに基づいて運動モデルを作成するための手段は、アロングトラックトレーニングデータおよびクロストラックトレーニングデータを生成するために、基準軌道に基づいて第１のセットのＭＥＭＳセンサデータを基準フレームに変換するための手段を備え得る。重付け関数を決定するための手段は、アロングトラックトレーニングデータとクロストラックトレーニングデータとに基づいて最小二乗最適化を実行するための手段を備え得る。装置は、少なくとも１つの基準波形を生成するための手段をさらに備え得、ここにおいて、運動モデルは、重付け関数および少なくとも１つの基準波形を備える。少なくとも１つの基準波形は、モバイルデバイスの垂直運動を表す波形を含み得る。
【００１０】
[0010]本説明によると、例となる非一時的なコンピュータ読取可能な媒体は、１つまたは複数のマイクロエレクトロメカニカルシステム（ＭＥＭＳ）ベースセンサを有するモバイルデバイスにおける歩行者モーションモデリングのためのコンピュータ実行可能な命令が組み込まれている。命令は、トレーニングフェーズにおいて、ユーザのモーションを示す第１のセットのＭＥＭＳセンサデータを、ＭＥＭＳベースセンサから、収集することと、ここで、第１のセットのＭＥＭＳセンサデータは、ユーザが複数のストライドを行う第１の時間期間にわたって収集される、ストライドにわたるアロングトラックモーションを増幅させるか、ストライドにわたるクロストラックモーションを減衰させるか、または両方を行う重付け関数を決定するために、第１のセットのＭＥＭＳセンサデータと基準軌道とに基づいて、第１のセットのＭＥＭＳセンサデータに関連する運動モデルを作成することとを行うためのコンピュータコードを含む。命令は、トレーニングフェーズに続いて、モーションがＭＥＭＳベースセンサによって検出される第２の時間期間にわたって第２のセットのＭＥＭＳセンサデータを、ＭＥＭＳベースセンサから、収集することと、第２のセットのＭＥＭＳセンサデータが運動モデルと一致するかどうかを決定することと、第２のセットのＭＥＭＳセンサデータと運動モデルとの間の一致の決定に応じて、運動モデルに対応する重付け関数を第２のセットのＭＥＭＳセンサデータに適用することで、第２のセットのＭＥＭＳセンサデータを使用して、モバイルデバイスのロケーションを決定することとを行うためのコンピュータコードをさらに備える。
【００１１】
[0011]非限定的かつ非包括的な態様が、以下の図を参照して説明され、そこでは、別途明記されない限り、同様の参照番号は、様々な図全体を通して同様の部分を指す。
【図面の簡単な説明】
【００１２】
【図１】[0012]図１は、ある実施形態に係る、測位システムの簡略図である。
【図２】[0013]図２は、ある実施形態に係る、出力波形を取得するためにＭＥＭＳセンサデータがどのように使用されることができるかを例示する簡略化されたブロック図である。
【図３】[0014]図３は、ある実施形態に係る、「Ｅａｓｔ，Ｎｏｒｔｈ，Ｕｐ」（ＥＮＵ）基準フレームの水平面がどのようにして「Ａｌｏｎｇ−ｔｒａｃｋ，Ｃｒｏｓｓ−ｔｒａｃｋ，Ｕｐ」（ＡＸＵ）基準フレームの水平面に変換され得るかを例示するのに役立つグラフ３００である。
【図４】[0015]図４は、例となる出力波形の構成要素と対応する重付け関数とを例示するグラフである。
【図５】[0016]図５は、相関がどのようにして決定され得るかを例示するのに役立つ例となるグラフのセットの図である。
【図６Ａ】[0017]図６Ａは、ある実施形態に係る、本明細書で説明される技法を使用してモバイルデバイスのロケーションを決定するための方法のフロー図である。
【図６Ｂ】図６Ｂは、ある実施形態に係る、本明細書で説明される技法を使用してモバイルデバイスのロケーションを決定するための方法のフロー図である。
【図７】[0018]図７は、本明細書において上に説明したように利用されることができる、モバイルデバイスの実施形態のブロック図である。
【詳細な説明】
【００１３】
[0019]少なくとも部分的に、モバイルデバイスが、推測航法決定に使用されることができるユーザ固有の運動モデルを作成することを可能にすることで、測位能力をサポートするためにモバイルデバイスにおいてインプリメントされ得る様々な例となる技法が本明細書では提供される。
【００１４】
[0020]実施形態ではマイクロエレクトロメカニカルシステム（ＭＥＭＳ）ベースセンサの利用が説明されているが、本明細書で説明される技法が、他のタイプのセンサが使用される場合に用いられることができることは理解されるであろう。さらに、本明細書で開示される様々な実施形態では、本明細書で開示される様々な算出および決定を実行するために、例えば、ソリッドステート磁気計および他の種類のセンサのような非ＭＥＭＳベースセンサからのデータも、ＭＥＭＳベースセンサからのデータと共に使用されることができることは理解されるべきである。ゆえに、ＭＥＭＳベースセンサへの言及は、ＭＥＭＳベースセンサの代わりに、または、それと共に非ＭＥＭＳセンサからのデータを使用することを除外すると理解されるべきではない。
【００１５】
[0021]推測航法は、デバイス自体に統合されているＭＥＭＳセンサからのＭＥＭＳセンサデータに基づいてモバイルデバイスのロケーションを決定するために、モバイルデバイスによって利用されることができる。しかしながら、問題なことに、（ＭＥＭＳセンサによって検知されるように）モバイルデバイスが経験し得る運動が多種多様であるため、推測航法から精確なロケーション推定値を取得することは困難であり得る。例えば、ユーザが歩行（または、ジョギング、ランニング、等）している最中にモバイルデバイスのＭＥＭＳセンサによって検知されるモーションは、ユーザごとに大きく異なり得る。このモーションは、ユーザに対してモバイルデバイスがどこにあるか（例えば、ユーザのポケットの中にある、ユーザの手の中にある、ユーザの顔の前に把持されている、等）に依存してさらに異なり得る。
【００１６】
[0022]この問題および他の問題を解決するために、本明細書では、ユーザに対するモバイルデバイスの位置およびユーザに固有であり得る運動モデルを作成することで推測航法に基づいてロケーション推定値の精度を高める技法が提供される。そのような技法は、推測航法が、測位システムにおいて利用されるいくつかのロケーション決定技術のうちの１つであり得る実施形態において利用され得る。
【００１７】
[0023]図１は、ある実施形態に係る、測位システム１００のモバイルデバイス１０５および／または他の構成要素が、推測航法推定値の精度を高めるのに役立つために本明細書において提供される技法を使用することができる測位システム１００の簡略図である。したがって、本明細書で説明される技法は、測位システム１００の１つまたは複数の構成要素によってインプリメントされ得る。測位システムは、モバイルデバイス１０５と、全地球的航法衛星システム（ＧＮＳＳ）衛星ビークル（ＳＶ）１１０と、トランシーバ基地局１２０と、モバイルネットワークプロバイダ１４０と、アクセスポイント（ＡＰ）１３０と、ロケーションサーバ１６０と、ワイヤレスローカルエリアネットワーク（ＷＡＮ）１７０と、インターネット１５０とを含むことができる。図１が様々な構成要素の一般化された図だけを提供すること、ここで、それらのうちの任意のものまたはすべては適宜利用され得、それらの各々は必要に応じて複製され得る、は留意されるべきである。具体的には、１つのモバイルデバイス１０５だけが例示されているが、多数の（例えば、数百、数千、数万、等の）モバイルデバイスが測位システム１００において利用され得ることは理解されるであろう。同様に、測位システム１００は、多数のアンテナ１２０および／またはＡＰ１３０を含み得る。測位システム１００において様々な構成要素を接続する例示される接続は、追加の（中間の）構成要素、直接的または間接的な接続、および／または追加のネットワークを含み得るデータ接続を備える。さらに、構成要素は、所望の機能性に依存して、再配列、組み合わせ、置き換え、複写、および／または省略され得る。当業者であれば、例示される構成要素に対する多数の修正を認識するであろう。
【００１８】
[0024]アンテナ１２０は、インターネット１５０と通信的に結合され得るモバイルネットワークプロバイダ１４０に通信的に結合される。いくつかの実施形態では、アンテナ１２０は、セルラネットワークの基地局を備え得、これは、図８に関して以下において本明細書で説明されるように、様々なワイヤレス技術のうちの任意のものを用い得る。ロケーションサーバ１６０もまた、インターネット１５０と通信的に結合されることができる。ゆえに、モバイルデバイス１０５は、例えば、第１の通信リンク１３３を使用してアンテナ１２０を介してインターネット１５０にアクセスすることで、ロケーションサーバ１６０と情報を通信することができる。追加的にまたは代替的に、ＡＰ１３０およびＷＡＮ１７０もまたインターネット１５０と通信的に結合され得るため、モバイルデバイス１０５は、第２の通信リンク１３５を使用してロケーションサーバ１６０と通信し得る。
【００１９】
[0025]所望の機能性に依存して、モバイルデバイス１０５のロケーションは、モバイルデバイスおよび／またはモバイルデバイスと通信状態にある他のデバイスによって、様々な方法のうちの任意の方法で決定されることができ、これは、状況依存型であり得る。いくつかの実施形態では、ロケーションサーバ１６０および／またはモバイルデバイス１０５の遠隔にある他のデバイス（図示せず）は、例えば、典型的にターゲットモバイルデバイス、ターゲットデバイス、またはターゲットと呼ばれる、モバイルデバイス１０５の測位をサポートするための測位方法をインプリメントするために使用されることができる。これらの測定方法は、例えば、ＧＮＳＳ ＳＶ１１０、ワイヤレスセルラネットワーク（例えば、モバイルネットワークプロバイダ１４０）に属するアンテナ１２０、アクセスポイント（ＡＰ）１３０、および同様のものによって送信された信号の、モバイルデバイスによる測定を備え得る。これらの測位方法はまた、推測航法に基づくＭＥＭＳセンサデータおよび／または推定位置をモバイルデバイス１０５から受信することを含み得、これらは、モバイルデバイス１０５のロケーションを決定する他の技法を補完するためにロケーションサーバ１６０に提供されることができる。いくつかの実施形態では、モバイルデバイス１０５は、測位システム１００の他の構成要素から情報を送ることも受信することもなく、その位置を決定するために、本明細書で説明される推測航法技法を利用し得る。
【００２０】
[0026]前述したように、推測航法は、測位システム１００のモバイルデバイス１０５および／または他の構成要素によって実行され得る。歩行者ナビゲーション（すなわち、歩行者のステップを決定するために歩数計が使用されるナビゲーション）のために、推測航法は、モバイルデバイス１０５の精確なロケーション推定値を決定するために使用されるいくつかのデータポイントのうちの１つであり得る。推測航法は、３つの異なるデータソースを利用することができる：（１）（例えば、歩数計によって提供されるような）ステップを示すインジケーション、（２）相対的な回転角度（例えば、これは、ジャイロスコープによって提供され得る）、および（３）対地針路（ＣＯＧ：course over ground）、これは、速度ベクトル（速度の方向および大きさ）を提供する。
【００２１】
[0027]推測航法のためのＣＯＧは、モバイルデバイス１０５のＭＥＭＳセンサからのＭＥＭＳセンサデータを使用することで決定され得る。いくつかの実施形態では、例えば、情報の９つの軸が利用され得る：加速度計、ジャイロスコープ、および磁気計の各々に対して３つの軸。この情報は、ＣＯＧ速度ベクトルを決定するために処理され得る。
【００２２】
[0028]前述したように、推測航法に基づくロケーション推定は、モバイルデバイスのユーザが歩行している最中のモバイルデバイスの運動の変動により不精確であり得る。特に、ＣＯＧを決定するために使用されるベースラインアルゴリズムは、（例えば、ユーザ固有の運動、ユーザに対するモバイルデバイスのロケーションの変動、等による）この運動の変動により、ＣＯＧを精確に決定することができないであろう。しかしながら、本明細書で提供される技法は、モバイルデバイスが、特定のユーザについての異なる運動がＣＯＧ決定にどのように影響を与え得るかを「学習」し、そして後に、特定の運動を識別し、それに応じてＣＯＧ決定を補償することを可能にする。
【００２３】
[0029]図２は、より精確なＣＯＧ決定を可能にするためにモバイルデバイスまたは他のデバイスが運動モデルを作成するときに用い得る波形を取得するためにどのようにしてＭＥＭＳセンサデータが使用されることができるかの実施形態を例示する簡略化されたブロックである。図２に例示される構成要素が、測位システムにおける（図１のモバイルデバイス１０５のような）モバイルデバイスまたは（サーバのような）他の電子デバイスのソフトウェアおよび／またはハードウェア構成要素を備え得ることは理解されるであろう。モバイルデバイスのソフトウェアおよび／またはハードウェア構成要素は、図７に関して以下でより詳細に説明され得る。
【００２４】
[0030]第１の変換構成要素２１０は、（ｘ，ｙ，ｚ）基準フレームにおけるデータを「Ｅａｓｔ，Ｎｏｒｔｈ，Ｕｐ」（ＥＮＵ）基準フレームに変換するために使用されることができる。より具体的には、第１の変換構成要素２１０は、（ｘ，ｙ，ｚ）座標基準フレーム（例えば、モバイルデバイスの内蔵加速度計基準フレーム）におけるＭＥＭＳセンサデータ（これは、モバイルデバイスのＭＥＭＳセンサからの原データであり得る；例えば、上で述べた情報の９つの軸）を受信し、このデータをＥＮＵ基準フレームに変換することができ、ここで、ＥＮＵ基準フレームの「Ｅａｓｔ」および「Ｎｏｒｔｈ」は、モバイルデバイスの水平運動を確立（establish）する「Ｅａｓｔ−Ｎｏｒｔｈ面」または「局所接平面」を作成する。ＥＮＵ基準フレームの第３の軸は、Ｅａｓｔ−Ｎｏｒｔｈ面に対する垂直軸を表す「上」基準フレームである。一例では、モバイルデバイスの加速度計からのデータは、（ｘ，ｙ，ｚ）基準フレームにおけるデータを決定するために使用され得る。磁気計またはジャイロスコープのうちの１つまたは複数からの追加のデータを使用して（ｘ，ｙ，ｚ）基準フレームからＥＮＵ基準フレームにデータを変換するために既知の方法が使用されることができる。いくつかの実施形態では、磁気計またはジャイロスコープのうちの一方または両方は、非ＭＥＭＳセンサである。ある実施形態では、そのような非ＭＥＭＳセンサからのデータは、ＭＥＭＳセンサデータを変換するために使用されることができる。ゆえに、後続の計算、算出、または決定は、非ＭＥＭＳセンサからのデータも追加的に使用されたとしても、相変わらず、ＭＥＭＳセンサデータに基づいている。
【００２５】
[0031]ＥＮＵ基準フレームにおけるデータは、例えば、モバイルデバイスのトレーニングフェーズ中に、第２の変換構成要素２２０によってさらに変換され得、ここで、一例では、センサデータは、前に記憶された運動モデルとは一致し得ない。ここで、第２の変換構成要素は、ＥＮＵ基準フレームにおける変換済みＭＥＭＳセンサデータ（第１の変換構成要素２１０の出力）と基準軌道とを受信して、次に、ＥＮＵ変換済みＭＥＭＳセンサデータを「ａｌｏｎｇ，ｃｒｏｓｓ，ｕｐ」（ＡＸＵ）基準フレームに変換する。ＡＸＵ基準フレームでは、水平面は、「アロングトラック」軸および「クロストラック」軸によって形成され、ここで、「アロングトラック」軸は、基準軌道の方向（運動の主要方向）である。基準軌道は、既知の対地針路技法に加え、本明細書で後に開示される他の技法を使用して決定されることができる。
【００２６】
[0032]図３は、ある実施形態に係る、ＥＮＵ基準フレームの水平面がどのようにしてＡＸＵ基準フレームの水平面に変換され得るかを例示するのに役立つグラフ３００である。ここで、ＥＮＵ基準フレームの「Ｎｏｒｔｈ」および「Ｅａｓｔ」軸は、図２の第１の変換構成要素２１０によって確立され得、それらは、地球の表面上のＮｏｒｔｈ方向およびＥａｓｔ方向に対応し得る。ゆえに、ＥＮＵ基準フレームの「Ｎｏｒｔｈ」軸および「Ｅａｓｔ」軸は、地球の表面と平行の水平面を形成することができる。
【００２７】
[0033]ＡＸＵ基準フレームは、モバイルデバイス１０５のモーションから確立される。すなわち、モバイルデバイス１０５の運動の主要方向が（例えば、全世界測位システムＧＰＳおよび／または別のＧＮＳＳトラッキングソリューションを使用して）確立されることができ、アロングトラック軸は、この運動の主要方向に沿って確立されることができる。クロストラック軸は、ＥＮＵ基準フレームにおけるアロングトラック軸から垂直に確立されることができる。ゆえに、ＡＸＵ基準フレームのアロングトラック軸およびクロストラック軸は、図３のグラフ３００に例示されるように、何らかのオフセットアングルθを伴ってＥＮＵの北／東水平面において確立される。
【００２８】
[0034]図２および３に例示されている変換を実行する能力は、モバイルデバイスの特定のユーザからの異なるタイプのモーションを識別するようにモバイルデバイスが「トレーニング」されることを可能にする。特に、推測航法において使用されるセンサ誤差は、異なるタイプの運動についてユーザが行う周期的な運動（例えば、ステップ）をモバイルデバイスがモデリングすることで、緩和されることができる。このモデリングは、トレーニングプロセス中に確立されることができる。
【００２９】
[0035]いくつかの実施形態によれば、モバイルデバイスは、次のようにトレーニングされることができる：
【００３０】
[0036]第１に、モバイルデバイスは、トレーニングモードに入ることで、トレーニングプロセスを開始し得る。トレーニングモードは、モバイルデバイスのセットアッププロシージャ中におよび／または初期使用後のある時点で、呼び出され得る。いくつかの実施形態によれば、トレーニングモードは、ユーザにトレーニングモードを開始するよう促し得る（モバイルデバイスのディスプレイ上のグラフィカルユーザインターフェース（ＧＵＩ）のような）ユーザインターフェースを使用して呼び出され得る。いくつかの実施形態によれば、モバイルデバイスは、モーションモデルが未だ確立されていないと、および／または、基準軌道（例えば、ＧＮＳＳ、アクセスポイントおよび／または他のアンテナによる地上三辺測量、および／または同様のものを介して）が利用可能であると決定した後にのみトレーニングモードを呼び出し得る。例えば、さらに以下で述べられるように、モバイルデバイスは、モバイルＭＥＭＳセンサからの現在のモーションデータを、１つのセットの運動モデルのうちの１つの運動モデルと一致させようと試みることができる。一致が見つからなかった場合、モバイルデバイスは、現在のモーションデータを使用して新たな運動モデルを確立するためにトレーニングモードに入り得る。
【００３１】
[0037]セットアッププロシージャ中にまたはユーザによってトレーニングモードが呼び出される実施形態では、トレーニングモードが呼び出されると、モバイルデバイスは、モバイルデバイスをユーザの手に持ってユーザがユーザの顔の前にモバイルデバイスを把持している状態での歩行のような特定のタイプの運動を行うようユーザに促し得る。いくつかの実施形態では、モバイルデバイスは、反復モーションを確立するために、特定量のステップを行うかまたは少なくとも最小量のステップ（例えば、少なくとも１０ステップ）を行うようユーザに求め得る。
【００３２】
[0038]ユーザが、トレーニングに使用されることとなるこのタイプの運動を行っているとき、モバイルデバイスは、ユーザがこのタイプの運動を行うときにＭＥＭＳセンサデータを収集するモバイルデバイスのＭＥＭＳセンサを使用してモバイルデバイスの運動を記録することができる。この機能の間、モバイルデバイスは、例えば、ＧＮＳＳ、ワイヤレス三辺測量を含む確立されたロケーション技法、および／または室内ＷｉＦｉ、ＶＩＯ（visual inertial odometry）、および／またはマップマッチング（ここでは、歩道、車道、等のマップ特徴が、軌道決定を知らせるために使用される）のような他の技法を使用して、運動の基準軌道（例えば、ユーザが歩行している方向；順方向）を確立することもできる。
【００３３】
[0039]第４に、モバイルデバイスは、図２に例示された方法で１つまたは複数の出力波形を生成するために、ＭＥＭＳセンサデータおよび基準軌道を使用し得る。一例では、図２の変換構成要素２１０に入力されるＭＥＭＳセンサデータは、ＭＥＭＳ３軸加速度計からのｘ軸加速度、ｙ軸加速度およびｚ軸加速度を備え得る。ＥＮＵ基準フレームに、その後ＡＸＵ基準フレームに変換した後、３つの波形が、Ａ軸（アロング軸）加速度、Ｘ軸（クロス軸）加速度、およびＵ軸（上軸）加速度として出力されることができる。ここで、出力波形は、ＡＸＵ基準フレームにあり、それによって、アロングトラックおよびクロストラック（および、上向き）方向の運動を区別する。これらの出力波形は、図４を参照して説明されるようにトレーニング波形として使用されることができる。
【００３４】
[0040]最後に、モバイルデバイスは、図４を参照して説明されるように、クロストラック運動を低減させるおよび／またはアロングトラック運動を増加させる重付け関数を作成することができる。次いで、重付け関数を使用して、ＥＮＵ基準フレームにおけるリアルタイムデータを乗算し、重付け関数が計算されたモーションに類似するモーションについて、このリアルタイムデータのクロストラック運動を低減させるおよび／またはアロングトラック運動を増加させ得る。リアルタイムの加速度データを扱うとき、一実施形態では、（ｘ，ｙ，ｚ）基準フレームからＥＮＵ基準フレームへの変換は実行され得るが、ＥＮＵ基準フレームからＡＸＵ基準フレームへの変換は実行される必要がない。重付け関数は、直接、ＥＮＵ基準フレームにおける加速度データに適用され得る。歩行者推測航法を改善する目的でクロストラック運動と比べてアロングトラック運動を増幅させるために重付け関数を使用することに加えて、その後、モバイルデバイスは、モバイルデバイスによって検出されるさらなる運動に比較するために、出力波形または出力波形から導出される何らかの他の波形のうちの１つまたは複数を基準波形として使用することができる。モバイルデバイスによって収集されるリアルタイムデータが所与の基準波形と一致する波形を有する（例えば、以下でより詳細に説明するように、特定の閾値を上回る基準波形と相関する）とき、基準波形に関連する重付け関数は、クロストラック運動と比べてアロングトラック運動を増幅させないＣＯＧの計算と比較してＣＯＧのさらなる決定を確実にするのに役立つように、それらの運動に適用されることができる。一例では、トレーニングフェーズにおいて、トレーニング加速度データは、（ｘ，ｙ，ｚ）基準フレームから、ＥＮＵ基準フレームに、そしてさらにＡＸＵ基準フレームに変換される。本明細書の他の箇所で説明される技法を使用して、重付け関数は、アロングトラック軸のトレーニング加速度データおよびクロストラック軸のトレーニング加速度データを使用して計算される。上軸の加速度データは、基準波形としての機能を果たすことができる。トレーニングフェーズに続いて、リアルタイムの加速度データが、ＭＥＭＳセンサから受信される。リアルタイムの加速度データは、ＥＮＵ基準フレームに変換される。リアルタイムの上軸の加速度データ（波形）は、本明細書の他の箇所で説明されるように、基準波形と比較される。所与の時間または位相シフトが、基準波形およびリアルタイムの上軸の加速度波形のうちの一方、他方、または両方に適用されるとき、一致が見つかる。次いで、重付け関数は、基準波形およびリアルタイムの波形を一致させるときに使用される時間または位相シフトに基づいて、時間または位相シフトが与えられ、重付け関数は、リアルタイムの東軸の加速度データおよびリアルタイムの北軸の加速度データの両方に適用される。このように、モーションの方向に対して垂直なモーションと比べて、モーションの方向に沿ったモーションは増幅され、ＣＯＧ計算および他の歩行者推測航法算出が改善される。トレーニングの後の運動モデルおよび重付け関数の利用に関する追加の詳細が以下に提供される。
【００３５】
[0041]トレーニングプロセスは、ユーザＡのシャツのポケットにモバイルデバイスを入れた状態での歩行、モバイルデバイスをユーザＢの手に持った状態でのランニング、モバイルデバイスをユーザＡのズボンの前ポケットに入れた状態での歩行、ユーザＡの腰に取り付けられた状態での水泳、ユーザＢの腕に装着された状態での水泳、ユーザＡのポケットに入れた状態での乗馬、および／または同様のもののような、様々な異なる運動タイプ（これは、モバイルデバイスを使用するユーザ、ユーザの身体上のモバイルデバイスのロケーション、およびユーザが行っているアクティビティのうちの１つまたは複数のものの関数であり得る歩行者デバイスコンテキストとも呼ばれ得る）について繰り返され得る。より一般的には、ユーザ、身体上のロケーション、および／またはアクティビティ、またはそれらの組合せの観点から一意であるあらゆる反復モーションは、一意な運動タイプ／コンテキストを提供することができる。これは、モバイルデバイスが、これらのタイプの運動ごとに運動モデルを作成することを可能にし、これにより、モバイルデバイスは、その後、同様の運動を運動モデルと一致させ、対応する重付け関数をそれらの運動モデルに適用し、それによって、より精確なＣＯＧ決定を決定することができる。ゆえに、一般的に言えば、モバイルデバイスは、トレーニングプロセスを通して、複数の運動モデルを作成する可能性が高いであろう。以下で説明するように、各運動モデルは、どの運動モデルが、ユーザモーションを示す現在の（リアルタイムの）ＭＥＭＳセンサデータに最も一致するかを決定するために、トレーニングフェーズに続いて、（トレーニングフェーズに続く）使用フェーズ中に使用されることができる基準波形および重付け関数（またはベクトル）を含むことができる。作成済みの運動モデルについて一致が見つからなかった場合、モバイルデバイスは、新たな運動モデルを作成するために、ユーザモーションを示す現在（リアルタイム）のＭＥＭＳセンサデータをトレーニングデータとして使用することができる。
【００３６】
[0042]運動モデルが、単一より多くの基準波形を含み得ることは留意されることができる。いくつかの実施形態では、例えば、運動モデルは、垂直加速度、水平加速度（これは、正規化され得る）データ、垂直ジャイロスコープ（垂直軸を軸とした回転）データ、水平ジャイロスコープ（垂直軸を軸とした回転）データ、および／または同様のもののうちの１つまたは複数を、基準波形としてまたは基準波形を生成するために、含み得る。次いで、１つまたは複数の基準波形は、モバイルデバイスによって後続の運動との一致のために使用され得、ここでは、対応する波形は、この運動が類似しているかどうかを決定するために、１つまたは複数の基準波形と比較され得る。運動が類似している場合、１つまたは複数の基準波形に関する重付け関数は、例えば、ＥＮＵ基準フレームにおけるＭＥＭＳセンサデータに適用され得る。
【００３７】
[0043]図４は、例となる出力波形（例えば、ＡＸＵ基準フレームにおける、図２に説明された出力波形）と、対応する重付け関数とを例示するグラフ４００である。ここで、出力波形は、垂直（「上」）加速度４１０波形、アロングトラック加速度４２０波形、およびクロストラック加速度４３０波形へと分解される。この例では、５０個のサンプル（グラフ４００のＸ軸）にわたって波形が集められるが、１つの波形あたりのサンプルの数が、ユーザストライドの速度、サンプリングレート、および／または同様の要因のような様々な要因によって変動し得ることは理解されるであろう。追加的に、加速度の大きさ（グラフ４００のＹ軸）は、同様の方法で変動し得る。いくつかの実施形態では、加速度の大きさは、正規化され得る。
【００３８】
[0044]前に示したように、ＭＥＭＳセンサデータは、ＡＸＵ基準フレームにおける出力波形を提供するために変換され得る。グラフ４００は、周期的な垂直加速度４１０と、アロングトラック加速度４２０と、クロストラック加速度４３０とを表す。グラフ４００の周期性は、ユーザのストライドとして測定されることができる。すなわち、ＭＥＭＳセンサデータの５０個のサンプル（グラフ４００のＸ軸）は、ユーザが行うステップを２ステップごとに表すことができる。（例えば、ユーザは、おおよそサンプル０において彼／彼女の左足でステップし、おおよそサンプル２５において彼／彼女の右足でステップし得る。）したがって、出力波形は、複数のストライドの平均（average）、平均（mean）、または他の表現を表し得る。（例えば、モバイルデバイスは、１０回のユーザストライドわたって、ＭＥＭＳセンサデータの５００個のサンプルを取り得、出力波形は、この１０回のユーザストライドの平均化（averaging）、平均（mean）、または他の組合せを表すであろう。）モバイルデバイスは、（例えば、ＭＥＭＳセンサデータを処理するためにハードウェアおよび／またはソフトウェアを使用して、モバイルデバイスによってインプリメントされ得る）歩数計および／または出力波形自体に基づいて、そのような運動の周期性を決定することができる。例えば、波形の周期性は、モバイルデバイスの歩数計によって検出されるように、ユーザによって行われる１ステップおきに決定され得る。
【００３９】
[0045]アロングトラック加速度４２０およびクロストラック加速度４３０についての波形成分は、ＭＥＭＳセンサデータにおいて取られる各サンプル（図４の例となるグラフ４００では合計で５０個のサンプル）の加速度値を含む。したがって、重付け関数４４０を決定することは、アロングトラック加速度４２０を最大にするおよび／またはクロストラック加速度４３０を最小にするであろう関数を決定することである。いくつかの実施形態によれば、重付け関数は、次のように決定され得る。
【００４０】
[0046]Ａ（ｉ）およびＸ（ｉ）が、それぞれ、サンプルｉ（ｉは０からサンプルの総数）におけるアロングトラック加速度４２０およびクロストラック加速度４３０のベクトルを表す場合、ａおよびｘは、次のように、重付けベクトル（weighting vector）Ｗ（ｉ）とベクトルＡ（ｉ）およびＸ（ｉ）の各々とのドット積から結果として得られるスカラー値を表すことができる：
ａ＝ΣＡ（ｉ）・Ｗ（ｉ）      式（１）
および
ｘ＝ΣＸ（ｉ）・Ｗ（ｉ）      式（２）
【００４１】
[0047]いくつかの実施形態では、ｘを最小にし、ａを最大にする、重付け関数または重付けベクトルＷ（ｉ）の解が決定される。いくつかの実施形態では、例えば、これは、以下を確実にするかまたはそれに近づく（閾値内になる）ことで解かれることができる：
【００４２】
【数１】
2019530865.tif 000003
【００４３】
[0048]いくつかの実施形態では、Ｗ（ｉ）のこの解は、誤差アルゴリズムの最小二乗最小化を使用して計算されることができる。
【００４４】
[0049]グラフ４００に例示されるもののようないくつかの実施形態によれば、結果として得られる重付け関数４４０（Ｗ（ｉ））は、アロングトラック加速度４２０が非ゼロ値を有し、クロストラック加速度４１０がゼロであるかまたはそれに近い値を有する波形内のデータポイントを増幅させる傾向があり得る。とはいえ、代替的な実施形態は、アロングトラッキング加速度４２０を増幅させるおよび／またはクロストラック加速度４１０を最小にするための他の技法を用い得る。
【００４５】
[0050]様々なタイプの運動について運動モデルおよび対応する重付け関数が決定されると、モバイルデバイスは、トレーニングフェーズに続く識別または使用フェーズにおいてＣＯＧを決定するために使用されることができる。使用フェーズ中、識別された運動モデルに関連する重付け関数を使用して、例えば、ＥＮＵ基準フレームにおける重み付けされた加速度データから導出されるＣＯＧ推定値に少なくとも部分的に依存するモバイルデバイスの位置が決定されることができる。
【００４６】
[0051]例えば、ＣＯＧ推定値が、推測航法でモバイルデバイスのロケーションを決定するためにモバイルデバイスによって必要とされるとき、モバイルデバイスは、モバイルデバイスが、運動モデルを識別するために（例えば、複数のストライドにわたって）ＭＥＭＳセンサデータを収集する識別または使用フェーズに入り得る。上述した変換プロセスを使用して、ＭＥＭＳセンサデータは、ＥＮＵ基準フレームに変換され、モバイルデバイスによって前に作成された運動モデルと比較されることができる。モバイルデバイスが、ＭＥＭＳセンサデータの波形を運動モデルの基準波形と実質的に一致させることができる場合、モバイルデバイスは、ＭＥＭＳセンサデータに基づくＣＯＧ推定値の精度を高めるのに役立つように、運動モデルの重付け関数をＭＥＭＳセンサデータの波形に適用することができる。
【００４７】
[0052]いくつかの実施形態では、例えば、（ＥＮＵ基準フレームにあり得る）ＭＥＭＳセンサデータの波形は、対応するＥ（ｉ）およびＮ（ｉ）関数へと分解されることができ、それには、対応する運動モデルの重付け関数Ｗ（ｉ）が、次のように適用され得る：
Ｅ’＝ΣＥ（ｉ）・Ｗ（ｉ）      式（４）
および
Ｎ’＝ΣＮ（ｉ）・Ｗ（ｉ）      式（５）
一実施形態では、重付け関数に基づくＣＯＧ推定値は、Ｅａｓｔ座標Ｅ’とＮｏｒｔｈ座標Ｎ’とを有するＮｏｒｔｈ Ｅａｓｔ面においてベクトルを備える。
【００４８】
[0053]対応する運動モデルは、様々な相関関数および／または同様の関数のうちの任意のものを使用して決定されることができる。例えば、ＭＥＭＳセンサデータの波形は、図５に例示されるように１つまたは複数の基準波形に対して相関関数を使用してトレーニングフェーズ中にモバイルデバイスによって作成される運動モデルのうちの各々の運動モデルの対応する波形と比較されることができる。一例では、上軸波形は、他の波形も使用され得るが、基準波形としての機能を果たすことができる。例えば、基準波形は、（ＡＸＵ基準フレームにおけるトレーニングデータのアロング−クロス面における運動に基づいて根二乗和を使用して計算される）水平ノルムを使用して生成され得、これは次いで、Ｅａｓｔ−Ｎｏｒｔｈ面における運動に基づいて根二乗和を計算することでリアルタイムデータから計算される水平ノルムと比較され得る。
【００４９】
[0054]図５は、相関がどのようにして決定され得るかを例示するのに役立つ例となるグラフ５１０および５２０のセットの図である。ここで、第１のグラフ５１０は、ＭＥＭＳセンサデータの特定の波形（例えば、垂直加速度）であり得、第２のグラフ５２０は、運動モデルの対応する基準波形（例えば、垂直加速度）であることができる。
【００５０】
[0055]例示されるように、２つのグラフ５１０と５２０との間には位相シフト５３０が存在し得る。このように、２つのグラフ５１０と５２０との間で実行される相関関数は、位相独立型でありるか、または２つのグラフ５１０と５２０との間の最大相関値を決定するために様々な位相シフトで実行されるかのいずれかであり得る。
【００５１】
[0056]識別フェーズにおいて収集されるＭＥＭＳセンサデータの波形におけるサンプルの数が運動モデルの対応する波形におけるサンプルの数と一致しない場合、ＭＥＭＳセンサデータの波形および／または運動モデルの波形は、それらが一致することを確実にするのに役立つようにスケーリングされることができることは留意されることができる。
【００５２】
[0057]所望の機能性に依存して、２つのグラフ５１０と５２０との間の相関（すなわち、２つのグラフが実質的に一致するとの決定）は、様々な方法のうちの任意の方法によって決定され得る。いくつかの実施形態では、２つのグラフ５１０および５２０を使用する相関演算は、相関値を決定するために実行され、これは、これら２つのグラフが一致する程度（例えば、相関値が高いほど、グラフは一致している）を示すことができる。いくつかの実施形態では、閾値相関値は、２つのグラフ５１０および５２０の相関関数がこの閾値相関値を満たすかまたは超える相関値に帰着する場合に２つのグラフ５１０および５２０が一致するとみなされるように、決定され得る。運動モデルおよびＭＥＭＳセンサデータが、各々、複数の波形（例えば、垂直加速度、水平加速度、垂直ジャイロ、水平ジャイロ、および／または同様のもの）のセットを有する場合、運動モデルの波形は、ＭＥＭＳセンサデータの対応する波形と相関され、ＣＯＧ推定を目的として波形が一致するかどうかを決定するために、複合相関値（combined correlation value）（例えば、合計、平均（average）、平均（mean）、等）が決定され、閾値複合相関値と比較されることができる。
【００５３】
[0058]いくつかの実施形態では、ＭＥＭＳセンサデータの波形は、相関値が閾値相関値を超え、かつ、すべての運動モデルの中で最も高い相関値である場合、運動モデルの波形と一致する。とはいえ、いくつかの実施形態は、単に、閾値相関値を超えられるかどうかを決定し得る。換言すると、閾値相関値が設定される値に依存して、閾値相関値を上回るＭＥＭＳセンサデータと相関する運動モデルは、この運動モデルが、ＭＥＭＳセンサデータがモバイルデバイスによって捕捉されている間に実行される運動とは異なる運動に対応するとしても、十分精確なＣＯＧ推定を提供し得る。
【００５４】
[0059]図５の例において例示されるように、グラフ５１０および５２０は類似するが、互いに時間的にシフトされている。リアルタイムのＭＥＭＳセンサデータが運動モデルと一致するかどうかを決定する一実施形態では、グラフ５１０におけるリアルタイムのＭＥＭＳセンサデータとグラフ５２０における基準波形との間で相関が実行される。この例では、いくつかの異なる位相シフト（これは、ストライド／波形に対する、または時間に対する時間シフト、または速度ロケーションインジケータｉに対する位置シフト）が、グラフ５２０に適用され得る。各位相シフトにおいて、グラフ５１０の各値は、シフトされたグラフ５２０の対応する値が乗じられ、スカラードット積結果が形成され得る。次いで、最も高いドット積を有する位相シフトが識別され得る。最も高いドット積が閾値を上回る場合、２つの波形は一致すると決定されることができ、対応する位相シフトもまた、これら２つのグラフ間の位相シフト５３０を示す。最も高いドット積が閾値を下回る場合、一致は見つからない。次いで、グラフ５１０におけるリアルタイムのＭＥＭＳセンサデータが、グラフ５２０で例示されているものに類似したグラフを有する別の運動モデルから別の基準波形と比較され得る。
【００５５】
[0060]上の説明では、重付け関数、基準波形、基準波形と一致または相関させるために使用されるリアルタイムデータの対応する波形、トレーニングまたはリアルタイムの加速度データ、ベクトル、関数、または波形と様々に呼ばれ、ゆえに、重付け関数、重付けベクトル、および重付け波形がすべて同じものを指すことができることは理解される。これは、上で説明したいくつかの例では、重付け関数が、各インデックスｉにおいて例えば５０個の重みのシーケンスを表し、そして、この重みがインデックスｉに依存すると考えられ得るので、これが関数であると考えられ得るためである。同時に、重付け関数は、５０個の重みからなるセットであり、５０個の成分を有するベクトルであると理解されることができる。同様に、インデックスｉに対する重付け関数のプロットは、重付け関数を波形で表すことができる。同様に、別の例では、Ｅａｓｔ軸の加速度波形、ベクトル、または関数は、同じものを指し得る。
【００５６】
[0061]図６Ａおよび６Ｂは、ある実施形態に係る、本明細書で説明される技法を胎動使用してモバイルデバイスのロケーションを決定するための方法６００−Ａおよび６００−Ｂのフロー図である。図６Ａおよび６Ｂに例示されるブロックで示される機能が、代替的な実施形態では、所望の機能性に依存して再配置または変更され得ることは留意されることができる。例示された機能のうちの１つまたは複数を実行するための手段は、図１の測位システム１００の構成要素のうちの１つまたは複数を含む、本明細書で説明したハードウェアおよび／またはソフトウェア手段を含むことができる。いくつかの実施形態では、モバイルデバイスは、図６Ａおよび６Ｂにおいて例示される機能のうちのいくつかまたはすべてを実行し得る。これらの実施形態では、これらの機能を実行するための手段は、図７に例示され、以下で説明されるハードウェアおよび／またはソフトウェア手段を含むことができる。
【００５７】
[0062]方法６００−Ａは、上の実施形態で説明したように、トレーニングフェーズ中にモバイルデバイスにおいて実行される機能を含む。ブロック６１０において、第１のセットのＭＥＭＳセンサデータは、ユーザが複数のストライドを行う第１の時間期間にわたってＭＥＭＳベースセンサから収集される。前に示したように、ユーザによって行われるストライドは、モバイルデバイスによってインプリメントされ得る歩数計によって決定されることができる。いくつかの実施形態では、モバイルデバイスは、モバイルデバイスのディスプレイ上に示されるグラフィカルユーザインターフェースを通してトレーニングフェーズを開始し得る。これらのインプリメンテーションでは、モバイルデバイスは、第１の時間期間中に行うべき特定数の最小量のストライドをユーザに提供し得る。いくつかの実施形態では、ユーザは、ユーザが複数のストライドを行うのを完了した（その結果、第１の時間期間が終了する）ことを示すためにグラフィカルユーザインターフェースとインタラクトし得る。ブロック６１０における機能性を実行するための手段は、図７に示され、以下で説明されるようなモバイルデバイスの処理ユニット７１０、出力デバイス７１５、ワイヤレス通信インターフェース７３０、バス７０５、センサ７４０、メモリ７６０、入力デバイス７７０、および／またはＧＮＳＳ受信機７８０を含むことができる。
【００５８】
[0063]ブロック６２０において、第１のセットのＭＥＭＳセンサデータに関連する運動モデルが作成される。上述したように、運動モデルは、ＭＥＭＳセンサデータの複数のサンプルから作成される１つまたは複数の波形を備え得る。いくつかの実施形態によれば、運動モデルは、最初に、第１のセットのＭＥＭＳセンサデータを異なる基準フレームに変換することによって作成され得る。例えば、第１のセットのＭＥＭＳセンサデータは、図２に例示され、本明細書の上で説明したように、最初に、ＥＮＵ基準フレームに変換され得る。運動モデルは、ストライドにわたるアロングトラックモーションを増幅させるか、ストライドにわたるクロストラックモーションを減衰させるか、または両方を行う重付け関数を決定するために、第１のセットのＭＥＭＳセンサデータと基準軌道とに基づいて作成される。前に説明したように、基準軌道は、ＧＮＳＳ受信機、ワイヤレス通信インターフェース、および／またはモバイルデバイスの位置および／または軌道を提供する能力がある他の構成要素のような、ＭＥＭＳセンサデータ以外のソースから取得され得る。この基準軌道を用いて、第１のセットのＭＥＭＳセンサデータは、ＡＸＵ基準フレームへと変換され得、重付け関数は、アロングトラックモーションを増幅させるか、クロストラックモーションを減衰させるか、または両方を行うことで決定されることができる。いくつかの実施形態では、例えば、（図７に関して以下で説明されるような）処理ユニット７１０、バス７０５、および／またはメモリ７６０は、アロングトラックトレーニングデータおよびクロストラックトレーニングデータを生成するために、基準軌道に基づいて第１のセットのＭＥＭＳセンサデータを基準フレームに変換するための手段としての機能を果たし得る。前に説明したように、重付け関数は、アロングトラックおよびクロストラックモーションの各々に適用されるとき、クロストラックモーションと比べてアロングトラックモーションを増幅させる重付け関数を決定するために、最小二乗最適化を使用して計算されることができる。さらに、上で説明したように、１つまたは複数の基準波形が生成されることができ、ここで、運動モデルは、重付け関数と少なくとも１つの基準波形とを備える。いくつかの実施形態では、（図７に関して以下で説明されるような）処理ユニット７１０、バス７０５、および／またはメモリ７６０は、少なくとも１つの基準波形を生成するための手段としての機能を果たし得る。基準波形は、垂直および／または水平運動（加速度、回転、および／または同様のもの）に対応し得る。したがって、重付け関数は、式４および５を参照して上で説明したように、リアルタイムのセンサデータの値を修正するために使用される複数の重みを備え得る。基準波形は、リアルタイムのセンサデータと記憶された運動モデルとの間に一致があるかどうかを決定するために使用されることができる。
【００５９】
[0064]前に説明したように、実施形態は、後続の運動の識別のために複数の運動モデルを利用し得る。したがって、これらの実施形態はさらに、複数のセットのＭＥＭＳセンサデータを収集し、複数の運動モデルを作成し得、ここで、複数の運動モデルの各運動モデルは、複数のセットのＭＥＭＳセンサデータのうちの１つのセットのＭＥＭＳセンサデータに対応する。
【００６０】
[0065]ブロック６２０の機能性を実行するための手段は、図７に示され、以下で説明されるようなモバイルデバイスの処理ユニット７１０、出力デバイス７１５、ワイヤレス通信インターフェース７３０、バス７０５、センサ７４０、メモリ７６０、入力デバイス７７０、および／またはＧＮＳＳ受信機７８０を含むことができる。
【００６１】
[0066]方法６００−Ｂは、上の実施形態で説明したように、トレーニングフェーズに続いて（例えば、識別フェーズにおいて）モバイルデバイスにおいて実行される機能を含む。ブロック６４０において、第２のセットのＭＥＭＳセンサデータは、モーションがＭＥＭＳベースセンサによって検出される第２の時間期間にわたってＭＥＭＳベースセンサから収集される。いくつかの実施形態によれば、第２のセットのＭＥＭＳセンサデータの収集は、自動であり得る（これは、いくつかの実施形態では、明確なユーザ入力を必要とし得る、トレーニングフェーズ中の第１のセットのＭＥＭＳセンサデータの収集とは異なり得る）。ここで、第２のセットのＭＥＭＳセンサデータは、第１のセットのＭＥＭＳセンサデータのものと同じＭＥＭＳからのデータを含み得る。この機能性を実行するための手段は、図７に示され、以下で説明されるようなモバイルデバイスの処理ユニット７１０、バス７０５、センサ７４０、および／またはメモリ７６０を含むことができる。
【００６２】
[0067]ブロック６５０において、第２のセットのＭＥＭＳセンサデータが運動モデルと一致するかどうかが決定される。本明細書で説明された実施形態において示されるように、この一致は、第２のセットのＭＥＭＳセンサデータをＥＮＵ基準フレームに変換することと、第２のセットのＭＥＭＳセンサデータの１つまたは複数の波形を、様々なモーションモデルの対応する１つまたは複数の基準波形と比較することとを含み得る。次いで、モバイルデバイスは、比較により波形が実質的に類似していると決定されるとき、「一致」を決定することができる。前に述べたように、この決定は、例えば、第２のセットのＭＥＭＳセンサデータの１つの波形と基準波形との間の相関演算を実行することでなされ得る。相関演算が、少なくとも閾値相関値と同じ大きさの相関値に帰着する場合。
この相関演算は、波形間の時間オフセットに対して非依存型（agnostic）であり得るか、または一方の波形または両方の波形に、１つの時間（位相）オフセットまたは複数の時間（位相）オフセットを含めように構成され得る。一致が見つかった場合、相関演算はまた、変換された第２のセットのＭＥＭＳセンサデータに重付け関数を適切に適用する目的で、位相または時間オフセットを提供し得る。ブロック６５０における機能性を実行するための手段は、図７に示され、以下で説明されるようなモバイルデバイスの処理ユニット７１０、バス７０５、および／またはメモリ７６０を含むことができる。
【００６３】
[0068]ブロック６６０における機能性は、第２のセットのＭＥＭＳセンサデータと運動モデルとの間の一致の決定に応じて、運動モデルに対応する重付け関数を第２のセットのＭＥＭＳセンサデータに適用することで、第２のセットのＭＥＭＳセンサデータを使用して、モバイルデバイスのロケーションを決定することを含む。第２のセットのＭＥＭＳセンサデータが運動モデルと一致する（例えば、第２のセットのＭＥＭＳセンサデータの１つまたは複数の波形が、ブロック６５０において、運動モデルの対応する１つまたは複数の波形に実質的に類似すると決定される）と、その運動モデルの対応する重付け関数がＭＥＭＳセンサデータに適用される。これは、第２のセットのＭＥＭＳセンサデータにおいてアロングトラック運動を増幅させるおよび／またはクロストラック運動を減衰させるのに役立ち、これは、モバイルデバイスのロケーションを決定するために使用されるより精確なＣＯＧ推定値を提供することができる。本明細書で説明される実施形態において例示されるように、重付け関数を適用することは、重付け関数が非ゼロである場合に、重付け関数の非ゼロ値を、例えば、第２のセットのＭＥＭＳセンサデータの（変換された）東軸の加速度データおよび北軸の加速度データの対応するサンプルに乗じることであり得る。上で述べたように、第２のセットのＭＥＭＳセンサデータと任意の記憶された運動モデルとの間の一致の決定が存在しない場合、モバイルデバイスは、第２のセットのＭＥＭＳセンサデータを使用してトレーニングフェーズに入り得る。この機能性を実行するための手段は、図７に示され、以下で説明されるようなモバイルデバイスの処理ユニット７１０、バス７０５、および／またはメモリ７６０を含むことができる。
【００６４】
[0069]図７は、モバイルデバイス１０５の実施形態のブロック図であり、これは、本明細書において上に説明したように、利用されることができる。例えば、モバイルデバイス１０５は、図１の測位システム１００において使用され、図６Ａおよび６Ｂの方法６００−Ａおよび／または６００−Ｂのうちのいくつかまたはすべてを実行し、および／または、本明細書で詳述される実施形態において一般的に説明されるように使用されることができる。図７が様々な構成要素の一般化された図を提供することだけを意図していること、ここで、それらのうちの任意のものまたはすべては適宜利用され得る、は留意されるべきである。いくつかの事例では、図７によって例示される構成要素が、単一の物理デバイスへとローカライズされ、および／または、異なる物理ロケーションに散在し得る様々なネットワーク化されたデバイス間で分散されることは留意されることができる。
【００６５】
[0070]バス７０５を介して電気的に結合されることができる（または、適宜、他の方法と通信状態にあり得る）ハードウェア要素を備えるモバイルデバイス１０５が示される。ハードウェア要素は、１つまたは複数の汎用プロセッサ、（デジタル信号処理（ＤＳＰ）チップ、グラフィックス加速度プロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、および／または同様のもののような）１つまたは複数の専用プロセッサ、および／または、本明細書で説明した方法のうちの１つまたは複数を実行するように構成され得る他の処理構造または手段を、制限なく、備え得る処理ユニット７１０を含み得る。図７に示されるように、いくつかの実施形態は、所望の機能性に依存して、別個のＤＳＰ７２０を有し得る。いくつかの実施形態では、処理ユニット７１０および／またはメモリ７６０は、本明細書で前に説明したように、（例えば、トレーニングフェーズ中におよび／またはトレーニングフェーズに続いて）モーションデータを収集すること、運動モデルを作成すること、モーションデータが運動モデルと一致するかどうかを決定すること、および／または、運動モデルに対応する重付け関数をモーションデータに適用することで、モーションデータを使用してモバイルデバイス（または、他の装置）のロケーションを決定することを行うための手段としての機能を果たすことができる。モバイルデバイス１０５はまた、１つまたは複数のタッチスクリーン、タッチパッド、マイクロフォン、ボタン、ダイアル、スイッチ、および／または同様のものを、制限なく、備え得る１つまたは複数の入力デバイス７７０と、１つまたは複数のディスプレイ、発光ダイオード（ＬＥＤ）、スピーカ、および／または同様のものを、制限なく、備え得る１つまたは複数の出力デバイス７１５とを備え得る。
【００６６】
[0071]モバイルデバイス１０５はまた、モデム、ネットワークカード、赤外線通信デバイス、ワイヤレス通信デバイス、および／または（ブルートゥース（登録商標）デバイス、ＩＥＥＥ８０２．１１デバイス、ＩＥＥＥ８０２．１５．４デバイス、Ｗｉ−Ｆｉデバイス、ＷｉＭａｘデバイス、セルラ通信回路、等のような）チップセット、および／または同様のものを、制限なく、備え得るワイヤレス通信インターフェース７３０を含み得る。ワイヤレス通信インターフェース７３０は、（本明細書における実施形態において説明したようなロケーション情報および／またはロケーション支援情報のような）データが、図１に例示されているデバイスを含む、ネットワーク、ワイヤレスアクセスポイント、コンピュータシステム、および／または本明細書で説明される任意の他のワイヤレス電子デバイスと通信されることを許可し得る。通信は、ワイヤレス信号７３４を送るおよび／または受信する１つまたは複数のワイヤレス通信アンテナ７３２を介して実行されることができる。
【００６７】
[0072]所望の機能性に依存して、ワイヤレス通信インターフェース７３０は、トランシーバ基地局（例えば、図１のアンテナ１２０）および他のワイヤレスデバイスおよびアクセスポイントと通信するために別個のトランシーバを備え得る。異なるデータネットワークは、様々なネットワークタイプを備え得る。ワイヤレス通信インターフェース７３０は、符号分割多元接続（ＣＤＭＡ）ネットワーク、時分割多元接続（ＴＤＭＡ）ネットワーク、周波数分割多元接続（ＦＤＭＡ）ネットワーク、直交周波数多元接続（ＯＦＤＭＡ）ネットワーク、単一キャリア周波数分割多元接続（ＳＣ−ＦＤＭＡ）ネットワーク、ＷｉＭａｘ（ＩＥＥＥ７０２．１６）、等を備え得るワイヤレス広域ネットワーク（ＷＷＡＮ）と通信し得る。ＣＤＭＡネットワークは、ｃｄｍａ２０００、広帯域ＣＤＭＡ（Ｗ−ＣＤＭＡ（登録商標））、等の１つまたは複数の無線アクセス技術（ＲＡＴ）をインプリメントし得る。ｃｄｍａ２０００は、ＩＳ−９５、ＩＳ−２０００、および／またはＩＳ−８５６規格を含む。ＴＤＭＡネットワークは、モバイル通信のためのグローバルシステム（ＧＳＭ（登録商標））、デジタルアドバンスドモバイル電話システム（Ｄ−ＡＭＰＳ）、または何らかの他のＲＡＴをインプリメントし得る。ＯＦＤＭＡネットワークは、ＬＴＥ（登録商標）、ＬＴＥアドバンスド、等を用い得る。ＬＴＥ、ＬＴＥアドバンスド、ＧＳＭ、およびＷ−ＣＤＭＡは、３ＧＰＰ（登録商標）による文書に記載されている。ｃｄｍａ２０００は、「第３世代パートナーシッププロジェクト２」（３ＧＰＰ２）という名称の団体による文書に記載されている。３ＧＰＰおよび３ＧＰＰ２の文書は公に入手可能である。本明細書で説明されたようなワイヤレスデータネットワークは、ＩＥＥＥ８０２．１１ｘネットワークであり得るワイヤレスローカルエリアネットワーク（ＷＬＡＮ）を備え得、ワイヤレスパーソナルエリアネットワーク（ＷＰＡＮ）は、ブルートゥースネットワーク、ＩＥＥＥ８０２．１５ｘ、または何らかの他のタイプのネットワークを備え得る。本明細書で説明された技法はまた、ＷＷＡＮ、ＷＬＡＮ、および／またはＷＰＡＮの任意の組合せに使用され得る。
【００６８】
[0073]モバイルデバイス１０５は、センサ７４０をさらに含むことができる。そのようなセンサは、１つまたは複数の加速度計、ジャイロスコープ、カメラ、磁気計、高度計、気圧計、マイクロフォン、近接度センサ、光センサ、および同様のものを、制限なく、含む、本明細書で説明されたような１つまたは複数のＭＥＭＳまたは非ＭＥＭＳセンサを備え得、いくつかの実施形態では、そのようなセンサ７４０は、モーションを検出するための手段としての機能を果たすことができる。センサ７４０のうちのいくつかまたはすべては、ユーザのステップ（または、ストライド）を含む運動を決定するために本明細書で説明したように利用されることができる。このように、センサ７４０は、本明細書で説明されたような歩数計をインプリメントするために、単独でまたはモバイルデバイス１０５の処理ユニット７１０および／または他の構成要素と共に、使用されることができる。センサ７４０は、本明細書で説明したようにＣＯＧに関する測定値を提供することで、（図１の測位システム１００のような）測位システムによる測位決定を容易にするために、追加手段または代替手段で使用され得る。
【００６９】
[0074]モバイルデバイスの実施形態はまた、ＧＮＳＳアンテナ７８２を使用して、（図１のＧＮＳＳ ＳＶ１１０のような）１つまたは複数のＧＮＳＳ ＳＶから信号７８４を受信する能力があるＧＮＳＳ受信機７８０を含み得る。そのような測位は、本明細書で説明された技法を補完および／または組み込むために利用されることができる。ＧＮＳＳ受信機７８０は、ガリレオ、ＧＬＯＮＡＳＳ、コンパス、日本上にあるＱＺＳＳ（Quasi-Zenith Satellite System）、インド上にあるＩＲＮＳＳ（Indian Regional Navigational Satellite System）、中国上にある北斗、および／または同様のもののようなＧＮＳＳシステムのＧＮＳＳ ＳＶから、従来の技法を使用して、モバイルデバイスの位置を抽出することができる。さらに、ＧＮＳＳ受信機７８０は、１つまたは複数の全地球的および／または地域的航法衛星システムに関連し得るかそうでなければそれらと共に使用するためにイネーブルにされ得る様々な補強システム（例えば、静止衛星型衛星航法補強システム（ＳＢＡＳ））において使用されることができる。限定ではなく例として、ＳＢＡＳは、例えば、広域補強システム（ＷＡＡＳ：Wide Area Augmentation System）、静止衛星補強型衛星航法システム（ＥＧＮＯＳ：European Geostationary Navigation Overlay Service）、運輸多目的衛星用衛星航法補強システム（ＭＳＡＳ：Multi -functional Satellite Augmentation System）、ＧＰＳ支援静止衛星型補強航法（GPS Aided Geo Augmented Navigation）またはＧＰＳおよび静止衛星補強航法（ＧＡＧＡＮ：GPS and Geo Augmented Navigation system）、および／または同様のもののような、完全性情報（integrity information）、差分補正、等を提供する補強システムを含み得る。ゆえに、本明細書で使用される場合、ＧＮＳＳは、１つまたは複数の全地球的および／または地域的航法衛星システムおよび／または補強システムの任意の組合せを含み得、ＧＮＳＳ信号は、ＧＮＳＳ、準ＧＮＳＳ、および／またはそのような１つまたは複数のＧＮＳＳに関連する他の信号を含み得る。換言すると、ＧＮＳＳシステムは、任意のタイプの衛星測位システム（ＳＰＳ）を備え得る。
【００７０】
[0075]モバイルデバイス１０５は、メモリ７６０をさらに含み、および／または、それと通信状態にあり得る。メモリ７６０は、ローカルおよび／またはネットワークアクセス可能記憶媒体、ディスクドライブ、ドライブアレイ、光学記憶デバイス、プログラマブル、フラッシュ更新可能、および／または同様のものであり得る、ランダムアクセスメモリ（「ＲＡＭ」）および／または読取専用メモリ（「ＲＯＭ」）のようなソリッドステート記憶デバイスを、制限なく、備え得る。このような記憶デバイスは、様々なファイルシステム、データベース構造、および／または同様のものを、制限なく、含む、任意の適切なデータ記憶装置をインプリメントするように構成され得る。
【００７１】
[0076]モバイルデバイス１０５のメモリ７６０はまた、本明細書で説明されるように、１つまたは複数のアプリケーションプログラムのような、オペレーティングシステム、デバイスドライバ、実行可能なライブラリ、および／または他のコードを含む、ソフトウェア要素（図示せず）を備えることができ、これらは、様々な実施形態によって提供されるコンピュータプログラムを備え得、および／または、他の実施形態によって提供される、方法をインプリメントするおよび／またはシステムを構成するように設計され得る。単なる例として、上述した機能性を参照して説明した１つまたは複数のプロシージャは、コンピュータ実行可能なコードおよび／またはモバイルデバイス１０５によって（例えば、処理ユニットおよび／または測位システムの別のデバイスによって）実行可能な命令としてインプリメントされ得る。次いで、ある態様では、そのようなコードおよび／または命令は、説明された方法にしたがって１つまたは複数の動作を実行するように汎用コンピュータ（または、他のデバイス）を構成するおよび／または適合させるために使用されることができる。
【００７２】
[0077]これらの命令および／またはコードのセットは、上で説明したメモリ７６０のような、非一時的なコンピュータ読取可能な記憶媒体に記憶され得る。これらの命令は、モバイルデバイス１０５によって実行可能であり得る実行可能なコードの形をとり得、および／または、（例えば、様々な一般に利用可能なコンパライラ、インストールプログラム、圧縮／解凍ユーティリティ、等のうちの任意のものを使用した）モバイルデバイス１０５上へのコンパイルおよび／またはインストールで、実行可能なコードの形をとり得るソースコードおよび／またはインストール可能なコードの形をとり得る。
【００７３】
[0078]本明細書で説明した技法は、特定の特徴および／または例にしたがったアプリケーションに依存して様々な手段によってインプリメントされ得る。例えば、そのような方法論は、ソフトウェアと共に、ハードウェア、ファームウェア、および／またはそれらの組合せでインプリメントされ得る。ハードウェアインプリメンテーションでは、例えば、処理ユニット（例えば、処理ユニット７１０）は、１つまたは複数の特定用途向け集積回路（ＡＳＩＣ）、デジタルシグナルプロセッサ（ＤＳＰ）、デジタル信号処理デバイス（ＤＳＰＤ）、プログラマブル論理デバイス（ＰＬＤ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、電子デバイス、本明細書で説明された機能を実行するように設計された他のデバイスユニット、および／またはこれらの組合せ内でインプリメントされ得る。
【００７４】
[0079]先の詳細な説明では、数多くの特定の詳細が、請求項に記載の主題の完全な理解を与えるために示されている。しかしながら、請求項に記載の主題がこれらの特定の詳細なしに実施され得ることは当業者によって理解されるであろう。他の事例では、当業者によって知られるであろう方法および装置は、請求項に記載の主題を曖昧にしないために、詳細には説明されていない。
【００７５】
[0080]先の詳細な説明のいくつかの部分は、図７に示されるモバイルデバイス１０５のメモリ７６０のような、特定の装置または専用コンピューティングデバイスもしくはプラットフォームのメモリ内に記憶されているバイナリデジタル電子信号に対する動作のアルゴリズムまたはシンボル表現の観点から提示されている。この特定の明細書のコンテキストにおいて、特定の装置という用語または同様のものは、汎用コンピュータがプログラムソフトウェアからの命令に準じて特定の機能を実行するようにプログラムされた時点でそれを含む。アルゴリズム記述子またはシンボル表現は、研究（work）の内容を他の当業者に伝達するために、信号処理または関連分野において当業者によって使用される技法の例である。アルゴリズムは、ここでは、そして一般的に、所望の結果に導く、首尾一貫したシーケンスの動作または同様の信号処理であると考えられる。このコンテキストでは、動作または処理は、物理量の物理的な操作を伴う。典型的に、必ずというわけではないが、そのような量は、情報を表す電子信号として記憶、転送、組み合わせ、比較、または他の方法で操作される能力がある電気信号または磁気信号の形をとり得る。主に共通使用の理由により、そのような信号を、ビット、データ、値、要素、シンボル、文字、用語、数、番号、情報、または同様のもので呼ぶことは時に便利であることが証明されている。しかしながら、これらの用語または同様の用語はすべて、適切な物理量に関連付けられるものであり、便利なラベルにすぎないことが理解されるべきである。別途明記されない限り、以下の論述から明らかであるように、本明細書全体を通して、「処理する」、「計算する」、「算出する」、「決定する」、「生成する」、「取得する」、「修正する」、「選択する」、「識別する」といった用語および／または同様のものを利用した論述が、専用コンピュータまたは同様の専用電子コンピューティングデバイスのような特定の装置のアクションまたはプロセスを指すことは認識される。したがって、本明細書のコンテキストでは、専用コンピュータまたは同様の専用電子コンピューティングデバイスは、典型的に、専用コンピュータまたは同様の専用電子コンピューティングデバイスのメモリ、レジスタ、または他の情報記憶デバイス、送信デバイス、またはディスプレイデバイス内の物理的な電子量または磁気量として表される信号を操作または変換することができる。この特定の特許出願のコンテキストでは、「特定の装置」という用語は、汎用コンピュータがプログラムソフトウェアからの命令に準じて特定の機能を実行するようにプログラムされた時点でそれを含み得る。
【００７６】
[0081]本明細書で使用される場合、「および」、「または」、ならびに「および／または」という用語は、このような用語が使用されるコンテキストに少なくとも部分的に依存することが予期もされる様々な意味を含み得る。典型的に、「または」は、Ａ、Ｂ、またはＣのようなリストを関連付けるために使用される場合、Ａ、Ｂ、およびＣ、ここでは包括的な意味で使用されている、に加え、Ａ、Ｂ、またはＣ、ここでは排他的な意味で使用されている、を意味することが想定される。加えて、本明細書に使用される場合、「１つまたは複数」という用語は、任意の特徴、構造、または特性を単数形で説明するために使用され得るか、複数の特徴、構造、または特性またはそれらの特徴、構造、または特性の何らかの他の組合せを説明するために使用され得る。しかしながら、これが実例となる例にすぎず、請求項に記載の主題がこの例に制限されないことは留意されるべきである。
【００７７】
[0082]例となる特徴であると現在みなされるものが例示および説明されているが、請求項に記載の主題から逸脱することなく、様々な他の修正がなされ得、および、同等物が置き換えられ得ることは当業者によって理解されるであろう。追加的に、本明細書で説明された主要な概念から逸脱することなく、請求項に記載の主題の教示に特定の状況を適合させるために、多数の修正が行われ得る。
【００７８】
[0083]したがって、請求項に記載の主題が、開示された特定の例に制限されないこと、しかしながら、このような請求項に記載の主題がまた、添付の特許請求の範囲内にあるすべての態様およびその同等物を含み得ることが想定される。
【図１】
2019530865.tif 000004
【図２】
2019530865.tif 000005
【図３】
2019530865.tif 000006
【図４】
2019530865.tif 000007
【図５】
2019530865.tif 000008
【図６Ａ】
2019530865.tif 000009
【図６Ｂ】
2019530865.tif 000010
【図７】
2019530865.tif 000011
【国際調査報告】
2019530865.tif 000012
2019530865.tif 000013