(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-02
(45)【発行日】2024-08-13
(54)【発明の名称】改善された合成および安定した特徴識別情報をサポートする位相的ベースモデル
(51)【国際特許分類】
G06T 11/60 20060101AFI20240805BHJP
G06F 16/909 20190101ALI20240805BHJP
【FI】
G06T11/60 300
G06F16/909
(21)【出願番号】P 2022552617
(86)(22)【出願日】2020-03-02
(86)【国際出願番号】 US2020020618
(87)【国際公開番号】W WO2021177934
(87)【国際公開日】2021-09-10
【審査請求日】2022-10-31
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】クリスティーン・マクギャヴラン
(72)【発明者】
【氏名】リチャード・ウィリアム・ブコウスキー
(72)【発明者】
【氏名】ブライアン・クライナー
(72)【発明者】
【氏名】ヨアキム・クリスティアン・オーレ・アルヴィドソン
(72)【発明者】
【氏名】アンドリュー・ロッキングビル
【審査官】高野 美帆子
(56)【参考文献】
【文献】特表2009-536372(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 11/60
G06F 16/909
(57)【特許請求の範囲】
【請求項1】
地理データの処理のためのコンピューティングシステムであって、
1つまたは複数のプロセッサと、
データおよび命令をまとめて記憶する1つまたは複数のコンピュータ可読記憶媒体と
を備え、
前記データが、地理的エリアに含まれる複数の意味特徴に対応する複数の正準エッジおよび正準頂点に対してそれぞれ複数の安定した識別子を備える共有位相的ベースモデルを含み、
前記命令が、1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに動作を行わせ、前記動作が、
前記共有位相的ベースモデルにおける前記安定した識別子の1つへの共通参照に少なくとも部分的に基づいて、第1の地理データセットに含まれる第1のエッジまたは第1の頂点と、異なる第2の地理データセットに含まれる第2のエッジまたは第2の頂点との間の対応を決定するステップであって、
前記第2の地理データセットに含まれ、前記安定した識別子の前記1つに関連する、複数の第2のエッジおよび第2の頂点のうちの特定の第2のエッジまたは特定の第2の頂点を識別するステップと、
前記特定の第2のエッジまたは前記特定の第2の頂点に基づき前記第2の地理データセットにおけるグラフ要素を生成するステップと、において、
前記グラフ要素が前記第2の地理データセットにおいて特定の現実世界のアイテムに対応するとともに前記特定の第2のエッジまたは前記特定の第2の頂点に関連して定義された場所を有し、前記グラフ要素が前記第1の地理データセットにおいて前記特定の現実世界のアイテムにも対応する、対応グラフ要素を備え、
前記第1のエッジまたは第1の頂点および第2のエッジまたは第2の頂点が、前記複数の意味特徴のうちの同じ意味特徴に対応する、
ことにより決定するステップ
を含む、コンピューティングシステム。
【請求項2】
前記共有位相的ベースモデルにおける前記安定した識別子の前記1つへ
の前記共通参照に少なくとも部分的に基づいて、前記第1の地理データセットに含まれる前記第1のエッジまたは第1の頂点と、異なる前記第2の地理データセットに含まれる前記第2のエッジまたは第2の頂点との間の前記対応を決定するステップが、
前記複数の意味特徴にそれぞれ対応する複数の第1のエッジおよび第1の頂点と
、少なくとも第1のアンカーであって、前記複数の第1のエッジおよび第1の頂点のうちの特定の第1のエッジまたは特定の第1の頂点に関連して定義された第1の場所を有する、第1のアンカーとを含む前記第1の地理データセットを取得するステップと、
前記複数の意味特徴にそれぞれ対応する
前記複数の第2のエッジおよび第2の頂点を含む前記第2の地理データセットを取得するステップと、
前記共有位相的ベースモデルに含まれ前記特定の第1のエッジまたは前記特定の第1の頂点に関連する前記安定した識別子の前記1つを識別するステップと、
を含み、
前記グラフ要素が前記第2の地理データセット
における第2のアンカーを
含み、
前記対応グラフ要素が前記少なくとも前記第1のアンカーを含む、
請求項1に記載のコンピューティングシステム。
【請求項3】
前記データが、前記複数の意味特徴のうちの1つまたは複数についての1つまたは複数の属性を含む少なくとも1つのプロパティ層をさらに含み、前記1つまたは複数の属性の各々が、前記正準エッジまたは正準頂点のうちの特定の1つにインデックス付けされる、請求項1または2のいずれか一項に記載のコンピューティングシステム。
【請求項4】
前記共有位相的ベースモデルが、前記少なくとも1つのプロパティ層の前記1つまたは複数の属性への参照を含まない、請求項3に記載のコンピューティングシステム。
【請求項5】
前記複数の第2のエッジおよび第2の頂点のうちの前記特定の第2のエッジまたは前記特定の第2の頂点を識別するステップが、
前記複数の第2のエッジおよび第2の頂点を前記複数の正準エッジおよび正準頂点にマップする前記第2の地理データセットに含まれている、または関連している
マッピングデータにアクセスするステップと、
前
記安定した識別子
の前記1つに基づいて前記特定の第2のエッジまたは前記特定の第2の頂点を識別するために前記
マッピングデータに検索動作を行うステップと
を含む、請求項
1から4のいずれか一項に記載のコンピューティングシステム。
【請求項6】
前記複数の第2のエッジおよび第2の頂点のうちの前記特定の第2のエッジまたは前記特定の第2の頂点を識別するステップが、
前記第2の地理データセットに含まれる1つまたは複数の記述子を取得するステップであって、前記1つまたは複数の記述子が、緯度、経度、高度、通りの名前、またはそれらの組合せを含む、ステップと、
前記1つまたは複数の記述子を前記プロパティ層に含まれる前記属性の少なくとも1つと比較するステップと、
前記比較に少なくとも部分的に基づいて、最も近い属性を決定するステップと、
前記最も近い属性がインデックス付けされる正準アンカー、頂点、または両方を決定するステップと
を含む、請求項3または4のいずれか一項に記載のコンピューティングシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に地図作成データおよび合成に関する。より詳細には、本開示は、地図作成アプリケーションおよび対応するデータのための改善された安定性、ならびにこれまで関係のなかった地理データセットから特徴を合成および/または関係付けするための改善された能力を提供することができるコンピュータ実装システムおよび方法に関する。
【背景技術】
【0002】
世界の地図作成またはインデックス付けは、膨大なタイプおよび詳細度の定期的に変化する情報、また世界を別個の特徴に区分する多くの異なる可能な方法を伴う、際限のない問題である。何マイルにも及ぶことがあり、多くの考えられる方法で再分割され得る道路または他のネットワークでは、この問題は特に厄介である。したがって、考えられる使用事例すべてに対して必要なデータすべてを組み込む単一の地図を作成し、維持することは、極めて非現実的である。
【発明の概要】
【発明が解決しようとする課題】
【0003】
この問題に鑑み、異なるデータタイプまたは使用事例を扱うために、多くの異なるタイプおよび形態の地図が作成されている。しかしながら、これらの異なる地図は、一般に異種であり、互いに直接関連付けられないものである。詳細には、同じ地理的エリアを表す地図の所与のペアでも、異なる地理的場所に示されるいくつかの要素(たとえば、道路、関心のある地点など)を有する場合があり、かつ/またはそのような要素を相互参照するための共有される基準枠(frame of reference)がない場合がある。したがって、地図を組み合わせる、かつ/または結合して解釈する能力を改善するための技法が、当技術分野において必要とされる。
【課題を解決するための手段】
【0004】
本開示は、経路ネットワークならびにこれらのネットワークに関連する特徴の安定した位相的表現を提供するためのシステムおよび方法を対象とする。本開示は、地図作成、ナビゲーション、および自律走行車に適用例を有する道路網を使用して例示される。本開示の実施を通して、拡張機能が学習され得る。本明細書で開示する実装形態を利用すると、異なる地図作成システムおよび地図データ間のデータ合成に利点がもたらされ得ると同時に、抽象的な地理的表現ではなく意味特徴(semantic feature)にひも付けされた共通参照標準を開発することによって全体的な安定性が向上する。
【0005】
当業者を対象とする実施形態の詳細な説明が本明細書に記載され、本明細書は添付の図を参照する。
【図面の簡単な説明】
【0006】
【
図1】本開示による位相的ベースモデルを含む例示的なコンピューティングシステムを示す図である。
【
図2】少なくとも一方が本開示による位相的ベースモデルに関連している2つの地理データセットを合成するための例示的な方法を含む例示的なプロセスフロー図である。
【
図3】コンピュータ実装命令および結果を含む例示的なエッジ動作を示す図である。
【
図4A】本開示によるエッジ(線分として表す)およびアンカー(円として表す)を示すグラフ属性の例示的な表現を示す図である。
【
図4B】本開示の例示的な実施形態によるアンカーに関連し得るパラメータ位置の例示的な表現を示す図である。
【
図5A】グラフ属性、ならびに道路形状および建物などのより複雑なプロパティを含む、本開示による位相的ベースモデル表現の一態様を示す図である。
【
図5B】ベースモデルと合成することができる追加の道路区分(円から延びる線として示す)を含む道路網のより詳細な表現が示される、本開示による位相的ベースモデル表現の一態様を示す図である。
【
図5C】ベースモデルと合成されるまたは1つもしくは複数のプロパティ層において関連付けられる場合がある追加の地図特徴を表すためにエントリポイント(5C)などの建物の詳細が示される、本開示による位相的ベースモデル表現の一態様を示す図である。
【
図5D】道路へのアクセスポイント(5D)などの建物の詳細が示される、本開示による位相的ベースモデル表現の一態様を示す図である。
【
図6】本開示によるベースモデルの階層的順序の例示的な表現を示す図である。
図6では、位相的モデルは、本開示の例示的な実施形態による1つまたは複数のエッジ、ノード、および/またはアンカーを示して表示される。道路形状(たとえば、幅)などの物理的記述、意味記述(たとえば、通りの名前)、または他の詳細層(たとえば、道路区分、交差点、通行方向など)を表すために使用され得るさらなる層が、位相に関連付けられる場合がある。
【
図7】2つの異種の地図作成データセットを合成するための位相的ベースモデルの例示的な一実装形態を示す図である。両方のデータセットが、データセット間の地図作成をもたらす本開示により、位相的ベースモデルに提供され得る。
【
図8A】位相的ベースモデルまたはベースモデルのプロパティ層要素を生成するために使用できる例示的な地図データを示す図である。
【
図8B】本開示の例示的な実施形態による、
図8Aに示す道路網の例示的な幾何学的表現を示す図である。
【
図8C】本開示の例示的な実施形態による、
図8Aに示す道路網の例示的な位相的表現を示す図である。
【発明を実施するための形態】
【0007】
複数の図にわたって繰り返される参照番号は、様々な実装形態において同じ特徴を識別することが意図されている。
【0008】
概要
一般に、本開示は、地理的エリアに含まれる複数の意味特徴または要素に対してそれぞれ複数の安定した識別子を含む位相的ベースモデルを含み、使用するシステムおよび方法を対象とする。識別子は、経時的に安定して保たれる。本開示の追加の態様は、位相的ベースモデル(本明細書では「ベースモデル」とも呼ぶ)を作成し、かつ/または更新することができる方法を対象とする。
【0009】
詳細には、ベースモデルは、1つまたは複数の様々な別個の地図層の結合力のある相対的関連付けをサポートする情報を含むことができる。詳細には、一例ではベースモデルは、地理的エリアに含まれる複数の意味特徴(たとえば、道路、交差点、建物など、人間によって認識可能/知覚可能な現実世界のアイテム)に対応する複数の正準要素(canonical element)(たとえば、エッジおよび頂点を使用して表すことができる)それぞれに対して複数の安定した識別子を提供することができる。意味特徴のこの安定したインデックスは、多種多様な地図、地図層、または地図作成アプリケーションからの情報の基礎をなす、またはこれらを相互に関係付けるために使用され得る。詳細には、ベースモデルは、1つまたは複数の特定の地図またはアプリケーションが、基本的な識別および一般的な原理について合意できる共通の下地およびいくつかの実装形態では共通の地理データ(geographic datum)(たとえば、世界表現)を提供することができ、これらの地図およびアプリケーション間でのビューおよびリンクの共有を容易にする。
【0010】
したがって、異なる地図(もしくは地図層)または地図作成アプリケーション間の対応を改善するために、ベースモデル(たとえば、安定した識別子)の態様が使用され得る。詳細には、一例では、第1の地理データセット(たとえば、地図層)が、特徴と、ベースモデルに含まれるいくつかの安定した識別子と特徴を関連付ける参照のセットとを含むことができる。そのような参照を活用することによって、第1の地理データセットの特徴は、第1の地理データセットが時間とともに変化するときでも、いくつかの定義された意味特徴に結びつけられ得る。別の例では、2つの異なる地理データセットが、ベースモデルの安定した識別子へのそれぞれの参照を各々有することができる。同じ安定した識別子への共有参照を識別することによって、2つの異なる地図または地図層にそれぞれ含まれる2つの特徴は、2つの異なる地図または地図層が、著しく異なる物理的空間を表す手段を有し、共有ベースモデルがなく、本来なら関係付けられない場合でも、互いに(および同じ意味特徴に)対応すると決定され得る。
【0011】
地図または他の地理データセットの間のこの改善された対応は、位置認識案内などのアプリケーション、または位置情報を使用する他のアプリケーションでは、道路などの経路を直観的にマップすることによってユーザに利点をもたらすことができる。加えて、ベースモデルは、新しいデータをベースモデルに組み込む、または位相的情報を外部のアプリケーションに送信するために、向上した精度および安定性を与え得るいくつかの合成動作を通して、他の地図作成データに容易に相互に関連付けられ得る。
【0012】
より詳細には、共通のプロパティおよびパターンを有する産業において利用可能な多くの商用および非商用の意味地図がある。これらの地図の大部分が、道路または建物などの、一般的に使用される正準特徴のセットをそれらの基礎に有する。いくつかの地図はまた、それら自体は共通ではないが、共通の特徴に何らかの方法で関係している特徴をさらに含む場合がある(たとえば、建物の入口が、あるよく知られている交差点の30フィート東にある)。これらの地図に含まれる特徴は、通常、検索(lookup)を可能にするある種の識別子(「ID」)を有する。しかしながら、これらのIDは、一般的に(特に道路の場合)安定していない。別の言い方をすれば、特定の地図では、特徴IDは、現実世界では根本的な特徴が変化していない場合でも、地図データのリリースごとに頻繁に変化する可能性がある。また、異なる地図は一般的に、同じ特徴に対して異なるIDを有し、IDによって特徴を比較することを不可能にする。
【0013】
代わりに、2つの地図の結合解釈または使用を可能にするために、いくつかの既存のシステムが、それらの記述に従って特徴を合成しようとする場合があり、これは、しばしば同じ特徴に帰着することができない困難な問題であり、特徴の不正確な位置決めとなる場合がある。さらに、純粋な幾何学的合成が、異なる地図間に幾何学的または地理的格差があり得るとすれば重大なエラーを生じる可能性がある。
【0014】
本開示は、データセットの核となる/基本的な特徴を識別し、ベースモデルに含まれる共有の安定した識別子への参照によってそれらを互いに関係付けるための、改善された機構を提供することによって、これらの問題を解決する。これらの参照および基礎をなす安定した識別子はしたがって、共通の特徴を通して互いに関係付けられるように、共通していないタイプの特徴に対して基礎を提供する。一例として、第1の地図が、道路と、建物アクセスポイントデータとを含む場合があり、第2の地図が、道路と、歩道とを含む場合がある。ベースモデルに含まれる1つまたは複数の安定した識別子への参照を活用することによって、道路などの共通の経路ネットワークを介してアクセスポイントに歩道を結びつけるために、関係を決定することができる。このようにして、異なる特徴間の関係が、核となる、共有の特徴を調べることによって識別され得る。したがって、データセットを位相的ベースモデルなどの共通の表現にマップすることによって、2つ以上の異種の位相が、厳密な位置ではなく相対的な位置を示すマッピングを作り出すことによって結びつけられ得る。
【0015】
本開示によって解決される別の問題は、地理データセット(たとえば、地図)が時間とともに変化するときに、その性質が変化することである。詳細には、地図のユーザはしばしば、それらの地図を使用するために、たとえば、クライアントからサーバへ、または2つのサービス間で、参照をコンパクトに共有または送信するために、地図のIDを頼りにする必要がある。IDが変わる、または一致しない場合、これは使用を複雑にする。時にはこれは、時間とともに地図をアップグレードすることを困難にする(たとえば、地図の鮮度を制限する)。代替的に、これは、通信の信頼性を限定する可能性があり、たとえば合成の後の不一致につながる、または異なるアプリケーションが地図に関する詳細な情報を共有するのを妨げる。
【0016】
本開示の態様は、時間とともに同じく更新されて保たれる地図特徴の安定し、信頼できる識別子を保証する共通のベースモデルを提供することによって、この問題を解決する。ベースモデルは、様々なアプリケーション、ユーザなどによるアクセスのために公開され得る。さらに、ベースモデルデータにアクセスし、これを解釈するためのサービスが提供され得る。たとえば、サービスは、安定したアプリケーションプログラミングインターフェース(「API」)に従ってデータの要求に応じることができる。したがって、他の地図は、ベースモデルIDまたはベースモデルについて相対的階層化情報を記述する共通のスキーマ/言語により、それらの特徴を参照することができる。そのようなアクセス可能な、サービスされるベースモデルは、位相的情報をよりよく共有することを促すエコシステムを促進することができる。
【0017】
本開示の態様による共通の位相的ベースモデルの使用は、異なる地図システムおよびデータベース間の相互運用性を考慮に入れることができる。異なる地理データセットは、位相的ベースモデルを使用して合成されてもよく、合成されたデータの少なくとも一部が、たとえば地図データを求めるクライアントデバイスからの要求に応じて、クライアントデバイスに出力される。したがって、クライアントデバイスは、いくつかの異なる地理データセットからの情報を効率的に受け取り、利用することができ得る。本開示の態様による位相的ベースモデルの使用は、地図データを要求するクライアントと、要求されたデータを提供するサーバとの間、または更新された地図データをサーバに提供するクライアントなどの、データの送信の削減を考慮に入れることができる。たとえば、共通の位相的ベースモデルを使用してサーバからデータを要求し、受信することは、純粋な座標ベースのデータの送信と比較すると、減少した量のデータがサーバとクライアントとの間で送信されることを必要とし得る。
【0018】
より詳細には、本開示の1つの例示的な態様は、座標ではなく(たとえば、具体的な緯度および経度情報などのジオコードではなく)相対的関係を使用して物理的経路(たとえば、道路網)を表すために使用され得る位相的道路網モデル(たとえば、グラフ)を含む。そのようなシステムは、以下の要素の一部または全部を含むことができる。移動の抽象化された線形経路は、方向性がある(たとえば、前端および後端を有する)ことがあり、したがって移動の2つの方向、前方(前端に向かう)および後方(後端に向かう)を定義し得る。加えて、1つの経路に沿って移動している旅行者が、各経路上に共存しているある点で別の経路に切り替え得るジョイント点(joint point)が定義され得る。これらのビルディングブロックを使用すると、1つのエッジ上の1つの点から別のエッジ上の別の点までの任意の経路をエッジ接合点のシーケンスとして表すことができる、ルーティング可能なネットワークが構築され得る。
【0019】
そのようなモデルは、我々の世界の人間の理解により同調され得る、世界の意味(たとえば、単に地理ではなく)記述を活用する。加えて、モデルは、正確な地理的場所ならびに参照される特徴の一部または全部に関係するプロパティに関する不一致の識別および/または解決により弾性のあるものとすることができる。そのような表現において、ネットワークは、移動ルートに沿った要素に対する具体的な距離またはジオコードなどの物理値を表す必要がない。しかしながら、これらの追加のプロパティは、そのような情報を記憶し得る層を使用してネットワークと結びつけられ、またはそうでなければ関連付けされてもよく、かつ/またはそのような情報を含む外部のデータセットと道路網モデルを合成することによって取得されてもよい。たとえば、いくつかの実装形態では、ベース層またはプロパティ層は、幾何学的区画(geometric parcel)として表すことができる建物などの特徴を含んでもよい。幾何学的区画は、建物前面またはネットワーク沿いの他の領域を表すために使用できる1つまたは複数のジョイント点を包含してもよい。
【0020】
一般に、1つの層でのグラフの構成、グラフ上のルートの構成、および2つのグラフの合成が、上位層のグラフの属性の不一致にできる限り無関係に行われるように、位相の本質を捕らえる層にネットワークを分割する位相的モデルが開発され得る。したがって、本開示によるロバストな位相的表現は、地理座標(geocoordinate)、または画像ベースであることがある地図表現を合成することから生じる可能性がある不一致を最小にするために、最下位または「ベース」層レベルで非正規化表現を使用する階層としてそのような表現を定義することができる。
【0021】
説明のための一例として、例示的な位相的モデルは、実質的にエッジ、ノード、およびアンカーによって定義されるグラフに変わる表現を定義するベースモデルを有する層状階層を含むことができる。特定の表現に限定されないが、1つの使用事例では、エッジは道路を表してもよく、頂点は、エッジの端部を表すことができ、アンカー(必ずしも末端頂点と混同されるとは限らない)は、道路を終わらせる、またはジョイント(たとえば、交差点)をマークする関心のある地点、または道路上の関心のある場所(たとえば、建物正面)を表すことができる。したがって、本明細書で使用される、アンカーの場所の概念は、空間における(x, y)位置ではなく、どのエッジ上にあるか、場合によってはパラメータ的にアンカーが、そのエッジを参照する任意の他のアンカーに対してそのエッジ上のどこにあるかを捕らえる識別情報である。この表現を使用すると、頂点が暗黙的にアンカーとして含まれることが可能になるが、アンカーは同時に複数のエッジを含む(たとえば、それらに参照される)場合があるので、すべてのアンカーが頂点であるとは限らない。
【0022】
グラフ表現は、コンピュータサイエンスにおいてよく理解され、他のデータ表現を連携させ、合成するために使用され得る。グラフ要素(たとえば、エッジ、ノード、およびアンカー)の各々は、他の層の要素によってアクセスされ得る/参照され得る一意の、安定したIDと関連付けられ得る。しかしながら一般的に、グラフ要素は、他の層の属性にアクセスする、またはそれらを参照することができない。したがって、層状モデルは、ベースモデルに含まれる安定したIDへの共有参照によって行われる要素の相互参照を提供すると考えることができる。意味記述(たとえば、道路名)、物理的記述(たとえば、形状)、または他の詳細(たとえば、道路区分)などの詳細層は、共通のベースモデルデータセットで安定したIDを識別することによって相互参照されてもよい。
【0023】
ベースモデルを使用すると、交差点が2つのエッジを明示的に接合しない場合があるが、接合部は、それ自体が他の隣接するエッジを参照するアンカーで終わるエッジを通っている場合があるという意味において、非正規化表現(たとえば、非正規化グラフ)を含むことができる変化するレベルでの経路ネットワークの表現が可能になる。この非正規化形態は、アンカーによって参照されるすべてのエッジをカットすることによりすべてのアンカーを従来のグラフ頂点に変換することによって、一意の形態に確定的かつ機械的に正規化され得る。この手順は、アンカーを頂点に変換するために使用することができ、グラフに典型的な正規化形態を与え、これが、他のデータセットとベースモデルを合成するためにいくつかの実装形態において使用され得る。
【0024】
物理的エリアを表す別のグラフまたはデータセットなどの物理データにベースモデルを合成する態様は、物理的投影の追加を含むことができる。たとえば、物理的投影は、方向性(たとえば、1つの接合点が、特定のエッジ上の他の接合点の前方、または後方にあるということ)を定義することによって、同じエッジを共有する接合点の相対的位置を決定することを含むことができる。これは、方向をより具体的に、以下のようにする。「接合部Aから、赤いエッジ上を前方に移動し、接合部Bを通過して接合部Cに到達し、次いで接合部Dまで青いエッジ上を後方に移動する」。性質上、前方および/または後方に移動して次の接合部に到着することは、(物理的特性の差を補正するために使用され得る)エッジ上の接合部の場所または順序を限定することなく動きの本質を捕らえる。別の例として、接合点は、それらが接合するエッジ上のパラメータの位置を使用して定義され得る。これらのうちの最も一般的なものは、単に接合点を、対応するエッジの前端または後端にピンで留めることである。エッジは、前および後ろを有すると考えることができ、前および後ろは、後ろの点の0.0から前の点上の1.0までなど、いくつかの方法で定義することができる。具体的な座標は、エッジに沿った一部分に関して接合点に対して決定され得る。具体的な座標がモデル空間で定義され得るが、エッジ自体に物理的形状がまだないので、これはまだ、物理的空間に特定の位置を押し込まない。さらに別の例として、0.0から1.0までのエッジ上の各パラメータ座標を、物理モデルにおけるエリアの点またはパッチにマップすることによって、物理的形状(たとえば、曲率)が、エッジ自体に割り当てられることがある。
【0025】
物理的識別情報への合成では、場合によっては要件が、合成プロセスに含まれることがあり、現実世界の道路運転エリアの各部分が、グラフにおいてゼロまたは1つのエッジの一部であってもよい。道路が物理的運転エリアの特定のスケルトン化(skeletonization)によってどのように分割されるかに応じて、グラフにおけるエッジが複数の物理的「道路」を表し得るが、地面の特定のビットは1つのエッジによってのみ表され得ることに留意されたい。代替的に、単一の「道路」が、複数のエッジ(たとえば、2つのエッジが、反対方向に進む道路上の交通の2つの車線に対応する、4つのエッジが、交通の4車線に対応するなど)を使用して表される場合がある。
【0026】
一般に、ベースモデルの基礎をなす位相的グラフは、エッジおよびアンカーグラフを含む。各エンティティは、安定したIDを含み、安定性は、そのような特徴のIDが経時的に永久に不変であることを示す。しかしながら、物理的世界の変化する性質により、いくつかのモデルには、時間変化の概念が含まれることがある。たとえば、グラフまたはグラフの基礎をなすデータは、時間(t)に関連付けられたスナップショットに参照されてもよい。接続性、アンカリングエッジ(anchoring edge)の設定などのプロパティにおける何らかの変化が、したがって場合によっては、新しい識別情報を効果的に作成する新しい、一意のIDを割り当てることになり得る。たとえば、ベースモデルの異なるエポックが作成されることがあり、各エポックは、安定した、不変の特徴IDのセットを有する。エポックの各ペアの安定したID間のマッピングもまた、エポック間の投影のために維持され得る。
【0027】
上記で説明した安定したIDの特徴と一致しているいくつかの動作が、ベースモデルを更新するために定義され得る。これらの動作は、エッジ、アンカー、またはいくつかの実装形態では両方に関係してセグメント化され得る。
【0028】
たとえば、エッジを追加することは、エッジがどのように他のエッジに接続するかを定義することを含むことができる。単にエッジ自体を追加することは、新しい識別情報を設けるために、現在のデータベース時間にデータベースに新しいIDを作成することによって成し遂げられ得る。既存のエッジへの接続はしたがって、新しいエッジを既存のエッジに関係付けるアンカーを追加することによって行われ得る。他のアンカーへの関係は、暗黙的と見なされ得る。連結のタイプの一例は、新しいエッジがある他のエッジに端部で付着することを含むことができる。この場合、システムは、古いエッジIDと新しいエッジIDの両方を、各々適切な端部で、参照する新しいアンカーを作成することができる。別の例は、新しいエッジが途中で他のエッジに付着することを含むことができる。これは、新しいエッジとのアンカーの関連付けが「不特定」であり、端部ではないこと以外、同じことを行う。
【0029】
本開示のいくつかの例示的な実装形態が、非正規化形態でグラフのストレージをサポートする。ベースモデルが正規化地図を使用する場合、1つのそのようなアンカーのみが必要とされ、古いアンカーは削除でき、古いアンカーおよび新しいアンカーの付着を合体することによって新しいアンカーが作成される。実装形態が、非正規化形態を含むことができるので、既存のアンカーは、変更されないことがあり、または、アンカーが位相的に同じ接続ポイントとして意図される場合、1つもしくは複数の既存のアンカーが、新しいアンカーの参照セットに追加されることがある。
【0030】
さらなるエッジレベル変化は、エッジを削除することと、エッジをマージすることとを含むことができる。たとえば、削除することは、時間(たとえば、消滅時間)を設定するためにグラフを更新することを含むことができる。非正規化グラフにおいて2つのエッジをマージすることは、完全なマージ(すなわち、マージングの結果は、エッジが完全に同じであること)または不完全なマージ(すなわち、エッジが同じであるジョイント領域(joint region)と、2つのエッジ用の各IDが、他方によって参照されないある追加の経路または表面を指す非ジョイント領域(disjoint region)の両方がある)にセグメント化され得る。一例では、完全なマージが、一方のIDが他方のIDに転送される一方が他方に組み込まれること、または両方が新しく生まれたエッジIDと交換される交換のいずれかとして処理され得る。一般に、このマージは、方向性を保存すべきであり、したがってマージは、フォワード(マッチング方向)マージまたはリバース(非ジョイント方向)マージのいずれかである。別の例では、上記のように一方が他方に組み込まれる方法を使用する完全なマージを、消える元のエッジの前または後ろの残部に対応する2つ以下の新しいエッジIDをさらに生み出すことと組み合わせることによって、不完全なマージが処理され得る。
【0031】
ベースモデルに対するアンカーレベル変化を、エッジの追加、分割、またはエッジのマージに関してある程度説明した。たとえば、アンカーは本質的に接合を表し、したがって、新しいアンカーを追加することは、接合されるエッジ(たとえば、エッジに関連するID)および/またはアンカー(たとえば、アンカーに関連するID)に名前をつけることを含むことができる。
【0032】
開示の態様は、様々な形態で表される場合がある。たとえば、リレーショナルまたは階層型データベースを構築するためのメモリを含むコンピューティングシステムが、ベースモデルを記憶するために使用されてもよい。コンピューティングシステムはまた、ベースモデルに対して更新を実行するための、および/またはベースモデルを他の地図作成情報と合成するための命令を含むメモリまたはハードウェアを含んでもよい。いくつかの実装形態では、コンピューティングシステムは、サーバ上で、またはクラウド接続性を有する分散コンピューティングシステムにおいて、ホストされてもよい。この分散コンピューティングシステムは、データストレージに利点をもたらし、ベースモデルの基礎をなすデータの向上した速度、安定性、および信頼性にアクセスすることができる。
【0033】
本開示の例示的な一実装形態は、1つまたは複数のプロセッサと、データおよび命令をまとめて記憶する1つまたは複数の非一時的コンピュータ可読媒体(CRM)とを有するコンピューティングシステムを含むことができる。一般に、データは、地理的エリアに含まれる意味特徴に対応する複数の正準エッジおよび頂点に対してそれぞれ複数の安定した識別子を備える共有位相的ベースモデルを含む。CRMはまた、1つまたは複数のプロセッサによって実行されると、システムに動作を行わせる、1つまたは複数の動作を行うための命令を含むことができる。
【0034】
共有ベースモデルは、2つの異なる地理データセットの少なくとも一部を合成するために使用され得る。詳細には、合成プロセスは、複数の意味特徴にそれぞれ対応する複数の第1のエッジおよび第1の頂点と、特定の現実世界のアイテムに対応する少なくとも第1のアンカーとを含む第1の地理データセットを取得することを含むことができる。一般に、第1のアンカーは、複数の第1のエッジおよび第1の頂点のうちの特定の第1のエッジまたは特定の第1の頂点に関連して定義された場所を有するように記憶される。たとえば、データベースが、1つまたは複数のエッジに関係付ける/参照するように定義されたアンカーを有するように定義され得る。別の動作は、複数の意味特徴にそれぞれ対応する複数の第2のエッジおよび第2の頂点を含む第2の地理データセットを取得することを含むことができる。安定した識別子(ID)が、したがって地理データセットの各々から識別でき、IDは特定のエッジまたは頂点に関連付けられる。少なくともこれらの動作から、第2のアンカーが、特定の第2のエッジまたは特定の第2の頂点に基づいて第2の地理データセットに生成され得る。
【0035】
いくつかの実装形態では、位相的ベースモデルを含むデータは、少なくとも1つのプロパティ層を含むこともできる。プロパティ層の例示的な一態様は、アンカーの1つ、頂点の1つ、エッジの1つ、またはこれらのいずれかの組合せにインデックスを付けられた属性を含むことができる。例示的なプロパティは、記述(たとえば、道路名)、形状(たとえば、道路幅、曲率、交差点タイプなど)、建物、座標、または他の情報を含むことができる。プロパティ層の別の態様は、階層を含むことができる。たとえば、プロパティ層は、単に下のプロパティ層を参照でき、上のプロパティ層はできないと定義され得る。一般に、エッジ、ノード、およびアンカーを含むグラフは、保守およびID安定性に利点をもたらすことができる階層の最下位レベルと見なされる。
【0036】
いくつかの実装形態では、プロパティ層に含まれる属性は、1つまたは複数の合成動作をサポートするために使用され得る。たとえば、複数の第2のエッジおよび第2の頂点のうちの特定の第2のエッジまたは特定の第2の頂点を識別することは、第2の地理データセットに含まれる1つまたは複数の記述子を取得することと、1つまたは複数の記述子を、プロパティ層に含まれる属性の少なくとも1つと比較することと、比較に少なくとも部分的に基づいて、最も近い属性を決定することと、最も近い属性がインデックスを付けられたアンカー、頂点、または両方を決定することとを含むことができる。したがって一般に、合成動作は、ベースモデルと第2のデータセットとの間の類似性を探索することを含み得る。外部のデータセットは、同じ非正規化参照を含まない場合があるので、プロパティ層は、通りの名前、座標、または外部参照と比較できる他の情報などの物理的情報を提供することができる。ベースモデルと第2のデータセットとの間のマッチングまたは密接な対応を識別した後に、プロパティ層の属性は、最も近い属性がインデックスを付けられたアンカー、頂点、または両方を調べるために使用され得る。いくつかの実装形態では、最も近い属性がインデックスを付けられたアンカー、頂点、または両方は、したがって、非正規化ベースモデルグラフまたは正規化形態のベースモデルグラフを第2のデータセットに投影することによって、第2のデータセットの少なくとも一部分をマップするために使用され得る。たとえば、記述子の場所に対応する第2のデータセットにアンカーが追加され得る。他の層からの関係するエッジおよび/または属性などのアンカー情報が、したがってベースモデルから継承され得る。
【0037】
次に図を参照しながら、本開示の例示的な実施形態について、さらに詳細に説明する。
【0038】
例示的なデバイスおよびシステム
図1は、本開示の例示的な態様による、位相的ベースモデル122もしくは140、および/または合成システム142などの情報を記憶または送信することができる例示的なコンピューティングシステム100のブロック図を示す。例示的な一実装形態では、システム100は、ネットワーク180を通じて通信可能に連結されている、ユーザコンピューティングデバイス102およびサーバコンピューティングシステム130を含むことができる。
【0039】
ユーザコンピューティングデバイス102は、たとえば、パーソナルコンピューティングデバイス(たとえば、ラップトップまたはデスクトップ)、モバイルコンピューティングデバイス(たとえば、スマートフォンまたはタブレット)、ゲーミングコンソールもしくはコントローラ、ウェアラブルコンピューティングデバイス、埋込み型コンピューティングデバイス、または任意の他のタイプのコンピューティングデバイスなどの、任意のタイプのコンピューティングデバイスであってもよい。
【0040】
ユーザコンピューティングデバイス102は、1つまたは複数のプロセッサ112およびメモリ114を含むことができる。1つまたは複数のプロセッサ112は、どの適切な処理デバイス(たとえば、プロセッサコア、マイクロプロセッサ、ASIC、FPGA、コントローラ、マイクロコントローラなど)であってもよく、1つのプロセッサまたは動作可能に接続されている複数のプロセッサであってよい。メモリ114は、RAM、ROM、EEPROM、EPROM、フラッシュメモリデバイス、磁気ディスクなど、およびそれらの組合せのような、1つまたは複数の非一時的コンピュータ可読記憶媒体を含み得る。メモリ114は、データ116と、ユーザコンピューティングデバイス102に動作を実施させるようにプロセッサ112によって実行される命令118とを記憶することができる。
【0041】
いくつかの実装形態では、ユーザコンピューティングデバイス102は、位相的ベースモデル122を記憶するか、または含むことができる。
【0042】
いくつかの実装形態では、位相的ベースモデル122は、ネットワーク180を通じてサーバコンピューティングシステム130から受信され、ユーザコンピューティングデバイスメモリ114に記憶され、次いで、1つまたは複数のプロセッサ112によって使用され、またはそうでなければ実装され得る。いくつかの実装形態では、ユーザコンピューティングデバイス102は、(たとえば、地図データの異なるセット間で並列合成動作を行うために)単一の位相的ベースモデル122の複数の並列インスタンスを実装することができる。
【0043】
より詳細には、位相的ベースモデル122は、ネットワーク(たとえば、グラフ)として表すことができる、道路、建物などの地図特徴を記憶および/またはインデックス付けするために安定した参照を提供することができる。位相的ベースモデル122は、用途または使用事例に応じて各々個々にアクセスおよび/またはダウンロードされ得る1つまたは複数の層にセグメント化され得る。
【0044】
追加または代替として、位相的ベースモデル140、またはベースモデル位相もしくは1つもしくは複数の詳細層などの位相的ベースモデルの1つもしくは複数の特徴が、クライアント-サーバ関係に従ってユーザコンピューティングデバイス102と通信するサーバコンピューティングシステム130に含まれ、またはそうでなければ、サーバコンピューティングシステム130によって記憶され、実装され得る。たとえば、位相的ベースモデル140は、ウェブサービスの一部分として、サーバコンピューティングシステム140によって実装され得る。したがって、位相的ベースモデル122が、ユーザコンピューティングデバイス102において記憶され、実装されてよく、かつ/または位相的ベースモデル140が、サーバコンピューティングシステム130において記憶され、実装されてよい。いくつかの実装形態では、位相的ベースモデルは、グラフ(たとえば、ベース層)および1つまたは複数のプロパティ層を含む特徴にセグメント化され得るので、特徴の各々が、ユーザコンピューティングデバイス102とサーバコンピューティングシステム130との間で個々にアクセスされ、かつ/または送信され得る。代替的に、いくつかの実装形態では、位相的ベースモデルはセグメント化されなくてもよい。たとえば、いくつかの実装形態では、位相的ベースモデル122は、インデックス付けおよびまたは他の関係を保存するために、個々の特徴にセグメント化されなくてもよい。
【0045】
ユーザコンピューティングデバイス102は、ユーザ入力を受信する1つまたは複数のユーザ入力構成要素124も含み得る。たとえば、ユーザ入力構成要素124は、ユーザ入力オブジェクト(たとえば、指またはスタイラス)のタッチに敏感な、タッチ感応構成要素(たとえば、タッチ感応表示画面またはタッチパッド)であってよい。タッチ感応構成要素は、仮想キーボードを実装するのに役立ち得る。他の例示的ユーザ入力構成要素は、マイクロフォン、従来のキーボード、またはユーザがユーザ入力を与えることができる他の手段を含む。
【0046】
サーバコンピューティングシステム130は、1つまたは複数のプロセッサ132およびメモリ134を含む。1つまたは複数のプロセッサ132は、どの適切な処理デバイス(たとえば、プロセッサコア、マイクロプロセッサ、ASIC、FPGA、コントローラ、マイクロコントローラなど)であってもよく、1つのプロセッサまたは動作可能に接続されている複数のプロセッサであってよい。メモリ134は、RAM、ROM、EEPROM、EPROM、フラッシュメモリデバイス、磁気ディスクなど、およびそれらの組合せのような、1つまたは複数の非一時的コンピュータ可読記憶媒体を含み得る。メモリ134は、データ136と、サーバコンピューティングシステム130に動作を実施させるようにプロセッサ132によって実行される命令138とを記憶することができる。
【0047】
いくつかの実装形態では、サーバコンピューティングシステム130は、1つまたは複数のサーバコンピューティングデバイスを含むか、またはそうでなければ、1つまたは複数のサーバコンピューティングデバイスによって実装される。サーバコンピューティングシステム130が複数のサーバコンピューティングデバイスを含む事例では、そのようなサーバコンピューティングデバイスは、順次コンピューティングアーキテクチャ、並列コンピューティングアーキテクチャ、またはそれらの何らかの組合せに従って動作することができる。
【0048】
上記で説明したように、サーバコンピューティングシステム130は、位相的モデル140を記憶するか、またはそうでなければ含むことができる。いくつかの事例では、サーバコンピューティングシステム130は、いくつかの事例では様々な訓練された機械学習済みモデルを含み得る合成システム142を含むこともできる。例示的機械学習済みモデルは、ニューラルネットワークまたは他のマルチレイヤ非線形モデルを含む。例示的ニューラルネットワークは、フィードフォワードニューラルネットワーク、ディープニューラルネットワーク、回帰型ニューラルネットワーク、および畳み込みニューラルネットワークを含む。例示的な実装形態では、合成システム142は、外部の(すなわち、第三者)地図作成データと位相的ベースモデル140に含まれるデータとの間の対応を識別するために使用されてもよい。このようにして、合成システム142は、少なくとも部分的に、第三者データに基づいて位相的ベースモデル140をマージおよび/または更新するための命令を生成するために使用され得る。たとえば、例示的な実装形態が、出口ランプ近くの交通レポートなど、地理的エリアにおける現実世界のアイテムを表すためのいくつかのエッジおよび頂点を含むグラフ表現を含む地理データセットを取得することを含むことがある。合成システム142は、最も近い道路識別子(たとえば、道路名、出口番号、または他の関係情報)など、地理データセットに含まれる情報に少なくとも部分的に基づいて、位相的ベースモデルに含まれる特定の安定した識別子を識別することができる。さらに、いくつかの場合には、地理データセットは、地理データセットが特定の現実世界のアイテムに対応するアンカーを生成することを可能にし得るAPIまたは他のアプリケーションを介して、位相的ベースモデルに含まれる安定した識別子を共有してもよい。いくつかの事例では、地理データセットはさらに、特定のエッジの識別、および/またはエッジに沿ったパラメータの位置の生成に基づいてアンカーを含むように位相的ベースモデルを更新するために使用されてもよい。
【0049】
ネットワーク180は、ローカルエリアネットワーク(たとえば、イントラネット)、ワイドエリアネットワーク(たとえば、インターネット)、またはそれらの何らかの組合せなどの、任意のタイプの通信ネットワークであってもよく、任意の数のワイヤードまたはワイヤレスリンクを含むことができる。一般に、ネットワーク180を介した通信は、多種多様な通信プロトコル(たとえば、TCP/IP、HTTP、SMTP、FTP)、符号化もしくはフォーマット(たとえば、HTML、XML)、および/または保護方式(たとえば、VPN、セキュアHTTP、SSL)を使用して、任意のタイプのワイヤードおよび/またはワイヤレス接続を介して搬送され得る。
【0050】
図1は、本開示を実装するために使用され得る1つの例示的なコンピューティングシステムを示す。他のコンピューティングシステムが同様に使用されてもよい。たとえば、いくつかの実装形態では、ユーザコンピューティングデバイス102は、合成システム142を含むことができ、または、ユーザコンピューティングデバイス102上で位相的ベースモデル122を取得するのではなく、サーバコンピューティングシステム130から位相的ベースモデル140にアクセスするように構成されてもよい。
【0051】
例示的なモデル属性
図4Aおよび
図4Bは、位相的ベースモデルの態様を示す。これらの説明図は、本明細書で開示する実装形態を実施するための例として提供され、態様を図示するもののみに限定することを目的としていない。たとえば、
図4Aは、エッジおよびアンカーが交差点などの経路ネットワークをどのように定義し得るかの説明図を示す。各説明図では、5つのアンカーが円として示され、エッジが線として示されている。各エッジは、2つのアンカーを単につなぐように制約されず、したがって、異なる線幅および/または破線を使用して一意のエッジが示されている。注目すべきことに、右端の画像では、図示の各エッジが、2つのアンカーに単につながれ、任意のアンカー位置で各エッジを「カットすること」によって正規化表現がどのように生成され得るかの一例を示している。
図4Bは、本開示の別の態様を示す。相対的な位置を示すためにパラメータの定義を使用して表示されているが、相対的な位置を生成するための任意の方法が本開示の実装形態に使用され得ることに留意されたい。たとえば、交差点、建物正面、または他のそのような情報などの特徴にひも付けされ得るエッジに沿った場所が、厳密な座標位置に指定される、またはひも付けされる必要はない。代わりに、パラメータの位置が、後端および前端を定義することに基づいて定義され得る。さらに、いくつかの場合には、場所は、指定される必要がなく、これは、厳密な位置情報(たとえば、第三者から得られる情報)が明確に定義されないが、エッジに沿った領域に影響を及ぼすとして依然として表される場合があるとき、利点をもたらす場合がある。
【0052】
例示的なモデル配置
図5A~
図5Dは、位相的ベースモデルの例示的な配置を示す。図示のように、
図5Aは、アンカーを円として、エッジを線分として表示するベースモデル表現を表示する。いくつかの実装形態では、
図5B~
図5Dは、
図5Aに示すベースモデルの特徴に参照される属性を含む1つまたは複数のプロパティ層として含まれてもよい。たとえば、
図5Bは、形状および車線を含む道路のさらなる詳細を表示し、
図5Cは、入口および/または出口などの建物のさらなる詳細を表示し、
図5Dは、道路の詳細に対する建物の詳細の関係を表示する。いくつかの実施形態では、これらのプロパティ層は、位相的ベースモデルの一部として含まれ得る。他の実装形態では、
図5B~
図5Dに表示される詳細情報の一部または全部が、外部の(たとえば、第三者)データセットの一部として含まれてもよい。この情報は、ベースモデルまたは関連するプロパティ層を更新するために、
図5Aに表示されるベースモデルと合成され得る。
【0053】
図6は、階層構造を表す位相的ベースモデルの別の例示的な配置を示す。図示のように、
図6は、物理的記述、意味記述、および場合によってはさらなる詳細層をサポートするベースモデル位相を含む。個々の層とともに、2つの通りの間の交差点の説明図が提供される。この階層的表現を使用すると、時間とともに変化する可能性が高い可能性がある個々の属性を記録する必要なしに、情報がベースモデル位相上に投影されることが可能になる。いくつかの実装形態では、上位層の属性は、単に下位層の属性を参照し得る。たとえば、意味記述または物理的記述の属性は、ベースモデル位相を参照し得るが、逆は真ではない。
【0054】
ベースモデル位相の例示的な態様は、すべての他の層を共通のID空間にアンカリングすることを含むことができる。したがって、位相は一般に、エッジ、頂点、アンカー表現を使用して、現実世界の場所または関心のあるアイテムを表すための共通のグラフを含む。物理層の例示的な態様は、データに参照され得る緯度、経度、および/または高度(たとえば、WGS84または他の好適な座標系)で記述される形状を含むことができる。物理層の要素は、幅または幅関数(width function)(リボン)を有するポリゴンまたはポリラインを含むことができる。物理的要素は、共通の位相内のエッジの記述的要素としてアクセスされてもよい。いくつかの場合には、物理層は、舗道のエッジなど、道路または道路要素の自然な境界で終わる形状をもつ画像から道路の形状をたどることによって導出され得る。
【0055】
ソース画像はまた、大域的に位置合わせされたエアリアルシードされた(aerial-seeded)3Dメッシュに位置合わせされた航空ソースまたは地上収集から収集されてもよい。航空画像から物理的特性を引き出す一例は、
図8Aおよび
図8Bに表示され、これらは、交差点を構成する道路の態様(たとえば、幅、曲率、交点など)を一部定義するために、車線(8B)の重ね合わせとともに交差点(8A)の航空画像を表示している。
図8Cおよび
図8Dは、航空情報が
図8Cに示す位相的表現(たとえば、エッジ、アンカー、および/または頂点のグラフ)にどのように変換され得るかの一例を表示している画像を示す。さらにこの表現は、ナビゲーションにおけるルート生成などの用途で使用するために
図8Dに示す地図作成画像に投影され得る。
【0056】
例示的なモデルアプリケーション
図7は、例示的な位相的ベースモデルを使用して第1のデータセットおよび第2のデータセットから地理データをマップするための例示的な合成動作を示す。図示のように、地図データ1および地図データ2は、同じ場所の画像を表す。同じ経路ネットワークの2つの異なる表現間の対応を識別するために、対応する位相的地図が、例示的なベースモデルを使用して生成され得る。たとえば、地図データ1は、ハイウェイを2つのセグメントとしてモデル化し得るが、地図データ2は、1つのセグメントのみを表示する。他の違いは、マージの場所または「オンランプ」を含むことができる。これらの表現での変化する形状により、純粋な幾何学的合成は、(たとえば、純粋な幾何学的合成が使用されるとき、地図データ1からの閉鎖マーカー(closure marker)が地図データ2ではオンランプ上に位置していないことによって示されるように)重大なエラーを生み出す可能性がある。代わりに、各データセットを本開示による位相的ベースモデルなどの共通の表現にマップすることが、道路セグメント間のマッピングを作り出すこと、または厳密な位置ではなく相対的な位置を示すためにアンカーを使用して接合点を変更することによって、異種の位相をつなぐために使用され得る。たとえば、共有位相的ベースモデルを使用することによって、閉鎖マーカーは、合成された地図データ2においてオンランプ上に配置され得る。
【0057】
説明のための別の例示的な実施形態として、
図7は、位相的ベースモデルならびに2つのデータセット(たとえば、地図データ1および地図データ2)における特徴間の対応を決定するための命令を記憶するデータを含む、本開示によるコンピューティングシステムを明示するために適用され得る。2つの地図データセットは、外部の第三者からを含む、様々なソースから取得され得る。地図データは、位相的ベースモデルを使用して共通参照および/または基礎をなす表現を調べる(たとえば、データベース動作もしくは他のクエリを使用する)か、またはそうでなければ決定するために使用され得る通りの名前、道路形状、または他の態様などの特徴を含んでもよい。ここでは、共通参照および/または基礎をなす表現は、地図データ1および地図データ2にそれぞれ基づいて生成できる合成された地図データ1および合成された地図データ2として示される。しかしながら、これは、考えられる異なるタイプの表現を限定するものではない。経路セグメントの他の表現および地図データに示される他の特徴が生成されることがあり、地図データセットにおいて提供される詳細のレベルによって決まる場合がある。共通参照が生成されると、関係、すなわちA(0,0.5)→H、A(0.5,1)→Jなどによって示されるように、データセット間で1つまたは複数の対応が決定され得る。図は単にエッジセグメント間の関係を示しているが、頂点(ここでは円または半円として示される)間の関係もまた、共有位相的ベースモデルにおける安定した識別子への共通参照に少なくとも部分的に基づいて生成され得ることを理解されたい。いくつかの場合には、この共通参照が、データセットの1つで新しい特徴(たとえば、アンカー、エッジ、または頂点)を生成することなどによって、地図データベース間で情報を伝えるために使用されることがある。たとえば、地図データ2に閉鎖がない場合、丸付きダッシュ「-」として示される。D→Iの関係は、0.8におけるDの閉鎖を0.8におけるIにマップするために使用され得る。したがって、新しい特徴は、(たとえば、その場所にアンカーを生成するなど)閉鎖を表すために地図データ2の一部または合成された地図データ2として生成され得る。
【0058】
例示的な方法
図2は、本開示の例示的な実施形態に従って合成を行う例示的な方法のフローチャート図を示す。
図2は、例示および説明の目的で、特定の順序で行われるステップを示すが、本開示の方法は、具体的に示された順序または配置に限定されない。方法600の様々なステップは、本開示の範囲から逸脱することなく、様々な方法で省略され、並べ替えられ、組み合わされ、かつ/または適応されてもよい。
【0059】
202において、コンピューティングシステムが、複数の意味特徴にそれぞれ対応する複数の第1のエッジおよび頂点と、特定の現実世界のアイテムに対応する少なくとも第1のアンカーであって、複数の第1のエッジおよび頂点のうちの特定の第1のエッジまたは特定の第1の頂点に関連して定義された場所を有する第1のアンカーとを含む第1の地理データセットを取得することができる。第1の地理データセットを取得することは、ライブラリもしくはストアデータのライブラリにアクセスすること、またはセンサー情報を物理的表現で重ね合わせることによって航空情報などの地理データを生成もしくは変更すること、または(たとえば、第三者から)データを受信することを含むことができる。
【0060】
204において、コンピューティングシステムは、複数の意味特徴にそれぞれ対応する複数の第2のエッジおよび頂点を含む第2の地理データセットを取得することができる。一般に、第2の地理データセットを取得することは、限定はしないが、第1の地理データセットを取得するための提供した例を含む様々な方法で行われてもよい。
【0061】
206において、コンピューティングシステムは、共有位相的ベースモデルに含まれる、特定の第1のエッジまたは特定の第1の頂点に関連する特定の安定した識別子を識別することができる。一例として、特定の安定した識別子を識別することは、従来のデータベースクエリ(たとえば、SQLを使用する)、クラウドデータベースクエリ、または参照ID情報にアクセスするための他の探索方法を使用して行われ得るテーブル検索を含んでもよい。
【0062】
208において、コンピューティングシステムは、第2の地理データセットに含まれ、特定の安定した識別子に関連する複数の第2のエッジおよび頂点のうちの特定の第2のエッジまたは特定の第2の頂点を識別することができる。特定の第2のエッジを識別する一態様は、合成のための共通参照を作成することを含む。第1のエッジまたは頂点にも関連する特定の安定した識別子との関連に基づいて第2のエッジまたは頂点を識別することによって、合成動作は、データをつなぎ合わせる、または属性を新しいデータセットにマップする際のエラーを減らすことができる。
【0063】
210において、コンピューティングシステムは、特定の第2のエッジまたは特定の第2の頂点に基づいて第2の地理データセットに第2のアンカーを生成することができ、第2のアンカーは、第2の地理データセットにおいて特定の現実世界のアイテムに対応する。上記で説明したように、共通参照点を利用することによって、さらなる参照特徴が、一方または両方のデータセットに追加されてもよい。この例では第2の地理データセットに第2のアンカーを生成するとして示しているが、エッジなどの他のグラフ要素が生成され、第2のデータセットおよび/または、第1の地理データセットならびに第2の地理データセットによって(たとえば、追加の合成動作のために)参照されるか、またはそうでなければアクセスされることがある、位相的ベースモデルなどの共有参照に追加されてもよいことを理解されたい。
【0064】
少なくとも
図2で説明する動作の組合せから、グラフ表現を使用して現実世界のアイテムを参照するための安定した識別子を含む位相的ベースモデルへの関連性を有する2つのデータセットが、第2のデータセットにアンカーなどの共有可能な情報を生成するために使用され得る。さらに、いくつかのユーザ事例では、第1および第2の地理データセットは、安定した参照を本質的に含まない場合があるが、代わりに一方または両方のデータセットは、本開示の態様による例示的な位相的ベースマップとの合成によってそのような情報を獲得する必要がある場合がある。たとえば、複数の意味特徴にそれぞれ対応する複数の第1のエッジおよび頂点と、特定の現実世界のアイテムに対応する少なくとも第1のアンカーであって、複数の第1のエッジおよび頂点のうちの特定の第1のエッジまたは特定の第1の頂点に関連して定義される場所を有する、第1のアンカーとを含む第1の地理データセットを取得することは、第1に地理データセットを取得することを含んでもよい。地理データセットは次いで、本開示による位相的ベースモデルと合成され得る。
【0065】
一例として、地理データセットを合成することは、複数の第2のエッジおよび第2の頂点を複数の正準エッジおよび正準頂点にマップする第2の地理データセットに含まれるまたは関連するマッピングにアクセスすることと、特定の安定した識別子に基づいて特定の第2のエッジまたは特定の第2の頂点を識別するためにマッピング時に検索動作を行うこととを含んでもよい。
【0066】
別の例として、複数の第2のエッジおよび第2の頂点のうちの特定の第2のエッジまたは特定の第2の頂点を識別することは、第2の地理データセットに含まれている1つまたは複数の記述子を取得することを含むことができ、1つまたは複数の記述子は、緯度、経度、高度、通りの名前、またはこれらの組合せなどの情報を与える。1つまたは複数の記述子は、たとえば、1つまたは複数の記述子をベースモデルのプロパティ層に含まれる属性の少なくとも1つと比較することによって、例示的なベースモデルと比較され得る。比較に少なくとも部分的に基づいて、最も近い属性が決定されてもよい(たとえば、通りの名前などの1つまたは複数の記述子に一致する属性)。結果として、最も近い属性がインデックス付けされるアンカー、頂点、または両方を識別することができる。いくつかの実装形態では、最も近い属性がインデックス付けされているアンカー、頂点、または両方が、第1の地理データセットに含まれている複数の意味特徴に対応する第2のデータセットに複数のエッジおよび頂点を加えるために少なくとも部分的に使用され得る。
【0067】
図3は、グラフレベルで位相的ベースモデルを更新するための方法を提供する例示的な動作を示す。図では、エッジ動作300が、コンピュータ実装命令および結果として示されている。302において、コンピューティングシステムは、追加される1つのエッジに関連する一意のIDを設けることができ、新しいエッジの接続性を説明するためにグラフに1つのアンカーをさらに追加してもよい。304において、コンピューティングシステムは、エッジをグラフから削除するための1つのエッジに関連する消滅時間を追加することができる。安定性を考慮に入れるために、エッジへの参照は、完全に削除されなくてもよく、代わりに、エッジがアクティブであった存続期間または時期を追跡するために、時間インジケータを設けることができる。306において、コンピューティングシステムは、2つのエッジの一方への転送参照(forwarding reference)を追加することができ、転送参照は、2つのエッジをマージするために2つのエッジの他方への転送参照を有するエッジにアクセスする要求を行う。他の例示的なマージ動作は、308および310に示されている。310において、コンピューティングシステムは、1つまたは複数のアンカーをエッジに追加することによって、エッジをセグメントに分ける(たとえば、分割する)ことができる。
【0068】
追加の開示
本明細書において論じた技術は、サーバ、データベース、ソフトウェアアプリケーション、および他のコンピュータベースのシステム、ならびに行われるアクションおよびそのようなシステムとの間で送られる情報を参照する。コンピュータベースのシステムの固有柔軟性により、構成要素の間でのタスクおよび機能性の非常に様々な可能構成、組合せ、および分割ができるようになる。たとえば、本明細書において論じるプロセスは、組合せで動く、単一のデバイスもしくは構成要素または複数のデバイスもしくは構成要素を使って実装することができる。データベースおよびアプリケーションは、単一のシステム上で実装されるか、または複数のシステムに分散されてよい。分散構成要素は、順次、または並行して動作することができる。
【0069】
本主題を、その様々な具体的な例示的実施形態に関して詳しく記載したが、各例は、本開示の限定ではなく、説明として与えられている。当業者は、上記内容を理解を得ると、そのような実施形態に対する改変、変形、および等価物を容易に生じることができる。したがって、本開示は、当業者には容易に明らかになるように、本主題へのそのような修正、変形および/または追加を含めることを排除しない。たとえば、1つの実施形態の一部として示され、または説明される特徴は、またさらなる実施形態をもたらすために、別の実施形態とともに使用され得る。したがって、本開示がそのような改変、変形、および等価物をカバーすることが意図されている。
【符号の説明】
【0070】
100 システム
102 ユーザコンピューティングデバイス
112 プロセッサ
114 メモリ
116 データ
118 命令
122 位相的ベースモデル
124 ユーザ入力構成要素
130 サーバコンピューティングシステム
132 プロセッサ
134 メモリ
136 データ
138 命令
140 位相的ベースモデル
142 合成システム
180 ネットワーク