JP6336992B2 - モバイルデバイスのマップ支援センサーベース測位 - Google Patents

モバイルデバイスのマップ支援センサーベース測位 Download PDF

Info

Publication number
JP6336992B2
JP6336992B2 JP2015537723A JP2015537723A JP6336992B2 JP 6336992 B2 JP6336992 B2 JP 6336992B2 JP 2015537723 A JP2015537723 A JP 2015537723A JP 2015537723 A JP2015537723 A JP 2015537723A JP 6336992 B2 JP6336992 B2 JP 6336992B2
Authority
JP
Japan
Prior art keywords
mobile device
estimated
trajectory
estimating
indoor environment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015537723A
Other languages
English (en)
Other versions
JP2016502069A (ja
JP2016502069A5 (ja
Inventor
パクザド、パヤム
ポドゥリ、サメーラ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2016502069A publication Critical patent/JP2016502069A/ja
Publication of JP2016502069A5 publication Critical patent/JP2016502069A5/ja
Application granted granted Critical
Publication of JP6336992B2 publication Critical patent/JP6336992B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/206Instruments for performing navigational calculations specially adapted for indoor navigation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C22/00Measuring distance traversed on the ground by vehicles, persons, animals or other moving solid bodies, e.g. using odometers, using pedometers
    • G01C22/006Pedometers

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Navigation (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Description

関連出願
これは、その全体が参照により本明細書に組み込まれる、2012年10月22日に出願された、「MAP-ASSISTED SENSOR-BASED POSITIONING OF MOBILE DEVICES」の米国非仮特許出願第13/657,428号に対する優先権を主張するPCT出願である。
[0001]本明細書で開示する主題は、電子デバイスに関し、より詳細には、1つまたは複数のモバイルデバイスのマップ支援センサーベース測位(map-assisted sensor-based positioning)を行うかまたはさもなければサポートするために1つまたは複数のコンピューティングプラットフォームにおいて使用する方法、装置および製造品に関する。
[0002]モバイルフォン、ノートブック、コンピュータなどのモバイルデバイスは一般に、たとえば、信号ベース測位システムおよび/または対応する信号のほんの数例を挙げると、衛星測位システム(たとえば、GPSなど)、アドバンストフォワードリンクトライラテレーション(AFLT:advanced forward-link trilateration)など、いくつかの技術のいずれか1つを使用して高度の精度でロケーションおよび/または位置を推定する能力を有する。高精度ロケーション情報を使用して、モバイルデバイスのアプリケーションは、たとえば、ほんの2、3の例を挙げると、車両/歩行者ナビゲーション、ロケーションベース探索など、多くの異なるサービスをユーザに与え得る。ここで、(たとえば、GPSおよび/または他の信号ベース測位システムから取得された)高精度信号ベースロケーション情報は、グローバル座標系(たとえば、緯度および経度または地球中心xyz座標)に従って処理され得る。グローバル座標系を基準とする(referenced)信号ベースロケーション情報のそのような使用は、いくつかのサービス(たとえば、屋外車両ナビゲーション)を提供するのに有用であり得るが、グローバル座標系を基準とするそのような信号ベースロケーション情報は、屋内歩行者ナビゲーションなど、他のタイプのサービスでは実際的でないことがある。
[0003]オフィスビル、ショッピングモール、空港、スタジアムなど、いくつかの屋内環境では、いくつかの例示的な信号ベース測位技法は、たとえば、モバイルデバイスによって受信され、測位目的のために使用され得るワイヤレス信号を送信する、ワイヤレスネットワークアクセスポイント、セルラーネットワーク基地局、特殊目的ビーコン送信機など、様々な地上ベースワイヤレス信号送信デバイスを利用し得る。たとえば、モバイルデバイスが、送信機から信号ベース測位信号を受信し、それに基づいて送信機と受信機との間の擬似距離(a pseudorange)を判断し得る。したがって、たとえば、測位は、トライラテレーション(trilateration)および/または他の知られている信号ベース測位技法に基づいて行われ得る。しかしながら、すべての屋内環境が信号ベース測位システムによって適切にサポートされ得るとは限らない。その上、いくつかの事例では、モバイルデバイスが信号ベース測位技法を使用するのを回避することが有益であり得る。
[0004]屋内環境内でモバイルデバイスの軌道(trajectory)を推定するために実装され得る様々な方法、装置および/または製造品が提供される。
[0005]たとえば、いくつかの態様によれば、少なくとも1つのコンピューティングプラットフォームを用いて、屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいてモバイルデバイスの軌道を推定することと、屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて推定された軌道に作用することとを備える、方法が実装され得る。
[0006]いくつかのさらなる態様によれば、屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいてモバイルデバイスの軌道を推定するための手段と、屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて推定された軌道に作用するための手段とを備える、装置が提供され得る。
[0007]さらに他の態様によれば、メモリと、屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいてモバイルデバイスの軌道を推定することと、メモリを介してアクセス可能な屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて推定された軌道に作用することとを行うための1つまたは複数の処理ユニットとを備える、コンピューティングプラットフォームが提供され得る。
[0008]また別の態様によれば、屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいてモバイルデバイスの軌道を推定することと、屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて推定された軌道に作用することと、を行うようにコンピューティングプラットフォーム中の1つまたは複数の処理ユニットによって実行可能なコンピュータ実装可能命令を記憶した非一時的コンピュータ可読媒体。
[0009]以下の図を参照しながら非限定的で非網羅的な態様について説明し、別段に規定されていない限り、様々な図の全体を通して、同様の参照番号は同様の部分を指す。
[0010]例示的な実装形態による、それのうちの1つまたは複数がモバイルデバイスのマップ支援センサーベース測位をサポートし得る、コンピューティングデバイスとモバイルデバイスとを含む例示的な環境を示す概略ブロック図。 [0011]例示的な実装形態による、モバイルデバイスのマップ支援センサーベース測位をサポートするためのコンピューティングデバイス中の例示的なコンピューティングプラットフォームのいくつかの特徴を示す概略ブロック図。 [0012]例示的な実装形態による、モバイルデバイスのマップ支援センサーベース測位をサポートするためのモバイルデバイス中の例示的なコンピューティングプラットフォームのいくつかの特徴を示す概略ブロック図。 [0013]例示的な実装形態による、モバイルデバイスのマップ支援センサーベース測位をサポートするプロセスのいくつかの態様を示すプロセスフロー。 [0014]例示的な実装形態による、歩行またはランニングしながらモバイルデバイスを携帯している人の慣性センサー測定値に関連する、あるステップ検出データを示すグラフ。 [0015]例示的な実装形態による、歩行またはランニングしながらモバイルデバイスを携帯している人の慣性センサー測定値に関連する、あるステップ頻度データを示すグラフ。 [0016]例示的な実装形態による、屋内環境をナビゲートしながらモバイルデバイスを携帯している人の慣性センサー測定値および/または環境センサー測定値に関連する、ある角度軌道データを示すグラフ。 [0017]例示的な実装形態による、オドメトリ(odometry)情報に少なくとも部分的に基づいて調整された図7の角度軌道データに基づく、調整された軌道データを示すグラフ。 [0018]別の例示的な実装形態による、屋内環境をナビゲートしながらモバイルデバイスを携帯している人の慣性センサー測定値および/または環境センサー測定値に関連する、ある角度軌道データを示すグラフ。 [0019]例示的な実装形態による、オドメトリ情報に少なくとも部分的に基づいて調整された図9の角度軌道データに基づく、調整された軌道データを示すグラフ。 [0020]例示的な実装形態による、屋内環境の電子マップにおいて識別されたいくつかの物体の視覚表現と、初期軌道データに基づく初期ルート、および電子マップにおいて識別された物体のうちの1つまたは複数に少なくとも部分的に基づいて調整された初期軌道データに基づくさらに調整されたルートを示すオーバーレイとを示す図。 [0021]例示的な実装形態による、中間地点(waypoint)のシーケンスを通って進む(lead through)、変化する軌道を有するルートの視覚表現を示す図。 [0022]例示的な実装形態による、図12の場合のルートに従って人が取るステップの視覚表現を示す図。 [0023]例示的な実装形態による、センサー測定値から取得された配向(orientation)データと、動的関数によって割り当てられた適合(fitted)回転(turn)モデリング情報とを示すグラフおよび拡大図。 [0024]いくつかの例示的な実装形態による、いくつかの追加の例示的な屋内環境と、いくつかの初期ルートおよび対応する調整されたルートを示すオーバーレイとを示す図。 いくつかの例示的な実装形態による、いくつかの追加の例示的な屋内環境と、いくつかの初期ルートおよび対応する調整されたルートを示すオーバーレイとを示す図。
[0025]本明細書の例によって示されるように、1つまたは複数のモバイルデバイスのマップ支援センサーベース測位を行うかまたはさもなければサポートするために1つまたは複数のコンピューティングプラットフォームにおいて使用する様々な方法、装置および製造品が実装され得る。
[0026]いくつかの態様によれば、マップ支援センサーベース測位のための本明細書で提供する技法は、いくつかの信号ベース測位技法が何らかの理由でサポートされ得ないおよび/または不利であり得る(may be adverse)環境内で特に利益があり得る。たとえば、いくつかの屋内環境では、SPS信号に依拠する信号ベース測位技法が、追加の信号減衰(signal attenuation)などによりうまく機能しないことがある。さらに、いくつかの屋内環境は、いくつかの信号ベース測位技法において通常ならば(otherwise)有用であり得るアクセスポイントおよび/または他のワイヤレス送信機がないことがある。さらに、いくつかの事例では、モバイルデバイスが、そのような信号ベース測位技法によって使用され得るワイヤレス信号を含めてワイヤレス信号を送信および/または受信するのを回避することが望ましいことがある。たとえば、モバイルデバイスは、通信インターフェースまたはそれの一部分が何回動作させられるかを低減することによって、電力消費量を低減し得る。別の例では、いくつかの環境では、モバイルデバイスが、たとえば、他の電子デバイスに干渉することを回避するために、および/または他の理由で、それの通信インターフェースの全部または一部をアクティブにしないことが有益であり得る。いくつかの状況では、たとえば、所与の環境のグランドトゥルース(a ground truth)などに対応する情報が取得される(たとえば、新しくなる、更新されるなど)および/または適用される(たとえば、使用される、テストされる、検証されるなど)ことがあるなど、ワイヤレスシグナリングを使用しない処理のいくつかの他の利益が達成され得る。したがって、そのような新しいおよび/または改良された情報は、環境またはそれの一部分内のいくつかの特徴をマッピングするかまたはさもなければ識別するために使用される様々な他のプロセスに有益であり得る。したがって、そのような新しいおよび/または改良された情報は、たとえば、後処理(post-processing)および/またはポスト測位(post-positioning)の使用のために提供される1つまたは複数のシステムまたは機能において適用され得る。
[0027]したがって、時々、モバイルデバイスは、いくつかの通信インターフェースほど多くの電力を消費しないおよび/または他のデバイスに干渉しないことがある1つまたは複数のオンボードセンサー、たとえば、慣性センサー、環境センサーなど、またはそれらの何らかの組合せからセンサー測定値を取得することが有益であり得る。いくつかの事例では、センサー測定値は、特定の環境内のモバイルデバイスの軌道および/または位置を推定するために使用され得る。たとえば、1つまたは複数の慣性センサー(たとえば、1つまたは複数の加速度計、ジャイロスコープなど)および/または1つまたは複数の環境センサー(たとえば磁力計または同様の他のデバイス、たとえば気圧計)からのセンサー測定値は、特定の環境内でナビゲートしながらモバイルデバイスのユーザによって動き回されるときにモバイルデバイスが受けるいくつかの移動に対応し得る。たとえば、1つまたは複数の加速度計は、モバイルデバイスのユーザが歩行またはランニングしながらステップを取っているときにモバイルデバイスが受ける力に基づいてセンサー測定値を生成し得る。たとえば、1つまたは複数の加速度計は、モバイルデバイスのユーザが加速、減速、回転などするときにモバイルデバイスが受ける力に基づいてセンサー測定値を生成し得る。たとえば、ジャイロスコープは、モバイルデバイスのユーザが特定の環境内の様々な物体の間をナビゲートするとき、モバイルデバイスの配向の変化に対応するセンサー測定値を生成し得る。たとえば、磁力計は、動き回っている、たとえば、歩行しながら回転していたり、起立しながら旋回していたり(pivoting)などするユーザによって生じるいくつかの方向変化に対応するセンサー測定値を生成し得る。たとえば、いくつかの事例では、気圧計は、動き回っている、たとえば、階段を上っていたり、エレベータまたはエスカレータに乗っていたりなどするユーザによって生じる高度のいくつかの変化に対応するセンサー測定値を生成し得る。
[0028]1つまたは複数のセンサーを備えることに加えて、モバイルデバイスは、環境内で動き回る人の能力に何らかの影響を及ぼす環境内のいくつかの物体を示し得る1つまたは複数の電子マップの全部または一部でさらにプロビジョニングされ得る(may be further provisioned)。例として、(たとえば、1つまたは複数の自然および/または人工構造物の全部または一部を備える)屋内環境用の電子マップは、その屋内環境に関係する様々な物体を識別し得る。たとえば、建築物用の電子マップは、壁および/または他の同様の物理的特徴によって分離された、建築物内の様々な領域を識別し得る。したがって、建築物用の例示的な電子マップは、様々な部屋、廊下、入口、出口、階段、エレベータ、窓などを有する間取り図を識別するコンピュータ支援設計(CAD)図面などを備え得る。いくつかの事例では、例示的な電子マップは、たとえば、デスク、キュービクル(cubicles)、ディスプレイケース、アプライアンス(appliances)など、いくつかの物体をさらに示し得る。さらに他の事例では、例示的な電子マップに関連付けられた1つまたは複数のデータファイルが、屋内構造内をナビゲートしているユーザに有用であり得る追加の情報を備え得る。たとえば、屋内構造内の特定の領域に関連付けられ得るいくつかのサービス、または場合によっては人またはエンティティを示す、ロケーションベースサービス情報および/または何らかの形態のメタデータが与えられ得る。当業者は、上記で説明したもの以外の物体が電子マップ中で識別され得ることを諒解されよう。さらに、当業者は、電子マップがモバイルデバイス以外のデバイスまたはロケーションにおいて、たとえばサーバまたはワークステーションにおいてプロビジョニングされ得ること、および電子マップが屋内エリア以外のエリアを記述し得ることを諒解されよう。たとえば、電子マップは、都市または公園内の屋外スタジアムまたは経路(pathways)を記述し得る。したがって、以下の実施形態では屋内環境および/またはマップに関して説明することがあるが、いくつかの実施形態は、他の環境内でまたは他の電子マップとともに使用され得る。
[0029]いくつかの実装形態では、ユーザおよび/または何らかの他のエンティティが、電子マップまたはそれに関連付けられた何らかのデータファイルの一部分にアノテーションを付ける(annotate)かまたはさもなければ強調する(enhance)ことに関係し得るおよび/またはさもなければそのために使用され得る追加の情報を与えることが可能であり得る。たとえば、いくつかの実装形態では、ユーザが屋内環境内で全体的にまたは部分的に従い得る1つまたは複数の予定ルートに関連付けられ得る、1つまたは複数の開始および/または終了ロケーション、および/または中間地点を、ユーザまたは何らかの他のエンティティが定義することを可能にする、1つまたは複数のアプリケーションが提供され得る。たとえば、表示マップレンダリング内の情報の表示に関するおよび/または電子マップに関連する(たとえば、1つまたは複数のボタンおよびノブ、キーパッド、タッチスクリーン、マイクロフォン、カメラなどを介した)ユーザ入力を受け付けるためのアプリケーションが提供され得る。したがって、たとえば、ユーザは、人々または注目するポイント、あるいは場合によっては間取り図の全部または一部分の視覚表現などのリストを提示され得、所望の開始ポイントおよび/または終了ポイントおよび/または1つまたは複数の中間地点などをプログラムするように何らかの方法で応答し得る。いくつかの例示的な実装形態では、モバイルデバイスは、(たとえば、オンボードおよび/または外部サービスアプリケーションなどから)特定の目的地へのルーティング方向を取得し得る。モバイルデバイスのユーザがそのようなルーティング方向に従うと仮定すると、1つまたは複数の中間地点は、そのようなルーティング方向に少なくとも部分的に基づいて判断され得る。
[0030]電子マップおよび/または他の同様の情報および/またはコンピュータ実装可能命令を表す1つまたは複数のデータファイルは、たとえば、(たとえば、1つまたは複数のワイヤードおよび/またはワイヤレス通信リンクを介して)1つまたは複数の他のコンピューティングデバイスから取得され、および/または様々な形態の非一時的コンピュータ可読媒体(たとえば、光ディスク、磁気ディスク、電子メモリデバイス、機械可読オブジェクトなど)から取得され得る。
[0031]いくつかの例示的な実装形態によれば、屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいてモバイルデバイスの軌道を推定することと、屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて推定された軌道に作用することとを行うための、1つまたは複数のコンピューティングプラットフォームが、たとえば、コンピューティングデバイスおよび/またはモバイルデバイス内に設けられ得る。
[0032]例示的な実装形態では、コンピューティングプラットフォームが、モバイルデバイスにおける少なくとも1つの加速度計から取得された1つまたは複数のセンサー測定値のうちの少なくとも1つに少なくとも部分的に基づいて、動きモードに関連する少なくとも1つのアクションの発生を検出することによって、モバイルデバイスの軌道を推定し得る。例として、例示的な動きモードは、歩行中またはランニング中の人によって携帯されたモバイルデバイスが受け得る二足歩行移動など、1つまたは複数の形態の二足歩行移動に関係し得る。別の例では、特定の動きモードは、エレベータまたはエスカレータに乗っている人および/または何らかの方法で進ませられている(being propelled)人によって携帯されている間にモバイルデバイスが受け得る移動に関係し得る。
[0033]少なくとも1つのそのような検出されたアクションの発生に少なくとも部分的に基づいて、コンピューティングプラットフォームは、ある時間期間中にモバイルデバイスが移動した距離、その時間期間中のモバイルデバイスの速度、および/または他の同様の動き関連情報を推定し得る。例として、動きモードが何らかの形態の二足歩行移動モードを備えると仮定すると、検出されたアクションは、1つまたは複数のステッピングアクション(stepping actions)を含み得る。したがって、コンピューティングプラットフォームは、たとえば、推定ストライド長、推定ストライド頻度(estimated stride frequency)など、または1つまたは複数の検出されたステッピングアクションに関連するそれらの何らかの組合せに少なくとも部分的に基づいて、移動した距離および/または速度を推定し得る。いくつかの例示的な実装形態では、コンピューティングプラットフォームは、ステップカウントを積算することと角速度を積算することとによって、移動した距離および/または速度を推定し得る。
[0034]いくつかの例示的な実装形態によれば、コンピューティングプラットフォームは、モバイルデバイスにおけるジャイロスコープおよび/または磁力計から取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいて、モバイルデバイスの配向の変化が発生したのか発生しなかったのかを判断することに少なくとも部分的によって、モバイルデバイスの軌道を推定し得る。ここで、たとえば、コンピューティングプラットフォームは、変化が発生したのか発生しなかったのかの判断に少なくとも部分的に基づいて、モバイルデバイスの現在のヘッディング(current heading)を推定し得る。たとえば、コンピューティングプラットフォームは、少なくとも1つの前に推定されたヘッディングに少なくとも部分的に基づいて現在のヘッディングを推定し得る。
[0035]いくつかの例示的な実装形態によれば、コンピューティングプラットフォームは、電子マップにおいて識別された屋内環境内の1つまたは複数の物体の配置に関して定義され得る1つまたは複数の中間地点の1つまたは複数のロケーションを使用することに少なくとも部分的によって推定された軌道に作用し得る。いくつかの事例では、コンピューティングプラットフォームは、たとえば、モバイルデバイスのユーザインターフェースから受信された少なくとも1つの入力に少なくとも部分的に基づいて中間地点のロケーションのうちの少なくとも1つを取得し得る。いくつかの事例では、コンピューティングプラットフォームは、たとえば、電子マップに少なくとも部分的に基づいて1つまたは複数の中間地点のロケーションのうちの1つまたは複数を判断し得る。
[0036]いくつかの例示的な実装形態によれば、コンピューティングプラットフォームは、推定された軌道において生じ、場合によっては時間とともにアグリゲートされ得るドリフト(drift)を補正することに少なくとも部分的によって、推定された軌道に作用し得る。たとえば、いくつかの実装形態では、軌道を推定し、ドリフトなどのいくつかのエラーを訂正するために、粒子フィルタ(particle filter)などが実装され得る。いくつかの事例では、粒子フィルタは、たとえば、電子マップおよび/またはその中で識別された何らかの物体に対するモバイルデバイスの推定位置、モバイルデバイスの推定ヘッディング、ある時間期間中にモバイルデバイスが移動した推定距離、ある時点におけるまたはある時間期間中のモバイルデバイスの推定速度など、あるいはそれらの何らかの組合せに少なくとも部分的に基づいて、粒子状態を維持し得る。
[0037]いくつかの事例では、推定ヘッディングは、推定回転特性(estimated turn characteristic)に少なくとも部分的に基づくヘッディングエラーを考慮に入れ、および/またはさもなければそれに関連付けられ得る。いくつかの事例では、粒子フィルタは、モバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいて1つまたは複数の粒子を伝搬し得る。いくつかの事例では、粒子フィルタは、推定された軌道および/または他のラインからしきい値測定値超だけ(by more than a threshold measurement)それる(stray)伝搬粒子(propagated particles)を除去することに少なくとも部分的に基づいて粒子状態を維持し得る。
[0038]いくつかの例示的な実装形態によれば、コンピューティングプラットフォームは、コスト関数などに少なくとも部分的に基づき得る個別回転割当て(discrete turn assignment)を使用して、推定された軌道のドリフトを補正することに少なくとも部分的によって、推定された軌道に作用し得る。たとえば、コスト関数は、何らかの時間期間中のモバイルデバイスの配向の差またはそれの欠如のコスト、何らかの時間期間中にモバイルデバイスが移動した推定距離に対して連続する中間地点間の距離(a distance between consecutive waypoints)をマッチングするコスト(マッチングコスト)など、あるいはそれらの何らかの組合せを考慮に入れ得る。いくつかの事例では、コスト関数は、たとえば、少なくとも部分的に、マッチングコストを最小限に抑えるための動的関数を使用して計算され得る。
[0039]いくつかの例示的な実装形態によれば、コンピューティングプラットフォームは、推定された軌道と電子マップとの少なくとも一部分に少なくとも部分的に基づいてモバイルデバイスのロケーションを推定し得る。いくつかの例示的な実装形態では、コンピューティングプラットフォームは、たとえば、モバイルデバイス、および/または場合によっては何らかの他のコンピューティングデバイスの少なくとも1つのユーザ出力デバイスを介して、推定ロケーション、推定軌道、推定到着時間、推定速度など、またはそれらの何らかの組合せの提示を開始し得る。
[0040]いくつかの例示的な実装形態では、推定された軌道は、複数の潜在的な経路(potential paths)および/または制約に基づき得る。いくつかの実施形態では、たとえば、電子マップは、(たとえば、コスト関数などを介して)可能性が最も高い経路を判断するように探索され得る。したがって、いくつかの事例では、モバイルデバイスのロケーションは、測位のためのワイヤレス信号を使用せずに取得され得る。たとえば、本明細書の実施形態は、モバイルデバイスの概略位置をアプリオリに知ることもしくは概略位置を最初に判断すること(もしくは、たとえば近くの特徴(nearby features)に基づいて、潜在的な位置間の曖昧さを除去すること(disambiguating between potential positions))、および/または特定の経路に従わなければならないことに限定されない。そうではなく、実施形態は、たとえば電子マップ(もしくはそれの制約)およびモバイルデバイスの1つまたは複数のセンサーに基づいて、電子マップに対応する環境内の可能性があるルートまたは経路を判断するために、たとえばそのような情報が利用可能でないかあるいはこの情報を判断または収集しないことが有益である他の状況において使用され得る。したがって、モバイルデバイスのルートまたは位置は、いくつかの実施形態では、環境内のモバイルデバイスの概略位置またはルートが未知であるときでも推論され得る。
[0041]次に図1に注目すると、図1は、例示的な実装形態による、それのうちの1つまたは複数がモバイルデバイス104のマップ支援センサーベース測位をサポートし得る、コンピューティングデバイス102とモバイルデバイス104とを含む例示的な環境100を示す概略ブロック図である。
[0042]図示のように、コンピューティングデバイス102は、屋内環境140内のモバイルデバイス104に関してマップ支援センサーベース測位を行うための装置112を備える。装置112は、たとえば1つまたは複数のネットワーク120を介して、直接および/または間接的に1つまたは複数の他のリソース(デバイス)130と通信し得る1つまたは複数のコンピューティングプラットフォームを表し得る。装置112は、(たとえば、ワイヤレス通信リンク103によって示されるように)直接的に、および/または(たとえば、(1つまたは複数の)ネットワーク120を介して、およびワイヤレス通信リンク121によって示されるように)間接的に、モバイルデバイス104と通信し得る。コンピューティングデバイス102はこの例ではたまたま屋内環境140の外部に位置するものとして示されているが、いくつかの他の実装形態では、コンピューティングデバイス102および/または装置112の全部または一部は屋内環境140内に位置し得ることを認識されたい。
[0043](1つまたは複数の)ネットワーク120は、コンピューティングデバイス102と1つまたは複数の他のリソース(デバイス)130との間の通信をサポートする、様々な相互接続されたデバイスを有する1つまたは複数の通信システムおよび/またはデータネットワークを備え得る。述べたように、(1つまたは複数の)ネットワーク120は、コンピューティングデバイス102とモバイルデバイス104との間の通信をさらにサポートし得る。たとえば、コンピューティングデバイス102とモバイルデバイス104との間の通信によって、あるデータおよび/または命令がそれらの間で交換されることが可能になり得る。一例では、モバイルデバイス104に搭載された1つまたは複数のセンサーから取得された1つまたは複数のセンサー測定値がコンピューティングデバイス102内の装置112に送信され得、および/または、少なくとも部分的に装置110によって判断された、推定軌道および/または他の測位情報の全部または一部が、コンピューティングデバイス102、および/または場合によっては1つまたは複数の他のリソース(デバイス)130に送信され得る。逆に、別の例では、少なくとも部分的にコンピューティングデバイス102中の装置112によって判断された、推定軌道および/または他の測位情報の全部または一部が、モバイルデバイス104に送信され得る。
[0044]本明細書で使用する「モバイルデバイス」は、屋内環境内で、たとえばユーザによって直接あるいは間接的に動き回らされ得る任意の電子デバイスを表し得る。いくつかの実施形態では、モバイルデバイスは、1つまたは複数のワイヤードおよび/またはワイヤレス通信リンクを介して1つまたは複数の他のデバイスと通信するように構成され得る。いくつかの例としては、セルフォン、スマートフォン、コンピュータ(たとえば、ラップトップコンピュータ、タブレットコンピュータ、ウェアラブルコンピュータなどのパーソナルコンピュータ)、ナビゲーションエイド、トラッキングデバイス、デジタルブックリーダー、ゲームデバイス、音楽および/またはビデオプレーヤデバイス、カメラ、機械、ロボットなどがある。
[0045]他のリソース(デバイス)130は、コンピューティングデバイス102および/またはモバイルデバイス104がいくつかのデータファイルおよび/または命令をそれから取得し得、および/またはコンピューティングデバイス102および/またはモバイルデバイス104がいくつかのデータファイルおよび/または命令をそれに与え得る、1つまたは複数のコンピューティングプラットフォームを表し得る。たとえば、いくつかの事例では、電子マップなどの全部または一部が、1つまたは複数の他のリソース(デバイス)130からコンピューティングデバイス102および/またはモバイルデバイス104によって取得され得る。たとえば、いくつかの事例では、装置112および/または装置110において使用する命令のセットの全部または一部が他のリソース(デバイス)130から取得され得る。
[0046]例示的な環境100は、いくつかの実施形態では、モバイルデバイス104に1つまたは複数の衛星測位システム(SPS:satellite positioning system)信号151を送信し得るSPS150をさらに含む。SPS150は、たとえば、1つまたは複数のGNSS、1つまたは複数の領域ナビゲーション衛星システムなど、あるいはそれらの何らかの組合せを表し得る。さらに、SPS150および/またはSPS信号151は、信号ベース測位において使用するためのワイヤレス信号を送信する1つまたは複数の地上ベースワイヤレス送信デバイスを表し得る。したがって、たとえば、SPS150はワイヤレスアクセスポイント、基地局などを表し得、SPS信号151は、信号ベース測位において使用するための対応するワイヤレス信号を表し得る。SPS信号151は、時々、モバイルデバイス104によって収集され、モバイルデバイスの位置ロケーションを推定するために使用され得る。
[0047]しかしながら、述べたように、ただしいくつかの事例では、屋内環境の全部または一部がそのような信号ベース測位信号のカバレージエリアの外部にあり得、および/またはモバイルデバイス104は、そのような信号ベース測位信号が受信可能であり得ないかまたは無視され得るモードで動作していることがある。したがって、そのような信号ベース測位信号がない場合、装置110および/または装置112は、本明細書で提供する例示的な技法に従ってマップ支援センサーベース測位を実行することを試み得る。
[0048]屋内環境140は、1つまたは複数の自然および/または人工構造物に関連付けられた1つまたは複数の屋内環境の全部または一部を表し得る。図示のように、屋内環境140は、モバイルデバイス104をもつユーザの移動に何らかの方法で作用し得る1つまたは複数の物体142を備え得る。さらに、図示のように、モバイルデバイス104の全部または一部は、屋内環境140に関連付けられた電子マップの全部または一部に対して判断され得る推定ロケーションに対応し得る、屋内環境140内の実際の物理的ロケーション144を有し得る。
[0049]次に図2に注目すると、図2は、例示的な実装形態による、モバイルデバイスのマップ支援センサーベース測位をサポートするためのコンピューティングデバイス102中の例示的なコンピューティングプラットフォーム200のいくつかの特徴を示す概略ブロック図である。
[0050]図示のように、コンピューティングプラットフォーム200は、(たとえば、本明細書で提供する技法に従って、装置112の一部として、など)データ処理を実行するための、1つまたは複数の接続206を介してメモリ204に結合された1つまたは複数の処理ユニット202を備え得る。(1つまたは複数の)処理ユニット202は、たとえば、ハードウェアまたはハードウェアとソフトウェアとの組合せで実装され得る。(1つまたは複数の)処理ユニット202は、データコンピューティング手順またはプロセスの少なくとも一部分を実行するように構成可能な1つまたは複数の回路を表し得る。限定ではなく例として、処理ユニットは、1つまたは複数のプロセッサ、コントローラ、マイクロプロセッサ、マイクロコントローラ、特定用途向け集積回路、デジタル信号プロセッサ、プログラマブル論理デバイス、フィールドプログラマブルゲートアレイなど、またはそれらの任意の組合せを含み得る。
[0051]メモリ204は任意のデータ記憶機構を表し得る。メモリ204は、たとえば、1次メモリ204−1および/または2次メモリ204−2を含み得る。1次メモリ204−1は、たとえば、ランダムアクセスメモリ、読取り専用メモリなどを備え得る。この例では処理ユニットとは別個のものとして示されているが、1次メモリの全部または一部は、コンピューティングプラットフォーム200内の(1つまたは複数の)処理ユニット202または他の同様の回路内に設けられるか、あるいはさもなければそのような回路と共設/結合され(co-located/coupled)得ることを理解されたい。2次メモリ204−2は、たとえば、1次メモリと同じまたは同様のタイプのメモリ、および/または1つまたは複数のデータ記憶デバイスまたはシステム、たとえば、ディスクドライブ、光ディスクドライブ、テープドライブ、固体メモリドライブなどを備え得る。
[0052]いくつかの実装形態では、2次メモリは、非一時的コンピュータ可読媒体280を動作可能に受容するか、またはさもなければそれに結合するように構成され得る。メモリ204および/または非一時的コンピュータ可読媒体280は、たとえば、本明細書で提供する本技法および/または例示的な装置112(図1)および/または例示的なプロセス400(図4)による、データ処理に関連する命令282を備え得る。
[0053]コンピューティングプラットフォーム200は、たとえば、1つまたは複数の通信インターフェース208をさらに備え得る。(1つまたは複数の)通信インターフェース208は、たとえば、1つまたは複数のワイヤードおよび/またはワイヤレス通信リンクを介した、たとえば、(1つまたは複数の)ネットワーク120、モバイルデバイス104、および/または他のリソース(デバイス)130(図1)への接続性を与え得る。ここで示すように、(1つまたは複数の)通信インターフェース208は、1つまたは複数の受信機210、1つまたは複数の送信機212など、またはそれらの何らかの組合せを備え得る。(1つまたは複数の)通信インターフェース208は、1つまたは複数のワイヤードおよび/またはワイヤレス通信リンクをサポートするために必要とされ得る1つまたは複数の通信プロトコルを実装し得る。
[0054](1つまたは複数の)処理ユニット202および/または命令282は、たとえば、装置112、1つまたは複数のセンサー測定値220、1つまたは複数の推定軌道222、1つまたは複数の電子マップ224、動きモード226、移動した推定距離228、時間期間230、推定速度232、ステッピングアクション234、ステップカウント236、角速度238、配向240、推定された現在のヘッディング242、1つまたは複数の推定された前のヘッディング244、1つまたは複数の推定ロケーション246、1つまたは複数の中間地点248(および/またはそれらのロケーション)、ドリフト250などの1つまたは複数のエラー、粒子フィルタ252、粒子状態254、1つまたは複数の伝搬粒子256、ストライド頻度258、1つまたは複数の中間地点距離260、ヘッディングエラー262、1つまたは複数のコスト関数264、動的関数266、マッチングコスト268、1つまたは複数の回転特性270、1つまたは複数の個別回転割当て272、1つまたは複数のしきい値測定値274などの1つまたは複数のしきい値、1つまたは複数のストライド長276など、あるいはそれらの何らかの組合せなど、メモリ204に時々記憶され得る1つまたは複数の信号を与えるか、またはさもなければそれに関連付けられ得る。図2に示された要素のうちの1つまたは複数は、いくつかの実施形態では省略され得る。たとえば、要素220〜276のうちの1つまたは複数が省略され得る。
[0055]次に図3に注目すると、図3は、例示的な実装形態による、モバイルデバイス104のマップ支援センサーベース測位をサポートするためのモバイルデバイス104中の例示的なコンピューティングプラットフォーム300のいくつかの特徴を示す概略ブロック図である。
[0056]図示のように、コンピューティングプラットフォーム300は、(たとえば、本明細書で提供する技法、および/または装置110などに従って)データ処理を実行するための、1つまたは複数の接続306を介してメモリ304に結合された1つまたは複数の処理ユニット302を備え得る。(1つまたは複数の)処理ユニット302は、たとえば、ハードウェアまたはハードウェアとソフトウェアとの組合せで実装され得る。(1つまたは複数の)処理ユニット302は、データコンピューティング手順またはプロセスの少なくとも一部分を実行するように構成可能な1つまたは複数の回路を表し得る。限定ではなく例として、処理ユニットは、1つまたは複数のプロセッサ、コントローラ、マイクロプロセッサ、マイクロコントローラ、特定用途向け集積回路、デジタル信号プロセッサ、プログラマブル論理デバイス、フィールドプログラマブルゲートアレイなど、またはそれらの任意の組合せを含み得る。
[0057]メモリ304は任意のデータ記憶機構を表し得る。メモリ304は、たとえば、1次メモリ304−1および/または2次メモリ304−2を含み得る。1次メモリ304−1は、たとえば、ランダムアクセスメモリ、読取り専用メモリなどを備え得る。この例では処理ユニットとは別個のものとして示されているが、1次メモリの全部または一部は、モバイルデバイス104内の(1つまたは複数の)処理ユニット302または他の同様の回路内に設けられるか、あるいはさもなければそのような回路と共設/結合され得ることを理解されたい。2次メモリ304−2は、たとえば、1次メモリと同じまたは同様のタイプのメモリ、および/または1つまたは複数のデータ記憶デバイスまたはシステム、たとえば、ディスクドライブ、光ディスクドライブ、テープドライブ、固体メモリドライブなどを備え得る。
[0058]いくつかの実装形態では、2次メモリは、非一時的コンピュータ可読媒体380を動作可能に受容するか、またはさもなければそれに結合するように構成され得る。メモリ304および/または非一時的コンピュータ可読媒体380は、たとえば、本明細書で提供する本技法および/または例示的な装置110(図1)および/または例示的なプロセス400(図4)による、データ処理に関連する命令382を備え得る。
[0059]コンピューティングプラットフォーム300は、たとえば、1つまたは複数の通信インターフェース308をさらに備え得る。(1つまたは複数の)通信インターフェース308は、たとえば、1つまたは複数のワイヤードおよび/またはワイヤレス通信リンクを介した、たとえば、(1つまたは複数の)ネットワーク120、コンピューティングデバイス102、および/または他のリソース(デバイス)130(図1)への接続性を与え得る。ここで示すように、(1つまたは複数の)通信インターフェース308は、1つまたは複数の受信機310、1つまたは複数の送信機312など、またはそれらの何らかの組合せを備え得る。(1つまたは複数の)通信インターフェース308は、1つまたは複数のワイヤードおよび/またはワイヤレス通信リンクをサポートするために必要とされ得る1つまたは複数の通信プロトコルを実装し得る。(1つまたは複数の)通信インターフェース308は、いくつかの例示的な事例では、時々、モバイルデバイス104のロケーションを推定するために処理され得る、SPS信号152および/または他の信号ベース測位信号を受信することが可能な1つまたは複数の受信機をさらに備え得る。
[0060]いくつかの例示的な実装形態によれば、(1つまたは複数の)通信インターフェース208、(1つまたは複数の)通信インターフェース308、および/または(1つまたは複数の)ネットワーク120中の他のリソースは、たとえば、ワイヤレスワイドエリアネットワーク(WWAN)、ワイヤレスローカルエリアネットワーク(WLAN)、ワイヤレスパーソナルエリアネットワーク(WPAN)などの様々なワイヤレス通信ネットワークとともに使用することが可能であり得る。「ネットワーク」および「システム」という用語は、本明細書では互換的に使用され得る。WWANは、符号分割多元接続(CDMA)ネットワーク、時分割多元接続(TDMA)ネットワーク、周波数分割多元接続(FDMA)ネットワーク、直交周波数分割多元接続(OFDMA)ネットワーク、シングルキャリア周波数分割多元接続(SC−FDMA)ネットワークなどであり得る。CDMAネットワークは、ほんのいくつかの無線技術を挙げれば、cdma2000、広帯域CDMA(W−CDMA(登録商標))、時分割同期符号分割多元接続(TD−SCDMA)などの1つまたは複数の無線アクセス技術(RAT)を実装し得る。ここで、cdma2000は、IS−95規格、IS−2000規格、およびIS−856規格に従って実装される技術を含み得る。TDMAネットワークは、モバイル通信用グローバルシステム(GSM(登録商標):Global System for Mobile Communications)、デジタルアドバンストモバイルフォンシステム(D−AMPS:Digital Advanced Mobile Phone System)、または何らかの他のRATを実装し得る。GSMおよびW−CDMAは、「第3世代パートナーシッププロジェクト」(3GPP:3rd Generation Partnership Project)と称する団体からの文書に記載されている。cdma2000は、「第3世代パートナーシッププロジェクト2」(3GPP2:3rd Generation Partnership Project 2)と称する団体からの文書に記載されている。3GPPおよび3GPP2の文書は公的に入手可能である。たとえば、WLANはIEEE802.11xネットワークを含み得、WPANは、Bluetooth(登録商標)ネットワーク、IEEE802.15xを含み得る。ワイヤレス通信ネットワークは、たとえば、ロングタームエボリューション(LTE:Long Term Evolution)、アドバンストLTE、WiMAX(登録商標)、ウルトラモバイルブロードバンド(UMB:Ultra Mobile Broadband)など、いわゆる次世代技術(たとえば、「4G」)を含み得る。さらに、(1つまたは複数の)通信インターフェース208および/または(1つまたは複数の)通信インターフェース308は、1つまたは複数の他のデバイスとの赤外線ベース通信をさらに提供し得る。
[0061]モバイルデバイス104は、たとえば、1つまたは複数の入力/出力ユニット314をさらに備え得る。入力/出力ユニット314は、1つまたは複数の他のデバイスおよび/またはモバイルデバイス104のユーザから入力を取得し、および/またはそれに出力を与えるために使用され得る1つまたは複数のデバイスまたは他の同様の機構を表し得る。したがって、たとえば、入力/出力ユニット314は、1つまたは複数のユーザ入力を受信するために使用され得る様々なボタン、スイッチ、タッチパッド、トラックボール、ジョイスティック、タッチスクリーン、マイクロフォン、カメラなどを備え得る。いくつかの事例では、入力/出力ユニット314は、ユーザのための視覚出力、可聴出力、および/または触覚出力を生成する際に使用され得る様々なデバイスを備え得る。
[0062]モバイルデバイス104は、たとえば、1つまたは複数のセンサー316を備え得る。たとえば、(1つまたは複数の)センサー316は、環境100および/またはモバイルデバイス104の態様を検出するのに有用であり得る、1つまたは複数の慣性センサー、1つまたは複数の環境センサーなどを表し得る。したがって、たとえば、(1つまたは複数の)センサー316は、1つまたは複数の加速度計、1つまたは1つまたは複数のジャイロスコープまたはジャイロメータ、1つまたは複数の磁力計など、1つまたは複数の気圧計、1つまたは複数の温度計などを備え得る。さらに、いくつかの事例では、(1つまたは複数の)センサー316は、マイクロフォン、カメラ、光センサーなど、1つまたは複数の入力デバイスを備え得る。
[0063](1つまたは複数の)処理ユニット302および/または命令382は、たとえば、装置110、1つまたは複数のセンサー測定値220、1つまたは複数の推定軌道222、1つまたは複数の電子マップ224、動きモード226、移動した推定距離228、時間期間230、推定速度232、ステッピングアクション234、ステップカウント236、角速度238、配向240、推定された現在のヘッディング242、1つまたは複数の推定された前のヘッディング244、1つまたは複数の推定ロケーション246、1つまたは複数の中間地点248(および/またはそれらのロケーション)、ドリフト250などの1つまたは複数のエラー、粒子フィルタ252、粒子状態254、1つまたは複数の伝搬粒子256、ストライド頻度258、1つまたは複数の中間地点距離260、ヘッディングエラー262、1つまたは複数のコスト関数264、動的関数266、マッチングコスト268、1つまたは複数の回転特性270、1つまたは複数の個別回転割当て272、1つまたは複数のしきい値測定値274などの1つまたは複数のしきい値、1つまたは複数のストライド長276など、あるいはそれらの何らかの組合せなど、メモリ304に時々記憶され得る1つまたは複数の信号を与えるか、またはさもなければそれに関連付けられ得る。図3に示されている例示的なデータおよび/または命令は図2に示されている例示的なデータおよび/または命令と同じ参照番号を共有するが、いくつかの事例では、そのような例示的なデータおよび/または命令の全部または一部は明確に異なり得ることに留意されたい。図3に示された要素のうちの1つまたは複数は、いくつかの実施形態では省略され得る。たとえば、要素220〜276のうちの1つまたは複数が省略され得る。
[0064]次に図4に注目すると、図4は、例示的な実装形態による、モバイルデバイスのマップ支援センサーベース測位をサポートするために1つまたは複数のコンピューティングプラットフォームにおいて使用するプロセス400を示す例示的な図である。プロセス400は、たとえば、全体的または部分的に、装置110および/または装置112(図1)、コンピューティングプラットフォーム200(図2)、および/またはコンピューティングプラットフォーム300(図3)で実装され得る。
[0065]例示的なブロック402において、屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいてモバイルデバイスの軌道が推定され得る。たとえば、1つまたは複数のセンサー316を使用して取得された1つまたは複数のセンサー測定値220に少なくとも部分的に基づいて、1つまたは複数の推定軌道222(図2および図3参照)が判断され得る。
[0066]いくつかの事例では、ブロック404において、モバイルデバイスが移動した推定距離228、モバイルデバイスの推定速度232、推定された現在のヘッディング242、配向240など、またはそれらの何らかの組合せが判断され得る。たとえば、いくつかの実装形態では、1つまたは複数のセンサー測定値220に少なくとも部分的に基づいてモバイルデバイスについて判断されたかまたはさもなければ推論された動きのタイプを示し得る動きモード226が判断され得る。たとえば、いくつかの実装形態では、動きモードは、モバイルデバイスが、歩行中、ランニング中、および/またはさもなければ何らかの示された方法で移動中の人によって携帯されている可能性があることを示し得る。したがって、いくつかの実装形態では、動きモードは、たとえば、モバイルデバイス、たとえばモバイルデバイス104に搭載された、および/またはコンピューティングプラットフォーム300によって実装された、1つまたは複数のセンサー316によって観測される検出された移動および/または力の1つまたは複数の特性によって判断された、人の歩行中またはランニング中のストライドを示し得る、検出されたステッピングアクション234および/またはストライド頻度258に対応し得る。いくつかの実装形態では、ステップカウント236は、この場合も、1つまたは複数のセンサー316によって観測される検出された移動および/または力に基づいて判断され得る。特定のステッピングアクションおよび/またはステップカウントは、特定の推定ストライド長276(たとえば、ステップ間の距離)に対応し得、それは順に、移動した距離を推定する際に考慮され得る。同様に、移動した推定距離228を用いて、時間期間230中のモバイルデバイスの少なくとも平均移動速度を判断することが可能であり得る。さらに、いくつかの実装形態では、特定の時間においておよび/または特定の時間期間にわたってモバイルデバイスの推定速度232を判断することが可能であり得る。さらに、いくつかの実装形態では、センサー測定値220を使用して、たとえば、モバイルデバイスの軌道または他の推定された動きに対応するおよび/または環境に関する配向240を判断し得る。たとえば、磁力計センサーは、地球の磁界に関する特定の配向、たとえば、磁北、南などを示すセンサー測定値を与え得る。同様に、いくつかの実装形態では、1つまたは複数のセンサー測定値220に基づいて角速度238が判断されるかまたはさもなければ推定され得る。ここで、たとえば、ジャイロスコープおよび/または他の同様の慣性センサー、および/またはいくつかの他の環境センサーによって方向変化が検出され得る。適用可能なセンサー測定値220が与えられれば、および/またはモバイルデバイスの前の位置および/または軌道に関する何らかの情報がわかっていれば、モバイルデバイスに関する様々な測位および/または移動情報が判断されるかまたはさもなければ推定され得ることを認識されたい。したがって、いくつかの実装形態では、たとえば、1つまたは複数の前のヘッディング244、および/またはロケーション246などとともに1つまたは複数のセンサー測定値に基づいて、モバイルデバイスの現在のヘッディング242が判断され得る。たとえば、いくつかの実装形態では、現在のヘッディング242は、環境および/またはモバイルデバイスに対応する何らかの基準点または基準システムに対する特定の方向を示し得る。たとえば、環境に関連する現在のヘッディング242は、磁北からの角度方向などに対応し得る。たとえば、モバイルデバイスに関連する現在のヘッディング242は、内部基準軸からの角度などに対応し得る。
[0067]いくつかの態様によれば、例示的なブロック402および/または例示的なブロック404において実行される推定は、モバイルデバイスに関連する信号ベース測位情報を使用せずに実行され得ることに留意されたい。
[0068]例示的なブロック406において、屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて何らかの方法で、少なくとも推定された軌道に作用する。たとえば、1つまたは複数の電子マップ224は、モバイルデバイスを携帯している人が何らかの方法でその中を動き回り得る屋内環境内のいくつかのエリアを示し得る。たとえば、1つまたは複数の電子マップ224は、壁または他の同様の物体によって分離されたいくつかのルートまたは経路、いくつかの空間への入口、部屋、階段、エレベータなどを定義し得る。いくつかの実装形態では、1つまたは複数の電子マップ224は、屋内環境内をナビゲートしている人が従い得る、可能性があるかまたは可能なルートを示し得るルータビリティ図式(routability graph)などを備え得る。たとえば、ルータビリティ図式は、特定のルートまたは経路に沿って従われ得る、あるノードから次のノードに通じる1つまたは複数の相互接続エッジとともに、屋内環境内の特定のロケーションに関係する複数のノードを含み得る。
[0069]いくつかの事例では、ブロック408において、少なくとも部分的に、推定された軌道に作用するために、1つまたは複数の中間地点の1つまたは複数のロケーションが使用され得る。たとえば、いくつかの実装形態では、推定された軌道に作用するために1つまたは複数の中間地点248および/またはそれらのロケーションが適用され得る。いくつかの事例では、1つまたは複数の中間地点248の1つまたは複数のロケーションが、たとえば、ユーザ入力から取得されおよび/または電子マップの全部または一部に基づいて判断され得る。いくつかの実装形態では、1つまたは複数の中間地点距離260、たとえば中間地点までの距離または中間地点からの距離/あるいは中間地点間の距離が考慮に入れられ得る。いくつかの事例では、ブロック410において、少なくとも部分的に、推定された軌道に作用する際に、推定された軌道に関連する、ドリフト250、ヘッディングエラー262などの1つまたは複数のエラーが補正され得る。
[0070]これを考慮して、モバイルデバイスの軌道を推定するために使用され得る粒子フィルタなどに作用し得る何らかの方法で1つまたは複数のエラーが考慮されることを可能にするいくつかの例を以下に提示する。たとえば、粒子フィルタ252は、ドリフト250などの1つまたは複数のエラーを考慮に入れながら、1つまたは複数の伝搬粒子256を使用して粒子状態254を判断し得る。さらに、以下の例で提示するように、モバイルデバイスの軌道を判断する際に、装置110/112は、たとえば、1つまたは複数のコスト関数264、動的関数266、マッチングコスト268など、またはそれらの何らかの組合せを適用し得る。
[0071]本明細書で提供する技法を用いて、いくつかの例示的な実装形態では、1つまたは複数の回転特性270、1つまたは複数の個別回転割当て272など、またはそれらの何らかの組合せが判断され、モバイルデバイスの推定された軌道に作用するために使用され得る。
[0072]さらに、例示的なブロック412において、推定された軌道と電子マップとに少なくとも部分的に基づいてモバイルデバイスのロケーションが推定され得る。例示的なブロック414において、モバイルデバイスに関係する推定ロケーションおよび/または他の推定測位情報の全部または一部の提示が開始され得る。ここで、たとえば、提示は、少なくとも1つのユーザ出力デバイスを介したオーディオおよび/または視覚出力を備え得る。いくつかの事例では、提示は、1つまたは複数の他のデバイスに1つまたは複数のメッセージを送信することを備え得る。特定の例では、モバイルデバイスに関連付けられた人は、本明細書で提供するいくつかの技法を使用してそれらの人が屋内環境をナビゲートするときに追跡され得る。たとえば、警備員または郵便配達人、または場合によっては子供のロケーションおよび/またはルート/経路が、プロセス400において提示した技法などの技法を使用して屋内環境内で追跡され得る。さらに、そのような技法はまた、たとえば、コンテナ、機械など、人ではない物体に関連付けられたモバイルデバイスを追跡することおよび/またはそれの位置を特定することに適用され得る。いくつかの実施形態では、そのような位置特定および/または追跡は、たとえばモバイルデバイス104および/またはコンピューティングデバイス102において、リアルタイムで実行される。いくつかの実施形態では、そのような位置特定および/または追跡は、たとえばメモリ204および/または304に記憶されたデータに基づいて、ルートまたはルートの一部分をすでに移動した後に実行される。いくつかの実施形態では、モバイルデバイスに記憶されたデータは、経路が予想ルートと実質的に整合する(aligned)かどうかを判断するために、モバイルデバイスが経路に沿って移送された後に分析される。
[0073]いくつかの実施形態では、図4に示されたブロックのうちの1つまたは複数が省略されるかまたは並べ替えられ得る。たとえば、いくつかの実施形態では、ブロック412とブロック414の一方または両方が省略される。いくつかの実施形態では、ブロック404、408、および410のうちの1つまたは複数が代わりにまたはさらに省略される。
[0074]いくつかの実施形態では、ブロック402、404、406、408、410、412、および414のうちの1つまたは複数が、たとえばメモリ204もしくは304および/またはコンピュータ可読媒体280もしくは380と組み合わせた処理ユニット202および/または302によって実行または実装され得る。いくつかの実施形態では、たとえばブロック402、404、406、408、410、412、および414のうちの1つまたは複数がコンピューティングデバイス102において実行され得るように、情報および/または測定値が、モバイルデバイス104における通信インターフェース308から送信され、コンピューティングデバイス102の通信インターフェース208において受信され得る。いくつかの実施形態では、そのような送信および受信は省略される。
[0075]以下のセクションは、全体的または部分的に、それぞれ前のセクションで説明した例示的な装置110、例示的な装置112、例示的なコンピューティングプラットフォーム200、例示的なコンピューティングプラットフォーム300のうちの1つまたは複数で、および/または例示的なプロセス400もしくはそれの何らかの部分の一部として実装され得るいくつかの例示的な技法を提示することを意図したものである。
[0076]以下の例示的な技法は、コンシューマグレードまたはより良いグレードの慣性および/または環境センサーならびに基本的および/またはより高度な電子マップ情報および/またはそれに関連する中間地点を使用して正確な測位を達成し得る、いくつかの例示的なアルゴリズムおよび/または他の同様の実装可能な技法を示している。
[0077]多くのモバイルフォンおよび他の同様のモバイルデバイスは現在、動きを検出し、したがって、いくつかの条件下で測位情報を与えるために使用され得る、センサー(たとえば、加速度計、ジャイロスコープ、磁力計など)を装備している。信号ベース測位技法と比較して、いくつかの実装形態におけるセンサーベース測位は、より著しくエネルギー効率的であり得る。しかしながら、いくつかの事例では、対応する慣性測位が、角速度とステップカウントとを積算することを伴い得、それにより、たとえば、場合によっては、ユーザの体に対するモバイルデバイス、したがって(1つまたは複数の)センサーの位置の推定におけるセンサー雑音および/またはエラーに起因して、ドリフトエラーが大きくなり得る。たとえば、いくつかのセンサーは、ユーザの体に対するモバイルデバイスの位置に応じて、同じユーザの動きについて大幅に異なるセンサー測定値を生成し得る。
[0078]いくつかの態様によれば、屋内環境測位に関して、本明細書で提供するいくつかの例示的な技法は、いくつかの起こり得るドリフトエラーを低減するために、屋内環境の電子マップ内で識別された様々な物体を活用し得る。前述のように、いくつかの例示的な実装形態によれば、本明細書で提供する様々な技法は、モバイルデバイスに搭載された1つまたは複数のセンサーのセンサー測定値からオドメトリ(odometry)および/または他の同様の情報を取得し得る。本技法は、いくつかのドリフトエラーを低減(たとえば、補正)しようとする試みにおいて、1つまたは複数の電子マップ内で与えられる(および/またはさもなければそれを使用して取得された)何らかの情報をさらに利用し得る。
[0079]いくつかの例示的な実装形態では、電子マップ情報は、たとえば、ルートの一部としてあらかじめ決定されたおよび/または場合によっては1つまたは複数の他の測位技法によって過去に識別された、何らかの電子マップ情報に基づいて、ユーザ入力から取得され得る時々の位置フィックス(position fixes)の形態で、中間地点のセットを備え得る。いくつかの実装形態によれば、本明細書で提供する技法の全部または一部は、1つまたは複数の他のデバイスを支援する1つまたは複数のデバイスにおいて実装され、単一のデバイスにおいて実装され、スタンドアロンナビゲーションにおいて使用するために実装され、1つまたは複数の他の測位システムグランドトゥルース情報などを与える際に使用するために実装され、1つまたは複数の他のポスト測位またはトラッキング目的のために実装され得る。
[0080]いくつかの態様によれば、1つまたは複数のセンサーを使用して慣性オドメトリ情報が取得され得る。たとえば、いくつかの実装形態では、たとえば、1つまたは複数の加速度計からのセンサー測定値を使用して、ユーザのステップを検出しおよび/または1つまたは複数のステップ長を推定するために使用され得る技法が提供される。たとえば、いくつかの実装形態では、たとえば、1つまたは複数のジャイロスコープおよび/または1つまたは複数の磁力計などを使用して、モバイルデバイスの配向を推定しおよび/またはさもなければその変化を識別するために使用され得る技法が提供される。さらに、いくつかの例示的な実装形態によれば、ドリフトエラーをできる限り低減するために、電子マップおよび/またはそれに関係する中間地点に少なくとも部分的に基づくマッチング能力が考慮に入れられ得る。たとえば、いくつかの実装形態では、そのようなマッチング能力を実装するために粒子フィルタおよび/または他の同様のフィルタおよび/またはアルゴリズムが使用され得る。別の例では、いくつかの実装形態では、そのようなマッチング能力を実装するために個別回転割当てアルゴリズムなどが使用され得る。
[0081]いくつかの例示的な実装形態では、屋内環境および/またはそれの電子マップに対するモバイルデバイスの軌道および/または位置を推定するために、コンピューティングプラットフォームは、(1つまたは複数の)ユーザ入力から少なくとも部分的に取得され得る、以前に通過した経路(previously traversed path)の全部または一部に関する情報に、1つまたは複数のセンサーからのセンサー測定値を組み合わせ得る。予想される、より定常状態の重力ベクトルからz軸を判断するために、たとえば、調整されたz軸ジャイロなど、たとえば、いくつかのセンサー測定値を積算することによって少なくとも部分的に基づいて、推定ヘッディングが判断され得る。たとえば、1つまたは複数の加速度計から取得されたセンサー測定値によって少なくとも部分的に基づいて、ステップ頻度が推定され得る。いくつかの事例では、ステップ頻度を推定する際に有用であり得るいくつかのセンサー測定値は、たとえば、センサー測定値中に存在する雑音の量に応じて、積算されることも積算されないこともある。いくつかの例示的な実装形態では、ステップ頻度(f)とストライド長(l)とを関係付けるために、1つまたは複数の動きモーター他の同様のモデルが実装され得る。たとえば、いくつかの実装形態では、ストライド長lが、少なくとも部分的に、l=kfaなどの関数に基づいて判断され得、ここにおいて、パラメータkおよび/またはaは、推定(たとえば、プリプログラム)されおよび/または時間とともにユーザごとに学習(たとえば、動的にプログラム)され得る。いくつかの例示的な実装形態では、異なる動きモードについて複数の同様の関数および/またはパラメータが与えられ得る。たとえば、ストライド長および/または頻度は、ユーザが歩行中であるのかランニング中であるのかに応じて異なり得る。
[0082]次に図5および図6に注目すると、図5および図6は、何らかのステッピングアクションに関連する情報を判断する際に使用され得る例示的な慣性センサー測定値のプロットを示す例示的なグラフ500および600を提示している。
[0083]グラフ500は、たとえば、ステップを検出するために使用され得るいくつかのセンサー測定値を示している。ここで、たとえば、水平軸は時間を表し、垂直軸は、重力を補償した後の加速度計から取得された加速度の大きさ(プロットライン502)を表す。このデータは、ステップを検出するためにしきい値ベースフィルタを通過させられ(プロットライン504)、ここで、a+1は歩行の立脚期(stance phase)を示し、−1は遊脚期(swing phase)を示す。+1とそれに続く−1とのサイクルが1つのステップとして計数される。
[0084]グラフ600は、たとえば、たとえば[0071]において説明したように検出され得るステップカウントから計算されたステップ頻度(プロットライン602)を示している。水平軸は時間を表し、垂直軸は、たとえば、検出されたステップの数の移動ウィンドウ平均として計算され得る、固定時間間隔中のステップの数である、ステップ頻度である。
[0085]図7に、例示的な実装形態による、屋内環境をナビゲートしながらモバイルデバイスを携帯している人について、ジャイロスコープ、または磁力計などのセンサー、または何らかの他のソースから取得され得る、角度方位情報(angular orientation information)のみから推定された例示的な軌道に対応するプロットライン702を示すグラフ700を示す。ここで、たとえば、水平軸および垂直軸は、推定位置の座標を表し得る。この位置推定は、移動した距離または直線速度(linear velocities)に関する情報を使用しないので、軌道のスケーリングは著しいエラーを有し得ることに留意されたい。
[0086]図8に、例示的な実装形態による、オドメトリ情報などに少なくとも部分的に基づいて作用されたグラフ700の例示的な角度軌道データに少なくとも部分的に基づく、例示的な調整された軌道に対応するプロットライン802を示すグラフ800を示す。ここで、たとえば、水平軸および垂直軸は、推定位置の座標を表し得る。この例示的なデータでは、グラフ700に示された軌道は、グラフ600に示されているように計算されたステップ頻度を使用して、スケーリングエラーについて補正されている。
[0087]別の例として、図9に、別の例示的な実装形態による、屋内環境をナビゲートしながらモバイルデバイスを携帯している人の慣性センサー測定値および/または環境センサー測定値に関連する、ある例示的な角度軌道データに対応するプロットライン902を示すグラフ900を示す。ここで、たとえば、水平軸および垂直軸は、推定位置の座標を表し得る。図10に、例示的な実装形態による、オドメトリ情報などに少なくとも部分的に基づいて作用するグラフ900の例示的な角度軌道データに少なくとも部分的に基づく、例示的な調整された軌道1002を示すグラフ1000を示す。この場合も、水平軸および垂直軸は、推定位置の座標を表し得る。図9および図10は、図7および図8と同様であるが、データの異なるセットに基づく。
[0088]いくつかの例示的な実装形態によれば、軌道において生じ、場合によっては、センサー測定値を積算した結果としてアグリゲートし得る、ドリフトなどのエラーを低減するかまたはさもなければ補正するために、マッチング能力が与えられ得る。いくつかの例示的な実装形態によれば、1つのマッチング能力は、電子マップなど、および/または1つまたは複数のユーザ入力から(たとえば、オフラインで、動的になど、またはそれらの何らかの組合せで)取得され得る中間地点のロケーションを利用し得る。いくつかの例示的な実装形態では、この例示的なマッチング能力は、タイミング情報を考慮する必要がなく、中間地点のロケーションのシーケンスのみを考慮する必要があることに留意されたい。述べたように、いくつかの実装形態では、マッチング能力をサポートするおよび/またはさもなければ与えるために粒子フィルタなどが実装され得る。いくつかの他の実装形態では、能力をサポートするおよび/またはさもなければ与えるために個別回転割当てアルゴリズムなどが実装され得る。
[0089]マッチング能力をサポートするおよび/またはさもなければ与えるために粒子フィルタなどが実装され得るいくつかの例示的な実装形態では、(たとえば、電子マップ上にあるが、必ずしも識別された物体に関して実現可能な(feasible)軌道ラインに沿うとは限らない)位置、ヘッディング角度、ストライド長/頻度関係式(frequency relation)のためのスケーリングおよびべき指数(exponent)係数など、またはそれらの何らかの組合せを備える、粒子状態が生成され得る。例示的な粒子フィルタは、たとえば、軌道からの位置およびヘッディングを初期化し、たとえば、軌道の全体的な長さだけ調整して、スケーリングおよびべき指数を公称値(nominal value)の周りに分布させ得る。ステッピングアクションについておよび/または何らの他の時点において、例示的な粒子フィルタは、たとえば、状態の小さいランダム変動を可能にしながらセンサー測定値に従って粒子を伝搬し、場合によっては、実現可能な軌道ラインからしきい値測定値(たとえば、0.6メートルなど)だけそれたと見なされ得る粒子を効果的に除去(たとえば、廃棄、重み付け解除(de-weight)など)し、リサンプリングし得る。いくつかの実装形態によれば、例示的なリサンプリングにおいて、粒子フィルタは、1つまたは複数の実現可能な軌道ラインからより小さいアグリゲート偏差(smaller aggregate deviations)をもつより多くの粒子を選択的に重み付けし得る。あるロケーションに従って、例示的なリサンプリングにおいて、粒子フィルタは、(たとえば、前に学習したパラメータを有する)軌道にさらに進むにつれていくつかの偏差を減衰させ(attenuate)得る。いくつかの実装形態によれば、粒子フィルタは、回転量に比例するようにヘッディングエラーをモデル化し得る(たとえば、回転アクションは、非回転アクションよりもエラーを受けやすくなり得る)。いくつかの実装形態によれば、粒子フィルタは、残存している粒子の履歴を維持し得、それにより、より正確な後続の軌道および/または位置の推定が可能になり得る。いくつかの実装形態によれば、粒子フィルタは、特に1つまたは複数のパラメータ値を強調することに規定時間を超えて焦点を当てる(focus overtime)ために何らかの方法で反復し得る。
[0090]次に図11に注目すると、図11は、例示的な実装形態による、屋内環境の電子マップにおいて識別されたいくつかの物体の視覚表現と、初期軌道データに基づく初期ルート1102、および電子マップにおいて識別された物体のうちの1つまたは複数に少なくとも部分的に基づいて調整された初期軌道データに基づくさらに調整されたルート1104を示すオーバーレイとを示す図1100である。図示のように、何らかのドリフトエリアによって作用されているかのようにしか見えないが、実際にはユーザが通過することができないいくつかの物体(たとえば、オフィス壁など)を経路が通過するという点で実現不可能である経路を提示するようにも見える、初期ルート1102。しかしながら、マッチング能力を与えることが可能な例示的な粒子フィルタを実装することによって、調整されたルート1104においてドリフトエアが低減されるだけでなく、中間地点のロケーションを考慮に入れる得られた推定軌道が、電子マップにおいて識別された物体対する1つまたは複数の実現可能な経路にマッチングする。
[0091]いくつかの例示的な実装形態によれば、個別回転割当てアルゴリズムなどが実装され得る。たとえば、いくつかの実装形態では、個別回転割当てアルゴリズムは、コスト関数を最小限に抑えるために、示された軌道における中間地点を、オドメトリ情報などの中の検出されたステッピングアクションに割り当て得る。いくつかの実装形態では、個別回転割当てアルゴリズムは、たとえば、ストライドモデルなどに従って、1つまたは複数の実現可能な経路の1つまたは複数のセグメント内に検出されたステッピングアクションを分布させ得る。いくつかの例示的な実装形態によれば、例示的なコスト関数は、1つまたは複数の前のセグメントと比較される角度偏移、および/または公称値、平均値などからのスケーリング/べき指数変化を考慮に入れ得る。いくつかの例示的な実装形態によれば、ソリューションは、たとえば、できる限り、正確および/またはよりロバストなソリューションを提供し、および/または複雑さを低減するために、動的プログラミングを利用する。
[0092]次に図12および図13に注目する。図12は、例示的な実装形態による、(角度θ1、θ2、θ3、およびθ4によって表される)いくつかの回転を取りながら、中間地点(w1,w2,w3,w4)のロケーションのシーケンスを通って進む軌道の(距離d1、d2、d3、d4によって表される)変化するセクションを有するルート1200の視覚表示を示す図である。図13は、例示的な実装形態による、取られるステップが黒丸(solid circles)によって表されており、いくつかのステップが中間地点(w1,w2,w3,w4)のロケーションにマッチングされている、ルート1300の視覚表現を示す図である。
[0093]例示的なルート1200および1300に関して、個別回転割当てアルゴリズムは、個別回転割当ての適用に従って、(たとえば、ドリフトなどを低減するために)推定された軌道に作用し得る。たとえば、ルート1200に示されているように、中間地点が、慣性オドメトリ分析における検出されたステップに、コスト関数を最小限に抑える方法で割り当てられ得る。たとえば、ルート1300に示されているように、検出されたステップは、ストライドモデルに従って軌道のセグメントに沿って分布され得る。述べたように、コスト関数および/または他の同様のモデルは、前のセグメントと比較されるいくつかの角度偏移(angular deviations)と、ステップまたはストライドに関連する公称/平均値からのスケーリング/べき指数変化とを考慮に入れ得る。たとえば、ルート1200は、角度(θ)と距離(d)とによって表され得、コスト関数を使用して、ラベル付きの丸で囲まれた黒点によって表されるルート1300のような一連の検出されたステップ(w1,w2,w3,w4)にマッチングされ得る、中間地点(w)のセットを示している。
[0094]したがって、さらなる例として、以下を仮定する。
1.軌道:中間地点のシーケンス(w1,w2,...wk)、ただし、各wi=<θi,di>は角度と距離とに関連付けられ得る、
2.慣性オドメトリ:ステップのシーケンス(s1,s2,...sn)、ただし、各sj=<φj,lj>は角度と距離とに関連付けられ得る。
ステップへの中間地点のマッピングf:(w1,w2,...wk)→(s1,s2,...sn)は、以下の例示的なコスト関数を最小限に抑えるように判断され得る。
Figure 0006336992
[0095]例示的な成分corientationは、中間地点のロケーションに対する「マッチングされた」軌道の配向の差のコストを表し得る。たとえば、中間地点wi=<θi,di>がステップsj=<φj,lj>に割り当てられた場合、コストは単に|θi−φj|であり得る。しかしながら、ユーザステップにおいて回転が漸進的に発生し得、したがって、コストは、単一のステップの配向を使用して効果的に計算されることが可能でないことがある。したがって、いくつかの実装形態では、2はコストを計算し、たとえば、回転における配向の変化のためのガウスモデルなどを使用して、隣接するポイントの配向を考慮に入れ得る。
[0096]一例として、図14に注目すると、図14は、例示的な実装形態による、センサー測定値から取得された配向データ1404と、たとえば、動的関数などによって割り当てられ得る、適合回転モデリング情報1406とを示すグラフ1400および拡大図1402である。これらの図において、水平軸は秒での時間を表し、垂直軸はラジアンでの配向角度の変化を表す。
[0097]例示的な成分cscalingは、たとえば、ストライドモデルと慣性センサーデータとを使用して推定される距離に対して中間地点の連続ロケーションの間の距離をマッチングさせるコスト(マッチングコスト)を表し得る。したがって、たとえば、wi-1=<θi-1,di-1>がsj=<φj,lj>に割り当てられ、wi=<θi,di>がsk=<φk,lk>に割り当てられた場合、
Figure 0006336992
、および
Figure 0006336992
[0098]したがって、いくつかの例示的な実装形態では、解は、たとえば、以下のように、最適なサブ構造を活用することによって、動的関数などを使用して計算され得る。
Figure 0006336992
ただし、C(i,j)は、(wi,wi+1,...wk)を(sj,sj+1,...sn)にマッチングさせる最小コストである。
[0099]さらなる例として、図15および16に、動的関数を使用して最小限に抑えられたコスト関数を有する例示的な個別回転割当てアルゴリズムの実装形態の結果としての、いくつかの例示的な実装形態による、いくつかの初期ルート(1502および1602)と、対応する調整されたルート(1504および1604)とを示すオーバーレイとともに、いくつかの追加の例示的な屋内環境を示す、例示的な図1500および1600をそれぞれ提示する。図示のように、調整されたルート1504および1604のみが、例示的な屋内環境に示された様々な物体に関して連続的に実現可能な経路を提示している。
[00100]いくつかのさらなる例示的な実装形態によれば、中間地点のロケーションを利用しないことがあるいくつかのマッチング能力が与えられ得る。ここで、たとえば、粒子フィルタなどは、代わりに電子マップにおいて与えられた情報に基づいて動作して、必ずしも明示的中間地点を考慮に入れる必要があるとは限らない。いくつかの事例では、たとえば、動的プログラミングソリューションは、たとえば、電子マップにおいて識別されたいくつかの物体に関して、屋内環境内をナビゲートするユーザの能力に関して1つまたは複数の実現可能な経路に少なくとも部分的に基づく1つまたは複数の中間地点、および/または中間地点のシーケンスを仮定し得る。いくつかの例示的な事例では、1つまたは複数のそのような中間地点はまた、ユーザに関連する推定ストライド長、推定ストライド頻度、推定速度など、またはそれらの何らかの組合せを考慮に入れ、および/またはさもなければそれらに少なくとも部分的に基づいて選択され得る。いくつかの実装形態では、少なくとも部分的に、状況を仮定すれば不正確であると見なされ得る軌道および/または実現可能な経路を削除または重み解除するか、あるいはさもなければ識別するために、たとえば、電子マップ中の(および屋内環境における実際のロケーションに対応する)ロケーションに対する回転制約および/または他の同様の情報が使用され得る。
[00101]いくつかの態様によれば、そのようなマップベースの実現可能な経路および中間地点の選択技法は、高度に制約された場所(highly constrained locales)を有する屋内環境、たとえば、オフィスビルのために特に価値および利益があり得る。実際、そのような技法は、特に、特定の電子マップタイプ、構造物タイプ、間取り図、ユーザ、モバイルデバイス、センサー、コンピューティングプラットフォームなどに関する性能および/または精度の最適化であり得る。いくつかの事例では、そのような技法の全部または一部は前処理演算(a preprocessing operation)において実行され得る。ここで、たとえば、いくつかの実装形態では、および電子マップは、いくつかの共通のまたはさもなければ予想される中間地点のいくつかの実現可能な経路および/またはロケーションを示し得る、対応するおよび/または特殊目的のルーティング図式などを生成するような方法で前処理され得る。
[00102]いくつかの例示的な実装形態によれば、コンピューティングプラットフォームは、たとえば、最近生成されたセンサー測定値を用いた粒子フィルタなどを使用して、リアルタイムマッチング能力を実装するように与えられ得る。いくつかの例示的な実装形態では、十分な処理能力が与えられれば、動的プログラミング手法がリアルタイムで実装されることが可能であり得る。
[00103]いくつかの態様によれば、コンピューティングプラットフォームは、センサーベースオドメトリおよび電子マップ情報および/または他の定義された中間地点を使用してポスト測位を行い得る。本明細書で提示するように、いくつかの例示的な実装形態では、(1つまたは複数の)動的プログラミングベースの回転割当てアルゴリズムは、少なくとも部分的に、屋内環境の電子マップに関連する中間地点のロケーションおよび/または他の同様の情報を慣性センサーオドメトリ、環境センサーオドメトリなど、またはそれらの何らかの組合せにマッチングさせるように実装され得る。本明細書で提示するように、いくつかの例示的な実装形態では、粒子フィルタなど、および/または他の同様のアルゴリズムは、少なくとも部分的に、できる限りより良い軌道および/または位置推定値を促し、ドリフトエラーなどのエラーを低減し、および/または場合によってはストライドスケーリング係数および/または他の同様の情報を考慮に入れるように実装され得る。いくつかの実装形態では、1つまたは複数のセンサー測定値が、モバイルデバイスによって取得され、たとえば、軌道を判断するための電子マップへの比較など、後の使用のために記憶され得ることを理解されたい。そのようなセンサー測定値は、たとえば、モバイルデバイスの1つまたは複数の測位/ナビゲーション能力をサポートすること、1つまたは複数の電子マップの全部または一部を生成および/または更新することなど、様々な使用のために、たとえば、モバイルデバイス内で使用されおよび/または1つまたは複数の他のコンピューティングプラットフォームに通信され得る。
[00104]いくつかのさらなる態様によれば、コンピューティングプラットフォームは、たとえば、いくつかの電子マップ情報および/または中間地点のあらかじめ定義されたロケーションなどとともに、センサー測定値ベースのオドメトリなどを使用して、より多くのリアルタイム測位能力を与え得る。いくつかの実装形態では、粒子フィルタなどが、たとえば、いくつかの電子マップおよび/または中間地点制約を強制することによってモバイルデバイスの軌道および/または位置を推定するように実装され得る。いくつかの実装形態では、動的プログラミングソリューションが、たとえば、モバイルデバイスの軌道および/または位置を推定するのをサポートする電子マップ内の複数の実現可能な経路を探査するように実装され得る。
[00105]したがって、いくつかの態様によれば、本明細書で提供する技法は、モバイルデバイスに搭載されて取得された1つまたは複数のセンサー測定値に基づいて推定された軌道を判断する際に考慮されるべき屋内環境内の複数の潜在的な経路、ただしいくつかの実施形態では、すべての潜在的な経路を考慮に入れ得る。その上、推定された軌道は、時々、1つまたは複数のセンサー測定値に少なくとも部分的に関連するエラーを備え、および/またはそれから生じ得る。ただし、そのようなエラーの影響は、屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて推定された軌道に作用することによって低減され得る。したがって、たとえば本明細書で指摘したように、いくつかの実装形態では、ドリフト250は、電子マップに基づいてモバイルデバイスの推定された軌道が作用されるとき、少なくとも部分的に補正されるかまたはさもなければ考慮に入れられ得る。したがって、モバイルデバイスの軌道および/または状態は、常に利用可能であるとは限らない信号ベース測位技法を使用せずに推定され得る。
[00106]いくつかの態様によれば、コンピューティングプラットフォームは、リアルタイム測位能力および/またはポスト測位能力の組合せを提供し得る。いくつかの実装形態では、そのような能力は、複数のデバイスの間で分散させられ、および/または1つまたは複数のコンピューティングプラットフォームを有する単一のデバイス内で実行され得る。いくつかの例示的な実装形態によれば、センサー測定値と電子マップ情報とに基づいて屋内環境内のモバイルデバイスの軌道および/または位置を推定する本明細書で提供する技法は、信号ベース測位信号の使用および/または考慮なしに実装され得る。
[00107]本明細書で説明した方法は、特定の特徴および/または例に従って適用例に応じて様々な手段によって実装され得る。たとえば、そのような方法は、ソフトウェアとともにハードウェア、ファームウェア、および/またはそれらの組合せで実装され得る。ハードウェア実装の場合、たとえば、処理ユニットは、1つまたは複数の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、電子デバイス、本明細書で説明した機能を実行するように設計された他のデバイスユニット、および/またはそれらの組合せの中で実装され得る。
[00108]上記の詳細な説明では、特許請求する主題の完全な理解を与えるために多数の具体的な詳細を記載した。ただし、特許請求する主題は、これらの具体的な詳細なしに実施され得ることが当業者には理解されよう。他の事例では、特許請求する主題を不明瞭にしないように、当業者に知られているであろう方法および装置については詳細に説明していない。
[00109]上記の詳細な説明のいくつかの部分は、特定の装置あるいは特殊目的コンピューティングデバイスまたはプラットフォームのメモリ内に記憶された2値デジタル電子信号の演算のアルゴリズムまたは記号表現(symbolic representations)に関して提示した。この特定の明細書のコンテキストでは、特定の装置などの用語は、プログラムソフトウェアからの命令に従って特定の機能を実行するようにプログラムされた後の汎用コンピュータを含む。アルゴリズム記述または記号表現は、信号処理または関連技術の当業者がそれらの仕事(work)の本質を他の当業者に伝達するために使用する技法の例である。アルゴリズムは、本明細書では、また一般に、所望の結果につながる自己矛盾のない一連の演算または同様の信号処理であると考えられる。このコンテキストでは、演算または処理は物理量の物理的操作を伴う。必ずしもそうとは限らないが、一般に、電子信号は情報を表すので、そのような量は、記憶、転送、組合せ、比較、または他の方法で操作されることが可能な電気信号または磁気信号の形態をとり得る。主に一般的な用法という理由で、そのような信号をビット、データ、値、要素、記号、文字、項、数、数字、情報などと呼ぶことが時々便利であることがわかっている。ただし、これらおよび同様の用語はすべて、適切な物理量に関連付けられるべきであり、便宜的なラベルにすぎないことを理解されたい。別段に明記されていない限り、以下の説明から明らかなように、本明細書全体にわたって、「処理する」、「算出する」、「計算する」、「判断する」、「確立する」、「取得する」、「識別する」、「適用する」などの用語を利用する説明は、専用コンピュータまたは同様の専用電子コンピューティングデバイスなど、特定の装置のアクションまたはプロセスを指すことを諒解されたい。したがって、本明細書のコンテキストでは、専用コンピュータまたは同様の専用電子コンピューティングデバイスは、専用コンピュータまたは同様の専用電子コンピューティングデバイスのメモリ、レジスタ、または他の情報記憶デバイス、送信デバイス、またはディスプレイデバイス内の、電子的または磁気的な物理量として一般に表される信号を操作または変換することが可能である。この特定の特許出願のコンテキストでは、「特定の装置」という用語は、プログラムソフトウェアからの命令に従って特定の機能を実行するようにプログラムされた後の汎用コンピュータを含み得る。
[00110]本明細書で使用する「および」、「または」、および「および/または」という用語は、そのような用語が使用されるコンテキストに少なくとも部分的に依存することも予想される様々な意味を含み得る。一般に、「または」がA、BまたはCなどのリストを関連付けるために使用される場合、ここで包含的な意味で使用されるA、B、およびCを意味し、ならびにここで排他的な意味で使用されるA、BまたはCを意味するものとする。さらに、本明細書で使用する「1つまたは複数」という用語は、単数形の任意の特徴、構造、もしくは特性について説明するために使用され得るか、または複数の特徴、構造もしくは特性、または特徴、構造もしくは特性の何らかの他の組合せについて説明するために使用され得る。ただし、これは例示的な例にすぎないこと、および特許請求する主題はこの例に限定されないことに留意されたい。
[00111]現在例示的な特徴と考えられることについて例示し説明したが、特許請求する主題から逸脱することなく、様々な他の変更が行われ得、均等物が代用され得ることが、当業者には理解されよう。さらに、本明細書で説明した中心概念から逸脱することなく、特許請求する主題の教示に特定の状況を適合させるための多くの変更が行われ得る。
[00112]したがって、特許請求する主題は、開示する特定の例に限定されず、そのような特許請求する主題はまた、添付の特許請求の範囲内に入るすべての態様とそれらの均等物とを含み得るものとする。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]少なくとも1つのコンピューティングプラットフォームを用いて、
屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいて前記モバイルデバイスの軌道を推定することと、
前記屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて前記推定された軌道に作用することと
を備える方法。
[C2]前記軌道を前記推定することは、
前記モバイルデバイスにおける少なくとも1つの加速度計から取得された前記1つまたは複数のセンサー測定値のうちの少なくとも1つに少なくとも部分的に基づいて、動きモードに関連する少なくとも1つのアクションの発生を検出することと、
前記少なくとも1つのアクションの前記発生に少なくとも部分的に基づいて、ある時間期間中に前記モバイルデバイスが移動した距離、または前記時間期間中の前記モバイルデバイスの速度のうちの少なくとも1つを推定することと
をさらに備える、[C1]に記載の方法。
[C3]前記動きモードが二足歩行移動モードを備え、前記少なくとも1つのアクションが少なくとも1つのステッピングアクションを備え、
前記少なくとも1つのステッピングアクションの、推定ストライド長、または推定ストライド頻度のうちの少なくとも1つに少なくとも部分的に基づいて、移動した前記距離、または前記速度のうちの少なくとも1つを推定すること
をさらに備える、[C2]に記載の方法。
[C4]移動した前記距離、または前記速度のうちの少なくとも1つを推定することが、
ステップカウントを積算すること
をさらに備える、[C3]に記載の方法。
[C5]前記軌道を前記推定することは、
前記モバイルデバイスにおけるジャイロスコープ、または前記モバイルデバイスにおける磁力計のうちの少なくとも1つから取得された前記1つまたは複数のセンサー測定値のうちの少なくとも1つに少なくとも部分的に基づいて、前記モバイルデバイスの配向の変化が発生したのか発生しなかったのかを判断することと、
前記配向の前記変化が発生したのか発生しなかったのかの前記判断に少なくとも部分的に基づいて前記モバイルデバイスの現在のヘッディングを推定することと
をさらに備える、[C1]に記載の方法。
[C6]前記モバイルデバイスの前記現在のヘッディングを前記推定することが、
少なくとも1つの前に推定されたヘッディングに少なくとも部分的に基づいて前記モバイルデバイスの前記現在のヘッディングを推定すること
をさらに備える、[C5]に記載の方法。
[C7]前記推定された軌道に前記作用することが、
前記電子マップにおいて識別された前記1つまたは複数の物体のうちの少なくとも1つに少なくとも部分的に基づいて定義された1つまたは複数の中間地点の1つまたは複数のロケーションを使用すること
をさらに備える、[C1]に記載の方法。
[C8]前記少なくとも1つのコンピューティングプラットフォームを用いて、
前記モバイルデバイスのユーザインターフェースから受信された少なくとも1つの入力に少なくとも部分的に基づいて前記1つまたは複数の中間地点の前記1つまたは複数のロケーションのうちの少なくとも1つを取得すること
をさらに備える、[C7]に記載の方法。
[C9]前記少なくとも1つのコンピューティングプラットフォームを用いて、
前記電子マップに少なくとも部分的に基づいて前記1つまたは複数の中間地点の前記1つまたは複数のロケーションのうちの少なくとも1つを判断すること
をさらに備える、[C7]に記載の方法。
[C10]前記推定された軌道に前記作用することが、
少なくとも部分的に、粒子フィルタを使用して、前記推定された軌道のドリフトを補正すること
をさらに備える、[C1]に記載の方法。
[C11]前記粒子フィルタは、前記電子マップ上の前記モバイルデバイスの推定位置、前記モバイルデバイスの推定ヘッディング、ある時間期間中に前記モバイルデバイスが移動した推定距離、または前記時間期間中の前記モバイルデバイスの推定速度のうちの少なくとも1つに少なくとも部分的に基づいて、粒子状態を維持する、[C10]に記載の方法。
[C12]前記推定ヘッディングが、推定回転特性に少なくとも部分的に基づくヘッディングエラーに関連付けられる、[C11]に記載の方法。
[C13]前記粒子フィルタが、前記推定された軌道からしきい値測定値超だけそれる伝搬粒子を除去することに少なくとも部分的に基づいて粒子状態を維持する、[C10]に記載の方法。
[C14]前記粒子フィルタが、前記モバイルデバイスにおいて取得された前記1つまたは複数のセンサー測定値のうちの少なくとも1つに少なくとも部分的に基づいて粒子を伝搬する、[C10]に記載の方法。
[C15]前記推定された軌道に前記作用することが、
少なくとも部分的に、コスト関数に少なくとも部分的に基づく個別回転割当てを使用して、前記推定された軌道のドリフトを補正すること
をさらに備える、[C1]に記載の方法。
[C16]前記コスト関数は、ある時間期間中の前記推定された軌道と比較される前記モバイルデバイスの配向の差に対応するコスト、または前記時間期間中に前記モバイルデバイスが移動した推定された距離に対する前記推定された軌道上の連続する中間地点間の距離に対応するコストのうちの少なくとも1つを考慮に入れる、[C15]に記載の方法。
[C17]前記コスト関数が、マッチングコストを最小限に抑えるための動的関数を使用して計算される、[C15]に記載の方法。
[C18]前記少なくとも1つのコンピューティングプラットフォームが前記モバイルデバイス中に設けられる、[C1]に記載の方法。
[C19]前記少なくとも1つのコンピューティングプラットフォームを用いて、
前記推定された軌道と前記電子マップとに少なくとも部分的に基づいて前記モバイルデバイスのロケーションを推定すること
をさらに備える、[C18]に記載の方法。
[C20]前記少なくとも1つのコンピューティングプラットフォームを用いて、
前記モバイルデバイスの少なくとも1つのユーザ出力デバイスを介して前記モバイルデバイスの前記推定されたロケーションの提示を開始すること
をさらに備える、[C19]に記載の方法。
[C21]前記推定することが、前記屋内環境の前記電子マップに少なくとも部分的に基づいて、前記屋内環境における複数の潜在的な軌道から前記軌道を推定することを備える、[C1]に記載の方法。
[C22]前記推定することが、信号ベース測位情報を使用せずに前記モバイルデバイスの前記軌道を推定することを備える、[C1]に記載の方法。
[C23]屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいて前記モバイルデバイスの軌道を推定するための手段と、
前記屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて前記推定された軌道に作用するための手段と
を備える装置。
[C24]メモリと、
屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいて前記モバイルデバイスの軌道を推定することと、
前記メモリを介してアクセス可能な前記屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて前記推定された軌道に作用することと
を行うための1つまたは複数の処理ユニットと
を備えるコンピューティングプラットフォーム。
[C25]前記1つまたは複数の処理ユニットは、
前記モバイルデバイスにおける少なくとも1つの加速度計から取得された前記1つまたは複数のセンサー測定値のうちの少なくとも1つに少なくとも部分的に基づいて、動きモードに関連する少なくとも1つのアクションの発生を検出することと、
前記少なくとも1つのアクションの前記発生に少なくとも部分的に基づいて、ある時間期間中に前記モバイルデバイスが移動した距離、または前記時間期間中の前記モバイルデバイスの速度のうちの少なくとも1つを推定することと
をさらに行うためのものである、[C24]に記載のコンピューティングプラットフォーム。
[C26]前記動きモードが二足歩行移動モードを備え、前記少なくとも1つのアクションが少なくとも1つのステッピングアクションを備え、前記1つまたは複数の処理ユニットが、
前記少なくとも1つのステッピングアクションの、推定ストライド長、または推定ストライド頻度のうちの少なくとも1つに少なくとも部分的に基づいて、移動した前記距離、または前記速度のうちの少なくとも1つを推定すること
をさらに行うためのものである、[C25]に記載のコンピューティングプラットフォーム。
[C27]前記1つまたは複数の処理ユニットが、
さらにステップカウントを積算すること
によって、移動した前記距離、または前記速度のうちの少なくとも1つを推定することをさらに行うためのものである、[C26]に記載のコンピューティングプラットフォーム。
[C28]前記1つまたは複数の処理ユニットは、
前記モバイルデバイスにおけるジャイロスコープ、または前記モバイルデバイスにおける磁力計のうちの少なくとも1つから取得された前記1つまたは複数のセンサー測定値のうちの少なくとも1つに少なくとも部分的に基づいて、前記モバイルデバイスの配向の変化が発生したのか発生しなかったのかを判断することと、
前記配向の前記変化が発生したのか発生しなかったのかの前記判断に少なくとも部分的に基づいて前記モバイルデバイスの現在のヘッディングを推定することと
をさらに行うためのものである、[C24]に記載のコンピューティングプラットフォーム。
[C29]前記1つまたは複数の処理ユニットが、
少なくとも1つの前に推定されたヘッディングに少なくとも部分的に基づいて前記モバイルデバイスの前記現在のヘッディングを推定すること
をさらに行うためのものである、[C28]に記載のコンピューティングプラットフォーム。
[C30]前記1つまたは複数の処理ユニットが、前記電子マップにおいて識別された前記1つまたは複数の物体のうちの少なくとも1つに少なくとも部分的に基づいて定義された1つまたは複数の中間地点の1つまたは複数のロケーションに少なくとも部分的に基づいて前記推定された軌道に作用することを行うためのものである、[C24]に記載のコンピューティングプラットフォーム。
[C31]前記1つまたは複数の処理ユニットが、
前記モバイルデバイスのユーザインターフェースから受信され、前記メモリを介してアクセス可能な少なくとも1つの入力に少なくとも部分的に基づいて前記1つまたは複数の中間地点の前記1つまたは複数のロケーションのうちの少なくとも1つを取得すること
をさらに行うためのものである、[C30]に記載のコンピューティングプラットフォーム。
[C32]前記1つまたは複数の処理ユニットが、
前記電子マップに少なくとも部分的に基づいて前記1つまたは複数の中間地点の前記1つまたは複数のロケーションのうちの少なくとも1つを判断すること
をさらに行うためのものである、[C30]に記載のコンピューティングプラットフォーム。
[C33]前記1つまたは複数の処理ユニットが、少なくとも部分的に、粒子フィルタを使用して、前記推定された軌道のドリフトを補正することによって少なくとも部分的に基づいて、前記推定された軌道に作用することをさらに行うためのものである、[C24]に記載のコンピューティングプラットフォーム。
[C34]前記粒子フィルタは、前記電子マップ上の前記モバイルデバイスの推定位置、前記モバイルデバイスの推定ヘッディング、ある時間期間中に前記モバイルデバイスが移動した推定距離、または前記時間期間中の前記モバイルデバイスの推定速度のうちの少なくとも1つに少なくとも部分的に基づいて、粒子状態を維持する、[C33]に記載のコンピューティングプラットフォーム。
[C35]前記推定ヘッディングが、推定回転特性に少なくとも部分的に基づくヘッディングエラーに関連付けられる、[C34]に記載のコンピューティングプラットフォーム。
[C36]前記粒子フィルタが、前記推定された軌道からしきい値測定値超だけそれる伝搬粒子を除去することに少なくとも部分的に基づいて粒子状態を維持する、[C33]に記載のコンピューティングプラットフォーム。
[C37]前記粒子フィルタが、前記モバイルデバイスにおいて取得された前記1つまたは複数のセンサー測定値のうちの少なくとも1つに少なくとも部分的に基づいて粒子を伝搬する、[C33]に記載のコンピューティングプラットフォーム。
[C38]前記1つまたは複数の処理ユニットが、少なくとも部分的に、コスト関数に少なくとも部分的に基づく個別回転割当てを使用して、前記推定された軌道のドリフトを補正することに少なくとも部分的によって、前記推定された軌道に作用することを行うためのものである、[C24]に記載のコンピューティングプラットフォーム。
[C39]前記コスト関数は、ある時間期間中の前記推定された軌道と比較される前記モバイルデバイスの配向の差に対応するコスト、または前記時間期間中に前記モバイルデバイスが移動した推定された距離に対する前記推定された軌道上の連続する中間地点間の距離に対応するコストのうちの少なくとも1つを考慮に入れる、[C38]に記載のコンピューティングプラットフォーム。
[C40]前記コスト関数が、マッチングコストを最小限に抑えるための動的関数を使用して計算される、[C38]に記載のコンピューティングプラットフォーム。
[C41]前記コンピューティングプラットフォームが前記モバイルデバイス中に設けられる、[C24]に記載のコンピューティングプラットフォーム。
[C42]前記1つまたは複数の処理ユニットが、
前記推定された軌道と前記電子マップとに少なくとも部分的に基づいて前記モバイルデバイスのロケーションを推定すること
をさらに行うためのものである、[C41]に記載のコンピューティングプラットフォーム。
[C43]前記モバイルデバイスが少なくとも1つのユーザ出力デバイスをさらに備え、前記1つまたは複数の処理ユニットが、前記少なくとも1つのユーザ出力デバイスを介して前記モバイルデバイスの前記推定されたロケーションの提示を開始することをさらに行うためのものである、[C42]に記載のコンピューティングプラットフォーム。
[C44]屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいて前記モバイルデバイスの軌道を推定することと、
前記屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて前記推定された軌道に作用することと
を行うようにコンピューティングプラットフォーム中の1つまたは複数の処理ユニットによって実行可能なコンピュータ実装可能命令を記憶した非一時的コンピュータ可読媒体。

Claims (15)

  1. 少なくとも1つのコンピューティングプラットフォームを用いて、
    屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいて前記モバイルデバイスの軌道を推定することと、
    前記モバイルデバイスのユーザインターフェースから受信された少なくとも1つの入力に少なくとも部分的に基づいて中間地点の1つまたは複数のロケーションのうちの少なくとも1つを取得することと、前記1つまたは複数の中間地点の前記ロケーションが、前記屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて定義され、前記1つまたは複数の中間地点はさらに、前記モバイルデバイスのユーザが従う予定ルートのルーティング方向に少なくとも部分的に基づいて判断され、前記中間地点は、前記屋内環境内の1つまたは複数の物体の配置に関して定義され、
    前記推定された軌道のドリフトを補正するために、前記1つまたは複数の中間地点の前記1つまたは複数のロケーションに少なくとも部分的に基づいて前記推定された軌道に作用することと
    を備え
    前記推定された軌道に前記作用することが、
    少なくとも部分的に、コスト関数に少なくとも部分的に基づく個別回転割当てアルゴリズムを使用して、前記推定された軌道のドリフトを補正すること
    をさらに備え、前記個別回転割当てアルゴリズムは、前記中間地点を、前記1つまたは複数のセンサー測定値から取得されたオドメトリ情報中の検出されたステッピングアクションに割り当てる、方法。
  2. 前記軌道を前記推定することは、
    前記モバイルデバイスにおける少なくとも1つの加速度計から取得された前記1つまたは複数のセンサー測定値のうちの少なくとも1つに少なくとも部分的に基づいて、動きモードに関連する少なくとも1つのアクションの発生を検出することと、
    前記少なくとも1つのアクションの前記発生に少なくとも部分的に基づいて、ある時間期間中に前記モバイルデバイスが移動した距離、または前記時間期間中の前記モバイルデバイスの速度のうちの少なくとも1つを推定することと
    をさらに備える、請求項1に記載の方法。
  3. 前記動きモードが二足歩行移動モードを備え、前記少なくとも1つのアクションが少なくとも1つのステッピングアクションを備え、
    前記少なくとも1つのステッピングアクションの、推定ストライド長、または推定ストライド頻度のうちの少なくとも1つに少なくとも部分的に基づいて、移動した前記距離、または前記速度のうちの少なくとも1つを推定すること
    をさらに備える、請求項2に記載の方法。
  4. 移動した前記距離、または前記速度のうちの少なくとも1つを推定することが、
    ステップカウントを積算すること
    をさらに備える、請求項3に記載の方法。
  5. 前記軌道を前記推定することは、
    前記モバイルデバイスにおけるジャイロスコープ、または前記モバイルデバイスにおける磁力計のうちの少なくとも1つから取得された前記1つまたは複数のセンサー測定値のうちの少なくとも1つに少なくとも部分的に基づいて、前記モバイルデバイスの配向の変化が発生したのか発生しなかったのかを判断することと、
    前記配向の前記変化が発生したのか発生しなかったのかの前記判断に少なくとも部分的に基づいて前記モバイルデバイスの現在のヘッディングを推定することと
    をさらに備える、請求項1に記載の方法。
  6. 前記モバイルデバイスの前記現在のヘッディングを前記推定することが、
    少なくとも1つの前に推定されたヘッディングに少なくとも部分的に基づいて前記モバイルデバイスの前記現在のヘッディングを推定すること
    をさらに備える、請求項5に記載の方法。
  7. 前記推定された軌道に前記作用することが、
    少なくとも部分的に、粒子フィルタを使用して、前記推定された軌道のドリフトを補正すること
    をさらに備え、
    前記粒子フィルタは、前記電子マップ上の前記モバイルデバイスの推定位置、前記モバイルデバイスの推定ヘッディング、ある時間期間中に前記モバイルデバイスが移動した推定距離、または前記時間期間中の前記モバイルデバイスの推定速度のうちの少なくとも1つに少なくとも部分的に基づいて、粒子状態を維持し、
    前記推定ヘッディングは、回転量に比例するようにモデル化されたヘッディングエラーに関連付けられる、請求項1に記載の方法。
  8. 前記粒子フィルタが、前記推定された軌道からしきい値超だけそれる伝搬粒子を除去することに少なくとも部分的に基づいて粒子状態を維持する、および/または、
    前記粒子フィルタが、前記モバイルデバイスにおいて取得された前記1つまたは複数のセンサー測定値のうちの少なくとも1つに少なくとも部分的に基づいて粒子を伝搬する、請求項7に記載の方法。
  9. 記コスト関数は、ある時間期間中の前記推定された軌道と比較される前記モバイルデバイスの配向の差に対応するコスト、または前記時間期間中に前記モバイルデバイスが移動した推定された距離に対する前記推定された軌道上の連続する中間地点間の距離に対応するコストのうちの少なくとも1つを考慮に入れる、請求項1に記載の方法。
  10. 前記コスト関数が、マッチングコストを最小限に抑えるための動的関数を使用して計算される、請求項9に記載の方法。
  11. 前記少なくとも1つのコンピューティングプラットフォームが前記モバイルデバイス中に設けられ
    記少なくとも1つのコンピューティングプラットフォームを用いて、
    前記推定された軌道と前記電子マップとに少なくとも部分的に基づいて前記モバイルデバイスのロケーションを推定すること
    をさらに備え
    記少なくとも1つのコンピューティングプラットフォームを用いて、
    前記モバイルデバイスの少なくとも1つのユーザ出力デバイスを介して前記モバイルデバイスの前記推定されたロケーションの提示を開始すること
    をさらに備える、請求項1に記載の方法。
  12. 前記推定することが、前記屋内環境の前記電子マップに少なくとも部分的に基づいて、前記屋内環境における複数の潜在的な軌道から前記軌道を推定することを備える、請求項1に記載の方法。
  13. 前記推定することが、信号ベース測位情報を使用せずに前記モバイルデバイスの前記軌道を推定することを備える、請求項1に記載の方法。
  14. 屋内環境内のモバイルデバイスにおいて取得された1つまたは複数のセンサー測定値に少なくとも部分的に基づいて前記モバイルデバイスの軌道を推定するための手段と、
    前記モバイルデバイスのユーザインターフェースから受信された少なくとも1つの入力に少なくとも部分的に基づいて中間地点の1つまたは複数のロケーションのうちの少なくとも1つを取得するための手段と、前記1つまたは複数の中間地点の前記ロケーションが、前記屋内環境の電子マップにおいて識別された1つまたは複数の物体に少なくとも部分的に基づいて定義され、前記1つまたは複数の中間地点はさらに、前記モバイルデバイスのユーザが従う予定ルートのルーティング方向に少なくとも部分的に基づいて判断され、前記中間地点は、前記屋内環境内の1つまたは複数の物体の配置に関して定義され、
    前記推定された軌道のドリフトを補正するために、前記1つまたは複数の中間地点の前記1つまたは複数のロケーションに少なくとも部分的に基づいて前記推定された軌道に作用するための手段と
    を備え
    前記推定された軌道に作用するための前記手段が、
    少なくとも部分的に、コスト関数に少なくとも部分的に基づく個別回転割当てアルゴリズムを使用して、前記推定された軌道のドリフトを補正するための手段
    をさらに備え、前記個別回転割当てアルゴリズムは、前記中間地点を、前記1つまたは複数のセンサー測定値から取得されたオドメトリ情報中の検出されたステッピングアクションに割り当てる、装置。
  15. 請求項1乃至13のいずれかの方法ステップを実行するようにコンピューティングプラットフォーム中の1つまたは複数の処理ユニットによって実行可能なコンピュータ実装可能命令を記憶した非一時的コンピュータ可読媒体。
JP2015537723A 2012-10-22 2013-10-08 モバイルデバイスのマップ支援センサーベース測位 Active JP6336992B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/657,428 2012-10-22
US13/657,428 US9116000B2 (en) 2012-10-22 2012-10-22 Map-assisted sensor-based positioning of mobile devices
PCT/US2013/063756 WO2014066024A1 (en) 2012-10-22 2013-10-08 Map-assisted sensor-based positioning of mobile devices

Publications (3)

Publication Number Publication Date
JP2016502069A JP2016502069A (ja) 2016-01-21
JP2016502069A5 JP2016502069A5 (ja) 2016-11-04
JP6336992B2 true JP6336992B2 (ja) 2018-06-06

Family

ID=49486668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015537723A Active JP6336992B2 (ja) 2012-10-22 2013-10-08 モバイルデバイスのマップ支援センサーベース測位

Country Status (6)

Country Link
US (1) US9116000B2 (ja)
EP (1) EP2909582B1 (ja)
JP (1) JP6336992B2 (ja)
KR (1) KR20150074124A (ja)
CN (1) CN104736964B (ja)
WO (1) WO2014066024A1 (ja)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8635023B2 (en) * 2011-11-22 2014-01-21 Google Inc. Position indication controls for device locations
US20140129177A1 (en) * 2012-11-07 2014-05-08 Motorola Mobility Llc Systems and Methods for Frequency-Based Stride Length Correction in a Pedometer Device
US9730029B2 (en) * 2012-11-08 2017-08-08 Duke University Unsupervised indoor localization and heading directions estimation
TWI457539B (zh) * 2012-12-19 2014-10-21 Ind Tech Res Inst 多姿態步距校正定位系統與方法
US9292936B2 (en) * 2013-01-09 2016-03-22 Omiimii Ltd. Method and apparatus for determining location
JP6062251B2 (ja) * 2013-01-11 2017-01-18 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理方法、携帯端末、およびサーバ
US10094905B2 (en) * 2014-02-28 2018-10-09 Qualcomm Incorporated Opportunistic calibration of a barometer in a mobile device
US9510154B2 (en) 2014-04-28 2016-11-29 Samsung Electronics Co., Ltd Location determination, mapping, and data management through crowdsourcing
US9528837B2 (en) * 2014-06-04 2016-12-27 Qualcomm Incorporated Mobile device position uncertainty based on a measure of potential hindrance of an estimated trajectory
US9212924B1 (en) * 2014-08-21 2015-12-15 Microsoft Technology Licensing, Llc Multimode transportation transitions
EP3191795A1 (en) * 2014-09-08 2017-07-19 InvenSense, Inc. Method and apparatus for using map information aided enhanced portable navigation
JP6183716B2 (ja) * 2014-09-19 2017-08-23 カシオ計算機株式会社 運動支援装置及び運動支援方法、運動支援プログラム
US9891072B2 (en) * 2014-12-08 2018-02-13 Here Global B.V. Method and apparatus for providing a map display based on velocity information
US10451708B2 (en) * 2015-04-01 2019-10-22 Tata Consultancy Services Limited Backtracking indoor trajectories using mobile sensors
CA2926505A1 (en) * 2015-05-04 2016-11-04 Wal-Mart Stores, Inc. System and method for mapping product locations
CN104931057B (zh) * 2015-07-02 2018-07-27 深圳乐动机器人有限公司 一种机器人的任意位置定位方法、装置及系统
CN105136143B (zh) * 2015-07-29 2017-09-29 哈尔滨工业大学 基于imu数据的用户室内运动轨迹匹配方法
FR3039737B1 (fr) 2015-07-31 2017-09-01 Intersec Dispositif de determination de trajectoire
KR102398320B1 (ko) * 2015-08-07 2022-05-16 삼성전자주식회사 경로 정보 제공 방법 및 그 방법을 처리하는 전자 장치
CN105160659B (zh) * 2015-08-14 2018-01-12 无锡物讯科技有限公司 二维平面拓扑区域中获取目标物补充位置轨迹的方法
US9686767B2 (en) * 2015-08-24 2017-06-20 Qualcomm Incorporated Device, method, and system for determining location
CN105115497B (zh) * 2015-09-17 2018-07-24 南京大学 一种可靠的室内移动机器人精确导航定位系统及方法
FR3042089B1 (fr) 2015-10-02 2017-11-24 Intersec Dispositif de communication ameliore
US10185788B2 (en) * 2015-10-13 2019-01-22 Samsung Electronics Co., Ltd. Rule based completion of maps with partial data
US10317243B2 (en) 2015-10-15 2019-06-11 Intertrust Technologies Corporation Sensor information management systems and methods
US9888390B2 (en) 2015-11-02 2018-02-06 Wal-Mart Stores, Inc. System and method for mapping wireless network coverage
CN105716608A (zh) * 2015-11-23 2016-06-29 南京华苏科技股份有限公司 一种建筑物内活动轨迹的定位显示方法
CN105547299A (zh) * 2015-12-29 2016-05-04 哈尔滨工业大学 基于轨迹匹配的radio map转角矩阵自动生成的WLAN室内定位方法
CN105865445A (zh) * 2016-03-29 2016-08-17 全感(苏州)智能技术有限公司 一种惯性导航室内定位系统及其使用方法
WO2017184040A1 (en) * 2016-04-20 2017-10-26 Telefonaktiebolaget Lm Ericsson (Publ) A wireless device, a positioning node and methods therein for positioning of a wireless device in a wireless communications network
US10547976B2 (en) * 2016-09-07 2020-01-28 Invensense, Inc. Method and system for assigning point of sale information
US20180143024A1 (en) * 2016-11-22 2018-05-24 Microsoft Technology Licensing, Llc Automated generation of indoor map data
US10234299B2 (en) * 2016-12-16 2019-03-19 Osvaldo Morales Geo-location tracking system and method
FR3063168B1 (fr) * 2017-02-23 2022-06-03 Intersec Dispositif de determination de trajectoire
US10794986B2 (en) * 2017-06-02 2020-10-06 Apple Inc. Extending a radio map
US10979854B2 (en) 2017-06-02 2021-04-13 Apple Inc. Extending a radio map
JP6747404B2 (ja) * 2017-08-23 2020-08-26 株式会社デンソー 移動体通信システム
US11582576B2 (en) 2018-06-01 2023-02-14 Apple Inc. Feature-based slam
US11788845B2 (en) 2018-06-29 2023-10-17 Baidu Usa Llc Systems and methods for robust self-relocalization in a visual map
EP3680618A1 (en) * 2019-01-10 2020-07-15 Technische Universität München Method and system for tracking a mobile device
WO2020175778A1 (en) 2019-02-28 2020-09-03 Samsung Electronics Co., Ltd. Electronic device for supporting user state-based geofencing services
CN109974690B (zh) * 2019-03-18 2021-07-09 汉海信息技术(上海)有限公司 车辆定位方法、设备及系统
JP7243530B2 (ja) * 2019-08-29 2023-03-22 新東工業株式会社 管理方法及び管理装置
JP7226192B2 (ja) 2019-08-29 2023-02-21 新東工業株式会社 管理方法及び移動端末
CN110906830B (zh) * 2019-12-17 2022-02-11 美国西北仪器公司 智能测距轮系统及其测距方法
CN114095853B (zh) * 2020-07-30 2023-04-14 华为技术有限公司 一种生成室内地图的方法和装置
CN114485627B (zh) * 2020-10-23 2023-10-31 广东博智林机器人有限公司 一种有轨小车的导航方法、装置、有轨小车及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581000B2 (en) 2001-01-04 2003-06-17 Carnegie Mellon University Position location system and method
AU2003900863A0 (en) 2003-02-26 2003-03-20 Commonwealth Scientific & Industrial Research Organisation Inertial and radiolocation method
US7236091B2 (en) 2005-02-10 2007-06-26 Pinc Solutions Position-tracking system
US8836580B2 (en) * 2005-05-09 2014-09-16 Ehud Mendelson RF proximity tags providing indoor and outdoor navigation and method of use
US7496445B2 (en) 2005-04-27 2009-02-24 Proxemics, Llc Wayfinding
US7522999B2 (en) 2006-01-17 2009-04-21 Don Wence Inertial waypoint finder
US8204684B2 (en) 2007-06-28 2012-06-19 Apple Inc. Adaptive mobile device navigation
FR2918745B1 (fr) * 2007-07-12 2009-09-18 Commissariat Energie Atomique Dispositif d'assistance a la navigation d'une personne
SG183690A1 (en) 2007-08-06 2012-09-27 Trx Systems Inc Locating, tracking, and/or monitoring personnel and/or assets both indoors and outdoors
US8825388B2 (en) 2010-07-13 2014-09-02 Qualcomm Incorporated Indoor likelihood heatmap
JP5059932B2 (ja) * 2010-12-02 2012-10-31 株式会社エヌ・ティ・ティ・ドコモ 移動端末、システム及び方法
US8498811B2 (en) * 2011-02-09 2013-07-30 SenionLab AB Method and device for indoor positioning
US20130191019A1 (en) * 2012-01-23 2013-07-25 Qualcomm Incorporated Methods and apparatuses for use in mobile device state/trajectory estimation within an indoor environment

Also Published As

Publication number Publication date
CN104736964B (zh) 2018-06-19
JP2016502069A (ja) 2016-01-21
KR20150074124A (ko) 2015-07-01
WO2014066024A1 (en) 2014-05-01
EP2909582B1 (en) 2019-05-29
EP2909582A1 (en) 2015-08-26
CN104736964A (zh) 2015-06-24
US9116000B2 (en) 2015-08-25
US20140114561A1 (en) 2014-04-24

Similar Documents

Publication Publication Date Title
JP6336992B2 (ja) モバイルデバイスのマップ支援センサーベース測位
CN108700421B (zh) 使用离线地图信息辅助增强的便携式导航的方法和系统
US10281279B2 (en) Method and system for global shape matching a trajectory
JP6783751B2 (ja) 地図情報支援の質を高められたポータブルナビゲーションを使用する方法および装置
US10126134B2 (en) Method and system for estimating uncertainty for offline map information aided enhanced portable navigation
US9146113B1 (en) System and method for localizing a trackee at a location and mapping the location using transitions
CN104395697B (zh) 用于移动设备的协作式导航技术
US9182240B2 (en) Method, apparatus and system for mapping a course of a mobile device
US20130065604A1 (en) Method for seamless transition from urban outdoor environments to indoor navigation
EP2769333A1 (en) Image and video based pedestrian traffic estimation
JP2017520762A (ja) 推定された軌道の潜在的な妨害の尺度に基づく、移動体デバイスのポジションの不確実性
US20220357463A1 (en) Delivery detection-based positioning information extraction
YuTian et al. Integrated Bluetooth Fingerprinting and Pedestrian Dead Reckoning for Indoor Positioning on Apple’s iOS platform
Bhatt et al. Walking artifacts mitigation for improved heading estimation in a reduced multi-sensor configuration

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160909

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160909

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171205

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180403

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180507

R150 Certificate of patent or registration of utility model

Ref document number: 6336992

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250