(57)【要約】      （修正有）【課題】自律走行車両のための位置推定及び地図生成を行うためのシステム、コンピュータ可読媒体、及び方法を提供する。【解決手段】カメラにより画像を取得し、取得した画像により道路、空、歩道、歩行者、車両等のセマンティックカテゴリを決定する。またＬＩＤＡＲにより３次元距離画像であるポイントクラウドを取得し、ポイントクラウドより物体要素であるオブジェクトをクラスタ化し、クラスタ化された物体より地表面を除去する。画像よりポイントクライドへラベルを転送し、ポイントクラウドから歩行者、車両等の動的な交通参加者を除去し、動的な交通参加者が除去されたポイントクラウドに対して正規分布変換等のＳＬＡＭ処理を実行し、ＳＬＡＭ処理結果としての位置推定及び３次元地図を生成、出力する。【選択図】図２
2019207220.tif 000002
【特許請求の範囲】
【請求項１】
自律走行車両のための位置推定及び地図生成を行う方法であって、該方法は、
カメラを介して、第１の位置で得た画像を取得するステップと、
前記画像における１又は複数のオブジェクトに対してラベルを付けるステップと、
光検出器を介して、前記第１の位置から閾値距離内にある第２の位置で得たポイントクラウドを取得するステップと、
前記ポイントクラウドにおける１又は複数のオブジェクトクラスタを決定するステップと、
前記画像の前記１又は複数のオブジェクトに対して付けられた前記ラベルと、前記ポイントクラウドの前記オブジェクトクラスタの点とを関連付けるステップと、
前記オブジェクトクラスタの前記点に関連付けられた前記ラベルに基づいて、前記ポイントクラウドの３次元（３Ｄ）オブジェクトを特定するステップと、
を有する
自律走行車両のための位置推定及び地図生成を行う方法。
【請求項２】
請求項１記載の方法において、前記方法は、特定された前記３次元オブジェクトに基づいて、前記ポイントクラウドから動的な交通参加者を除去するステップをさらに有する、
方法。
【請求項３】
請求項２記載の方法において、前記方法は、前記ポイントクラウドから前記動的な交通参加者を除去した後に、前記ポイントクラウドに対して、位置推定及び地図生成を同時に行うステップをさらに有する、
方法。
【請求項４】
請求項１記載の方法において、前記画像における前記１又は複数のオブジェクトに対してラベルを付ける前記ステップは、画素単位で、前記画像に対して、セマンティックセグメンテーションを行うステップを有する、
方法。
【請求項５】
請求項４記載の方法において、前記ラベルと、前記ポイントクラウドの前記オブジェクトクラスタの点とを関連付ける前記ステップは、前記画像の画素の少なくとも一部のラベルを、前記ポイントクラウドの対応する点に関連付けるステップを有する、
方法。
【請求項６】
請求項１記載の方法において、前記画像における前記１又は複数のオブジェクトに対してラベルを付ける前記ステップは、前記画像内において動的な交通参加者を特定するステップを有する、
方法。
【請求項７】
請求項１記載の方法において、前記ポイントクラウドにおける前記１又は複数のオブジェクトクラスタを決定する前記ステップは、前記ポイントクラウドの地表面を特定して、前記ポイントクラウドから前記地表面を除去するステップを有する、
方法。
【請求項８】
１又は複数の画像をキャプチャするカメラと、
１又は複数のポイントクラウドをキャプチャする光検出器と、
前記カメラと前記光検出器とに結合され、前記１又は複数の画像及び前記１又は複数のポイントクラウドを記憶するメモリと、
前記メモリに結合される１又は複数のプロセッサと、
を備えた自律走行車両のための位置推定及び地図生成を行うシステムであって、
前記１又は複数のプロセッサは、
前記カメラを介して、第１の位置で得た画像を取得し、
前記画像における１又は複数のオブジェクトに対してラベルを付け、
前記光検出器を介して、前記第１の位置から閾値距離内にある第２の位置で得たポイントクラウドを取得し、
前記ポイントクラウドにおける１又は複数のオブジェクトクラスタを決定し、
前記画像の前記１又は複数のオブジェクトに対して付けられた前記ラベルと、前記ポイントクラウドの前記オブジェクトクラスタの点とを関連付け、
前記オブジェクトクラスタの前記点に関連付けられた前記ラベルに基づいて、前記ポイントクラウドの３次元（３Ｄ）オブジェクトを特定する、
システム。
【請求項９】
請求項８記載のシステムにおいて、前記１又は複数のプロセッサはさらに、特定された前記３次元オブジェクトに基づいて、前記ポイントクラウドから動的な交通参加者を除去する、
システム。
【請求項１０】
請求項９記載のシステムにおいて、前記１又は複数のプロセッサはさらに、前記ポイントクラウドから前記動的な交通参加者を除去した後に、前記ポイントクラウドに対して、位置推定及び地図生成を同時に行う、
システム。
【請求項１１】
請求項８記載のシステムにおいて、前記１又は複数のプロセッサはさらに、画素単位で、前記画像に対して、セマンティックセグメンテーションを行う、
システム。
【請求項１２】
請求項１１記載のシステムにおいて、前記１又は複数のプロセッサはさらに、前記画像の画素の少なくとも一部のラベルを、前記ポイントクラウドの対応する点に関連付ける、
システム。
【請求項１３】
請求項８記載のシステムにおいて、前記１又は複数のプロセッサはさらに、前記画像内において動的な交通参加者を特定する、
システム。
【請求項１４】
請求項８記載のシステムにおいて、前記１又は複数のプロセッサはさらに、
前記ポイントクラウドの地表面を特定し、
前記ポイントクラウドから前記地表面を除去する、
システム。
【請求項１５】
自律走行車両のための位置推定及び地図生成を行うコンピュータ実行可能コードを記憶するコンピュータ可読媒体であって、該コンピュータ可読媒体は、
カメラを介して、第１の位置で得た画像を取得し、
前記画像における１又は複数のオブジェクトに対してラベルを付け、
光検出器を介して、前記第１の位置から閾値距離内にある第２の位置で得たポイントクラウドを取得し、
前記ポイントクラウドにおける１又は複数のオブジェクトクラスタを決定し、
前記画像の前記１又は複数のオブジェクトに対して付けられた前記ラベルと、前記ポイントクラウドの前記オブジェクトクラスタの点とを関連付け、
前記オブジェクトクラスタの前記点に関連付けられた前記ラベルに基づいて、前記ポイントクラウドの３次元（３Ｄ）オブジェクトを特定する、
ためのコードを備える、
コンピュータ可読媒体。
【請求項１６】
請求項１５記載のコンピュータ可読媒体において、該コンピュータ可読媒体は、特定された前記３次元オブジェクトに基づいて、前記ポイントクラウドから動的な交通参加者を除去するためのコードを、さらに備える、
コンピュータ可読媒体。
【請求項１７】
請求項１６記載のコンピュータ可読媒体において、該コンピュータ可読媒体は、前記ポイントクラウドから前記動的な交通参加者を除去した後に、前記ポイントクラウドに対して、位置推定及び地図生成を同時に行うためのコードを、さらに備える、
コンピュータ可読媒体。
【請求項１８】
請求項１５記載のコンピュータ可読媒体において、前記画像における前記１又は複数のオブジェクトに対してラベルを付けるための前記コードは、画素単位で、前記画像に対して、セマンティックセグメンテーションを行うためのコードを含む、
コンピュータ可読媒体。
【請求項１９】
請求項１８記載のコンピュータ可読媒体において、前記ラベルと、前記ポイントクラウドの前記オブジェクトクラスタの点とを関連付けるための前記コードは、前記画像の画素の少なくとも一部のラベルを、前記ポイントクラウドの対応する点に関連付けるためのコードを含む、
コンピュータ可読媒体。
【請求項２０】
請求項１５記載のコンピュータ可読媒体において、前記画像における前記１又は複数のオブジェクトに対してラベルを付けるための前記コードは、前記画像内において動的な交通参加者を特定するためのコードを含む
コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は一般に、位置推定と地図生成を同時に行うことに関し、より詳細には、動的な交通参加者の除去を通じて、位置推定と地図生成とを安定して同時に行うことに関する。
【背景技術】
【０００２】
認知技術、動作計画技術、制御技術及び／又は新たなセンシング技術により、自律走行車両の発展は著しい。自律ナビゲーションを実現するためには、正確な位置推定（ｌｏｃａｌｉｚａｔｉｏｎ）及び地図生成（ｍａｐｐｉｎｇ）が必要とされる。自律走行車両は、位置推定及び地図生成をアシストするために、周囲環境の画像及びポイントクラウド（ｐｏｉｎｔ  ｃｌｏｕｄｓ）をキャプチャする。自律走行車両は、キャプチャされた画像とポイントクラウドに対して、位置推定と地図生成の同時実行（ＳＬＡＭ）を行い、周囲環境の地図を生成し、動き及び軌跡／オドメトリ（ｏｄｏｍｅｔｒｙ）データを取得する。ＳＬＡＭは、位置推定及び地図生成を抽出し、関連付け、推定し、及び／又は更新するための１又は複数のオペレーションを含む。多くの場合、画像やポイントクラウドデータには、周囲環境の地図生成や動き・軌跡／オドメトリデータの取得に必要のないオブジェクト（ｏｂｊｅｃｔ）を示すデータが含まれている。不要なオブジェクトとしては、自動車、歩行者、自転車、動物等の動的な交通参加者が挙げられる。ＳＬＡＭオペレーション中にこれらのオブジェクトを含めると、不正確な又は間違った地図生成・位置推定が行われる可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
上記を考慮すると、動的な交通参加者を特定し、ＳＬＡＭオペレーションの前にそのような動的な交通参加者を除去することによって自律走行車両の位置推定及び地図生成をより正確に実施する方法が当技術分野において必要とされている。さらなる利点及び新規な特徴は、以下に提供される開示から明らかになるであろう。
【課題を解決するための手段】
【０００４】
以下は、本開示の１つ以上の態様の概要を与えて、そのような態様の基本的な理解をもたらす。この概要は、考慮された態様の全ての外延的な概説ではなく、また、全ての態様の重要な又は重大な要素を特定しようとするものでも或いは任意の又は全ての態様の範囲を描写しようとするものでもない。その唯一の目的は、本開示の１つ以上の態様の幾つかの概念を以下で与えられるより詳細な説明の前置きとして簡略的形態で与えることである。
【０００５】
本発明の一態様において、自律走行車両のための位置推定及び地図生成を行う方法が提供される。該方法は、カメラを介して、第１の位置で得た画像を取得するステップと、前記画像における１又は複数のオブジェクトに対してラベルを付けるステップと、光検出器を介して、前記第１の位置から閾値距離内にある第２の位置で得たポイントクラウドを取得するステップと、前記ポイントクラウドにおける１又は複数のオブジェクトクラスタを決定するステップと、前記画像の前記１又は複数のオブジェクトに対して付けられた前記ラベルと、前記ポイントクラウドの前記オブジェクトクラスタの点とを関連付けるステップと、前記オブジェクトクラスタの前記点に関連付けられた前記ラベルに基づいて、前記ポイントクラウドの３次元（３Ｄ）オブジェクトを特定するステップと、を有する。いくつかの例では、前記方法は、特定された前記３次元オブジェクトに基づいて、前記ポイントクラウドから動的な交通参加者を除去するステップと、前記動的な交通参加者を除去した前記ポイントクラウドに対して、位置推定及び地図生成を同時に行うステップと、画素単位で、前記画像に対して、セマンティックセグメンテーションを行うステップと、前記画像の画素の少なくとも一部のラベルを、前記ポイントクラウドの対応する点に関連付けるステップと、前記画像内において前記動的な交通参加者を特定するステップと、及び／又は前記ポイントクラウドの地表面を特定して、前記ポイントクラウドから前記地表面を除去するステップと、を有してもよい。
【０００６】
本発明の他の態様において、自律走行車両のための位置推定及び地図生成を行うシステムが提供される。該システムは、１又は複数の画像をキャプチャするカメラと、１又は複数のポイントクラウドをキャプチャする光検出器と、前記カメラと前記光検出器とに結合され、前記１又は複数の画像及び前記１又は複数のポイントクラウドを記憶するメモリと、前記メモリに結合される１又は複数のプロセッサと、を備える。前記１又は複数のプロセッサは、前記カメラを介して、第１の位置で得た画像を取得し、前記画像における１又は複数のオブジェクトに対してラベルを付け、前記光検出器を介して、前記第１の位置から閾値距離内にある第２の位置で得たポイントクラウドを取得し、前記ポイントクラウドにおける１又は複数のオブジェクトクラスタを決定し、前記画像の前記１又は複数のオブジェクトに対して付けられた前記ラベルと、前記ポイントクラウドの前記オブジェクトクラスタの点とを関連付け、前記オブジェクトクラスタの前記点に関連付けられた前記ラベルに基づいて、前記ポイントクラウドの３次元オブジェクトを特定する。いくつかの実施形態において、前記１又は複数のプロセッサはさらに、特定された前記３次元オブジェクトに基づいて、前記ポイントクラウドから動的な交通参加者を除去し、前記動的な交通参加者を除去した前記ポイントクラウドに対して、位置推定及び地図生成を同時に行い、画素単位で、前記画像に対して、セマンティックセグメンテーションを行い、前記画像の画素の少なくとも一部のラベルを、前記ポイントクラウドの対応する点に関連付け、前記画像内において前記動的な交通参加者を特定し、及び／又は前記ポイントクラウドの地表面を特定し、前記ポイントクラウドから前記地表面を除去する。
【０００７】
他の態様において、自律走行車両のための位置推定及び地図生成を行うコンピュータ実行可能コードを記憶するコンピュータ可読媒体が提供される。該コンピュータ可読媒体は、カメラを介して、第１の位置で得た画像を取得し、前記画像における１又は複数のオブジェクトに対してラベルを付け、光検出器を介して、前記第１の位置から閾値距離内にある第２の位置で得たポイントクラウドを取得し、前記ポイントクラウドにおける１又は複数のオブジェクトクラスタを決定し、前記画像の前記１又は複数のオブジェクトに対して付けられた前記ラベルと、前記ポイントクラウドの前記オブジェクトクラスタの点とを関連付け、前記オブジェクトクラスタの前記点に関連付けられた前記ラベルに基づいて、前記ポイントクラウドの３次元オブジェクトを特定する、ためのコードを備える。いくつかの実施形態において、該コンピュータ可読媒体は、特定された前記３次元オブジェクトに基づいて、前記ポイントクラウドから動的な交通参加者を除去し、前記動的な交通参加者を除去した前記ポイントクラウドに対して、位置推定及び地図生成を同時に行い、画素単位で、前記画像に対して、セマンティックセグメンテーションを行い、前記画像の画素の少なくとも一部のラベルを、前記ポイントクラウドの対応する点に関連付け、前記画像内において前記動的な交通参加者を特定し、及び／又は前記ポイントクラウドの地表面を特定し、前記ポイントクラウドから前記地表面を除去するためのコードを、さらに備える。
【０００８】
前述の目的及び関連する目的を達成するために、本開示の１つ以上の態様は、以下で十分に記載されて特に特許請求の範囲で指し示される特徴を含む。以下の説明及び添付図面は、１つ以上の態様の特定の例示的な特徴を詳しく記載する。しかしながら、これらの特徴は、様々な態様の原理を使用できる様々な方法のうちのほんの数例を示し、また、この説明は、そのような態様及びそれらの同等物の全てを含もうとするものではない。
【０００９】
本明細書中に記載される態様の特徴であると考えられる新規な特徴は、添付の特許請求の範囲に記載される。以下の説明において、同様の部分には、明細書及び図面の全体にわたって同じ数字がそれぞれ付される。図面の図は、必ずしも原寸に比例して描かれておらず、また、明確及び簡潔にするために、特定の図が誇張された又は一般化された形態で示され得る。しかしながら、開示自体、並びに、好ましい使用形態、更なる目的、及び、その進展は、例示的な実施形態の以下の詳細な説明を参照することにより、添付図面と併せて読むと、最も良く理解され得る。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の実施形態に係る位置推定／地図生成を行うシステムの一例を示す概略図である。
【図２】図２は、本発明の実施形態に係る位置推定／地図生成を行う方法の一例を示すフローチャートである。
【図３】図３は、本発明の実施形態に係る位置推定／地図生成のためにキャプチャされた画像の一例を示す図である。
【図４】図４は、本発明の実施形態に係る、図３の画像から生成されたセマンティック予測画像（ｓｅｍａｎｔｉｃ  ｐｒｅｄｉｃｔｅｄ  ｉｍａｇｅ）の一例を示す図である。
【図５】図５は、本発明の実施形態に係る位置推定／地図生成のためにキャプチャされたポイントクラウドの一例を示す図である。
【図６】図６は、本発明の実施形態に係る、図５のポイントクラウドから生成した、クラスタリングを行い且つ地表面を除去したポイントクラウドの一例を示す図である。
【図７】図７は、本発明の実施形態に係る、図５のポイントクラウドから生成した、ラベル化されたポイントクラウドの一例を示す図である。
【図８】図８は、本発明の実施形態に係る、図７のラベル化されたポイントクラウドから生成した、動的な交通参加者を除去したポイントクラウドの一例を示す図である。
【図９】図９は、本発明の実施形態に係る、使用されるハードウェア構成要素及びその他の特徴を含むシステムの一例を示す図である。
【図１０】図１０は、本発明の実施形態に係る、使用されるシステム構成要素の一例を示すブロック図である。
【発明を実施するための形態】
【００１１】
添付の図面に関連して以下に記載される詳細な説明は、様々な構成の説明として意図されており、本明細書で説明される概念が実施され得る唯一の構成を表すことを意図されていない。詳細な説明は、様々な概念の完全な理解を提供する目的のための特定の項目要素を含む。しかしながら、これらの概念がこれらの具体的な項目要素なしに実施されてもよいことは当業者には明らかであろう。いくつかの事例では、そのような概念を曖昧にすることを避けるために、よく知られている構成要素がブロック図形式で示される。
【００１２】
自律走行車両の位置推定及び地図生成は、画像入力（例えばカメラから）及び光センサ入力（例えば光検出及び距離測定（ＬＩＤＡＲ）装置から）等の複数の入力ソースからの入力を使用して行われる。例えば、複数の入力ソースは、入力を同時に分析することができるように、同様の時点、場所等における入力をキャプチャし、及び／又はキャプチャした入力を関連付ける。一例では、車両等の試験装置は、カメラ及びＬＩＤＡＲ装置を備え、車両が経路に沿って移動しながら、画像及びポイントクラウドをキャプチャすることができる。画像及びポイントクラウドは同時に解析されて、ポイントクラウドマップ及び／又は自律走行車両の移動軌跡／オドメトリを生成することができる。例えば、画像及びポイントクラウドを分析して、ポイントクラウドマップ及び／又は自律走行車両の移動軌跡／オドメトリを生成することができる。画像及びポイントクラウドを分析しながら、ポイントクラウド内の自動車、歩行者、自転車、又は動物等の動的な交通参加者の特定及びラベル付けが、画像からのラベルに基づいて、実行される。さらに、動的な交通参加者は、ポイントクラウドから削除され、位置推定と地図生成の同時実行（ＳＬＡＭ）からより正確な結果が得られる。
【００１３】
以下は、本明細書中で使用される選択用語の定義を含む。定義は、用語の範囲に入ると共に実施のために使用され得る構成要素の様々な例及び／又は形態を含む。これらの例は限定しようとするものではない。
【００１４】
本明細書中で使用される「バス」という用語は、単一又は複数のシステム内のコンピュータ構成要素間でデータを転送するために動作可能に接続される相互接続アーキテクチャを指すことができる。バスは、数ある中でもとりわけ、メモリバス、メモリコントローラ、ペリフェラルバス、外部バス、クロスバースイッチ、及び／又は、ローカルバスであってもよい。また、バスは、とりわけ、コントローラ・エリア・ネットワーク（ＣＡＮ）、ローカル相互接続ネットワーク（ＬＩＮ）等のプロトコルを使用して車両内の構成要素を相互接続する車両バスであってもよい。
【００１５】
本明細書中で使用される「メモリ」という用語は、揮発性メモリ及び／又は不揮発性メモリを含むことができる。不揮発性メモリとしては、例えば、リードオンリーメモリ（ＲＯＭ）、プログラマブルリードオンリーメモリ（ＰＲＯＭ）、消去可能ＰＲＯＭ（ＥＰＲＯＭ）、及び、電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）を挙げることができる。揮発性メモリとしては、例えば、ランダムアクセスメモリ（ＲＡＭ）、同期ＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ）、ダブルデータレートＳＤＲＡＭ（ＤＤＲ ＳＤＲＡＭ）、及び、ダイレクトＲＡＭバスＲＡＭ（ＤＲＲＡＭ）を挙げることができる。
【００１６】
本明細書中で使用される「動作可能接続」という用語は、それによって実在物（ｅｎｔｉｔｙ）が「動作可能に接続される」接続を含むことができ、信号、物理的通信、及び／又は、論理的通信を送る及び／又は受けることができるものである。動作可能接続としては、物理インターフェース、データインターフェース、及び／又は、電気インターフェースを挙げることができる。
【００１７】
本明細書中で使用される「プロセッサ」という用語は、信号を処理して一般的なコンピューティング機能及び演算機能を果たすデバイスを指すことができる。プロセッサにより処理される信号としては、デジタル信号、データ信号、コンピュータ命令、プロセッサ命令、メッセージ、ビット、ビットストリーム、又は、受信され、送信され、及び／又は、検出され得る他のコンピューティングを挙げることができる。プロセッサとしては、例えば、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ（ＤＳＰ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、プログラマブル論理デバイス（ＰＬＤ）、状態機械、ゲーテッドロジック、ディスクリートハードウェア回路、システムオンチップ（ＳｏＣ）及び、本明細書中に記載される様々な機能を果たすように構成される他の適したハードウェアを挙げることができる。
【００１８】
システムのいくつかの態様が、種々の装置及び方法を参照して提示される。これらの装置及び方法は、以下の詳細な説明で説明され、様々なブロック、モジュール、構成要素、回路、ステップ、プロセス、アルゴリズム等（まとめて「要素」と呼ばれる）によって添付の図面に示される。これらの要素は、電子ハードウェア、コンピュータソフトウェア、又はそれらの任意の組み合わせを使用して実装することができる。そのような要素がハードウェア又はソフトウェアとして実装されるかどうかは、特定の用途及びシステム全体に課される設計上の制約に依存する。
【００１９】
例として、要素、要素の任意の部分、又は要素の任意の組み合わせは、１又は複数のプロセッサを含む「処理システム」を用いて実装することができる。処理システム内の１又は複数のプロセッサがソフトウェアを実行することができる。ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語等と呼ばれるかどうかとは関係なく、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行のスレッド、手順、機能等を意味するように広く解釈される。
【００２０】
従って、１つ又は複数の態様では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装することができる。ソフトウェアで実施される場合、これらの機能は、コンピュータ可読媒体上の１又は複数の命令又はコード上に格納されるか、又はコード化される。コンピュータ可読媒体は、コンピュータ記憶媒体を含む。記憶媒体は、コンピュータによってアクセスすることができる任意の利用可能な媒体とすることができる。限定はされないが、例として、そのようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ又は他の光ディスク記憶装置、磁気ディスク記憶装置又は他の磁気記憶装置、又は所望のプログラムコードを命令又はデータ構造の形で保持又は記憶するために使用することが可能であり、コンピュータによってアクセスすることができる任意の他の媒体を含む。
【００２１】
図１は、本明細書に記載の実施形態による、自律走行車両の位置推定及び地図生成のためのシステム１００の一例の概略図を示す。システム１００の構成要素、並びに本明細書で説明される他のシステムの構成要素、ハードウェアアーキテクチャ及びソフトウェアアーキテクチャは、本開示の様々な態様のために、組み合わせる、省略する、又は編成することによって、異なるアーキテクチャを構成することができる。しかしながら、本明細書で説明される例示的な態様及び構成は、対応するシステム構成要素及び関連する方法と共に、図１に示されるようなシステム１００に焦点を合わせる。
【００２２】
図１に示されるように、システム１００は、本明細書で説明される特定の動作を実行するために通信する１又は複数のプロセッサ１０２及び１又は複数のメモリ１０４を含むか又はそれらと動作可能に結合される（或いは該プロセッサ及び該メモリによって実行される）。例えば、１又は複数のプロセッサ１０２及び／又は１又は複数のメモリ１０４は、３次元（３Ｄ）ポイントクラウドマップ及び自律走行車両運動軌跡／オドメトリ等の位置推定／地図生成情報を生成するための位置推定・地図生成部１０６、１又は複数の画像を（例えばカメラ１１０から）受信するための画像部１０８、（例えば、ＬＩＤＡＲ１１４装置から）１又は複数のポイントクラウドを受信するためのポイントクラウド部１１２、及び／又は、システム１００の位置に関連する（例えば、及び／又は画像及び／又はポイントクラウド入力に対応する）１又は複数のパラメータを受け取るための位置推定部１１６、を実現するために、命令パラメータ等を実行及び／又は記憶する。プロセッサ１０２、メモリ１０４、上記機能部１０６、１０８、１１２、１１６等の様々なものは、バス１１８を介して動作可能に結合される。他の例では、プロセッサ１０２は、本明細書に記載の機能を実行するために様々な機能部１０６、１０８、１１２、１１６のうちの１又は複数を実行することができ、バス１１８を介して、メモリ１０４及び／又は他の構成要素に動作可能に結合される。
【００２３】
一例では、位置推定・地図生成部１０６は、画像入力及びポイントクラウド入力に基づいてポイントクラウド内のオブジェクトを検出するための３Ｄ検出部１２０、ポイントクラウドから動的な交通参加者を除去するための動的交通参加者除去部１２２、及び／又は動的な交通参加者が除去された状態のポイントクラウドに対して、ＳＬＡＭオペレーションを実行するためのＳＬＡＭ部１２４、を含む。
【００２４】
一態様では、システム１００は、その全部又は一部が、経路を走行する車両内で使用される。他の例では、システム１００は、車両と１又は複数の遠隔装置との間に分散されてもよい（例えば、カメラ１１０又はＬＩＤＡＲ１１４は、車両上に配置し、一方、位置推定・地図生成部１０６等の１又は複数の機能部は、１又は複数の遠隔配置されたコンピュータに分散配置されてもよい）。これに関して、例えば、カメラ１１０、ＬＩＤＡＲ１１４等からの入力の処理は、車両で行ってもよいし、或いは、位置推定及び地図生成を実行する遠隔配置された装置で行ってもよい。一態様では、いずれの場合も、位置推定・地図生成部１０６は、表示及び／又はさらなる処理のために、３Ｄポイントクラウドマップ及び／又は自律走行車両の軌跡／オドメトリ等の位置推定・地図生成情報を、ネットワーク１４０を介して、１又は複数の他の装置に提供することができる。
【００２５】
ここで、図１で例示されるシステム１００と併せて図２を参照して、位置推定及び地図生成のための例示的方法２００が説明される。一態様では、方法２００は、システム１００の１又は複数のプロセッサ１０２及び／又はメモリ１０４によって実行することができ、これらは、上述のように、車両に配置されるか、又は、種々の場所に分散配置される。これに関して、１又は複数のブロックは、位置推定・地図生成情報を生成するために、車両において又は離れた場所において（例えば、全体が又は一部が）実行される。
【００２６】
ブロック２０２において、本方法は、画像を取得することを含む。一態様では、画像部１０８が、カメラ（例えばカメラ１１０）を介して画像を取得する。例えば、カメラ１１０は、経路に沿って移動する車両に配置されてもよく、周期的に画像をキャプチャするように及び／又は毎秒一定フレーム数（ＦＰＳ）でビデオをキャプチャするように構成される。カメラ１１０は、画像／ビデオをローカルに及び／又はメモリ１０４に保存し、及び／又は画像／ビデオを遠隔装置に提供することができ、そこから画像部１０８は、画像を受け取ることができる。さらに、例えば、位置推定部１１６は、画像に関連する位置を決定する。この決定は、画像がカメラ１１０で撮影された時点で又はその時点近傍で、該カメラ１１０を有する車両の全地球測位システム（ＧＰＳ）座標を取得することを含む。一態様では、位置推定部１１６は、画像を処理する際に該画像に対して位置を決定することができるように、（例えば、画像メタデータ又はリレーショナルストレージ（ｒｅｌａｔｉｏｎａｌ  ｓｔｏｒａｇｅ）で）ＧＰＳ座標を画像に関連付ける。
【００２７】
ブロック２０４において、本方法２００は、画像に対してセマンティックセグメンテーション（ｓｅｍａｎｔｉｃ  ｓｅｇｍｅｎｔａｔｉｏｎ）を実行することを含む。一態様では、位置推定・地図生成部１０６が、画像に対してセマンティックセグメンテーションを実行する。例えば、３Ｄ検出部１２０は、拡張された畳み込み（ｄｉｌａｔｅｄ  ｃｏｎｖｏｌｕｔｉｏｎａｌ）セマンティックセグメンテーションニューラルネットワークを画像に適用して、画素の少なくとも一部を１又は複数のセマンティックな予測と関連付けることによって、画像に対して、セマンティックセグメンテーションを実行する。一態様では、３Ｄ検出部１２０が、拡張された畳み込みセマンティックセグメンテーションニューラルネットワークを適用する。物体（オブジェクト）認識は、シーンのより正確な視覚的表現に基づいた（例えば、ポイントクラウドドメインとは対照的に）画像ドメインにおいて、より正確になる。従って、３Ｄ検出部１２０は、拡張された畳み込みセマンティックセグメンテーションニューラルネットワークを画像に適用して、密な画素単位のセマンティックカテゴリ予測を出力することができる。例えば、セマンティックセグメンテーションを適用することからの出力は、画素に対する色値を、セマンティックセグメンテーションにおけるオブジェクト定義に基づいて検出オブジェクトに対応させて色値で置き換えた画像と、類似の形状及び輪郭を有するように見える。従って、例えば、画素の一群に対応するセマンティックカテゴリは、画素色値に基づいて決定され、オブジェクトの特定のサイズパラメータ（ｓｉｚｉｎｇ  ｐａｒａｍｅｔｅｒｓ）は、与えられた方向における画素色値に対応するいくつかの隣接画素に基づいて決定又は推測される。セマンティックセグメンテーションによって、セマンティックカテゴリに従ってラベル付けされた画素を有する画像が生成される。
【００２８】
一態様では、セマンティックカテゴリは、特に、道路、空、歩道、植物、人、車両、及び建物を含む。一例では、３Ｄ検出部１２０が、セマンティックカテゴリを決定するが、セマンティックセグメンテーションにおける情報の不正確さによって、エッジ画素がオブジェクトの一部かどうかが不確かとなるため、画像におけるオブジェクトの境界部分では正確でない場合がある。さらに、例えば、セマンティックセグメンテーションを適用することは、インスタンス特有（ｉｎｓｔａｎｃｅ  ｓｐｅｃｉｆｉｃ）ではないセマンティックカテゴリ化をもたらす（例えば、同じセマンティックカテゴリを有する複数のオブジェクトは、同じ画素値に関連付けられる）。
【００２９】
ブロック２０６において、本方法２００は、ポイントクラウドを取得することを含む。一態様では、ポイントクラウド部１１２は、光検出器（例えば、ＬＩＤＡＲ１１４）を介して、ポイントクラウドを取得する。例えば、ＬＩＤＡＲ１１４は、経路に沿って移動する車両に配置されてもよく、経路に沿った領域のポイントクラウド走査を周期的にキャプチャするように構成されてもよい。ＬＩＤＡＲ１１４は、ポイントクラウドをローカルに及び／又はメモリ１０４に保存することができ、及び／又はポイントクラウドを遠隔装置に提供することができ、そこからポイントクラウド部１１２がポイントクラウドを受け取ることができる。また、例えば、位置推定部１１６は、ポイントクラウドに関連する位置を決定する。この決定は、ポイントクラウドの少なくとも一部がＬＩＤＡＲ１１４でキャプチャされた時点で又はその時点近傍で、該ＬＩＤＡＲ１１４を有する車両の全地球測位システム（ＧＰＳ）座標を取得することを含む。一例では、位置推定部１１６は、位置推定・地図生成のためにポイントクラウドを処理する際に該ポイントクラウドに対して位置を決定することができるように、（例えば、ポイントクラウドメタデータ又はリレーショナルストレージで）ＧＰＳ座標をポイントクラウドに関連付ける。
【００３０】
一態様では、位置推定部１１６は、類似の時点でキャプチャされた画像及びポイントクラウドを互いに及び／又は対応する位置に関連付ける。さらに、本明細書でさらに説明されるように、位置推定・地図生成部１０６は、画像及びポイントクラウドの入力を取得し、これら入力は、特に、画像及びポイントクラウドのキャプチャが行われた関連する時点に基づいて、及び関連する位置に基づいて同期されてもよい。
【００３１】
ブロック２０８において、本方法２００は、ポイントクラウド内の複数のオブジェクトクラスタを決定することを含む。例えば、３Ｄ検出部１２０は、ポイントクラウドをより小さな部分に組織化し、ポイントクラウドの異なる部分を分類することによって、オブジェクトクラスタを決定する。一態様では、３Ｄ検出部１２０は、例えば、径方向有界最短距離（ｒａｄｉａｌｌｙ  ｂｏｕｎｄｅｄ  ｎｅａｒｅｓｔ  ｎｅｉｇｈｂｏｒ）（ＲＢＮＮ）クラスタ法、ユークリッドセンス法（Ｅｕｃｌｉｄｅａｎ  ｓｅｎｓｅ  ｍｅｔｈｏｄ）、又は領域拡張セグメンテーション法（ｒｅｇｉｏｎ  ｇｒｏｗｉｎｇ  ｓｅｇｍｅｎｔａｔｉｏｎ  ｍｅｔｈｏｄ）を使用することによってクラスタリングを実行することができる。
【００３２】
ブロック２１０において、本方法２００は、ポイントクラウドから地表面を除去することを含む。一態様では、３Ｄ検出部１２０は、クラスタ化されて地表面として特定された点を除去することによって地表面を除去することができる。例えば、３Ｄ検出部１２０は、地表面を、ポイントクラウド内の最大の平面構成要素であると決定する。さらに、オブジェクトクラスタリング部１２０は、大きな平面（例えば、閾値ポイントサイズよりも大きい平面）がなくなるまで、平面インライア（ｐｌａｎｅ  ｉｎｌｉｅｒ）であると判定されたポイントクラウド内の点を除去、無視、又はそうでなければ回避する。例えば、３Ｄ検出部１２０は、ＲＡＮＳＡＣ（ｒａｎｄｏｍ  ｓａｍｐｌｅ  ｃｏｎｓｅｎｓｕｓ）を使用して、閾値ポイントサイズを達成する平面インライアを決定することによって、平面インライアを除去、無視、又は回避することができる。
【００３３】
ブロック２１２において、本方法は、画像からポイントクラウドへラベルを転送することを含む。一態様では、３Ｄ検出部１２０は、セマンティックセグメンテーションを実行した後の画像と、オブジェクトをクラスタ化して地表面を除去した後のポイントクラウドとを受け取る。一態様では、３Ｄ検出部１２０は、少なくとも画素の一部に対応する点の少なくとも一部を、関連付けられた１又は複数のセマンティック予測（ｓｅｍａｎｔｉｃ  ｐｒｅｄｉｃｔｉｏｎ）と関連付ける。画素と点との関連付けに基づいて、３Ｄ検出部１２０は、画像の画素からポイントクラウドの関連する点にラベルを転送する。
【００３４】
ブロック２１４において、本方法２００は、ポイントクラウドから動的な交通参加者を除去することを含む。一態様では、動的交通参加者除去部１２２は、ラベル付けされたポイントクラウドを受け取り、そのラベルに基づいて、動的な交通参加者をポイントクラウドから除去することができる。例えば、動的交通参加者除去部１２２は、人、車両、又動的な交通参加者と見なされる別のオブジェクトとしてラベル付けされたポイントを除去する。
【００３５】
ブロック２１６において、本方法２００は、ＳＬＡＭオペレーションを実行することを含む。一態様では、ＳＬＡＭ部１２４は、動的な交通参加者が除去されたポイントクラウドを受け取り、動的な交通参加者が除去されたポイントクラウドに対してＳＬＡＭオペレーションを実行する。一例では、ＳＬＡＭ部１２４は、正規分布変換（ＮＤＴ）、反復最近接ポイント（Ｉｔｅｒａｔｉｖｅ  Ｃｌｏｓｅｓｔ  Ｐｏｉｎｔ）（ＩＣＰ）、確率的反復対応（Ｐｒｏｂａｂｉｌｉｓｔｉｃ  Ｉｔｅｒａｔｉｖｅ  Ｃｏｒｒｅｓｐｏｎｄｅｎｃｅ）（ｐＩＣ）、条件付き確率場（ＣＲＦ）、局所幾何学的特徴登録（Ｌｏｃａｌ  Ｇｅｏｍｅｔｒｉｃ  Ｆｅａｔｕｒｅｓ  ｒｅｇｉｓｔｒａｔｉｏｎ）、及び分枝限定法等の１又は複数のＳＬＡＭアルゴリズムを使用して、ＳＬＡＭオペレーションを実行する。
【００３６】
ブロック２１８において、本方法２００は、実行されたＳＬＡＭアルゴリズムに基づいて、位置推定及び地図生成を出力する。一態様では、ＳＬＡＭ部１２４は、ＳＬＡＭアルゴリズムに基づいて、３Ｄポイントクラウドマップデータ及び／又は自律走行車両の移動軌跡／オドメトリデータを出力する。
【００３７】
一例では、位置推定・地図生成部１０６は、ネットワーク１４０を介して、３Ｄポイントクラウドマップデータ及び／又は自律走行車両運動軌跡／オドメトリデータを１又は複数の他の装置に提供する。例えば、位置推定・地図生成部１０６は、ネットワーク１４０を介して、３Ｄポイントクラウドマップデータ及び／又は自律走行車両の移動軌跡／オドメトリデータをアップロードし、他の車両、パーソナルデバイス（例えば、携帯電話、タブレット等）は、ナビゲーションシステムのディスプレイに表示するため、３Ｄ地図生成及び／又は自律走行車両の移動軌跡／オドメトリデータ等を増強又は更新するために、３次元ポイントクラウドマップデータ及び／又は自律走行車両の走行軌跡／オドメトリデータをダウンロードする。
【００３８】
図３〜図８は、上述の態様に係る、画像及び／又はスキャンの例を示している。図３は、カメラ１１０によってキャプチャされた画像３００の一例を示しており、カメラ１１０は、経路を走行する車両３０２に取り付けられている。画像３００は、経路に沿ってカメラ１１０によってキャプチャされたシーンを示し、シーンは、上述のように、場所（例えば、画像３００がキャプチャされたときの車両３０２の場所）に関連付けられている。画像３００は、通り３０４と、通り３０４に沿った様々な建物３０６と、通り３０４を又は近くを歩いている複数の人々３０８、３１０、３１２と、駐車している及び／又は通り３０４に沿って移動している複数の車両３１４、３１６、３１８とを含む。この画像３００は、位置推定・地図生成部１０６に提供される画像の一例である。図４は、画像３００から生成されたセマンティック予測画像４００の一例を示している。例えば、３Ｄ検出部１２０は、画像３００内の通り３０４を検出し、通り３０４として特定された画素の画素値を１つの色となるように修正して、セマンティック予測画像４００内の通り４０４を生成する。同様に、３Ｄ検出部１２０は、画像３００内の建物３０６を検出し、建物３０６として特定された画素の画素値を１つの色となるように修正し、セマンティック予測画像４００内の建物４０６を生成する。さらに、３Ｄ検出部１２０は、画像３００内の人３０８、３１０、３１２を検出し、人３０８、３１０、３１２として特定された画素の画素値を１つの色となるように修正して、セマンティック予測画像内に人４０８を生成する。さらに、例えば、３Ｄ検出部１２０は、画像３００内の車両３１４、３１６、３１８を検出し、車両として特定された画素の画素値を１つの色となるように修正し、セマンティック予測画像内の車両４１０を生成する。説明したように、同じセマンティッククラス（例えば、車両）で特定されたオブジェクトは、同じ色となるように修正されるので、同じラベルを含むことになる。
【００３９】
図５は、ＬＩＤＡＲ１１４から得られたポイントクラウド５００の一例を示す。ＬＩＤＡＲ１１４もまた、経路を移動する車両５０２に搭載されている。ポイントクラウド５００は、経路に沿ってＬＩＤＡＲ１１４によってキャプチャされたＬＩＤＡＲスキャンを示しており、画像３００及びポイントクラウド５００がキャプチャされた時間、ポイントクラウド５００がキャプチャされたときの車両の位置等に基づいて、ポイントクラウド５０もまた画像３００の位置に関連付けられる。ポイントクラウド５００は、（画像３００内の通り３０４である）通り５０４、（画像３００内の建物３０６である）１又は複数の建物５０６、（画像３００内の複数の人３０８〜３１２である）複数の人５０８、５１０、５１２、及び（画像３００内の１又は複数の車両３１４〜３１８である）複数の車両５１４、５１６、５１８、を定義する複数の点を含む。ポイントクラウド５００はまた、位置推定・地図生成部１０６に提供される。
【００４０】
図６は、オブジェクトクラスタリングが行われ、地表面が除去されたポイントクラウド６００の一例を示す。一態様では、３Ｄ検出部１２０は、上記の１又は複数の方法に基づいて、オブジェクトクラスタを決定する。例えば、３Ｄ検出部１２０は、通り５０４（図６には示されていない）、（ポイントクラウド５００の建物５０６である）建物６０６、（ポイントクラウド５００の複数の人５０８〜５１２である）人６０８、６１０、６１２、及び（ポイントクラウド５００の複数の車両５１４〜５１８である）車両６１４、６１６、６１８をクラスタ化する。３Ｄ検出部１２０は、例えば、地表面はポイントクラウド６００内の最大の平面構成要素であると判断することによって、ポイントクラウド６００から地表面を除去することができる。
【００４１】
図７は、ラベリングされた画像４００から、クラスタリングが実行されて地表面が除去されたポイントクラウド６００にラベルが転送されたポイントクラウド７００の一例を示す。一態様では、３Ｄ検出部１２０は、画像３００のラベルをポイントクラウド６００の点と関連付け、そのラベルに基づいて動的な交通参加者を決定する。図７に示すように、（ポイントクラウド５００の人５０８〜５１２である）ポイントクラウド６００の人６０８〜６１２は、人としてラベル付けされ、（ポイントクラウド５００の車両５１４〜５１８である）車両６１４〜６１８も同様であり、従って、動的な交通参加者７０２であると決定される。しかしながら、ポイントクラウド７００の（ポイントクラウド５００の建物５０６である）建物７０６は、動的な交通参加者であると決定された建物としてラベル付けされている。
【００４２】
図８は、動的な交通参加者が除去されたポイントクラウド８００の一例を示す。一態様では、動的交通参加者除去部１２２は、ラベル付けされたポイントクラウドに基づいて、動的な交通参加者を除去することができる。一例では、動的な交通参加者は、人５０８〜５１２及び車両５１４〜５１８を含む。図５と比較して、動的な交通参加者がポイントクラウド８００から取り除かれているので、図８は、人５０８〜５１２及び車両５１４〜５１８を含まない。しかしながら、図８に示されるように、（ポイントクラウド５００の建物５０６である）建物８０８はポイントクラウド８００内に残る。動的な交通参加者が取り除かれると、ＳＬＡＭ部は、動的な交通参加者が除去されたポイントクラウド８００からのデータを使用して、上述のようにＳＬＡＭオペレーションを実行することができる。
【００４３】
本開示の実施形態は、ハードウェア、ソフトウェア、又はそれらの組み合わせを使用して実行することができ、１つ又は複数のコンピュータシステム又は他の処理システムで実行することができる。一変形例では、本開示の実施形態は、本明細書に記載の機能を実行することができる１つ又は複数のコンピュータシステム向けになっている。そのようなコンピュータシステム９００の一例を図９に示す。
【００４４】
コンピュータシステム９００は、１つ又は複数のプロセッサ（例えば、プロセッサ９０４）を含む。プロセッサ９０４は、通信インフラストラクチャ９０６（例えば、通信バス、クロスオーバーバー、又はネットワーク）に接続される。この例示的なコンピュータシステムの観点から、様々なソフトウェアの態様が説明される。この説明を読めば、他のコンピュータシステム及び／又はアーキテクチャを使用して本開示の実施形態を実行する方法は、当業者には明らかになるであろう。
【００４５】
コンピュータシステム９００は、ディスプレイユニット９３０上に表示するために、通信インフラストラクチャ９０６（又は、図示されていないフレームバッファ）からグラフィックス、テキスト、及び他のデータを転送するディスプレイインターフェース９０２を含む。コンピュータシステム９００はまた、主メモリ９０８、好ましくはランダムアクセスメモリ（ＲＡＭ）を含み、また、２次メモリ９１０を含んでもよい。２次メモリ９１０は、例えば、ハードディスクドライブ９１２及び／又はリムーバブル記憶ドライブ９１４（フロッピーディスクドライブ、磁気テープドライブ、光ディスクドライブ等）を含む。リムーバブル記憶ドライブ９１４は、周知の方法で、リムーバブル記憶ユニット９１８から読み取り、及び／又はリムーバブル記憶ユニット９１８に書き込む。リムーバブル記憶ユニット９１８は、フロッピーディスク、磁気テープ、光ディスク等であり、リムーバブル記憶ドライブ９１４によって読み出され、またリムーバブル記憶ドライブ９１４に書き込まれる。理解されるように、リムーバブル記憶ユニット９１８は、コンピュータソフトウェア及び／又はデータを記憶したコンピュータ使用可能記憶媒体を含む。
【００４６】
他の態様では、２次メモリ９１０は、コンピュータプログラム又は他の命令がコンピュータシステム９００にロードされることを可能にするための他の同様のデバイスを含むことができる。そのようなデバイスは、例えば、リムーバブル記憶ユニット９２２及びインターフェース９２０を含むことができる。そのような例には、プログラムカートリッジ及びカートリッジインターフェース（ビデオゲーム装置に見られるもの等）、リムーバブルメモリチップ（消去可能なプログラム可能読み取り専用メモリ（ＥＰＲＯＭ）、又はプログラム可能読み取り専用メモリ（ＰＲＯＭ）等）、対応するソケット、及び他のリムーバブル記憶ユニット９２２及び、リムーバブル記憶ユニット９２２からコンピュータシステム９００にソフトウェア及びデータを転送することを可能にするインターフェース９２０を含む。
【００４７】
コンピュータシステム９００はまた、通信インターフェース９２４を含んでもよい。通信インターフェース９２４は、ソフトウェア及びデータがコンピュータシステム９００と外部装置との間で転送されることを可能にする。通信インターフェース９２４の例には、モデム、ネットワークインターフェース（イーサネットカード等）、通信ポート、パーソナルコンピュータメモリカード国際協会（ＰＣＭＣＩＡ）スロット及びカード等が含まれる。通信インターフェース９２４を介して転送されるソフトウェア及びデータは、通信インターフェース９２４によって受信可能な電子信号、電磁信号、光学信号又は他の信号等の信号９２８の形態をとる。これらの信号９２８は、通信パス（例えば、チャネル）９２６を介して通信インターフェース９２４に供給される。このパス９２６は、信号９２８を搬送し、ワイヤ又はケーブル、光ファイバ、電話回線、セルラーリンク、無線周波数（ＲＦ）リンク及び／又は他の通信チャネルを使用して実行される。この明細書では、「コンピュータプログラム媒体」及び「コンピュータ使用可能媒体」という用語は、リムーバブル記憶ドライブ９８０やハードディスクドライブ９７０にインストールされたハードディスクや信号９２８等のメディアを総称するために使用される。これらのコンピュータプログラム製品は、コンピュータシステム９００にソフトウェアを提供する。本発明の実施形態は、そのようなコンピュータプログラム製品を対象にしている。
【００４８】
コンピュータプログラム（コンピュータ制御論理とも呼ばれる）は、主メモリ９０８及び／又は２次メモリ９１０に格納される。コンピュータプログラムは、通信インターフェース９２４を介して受信することもできる。このようなコンピュータプログラムが実行されると、コンピュータシステム９００は、本明細書で説明されるように、本発明の実施形態に係る様々な特徴を実行する。特に、コンピュータプログラムは、実行されると、プロセッサ９０４にそのような特徴を実行させる。従って、そのようなコンピュータプログラムは、コンピュータシステム９００のコントローラに対応する。コンピュータプログラムは、本明細書で記載されたように、位置推定・地図生成部１０６、１又は複数のカメラ１１０から画像を受け取るための画像部１０８、ポイントクラウドを受け取るためのポイントクラウド部１１２、プロセッサ９０４に関連する１又は複数のエンティティ（ｅｎｔｉｔｉｙ）の位置を決定するための位置推定部１１６等を含む。
【００４９】
本発明の実施形態がソフトウェアを使用して実施される変形形態では、ソフトウェアは、コンピュータプログラム製品に格納され、リムーバブル記憶ドライブ９１４、ハードドライブ９１２、又は通信インターフェース９２０を使用して、コンピュータシステム９００にロードされる。制御ロジック（ソフトウェア）は、プロセッサ９０４によって実行されると、プロセッサ９０４に、本明細書に記載される本発明の実施形態に係る機能を実行させる。他の変形形態では、例えば、特定用途向け集積回路（ＡＳＩＣ）等のハードウェア構成要素を使用して、主にハードウェアで実施される。本明細書で説明された機能を実行するためのハードウェア状態機械の実施は、当業者には明らかであろう。
【００５０】
さらに他の変形例では、ハードウェアとソフトウェアの両方の組み合わせを使用して実施される。
【００５１】
図１０は、本発明の実施形態に従って使用され得る様々な例示的なシステム構成要素のブロック図である。例えば、様々な構成要素が車両１０２内に存在してもよく、又は構成要素のうちのいくつかのみが車両１０２内にある一方、他の構成要素は車両１０２から離れていてもよい。システム１０００は、１つ又は複数のアクセスする人１０６０、１０６２（本明細書では１つ又は複数の「ユーザ」とも呼ぶ）と、１つ又は複数の端末１０４２、１０６６（このような端末は、例えば、オブジェクト検出システム１１０の様々な特徴であってもよいし或いは含んでもよい）とを含む。一実施形態では、本発明の実施形態に従って使用するためのデータは、ネットワーク１０４４（例えば、インターネット又はイントラネット等）及び結合装置１０４５、１０４６、１０６４を介して、プロセッサ及びデータ保存場所及び／又はデータ保存場所への接続を有するサーバ１０４３（例えば、ＰＣ、ミニコンピュータ、メインフレームコンピュータ、マイクロコンピュータ、又は他のデバイス等）に結合された端末１０４２、１０６６（例えば、パーソナルコンピュータ（ＰＣ）、ミニコンピュータ、メインフレームコンピュータ、マイクロコンピュータ、電話装置、パーソナルデジタルアシスタント（「ＰＤＡ」）やハンドヘルド無線デバイス等の無線デバイス等）を介して、アクセスする人１０６０、１０６２によって、例えば、入力及び／又はアクセスされる。結合装置１０４５、１０４６、１０６４としては、例えば、有線、無線、又は光ファイバのリンク等が挙げられる。他の変形例では、本発明の実施形態による方法及びシステムは、単一の端末のようなスタンドアロン環境で動作する。
【００５２】
本明細書で説明される態様は、コンピュータ実行可能命令を格納するコンピュータ可読記憶媒体との関連において、説明され実施されてもよい。コンピュータ可読記憶媒体は、コンピュータ記憶媒体及び通信媒体を含む。例えば、フラッシュメモリドライブ、デジタル多用途ディスク（ＤＶＤ）、コンパクトディスク（ＣＤ）、フロッピーディスク、テープカセット等である。コンピュータ可読記憶媒体としては、コンピュータ可読命令、データ構造、モジュール又は他のデータのような情報を記憶するための任意の方法又は技術で実施される揮発性及び不揮発性、取り外し可能な媒体及び取り外し不可能な媒体が挙げられる。
【００５３】
上記に開示された特徴及び機能、及び他の特徴及び機能、又はその代替形態又は変形形態の様々な実施形態を望ましいように組み合わせて、多くの他の異なるシステム又はアプリケーションとして構成してもよいことは理解されよう。 また、以下の請求項に包含されることが意図されるが、現在は予測されていない、又は予想されていない種々の代替、変形、変更、又は改良は、当業者であれば、引き続き行うことができる。
【図１】
2019207220.tif 000003
【図２】
2019207220.tif 000004
【図３】
2019207220.tif 000005
【図４】
2019207220.tif 000006
【図５】
2019207220.tif 000007
【図６】
2019207220.tif 000008
【図７】
2019207220.tif 000009
【図８】
2019207220.tif 000010
【図９】
2019207220.tif 000011
【図１０】
2019207220.tif 000012
【外国語明細書】
2019207220000001.pdf