(57)【特許請求の範囲】
【請求項１】
地図情報を使用してポータブルデバイスおよびプラットフォームのナビゲーションソリューションの質を高める方法であって、前記デバイスのモビリティは、前記プラットフォーム内で拘束されまたは拘束されず、前記デバイスは、任意の方向に傾けられ得、前記方法は、
a)前記ポータブルデバイスのセンサデータを入手するステップと、
b)前記センサデータに少なくとも部分的に基づいてナビゲーションソリューションを導出するステップと、
c)前記ナビゲーションソリューションに少なくとも部分的に基づいて前記ポータブルデバイスの推定された位置情報を提供するステップと、
d)前記ポータブルデバイスのユーザの現在位置を包含するエリアの地図情報を入手するステップと、
e)前記推定された位置情報および前記地図情報に少なくとも部分的に基づいて前記ポータブルデバイスの可能な位置に関する複数の仮説を生成するステップであって、各仮説はそのトポロジヒストリを具備する、ステップと、
f)前記推定された位置情報および前記地図情報に少なくとも部分的に基づいて前記仮説を管理するステップであって、前記仮説の管理は、仮説の追加、削除、選択、および組み合わせを含む、ステップと、
g)前記ポータブルデバイスの前記推定された位置情報を更新するために前記管理される仮説を処理するステップと、
h)前記更新された推定された位置情報を使用して質を高められたナビゲーションソリューションを提供するステップと
を含む、方法。
【請求項２】
前記更新された推定された位置情報は、前記質を高められたナビゲーションソリューションを含む、請求項1に記載の方法。
【請求項３】
前記更新された推定された位置情報は、前記質を高められたナビゲーションソリューションを導出するために前記ナビゲーションソリューションに供給される、請求項1に記載の方法。
【請求項４】
前記質を高められたナビゲーションソリューションの前記導出は、ナビゲーションモジュールへの測定値更新として前記更新された推定された位置情報を利用する、請求項3に記載の方法。
【請求項５】
前記質を高められたナビゲーションソリューションは、前記更新された推定された位置情報からの値および前記ナビゲーションソリューションからの値を含む、請求項1に記載の方法。
【請求項６】
前記ポータブルデバイスの絶対ナビゲーション情報を入手するステップをさらに含み、前記ナビゲーションソリューションの導出は、前記絶対ナビゲーション情報にさらに基づく、請求項1に記載の方法。
【請求項７】
前記絶対ナビゲーション情報は、(i)全地球航法衛星システム(GNSS)、(ii)セルベースの測位、(iii)WiFiベースの測位、または(iv)他のワイヤレスベースの測位のうちの任意の1つまたは任意の組合せから入手される、請求項6に記載の方法。
【請求項８】
前記ポータブルデバイスの可能な位置に関する複数の仮説を生成するステップは、以前のエポックからの更新された位置情報にさらに基づく、請求項1に記載の方法。
【請求項９】
前記地図情報を前処理するステップをさらに含む、請求項1に記載の方法。
【請求項１０】
前記地図情報を前処理するステップは、地図エンティティを抽出するステップを含む、請求項9に記載の方法。
【請求項１１】
前記地図情報を前処理するステップは、少なくとも1つの前景地図エンティティを背景エンティティからクリッピングするステップをさらに含む、請求項10に記載の方法。
【請求項１２】
前記背景エンティティをクリッピングするステップは、トラバース可能エリアを画定する、請求項11に記載の方法。
【請求項１３】
前記地図情報を前処理するステップは、相対的に複雑なポリゴンとして地図エンティティを表すステップと、前記ポリゴンを複数の相対的により単純なポリゴンに分解するステップとを含む、請求項10に記載の方法。
【請求項１４】
前記地図情報を前処理するステップは、接続されたリンクおよびノードのグリッドを生成するステップを含む、請求項9に記載の方法。
【請求項１５】
前記推定された位置情報は、前記ポータブルデバイスの潜在的な位置を表す誤差領域を含む、請求項1に記載の方法。
【請求項１６】
前記仮説のうちの少なくとも1つは、前記地図情報上に前記誤差領域を射影することによって生成される、請求項15に記載の方法。
【請求項１７】
複数の仮説は、複数の地図エンティティとのオーバーラップが発生する時に前記地図情報に前記誤差領域を射影することによって生成される、請求項15に記載の方法。
【請求項１８】
前記地図情報は、ポリゴンベースの幾何地図を含む、請求項15に記載の方法。
【請求項１９】
前記地図情報は、グリッド地図を含む、請求項15に記載の方法。
【請求項２０】
前記地図情報は、グリッド地図を含み、前記推定された位置情報は、判定されたユーザ軌跡と前記グリッド地図のトポロジ特徴との間の相関に少なくとも部分的に基づく、請求項1に記載の方法。
【請求項２１】
前記仮説を管理するステップは、意思決定論理を適用するステップをさらに含む、請求項1に記載の方法。
【請求項２２】
前記意思決定論理は、壁横切りイベントのために構成される、請求項21に記載の方法。
【請求項２３】
前記意思決定論理は、階変化イベントのために構成される、請求項21に記載の方法。
【請求項２４】
前記ナビゲーションソリューションは、前記ユーザの運動モードを含む、請求項1に記載の方法。
【請求項２５】
前記推定された位置情報は、前記運動モードに少なくとも部分的に基づく、請求項24に記載の方法。
【請求項２６】
前記仮説は、前記運動モードに少なくとも部分的に基づいて管理される、請求項24に記載の方法。
【請求項２７】
階変化イベントは、前記運動モードに少なくとも部分的に基づく、請求項24に記載の方法。
【請求項２８】
前記質を高められたナビゲーションソリューションは、前記推定された位置情報に関連する地図エンティティに少なくとも部分的に基づいて検出される前記ユーザの運動モードを含む、請求項1に記載の方法。
【請求項２９】
前記ポータブルデバイスの位置情報は、予測のみカルマンフィルタ、近等速カルマンフィルタ、予測のみ粒子フィルタ、および近等速粒子フィルタのうちの少なくとも1つを使用して推定される、請求項1に記載の方法。
【請求項３０】
地図情報を入手するステップ、複数の仮説を生成するステップ、前記仮説を管理するステップ、および前記ポータブルデバイスの前記推定された位置情報を更新するために前記管理される仮説を処理するステップのうちの少なくとも1つは、リモートに実行される、請求項1に記載の方法。
【請求項３１】
地図情報を使用して質を高められたナビゲーションソリューションを提供するポータブルデバイスであって、
a)前記ポータブルデバイスの運動を表すデータを出力するように構成された、前記ポータブルデバイスと一体化されたセンサアセンブリと、
b)
i)前記センサアセンブリのデータに少なくとも部分的に基づいてナビゲーションソリューションを導出するナビゲーションモジュールと、
ii)前記ナビゲーションソリューションに少なくとも部分的に基づいて前記ポータブルデバイスの推定された位置情報を提供する位置エスティメータと、前記ポータブルデバイスのユーザの現在位置を包含するエリアの地図情報を入手する地図ハンドラと、前記推定された位置情報および前記地図情報に少なくとも部分的に基づいて前記ポータブルデバイスの可能な位置に関する複数の仮説を生成し、各仮説はそのトポロジヒストリを具備し、管理する仮説アナライザとを有する地図モジュールであって、前記ポータブルデバイスの前記推定された位置情報を更新するために前記管理される仮説を処理し、前記複数の仮説の管理は、仮説の追加、削除、選択、および組み合わせを含む、地図モジュールと
を実施するように構成されたプロセッサと
を含む、ポータブルデバイス。
【請求項３２】
前記ポータブルデバイスの絶対ナビゲーション情報のソースをさらに含み、前記絶対ナビゲーション情報は、前記ナビゲーションソリューションを支援する、請求項31に記載のポータブルデバイス。
【請求項３３】
前記絶対ナビゲーション情報は、(i)全地球航法衛星システム(GNSS)、(ii)セルベースの測位、(iii)WiFiベースの測位、または(iv)他のワイヤレスベースの測位のうちの任意の1つまたは任意の組合せから入手される、請求項32に記載のポータブルデバイス。
【請求項３４】
前記地図モジュールは、質を高められたナビゲーションソリューションを提供するようにさらに構成され、前記更新された推定された位置情報は、前記質を高められたナビゲーションソリューションを含む、請求項31に記載のポータブルデバイス。
【請求項３５】
前記更新された推定された位置情報を前記ナビゲーションモジュールに供給することをさらに含み、前記ナビゲーションモジュールは、前記更新された推定された位置情報を使
用して前記ナビゲーションソリューションの質を高めるようにさらに構成される、請求項31に記載のポータブルデバイス。
【請求項３６】
前記ナビゲーションソリューションの前記質を高めることは、前記ナビゲーションモジュールへの測定値更新として前記更新された推定された位置情報を利用する、請求項35に記載のポータブルデバイス。
【請求項３７】
前記地図モジュールは、質を高められたナビゲーションソリューションを提供するようにさらに構成され、前記質を高められたナビゲーションソリューションは、前記更新された推定された位置情報からの値および前記ナビゲーションソリューションからの値を含む、請求項31に記載のポータブルデバイス。
【請求項３８】
前記センサアセンブリは、加速度計およびジャイロスコープを含む、請求項31に記載のポータブルデバイス。
【請求項３９】
前記センサアセンブリは、微細電気機械システム(MEMS)として実施された慣性センサを含む、請求項31に記載のポータブルデバイス。
【請求項４０】
地図情報を使用して質を高められたナビゲーションソリューションを提供するシステムであって、
a)ポータブルデバイスの運動を表すデータを出力するように構成された、一体化されたセンサアセンブリと、センサデータに少なくとも部分的に基づいてナビゲーションソリューションを導出するナビゲーションモジュールを実施するように構成されたプロセッサとを有する前記ポータブルデバイスと、
b)前記ポータブルデバイスから前記ナビゲーションソリューションを受信するように構成されたリモート処理リソースであって、前記ナビゲーションソリューションに少なくとも部分的に基づいて前記ポータブルデバイスの推定された位置情報を提供する位置エスティメータと、前記ポータブルデバイスのユーザの現在位置を包含するエリアの地図情報を入手する地図ハンドラと、前記推定された位置情報および前記地図情報に少なくとも部分的に基づいて前記ポータブルデバイスの可能な位置に関する複数の仮説を生成し、管理する仮説アナライザとを有する地図モジュールであって、各仮説はそのトポロジヒストリを具備し、前記ポータブルデバイスの前記推定された位置情報を更新するために前記管理される仮説を処理し、前記更新された推定された位置情報を前記ポータブルデバイスに送信し、する、地図モジュールを実施するように構成されたプロセッサを有し、前記複数の仮説の管理は、仮説の追加、削除、選択、および組み合わせの少なくとも１つを含む、リモート処理リソースと
を含む、システム。
【請求項４１】
前記デバイスは、質を高められたナビゲーションソリューションを提供するようにさらに構成され、前記更新された推定された位置情報は、前記質を高められたナビゲーションソリューションを含む、請求項40に記載のシステム。
【請求項４２】
前記更新された推定された位置情報を前記ナビゲーションモジュールに供給することをさらに含み、前記ナビゲーションモジュールは、前記更新された推定された位置情報を使用して前記ナビゲーションソリューションの質を高めるようにさらに構成される、請求項40に記載のシステム。
【請求項４３】
前記ナビゲーションソリューションの前記質を高めることは、前記ナビゲーションモジュールへの測定値更新として前記更新された推定された位置情報を利用する、請求項42に記載のシステム。
【請求項４４】
前記デバイスは、質を高められたナビゲーションソリューションを提供するようにさら
に構成され、前記質を高められたナビゲーションソリューションは、前記更新された推定された位置情報からの値および前記ナビゲーションソリューションからの値を含む、請求項40に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、両方が参照によってその全体を組み込まれている、2015年9月4日に出願した米国特許出願第14/845903号、名称「METHOD AND APPARATUS FOR USING MAP INFORMATION AIDED ENHANCED PORTABLE NAVIGATION」および2014年9月8日に出願した米国特許仮出願第62/047511号、名称「METHOD AND APPARATUS FOR USING MAP MATCHING AND CONSTRAINING FOR ENHANCED PORTABLE NAVIGATION」の優先権および利益を主張するものである。
【０００２】
本開示は、地図支援ナビゲーションソリューションおよび/またはナビゲーションソリューションに拘束する地図の使用を介してプラットフォーム(たとえば、人、車両、または船舶など)内のデバイスのナビゲーションソリューションの質を高める方法および装置であって、デバイスは、プラットフォームにストラップで固定されまたはストラップで固定されないものとすることができ、ストラップで固定されない場合に、デバイスのモビリティは、プラットフォーム内で拘束されまたは拘束されないものとすることができ、デバイスは、任意の方位に傾けられ、それでもシームレスなナビゲーションを提供することができる、方法および装置に関する。
【背景技術】
【０００３】
手で持たれまたは他の形でユーザに関連付けられるように構成されたものなどのポータブル電子デバイスが、様々な応用例および環境内で使用される。そのようなデバイスは、ますます、ポータブルデバイスの位置または運動を判定するために1つまたは複数のセンサまたは他のシステムを装備される。特筆すべきことに、スマートフォン、タブレット、スマートウォッチ、または他のポータブルデバイスなどのデバイスは、全地球航法衛星システム(GNSS)受信器、低コスト微細電気機械システム(MEMS)慣性センサ、気圧計、および磁気計を特徴とする場合がある。GNSSおよびマルチセンサは、ほとんどの屋外環境において有望な測位結果を提供するために一体化され得る。しかし、いくつかの大量市場応用例は、モール、オフィス、または地下駐車場などのすべての種類の環境内でシームレスな測位能力を要求する。屋内環境におけるGNSS信号の不在の下で、低コスト慣性センサを使用する従来のストラップダウン慣性航法システム(SINS)は、累積されるセンサドリフトおよびバイアスに起因する大幅な性能劣化に苦しむ。したがって、モーションセンサだけに頼る測位技法は、シームレスな屋内および屋外のナビゲーション応用例のすべての要件を満足することができない。
【０００４】
歩行者推測航法(PDR)は、ポータブルデバイス屋内/屋外測位技法の例であり、最近に産業界および学会の研究の焦点になった。SINSに似て、PDRは、位置を導出するために既知の出発点からの連続する変位を累積する。この変位(ステップ長)は、慣性センサ測定値を使用して、ある精度以内で様々なアルゴリズムを用いて推定され得る。PDRからのステップ長を使用する位置誤差は、SINSからの加速度計によって導出される変位の位置誤差よりはるかにゆっくり累積する。PDRは、GNSS更新なしのSINSに対して改善された性能を示す。しかし、PDRは、累積される機首方向誤差のゆえに、まだ頑健さに欠ける。この短所は、経時的に歪曲された経路を引き起こし、建物のレイアウトと一貫しない可能性がある位置推定値を作る可能性がある。したがって、結果のナビゲーション軌跡は、壁、床、または他の障害物を横切る可能性がある。これらのタイプのナビゲーション軌跡と建物レイアウトとの不一致を回避するために、地図情報が、可能なルートとして示されるエリアにPDRソリューションを拘束するのに使用され得、あるいは、判定される位置が、地図情報から導出される仮定される位置と一致するように更新され得る。本明細書で使用される時に、本開示の地図支援技法は、ユーザの導出される位置を拘束することまたは導出される位置を地図情報から判定される位置に更新することのいずれかまたは両方を含む。
【０００５】
前述のように、地図情報は、ナビゲーションシステムの信頼性と測位の精度との両方を改善するのに使用され得る。ナビゲーションシステム内で地図情報を使用するために、様々な地図支援アルゴリズムが、従来技術において提案され、適用されて来た。地図支援アルゴリズムは、一般に、4つのカテゴリすなわち幾何技法、トポロジ技法、確率技法、および他の高度な技法に分類され得る。
【０００６】
幾何地図支援アルゴリズムは、通常、ユーザ位置と地図との間の幾何的関係だけを考慮する。幾何地図支援アルゴリズムは、空間道路網がノードポイントおよび曲線として抽象化される、車両ナビゲーションアプリケーションにおいて広く使用されている。最も一般的に使用される幾何地図支援アルゴリズムは、ユーザ位置を道路セグメントの最も近いノードポイントにマッチングするポイントツーポイント支援技法である。実施が簡単であるが、これは、道路網がデジタル化される形に敏感である。別の幾何地図支援アルゴリズムは、ポイントツーカーブ支援アルゴリズムである。そのような技法は、ユーザ位置を道路の最も近い曲線にマッチングする。曲線のそれぞれは、区分的に線形な線分を含む。ユーザ位置から線分のそれぞれまでの距離が、計算され得る。最小の距離を与える線分が、マッチングされた道路として選択される。これは、ポイントツーポイント支援アルゴリズムより効率的であるが、密な道路網において不安定になる可能性がある。さらに別の幾何アルゴリズムが、カーブツーカーブ支援アルゴリズムであり、これは、ユーザ軌跡の短いヒストリを道路の曲線にマッチングし、ユーザ軌跡への最短距離を有する道路曲線を選択することができる。残念ながら、この手法は、アウトライアに非常に敏感であり、しばしば、予想外の結果を結果として与える。
【０００７】
トポロジ地図支援アルゴリズムは、基本的な幾何情報に加えて、ヒストリカルユーザ軌跡情報(以前に識別された道路セグメントを含むことができる)と、リンク接続性、道路分類、道路通行制限情報(一方通行、進行方向制限)などのトポロジ情報とを利用する。様々な以前の研究が、異なるレベルにおいてトポロジ情報を適用した。たとえば、(i)候補リンクのセットを識別するためのトポロジ情報の使用、および(ii)候補リンクのセットから正しいリンクを識別するためのトポロジ情報の使用である。したがって、トポロジ地図支援アルゴリズムは、通常、幾何技法だけに頼るアルゴリズムより性能が優れている。さらに、重みベースのトポロジ地図支援アルゴリズムは、マッチ支援性能をさらに改善することができる。そのような技法は、ネットワークジオメトリ情報、ネットワークトポロジ情報、およびGPS/DR統合システムからの測位情報内の相関値を、異なる道路リンク候補の重みとして使用する。最大の重みスコアを有するリンクが、正しい道路セグメントとして選択され得る。しかし、以前のエポックにおける道路リンクの誤った識別が、続く地図支援結果に対して重大な悪影響を有する可能性がある。
【０００８】
従来の確率地図支援アルゴリズムは、ナビゲータからのユーザ位置の周囲の誤差楕円領域または誤差長方形領域を使用する。誤差領域は、推定されたナビゲーション位置の分散に依存する。その後、誤差領域は、ユーザが移動している道路セグメントを識別するために道路網に重畳される。誤差領域が複数のセグメントを含む場合には、候補セグメントの評価が、機首方向、接続性、および近さ判断基準を使用して実行される。計算効率およびシステム信頼性を改善するために、誤差領域は、ユーザがジャンクションを通って移動する時に限って構築され得る。これは、他の道路リンクが、ユーザが移動しているリンクに近い時に、各エポックでの誤差領域の構築が、不正なリンク識別につながる可能性があるからである。
【０００９】
高度な地図支援アルゴリズムは、一般に、カルマンフィルタ、粒子フィルタ、ファジイ論理モデル、またはベイズ推論などのより高度な技法を指す。たとえば、カルマンフィルタは、GPSまたはGPS/DRのいずれかからのユーザ位置を伝搬させ、正射影された地図マッチングされた位置を使用することによって進行方向誤差(along track error)を減らすためにユーザ位置を再推定するのに使用され得る。同様の概念が、ユーザの位置を予測し、更新するために粒子フィルタと共に使用されることも可能である。さらに、ファジイ推論システムは、i)ユーザ位置と候補リンクとの間の距離およびii)プラットフォーム方向とリンク方向との間の差を用いてマッチングされた道路リンクを導出するのに使用され得る。さらなる例は、仮説および確率のセットを導出するために、現在のユーザの位置のバリデーション領域(validation region)内のすべての可能なリンクからの擬似測定(射影された位置および機首方向)と道路網のトポロジ分析とを使用することによる、地図支援のための多重仮説方式(MHT:Multiple Hypothesis Technique)の使用である。
【００１０】
様々な従来使用可能な地図支援アルゴリズムにかかわらず、幾何法、トポロジ法、確率法、または高度な方法のいずれであれ、そのすべてが、ユーザが、リンクされた点、線、および曲線として抽象化され得る道路のネットワークに拘束されるという仮定に基づくと考えられ得る。この仮定は、多くの屋外陸上車ナビゲーションアプリケーションにおいて十分に有効である可能性があるが、部屋、エレベータ、廊下、および同様の構造体が前述の点、線、および曲線として単純化され得ない複雑な屋内環境において、問題に出会う可能性がある。一部の研究者は、屋内測位の精度を改善するために建物フロアプランからの幾何制約(壁、アクセス不能区域)情報を有する粒子フィルタを使用するが、ユーザは、ランダムな形で部屋に出入りすることができ、単純な幾何拘束は、これらのシナリオにおいて望ましくない。さらに、そのような技法は、マルチフロア状況に対処しなかった。対照的に、従来のマルチフロア地図支援技法は、階段の位置を識別するために幾何情報だけに頼った。そのような手法は、特にナビゲーションソリューション内のドリフトが発生する時に、十分に信頼できるものではない可能性がある。さらに、既存の地図支援アルゴリズムのほとんどは、ユーザ運動状況情報を無視する。階段を上る/降りる、エスカレータに立つ/歩く、またはエレベータを使用するなどのユーザの運動状況は、屋内ナビゲーションアプリケーションにおいて候補のマッチングされた階変化リンクまたはオブジェクトを妥当性検査するのに有益である。ファジイ論理または粒子フィルタなどの高度なアルゴリズムは、改善された性能を提供する潜在能力を有するが、一般に、重い計算の重荷に起因して、リアルタイムアプリケーションまたは因果アプリケーションには適さない可能性がある。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】米国特許出願第11/774488号
【特許文献２】米国特許出願第12/106921号
【特許文献３】米国特許第7104129号
【発明の概要】
【発明が解決しようとする課題】
【００１２】
したがって、ポータブルデバイスの測位アプリケーションの精度および信頼性を高めるために、使用可能な地図情報、特に屋内地図を使用するナビゲーション技法を提供することが望ましい。シームレスな屋外および屋内の遷移ならびに複雑な複数階屋内環境内のユーザを信頼できる形でナビゲートするための複数階屋内地図の処理を伴って良好に動作する地図情報支援技法を提供することが、同様に望ましい。モーションセンサを使用するポータブルデバイスと共にリアルタイムで動作する地図情報支援技法を提供することが、さらに望ましい。さらに、サーバが、地図マッチングされた結果およびリアルタイムナビゲーションのための結果を生成するためにユーザのアップロードされた位置情報および運動情報を使用することを可能にすることによって、クライアントモードおよびサーバモードにおける効率的な動作のために適合された地図支援技法を提供することが、望ましい。以下の材料において説明されるように、本開示は、これらおよび他の必要を満足する。
【課題を解決するための手段】
【００１３】
下で詳細に説明されるように、本開示は、地図情報を使用してポータブルデバイスおよびプラットフォームのナビゲーションソリューションの質を高める方法であって、デバイスのモビリティは、プラットフォーム内で拘束されまたは拘束されず、デバイスは、任意の方向に傾けられ得る、方法を含む。この方法は、ポータブルデバイスのセンサデータを入手するステップと、センサデータに少なくとも部分的に基づいてナビゲーションソリューションを導出するステップと、ナビゲーションソリューションに少なくとも部分的に基づいてポータブルデバイスの推定された位置情報を提供するステップと、ユーザの現在位置を包含するエリアの地図情報を入手するステップと、推定された位置情報および地図情報に少なくとも部分的に基づいてポータブルデバイスの可能な位置に関する複数の仮説を生成するステップと、推定された位置情報および地図情報に少なくとも部分的に基づいて仮説を管理するステップと、ポータブルデバイスの推定された位置情報を更新するために管理される仮説を処理するステップと、更新された推定された位置情報を使用して質を高められたナビゲーションソリューションを提供するステップとを含むことができる。
【００１４】
本開示は、地図情報を使用して質を高められたナビゲーションソリューションを提供するポータブルデバイスをも含む。このデバイスは、ポータブルデバイスの運動を表すデータを出力するように構成された、ポータブルデバイスと一体化されたセンサアセンブリと、センサデータに少なくとも部分的に基づいてナビゲーションソリューションを導出するナビゲーションモジュールと、ナビゲーションソリューションに少なくとも部分的に基づいてポータブルデバイスの推定された位置情報を提供する位置エスティメータと、ユーザの現在位置を包含するエリアの地図情報を入手する地図ハンドラと、推定された位置情報および地図情報に少なくとも部分的に基づいてポータブルデバイスの可能な位置に関する複数の仮説を生成し、管理する仮説アナライザとを有する地図モジュールであって、地図モジュールは、ポータブルデバイスの推定された位置情報を更新するために管理される仮説を処理する、地図モジュールとを実施するように構成されたプロセッサとを含むことができる。
【００１５】
本開示は、地図情報を使用して質を高められたナビゲーションソリューションを提供するシステムをも含む。このシステムは、ポータブルデバイスの運動を表すデータを出力するように構成された、一体化されたセンサアセンブリと、センサデータに少なくとも部分的に基づいてナビゲーションソリューションを導出するナビゲーションモジュールを実施するように構成されたプロセッサとを有するポータブルデバイスを含むことができる。このシステムは、ポータブルデバイスからナビゲーションソリューションを受信するように構成されたリモート処理リソースをも含むことができる。リモート処理リソースは、ナビゲーションソリューションに少なくとも部分的に基づいてポータブルデバイスの推定された位置情報を提供する位置エスティメータと、ユーザの現在位置を包含するエリアの地図情報を入手する地図ハンドラと、推定された位置情報および地図情報に少なくとも部分的に基づいてポータブルデバイスの可能な位置に関する複数の仮説を生成し、管理する仮説アナライザとを有する地図モジュールであって、地図モジュールは、ポータブルデバイスの推定された位置情報を更新するために管理される仮説を処理する、地図モジュールを実施するように構成されたプロセッサを有することができ、リモート処理リソースは、更新された推定された位置情報をポータブルデバイスに送信する。
【図面の簡単な説明】
【００１６】
【図１】一実施形態による、ナビゲーションソリューションの質を高めるためのポータブルデバイスを示す概略図である。
【図２】一実施形態による、ナビゲーションソリューションの質を高めるための例示的なアーキテクチャを示す概略図である。
【図３】一実施形態による、ナビゲーションソリューションの質を高めるための別の例示的なアーキテクチャを示す概略図である。
【図４】一実施形態による、ナビゲーションソリューションの質を高めるためのルーチンを示す流れ図である。
【図５】一実施形態による、ナビゲーションソリューションの質を高めるためのシステムを示す概略図である。
【図６】一実施形態による、ナビゲーションソリューションの質を高める際に使用される地図モジュールを示す概略表現である。
【図７】一実施形態による、幾何地図内の地図エンティティクリッピングを示す概略表現である。
【図８】一実施形態による、グリッド地図を示す概略表現である。
【図９】一実施形態による、仮説を生成する際に使用される誤差楕円を示す概略表現である。
【図１０】一実施形態による、地図エンティティに射影された誤差楕円を示す概略表現である。
【図１１】一実施形態による、ドア情報を有する廊下シナリオにおける誤差楕円を示す概略表現である。
【図１２】一実施形態による、ドア情報を有しない廊下シナリオにおける誤差楕円を示す概略表現である。
【図１３】一実施形態による、階変化シナリオにおけるナビゲーションソリューションを比較する概略表現である。
【図１４】一実施形態による、機首方向発振除去の後のナビゲーションソリューションを比較する概略表現である。
【図１５】一実施形態による、直線の廊下壁に沿った複数の仮説を比較する概略表現である。
【図１６】一実施形態による、L字形の廊下壁に沿った複数の仮説を比較する概略表現である。
【図１７】一実施形態による、壁横切りシナリオにおける複数の仮説を比較する概略表現である。
【図１８】一実施形態による、手持ち使用モードを有する廊下シナリオにおける複数の仮説を比較する概略表現である。
【図１９】一実施形態による、手持ち使用モードを有する廊下シナリオにおけるナビゲーションソリューションを比較する概略表現である。
【図２０】一実施形態による、手持ち使用モードを有する部屋変化シナリオにおける複数の仮説を比較する概略表現である。
【図２１】一実施形態による、手持ち使用モードを有する部屋変化シナリオにおけるナビゲーションソリューションを比較する概略表現である。
【図２２】一実施形態による、ポケット使用モードを有する部屋変化シナリオにおける複数の仮説を比較する概略表現である。
【図２３】一実施形態による、ポケット使用モードを有する部屋変化シナリオにおけるナビゲーションシナリオを比較する概略表現である。
【図２４】一実施形態による、変化する使用モードを有する部屋変化シナリオにおける複数の仮説を比較する概略表現である。
【図２５】一実施形態による、変化する使用モードを有する部屋変化シナリオにおけるナビゲーションソリューションを比較する概略表現である。
【図２６】一実施形態による、手持ち使用モードを有する第1の階に関するエスカレータ階変化シナリオにおける複数の仮説を比較する概略表現である。
【図２７】一実施形態による、手持ち使用モードを有する第2の階に関するエスカレータ階変化シナリオにおける複数の仮説を比較する概略表現である。
【図２８】一実施形態による、手持ち使用モードを有する第1の階に関するエスカレータ階変化シナリオにおけるナビゲーションソリューションを比較する概略表現である。
【図２９】一実施形態による、手持ち使用モードを有する第2の階に関するエスカレータ階変化シナリオにおけるナビゲーションソリューションを比較する概略表現である。
【図３０】一実施形態による、手持ち使用モードを有する第1の階に関するエレベータ階変化シナリオにおける複数の仮説を比較する概略表現である。
【図３１】一実施形態による、手持ち使用モードを有する第2の階に関するエレベータ階変化シナリオにおける複数の仮説を比較する概略表現である。
【図３２】一実施形態による、手持ち使用モードを有する第1の階に関するエレベータ階変化シナリオにおけるナビゲーションソリューションを比較する概略表現である。
【図３３】一実施形態による、手持ち使用モードを有する第2の階に関するエレベータ階変化シナリオにおけるナビゲーションソリューションを比較する概略表現である。
【図３４】一実施形態による、手持ち使用モードを有する第1の階に関するエレベータ/エスカレータ階変化シナリオにおける複数の仮説を比較する概略表現である。
【図３５】一実施形態による、手持ち使用モードを有する第2の階に関するエレベータ/エスカレータ階変化シナリオにおける複数の仮説を比較する概略表現である。
【図３６】一実施形態による、手持ち使用モードを有する第1の階に関するエレベータ/エスカレータ階変化シナリオにおけるナビゲーションソリューションを比較する概略表現である。
【図３７】一実施形態による、手持ち使用モードを有する第2の階に関するエレベータ/エスカレータ階変化シナリオにおけるナビゲーションソリューションを比較する概略表現である。
【発明を実施するための形態】
【００１７】
最初に、本開示が、特に例示される材料、アーキテクチャ、ルーチン、方法、または構造が変化し得るので、これらに限定されないことを理解されたい。したがって、本明細書内で説明されるものに類似するか同等である複数のそのようなオプションが、本開示の実践または実施形態内で使用され得るが、好ましい材料および方法が、本明細書内で説明される。
【００１８】
また、本明細書内で使用される用語法が、本開示の特定の実施形態を説明するだけのためのものであって、限定的であることを意図されていないことを理解されたい。
【００１９】
添付図面に関連して下で示される詳細な説明は、本開示の例示的な実施形態の説明として意図され、本開示を実践することのできる最良の例示的な実施形態を表すことは意図されていない。この説明全体を通じて使用される用語「例示的な」は、「例、実例、または例示として働く」を意味し、必ずしも他の例示的な実施形態より好ましいまたは有利と解釈されるべきではない。詳細な説明は、本明細書の例示的な実施形態の完全な理解を提供するために特定の詳細を含む。当業者には、本明細書の例示的な実施形態が、これらの特定の詳細なしで実践され得ることは明白であろう。いくつかの場合に、本明細書内で提示される例示的な実施形態の新規性を不明瞭にすることを避けるために、周知の構造およびデバイスは、ブロック図の形で示される。
【００２０】
便宜および明瞭さのみのために、最上、最下、左、右、上、下、上に、超える、未満、下に、後、背後、および前などの方向用語が、添付図面またはチップ実施形態に関して使用される場合がある。これらおよび同様の方向用語は、いかなる形においても本開示の範囲を限定すると解釈されてはならない。
【００２１】
本明細書内および特許請求の範囲内では、ある要素が別の要素「に接続される」または「に結合される」として言及される時に、これは、他方の要素に直接に接続されまたは結合され得、あるいは、介在する要素が存在してもよいものと理解される。対照的に、ある要素が、別の要素「に直接に接続される」または「に直接に結合される」として言及される時には、介在する要素は存在しない。
【００２２】
以下の詳細な説明の一部は、コンピュータメモリ内のデータビットに対する動作の手順、論理ブロック、処理、および他の記号表現に関して提示される。これらの記述および表現は、データ処理技術の当業者によって、彼らの作業の実質を他の当業者に最も効果的に伝えるのに使用される手段である。本願において、手順、論理ブロック、プロセス、または類似物は、所望の結果につながるステップまたは命令の自己矛盾のないシーケンスと考えられる。ステップは、物理的な量の物理的な操作を必要とするステップである。必ずではないが通常、これらの量は、コンピュータシステム内で記憶され、転送され、組み合わされ、比較され、他の形で操作され得る電気信号または磁気信号の形をとる。
【００２３】
しかし、これらおよび同様の用語のすべてが、適当な物理的量に関連付けられなければならず、これらの量に適用される単に便利なラベルであることを念頭におかれたい。以下の議論から明白であるように、そうではないと特に述べられない限り、本明細書全体を通じて、「アクセス」、「受信」、「送出」、「使用」、「選択」、「判定」、「正規化」、「乗算」、「平均化」、「監視」、「比較」、「適用」、「更新」、「測定」、「導出」、または類似物などの用語を利用する議論が、コンピュータシステムのレジスタおよびメモリ内の物理(電子)量として表されるデータを操作し、コンピュータシステムメモリもしくはレジスタまたは他のそのような情報記憶デバイス、情報伝送デバイス、もしくは情報表示デバイス内の物理量として同様に表される他のデータに変換する、コンピュータシステムまたは同様の電子コンピューティングデバイスのアクションおよび処理を指すことを了解されたい。
【００２４】
本明細書内で説明される実施形態は、プログラムモジュールなどの非一時的プロセッサ可読媒体のなんらかの形に常駐し、1つまたは複数のコンピュータまたは他のデバイスによって実行されるプロセッサ実行可能命令の全般的な文脈内で議論され得る。一般に、プログラムモジュールは、特定のタスクを実行しまたは特定の抽象データ型を実施する、ルーチン、プログラム、オブジェクト、構成要素、データ構造などを含む。プログラムモジュールの機能性は、様々な実施形態において要求されるように、組み合わされまたは分散され得る。
【００２５】
図面内では、単一のブロックが、1つまたは複数の機能を実行するものとして説明される場合があるが、実際の実践において、そのブロックによって実行される1つまたは複数の機能が、単一の構成要素内でまたは複数の構成要素にまたがって実行され得、かつ/あるいは、ハードウェアを使用して、ソフトウェアを使用して、またはハードウェアとソフトウェアとの組合せを使用して実行され得る。ハードウェアとソフトウェアとのこの交換可能性を明瞭に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップは、上では全般的にその機能性に関して説明された。そのような機能性が、ハードウェアまたはソフトウェアのどちらとして実施されるのかは、特定の応用例とシステム全体に課せられる設計制約とに依存する。当業者は、各特定の応用例のために変化する形において説明される機能性を実施することができるが、そのような実装判断が、本開示の範囲からの逸脱と解釈されてはならない。また、例示的なワイヤレス通信デバイスは、プロセッサ、メモリ、および類似物などの周知の構成要素を含む、図示されたもの以外の構成要素を含むことができる。
【００２６】
本明細書内で説明される技法は、特定の形で実施されるものとして特に説明されない限り、ハードウェア、ソフトウェア、ファームウェア、またはその任意の組合せにおいて実施され得る。モジュールまたは構成要素として説明されるすべての特徴は、一体化された論理デバイス内で一緒にまたは別個であるが相互運用可能な論理デバイスとして別々に実施されることも可能である。ソフトウェアにおいて実施される場合に、技法は、実行された時に上で説明された方法のうちの1つまたは複数を実行する命令を含む非一時的プロセッサ可読記憶媒体によって少なくとも部分的に実現され得る。非一時的プロセッサ可読データ記憶媒体は、パッケージング材料を含むことのできるコンピュータプログラム製品の一部を形成することができる。
【００２７】
非一時的プロセッサ可読記憶媒体は、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気的消去可能プログラマブル読取専用メモリ(EEPROM)、フラッシュメモリ、他の既知の記憶媒体、および類似物を含むことができる。技法は、それに加えてまたはその代わりに、命令またはデータ構造の形においてコードを担持しまたは通信し、コンピュータまたは他のプロセッサによってアクセスされ、読み取られ、かつ/または実行されるプロセッサ可読通信媒体によって少なくとも部分的に実現され得る。たとえば、搬送波が、電子メールの送信および受信またはインターネットもしくはローカルエリアネットワーク(LAN)などのネットワークにアクセスするのに使用されるものなどのコンピュータ可読電子データを搬送するのに使用され得る。もちろん、多数の変更が、請求される主題の範囲または趣旨から逸脱することなく、この構成に対して行われ得る。
【００２８】
本明細書内で開示される実施形態に関連して説明される例示的な論理ブロック、モジュール、回路、および命令は、1つまたは複数のモーション処理ユニット(MPU:motion processing unit)、デジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、特定用途向け命令セットプロセッサ(ASIP)、フィールドプログラマブルゲートアレイ(FPGA)、または他の同等の集積回路網もしくはディスクリート論理回路網などの1つまたは複数のプロセッサによって実行され得る。用語「プロセッサ」は、本明細書内で使用される時に、前述の構造または本明細書内で説明される技法の実施態様に適する任意の他の構造のうちのいずれをも指すことができる。さらに、いくつかの態様において、本明細書内で説明される機能性は、本明細書内で説明されるように構成された専用のソフトウェアモジュールまたはハードウェアモジュール内で提供され得る。また、技法は、1つまたは複数の回路または論理要素内で完全に実施され得る。汎用プロセッサは、マイクロプロセッサとすることができるが、代替案では、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械とすることができる。プロセッサは、コンピューティングデバイスの組合せ、たとえば、MPUとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、MPUコアに関連する1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成としても実施され得る。
【００２９】
他の形で定義されない限り、本明細書内で使用されるすべての技術用語および科学用語は、本開示が関係する技術の当業者によって一般に理解されるものと同一の意味を有する。
【００３０】
最後に、本明細書および添付の特許請求の範囲において使用される時に、単数形「a」、「an」、および「the」は、文脈がそうではないことを明確に規定しない限り、複数の指示対象を含む。
【００３１】
本開示の技法は、地図情報を使用してポータブルデバイスのナビゲーションソリューションの質を高めることを対象とする。しばしば、そのようなポータブルデバイスは、デバイスを輸送するプラットフォームに関連付けられ得る。プラットフォームは、ユーザが歩き、走り、泳ぎ、または他の形で移動を経験する時に持ち運ばれるスマートフォンの例においてなど、ユーザとすることができる。プラットフォームは、ユーザおよびポータブルデバイスを運ぶ車両または船舶と考えられる場合もある。ポータブルデバイスは、一般に、プラットフォームの移動の方向に輸送されまたは運ばれ得るが、その方位は、拘束されないものとすることができる。スマートフォンの例に戻ると、スマートフォンは、ユーザの手に持たれ、様々な方位において使用され、あるいは、ポケット、ホルスタ、バッグの中、または他の形で持ち運ばれ得る。他の例において、ポータブルデバイスは、車両マウントを用いるなど、プラットフォームにストラップで固定される場合があり、またはストラップで固定されない場合がある。ストラップで固定されない時に、デバイスのモビリティは、プラットフォーム内で拘束されまたは拘束されないものとすることができ、その結果、デバイスがユーザまたはプラットフォームに関して任意の方位に傾けられ得る状況が存在する可能性がある。
【００３２】
下でさらに詳細に説明されるように、地図情報を使用してポータブルデバイスおよびプラットフォームのナビゲーションソリューションの質を高める技法は、ポータブルデバイスのセンサデータを入手することを含む。これらの態様を示すのを助けるために、代表的なポータブルデバイス100が、高水準の概略ブロックを用いて図1内に示されている。了解されるように、デバイス100は、ユーザによって空間内で移動され得、したがって空間内のその運動、位置、および/または方位が感知されるハンドヘルドデバイスなどのデバイスまたは装置として実施され得る。たとえば、そのようなハンドヘルドデバイスは、携帯電話機(たとえば、スマートフォン、セルラー電話機、ローカルネットワークを使用する電話機、または任意の他の電話受話器)、タブレット、携帯情報端末(PDA)、ビデオゲームプレイヤ、ビデオゲームコントローラ、ナビゲーションデバイス、ウェアラブルデバイス(たとえば、眼鏡、腕時計、ベルトクリップ)、フィットネストラッカ、仮想現実感機器もしくは増強現実感機器、モバイルインターネットデバイス(MID)、パーソナルナビゲーションデバイス(PND)、デジタルスチールカメラ、デジタルビデオカメラ、双眼鏡、望遠レンズ、ポータブル音楽プレイヤ、ポータブルビデオプレイヤ、もしくはポータブルメディアプレイヤ、リモートコントロール、または他のハンドヘルドデバイス、あるいはこれらのデバイスのうちの1つまたは複数の組合せとすることができる。
【００３３】
図示されているように、デバイス100は、デバイス100の機能に関連する、メモリ104内に記憶され得るソフトウェアプログラムを走行させるための1つまたは複数のマイクロプロセッサ、中央処理装置(CPU)、または他のプロセッサとすることのできるホストプロセッサ102を含む。ソフトウェアの複数の層が、ホストプロセッサ102と共に使用するための、電子メモリまたはハードディスク、光ディスク、その他などの他の記憶媒体などのコンピュータ記憶媒体の任意の組合せとすることのできるメモリ104内で提供され得る。たとえば、オペレーティングシステム層は、デバイス100がリアルタイムでシステムリソースを制御し、管理し、アプリケーションソフトウェア層および他の層の機能を使用可能にし、アプリケーションプログラムをデバイス100の他のソフトウェアおよび機能にインターフェースするために提供され得る。同様に、メニューナビゲーションソフトウェア、ゲーム、カメラ機能制御、ナビゲーションソフトウェア、テレフォニソフトウェアもしくはワイヤレスローカルエリアネットワーク(WLAN)ソフトウェアなどの通信ソフトウェア、または様々な他のソフトウェアおよび機能インターフェースのいずれかなどの異なるソフトウェアアプリケーションプログラムが、提供され得る。いくつかの実施形態において、複数の異なるアプリケーションが、単一のデバイス100上で提供され得、これらの実施形態の一部において、複数のアプリケーションは、同時に走行することができる。
【００３４】
デバイス100は、ここではセンサプロセッサ108、メモリ110、および慣性センサ112を特徴とする一体化されたモーション処理ユニット(MPU(商標))106の形で示された、少なくとも1つのセンサアセンブリを含む。メモリ110は、下で説明されるように、センサプロセッサ108の論理またはコントローラを使用すると同時に慣性センサ112または他のセンサによって出力された生データおよび/または運動データを記憶することによって、慣性センサ112および/または他のセンサによって出力されたデータを処理するためのアルゴリズム、ルーチン、または他の命令を記憶することができる。慣性センサ112は、空間内のデバイス100の運動を測定するための1つまたは複数のセンサとすることができる。構成に依存して、MPU 106は、デバイスの回転の1つもしくは複数の軸および/または加速度の1つもしくは複数の軸を測定する。一実施形態において、慣性センサ112は、回転モーションセンサまたは直線モーションセンサを含むことができる。たとえば、回転モーションセンサは、1つまたは複数の直交する軸に沿った角速度を測定するためのジャイロスコープとすることができ、直線モーションセンサは、1つまたは複数の直交する軸に沿った直線加速度を測定するための加速度計とすることができる。一態様において、センサプロセッサ108またはデバイス100の他の処理リソースによって実行されるセンサフュージョン動作が、運動の6軸判定を提供するために慣性センサ112からのデータを組み合わせるように、3つのジャイロスコープおよび3つの加速度計が使用され得る。望まれる通りに、慣性センサ112は、単一のパッケージ内でMPU 106と一体化される微細電気機械システム(MEMS)を使用して実施され得る。ホストプロセッサ102およびMPU 106の適切な構成に関する例示的な詳細は、参照によってその全体が組み込まれている、同時係属の、本願の譲受人の所有する2007年7月6日に出願した米国特許出願第11/774488号および2008年4月11日に出願した米国特許出願第12/106921号に見出すことができる。デバイス100内のMPU 106の適切な実施態様は、米国カリフォルニア州サニーベールのInvenSense, Inc.から入手可能である。
【００３５】
その代わりにまたはそれに加えて、デバイス100は、外部センサ114の形においてセンサアセンブリを実施することができる。外部センサは、ナビゲーションソリューションを導出する際の使用のためのデータを出力する、加速度計および/またはジャイロスコープなどの、上で説明された1つまたは複数のセンサを表すことができる。本明細書内で使用される時に、「外部」は、MPU 106に一体化されず、デバイス100に対してリモートまたはローカルとすることのできるセンサを意味する。また、その代わりにまたはそれに加えて、MPU 106は、デバイス100の周囲の環境に関する1つまたは複数の態様を測定するように構成された補助センサ116からデータを受け取ることができる。たとえば、気圧計および/または磁気計が、慣性センサ112を使用して行われる位置判定を洗練するのに使用され得る。一実施形態において、補助センサ116は、運動の9軸判定を提供するために、3つの直交する軸に沿って測定し、ジャイロスコープおよび加速度計慣性センサデータとフュージョンされるデータを出力する磁気計を含むことができる。別の実施形態において、補助センサ116は、運動の10軸判定を提供するために、他のセンサデータとフュージョンされ得る高度判定を提供するために気圧計をも含むことができる。MEMSベースである1つまたは複数のセンサの文脈において説明されるが、本開示の技法は、任意のセンサ設計またはセンサ実施態様に適用され得る。
【００３６】
図示された実施形態において、ホストプロセッサ102、メモリ104、MPU 106およびデバイス100の他の構成要素は、peripheral component interconnect express(PCIe)バス、universal serial bus(USB)、universal asynchronous receiver/transmitter(UART)シリアルバス、適切なadvanced microcontroller bus architecture(AMBA)インターフェース、Inter-Integrated Circuit(I2C)バス、serial digital input output(SDIO)バス、serial peripheral interface(SPI)、または他の同等物などの任意の適切なバスまたはインターフェースとすることのできるバス118を介して結合され得る。アーキテクチャに依存して、異なるバス構成が、望み通りに使用され得る。たとえば、ホストプロセッサ102とメモリ104との間の専用バスを使用することによるなど、追加のバスが、デバイス100の様々な構成要素を結合するのに使用され得る。
【００３７】
一態様において、ポータブルデバイス100のナビゲーションソリューションを導出するのに使用される本開示の様々な動作は、ホストプロセッサ102によって読み取られ、実行され得る、メモリ104内に記憶された適切な命令のセットとしてナビゲーションモジュール120を介して実施され得る。ナビゲーションモジュール120は、任意の所望の度合のロケーションアウェアネス能力を提供するために、参照ベースの戦略、自己完結型の戦略、または戦略の任意の組合せを使用することができる。たとえば、ナビゲーションモジュール120は、ナビゲーションソリューションを導出するために、慣性センサ112および/または外部センサ114からなどのセンサデータを利用する慣性ナビゲーション技法を使用することができる。そのような技法は、推測航法または類似物を含むことができ、任意のロール角、ピッチ角、および方位(機首方向)角などの値を含むデバイス100の方位を判定することができる。ナビゲーションモジュール120は、ナビゲーションソリューションを導出する時に、全地球測位システム(GPS)、全地球的航法衛星システム(GLONASS)、Galileo、および/または北斗(Beidou)を限定なしに含む全地球航法衛星システム(GNSS)受信器、ならびにWiFi(商標)測位、セルラー塔測位、Bluetooth(登録商標)測位ビーコン、または他の同様の方法など、絶対ナビゲーション情報122のソースを使用することもできる。ナビゲーションモジュール120は、信号三辺測量を使用する位置判定を提供するためにワイヤレス通信プロトコルからの情報を使用するようにも構成され得る。Universal Terrestrial Radio Access(UTRA)、符号分割多元接続(CDMA)ネットワーク、Global System for Mobile Communications(GSM(登録商標))、米国電気電子技術者協会(IEEE) 802.16(WiMAX)、Long Term Evolution(LTE)、IEEE 802.11(WiFi(商標))、その他などのセルラーベース技術およびワイヤレスローカルエリアネットワーク(WLAN)技術を含む任意の適切なプロトコルが、使用され得る。さらに、ナビゲーションモジュール120は、歩く、運転する、走る、階段を上る/降りる、エレベータに乗る、エスカレータ上で歩く/立つ、および他の同様の運動パターンを限定なしに含むことができるユーザの運動パターンを示す運動モードを判定するようにも構成され得る。
【００３８】
同様に、地図モジュール124も、ホストプロセッサ102によって読み取られ、実行され得る、メモリ104内に記憶された適切な命令のセットとして実施され得る。下でさらに詳細に説明されるように、地図モジュール124は、位置エスティメータ126、仮説アナライザ128、および地図ハンドラ130を含むことができる。位置エスティメータ126は、ポータブルデバイス100の位置情報を推定するために、ナビゲーションモジュール120によって提供されるナビゲーションソリューションを使用することができる。推定された位置情報は、仮説アナライザ128からの情報を使用して更新されることも可能であり、仮説アナライザ128は、推定された位置と地図ハンドラ130からの情報とを使用してポータブルデバイス100の可能な位置に関する複数の仮説を生成し、評価し、組み合わせるように構成され得る。対応して、地図ハンドラ130は、ポータブルデバイス100の現在位置を包含するエリアに関する外部情報にアクセスし、仮説アナライザ128によって使用可能な形において情報を提示するように構成され得る。適当な重み付けおよび平均化を使用して組み合わせること、選択された仮説を選ぶこと、仮説のグループを選び、適当な重み付けおよび平均化を使用してこれらだけを組み合わせること、または他の適切な動作など、生成された仮説を処理することによって、仮説アナライザ128からの出力は、推定された位置情報を更新するために位置エスティメータによって使用され得る。推定された位置情報および/または更新された推定された位置情報は、位置情報に加えて、速度および/または機首方向情報ならびにデバイス100の運動または位置に関する任意の他の情報を含むことができ、地図エンティティ情報をも含むことができる。更新された推定された位置情報は、その後、質を高められたナビゲーションソリューションとして使用され得、あるいは、質を高められたナビゲーションソリューションを導出する際の使用のためにナビゲーションモジュール120にフィードバックされ得る。いくつかの実施形態において、更新された推定された位置情報からの値およびナビゲーションソリューションからの値が、質を高められたナビゲーションソリューション内で使用され得る。
【００３９】
他の実施形態は、ホストプロセッサ102とMPU 106とデバイス100によって提供される他のリソースとの間の処理の任意の所望の分割を特徴とすることができ、あるいは、ソフトウェア、ハードウェア、およびファームウェアの任意の所望の組合せを使用して実施され得る。その代わりにまたはそれに加えて、地図モジュール124に関連する動作のいずれもが、リモートに実行され得、結果は、ナビゲーションソリューションの質を高めるポータブルデバイス100に返される。リモートまたはローカルのどちらで実行されるにせよ、更新された推定された位置情報は、同時使用のためのポータブルデバイス100の位置を示す位置情報の判定を表す。いくつかの送信、いくつかの可能なバッファリング、および処理時間が要求される可能性があるが、結果は、少なくとも近リアルタイムであり(多少の可能な待ち時間があり得る)、推定された位置情報が更新される時までに使用可能な任意の情報を使用することができる。したがって、ソフトウェアの複数の層が、望み通りに使用され、メモリ104、メモリ110、または他の適切な位置の任意の組合せ内に記憶され得る。たとえば、運動アルゴリズム層は、モーションセンサおよび他のセンサから提供される生のセンサデータに関する低水準処理を提供する運動アルゴリズムを提供することができる。センサデバイスドライバ層は、デバイス100のハードウェアセンサへのソフトウェアインターフェースを提供することができる。さらに、適切なアプリケーションプログラムインターフェース(API)が、たとえば所望のセンサ処理タスクを送信するために、ホストプロセッサ102とMPU 106との間での通信を容易にするために提供され得る。したがって、ソフトウェア内で実施される諸態様は、アプリケーションソフトウェア、ファームウェア、常駐ソフトウェア、マイクロコードなどを含むことができるがこれに限定されず、ホストプロセッサ102、センサプロセッサ108、デバイス100の専用プロセッサもしくは任意の他の処理リソース、またはリモート処理リソースなどのコンピュータまたは任意の命令実行システムによる使用またはそれらに関連する使用のためにプログラムコードを提供するコンピュータ使用可能媒体またはコンピュータ可読媒体からアクセス可能なコンピュータプログラム製品の形をとることができ
る。
【００４０】
例示的実施形態を示すために、ポータブルデバイス100に質を高められたナビゲーションソリューションを提供するための第1のアーキテクチャ200が、図2内に概略的に示されている。慣性センサ112、外部センサ114、および/または補助センサ116などからのセンサデータは、入力202としてナビゲーションモジュール120に供給され得る。122などからの絶対ナビゲーション情報も、統合されたナビゲーションソリューションを生成するために使用可能である場合またはその時に、供給され得る。次に、地図モジュール124は、ナビゲーションソリューションからの情報を使用し、この情報は、質を高められたナビゲーションソリューションを出力するために、本明細書で説明される地図情報と一緒に、位置推定値、速度推定値、および/または高度推定値を含むことができ、ナビゲーションモジュール120によって判定されるユーザの運動モードをも含むことができる。オプションで、示されているように、質を高められたナビゲーションソリューションは、後続のナビゲーションソリューションを導出する際の使用のためにナビゲーションモジュール120にフィードバックされ得る。ナビゲーションモジュール120へのフィードバックは、地図情報と共に質を高められた位置情報、速度情報、および/または機首方向情報を含むことができ、デバイスの位置を地図からの参照物体または参照特徴に相関させる現在の地図エンティティ情報をも含むことができる。フィードバック情報は、統合されたナビゲーションソリューションの性能をさらに改善するのに使用され得る。
【００４１】
質を高められたナビゲーションソリューションをポータブルデバイス100に提供するための第2のアーキテクチャ300が、図3内に概略的に示されている。やはり、慣性センサ112、外部センサ114、および/または補助センサ116などからのセンサデータが、入力202としてナビゲーションモジュール120に供給され得る。同様に、122などからの絶対ナビゲーション情報も、統合されたナビゲーションソリューションを生成するために使用可能である場合またはその時に、供給され得る。次に、地図モジュール124は、図示されているようにナビゲーションモジュール120にフィードバックされる更新された推定された位置を出力するために、地図情報と一緒にナビゲーションソリューションから上で説明された入力を受け取る。やはり、ナビゲーションモジュール120へのフィードバックは、地図情報と共に質を高められた位置情報、速度情報、および/または機首方向情報を含むことができ、現在の地図エンティティ情報をも含むことができる。したがって、ナビゲーションモジュール120は、この実施形態において質を高められたナビゲーションソリューションを出力する。フィードバック情報は、後続の導出において統合されたナビゲーションソリューションの性能をさらに改善するのにも使用され得る。
【００４２】
本開示の技法を示すのを助けるために、代表的なルーチンが、図4内に示されている。400から開始して、センサデータが、ポータブルデバイスの慣性センサ112および/または外部センサ114などから入手され得る。402において、センサデータを使用して、ナビゲーションモジュール120が、ナビゲーションソリューションを導出することができる。404において、ポータブルデバイス100の位置情報が、推定され得、406において、周囲のエリアの地図情報が入手され得る。408において、複数の仮説が、推定された位置情報および地図情報から生成され得る。次に、410において、生成された仮説が、本明細書内で説明されるように管理され、412において、推定された位置情報を更新するために処理される。その後、414において、質を高められたナビゲーションソリューションが、提供され得る。
【００４３】
一態様において、更新された推定された位置情報は、それ自体が質を高められたナビゲーションソリューションとして使用され得る。更新された推定された位置情報は、質を高められたナビゲーションソリューションを導出するためにナビゲーションソリューションに供給され得る。質を高められたナビゲーションソリューションの導出は、ナビゲーションモジュールへの測定値更新として、更新された推定された位置情報を利用することができる。別のオプションは、質を高められたナビゲーションソリューションが、ナビゲーションソリューションからの値と更新された位置情報からの値とを含むことができることである。
【００４４】
一態様において、絶対ナビゲーション情報が、ポータブルデバイスに関して入手され得、ナビゲーションソリューションが、絶対ナビゲーション情報に基づいて導出され得る。絶対ナビゲーション情報は、(i)全地球航法衛星システム(GNSS)、(ii)セルベースの測位、(iii)WiFiベースの測位、または(iv)他のワイヤレスベースの測位のうちの任意の1つまたは任意の組合せから入手され得る。
【００４５】
一態様において、ポータブルデバイスの可能な位置に関する複数の仮説の生成は、以前のエポックからの更新された位置情報にさらに基づくものとすることができる。
【００４６】
一態様において、地図情報は、前処理され得る。地図情報を前処理するステップは、地図エンティティを抽出するステップを含むことができる。地図情報を前処理するステップは、少なくとも1つの前景地図エンティティを背景エンティティからクリッピングするステップをも含むことができる。たとえば、背景エンティティをクリッピングするステップは、トラバース可能エリアを画定することができる。地図情報を前処理するステップは、相対的に複雑なポリゴンとして地図エンティティを表すステップと、ポリゴンを複数の相対的により単純なポリゴンに分解するステップとをもさらに含むことができる。さらに、地図情報を前処理するステップは、接続されたリンクおよびノードのグリッドを生成するステップを含むことができる。
【００４７】
一態様において、推定された位置情報は、ポータブルデバイスの潜在的な位置を表す誤差領域であることができる。仮説のうちの少なくとも1つは、地図情報上に誤差領域を射影することによって生成され得る。複数の仮説は、複数の地図エンティティとのオーバーラップが発生する時に地図情報に誤差領域を射影することによって生成され得る。地図情報は、ポリゴンベースの幾何地図および/またはグリッド地図を含むことができる。
【００４８】
一態様において、地図情報は、グリッド地図を含むことができ、推定された位置情報は、判定されたユーザ軌跡とグリッド地図の幾何特徴および/またはトポロジ特徴との間の相関に少なくとも部分的に基づくものとすることができる。
【００４９】
一態様において、仮説を管理するステップは、仮説を追加するステップ、仮説を除去するステップ、および仮説を組み合わせるステップのうちの少なくとも1つを含むことができる。
【００５０】
一態様において、仮説を管理するステップは、意思決定論理を適用するステップを含むことができる。意思決定論理は、壁横切りイベントおよび/または階変化イベントのために構成され得る。
【００５１】
一態様において、ナビゲーションソリューションは、ユーザの運動モードとすることができる。推定された位置情報は、運動モードに少なくとも部分的に基づくものとすることができ、仮説は、運動モードに少なくとも部分的に基づいて管理され得、かつ/または階変化イベントは、運動モードに少なくとも部分的に基づくものとすることができる。
【００５２】
一態様において、質を高められたナビゲーションソリューションは、推定された位置情報に関連する地図エンティティに少なくとも部分的に基づいて検出されるユーザの運動モードとすることができる。
【００５３】
一態様において、ポータブルデバイスの位置情報は、予測のみカルマンフィルタ(prediction only Kalman filter)、近等速カルマンフィルタ(near constant velocity Kalman filter)、予測のみ粒子フィルタ、および近等速粒子フィルタのうちの少なくとも1つを使用して推定され得る。
【００５４】
一態様において、地図情報を入手するステップ、複数の仮説を生成するステップ、仮説を管理するステップ、およびポータブルデバイスの推定された位置情報を更新するために管理される仮説を処理するステップのうちの少なくとも1つは、リモートに実行され得る。
【００５５】
上で説明されるように、ポータブルデバイス100などのポータブルデバイスは、地図情報を使用して質を高められたナビゲーションソリューションを提供することができる。
【００５６】
一態様において、デバイスは、ポータブルデバイスの絶対ナビゲーション情報のソースを含むことができ、絶対ナビゲーション情報は、ナビゲーションソリューションを支援することができる。絶対ナビゲーション情報は、(i)全地球航法衛星システム(GNSS)、(ii)セルベースの測位、(iii)WiFiベースの測位、または(iv)他のワイヤレスベースの測位のうちの任意の1つまたは任意の組合せから入手され得る。
【００５７】
一態様において、地図モジュールは、質を高められたナビゲーションソリューションを提供し、更新された推定された位置情報は、質を高められたナビゲーションソリューションとすることができる。
【００５８】
一態様において、更新された推定された位置情報は、ナビゲーションモジュールに供給され得、ナビゲーションモジュールは、更新された推定された位置情報を使用してナビゲーションソリューションの質を高めることができる。ナビゲーションソリューションの質を高めることは、ナビゲーションモジュールへの測定値更新として更新された推定された位置情報を利用することができる。
【００５９】
一態様において、地図モジュールは、質を高められたナビゲーションソリューションを提供し、質を高められたナビゲーションソリューションは、更新された推定された位置情報からの値およびナビゲーションソリューションからの値を含む。
【００６０】
一態様において、センサアセンブリは、加速度計およびジャイロスコープを含むことができる。センサアセンブリは、微細電気機械システム(MEMS)として実施された慣性センサとすることができる。
【００６１】
いくつかの実施形態において、地図モジュール124によって実行されるものとして説明された機能は、リモートに実行され得る。例示を助けるために、適切なナビゲーションシステム500の1つのアーキテクチャが、図5内に概略的に示されている。図示されているように、ポータブルデバイス502は、統合されたナビゲーションソリューションを導出するために、ポータブルデバイス502のセンサデータと、オプションで絶対ナビゲーション情報とを使用するためにナビゲーションモジュール120を実施することができる。位置推定値、速度推定値、および/または高度推定値を含むことができ、ユーザの運動モードをも含むことができるナビゲーションソリューションは、サーバ504などの適切なリモート処理リソースに送信され得る。その後、サーバ504は、ポータブルデバイス502の推定された位置情報を更新するために、上で説明された機能のいずれかまたはすべてを含む地図モジュール124を実施することができる。その後、サーバ504は、任意の適切な使用のために更新された推定された位置情報をポータブルデバイス502に送信する。ポータブルデバイス502にフィードバックされる更新された推定された位置情報は、1つまたは複数の地図エンティティおよび/または機首方向情報に関する情報を限定なしに含む、任意の適切な情報を含むことができる。
【００６２】
一態様では、デバイスは、質を高められたナビゲーションソリューションを提供し、更新された推定された位置情報は、質を高められたナビゲーションソリューションとすることができる。
【００６３】
一態様では、更新された推定された位置情報は、ナビゲーションモジュールに供給され得、ナビゲーションモジュールは、更新された推定された位置情報を使用してナビゲーションソリューションの質を高めることができる。ナビゲーションソリューションの質を高めることは、ナビゲーションモジュールへの測定値更新として更新された推定された位置情報を利用することができる。
【００６４】
一態様では、デバイスは、さらに、質を高められたナビゲーションソリューションを提供することができ、質を高められたナビゲーションソリューションは、更新された推定された位置情報からの値およびナビゲーションソリューションからの値を含む。
【００６５】
例
上で説明されるように、本開示の技法は、地図情報を使用して質を高められたナビゲーションソリューションを提供することを含む。地図モジュール124とナビゲーションモジュール120との間の適切な関係を示す例示的なアーキテクチャ600が、図6内に概略的に示されている。地図モジュール124の機能は、ポータブルデバイス100によって実施され得、あるいは、サーバなどのリモート処理リソースによって提供され得る。ナビゲーションモジュール120は、連続的な測位情報および連続的な運動モード情報を生成するために、絶対ナビゲーション情報の任意のソースからの位置更新、速度更新、および/または機首方向更新と一緒に、複数のモーションセンサ、たとえば加速度計、ジャイロスコープ、磁気計、および気圧計からの生の測定値を統合するのにフィルタを使用することができる。この情報は、図示されているようにナビゲーションモジュール120の位置エスティメータ126に入力として供給される。位置エスティメータは、改善された地図マッチングされた測位推定値を生成するために、ナビゲーションモジュール120からの情報ならびに仮説アナライザ128からの結果を利用することができる。仮説アナライザ128は、次のエポックの仮説を作成し、除去し、または組み合わせるためにこれらの位置情報を使用する。位置エスティメータ126は、すべての可能な地図マッチングされた候補を維持し、それらに対応する測位推定値を生成する。位置エスティメータ126は、位置推定値を入手するために、カルマンフィルタ、アンセンテッドカルマンフィルタ(unscented Kalman filter)、粒子フィルタ、および類似物を限定なしに含む任意のフィルタまたはフィルタの組合せを使用することができる。異なるシステムおよび測定モデル、たとえば予測のみ、近等速、その他も、応用例に従って使用され得る。これらのモデルは、ポータブルデバイス100の位置を伝搬させ、測定値更新としてナビゲーションソリューション出力を使用するために、異なる技法を使用することができる。代表的なシステムおよび測定モデルが、以下の材料内で説明されるが、他の変形形態が使用され得る。位置エスティメータ126は、仮説の組合せである速度情報および/または機首方向情報をも含むことのできる更新された位置を出力することができる。た
とえば、組合せは、加重平均とすることができる。仮説を組み合わせる際に使用される重みは、経験的モデルまたはトポロジ的モデルに従って適応的にチューニングされ得る。たとえば、重み付けは、仮説の個数および/または位置推定値の不確実性に基づいて調整され得る。仮説の組合せからの更新された位置は、地図支援情報を表し、質を高められたナビゲーションソリューションを提供するために地図モジュール124および/またはナビゲーションモジュール120によって使用され得る。現在の地図エンティティも、実施態様に依存して、質を高められたナビゲーションソリューションを導出する際の使用のためにナビゲーションモジュール120にフィードバックされ得る。ナビゲーションモジュール120へのフィードバックは、ジャイロスコープのバイアス推定値およびナビゲーションフィルタ内のデバイスとプラットフォームとの間のミスアライメント角度を改善するのにも使用され得る。さらに、ユーザの現在の地図エンティティ情報は、ナビゲーションソリューションにおける運動検出を改善するのにも有益である。たとえば、ユーザが階段にいることが判定され得る場合に、対応するセンサデータのパターンが、その運動モードに関連付けられ得る。
【００６６】
地図情報は、当初に、オンライン地図サービスプロバイダなどの任意の適切なソースから入手され得る。必要に応じて、地図情報は、地図モジュール124による使用に適する形に前処理され得る。たとえば、地図情報は、内部地図データ構造に変換され得、この内部地図データ構造は、望まれる場合に、これをもう一度ダウンロードし、処理することのオーバーヘッドを伴わない地図モジュール124による将来の使用のために、ローカルストレージ内に保存され得る。したがって、地図情報の前処理は、i)様々な地図データプロバイダからの地図情報を統一されたデータ構造に変換すること、ii)地図支援アルゴリズムに適する必要な地図データ構造を準備すること、および/またはiii)メモリ104などのローカルストレージ内に地図情報を記憶することという機能を含むことができる。
【００６７】
オンライン屋内/屋外地図サービスプロバイダは、彼らの地図データベースにアクセスするためにウェブアプリケーションプログラミングインターフェース(API)を提供する場合がある。したがって、地図プロバイダからの対応するAPIが、ユーザの現在位置を包含するエリアの地図情報を入手するのに使用され得る。対応する地図情報を有する可能性がある現場の特に特筆すべき例は、オフィスビルディング、病院、モール、会議場、展示会、小売店、および類似物などの屋内環境を含む。この地図情報は、地図モジュール124によるその使用を容易にするために前処理され得る。たとえば、情報は、APIを使用して本開示の技法のために使用される必要な地図データを抽出するために復号され、Geographic JavaScript(登録商標) Objective Notation(GeoJson)フォーマットなどの統一されたフォーマットに変換され得るが、xmlファイル、バイナリファイル、その他が使用され得る。その後、変換された地図データは、将来の使用のためにローカルストレージ内に保存され得る。復号および変換は、外部リソースによって実行され、地図モジュール124による使用のために任意の適切な形で配送され得る。一般に、前処理動作が現場ごとに実行される回数を最小にすることが望ましい。たとえば、地図情報は、所与の現場に関して1回、適当にフォーマットされ、その現場内のナビゲーションソリューションの質を高めるための仮説の生成に使用されるために任意の個数のポータブルデバイスに分配され得る。しかし、新しい情報が使用可能になる時または現場に対する変化が発生する時には、別の前処理動作が実行され得る。
【００６８】
さらに、地図情報の前処理は、地図情報をトラバース可能領域とトラバース不能領域とに分離することを含むことができる。たとえば、廊下は、通常の屋内環境内のトラバース可能領域の重要なクラスを表す。したがって、廊下情報が、ポリゴンベースの幾何地図として地図情報を表すために使用可能ではない場合には、廊下クリッピング機能が、背景エンティティから廊下形状情報を抽出するために実行され得る。多くの従来の地図サービスプロバイダは、屋内地図支援アルゴリズムにおいて重要な廊下形状情報を提供しない。したがって、現場に存在する可能性がある廊下の形状を入手するための適切な技法は、背景エンティティからすべての他のエンティティを抽出することを含むことができる。背景エンティティは、所与のビルディングまたはビルディングもしくは他の現場の階を確立する境界輪郭とすることができる。前景エンティティは、店、エレベータ、エスカレータ、および境界輪郭内の他の障害物などのすべての物体を含む。本明細書で使用されるクリッピングプロセスは、特定の「クリッピング」ウィンドウの外部にある部分を2次元幾何形状のセットから切り取るプロセスを指す。これは、対象ポリゴン(背景エンティティ)をクリッピングポリゴン(背景エンティティの上にある他の前景エンティティ)と交差させることによって達成され得る。ポリゴンは、頂点のシーケンスによって定義され得、任意の曲線は、線分の適当な集合として表現され得る。
【００６９】
背景からすべての他のエンティティを反復してクリッピングした後に、廊下ポリゴンが入手され得る。適切なクリッピングアルゴリズム、たとえばバッティ(Vatti)クリッピングアルゴリズムが、穴を有する相対的に複雑なポリゴンに対処するように構成され得る。クリッピングアルゴリズムの結果の図が、代表的なポリゴンベースの幾何屋内地図に関して図7内に示されている。地図の一部の背景エンティティ700が、破線によって表されている。ポリゴン702(他のポリゴンは、明瞭さを保つためにラベルを付けられていない)などの細線を有するポリゴンとして表される前景エンティティが、背景エンティティ700の上でクリッピングされる。太線によって表される結果のポリゴン704は、廊下の形状を与える。結果の廊下形状は、複雑なポリゴンによって表現され得る。本明細書内で使用される複雑なポリゴンは、内部に1つまたは複数の穴を有するポリゴン(自己交差なし)である。
【００７０】
下で説明されるように、階変化シナリオに関連付けられ得るエレベータ、エスカレータ、階段、または機首方向もしくは他の位置情報の仮定を可能にすることができるコンベヤなど、一部の地図エンティティは、固有の位置情報を提供することができる。背景地図エンティティへの入口および出口ならびに前景エンティティへのドアまたは他の入口/出口の位置も、使用され得る。さらに、入口/出口の方向も、仮説を生成する時に使用され得る。複数階現場内では、階変化シナリオが存在する可能性がある時を判定するのを助けるために、各階の高さが、高さの変化を示すセンサ情報と共に使用され得る。
【００７１】
さらに、前処理は、地図モジュール124によって使用される時の計算効率を改善するために、地図エンティティの1つまたは複数の形状を小さいより単純なポリゴンに分解することを含むことができる。台形分解が、相対的に複雑なポリゴンをより単純な台形に分解するのに使用され得、凸分解が、相対的に複雑なポリゴンをより単純な凸ポリゴンに分割するのに使用され得る。最適分解アルゴリズムが、分解プロセスの後に減らされた個数のポリゴンを生成するために適用され得る。分解方法のうちの任意の1つまたは組合せが使用され得る。
【００７２】
地図情報の前処理は、接続されたリンクおよびノードを用いて屋内地図のトラバース可能エリアを抽象化することをも含むことができる。接続されたリンクおよびノードは、地図の幾何情報とトポロジ情報との両方を含むことができる。したがって、地図モジュール124は、更新された推定された位置情報の生成を改善するためにトポロジ情報から利益を得ることができる。本明細書で使用される時に、接続されたリンクおよびノードから構築された地図は、グリッド地図と呼ばれる場合がある。たとえばおそらくはいくつかの他の処理と共にボロノイ図を使用することによるなど、任意の適切な技法が、グリッド地図を生成するのに使用され得る。グリッド地図を生成するための別の例は、おそらくは地図エンティティタイプのうちのいくつかと一緒に、地図からのトラバース可能エリアおよびトラバース不能エリアのジオメトリを直接に使用することによるものである。例のグリッド地図が、図8内に示されている。図示されているように、ドット800などのドットが、地図ノードを表すのに使用され得る。破線は、ドット800の間のリンク802などの接続されたリンクを表し、地図エンティティは、804などの中実ポリゴンによって表される。ノードは、それに最も近い3つ以上の地図エンティティへの等しい距離を有する地図上の点である。ポリゴンベースの幾何地図に関して、グリッド地図は、外部処理リソースによってオフラインで前処理され、更新された推定された位置情報が判定されるたびに再処理する必要を伴わない地図モジュール124による後続使用のために地図ファイル内に保存され得る。
【００７３】
ポリゴンベースの幾何地図とグリッド地図との両方が、地図モジュール124によって提供される更新された推定された位置情報の信頼性および精度を改善するために適用され得る。たとえば、小売店地図は、構造化されたエリアと構造化されていないエリアとにたやすく分割され得る。空きスペース、分離されたブース、および類似物などの構造化されていないエリアにおいて、上で説明された幾何ベースの技法が適用され得る。その代わりにまたはそれに加えて、整列された棚またはブースなどの構造化されたエリアにおいて、地図モジュール124は、グリッド地図によって表される幾何情報およびトポロジ情報を使用することができる。
【００７４】
したがって、地図モジュール124の地図ハンドラ130は、上で説明されるように元の地図情報と一緒にクリッピングされ分解された地図情報を含むことができる、以前に記憶された、前処理された地図情報をロードするように機能することができる。地図ハンドラ130は、ポータブルデバイス100の位置仮説の生成を容易にする形において既にフォーマットされている地図情報にアクセスすることができ、必要に応じてその情報を取り出すことができる。前処理された地図情報から、地図ハンドラ130は、地図内のすべてのエンティティの地図射影パラメータ、幾何形状、アイデンティティ(ID)、およびタイプ情報を含むことができる内部地図データ構造を初期化する。射影パラメータ、たとえば6パラメータアフィン変換が、地図内の座標と緯度および経度における座標との間で変換するのに使用され得る。エンティティタイプは、背景、ユニット、エスカレータ、エレベータ、階段、その他などの特定のエンティティの機能を記述する。形状とタイプ情報との両方が、仮説アナライザ128によって使用され得る。地図ハンドラ130は、効率的な検索アルゴリズムが、地図内の関心を持たれている点または関心を持たれている範囲を照会するために適用され得るようにするために、空間データベース内で地図幾何情報を編成することもできる。たとえば、R木構造が、地図エンティティの効率的で高速な検索のために使用され得る。了解されるように、R木検索アルゴリズムは、地図内の所与の点を突き止め、対応する地図エンティティへのポインタを返すことができる。
【００７５】
外部処理リソースによって実行されるという文脈において説明されるが、地図情報の前処理に関連する機能のいずれかまたはすべてが、望み通りに地図ハンドラ130によって実行され得る。
【００７６】
図6によって示されるように、位置エスティメータ126と地図ハンドラ130との両方からの出力は、仮説アナライザ128に供給される。特筆すべきことに、位置エスティメータ126は、誤差領域を定義するのに使用される位置および分散推定値という形において推定された位置情報を供給することができる。仮説アナライザ128は、ユーザが移動している可能なエンティティを識別するために、誤差領域を処理された地図上に重畳しまたは射影する。仮説アナライザ128は、下で説明されるものを含む任意の適切な意思決定論理に基づいて仮説を維持し、作成し、除去し、組み合わせる。仮説アナライザ128は、トポロジ情報および経験的情報に基づいてすべての現在使用可能な仮説の重みを割り当てることもできる。これらの重みは、推定された位置を更新するために加重平均を生成することによるなど、仮説を組み合わせるか除去するためならびに仮説を組み合わせるために使用され得る。
【００７７】
仮説アナライザ128は、注記されるように仮説を維持し、作成し、除去し、組み合わせる。仮説は、位置、速度、機首方向、運動モード、位置分散、占有される地図エンティティ、および類似物など、任意の所望の対応する属性と共にユーザの可能な位置を指す。様々な仮説に適用される意思決定論理は、以下の例において示されるようにユーザ動作シナリオに基づいて選択され得る。
【００７８】
仮説管理のための意思決定論理の多くの実施態様は、誤差領域という概念を使用する。了解されるように、誤差領域は、位置エスティメータ126によって判定されたポータブルデバイス100の可能な位置の不確実性を表す。望まれる通りに、誤差領域は、長方形、円、楕円、任意のポリゴン、または任意の他の形状を定義することができる。カルマンフィルタが、位置エスティメータ126と共に使用される場合には、「誤差楕円」が使用され得る。誤差楕円のパラメータは、半長径長(a)および半短径長(b)を含み、方位(α)は、カルマンフィルタの共分散行列および事前定義の信頼レベルから導出され得る。たとえば、95%信頼レベルが、位置不確実性を穏当にカバーするのに使用され得るが、所望の性能特性に依存して、他の値が使用され得る。対応して、誤差楕円パラメータは、式(1)によって与えられ得る。
【００７９】
【数１】
0006783751.tif 000002
【００８０】
ここで、λ1およびλ2は、共分散行列の固有値を表し、v1は、最大の固有値を有する共分散行列の固有ベクトルを表す。計算負荷を減らすために、誤差楕円は、楕円の縁に沿って均等に分散された、32頂点などの複数の頂点を有するポリゴンによって近似され得る。
【００８１】
粒子フィルタが使用される場合には、位置推定値のサンプルは、誤差領域を近似する。しかし、誤差楕円または他の領域が、それでも、仮説を組み合わせ、除去するために仮説アナライザ128内で要求される。したがって、共分散行列が、位置サンプルデータから導出され得る。その後、誤差楕円のパラメータが、カルマンフィルタモード時と同様に計算され得る。例示のために、図9は、95%信頼レベルを使用する粒子フィルタから導出された誤差楕円の例を示す。「+」記号は、近似された誤差楕円900の頂点を示す。
【００８２】
誤差領域の文脈を参照すると、様々な意思決定論理手法が、仮説を管理するために適用され得る。第1の例は、壁を横切るイベントを有するシナリオに対応する。各仮説は、ポータブルデバイス100に関連する現在の地図エンティティを示すためにそれ自体の占有フィールドを有することができる。図10内に示されているように、位置エスティメータ126は、候補仮説を入手するために地図レイアウト上に重畳された誤差領域を使用する。誤差領域と現在占有されているエンティティ以外の地図エンティティとの間のオーバーラップするエリアが検出されない場合には、仮説アナライザ128は、さらなる動作を実行する必要がない。しかし、誤差領域が複数の地図エンティティと交差する時には、交差されるエンティティの属性が、交差テーブル内に挿入される。オーバーラップ検出は、誤差楕円の近似ポリゴンから頂点の位置を反復してチェックすることによって満足され得る。空間検索アルゴリズム、たとえばR木検索アルゴリズムおよびポイントインポリゴン(point-in-polygon)アルゴリズムが、誤差楕円の頂点ごとに地図エンティティを見つけるために適用され得る。すべての頂点が、現在の仮説の占有と同一の地図エンティティ上にある場合には、オーバーラップは宣言されない。そうではない場合には、新しい仮説候補が、交差リストに追加される。各仮説が、それ自体の交差リストを維持することに留意されたい。現在の仮説が、親仮説と呼ばれる場合があり、すべての候補仮説が、子仮説と呼ばれる場合がある。
【００８３】
交差面積が、誤差楕円の総面積の約10%など、適切なしきい値を超える場合には、新しい仮説候補は、さらなる分析を受けることができ、そうでない場合には、交差リストから除去される。その後、仮説アナライザ128は、現在の仮説の占有とは異なる交差リスト内のすべての仮説を分析することができる。新しい候補仮説の初期位置は、位置エスティメータ126からの現在の位置推定値によって与えられる。しかし、この点が、オーバーラップするポリゴンの範囲内にない場合には、オーバーラップするポリゴンの重心モーメント(centroidal moment)が、その代わりに新しい仮説の初期位置として使用され得る。
【００８４】
その後、壁横切り検出が実行され得る。壁横切りイベントの論理は、部屋ドア情報が使用可能であるかどうかに基づく。ドア情報が使用可能である場合には、アルゴリズムは、図11内に概略的に示されているように、候補仮説の初期位置とドアの位置との間の距離を評価することができる。距離が、2メートルなどの事前定義のしきい値以内である場合には、壁横切りイベントが宣言され得る。その後、部屋ドアの中心位置が、新しい候補仮説の初期位置として使用され得る。次に、新しい仮説の初期点が、他の現在使用可能な仮説の範囲内にあるかどうかを判定するために、妥当性検査チェックが実行され得る。後続の動作は、特定の実施態様に依存して調整され得る。たとえば、粒子フィルタを使用する時には、新しい仮説が、新しい地図エンティティ内に存在するすべての粒子を用いて作成され、仮説リストに追加され得る。新たに作成された仮説の位置を除くすべての他の属性は、親仮説から継承され得る。たとえば、カルマンフィルタを使用する時には、新しい仮説の作成および/または除去は実行されず、親仮説の位置フィールドおよび占有フィールドが更新され得る。
【００８５】
部屋ドア情報が使用可能ではない場合には、誤差楕円の交差辺と関心を持たれている地図エンティティとの間の角度とユーザの機首方向とが、図12内に概略的に示されているように、ユーザが新しいエンティティ内に入り得る可能性を示すことができる。現在の仮説の機首方向が、部屋の縁にほぼ平行である場合には、この交差が、歪曲されたナビゲーションソリューションを生じる可能性がある。この場合に、オーバーラップする面積が、約45%などの適切な値を超える場合に、交差点から約0.5メートルなどの事前定義の量のオフセットを有する新しい仮説が作成され、親仮説は削除される。その一方で、オーバーラップする面積が事前定義の量未満である場合(かつ、オプションで、ユーザのヨーダイナミクス(yaw dynamics)が小さい場合)に、交差辺の方位が、親仮説の機首方向を更新するのに使用され得る。親仮説の機首方向が、壁の縁にほぼ垂直である場合には、可能な壁横切りイベントが宣言される。対応して、部屋ドア情報が使用可能である時に類似するプロセスが、実行され得る。
【００８６】
仮説アナライザ128は、仮説の占有の遷移をもチェックする。ユーザが、廊下に自由に出入りできることが仮定される。しかし、ユニット間横切りは、店の間にドアを有することがまれであるという事実を反映するために、禁止されまたは最小の重みを割り当てられる。さらに、仮説アナライザ128は、この遷移モデルまたは経験的モデルに基づいて仮説の重みを割り当てることもできる。
【００８７】
仮説を管理するための別の例示的な判断論理が、階変化イベントが発生する時に適用され得る。ユーザが、階段を上るか降り、エレベータまたはエスカレータに乗る場合に、ナビゲーションモジュール120は、現在のユーザ運動モード/コンテキスト(エレベータ、階段、歩行、エスカレータ上での歩行、またはエスカレータ上に立つことなど)を識別するために、対応する運動モードおよび/またはコンテキストインジケータを検出するためにルーチンを実行することができる。階変化イベントが検出される時に、仮説アナライザ128は、検出されたモードに従って十分に近い、階段、エレベータ、またはエスカレータの入口など、地図情報内の地図エンティティを検索するために現在のナビゲーションソリューションを使用することができる。たとえば、エレベータモードがナビゲーションソリューションから検出される場合に、仮説アナライザ128は、地図上の近くのエレベータ入口を検索することができる。入口が、現在のユーザ位置からある距離以内にある場合には、仮説アナライザ128は、対応する判断論理を適用するために通常状態から階変化状態に遷移することができる。距離しきい値は、非限定的な例として10mとすることができる。さらに、選択される値は、ナビゲーションソリューションの精度に従ってチューニングされ得る。
【００８８】
階変化イベントの検出に関連して、仮説アナライザ128は、その動作を調整するために通常状態から階変化状態に遷移することができる。望まれる場合に、妥当性検査プロセスが、階変化誤認警報を回避するために実行され得る。このプロセス中に、仮説アナライザ128は、当初に通常状態に似た技法を使用してユーザ位置を伝搬させることができる。妥当性検査プロセスは、状態の変化を検証するためのメトリックとして、現在のエポックと階変化状態に入る時のエポックとの間の高さの差を使用する。ある時間以内の、非限定的な例として2.0mなどのしきい値を超える高さの差の検出の場合に、階変化状態への遷移が妥当性検査され得る。そうではない場合には、検出は、誤認警報として扱われ、通常状態への復帰をもたらすことができる。
【００８９】
階変化に対する成功の妥当性検査を仮定すると、仮説アナライザ128は、すべての仮説を除去し、識別された階変化進入情報を使用して新しい仮説を作成することができる。仮説の初期位置および/または機首方向は、対応する地図エンティティの入口位置によって確立され得る。その後、新しい階が高さの差の符号に従って以前の階より上または下として識別されるように、新しい階に対応する地図情報が使用され得る。その後、仮説アナライザ128の状態は、最終化する状態に遷移することができる。妥当性検査プロセスが失敗する場合には、状態は通常状態に戻る。
【００９０】
最終化する状態において、仮説アナライザ128は、ナビゲーションモジュール120によって提供される運動モードを監視することができる。歩行状況が検出される場合に、仮説アナライザ128は、図13に概略的に示されているように、現在の仮説の位置を階変化エンティティの出口位置にリセットし、通常状態に戻ることができる。仮説1300は、ナビゲーションソリューションによって提供される位置推定値に対応することができ、仮説1302は、エレベータ1304を出るという仮定に基づく更新された位置推定値を反映することができる。そうではない場合には、仮説アナライザ128は、ユーザ位置を伝搬させ続けることができる。このアルゴリズムが、階変化エンティティレイアウトを出た後にその階変化エンティティレイアウトに従って仮説の機首方向をリセットしないことに留意されたい。これは、ユーザ機首方向が運動モードの検出遅れに起因して既に変更されている可能性があるからである。図13内に示されているように、エレベータのドアは、右側(0°)にあるが、ユーザ機首方向は、エレベータを出た後に約-90°である。
【００９１】
前に議論された運動モードおよび/またはコンテキストアウェアネスシナリオ(ユーザが階段を上りまたは下り、エレベータまたはエスカレータに乗る時など)に加えて、コンベヤ(動く歩道)上で歩くまたは立つ、ワイヤレスビーコンまたは他のワイヤレスラジオ周波数(RF)タグの近くを歩く、および類似物などのいくつかの他の運動モードおよび/またはコンテキストが、仮説アナライザ128の動作を調整するのに使用され得る。システムが、そのような運動モードまたはコンテキストアウェアネスシナリオを自律的に検出する時に、本明細書内で提示される地図情報技法は、これらを地図エンティティに関係付けることができる。これから利益を得る形すなわち、(i)ナビゲーションモジュール120が、地図モジュール124によって供給される地図エンティティに関する運動モード/コンテキストを検出することができ、地図エンティティの位置へのナビゲーションソリューション(特に位置およびオプションで機首方向)の質を高めることができ、(ii)ナビゲーションモジュール120が、暗示される運動モードに関連するセンサデータパターンの認識を支援するのに使用され得る運動モードおよび/またはコンテキストを暗示する地図モジュール124によって供給される地図エンティティを受け取ることができるなどが、存在する。
【００９２】
たとえば、ナビゲーションモジュール120が、ユーザがコンベヤ上で歩いている/立っていることを検出する時に、仮説アナライザ128は、地図情報内で近くのコンベヤを検索することができる。近くのコンベヤが見つかる時に、新しい仮説が、初期位置としてコンベヤの入口、初期機首方向としてコンベヤの方位を用いて作成され、すべての他の仮説を除去することができる。ユーザがコンベヤの外へ出る時に、階変化イベントに関して適用されるプロセスに類似するプロセスが実行され得る。このコンテキストベースの2D位置調整は、PDRからの累積誤差を減らすことができ、したがってナビゲーションモジュール120の性能を改善する。その一方で、仮説の誤差領域が、コンベヤ、エレベータ、またはエスカレータなどの特定の地図エンティティの上にある時には、特定の検出の感度を高め、成功率を改善するために、この情報が、ナビゲーションモジュール120が対応する運動モードを検出する前にナビゲーションモジュール120に供給され得る。
【００９３】
同様のプロセスが、ユーザが駐車場で識別される時に、歩行/運転運動モード検出シナリオに適用され得る。たとえば、仮説を立てられる位置が、駐車場の上にある場合に、この情報は、運転/歩行検出モジュールの感度を改善するためにナビゲーションシステムに供給され得る。
【００９４】
別の例のシナリオは、ワイヤレスビーコンまたはRFタグからの更新を含む。店の入口または情報デスクが、ワイヤレスビーコンまたはRFタグを備える場合に、ポータブルデバイスは、十分に近い時にこれらのワイヤレスタグから情報を受信することができる。この場合に、店の入口または情報デスクの位置が、仮説の位置を更新するのに使用され得る。
【００９５】
上で注記されるように、位置エスティメータ126は、地図情報によって支援される改善された測位推定値を生成するために、ナビゲーションモジュール120からの出力および仮説アナライザ128からの結果を利用することができる。仮説アナライザ128は、次のエポックの仮説を作成し、除去し、または組み合わせるためにこれらの位置推定値を使用する。また、位置エスティメータ126は、ナビゲーションモジュール120へのフィードバックを生成する。フィードバックは、すべての仮説および地図エンティティ情報からの位置または機首方向の加重平均を含むことができる。位置および機首方向フィードバックは、ジャイロバイアス推定およびミスアライメント角推定を改善し、したがって測位の精度を向上させることができる。地図エンティティ情報は、上で言及されるように、成功率を改善し、ナビゲーションソリューション内の運動検出の遅れを減少させることができる。位置および機首方向の標準偏差も、フィードバックとしてナビゲーションモジュール120に供給され得る。標準偏差は、経験的モデルまたはトポロジモデルに従って適応的にチューニングされ得る。たとえば、標準偏差は、仮説の個数または位置推定値の不確実性に基づいて調整され得る。
【００９６】
ナビゲーションモジュール120によって供給されるナビゲーションソリューションからの入力機首方向は、プラットフォーム機首方向であると期待され得、デバイス機首方向と推定されたミスアライメント角との間の差から導出され得る。いくつかの状況において、ナビゲーションソリューションから導出されるこのプラットフォーム機首方向は、ポータブルデバイスのユースケースに依存して、周期的な機首方向発振を示す場合がある。ユースケースは、ポータブルデバイスとユーザとの間の対話のタイプの特徴付けであり、ユーザが、デバイスを持ち運んでいる、揺れる腕でデバイスを持っているすなわち「ぶら下げている」、話す時に「耳元に」位置決めしている、ナビゲーション動作またはテキストメッセージ送受信動作においてデータを入力しまたは見ている、ポケットまたは他のコンテナもしくはホルダ内でデバイスを持ち運んでいるのかどうか、およびユーザに関するデバイスの方位に影響するデバイスの他の使用を含むことができる。たとえば、ポケットまたはぶら下げのユースケースは、周期的な運動成分を有する可能性がある。プラットフォーム機首方向の周期的発振を除去するために、低域フィルタが適用され得る。たとえば、0.5Hzのカットオフ周波数を有する5次低域フィルタが使用され得る。機首方向発振除去の例示的な結果が、図14内に概略的に示されており、ナビゲーションソリューションのみの結果が、トレース1400によって示され、低域フィルタリングの後の質を高められたナビゲーションソリューションが、トレース1402によって示されている。
【００９７】
主に幾何地図情報の文脈において説明されるが、上の技法は、その代わりにまたはそれに加えて、グリッド地図として表された地図情報と共に使用され得る。たとえば、ユーザ位置は、位置対曲線マッチングまたは曲線対曲線マッチングを使用することによって、接続されたリンクおよびノードに射影され得る。2つの技法は、実施および保守を簡単にするために組み合わされ得る。グリッド地図は、ユーザの軌跡とグリッド地図のトポロジ特徴との間の相関に基づく加重トポロジアルゴリズムを使用することによってより信頼できる仮説を導出するために仮説アナライザ128を援助するのにも使用され得る。任意の適切な1つまたは複数の条件テストが、フィールドテストデータの統計分析から入手され得る事前定義のしきい値を満足しないセグメントを除去するために適用され得る。幾何技法と同様に、曖昧さが存在する時には、複数の仮説が、ユーザ運動不確実性を考慮に入れるために生成され得る。たとえば、ユーザ運動不確実性は、累積されたステップ長誤差、ユーザ機首方向誤差、その他によって引き起こされる可能性がある。したがって、複数の仮説が、時間のある期間の間に並列に走行している場合がある。低い重み付けを有する、ありそうにない仮説は、除去され得る。さらに、グリッド地図を用いると、改善された仮説重み付け方式が、仮説のトポロジヒストリを分析することによって使用され得る。改善された不確実性推定値が、すべての仮説の情報の加重平均を使用して計算され得る。したがって、より正確なユーザ位置不確実性推定値が、入手され得る。
【００９８】
様々なフィルタ、運動モデル、および/または測定モデルが、本開示の技法に従って仮説の位置を更新するのに使用され得る。下で説明される4つの例示的な方法は、予測のみカルマンフィルタ、近等速カルマンフィルタ、予測のみ粒子フィルタ、および近等速粒子フィルタを使用するが、他のフィルタおよび/またはモデルが、望み通りに使用され得る。
【００９９】
予測のみカルマンフィルタを使用する第1の例として、ナビゲーションモジュール120によって供給される統合されたナビゲーションソリューションからの出力は、すべての現在使用可能な仮説のシステム状態を予測するのに使用され得る。3つの状態が、地図座標における位置誤差(δx,δy)と機首方向誤差δΨとを含む、仮説ごとのシステム状態として使用され得る。さらに、dXnは、第nの仮説のシステム状態を表し、位置誤差と機首方向誤差との両方が、式(2)によって示されるようにランダムウォークとしてモデル化され得る。
(2)  dXn=[δx  δy  δΨ]T
【０１００】
したがって、システムモデルの1つの形が、式(3)に示されているように導出され得る。
【０１０１】
【数２】
0006783751.tif 000003
【０１０２】
ここで、
Ψは、ユーザ機首方向であり、
Lは、ナビゲーションソリューションからの隣接するエポック内の2つの位置の間の変位を計算することによって入手され得るステップ長であり、
wLは、ステップ長の駆動雑音(driving noise)であり、
wΨは、機首方向誤差の駆動雑音である。
【０１０３】
位置およびステップ長が、地図座標フレーム内で計算され得ることに留意されたい。緯度および経度における位置は、アフィン変換を使用して地図フレームに変換され得る。変換行列は、インポートされた地図データから入手され得る6つのパラメータを有する。測定更新は、予測のみの方法において使用される必要がない。
【０１０４】
したがって、システム状態の伝搬は、式(4)によって与えられ得る。
【０１０５】
【数３】
0006783751.tif 000004
【０１０６】
ここで、kおよびk+1は、2つの連続するエポックを表し、「〜」は、予測された値を表し、「^」は、最良の推定された値を表し、ΔΨk+1は、現在のエポックにおける統合されたソリューションからの機首方向増分を表す。
【０１０７】
近等速仮説モデルを使用する第2の例として、ナビゲーションモジュール120からの出力は、すべての使用可能な仮説のシステム状態を更新するための擬似測定値として使用される。このシステムは、速度ランダムウォークとしてモデル化され得る。第nの仮説のシステム状態は、予測のみモデルにおけるシステム状態と同一である。速度誤差は、ランダムウォーク、ランダム定数、または1次ガウス-マルコフ過程としてモデル化され得る。速度ランダムウォークを使用する例示的なシステムモデルは、次のように式(5)によって与えられる。
【０１０８】
【数４】
0006783751.tif 000005
【０１０９】
ここで、
【０１１０】
【数５】
0006783751.tif 000006
【０１１１】
は、地図座標内のx方向における速度誤差であり、
【０１１２】
【数６】
0006783751.tif 000007
【０１１３】
は、地図座標内のy方向における速度誤差であり、
wvxは、x軸速度誤差の駆動雑音であり、
wvyは、y軸速度誤差の駆動雑音である。
【０１１４】
対応して、このシステムの伝搬は、式(6)によって与えられ得る。
【０１１５】
【数７】
0006783751.tif 000008
【０１１６】
了解されるように、予測された位置は、最後のエポックからの最良の推定された位置によって入手され得、予測された速度は、前のエポックからの定数すなわち「定速」モデルとすることができる。
【０１１７】
ナビゲーションモジュール120からの位置が、測定値更新として使用され得るので、測定モデルは、式(7)として表され得る。
【０１１８】
【数８】
0006783751.tif 000009
【０１１９】
ここで、
δZは、測定環閉合差であり、
【０１２０】
【数９】
0006783751.tif 000010
【０１２１】
および
【０１２２】
【数１０】
0006783751.tif 000011
【０１２３】
は、伝搬される位置であり、
xTPNおよびyTPNは、ナビゲーションソリューションからの射影された位置更新であり、
vxおよびvyは、測定雑音である。
【０１２４】
測定雑音が、位置の精度およびナビゲーションソリューションからのユーザのダイナミクスに基づいて適応的にチューニングされ得ることに留意されたい。たとえば、ユーザが、直線内で歩いている(小さいヨーダイナミクス)時には、測定雑音は、システムがより予測に頼るようにするためにより高くチューニングされ得、向きを変えている時には、測定雑音は、測定値により多くの重みを配するためにより低くチューニングされ得る。
【０１２５】
予測のみ粒子フィルタを使用する第3の例は、関心を持たれている状態の事後密度関数(pdf)を近似するためにサンプル状態または粒子の集合
【０１２６】
【数１１】
0006783751.tif 000012
【０１２７】
を使用することができる。ここで、各
【０１２８】
【数１２】
0006783751.tif 000013
【０１２９】
は、1からMすなわち粒子フィルタのサイズまでの範囲にわたるインデックスiに関する具体的な状態サンプルである。したがって、例は、非ガウシアンマルチモデルpdfに関して使用され得る。その多重仮説の性質は、これを地図支援を有する屋内ナビゲーションにも適切なものにする。カルマンフィルタと同様に、粒子フィルタも、予測状態および更新状態を有する。予測のみ粒子フィルタは、予測状態を使用することだけを必要とする。
【０１３０】
予測のみ粒子フィルタの状態は、ユーザの位置および機首方向とすることができる。初期化プロセス中に、M個のランダムサンプルが、ナビゲーションソリューションの位置および分散に従って引き出される。予測は、式(8)によって示されるシステムモデルによって実行される。
【０１３１】
【数１３】
0006783751.tif 000014
【０１３２】
ここで、vLは、
【０１３３】
【数１４】
0006783751.tif 000015
【０１３４】
の分散を有するガウス雑音としてモデル化され得るステップ長の駆動雑音であり、
vΨは、やはり
【０１３５】
【数１５】
0006783751.tif 000016
【０１３６】
の分散を有するガウス雑音としてモデル化され得るユーザ機首方向の駆動雑音である。
【０１３７】
新しい仮説が仮説アナライザ128によって作成される時に、新しいサンプルが、作成される新しい仮説の不確実性に従って現在のサンプル集合に追加されることに留意されたい。同様に、特定の仮説が除去される時に、それに対応するサンプルが、サンプル集合から除去され得る。
【０１３８】
近等速粒子フィルタを使用する第4の例は、近等速多重仮説カルマンフィルタに類似する概念を使用することができ、システム状態は、ユーザ位置および速度に対応する。例示的なシステムモデルは、式(9)によって与えられる。
【０１３９】
【数１６】
0006783751.tif 000017
【０１４０】
ここで、速度の駆動雑音は、
【０１４１】
【数１７】
0006783751.tif 000018
【０１４２】
の分散を有するガウス雑音としてモデル化され得る。測定式は、近等速多重仮説カルマンフィルタの測定式と同一とすることができる。
【０１４３】
本開示の技法の利益の例示を助けるために、フィールドテストが、地図情報を用いてナビゲーションソリューションの質を高めることの性能を評価するために実行された。フィールドテスト中には、スマートフォンが、手持ちモード、ポケットモード、ぶら下げモード、および複数のモードの間の切替を含む様々なユースケースにおいて使用された。テスト軌跡は、廊下のみのシナリオ、部屋の出入りのシナリオ、および階変化シナリオを含む。
【０１４４】
図15内に示されているように、例示的な多重仮説廊下のみのシナリオの結果は、モール内の店の壁に沿って生成され、ナビゲーションソリューション単独の結果が、トレース1500によって示され、候補仮説が、トレース1502および1504によって示されている。ユーザ機首方向と交差辺との間の相対的に小さい角度に起因して、壁横切りイベントは宣言されなかった。仮説の両方が、壁に沿って移動する。次に、図16は、ユーザが「L」字形の壁に沿って歩く時の仮説の伝搬を示し、ナビゲーションソリューション単独の結果が、トレース1600によって示され、候補仮説が、トレース1602および1604によって示されている。新しい仮説が、地図マッチングされるソリューションにおいてオフセットを伴って正しく作成された。壁横切りイベントの例示的な結果が、図17内に示されており、ナビゲーションソリューション単独の結果が、トレース1700によって示され、質を高められたナビゲーションソリューションが、トレース1702によって示されている。上で説明されるように、壁横切りイベント中に、仮説作成または仮説除去は、一実施形態において実行されないものとすることができる。親仮説だけが、その位置および地図エンティティフィールドを更新する。別の実施形態において、親仮説が除去され得、新しい仮説が、親から継承された他の属性と一緒に新しい位置および地図エンティティフィールドを用いて作成され得ることに留意されたい。
【０１４５】
次のシナリオにおいて、ユーザは、手持ちユースケースにおいてスマートフォンを持ってモールの廊下を歩きまわった。トレース1800としてのナビゲーションモジュール120からの位置出力とトレース1802としての地図モジュール124の位置エスティメータ126からの位置出力との両方が、図18内に示されている。「s」は、出発点を表し、「e」は、終点を表す。累積されたジャイロドリフトのゆえに、ナビゲーションモジュール120によって提供される初期ナビゲーションソリューションは、歪曲された出力を生成する。多重仮説が、モール廊下に沿って並ぶ店の壁に沿って生成されたことが示されている。ユーザ機首方向と交差辺との間の相対的に小さい角度に起因して、壁横切りイベントは宣言されなかった。地図モジュール124によって供給される地図情報支援機首方向は、壁の方位を反映する。廊下のみのシナリオに関する、独立型の統合されたナビゲーション、フィードバックなしの地図支援ソリューション、およびフィードバックありの地図支援ソリューションからの結果が、図19内に示されており、トレース1900は、ナビゲーションソリューションのみの結果を示し、トレース1902は、ナビゲーションモジュール120へのフィードバックなしの質を高められたナビゲーションソリューションを示し、トレース1904は、ナビゲーションモジュール120へのフィードバックありの質を高められたナビゲーションソリューションを示す。この場合において、フィードバックを有する地図支援ソリューションとフィードバックなしの地図支援ソリューションとの両方が、ナビゲーションモジュール120からの独立型の統合されたナビゲーションソリューションより性能が優れている。
【０１４６】
フィールドテストの次のシナリオにおいて、ユーザは、異なるユースケースにおいて操作される電話機を伴って部屋に入り、出た。図20および図21に、電話機が手でもたれた状態の結果を示す。位置エスティメータ126からの多重仮説出力が、図20内に示され、ナビゲーションソリューション単独の結果が、トレース2000によって示され、更新された推定された位置情報が、トレース2002および2004によって示されている。ナビゲーションモジュール120のナビゲーションソリューションからの機首方向における誤差は、地図モジュール124の地図支援アルゴリズムを用いて正しく補償された。さらに、このアルゴリズムは、壁横切りイベントをも成功裡に検出する。独立型、フィードバックありの地図支援ナビゲーション、およびフィードバックなしの地図支援ナビゲーションの結果が、図21内に示されており、トレース2100は、ナビゲーションソリューションのみの結果を示し、トレース2102は、ナビゲーションモジュール120へのフィードバックなしの質を高められたナビゲーションソリューションを示し、トレース2104は、ナビゲーションモジュール120へのフィードバックありの質を高められたナビゲーションソリューションを示す。
【０１４７】
図22および図23は、ポケット内の電話機を伴う、軌跡からの結果を示す。図22内では、トレース2200が、ナビゲーションソリューションのみの結果を示し、トレース2202が、質を高められたナビゲーションソリューションを示し、図23内では、トレース2300が、ナビゲーションソリューションのみの結果を示し、トレース2302が、ナビゲーションモジュール120への更新された推定された位置情報のフィードバックなしの質を高められたナビゲーションソリューションを示し、トレース2304が、フィードバックありの質を高められたナビゲーションソリューションを示す。図示されているように、本開示の技法は、壁横切りの成功裡の検出と共に、独立型の統合されたシステムと比較して改善されたナビゲーション性能を提供する。図23は、フィードバックありの地図支援ソリューションを使用することによって、よりよい性能が提供され得ることをも示す。
【０１４８】
同様の分析が、テスト中に異なるユースケースにおいて操作される電話機を伴うより複雑なシナリオに適用された。電話機は、始めに手持ちモードにおいて操作され、その後、テストルートの1/3においてぶら下げモードに変換され、最後に手持ちモードに戻された。図24および図25は、この軌跡からの結果を提示し、トレース2400は、ナビゲーションソリューションのみの結果を示し、トレース2402は、質を高められたナビゲーションソリューションを示し、トレース2500は、ナビゲーションソリューションのみの結果を示し、トレース2502は、フィードバックなしの質を高められたナビゲーションソリューションを示し、トレース2504は、フィードバックありの質を高められたナビゲーションソリューションを示す。この場合において、フィードバックありの地図支援ナビゲーションソリューションは、図25内に示されたフィードバックなしのシステムより性能が優れている。
【０１４９】
フィールドテストの別のシナリオは、ユーザがモールの2つの階の間で切り替えるためにエレベータまたはエスカレータに乗ることを含んだ。条件の第1のセットを表す図26、図27、図28、および図29は、手持ちモードで操作される電話機を有するユーザが、上および下に進むためにエスカレータに乗った時の結果を示す。図26内では、トレース2600が、ナビゲーションソリューションのみの結果を示し、トレース2602が、質を高められたナビゲーションソリューションを示す。図27内では、トレース2700が、ナビゲーションソリューションのみの結果を示し、トレース2702が、質を高められたナビゲーションソリューショントレースを示す。図28内では、トレース2800が、ナビゲーションソリューションのみの結果を示し、トレース2802が、ナビゲーションモジュール120への更新された推定された位置情報のフィードバックなしの質を高められたナビゲーションソリューションを示し、トレース2804が、フィードバックありの質を高められたナビゲーションソリューションを示す。図29内では、トレース2900が、ナビゲーションソリューションのみの結果を示し、トレース2902が、ナビゲーションモジュール120への更新された推定された位置情報のフィードバックなしの質を高められたナビゲーションソリューションを示し、トレース2904が、フィードバックありの質を高められたナビゲーションソリューションを示す。これらの図内に示されているように、階変化イベントの検出の後に、すべての現在使用可能な仮説が、除去され、正しい機首方向を有するエスカレータ付近の新しい仮説が、作成された。階変化イベントの後の機首方向は、軌跡全体を破壊することなく成功裡に維持された。
【０１５０】
次に、図30、図31、図32、および図33は、上階変化および下階変化においてユーザがエレベータに乗った時の結果を示す。図30内では、トレース3000が、ナビゲーションソリューションのみの結果を示し、トレース3002が、質を高められたナビゲーションソリューションを示す。図31内では、トレース3100が、ナビゲーションソリューションのみの結果を示し、トレース3102が、質を高められたナビゲーションソリューショントレースを示す。図32内では、トレース3200が、ナビゲーションソリューションのみの結果を示し、トレース3202が、ナビゲーションモジュール120への更新された推定された位置情報のフィードバックなしの質を高められたナビゲーションソリューションを示し、トレース3204が、フィードバックありの質を高められたナビゲーションソリューションを示す。図33内では、トレース3300が、ナビゲーションソリューションのみの結果を示し、トレース3302が、ナビゲーションモジュール120への更新された推定された位置情報のフィードバックなしの質を高められたナビゲーションソリューションを示し、トレース3304が、フィードバックありの質を高められたナビゲーションソリューションを示す。
【０１５１】
最後に、図34、図35、図36、および図37は、ユーザが、階を変更する時に上りエスカレータに乗り、下りエレベータに乗った時の結果を示す。図34内では、トレース3400が、ナビゲーションソリューションのみの結果を示し、トレース3402が、質を高められたナビゲーションソリューションを示す。図35内では、トレース3500が、ナビゲーションソリューションのみの結果を示し、トレース3502が、質を高められたナビゲーションソリューショントレースを示す。図36内では、トレース3600が、ナビゲーションソリューションのみの結果を示し、トレース3602が、ナビゲーションモジュール120への更新された推定された位置情報のフィードバックなしの質を高められたナビゲーションソリューションを示し、トレース3604が、フィードバックありの質を高められたナビゲーションソリューションを示す。図37内では、トレース3700が、ナビゲーションソリューションのみの結果を示し、トレース3702が、ナビゲーションモジュール120への更新された推定された位置情報のフィードバックなしの質を高められたナビゲーションソリューションを示し、トレース3704が、フィードバックありの質を高められたナビゲーションソリューションを示す。
【０１５２】
要約すると、本開示の技法は、階変化イベントを信頼できる形で処理し、ナビゲーションソリューションの質を大幅に高める。さらに、ナビゲーションモジュール120にフィードバックとして更新された推定された位置情報を供給することは、フィードバックなしのナビゲーションモジュールからのソリューションに対して改善されたナビゲーション性能を提供する。
【０１５３】
デバイス100のアーキテクチャに依存して、センサプロセッサ108および慣性センサ112は、異なるチップ上で形成され得、あるいは、図示されているように同一チップ上に存在することができる。デバイス100の方位を計算するのに使用されるセンサフュージョンアルゴリズムは、ホストプロセッサ102によるなど、センサプロセッサ108およびMPU 106の外部で実行され得、あるいは、MPU 106によって実行され得る。チップは、通常は半導体材料から形成される少なくとも1つの基板を含むように定義され得る。単一のチップが、複数の基板から形成され得、ここで、基板は、機能性を保存するために機械的に接着される。複数のチップは、少なくとも2つの基板を含み、この2つの基板は、電気的に接続されるが、機械的な接着を必要としない。パッケージは、チップ上のボンドパッドとPCBにはんだ付けされ得る金属リードとの間の電気接続を提供する。パッケージは、通常、基板およびカバーを含む。集積回路(IC)基板は、電気回路、通常はCMOS回路を有するシリコン基板を指すことができる。
【０１５４】
1つまたは複数のセンサが、望まれる場合に任意の適切な技法を使用してパッケージ内に組み込まれ得る。いくつかの実施形態において、センサは、MEMSキャップがMEMS構造の機械的支持を提供するように、MEMSベースとすることができる。MEMS構造層は、MEMSキャップに取り付けられる。MEMSキャップは、ハンドル基板またはハンドルウェハとも呼ばれる。いくつかの実施形態において、第1の基板は、単一の半導体チップ内で、第2の基板に垂直に積み重ねられ、取り付けられ、電気的に接続され得るが、他の実施形態において、第1の基板は、単一の半導体パッケージ内で、第2の基板の横に配置され、これに電気的に接続され得る。一実施形態において、第1の基板は、電気接続を提供すると同時にMEMSデバイスを密封するために、参照によってその全体が本明細書に組み込まれている、本願の譲受人が所有する米国特許第7104129号に記載されているように、ウェハボンディングを介して第2の基板に取り付けられる。この製造技法は、非常に小さく経済的なパッケージ内の高性能多軸慣性センサの設計および製造を可能にする技術を有利に可能にする。ウェハレベルにおける一体化は、寄生容量を最小にし、ディスクリート解決策に対して相対的に改善された信号対雑音比を可能にする。ウェハレベルにおけるそのような一体化は、外部増幅の必要を最小にする豊かな特徴セットの組込みをも可能にする。
【０１５５】
本開示の技法は、任意のナビゲーションソリューションにおいて使用される状態推定技法またはフィルタリング技法のタイプと独立にこのナビゲーションソリューションと組み合わされ得る。状態推定技法は、線形、非線形、またはその組合せとすることができる。ナビゲーションソリューションにおいて使用される技法の異なる例は、カルマンフィルタ、拡張カルマンフィルタ、粒子フィルタなどの非線形フィルタ、またはニューラルネットワークもしくはファジイシステムなどの人工知能技法に頼ることができる。ナビゲーションソリューションにおいて使用される状態推定技法は、任意のタイプのシステムモデルおよび/または測定モデルを使用することができる。ナビゲーションソリューションは、たとえばとりわけ疎結合統合方式または密結合統合方式など、異なるセンサおよびシステムを統合するための任意の方式に従うことができる。ナビゲーションソリューションは、慣性センサおよび/または使用される他のセンサの誤差に関して、モデル化(線形または非線形、短いメモリ長または長いメモリ長のいずれを用いるものであれ)および/または自動較正を利用することができる。
【０１５６】
企図される実施形態
本開示は、xが前、yの正がボディの右に向かい、z軸の正が下に向かうボディフレームを説明する。任意のボディフレーム定義が、本明細書内で説明される方法および装置の応用例に使用され得ることが企図されている。
【０１５７】
本開示の技法が、その可能な更新および慣性センサバイアス再計算を用いる自動0速度期間検出もしくは静的期間検出、非ホロノミック更新モジュール、慣性センサ誤差の高度なモデル化および/もしくは較正、適当な時のGNSSからのそれらに関する可能な測定更新の導出、GNSSソリューション品質の自動査定および劣化した性能の検出、疎結合統合方式と密結合統合方式との間の自動切替、密結合モードにある時の各可視GNSS衛星の査定をオプションで利用することのできるナビゲーションソリューションと共に使用され得、最後に、おそらくはすべてのタイプのバックワードスムージング(backward smoothing)技法を用い、同一ミッション内でバッファリングされたデータに対してポストミッション(post mission)またはバックグラウンドのいずれかにおいて走行するバックワードスムージングモジュールと共に使用され得ることが企図されている。
【０１５８】
本開示の技法が、運搬のモードを確立するためにあるモードの運搬技法または運動モード検出技法と共に使用されることも可能であることが、さらに企図されている。これは、たとえば運転モードなどの他のモードの中での歩行者モードの検出を可能にする。歩行者モードが検出される時に、本開示内で提示される方法は、デバイスと歩行者との間のミスアライメントを判定するように動作可能にされ得る。
【０１５９】
本開示の技法が、ソリューションの精度および一貫性を最適化するために、絶対ナビゲーション情報内の人工的な機能不全をシミュレートし、本ナビゲーションモジュール内でソリューションのために使用される状態推定技法の別のインスタンスのパラメータを推定するルーチンをバックグラウンドにおいて走行させるようにさらにプログラムされるナビゲーションソリューションと共に使用されることも可能であることが、さらに企図されている。精度および一貫性は、シミュレートされた機能停止中の一時的バックグラウンドソリューションを参照ソリューションと比較することによって査定される。参照ソリューションは、絶対ナビゲーション情報(たとえば、GNSS)、使用可能なセンサを絶対ナビゲーション情報(たとえば、GNSS)およびおそらくはオプションの速さ読みまたは速度読みと統合するデバイス内の順方向統合されたナビゲーションソリューション、または使用可能なセンサを絶対ナビゲーション情報(たとえば、GNSS)およびおそらくはオプションの速さ読みまたは速度読みと統合するバックワードスムージングされた統合されたナビゲーションソリューションという例のうちの1つとすることができる。バックグラウンド処理は、順方向ソリューション処理と同一のプロセッサ上または第1のプロセッサと通信でき共有される位置から保存されたデータを読み取ることのできる別のプロセッサ上のいずれかで走行することができる。バックグラウンド処理ソリューションの結果は、たとえば、本モジュール内でナビゲーションのために使用される順方向状態推定技法のパラメータの改善された値を有することによって、将来の走行(すなわち、バックグラウンドルーチンが走行を終了した後のリアルタイム走行)においてリアルタイムナビゲーションソリューションのためになることができる。
【０１６０】
本開示の技法が、地図(市街地図、屋内地図もしくは屋内モデル、または使用可能なそのような地図もしくはモデルを有する応用例の場合に任意の他の環境地図もしくは環境モデル)および地図支援ルーチンもしくはモデル支援ルーチンとさらに統合されるナビゲーションソリューションと共に使用されることも可能であることが、さらに企図されている。地図支援またはモデル支援は、絶対ナビゲーション情報(GNSSなど)の劣化または中断中にナビゲーションソリューションの質をさらに高めることができる。モデル支援の場合に、たとえばレーザ測距器、カメラおよび視覚システム、またはソナーシステムなど、環境に関する情報を獲得するセンサまたはセンサのグループが、使用され得る。これらの新しいシステムは、絶対ナビゲーション情報問題(劣化または不在)中にナビゲーションソリューションの精度を高めるための余分の助けとして使用され得、あるいは、一部のアプリケーションにおいて絶対ナビゲーション情報を完全に置換することができる。
【０１６１】
本開示の技法が、密結合方式またはハイブリッド疎結合/密結合オプションのいずれかにおいて働く時に、擬似距離測定値(搬送波位相ではなく符号から計算され、したがって符号ベースの擬似距離と呼ばれる)およびドップラ測定値(擬似距離レートを得るのに使用される)を利用することに束縛される必要がないナビゲーションソリューションと共に使用されることも可能であることが、さらに企図されている。GNSS受信器の搬送波位相測定も、たとえば(i)符号ベースの擬似距離の代わりに距離を計算するための代替の方途として、または(ii)符号ベースの擬似距離と搬送波位相測定値との両方からの情報を組み込むことによって距離計算の質を高めるために(そのような質の向上が、キャリアスムーズド(carrier-smoothed)擬似距離である)、使用され得る。
【０１６２】
本開示の技法が、GNSS受信器と他のセンサの読みとの間の超密統合方式に頼るナビゲーションソリューションと共に使用されることも可能であることが、さらに企図されている。
【０１６３】
本開示の技法が、追加の支援(GNSSが使用不能である時により有益になる)またはGNSS情報の置換(たとえば、GNSSが適用可能ではない応用例に関して)のいずれかとして測位およびナビゲーションに使用されることも可能な様々なワイヤレス通信システムを使用するナビゲーションソリューションと共に使用されることも可能であることが、さらに企図されている。測位に使用されるこれらのワイヤレス通信システムの例は、セルラー電話塔および信号、ラジオ信号、デジタルテレビジョン信号、WiFi、またはWiMaxによって提供されるものなどである。たとえば、セルラー電話機ベースの応用例に関して、セル電話塔からの絶対座標および屋内ユーザと塔との間の距離が、測位に利用され得、これによって、距離が、最も近いセル電話測位座標の到着時間または到着時間差を計算する異なる方法によって推定され得る。Enhanced Observed Time Difference(E-OTD)として知られる方法が、既知の座標および距離を得るのに使用され得る。距離測定値の標準偏差は、セル電話機内で使用される発振器のタイプ、セル塔タイミング機器、および伝送損失に依存する可能性がある。WiFi測位は、とりわけ、到着時刻、到着の時間差、到着の角度、受信信号強度、およびフィンガープリンティング技法を含むがこれに制限されない様々な形において行われ得、これらの方法のすべてが、異なるレベルの精度を提供する。測位に使用されるワイヤレス通信システムは、ワイヤレス信号からの測距、角度、または信号強度における誤差をモデル化するための異なる技法を使用する場合があり、異なるマルチパス軽減技法を使用する可能性がある。上で言及されたアイデアのすべてが、とりわけ、ワイヤレス通信システムに基づく他のワイヤレス測位技法に関して同様の形で適用可能でもある。
【０１６４】
本開示の技法が、他の移動するデバイスからの支援する情報を利用するナビゲーションソリューションと共に使用されることも可能であることが、さらに企図されている。この支援する情報は、追加の支援(GNSSが使用不能である時により有益になる)またはGNSS情報の置換(たとえば、GNSSベースの測位が適用可能ではない応用例に関して)として使用され得る。他のデバイスからの支援する情報の一例は、異なるデバイスの間のワイヤレス通信システムに頼ることとすることができる。基礎になるアイデアは、よりよい測位ソリューションまたはナビゲーションソリューションを有する(たとえば、よい可用性および精度を有するGNSSを有する)デバイスが、改善された測位ソリューションまたはナビゲーションソリューションを得るために劣化したGNSSまたは使用不能なGNSSを有するデバイスを助けることができることである。この助けは、劣化したGNSSまたは使用不能なGNSSを有するデバイスを測位するために、支援するデバイスおよびワイヤレス通信システムの周知の位置に頼る。この企図される変形は、(i)劣化したGNSSまたは使用不能なGNSSを有するデバイスが、本明細書内で説明される方法を利用し、他のデバイスおよび通信システムからの支援を得る状況、(ii)GNSSが使用可能であり、したがってよいナビゲーションソリューションを有する支援するデバイスが、本明細書内で説明される方法を利用する状況の一方または両方を指す。測位に使用されるワイヤレス通信システムは、異なる通信プロトコルに頼る可能性があり、異なる方法、たとえば、とりわけ、到着時刻、到着の時間差、到着の角度、および受信信号強度に頼る可能性がある。測位に使用されるワイヤレス通信システムは、ワイヤレス信号からの測距および/または角度における誤差をモデル化するための異なる技法を使用する可能性があり、異なるマルチパス軽減技法を使用する可能性がある。
【０１６５】
上で説明される実施形態および技法は、ソフトウェアにおいて様々な相互接続された機能ブロックまたは別個のソフトウェアモジュールとして実施され得る。しかし、これは、必要ではなく、これらの機能ブロックまたはモジュールが、不明瞭な境界を有する単一の論理デバイス、プログラム、または動作に同等に集約される場合があり得る。どの場合において、上で説明される実施形態を実施する機能ブロックおよびソフトウェアモジュールまたはインターフェースの特徴は、単独で、あるいは、ハードウェアまたはソフトウェアのいずれかにおいて完全にデバイス内またはデバイスおよびサーバなど、そのデバイスと通信する他のプロセッサ使用可能デバイスとに関連してのいずれかで、他の動作と組み合わせて実施され得る。
【０１６６】
少数の実施形態が、図示され説明されたが、様々な変更および修正が、これらの実施形態の範囲、意図、または機能性を変更せず、これから逸脱することなく、これらの実施形態に対して行われ得ることが、当業者によって了解されよう。先行する明細書内で使用された用語および表現は、限定ではなく説明の言葉として本明細書内で使用され、そのような用語および表現の使用において、図示され説明される特徴またはその部分の同等物を除外する意図はなく、本開示が、以下の特許請求によってのみ定義され、限定されることが認められる。
【符号の説明】
【０１６７】
100  ポータブルデバイス
102  ホストプロセッサ
104  メモリ
106  モーション処理ユニット(MPU)
108  センサプロセッサ
110  メモリ
112  慣性センサ
114  外部センサ
116  補助センサ
118  バス
120  ナビゲーションモジュール
122  絶対ナビゲーション情報
124  地図モジュール
126  位置エスティメータ
128  仮説アナライザ
130  地図ハンドラ
200  第1のアーキテクチャ
202  入力
300  第2のアーキテクチャ
500  ナビゲーションシステム
502  ポータブルデバイス
504  サーバ
600  アーキテクチャ
700  背景エンティティ
702  ポリゴン
704  ポリゴン
800  ドット
802  リンク
804  中実ポリゴン
900  近似された誤差楕円
1300  仮説
1302  仮説
1304  エレベータ
1400  トレース
1402  トレース
1500  トレース
1502  トレース
1504  トレース
1600  トレース
1602  トレース
1604  トレース
1700  トレース
1702  トレース
1800  トレース
1802  トレース
1900  トレース
1902  トレース
1904  トレース
2000  トレース
2002  トレース
2004  トレース
2100  トレース
2102  トレース
2104  トレース
2200  トレース
2202  トレース
2300  トレース
2302  トレース
2304  トレース
2400  トレース
2402  トレース
2500  トレース
2502  トレース
2504  トレース
2600  トレース
2602  トレース
2700  トレース
2702  トレース
2800  トレース
2802  トレース
2804  トレース
2900  トレース
2902  トレース
2904  トレース
3000  トレース
3002  トレース
3100  トレース
3102  トレース
3200  トレース
3202  トレース
3204  トレース
3300  トレース
3302  トレース
3304  トレース
3400  トレース
3402  トレース
3500  トレース
3502  トレース
3600  トレース
3602  トレース
3604  トレース
3700  トレース
3702  トレース
3704  トレース
【図１】
0006783751.tif 000019
【図２】
0006783751.tif 000020
【図３】
0006783751.tif 000021
【図４】
0006783751.tif 000022
【図５】
0006783751.tif 000023
【図６】
0006783751.tif 000024
【図７】
0006783751.tif 000025
【図８】
0006783751.tif 000026
【図９】
0006783751.tif 000027
【図１０】
0006783751.tif 000028
【図１１】
0006783751.tif 000029
【図１２】
0006783751.tif 000030
【図１３】
0006783751.tif 000031
【図１４】
0006783751.tif 000032
【図１５】
0006783751.tif 000033
【図１６】
0006783751.tif 000034
【図１７】
0006783751.tif 000035
【図１８】
0006783751.tif 000036
【図１９】
0006783751.tif 000037
【図２０】
0006783751.tif 000038
【図２１】
0006783751.tif 000039
【図２２】
0006783751.tif 000040
【図２３】
0006783751.tif 000041
【図２４】
0006783751.tif 000042
【図２５】
0006783751.tif 000043
【図２６】
0006783751.tif 000044
【図２７】
0006783751.tif 000045
【図２８】
0006783751.tif 000046
【図２９】
0006783751.tif 000047
【図３０】
0006783751.tif 000048
【図３１】
0006783751.tif 000049
【図３２】
0006783751.tif 000050
【図３３】
0006783751.tif 000051
【図３４】
0006783751.tif 000052
【図３５】
0006783751.tif 000053
【図３６】
0006783751.tif 000054
【図３７】
0006783751.tif 000055