IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ズークス インコーポレイテッドの特許一覧

特許7665587アクションデータに基づくトップダウンシーンの予測
<>
  • 特許-アクションデータに基づくトップダウンシーンの予測 図1
  • 特許-アクションデータに基づくトップダウンシーンの予測 図2A
  • 特許-アクションデータに基づくトップダウンシーンの予測 図2B
  • 特許-アクションデータに基づくトップダウンシーンの予測 図3
  • 特許-アクションデータに基づくトップダウンシーンの予測 図4
  • 特許-アクションデータに基づくトップダウンシーンの予測 図5
  • 特許-アクションデータに基づくトップダウンシーンの予測 図6
  • 特許-アクションデータに基づくトップダウンシーンの予測 図7
  • 特許-アクションデータに基づくトップダウンシーンの予測 図8
  • 特許-アクションデータに基づくトップダウンシーンの予測 図9
  • 特許-アクションデータに基づくトップダウンシーンの予測 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-04-11
(45)【発行日】2025-04-21
(54)【発明の名称】アクションデータに基づくトップダウンシーンの予測
(51)【国際特許分類】
   B60W 30/10 20060101AFI20250414BHJP
   B60W 40/04 20060101ALI20250414BHJP
   B60W 40/06 20120101ALI20250414BHJP
   B60W 60/00 20200101ALI20250414BHJP
【FI】
B60W30/10
B60W40/04
B60W40/06
B60W60/00
【請求項の数】 14
(21)【出願番号】P 2022500033
(86)(22)【出願日】2020-07-02
(65)【公表番号】
(43)【公表日】2022-09-07
(86)【国際出願番号】 US2020040713
(87)【国際公開番号】W WO2021007106
(87)【国際公開日】2021-01-14
【審査請求日】2023-07-03
(31)【優先権主張番号】16/504,147
(32)【優先日】2019-07-05
(33)【優先権主張国・地域又は機関】US
【前置審査】
(73)【特許権者】
【識別番号】518156417
【氏名又は名称】ズークス インコーポレイテッド
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】ゴーサム ガリメラ
(72)【発明者】
【氏名】マリン コビラロフ
(72)【発明者】
【氏名】アンドレス ギレルモ モラレス モラレス
(72)【発明者】
【氏名】カイ ジェンユー ワン
【審査官】戸田 耕太郎
(56)【参考文献】
【文献】国際公開第2019/083978(WO,A1)
【文献】国際公開第2018/053175(WO,A1)
【文献】特表2021-500652(JP,A)
【文献】特表2021-533609(JP,A)
【文献】特開2016-136378(JP,A)
【文献】国際公開第2018/172849(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B60W 30/10
B60W 40/04
B60W 40/06
B60W 60/00
(57)【特許請求の範囲】
【請求項1】
環境内のオブジェクトを表すオブジェクトデータを受信することであって、前記環境は、車両が横断しようとしている交差点を含む、ことと、
前記車両が前記環境内で実行するための候補アクションに関連付けられたアクションデータを受信することと、
前記オブジェクトデータおよび前記アクションデータに少なくとも部分的に基づいて、前記環境のトップダウンビューを表すマルチチャネル画像を生成することであって、前記マルチチャネル画像は、前記オブジェクトを表す画像、前記オブジェクトに関連付けられたモーション情報を表す画像、前記車両に関連付けられた前記候補アクションを表す画像、および前記環境を表す1つまたは複数のチャネル画像を含み、前記マルチチャネル画像は現在の時間より前の1つまたは複数の前回の時間に関連付けられた複数のマルチチャネル画像の1つである、ことと、
前記マルチチャネル画像を機械学習モデル内へ入力することと、
前記機械学習モデルから、前記オブジェクトに関連付けられた予測確率を受信することであって、前記予測確率は、前記オブジェクトの少なくとも1つの可能な位置を表す、ことと、
前記予測確率および前記候補アクションに少なくとも部分的に基づいて、前記車両の軌道を決定することと、
前記予測確率に少なくとも部分的に基づいて、前記車両が前記交差点を横断するように、制御することと、を含み、
前記機械学習モデルは、前記オブジェクトに関連付けられた前記予測確率および/または前記車両の可能な位置に関連付けられた予測確率を含む複数の予測確率を出力するようにトレーニングされている、
方法。
【請求項2】
前記予測確率は第1の予測確率であり、前記方法は
前記機械学習モデルから前記車両に関連付けられた前記第1の予測確率とは異なる第2の予測確率を受信すること、をさらに含み、
前記車両の軌道を決定することは、前記第1の予測確率、前記第2の予測確率、および前記候補アクションに少なくとも部分的に基づく、請求項1に記載の方法。
【請求項3】
前記候補アクションは、
レーン内アクション、
レーン変更アクション、または
ターンアクションの少なくとも1つを含み、
前記車両に関連付けられた前記候補アクションを表す前記画像を生成することは、
前記候補アクションに関連付けられたターゲットレーンを表す第1のチャネル画像、または
前記候補アクションに関連付けられた前記車両の目標の速度または目標の加速度を表す第2のチャネル画像の少なくとも1つを生成することを含む、
請求項1または請求項2に記載の方法。
【請求項4】
前記機械学習モデルから、前記現在の時間の後の1つまたは複数の将来の時間における前記環境内の前記オブジェクトに関連付けられた前記予測確率および/または前記車両の可能な位置に関連付けられた前記予測確率を、受信すること、をさらに含む請求項1に記載の方法。
【請求項5】
前記オブジェクトに関連付けられた前記予測確率は現在の時間の後の第1の時間に関連付けられた第1の予測確率であり、
前記方法は、
前記機械学習モデルから前記オブジェクトに関連付けられた前記第1の予測確率とは異なる第2の予測確率を受信することをさらに含み、前記第2の予測確率は前記第1の時間の後の第2の時間に関連付けられており、
前記第1の予測確率に関連付けられた第1の確率の量は前記第2の予測確率に関連付けられた第2の確率の量の閾値量内である、
請求項1乃至請求項4のいずれか一項に記載の方法。
【請求項6】
前記オブジェクトデータが画像データ、lidarデータ、radarデータ、または飛行時間データ(time-of-flight data)の少なくとも1つに少なくとも部分的に基づいており、
前記機械学習モデルは畳み込みニューラルネットワークを含む、
請求項1乃至請求項5のいずれか一項に記載の方法。
【請求項7】
前記オブジェクトに関連付けられた前記予測確率は将来の時間に関連付けられた占有グリッドとして表され、
前記占有グリッドのセルは、前記将来の時間における前記車両が前記セルに関連付けられた領域内にいる確率を示している、
請求項1に記載の方法。
【請求項8】
前記アクションデータは第1のアクションデータであり、
前記候補アクションは第1の候補アクションであり、
前記マルチチャネル画像は第1のマルチチャネル画像であり、
前記環境の前記トップダウンビューは前記環境の第1のトップダウンビューであり、
前記予測確率は前記第1の候補アクションに関連付けられた第1の予測確率であり、
前記軌道は第1の軌道であり、
前記方法は
前記車両が前記環境内で実行するための前記第1の候補アクションとは異なる第2の候補アクションに関連付けられた前記第1のアクションデータとは異なる第2のアクションデータを受信することと、
前記オブジェクトデータおよび前記第2のアクションデータに少なくとも部分的に基づいて、前記環境の前記第1のトップダウンビューとは異なる前記環境の第2のトップダウンビューを表す前記第1のマルチチャネル画像とは異なる第2のマルチチャネル画像を生成することと、
前記第2のマルチチャネル画像を前記機械学習モデル内に入力することと、
前記機械学習モデルから、前記オブジェクトに関連付けられた前記第1の予測確率とは異なる第2の予測確率を受信することであって、前記第2の予測確率は、前記オブジェクトの少なくとも1つの可能な位置を表す、ことと、
前記第2の予測確率および前記第2の候補アクションに少なくとも部分的に基づいて、前記第1の軌道とは異なる前記車両の第2の軌道を決定することと、
前記第2の軌道に少なくとも部分的に基づいて、前記車両が前記交差点を横断するように、制御することと、
をさらに含む、請求項1乃至請求項7のいずれか一項に記載の方法。
【請求項9】
前記第1の候補アクションおよび前記第2の候補アクションを評価して第1のコストおよび第2のコストを決定することと、
選択されたアクションとして、ならびに前記第1のコストと前記第2のコストとを比較することに少なくとも部分的に基づいて、前記第1の候補アクションまたは前記第2の候補アクションの1つを選択することと、
前記選択された候補アクションに少なくとも部分的に基づいて、前記第1の軌道および前記第2の軌道とは異なる前記車両の第3の軌道を決定することと、
前記第3の軌道に少なくとも部分的に基づいて、前記車両が前記交差点を横断するように制御することと、
をさらに含む、請求項8に記載の方法。
【請求項10】
コンピュータ上で実行されると、請求項1乃至請求項9のいずれか1項に記載の方法を実施する、コード化された命令を含むコンピュータプログラム。
【請求項11】
1つまたは複数のプロセッサと、
命令が実行されると、システムに
環境内のオブジェクトを表すオブジェクトデータを受信することであって、前記環境は、車両が横断しようとしている交差点を含む、ことと、
前記車両が前記環境内で実行するための候補アクションに関連付けられたアクションデータを受信することであって、前記候補アクションは、レーン内アクション、ターンアクションまたはレーン変更アクションの1つまたは複数を含み、前記アクションデータは前記候補アクションを示している、ことと、
前記オブジェクトデータおよび前記アクションデータに少なくとも部分的に基づいて、マルチチャネル画像を生成することであって、前記マルチチャネル画像は、前記オブジェクトを表す画像、前記オブジェクトに関連付けられたモーション情報を表す画像、前記車両に関連付けられた前記候補アクションを表す画像、および前記環境を表す1つまたは複数のチャネル画像を含み、前記マルチチャネル画像は現在の時間より前の1つまたは複数の前回の時間に関連付けられた複数のマルチチャネル画像の1つである、ことと、
前記マルチチャネル画像を機械学習モデル内へ入力することと、
前記機械学習モデルから、前記オブジェクトに関連付けられた予測確率を受信することであって、前記予測確率は、前記オブジェクトの少なくとも1つの可能な位置を表す、ことと、
前記予測確率および前記候補アクションに少なくとも部分的に基づいて、前記車両の軌道を決定することと、
前記予測確率および前記候補アクションに少なくとも部分的に基づいて、前記車両が前記交差点を横断するように制御することと、
を含む操作を実行させる、前記1つまたは複数のプロセッサによって実行可能な前記命令を格納する1つまたは複数の非一時的コンピュータ可読媒体と、
を含み、
前記機械学習モデルは、前記オブジェクトに関連付けられた前記予測確率を出力するようにトレーニングされている、
システム。
【請求項12】
前記車両に関連付けられた前記候補アクションを表す前記画像を生成することは、前記候補アクションに関連付けられたターゲットレーンを表すチャネル画像を生成することを含み、前記ターゲットレーンは前記車両が占有する予定のレーンを示す、請求項11に記載のシステム。
【請求項13】
前記チャネル画像は第1のチャネル画像であり、前記車両に関連付けられた前記候補アクションを表す前記画像を生成することは、前記候補アクションに関連付けられた前記車両の目標の速度または目標の加速度を表す第2のチャネル画像を生成することをさらに含む、請求項12に記載のシステム。
【請求項14】
前記アクションデータは第1のアクションデータであり、
前記候補アクションは第1の候補アクションであり、
前記マルチチャネル画像は第1のマルチチャネル画像であり、
前記オブジェクトを表す前記画像は、前記オブジェクトを表す第1の画像であり、
前記オブジェクトに関連付けられたモーション情報を表す前記画像は、前記モーション情報を表す第1の画像であり、
前記車両に関連付けられた前記候補アクションを表す前記画像は、前記候補アクションを表す第1の画像であり、
前記予測確率は前記第1の候補アクションに関連付けられた第1の予測確率であり、
前記軌道は第1の軌道であり、
前記操作は
前記車両が前記環境内で実行するための前記第1の候補アクションとは異なる第2の候補アクションに関連付けられた前記第1のアクションデータとは異なる第2のアクションデータを受信することと、
前記オブジェクトデータおよび前記第2のアクションデータに少なくとも部分的に基づいて、前記オブジェクトを表す第2の画像、前記モーション情報を表す第2の画像、および前記第2の候補アクションを表す第2の画像を含む第2のマルチチャネル画像を生成することと、
前記第2のマルチチャネル画像を前記機械学習モデル内に入力することと、
前記機械学習モデルから、前記オブジェクトに関連付けられた前記第1の予測確率とは異なる第2の予測確率を受信することであって、前記第2の予測確率は、前記オブジェクトの少なくとも1つの可能な位置を表す、ことと、
前記第2の予測確率および前記第2の候補アクションに少なくとも部分的に基づいて、前記第1の軌道とは異なる前記車両の第2の軌道を決定することと、
前記第2の軌道に少なくとも部分的に基づいて、前記車両が前記交差点を横断するように、制御することと、
をさらに含む、請求項12または請求項13に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
この特許出願は、2019年7月5日に出願されたシリアル番号16/504,147の米国実用特許出願の優先権を主張する。出願シリアル番号16/504,147は、参照により本明細書に完全に組み込まれている。
【背景技術】
【0002】
予測技術を使用して、環境内のエンティティの将来の状態を決定できる。つまり、予測技術を使用して、特定のエンティティが将来どのように動作する可能性があるかを決定できる。現在の予測技術は、多くの場合、環境内のエンティティの将来の状態を予測するための物理ベースのモデリングまたは道路規則シミュレーションを含む。
【図面の簡単な説明】
【0003】
詳細な説明は添付の図面を参照して説明される。図面において、参照番号の左端の数字は参照番号が最初に現れる図を特定している。異なる図面における同じ参照番号の使用は類似または同一の項目または特徴を示す。
【0004】
図1図1は、開示の例による、オブジェクトデータおよびアクションデータを受信し、環境を表すマルチチャネル画像を機械学習モデル内へ入力し、オブジェクトデータおよびアクションデータに基づく予測確率を受信するための例示的なプロセスの挿絵付きフロー図である。
図2A図2Aは、本明細書に記載の技術を実装するための例示的なシステムのブロック図を示している。
図2B図2Bは、本明細書で説明される技術を実装するために機械学習モデルをトレーニングするための例示的なトレーニングコンポーネントのブロック図を示す。
図3図3は、本開示の例による、予測システムへの入力および予測システムをトレーニングするためのトレーニングデータの例示的な図を示す。
図4図4は、本開示の例による、2つの二重駐車車両を含むシナリオの第1および第2の予測確率の図であり、第2の予測確率はアクションデータに部分的に基づいている。
図5図5は、本開示の例による、二重駐車車両を含むシナリオの第1および第2の予測確率の図であり、第2の予測確率はアクションデータに部分的に基づいている。
図6図6は、本開示の例による、自律車両の前方でターンするオブジェクトを含むシナリオの第1および第2の予測確率の図であり、第2の予測確率はアクションデータに部分的に基づいている。
図7図7は、本開示の例による、ジャンクションを横断する自律車両を含むシナリオの第1および第2の予測確率の図であり、第2の予測確率はアクションデータに部分的に基づいている。
図8図8は、本開示の例による、ブロックされたジャンクションに進入する自律車両を含むシナリオの第1および第2の予測確率の図であり、第2の予測確率はアクションデータに部分的に基づいている。
図9図9は、本開示の例による、別のジャンクションを横断する自律車両を含むシナリオの第1および第2の予測確率の図であり、第2の予測確率はアクションデータに部分的に基づいている。
図10図10は、本開示の例による、センサデータおよびアクションデータを受信し、マルチチャネル画像を生成し、予測確率を評価し、予測確率に基づいて車両を制御するための例示的なプロセスを示す。
【発明を実施するための形態】
【0005】
環境および車両のアクションのトップダウン表現に基づいて予測を決定するための技術について、本明細書で説明する。第1の車両(自律車両など)のセンサは、環境のセンサデータをキャプチャでき、これは、第2の車両または歩行者などの車両から離れたオブジェクトを含み得る。トップダウンビューでオブジェクトおよび/または環境のさまざまなパラメータをエンコードするマルチチャネル画像(全体を通して単に画像と呼ばれ得る)を、センサデータ、マップデータ、および/またはアクションデータに基づいて生成できる。センサデータを使用して、オブジェクトに関連付けられたバウンディングボックスおよび速度情報、マップデータ、ならびにその他の意味情報(例えば、制限速度、レーン幅、レーン端、停止線、信号機、信号機の状態など)を表すマルチチャネル画像の1つまたは複数のチャネルを生成できる。アクションデータを使用して、第1の車両のターゲットレーン、軌道などを表すマルチチャネル画像の1つまたは複数のチャネル(たとえば、交差点を通過する車両、レーン変更、方向転換などを含むアクションに対応し得る)を生成できる。時間の経過に伴う環境を表す複数の画像を生成し、将来のオブジェクトの可能な位置に関連付けられた予測確率を出力するように構成された予測システムに入力することができる。予測確率を特定の候補アクションに基づいて生成または決定でき、予測確率を評価して、自律車両を制御する候補アクションを選択または決定できる。
【0006】
密集した都市環境での自動運転は、オブジェクト間の多方向の相互作用を解決するためによく使用される複雑な推論のために、困難である。この推論は時間が重要であり得、絶えず進化し得る。本明細書で説明する技術は運転中のシナリオを対象としており、これは信号のない都市の交差点含み得るが、これに限定されない。これらのジャンクションでは、複数のオブジェクト(車両、歩行者、自転車など)が同じ共有スペースをめぐって競合することが多いため、交差点をうまくナビゲートするためにオブジェクトの意図を予測することが有効である。本明細書で説明する技術は、環境の履歴のいくつかのスナップショットが与えられた場合に、ジャンクションを通り横断するオブジェクトの運転動作を予測することを対象としている。一部の技術は、本明細書で説明するように、意味セグメンテーションスタイルのアプローチを使用して、予測確率(ヒートマップなど)として将来を予測できるディープ畳み込みニューラルネットワーク(CNN)アーキテクチャを公式化する。
【0007】
いくつかの例では、オブジェクトに関連付けられた予測確率は、異なる一連の操作にわたるガウス分布に限定され得ないが、代わりに、オブジェクトが将来存在する場所の時間の経過とともにインデックス付けされたヒートマップを含み得る(たとえば、任意の分布で)。いくつかの例では、ヒートマップの輝度は、セルまたはピクセルが時間内に指定されたインスタンス(例えば、占有グリッド)にて任意のオブジェクトによって占有される確率を表し得る。いくつかの例では、ヒートマップは、オブジェクトごとの任意の軌道分布と、明示的な操作仕様を使用せずに個別の操作(候補アクションなど)にわたる分布の両方をキャプチャし得る。いくつかの例では、このアプローチは多くの将来のモードを単一のヒートマップに自然に集約する。いくつかの例では、自律車両の意図に関するいくつかの信号を使用して、このマルチモダリティを解決できる。そのような例(例えば、アクションの意図を条件とする場合)では、そのようなヒートマップは、よりしっかりと密集した確率分布を含み得る。
【0008】
車両(自律車両または自律ロボットなど)が交差点を安全に運転するために、世の中の他のオブジェクトの動作について推論すべきである。図1に関連して以下で論じられる例では、自律車両は交差点を横断し得る。自律車両は、対向するオブジェクトに譲るか否かを推測できる場合、安全にジャンクションを通過できる。いくつかの例では、本明細書で説明する技術は、予測確率(例えば、ヒートマップ)を、自律車両の意図(アクションデータとして表される)に条件づけることを含み得る。ヒートマップを自律車両の意図に条件付けすることにより、本明細書で説明する技術は、予測されるヒートマップのマルチモダリティを最小化することを含むことができる。すなわち、環境内のオブジェクトの予測は、自律車両によって実行することが提案された候補アクションに基づくことができ、そのような予測は、追加のオブジェクトに関して改善された予測を含み得る。機械学習モデルの出力を計画システムで使用して、ヒートマップ出力に基づいてコスト関数を決定し、ヒートマップ出力のコストを最小化する自律車両の最適なアクションを検索できる。
【0009】
上記のように、技術は、時間の経過とともに環境を表す複数のマルチチャネル画像を生成することを含むことができる。画像または複数の画像を、将来のオブジェクトの可能な位置に関連付けられた予測確率を出力するように構成された予測システム(例えば、機械学習モデル)に入力できる。予測確率は、複数の候補アクションの候補アクションに関連付けることができる。個々の候補アクションを評価し、候補アクションに関連付けられたリスク、コスト、および/またはリワード(reward)を決定でき、候補アクションを、候補アクションの評価に少なくとも部分的に基づいて選択または決定できる。自律車両を、選択または決定された候補アクションに少なくとも部分的に基づいて制御できる。
【0010】
自律車両によってキャプチャされるセンサデータは、lidarデータ、radarデータ、画像データ、飛行時間データ(time of flight data)、sonarデータなどを含むことができる。いくつかのケースでは、センサデータを、環境内のオブジェクトのタイプ(例えば、車両、歩行者、自転車、動物、駐車中の自動車、樹木、建物など)を決定するように構成される知覚システムに対して提供できる。さらに、知覚システムは、センサデータに基づいて、環境内のオブジェクトに関する動き情報を決定できる。センサデータおよびセンサデータに基づく任意のデータを、環境のトップダウンビューで表すことができる。たとえば、画像は、環境内のオブジェクトの位置、ならびに、オブジェクトの範囲(例えば、オブジェクトの長さおよび幅)およびオブジェクトの分類(例えば、車両、歩行者など)を表す2次元のバウンディングボックスとしてオブジェクトを表すことができる。速度情報などの動き情報は、バウンディングボックスに関連付けられた速度ベクトルとして表すことができるが、他の表現も想定される。
【0011】
いくつかのケースでは、予測システムに入力される画像は、マルチチャネル画像の個々のチャネルで表すことができ、各チャネルは、オブジェクトおよびオブジェクトが位置する環境に関するさまざまな情報を表す。たとえば、チャネルはセンサデータに基づいて決定、またはそうでなければ、システムで利用可能なマップデータで受信/エンコードされ得る道路ネットワーク情報(例えば、レーン、横断歩道、停止線、レーン仕切り、一時停止標識、交差点、信号機などを示す意味ラベル)、信号機の状態(例えば、赤信号、黄信号、緑信号など)、オブジェクトに関連付けられたバウンディングボックス、x方向およびy方向のオブジェクトの速度、x方向およびy方向のオブジェクトの加速度、オブジェクトの点滅状態(左折、右折、ブレーキ、後進、ハザード、ライトなしなど)など、の1つまたは複数を表し得るが、これらに限定されない。
【0012】
いくつかの例では、計画システムは自律車両が環境内で実行する1つまたは複数の候補アクションを生成する、またはそうでなければ決定できる。例えば、第1の候補アクションは、現在のレーンに留まることを含み得、一方、第2の候補アクションは、現在のレーンの左または右へのレーン変更を含み得る。別の例として、第3の候補アクションはジャンクションを通り横断することを含み得、一方、第4の候補アクションはジャンクションでの左または右の調整を含み得る。いくつかの例では、候補アクションは、マルチチャネル画像において、強調表示、図解、注釈付け、またはその他の表示として、車両が環境内で辿るターゲットレーンまたは候補軌道を表すことができる。
【0013】
いくつかの例では、候補アクションは、1つまたは複数のサブゴールに関連付けられ得る。例えば、サブゴールは、目標速度または加速度、平均速度または加速度、最大あるいは最小速度または加速度などの速度情報または加速度情報を含み得る。いくつかの例では、サブゴールは、ステアリング角度、オブジェクトからの距離、基準線からの距離などを含み得るが、これらに限定されない。いくつかの例では、サブゴールは、マルチチャネル画像のチャネルとして表すことができる。
【0014】
いくつかの例では、複数のチャネルを予測システムに入力して、予測確率を生成できる。いくつかの例では、画像を予測システムに直接入力して(たとえば、画像に基づいて複数のチャネルを生成することなく)、予測確率を生成できる。
【0015】
いくつかの例では、チャネルの数をより少ないチャネルに減らし得る。非限定的な例として、単純な3チャネル(例えば、RGB)画像を使用して、複数の意味情報を表し得る。そのような例では、例えば、赤のチャネルを使用してバウンディングボックスを示し得、赤の値の輝度は、速度、加速度などに関連付け得る。そのような例では、第2のチャネルは、速度制限などを示す輝度でレーン幅をエンコードし得る。さらに、そのような例では、第3のチャネルは、特定の候補アクションに関連付けられたターゲットレーンを識別することによって候補アクションをエンコードし得る。
【0016】
いくつかの例では、予測システムは、1つまたは複数の予測軌道を生成するために使用できるデータを出力するようにトレーニングされた機械学習モデルを含むことができる。たとえば、機械学習モデルは、将来の1つまたは複数の時間(例えば、1秒、2秒、3秒など)において、オブジェクト(例えば、サードパーティの車両)に関連付けられた座標(例えば、x座標およびy座標)を出力できる。いくつかの例では、機械学習モデルは、オブジェクトに関連付けられた座標、および各座標に関連付けられた確率情報を出力できる。いくつかの例では、機械学習モデルは、畳み込みニューラルネットワーク(CNN)を含むことができ、これは長短期記憶(LSTM)層などの1つまたは複数のリカレントニューラルネットワーク(RNN)層を含み得るが、これらに限定されない。いくつかの例では、機械学習モデルは予測確率に関連付けられたヒートマップを出力できる。いくつかの例では、少なくとも1つの予測軌道を、ヒートマップに少なくとも部分的に基づいて決定できる。
【0017】
ヒートマップは、自律車両に近接する環境の個別化された領域を表すことができる。たとえば、ヒートマップは、自律車両の周囲の100メートル×100メートルの領域を表す64×64グリッド(またはJ×Kサイズのグリッド)を表すことができる。もちろん、ヒートマップは任意のサイズの領域を表すことができ、任意の数の個別の部分の領域を表すことができる。いくつかのケースでは、ヒートマップの一部をヒートマップのセルと呼ぶことができる。各セルは、オブジェクトがヒートマップに対応する時間に環境内の対応する場所にいる確率を表す予測確率を含むことができる。いくつかの例では、機械学習モデルは複数のヒートマップを出力でき、複数のヒートマップのヒートマップは、将来の特定の時間(例えば、0.5秒、1秒、3秒、5秒、10秒など)における環境に関連付けられた確率予測(例えば、オブジェクトおよび/または自律車両)を表すことができる。
【0018】
いくつかの例では、1つまたは複数のヒートマップを、少なくとも1つの予測軌道の代わりにまたは加えて、計画システムに提供できる。
【0019】
いくつかの例では、本明細書で説明する技術は、相互作用を考慮して、ツリー検索の解釈可能な限界コストを提示する、1つまたは複数の確率的マップとして可能なシナリオを生成することを含むことができる。いくつかの例では、この技術は、ネットワーク入力を介した自律車両の意図に条件づけること(たとえば、自律車両の軌道を制約することなく、マルチチャネル画像の1つまたは複数のチャネルとして)を含む。さらに、本開示の態様は、自律車両の周囲のオブジェクトならびに自律車両自体の将来の状態を、時間の経過とともに積み重ねられたヒートマップとして予測できる機械学習アルゴリズム(例えば、畳み込みニューラルネットワーク)を含む。上記のように、機械学習モデルから出力されるヒートマップ(または予測確率)は、自律車両の1つまたは複数の候補アクションを条件とすることができる。さらに、技術は、自律車両の意図をゴールおよびサブゴールに個別化することを含むことができ、プランニングシステムが自律車両の最良の(または最適な)候補アクションを検索することを可能にする。さらに、本開示の態様は、自律車両と環境内の他のオブジェクトとの間の異なるタイプの相互作用を示すデータを含む。
【0020】
本明細書で説明する技術は、いくつかの追加の手段でコンピューティングデバイスの機能を改善できる。いくつかのケースでは、環境と環境内のオブジェクトをトップダウンビューとして表すことは、予測確率を生成することおよび/または候補アクションから選択することを目的として、環境の単純化された表現を表すことができる。いくつかのケースでは、画像は環境の特定の特徴を抽出せずに環境を表すことができ、これは、予測システムの生成およびその後の少なくとも1つの予測軌道の生成が単純化され得る。いくつかのケースでは、予測確率を評価することは、自律車両が環境を横断するためのより正確および/または安全な軌道を、自律車両が生成することを可能にし得る。たとえば、第1の候補アクションに関連付けられた予測確率を評価して、衝突または衝突寸前の可能性を決定でき、環境を安全に横断するために、自律車両が別の候補アクション(例:車線変更、停止など)を選択または決定することを可能にし得る。本明細書に記載の少なくともいくつかの例では、意図されたアクションに加えて環境のトップダウンエンコーディングに基づく条件付け予測が、オブジェクトに関連付けられた確率分布関数の拡大を最小化(改善)し、システムのより安全な意思決定をもたらし得る。コンピュータの機能に対するこれらおよびその他の改善を本明細書で説明する。
【0021】
本明細書で説明される技術を、いくつかのやり方で実装できる。例示的な実装形態について、以下の図面を参照しながら以下に説明する。自律車両のコンテキストで説明されるが、本明細書で説明される方法、装置、およびシステムは、様々なシステム(例えば、センサシステム、またはロボットプラットフォーム)に適用することができ、自律車両に限定されない。一例において、同様の技術は、そのようなシステムが様々な操作を実行することが安全であるかどうかの指示を提供し得る運転者制御車両において利用され得る。別の例において、技術を、航空もしくは航海のコンテキストにおいて、またはシステムに対して知られていない動作に関連付けられ得るオブジェクトもしくはエンティティを含む任意のシステムにおいて、利用できる。さらに、センサデータは、画像データ(例えば、ステレオカメラ、飛行時間データ(time-of-flight data)など)、lidarデータ、radarデータ、sonarデータなどのような任意の2次元、3次元、または多次元データを含むことができる。加えて、本明細書で説明される技術は、実データ(例えば、センサを使用してキャプチャされた)、シミュレートデータ(例えば、シミュレータによって生成された)、またはその2つの任意の組合せで使用できる。
【0022】
図1は、開示の例による、オブジェクトデータおよびアクションデータを受信し、環境を表すマルチチャネル画像を機械学習モデルに入力し、オブジェクトデータおよびアクションデータに基づく予測確率を受信するための例示的なプロセス100の挿絵付きフロー図である。
【0023】
操作102において、プロセスは、環境内のオブジェクトを表すオブジェクトデータを受信することを含むことができる。いくつかの例では、オブジェクトデータを、自律車両の知覚システムから受信できる。例えば、オブジェクトデータは、環境、速度および/または加速度情報、分類情報などに関連付けられた1つまたは複数のバウンディングボックスを含むことができるが、これに限定されない。いくつかの例では、操作102は、環境のセンサデータをキャプチャすることを含むことができる。いくつかの例では、センサデータを、自律車両の1つまたは複数のセンサによってキャプチャできる。例えば、センサデータは、lidarセンサ、radarセンサ、画像センサ、飛行時間センサ(time of flight sensor)、sonarセンサなどのうちの1つまたは複数によってキャプチャされるデータを含むことができる。少なくともいくつかの例では、追加の環境データ(例えば、レーン、基準線、横断歩道、交通デバイスおよび/または標識などの部分をエンコードする環境のマップデータ)を受信し得る。
【0024】
例104は、自律車両106が環境を横断している環境を示している。いくつかの例では、自律車両106はプロセス100の操作を実行でき、これは環境のセンサデータをキャプチャすることを含むことができる。説明を目的として、センサデータをキャプチャする(または利用する)車両は、ドライバー(または乗員)の車両の常時制御を期待せず、全体行程の全ての安全上重要な機能を実行可能な車両について説明する米国国家高速道路交通安全局が発行するレベル5分類に従って操作するように構成された自律車両とすることができる。このような例では、全ての駐車機能を含む開始から停止までの全ての機能を制御するように、車両を構成できるので、無人化できる。これは単なる例であり、本明細書で説明するシステムおよび方法は、ドライバーが常に手動で制御する必要がある車両から、部分的または完全に自律的に制御されているものまでを含む任意の地上、空中、または水上車両に組み込むことができる。車両に関連付けられた追加の詳細は、本開示全体を通して説明される。
【0025】
オブジェクト108も環境内に配置されている。いくつかの例では、オブジェクト108は、車両、歩行者、自転車、動物などを表すことができる。例104に示される環境は、運転可能領域および運転不可能領域を含むことができる。いくつかの例では、操作102は、環境内の自律車両106を位置推定すること、および、環境に関連付けられたマップデータにアクセスすることを含むことができる。たとえば、マップデータは、レーン標示、レーン境界、1つまたは複数のレーン参照110(たとえば、レーンに関連付けられた中心線および/または利用可能な(たとえば、合法的な)レーン間のルートを示す)などのマップ要素を含むことができる。マップ要素の追加の例は、1つまたは複数のレーン要素、自転車専用レーン要素、横断歩道要素、交差要素、レーン分割要素、信号機要素、一時停止の標識要素、停止線要素、譲歩記号要素、譲歩線要素、駐車レーン要素、ドライブウェイ要素、スピードバンプ要素、ジョイウォーキング領域(仮想横断歩道など)、軌道の通過点(既知の軌道など)、乗客のピックアップポイント、標識位置要素、ジオフェンス要素などを含むことができるが、これらに限定されない。
【0026】
いくつかの例では、操作102でキャプチャされたセンサデータを使用して、オブジェクト108に関する情報、限定ではないがオブジェクトのタイプ(例えば、車両、歩行者、自転車、動物などのオブジェクトの分類を示す意味情報)を含む、を決定できる。いくつかの例では、操作102は、本明細書で説明されるように、オブジェクト108のタイプ、オブジェクト108に関連付けられたバウンディングボックス、および/またはオブジェクトに関連付けられた動き情報を決定することを含むことができる。
【0027】
操作112において、プロセスは、環境内の自律車両の候補アクションに関連付けられたアクションデータを受信することを含むことができる。例114は、候補アクション116(例えば、譲歩アクションなどの第1の候補アクション)および候補アクション118(例えば、「交差点を通過する」アクションなどの第2の候補アクション)を示す。
【0028】
すなわち、候補アクション116は、自律車両106の計画システムからの、オブジェクト108に譲歩し、オブジェクト108が交差点を通り横断するまで交差点を通り横断することを控えるという指示(または、一定期間の経過などの一部の他のトリガー)を含むことができる。
【0029】
候補アクション118は、オブジェクト108がジャンクションを横断することを可能にする前に、例104に示されるジャンクションを横断することを含むことができる。
【0030】
いくつかの例では、アクションデータはさまざまなやり方で表すことができる。いくつかの例では、例104は、アクションデータを現在のレーン120およびターゲットレーン122として示している。いくつかの例では、本明細書で説明されるように、候補アクション116および118に関連付けられた情報は、現在のレーン120および/またはターゲットレーン122、ならびに、速度プロファイルおよび/または加速度プロファイル(例えば、サブゴール)、を介して表すことができる。
【0031】
操作124において、プロセスは、環境のトップダウンビューを表すマルチチャネル画像を機械学習モデルに入力することを含むことができ、マルチチャネル画像はオブジェクトデータおよびアクションデータに基づいている。そのようなマルチチャネル画像の例は、例126および128に示されている。
【0032】
例126は、第1の候補アクション116に関連付けられた第1のマルチチャネル画像を表す。例えば、例126は、第1のチャネル132、第2のチャネル134、および第3のチャネル136を含む。いくつかの例では、第1のチャネル132は、環境内の自律車両106および/またはオブジェクト108のバウンディングボックス、位置、範囲(例えば、長さおよび幅)などを表すことができる。いくつかの例では、第2のチャネル134は、候補アクション116に関連付けられたアクションデータを表すことができる。例えば、第2のチャネル134は、候補アクション116に関連付けられた現在のレーン120および/またはターゲットレーン122を示すことができる。いくつかの例では、第3のチャネル136は、追加のアクションデータを表すことができ、このケースでは、候補アクション116を実施する自律車両106に関連付けられた速度情報140(例えば、V1)に対応する。いくつかの例では、速度情報140は、瞬間速度、平均速度などを含むことができる。例えば、候補アクション116が譲歩行動を示すところでは、速度情報140は比較的低い速度を表すことができる(または、自律車両106がオブジェクト108に譲歩する間の停止速度を表すことができる)。速度のコンテキストで説明しているが、速度情報140は、加速度(たとえば、アクション全体の平均、アクションに関連付けられた最大加速度など)、ステアリング角度、基準線または障害物からの距離などに関連付けられた情報を表すことができる。
【0033】
例128は、第2の候補アクション118に関連付けられた第2のマルチチャネル画像を表す。いくつかの例では、例128のいくつかの態様は、例126のいくつかの態様と等しくすることができる。例えば、例128は、第1のチャネル132、第2のチャネル134、および第3のチャネル142を含むことができる。いくつかの例では、第3のチャネルは、第2の候補アクション118に関連付けられ得る速度情報144を含むことができる。例えば、第2の候補アクション118がオブジェクト108の前に交差点を通り横断する自律車両106を表し得るところでは、速度情報144(例えば、V2)は、第1の候補アクション116に関連付けられた第2の速度情報140よりも高い平均速度(または速度プロファイル)を表し得る。上記のように、速度のコンテキストで説明しているが、速度情報144は、加速度(たとえば、アクション全体の平均、アクションに関連付けられた最大加速度など)、ステアリング角度、基準線または障害物からの距離などに関連付けられた情報を表すことができる。
【0034】
もちろん、例128は、第2の候補アクション118が第1の候補アクション116とは異なる位置を表す場合(たとえば、第1の候補アクション116が直進を表し、第2の候補アクション118が左または右折を表す場合)、第2のチャネル134で表されるアクションデータとは異なるアクションデータを含み得る。
【0035】
いくつかの例では、自律車両106の意図をエンコード(例えば、チャネル134を介して)することを、自律車両106の正確な軌道を指定することなく、部分的な将来の情報として提供できる。いくつかの例では、1)入口レーン(例えば、現在のレーン120)と出口レーン(例えば、ターゲットレーン122)をペイントする、またはそうでなければ示すことによって、2)高いおよび低い将来の平均加速度ならびに速度を(例えば、チャネル136および/または142として)示す個別のブロブ(blob)を提供することによって、意図をエンコードすることができる。
【0036】
上記の第1の意図信号(例えば、第2のチャネル134)は、特定の候補アクションに関連付けられたターゲットレーン122を使用する。ターゲットレーン122を提供することにより、技術は、自律車両106に関連付けられた計画された軌道に基づくものを優先して、各ジャンクション出口に対するようなマルチモーダル出力を削除できる。
【0037】
上記の第2の意図(例えば、チャネル136および142)は、サブゴールを示し、自律車両106の意図された速度および/または加速度プロファイルを含み得る。いくつかのケースでは、このサブゴールの意図は、指定された予測地平までの将来の自律車両106の平均加速度の個別化された値を提供する。いくつかのケースでは、サブゴールの意図は、自律車両が近い将来に何をするかを示している。たとえば、急な減速は、自律車両が一部の他のオブジェクトのためにブレーキすることを意味する。急な加速は、オブジェクトがジャンクションを通過するためにスピードを上げていることを意味する。同様の意図はまた、自律車両106の速度次元に適用される。意図はマルチモーダル出力を削除するように設計されているが、同時に、自律車両106および/またはオブジェクト108の出力を単一の軌道に制約しない。
【0038】
理解できるように、例126および128は、環境内の様々な時点での環境を表す複数のマルチチャネル画像を含むことができる。例えば、例126および/または128は、自律車両106およびオブジェクト108(および歩行者や車両などの他のオブジェクト)の履歴を、過去4秒間にわたって0.5秒間隔で表すことができるが、任意の数のインスタンスおよび期間を使用して環境を表すことができる。
【0039】
いくつかの例では、例126および/または128は、最新の時間ステップ(例えば、時間t0)および/または経時的(例えば、時間t-mから時間t0)な方向指示器、ブレーキライト、ハザードライトなどの補助入力を表すチャネルを含むことができる。追加のチャネルは、自律車両106および/またはオブジェクト108の運動学的情報(運動学的データ、モーション情報、またはモーションデータとも呼ばれる)(たとえば、一定期間の平均速度または加速度、前の時点での瞬間速度または加速度、ホイール角度、ターン速度、ヨー、ピッチ、ロールなど)、意味情報(例えば、車両分類、ターンシグナルインジケータ、ブレーキライトインジケータ、二重駐車車両表示など)、閉塞グリッド(例えば、自律車両106の1つまたは複数のセンサから不可視の環境のエリア、または閉塞すると予測されるエリアなどを示す)などを含み得るが、これらに限定されない。
【0040】
理解できるように、操作124は、本明細書で説明されるように、マルチチャネル画像を生成または決定することを含むことができる。マルチチャネル画像の生成または決定の例は、「Trajectory Prediction on Top-Down Scenes」と題され、2018年10月4日に出願された米国特許出願番号16/151,607に関連して説明されている。米国特許出願番号16/151,607は、その全体が参照によって本明細書に組み込まれている。
【0041】
操作146にて、プロセスは、機械学習モデルから、およびマルチチャネル画像に基づいて、オブジェクトおよび/または自律車両に関連付けられた予測確率を受信することを含むことができる。理解できるように、マルチチャネル画像は本明細書で論じられるように、アクションデータに基づくことができるので、予測確率はアクションデータに基づくことができる。
【0042】
例148および150はそれぞれ機械学習モデルの出力を示しています。いくつかの例では、例148および150は、オブジェクト108がそれぞれのヒートマップに対応する時間におよびそれぞれの候補アクションに基づいて、環境内の対応する位置にいるであろう確率を示す予測確率を表す(例えば、環境のトップダウンの観点から)ことができるヒートマップを含む。すなわち、つまり、例148は、時間t0の後の時間t1Aを表すことができ、「A」の指定は第1の候補アクション116に対応する。例150は、時間t0の後の時間t1Bを表すことができ、「B」指定は第2の候補アクション118に対応する。例148および150は、将来の自律車両106および/またはオブジェクト108のヒートマップおよび/または予測確率を表すことができる。もちろん、ヒートマップの例148および150は、任意の期間における予測確率を表すことができ、本明細書で説明されるエクスプレス時間に限定されない。
【0043】
例148は、予測確率152、154、156、および158を表す。いくつかの例では、予測確率152および154は、第1の候補アクション116を実行する自律車両106に少なくとも部分的に基づく、環境内のオブジェクト108の可能な位置を表す。予測確率156および158は、アクションデータ(たとえば、チャネル134および136)を条件とする自律車両106の可能な位置を表す。
【0044】
例150は、予測確率160、162、および164を表します。いくつかの例では、予測確率160は、第2の候補アクション118を実行する自律車両106に少なくとも部分的に基づく、環境内のオブジェクト108の可能な位置を表す。予測確率162および164は、アクションデータ(たとえば、チャネル134および142)を条件とする自律車両106の可能な位置を表す。
【0045】
さらに、プロセス100は、候補アクションを評価すること、および/または候補アクションに少なくとも部分的に基づいて自律車両106を制御することを含むことができる。例えば、プロセス100は、自律車両106を表すバウンディングボックスの重複の量と、オブジェクト108に関連付けられた予測確率と、を決定することを含むことができる。いくつかの例では、プロセスは、自律車両106の候補軌道を評価して、予測される将来の動きと予測確率156、158、162、および/または164との間の重複を決定することを含むことができる。
【0046】
図2Aは、本明細書に記載の技術を実施するための例示的なシステム200のブロック図を示している。少なくとも1つの例では、システム200は、車両202を含むことができる。
【0047】
車両202は、1つまたは複数の車両コンピューティングデバイス204(1つの車両コンピューティングデバイス204または複数の車両コンピューティングデバイス204とも呼ばれる)、1つまたは複数のセンサシステム206、1つまたは複数のエミッタ208、1つまたは複数の通信接続部210、少なくとも1つの直接接続部212、および1つまたは複数のドライブシステム214を含むことができる。
【0048】
車両コンピューティングデバイス204は、1つまたは複数のプロセッサ216および1つまたは複数のプロセッサ216と通信可能に結合されたメモリ218を含むことができる。図示の例では、車両202は自律車両であるが、車両202は任意の他のタイプの車両とすることができる。図示の例では、車両コンピューティングデバイス204のメモリ218は、位置推定コンポーネント220、知覚コンポーネント222、1つまたは複数のマップ224、1つまたは複数のシステムコントローラ226、画像生成コンポーネント230および機械学習コンポーネント232を含む予測コンポーネント228、および軌道生成コンポーネント236および評価コンポーネント238を含む計画コンポーネント234を格納する。例示の目的でメモリ218に存在するものとして図2に示されているが、位置推定コンポーネント220、知覚コンポーネント222、1つまたは複数のマップ224、1つまたは複数のシステムコントローラ226、予測コンポーネント228、画像生成コンポーネント230、機械学習コンポーネント232、計画コンポーネント234、軌道生成コンポーネント236、および評価コンポーネント238は、追加的に、または代替的に、車両202(例えば、遠隔に格納された)にアクセス可能であり得ることが企図されている。
【0049】
少なくとも1つの例では、位置推定コンポーネント220は、センサシステム206からデータを受信して、車両202の位置および/または方向(例えば、1つまたは複数のx、y、z位置、ロール、ピッチ、またはヨー)を決定する機能を含むことができる。例えば、位置推定コンポーネント220は、環境のマップを含み、および/または要求/受信でき、マップ内の自律車両の位置および/または方向を継続的に決定できる。いくつかの例では、位置推定コンポーネント220は、SLAM(同時位置推定およびマッピング)、CLAMS(較正、位置推定およびマッピングを同時に)、相対SLAM、バンドル調整、非線形最小二乗最適化などを利用して、画像データ、LIDARデータ、radarデータ、IMUデータ、GPSデータ、ホイールエンコーダデータなどを受信し、自律車両の位置を正確に決定できる。いくつかの例では、位置推定コンポーネント220は、本明細書で説明するように、車両202の様々なコンポーネントにデータを提供し、軌道を生成するための、および/またはマップデータを生成もしくは受信するための自律車両の初期位置を決定できる。
【0050】
いくつかの例では、知覚コンポーネント222は、オブジェクトの検出、セグメンテーション、および/または分類を実行する機能を含むことができる。いくつかの例では、知覚コンポーネント222は、車両202に近接するエンティティの存在および/またはエンティティタイプ(例えば、自動車、歩行者、自転車、動物、建物、木、路面、縁石、歩道、不明など)としてのエンティティの分類を示す処理済みセンサデータを提供できる。追加または代替の例では、知覚コンポーネント222は、検出されたエンティティ(例えば、追跡されたオブジェクト)に、および/またはエンティティが位置している環境に関連付けられた1つまたは複数の特性を示す処理されたセンサデータを提供できる。いくつかの例では、エンティティに関連付けられた特性は、x位置(グローバルおよび/またはローカル位置)、y位置(グローバルおよび/またはローカル位置)、z位置(グローバルおよび/またはローカル位置)、方向(たとえば、ロール、ピッチ、ヨー)、エンティティタイプ(たとえば、分類)、エンティティの速度、エンティティの加速度、エンティティの範囲(サイズ)などを含むことができるが、これらに限定されない。環境に関連付けられた特性は、環境内の別のエンティティの存在、環境内の別のエンティティの状態、時刻、曜日、季節、気象条件、暗闇/光の表示などを含むことができるが、これらに限定されない。
【0051】
メモリ218は、環境内でナビゲートするために車両202によって使用できる1つまたは複数のマップ224をさらに含むことができる。この説明を目的として、マップは、これらに限定されないが、トポロジー(交差点など)、車道、山脈、道路、地形、および一般的な環境などの環境についての情報を提供することが可能である、2次元、3次元、またはN次元でモデル化された任意の数のデータ構造とすることができる。いくつかの例では、マップは、テクスチャ情報(例えば、色情報(例えば、RGB色情報、ラボ色情報、HSV/HSL色情報)など)、強度情報(例えば、LIDAR情報、RADAR情報など)、空間情報(たとえば、メッシュに投影された画像データ、個々の「サーフェル」(たとえば、個々の色および/または強度に関連付けられたポリゴン))、および反射率情報(例えば、鏡面反射率情報、再帰反射率情報、BRDF情報、BSSRDF情報など)を、含むことができるが、これらに限定されない。一例では、マップは環境の3次元メッシュを含むことができる。いくつかの例では、マップの個々のタイルが環境の個別の部分を表すように、マップをタイルフォーマットで格納でき、本明細書で説明するように、必要に応じて作業メモリにロードできる。少なくとも1つの例では、1つまたは複数のマップ224は、少なくとも1つのマップ(例えば、画像および/またはメッシュ)を含むことができる。いくつかの例では、車両202はマップ224に少なくとも部分的に基づいて制御できる。すなわち、マップ224を、位置推定コンポーネント220、知覚コンポーネント222、予測コンポーネント228、および/または計画コンポーネント234に関連して使用し、車両202の位置を決定し、環境内のオブジェクトを識別し、オブジェクトおよび/または車両202に関連付けられた予測確率を生成し、および/または環境内をナビゲートするためのルートおよび/または軌道を生成できる。
【0052】
いくつかの例では、1つまたは複数のマップ224は、ネットワーク240を介してアクセス可能なリモートコンピューティングデバイス(コンピューティングデバイス242など)に格納できる。いくつかの例では、複数のマップ224は、例えば、特性(例えば、エンティティタイプ、時刻、曜日、季節など)に基づいて格納できる。複数のマップ224を格納することは同様のメモリ要件を有することができるが、マップ内のデータにアクセスできる速度を増加させる。
【0053】
少なくとも1つの例示において、車両コンピューティングデバイス204は、1つまたは複数のシステムコントローラ226を含むことができ、これは、車両202のステアリング、推進、ブレーキ、安全性、エミッタ、通信、およびその他のシステムを制御するよう構成できる。これらのシステムコントローラ226は、ドライブシステム214の対応するシステムおよび/または車両202の他のコンポーネントと通信および/または制御できる。
【0054】
概して、予測コンポーネント228は、環境内のオブジェクトの予測された軌道を生成できる。例えば、予測コンポーネント228は、車両202からの閾値距離内で、車両、歩行者、動物などの1つまたは複数の予測軌道を生成できる。いくつかの例では、予測コンポーネント228は、オブジェクトのトレースを測定し、観察および予測された動作に基づいてオブジェクトの軌道を生成できる。
【0055】
いくつかの例では、画像生成コンポーネント230は、シーンのトップダウンビューを表す画像を生成する機能を含むことができる。画像生成コンポーネント230によって生成されたそのような画像の例は、例104、126、および128として図1に示されている。
【0056】
いくつかの例では、画像生成コンポーネント230は、車両202の周りのエリアを表す画像を生成できる。いくつかの例では、エリアは、センサから可視のエリア(例えば、センサ範囲)、後退地平線(a receding horizon)、アクション(例えば、交差点を横断する)に関連付けられたエリアなどに少なくとも部分的に基づくことができる。いくつかの例では、画像は、車両202の周りの100メートル×100メートルのエリアを表し得るが、任意のエリアが企図される。画像生成コンポーネント230は、知覚コンポーネント222から環境内のオブジェクトに関するデータを受信でき、位置推定コンポーネント220、知覚コンポーネント222、および1つまたは複数のマップ224から環境自体に関するデータを受信できる。画像生成コンポーネント230は、環境内のオブジェクト(たとえば、本明細書で説明するように、バウンディングボックスで表される)、オブジェクトに関する意味情報(例えば、分類タイプ)、動き情報(例えば、速度情報、加速度情報など)などを含む環境のトップダウンビューを生成できる。画像生成コンポーネント230は、オブジェクトおよび環境の様々な属性を表す画像内に画像要素(例えば、記号または他の表現)をさらに生成することができ、1つまたは複数の速度ベクトル、1つまたは複数の加速度ベクトル、照明インジケータ(たとえば、それぞれのインジケーターステータスとして表される、オブジェクトのブレーキライト、オブジェクトのターンシグナルライトなど)、信号機情報(信号機の状態など)、レーン情報(たとえば、レーンが左折専用レーンであるか、右折専用レーンであるかなど)、などを含むが、これらに限定されない。
【0057】
さらに、画像生成コンポーネント230は、本明細書で説明されるように、アクションデータを含む1つまたは複数のチャネルを生成できる。例えば、アクションデータは、候補アクションに関連付けられた現在のレーンおよび/またはターゲットレーンを識別することを含むことができる。
【0058】
いくつかの例では、画像生成コンポーネント230は、本明細書で詳細に説明されるように、環境の意味情報を含む1つまたは複数の画像を生成できる。
【0059】
いくつかの例では、画像生成コンポーネント230は、環境内のオブジェクトのトレースを表す1つまたは複数の画像を生成できる。画像生成コンポーネント230によって生成された画像は、本明細書で説明されるように、予測確率で生成するために使用できる環境および環境内のオブジェクトの状態に関する事前情報を表すことができる。
【0060】
本明細書で説明される例のいずれかにおいて、画像生成コンポーネント230は、複数のチャネルを有する画像を生成し得、各チャネルは、いくつかの情報(意味的またはその他の)を表す。
【0061】
いくつかの例では、機械学習コンポーネント232(機械学習モデルコンポーネント232とも呼ばれる)は、本明細書で説明されるように、画像生成コンポーネント230によって生成された画像を受信する、および予測確率を含む1つまたは複数のヒートマップを生成する機能を含むことができる。
【0062】
いくつかの例では、機械学習コンポーネント232は、モデルに入力されたトップダウン画像に基づいて1つまたは複数のヒートマップを出力するようにトレーニングされた1つまたは複数の機械学習モデルを含むことができる。いくつかの例では、機械学習コンポーネント232は、畳み込みニューラルネットワーク(CNN)を含むことができ、これは、1つまたは複数のリカレントニューラルネットワーク(RNN)層、例えば、長短期記憶(LSTM)層、を含んでもよい、または含まなくてもよい。
【0063】
いくつかの例では、機械学習コンポーネント232によって出力されたヒートマップは、自律車両に近接する環境の個別化された領域を表すことができる。たとえば、ヒートマップは、自律車両の周囲の100メートル×100メートルの領域を表す64×64グリッド(またはJ×Kサイズのグリッド)を表すことができる。いくつかの例では、ヒートマップによって表されるエリアは、機械学習コンポーネント232に入力された画像によって表されるエリアに対応できる。もちろん、ヒートマップは任意のサイズの領域を表すことができ、任意の数の個別の部分の領域を表すことができる。いくつかのケースでは、ヒートマップの一部をヒートマップのセルと呼ぶことができる。各セルは、オブジェクトがヒートマップに対応する時間において、環境内の対応する位置にいる確率を表す予測確率を含むことができる。いくつかの例では、機械学習モデルは複数のヒートマップを出力でき、複数のヒートマップのヒートマップは、将来の特定の時間(例えば、0.5秒、1秒、3秒、5秒、10秒など)におけるオブジェクトに関連付けられた確率予測を表すことができる。
【0064】
いくつかの例では、機械学習コンポーネント232を、任意の数の入力画像に基づいて任意の数のヒートマップを生成するようにトレーニングできる。例えば、機械学習コンポーネント232は、N個の入力画像を受信でき、M個のヒートマップを出力できる。
【0065】
一般に、計画コンポーネント234は環境を通り横断するために車両202が辿る経路を決定できる。
【0066】
いくつかの例では、軌道生成コンポーネント236は、様々なルートおよび軌道ならびに様々な詳細レベルを決定する機能を含むことができる。例えば、軌道生成コンポーネント236は、第1の位置(例えば、現在の位置)から第2の位置(例えば、ターゲット位置)へ進行するルートを決定できる。本説明を目的に、ルートは2つの位置の間を走行するための一連の通過点にできる。非限定的な例として、通過点は、道路、交差点、全地球測位システム(GPS)座標などを含む。さらに、軌道生成コンポーネント236は、第1の位置から第2の位置への経路の少なくとも一部に沿って自律車両をガイドするための命令を生成できる。少なくとも1つの例では、軌道生成コンポーネント236は一連の通過点内の第1の通過点から一連の通過点の第2の通過点まで自律車両をどのようにガイドするかを決定できる。いくつかの例では、命令は軌道または軌道の一部とすることができる。いくつかの例では、receding horizon技術に従って、複数の軌道を実質的に同時に(例えば、技術的許容範囲内で)生成でき、複数の軌道のうちの1つが車両202の走行ために選択される。
【0067】
いくつかの例では、評価コンポーネント238は、1つまたは複数の候補アクションおよび/または候補軌道を評価する機能を含むことができる。例えば、各アクションに関連付けられた予測確率を含むヒートマップの各セットについて、評価コンポーネント238は、1つまたは複数のコスト、リスクの量、および/またはリワード(reward)を決定できる。いくつかの例では、評価コンポーネント238は、車両202の候補位置と、環境内のオブジェクトに関連付けられた予測確率との間の重複の量を決定できる。いくつかの例では、評価コンポーネント238は、車両202の表現(例えば、バウンディングボックスまたは拡張バウンディングボックス)と、オブジェクトに関連付けられた予測確率および/または拡張予測確率との間の距離を決定できる。少なくともいくつかの例では、そのような拡張(入力としてのバウンディングボックスへの、または出力される予測確率への)は、将来のオブジェクトのおそらくの位置の周りの領域を人為的に増やすために、安全要素に基づき得る。いくつかの例では、評価コンポーネント238は、車両202の軌道が、車両202に関連付けられた予測確率(拡張された予測確率を含み得る)に関連付けられた領域を通り横断するかどうかを決定できる。評価コンポーネント238は、将来の個々のタイムステップで、および/または候補アクションに関連付けられた一部のまたは全てのタイムステップについて累積的に、コスト、リスク、および/またはリワード(reward)を決定できる。したがって、評価コンポーネント238は、異なる候補アクションのコスト、リスク、および/またはリワード(reward)を比較でき、車両を制御するためのアクションを選択できる。
【0068】
候補アクションの評価の例は、「Probabilistic Risk Assessment for Trajectory Evaluation」と題され、2018年11月30日に出願された米国特許出願番号16/206,877に関連して説明される。米国特許出願第16/206,877号は、その全体が参照によって本明細書に組み込まれている。
【0069】
評価コンポーネント238によって考慮されるべき追加のコストは、位置ベースのコスト(例えば、車両202に関連付けられた予測確率とオブジェクトとの間の距離に基づく)、速度コスト(たとえば、予測確率に関連付けられた領域を通り横断する間の速度を適用することに基づく)、加速度コスト(例えば、軌道候補アクション全体に加速度限界を適用する)、オブジェクトが道路の規則に従い得るという期待などを含むことができるが、これらに限定されない。
【0070】
いくつかの例では、機械学習コンポーネント232は、ヒートマップを計画コンポーネント234に直接提供でき、次に、車両202が実行するアクションを選択または決定でき、および/または車両202が辿る軌道を生成できる。
【0071】
いくつかの例では、本明細書で説明されるコンポーネントの一部または全ての態様は、任意のモデル、アルゴリズム、および/または機械学習アルゴリズムを含むことができる。例えば、いくつかの例では、メモリ218(および以下で説明されるメモリ246)の中のコンポーネントをニューラルネットワークとして実装できる。
【0072】
本明細書で説明されるように、例示的なニューラルネットワークは、入力データを一連の接続された層に通して出力を生成する生物学的に着想を得たアルゴリズムである。ニューラルネットワークの各層は別のニューラルネットワークを含むことができ、または任意の数の層を含むことができる(畳み込みかどうかに関係なく)。本開示のコンテキストで理解できるように、ニューラルネットワークは、機械学習を利用でき、これは、学習されたパラメータに基づいて出力が生成されるそのようなアルゴリズムの広範囲のクラスを指すことができる。
【0073】
ニューラルネットワークのコンテキストで説明したが、任意のタイプの機械学習を本開示と一致させて使用できる。例えば、機械学習アルゴリズムは、回帰アルゴリズム(例えば、通常の最小二乗回帰(OLSR)、線形回帰、ロジスティック回帰、ステップワイズ回帰、多変量適応回帰スプライン(MARS)、局所的に推定されたスカープロット平滑化(LOESS))、インスタンスベースのアルゴリズム(例えば、リッジ回帰、最小絶対収縮および選択演算子(LASSO)、弾性ネット、最小角度回帰(LARS))、決定木アルゴリズム(例えば、分類および回帰木(CART)、反復二分法3(ID3)、カイ二乗自動相互作用検出(CHAID)、決定切り株、条件付き決定木))、ベイジアンアルゴリズム(例えば、単純ベイズ、ガウス単純ベイズ、多項単純ベイズ、平均1依存推定量(AODE)、ベイジアン信念ネットワーク(BNN)、ベイジアンネットワーク)、クラスタリングアルゴリズム(例えば、k平均、k中央値、期待値最大化(EM)、階層的クラスタリング)、相関ルール学習アルゴリズム(例えば、パーセプトロン、バックプロパゲーション、ホップフィールドネットワーク、動径基底関数ネットワーク(RBFN))、ディープラーニングアルゴリズム(例えばディープボルツマンマシン(DBM)、ディープブリーフネットワーク(DBN)、重畳型ニューラルネットワーク(CNN)、スタック・オートエンコーダ)、次元数削減アルゴリズム(例えば主成分分析(PCA)、主成分回帰(PCR)、部分最小二乗回帰(PLSR)、サモンマッピング、多次元スケーリング(MDS)、射影追跡、線形判別分析(LDA)、混合判別分析(MDA)、二次判別分析(QDA)、柔軟判別分析(FDA))、アンサンブルアルゴリズム(例えば、ブースティング、ブートストラップ集計(バギング)、アダブースト、スタック一般化(ブレンディング)、勾配ブースティングマシン(GBM)、勾配ブースティング回帰ツリー(GBRT)、ランダムフォレスト)、SVM(サポートベクターマシン)、教師あり学習、教師なし学習、半教師あり学習などの方法を含むことができるが、これらに限定されない。
【0074】
アーキテクチャの追加の例は、ResNet50、ResNet101、VGG、DenseNet、PointNetなどのニューラルネットワークを含む。
【0075】
少なくとも1つの例では、センサシステム206は、lidarセンサ、radarセンサ、超音波トランスデューサー、sonarセンサ、位置センサ(例えば、GPS、コンパスなど)、慣性センサ(例えば、慣性測定ユニット(IMUs)、加速度計、磁力計、ジャイロスコープなど)、カメラ(例えばRGB、IR、強度、深度など)、飛行時間センサ(time of flight sensor)、マイク、ホイールエンコーダ、環境センサ(例えば温度センサ、湿度センサ、光センサ、圧力センサなど)など、を含むことができる。センサシステム206は、これらまたは他のタイプのセンサのそれぞれの複数のインスタンスを含むことができる。例えば、lidarセンサは、車両202の角部、前部、後部、側部、および/または上部に位置する個々のlidarセンサを含むことができる。別の例として、カメラセンサは、車両202の外部および/または内部の周りの様々な位置に配置された複数のカメラを含むことができる。センサシステム206は車両コンピューティングデバイス204に入力を提供できる。追加的または代替的に、センサシステム206は、所定の期間が経過した後、ほぼ実時間で、特定の周波数にて1つまたは複数のコンピューティングデバイスに、1つまたは複数のネットワーク240を介して、センサデータを送信できる。
【0076】
車両202はまた、上記のように、光および/または音を放出するための1つまたは複数のエミッタ208を含むことができる。この例示のエミッタ208は車両202の乗客と通信する内部オーディオおよびビジュアルエミッタを含む。限定ではなく例として、内部エミッタは、スピーカー、光、記号、ディスプレイ画面、タッチ画面、触覚エミッタ(例えば、振動および/またはフォースフィードバック)、機械的アクチュエータ(例えば、シートベルトテンショナ、シートポジショナ、ヘッドレストポジショナなど)などを含むことができる。この例示のエミッタ208はまた外部エミッタを含む。限定ではなく例として、この例示の外部エミッタは、走行の方向または車両のアクションの他のインジケータ(例えば、インジケータライト、標識、ライトアレイなど)を信号で送るためのライト、および音響ビームステアリング技術を備える、1つまたは複数の歩行者または他の近くの車両と音声で通信するための1つまたは複数のオーディオエミッタ(例えば、スピーカー、スピーカーアレイ、ホーンなど)を含む。
【0077】
車両202はまた、車両202と1つまたは複数の他のローカルもしくはリモートコンピューティングデバイスとの間の通信を可能にする1つまたは複数の通信接続部210を含むことができる。例えば、通信接続部210は車両202および/またはドライブシステム214上の他のローカルコンピューティングデバイスとの通信を容易にできる。また、通信接続部210は、車両が他の近くのコンピューティングデバイス(例えば、他の近くの車両、交通信号など)と通信することを可能にできる。通信接続部210はまた、車両202が遠隔操作コンピューティングデバイスまたは他の遠隔サービスと通信することを可能にする。
【0078】
通信接続部210は、車両コンピューティングデバイス204を別のコンピューティングデバイスまたはネットワーク240などのネットワークに接続するための物理的および/または論理的インターフェースを含むことができる。例えば、通信接続部210は、IEEE802.11規格によって定義された周波数を介するようなWi-Fiベースの通信、Bluetoothなどの短距離無線周波数、セルラー通信(例えば、2G、3G、4G、4G LTE、5Gなど)、またはそれぞれのコンピューティングデバイスが他のコンピューティングデバイスとインターフェースで接続することを可能にする任意の適切な有線または無線通信プロトコルを可能にできる。
【0079】
少なくとも1つの例では、車両202は、1つまたは複数のドライブシステム214を含むことができる。いくつかの例では、車両202は、単一のドライブシステム214を有することができる。少なくとも1つの例では、車両202が複数のドライブシステム214を有する場合、個々のドライブシステム214を車両202の両端部(例えば前部および後部など)に配置できる。少なくとも1つの例では、ドライブシステム214はドライブシステム214および/または車両202の周囲の状態を検出するための1つまたは複数のセンサシステムを含むことができる。限定ではなく例として、センサシステムは、ドライブシステムのホイールの回転を感知するための1つまたは複数のホイールエンコーダ(例えば、ロータリーエンコーダ)、ドライブシステムの方向および加速度を測定するための慣性センサ(例えば、慣性測定ユニット、加速度計、ジャイロスコープ、磁力計など)、カメラまたはその他の画像センサ、ドライブシステムの周囲のオブジェクトを音響的に検出するための超音波センサ、lidarセンサ、radarセンサなど、を含むことができる。一部のセンサ、ホイールエンコーダなど、はドライブシステム214に固有とすることができる。いくつかのケースでは、ドライブシステム214上のセンサシステムは車両202の対応するシステム(例えば、センサシステム206)と重複または補足できる。
【0080】
ドライブシステム214は、高電圧バッテリー、車両を推進するモーター、バッテリーからの直流を他の車両システムで使用する交流に変換するインバーター、ステアリングモーターおよびステアリングラック(電動とすることができる)を含むステアリングシステム、油圧または電気アクチュエータを含むブレーキシステム、油圧および/または空気圧コンポーネントを含むサスペンションシステム、トラクションの損失を軽減し制御を維持するブレーキ力分散用の安定性制御システム、HVACシステム、照明(例えば車両の外部環境を照らすヘッド/テールライトなどの照明)、および1つまたは複数の他のシステム(例えば冷却システム、安全システム、車載充電システム、DC/DCコンバーター、高電圧ジャンクション、高電圧ケーブル、充電システム、充電ポートなどのその他の電装コンポーネント)を含む多くの車両システムを含むことができる。さらに、ドライブシステム214は、センサシステムからデータを受信および前処理し、様々な車両システムの操作を制御することができるドライブシステムコントローラを含むことができる。いくつかの例では、ドライブシステムコントローラは、1つまたは複数のプロセッサおよび1つまたは複数のプロセッサと通信可能に結合されたメモリを含むことができる。メモリはドライブシステム214の様々な機能を実行する1つまたは複数のコンポーネントを格納できる。さらに、ドライブシステム214はまた、それぞれのドライブシステムによる1つまたは複数の他のローカルまたはリモートコンピューティングデバイスとの通信を可能にする1つまたは複数の通信接続部を含む。
【0081】
少なくとも1つの例では、直接接続部212は1つまたは複数のドライブシステム214を車両202の本体と結合するための物理的インターフェースを提供できる。例えば、直接接続部212は、ドライブシステム214と車両との間のエネルギー、流体、空気、データなどの転送を可能にすることができる。いくつかの例では、直接接続部212はさらにドライブシステム214を車両202の本体に着脱可能に固定できる。
【0082】
いくつかの例では、車両202はネットワーク240を介してセンサデータを1つまたは複数のコンピューティングデバイス242に送信できる。いくつかの例では、車両202は未処理のセンサデータをコンピューティングデバイス242に送信できる。他の例では、車両202は処理済みセンサデータおよび/またはセンサデータの表現をコンピューティングデバイス242に送信できる。いくつかの例では、車両202は、所定の期間の経過後、ほぼ実時間などで、特定の周波数でセンサデータをコンピューティングデバイス242に送信できる。いくつかの例では、車両202はセンサデータ(未処理または処理済み)を1つまたは複数のログファイルとしてコンピューティングデバイス242に送信できる。
【0083】
コンピューティングデバイス242は、プロセッサ244およびトレーニングコンポーネント248を格納するメモリ246を含むことができる。
【0084】
いくつかの例では、トレーニングコンポーネント248は、予測確率を含む1つまたは複数のヒートマップを出力するように機械学習モデルをトレーニングする機能を含むことができる。例えば、トレーニングコンポーネント248は、環境のトップダウンビューを表す画像のセットを受信できる。いくつかのケースでは、画像のセットは、5秒、7秒、10秒、20秒などの期間にわたって環境を通り横断するオブジェクトを表すことができる。画像のセットの少なくとも一部は、機械学習モデルをトレーニングするための入力として使用でき、画像のセットの少なくとも一部は、機械学習モデルをトレーニングするためのグラウンドトゥルース情報として使用できる。非限定的な例として、画像のシーケンスの第1のセット(例えば、3、4、5、またはそれ以上)を機械学習モデルに入力し得る。いくつかの例では、車両202の意図、ゴール、サブゴールなども、トレーニングのために入力できる(例えば、マルチチャネル画像のチャネルとしてエンコードされ得るように)。次に、第1のセットの直前にある一連の画像の第2のセットの画像(またはそこに関連付けられた軌道情報、たとえば、画像から位置および/または速度を抽出することによる)を、モデルをトレーニングするためのグラウンドトゥルースとして使用できる。したがって、オブジェクトが環境を横断する記録された軌道の画像を提供することによって、予測コンポーネント228は、本明細書で説明されるように、予測確率を含む1つまたは複数のヒートマップを出力するようにトレーニングされ得る。
【0085】
いくつかの例では、トレーニングコンポーネント248は、シミュレータによって生成されたトレーニングデータを含むことができる。たとえば、シミュレートされたトレーニングデータは、車両が環境内のオブジェクトと衝突した、または環境内のオブジェクトと衝突寸前だった例を表して、追加のトレーニング例を提供できる。
【0086】
トレーニングコンポーネント248の追加の詳細は、図2Bに関連して、ならびに本開示全体を通して、以下で説明される。
【0087】
トレーニングのためのデータの追加の例は、図3に関連して、ならびに本開示全体を通して説明される。
【0088】
車両202のプロセッサ216およびコンピューティングデバイス242のプロセッサ244は、本明細書で説明されるように、データを処理し操作を実施するための命令を実行可能な任意の適切なプロセッサとすることができる。限定ではなく例として、プロセッサ216および244は、1つまたは複数の中央処理装置(CPU)、グラフィック処理装置(GPU)、または電子データを処理して当該電子データをレジスタまたはメモリに格納できる他の電子データに変換する任意の他のデバイスまたはデバイスの一部、を備えることができる。いくつかの例で、集積回路(例えば、ASICなど)、ゲートアレイ(例えば、FPGAなど)、および他のハードウェアデバイスはまた、それらがエンコードされた命令を実装するよう構成される限り、プロセッサとみなすことができる。
【0089】
メモリ218および246は、非一時的コンピュータ可読媒体の例である。メモリ218および246は、本明細書に記載の方法および様々なシステムに起因する機能を実装する、オペレーティングシステムおよび1つもしくは複数のソフトウェアアプリケーション、命令、プログラム、ならびに/またはデータを格納できる。様々な実装形態では、メモリを、スタティックランダムアクセスメモリ(SRAM)、シンクロナスダイナミックRAM(SDRAM)、不揮発性/フラッシュタイプメモリ、または情報を格納可能な任意の他のタイプのメモリなど、任意の適切なメモリ技術を用いて実装できる。本明細書で説明されるアーキテクチャ、システム、および個々の要素は、多くの他の論理的、プログラム的、および物理的なコンポーネントを含むことができ、添付図面に示されるそれらは、本明細書での説明に関連する単なる例にすぎない。
【0090】
いくつかの例では、メモリ218および246は、少なくとも作業メモリおよび記憶メモリを含むことができる。例えば、作業メモリは、プロセッサ216および244によって操作されるデータを格納するために使用される、限られた容量の高速メモリ(例えば、キャッシュメモリ)であり得る。いくつかの例では、メモリ218および246は、データの長期記憶に使用される比較的大容量の低速メモリであり得る記憶メモリを含むことができる。いくつかのケースでは、プロセッサ216および244は、ストレージメモリに格納されているデータを直接操作できず、本明細書で説明するように、データに基づいて操作を実行するために、データを作業メモリにロードする必要があり得る。
【0091】
図2は分散システムとして示されているが、代替の例では、車両202のコンポーネントをコンピューティングデバイス242に関連付けることができ、および/またはコンピューティングデバイス242のコンポーネントを車両202に関連付けることができる、という事に留意すべきである。すなわち、車両202はコンピューティングデバイス242に関連付けられた機能のうちの1つまたは複数を実行でき、逆もまた同様である。
【0092】
図2Bは、本明細書で説明される技術を実装する、機械学習モデルをトレーニングするための例示的なトレーニングコンポーネントのブロック図250を示す。
【0093】
いくつかの例では、トレーニングデータ258は、環境を通り横断する際に車両によってキャプチャされるデータを含むことができる。そのようなトレーニングデータは、自律車両がトレーニングデータ258をキャプチャした場合、そのような自律車両によって実行される行動を表し得る、アクションデータ262を含むことができる。いくつかの例では、入力252は、アクションデータ262およびトレーニングデータ258に、少なくとも部分的に基づくことができる。
【0094】
1つまたは複数のマルチチャネル画像を含む入力252を、機械学習コンポーネント232に入力できる。いくつかの例では、機械学習コンポーネント232は、ResNetアーキテクチャを含むことができる。いくつかの例では、機械学習コンポーネント232は、ベースバックボーンとしてResNetアーキテクチャを含むことができる。いくつかの例では、アクションデータを入力252に沿って入力でき、アクションデータをアクションデータ262として表すことができる。
【0095】
いくつかの例では、出力特徴マップを1×1の畳み込みに通して、最終的なチャネル次元を取得でき、これは、入力解像度に一致するように双線形にアップサンプリングして(例えば、アップサンプリングコンポーネント254を介して)、出力256(例えば、ヒートマップおよび/または予測確率)として表すことができる。
【0096】
いくつかの例では、機械学習コンポーネント232からの出力ロジットは、シグモイドクロスエントロピー損失を使用してトレーニングデータ258(例えば、占有マップを表すグラウンドトゥルース)と比較できる。
【0097】
クロスエントロピー損失および/または確率質量コンポーネント260は、出力ロジットをトレーニングデータ258と比較する機能を含むことができる。次いで、結果として得られる損失行列は、以下の関数
【0098】
【数1】
【0099】
に従って、トレーニングデータ258内の占有および非占有ピクセルの間でバランスを取ることができ、ここで、Liは、将来の第iのステップでのシグモイドクロスエントロピー損失から得られる損失行列であり、Nは、予測される将来のステップの数である。用語1occupiedおよび1unoccupiedは、将来のオブジェクトの占有および非占有マップを表すインジケーターマトリックスであり、用語noccupiedおよびnunoccupiedは、将来の占有および非占有セルの数を表す。占有間のバランスをとることは、同数(またはほぼ等しい)の占有および非占有勾配がバックプロパゲーションを通過すること、および予測コンポーネント228が全てのセルが占有されているとして、または全てのセルが占有されていないとして予測することに偏らないこと、を確実にする。
【0100】
上記の式(1)で指定された密なセグメンテーションのコストは、シーン内のエンティティの総数を保存し得ない。いくつかの例では、クロスエントロピー損失および/または確率質量コンポーネント260は、シーン内の予測コンポーネント228によって予測される総確率質量(例えば、ヒートマップに関連付けられた確率の合計)と、
【0101】
【数2】
【0102】
としての占有セルの実際の数との間の差を最小化するための追加コストを含むことができ、ここでφiは将来のステップiでの占有マップを表す。確率質量コンポーネントを追加することにより、予測コンポーネント228は、追加の確率質量を作成することなく、利用可能なセル間で総確率質量を分配できる。たとえば、自律車両が2つの可能なモードを有する場合、次いで、ネットワークは2つのモード間で占有の確率を分配し、任意の追加の占有確率を追加し得ない。
【0103】
さらに、シーンの質量を制約することまたはそうでなければ管理することは、環境にオブジェクトを追加するためのネットワークの可用性を制限し、これは処理を単純化し得る。
【0104】
図3は、本開示の例による、予測システムへの入力および予測システムをトレーニングするためのトレーニングデータの例示的な図300を示す。
【0105】
例えば、マルチチャネル画像302は、予測コンポーネント228への入力を表し、過去のオブジェクトを表す。たとえば、各画像に関連付けられた時間は、右下隅に示されている(たとえば、t-8、t-7、t-6、t-5、t-4、t-3、t-2、t-1、およびt0)。上記のように、各フレームはさらにいくつかのチャネルで構成され得る。
【0106】
たとえば、個々のチャネルは、バウンディングボックス(例えば、バウンディングボックスは車両304またはオブジェクト306を表し、バウンディングボックスの色またはチャネルはバウンディングボックスに関連付けられたオブジェクトの分類を表す、)、x方向およびy方向のバウンディングボックスの速度(速度が、バウンディングボックスに対応する別のチャネル(例えば、チャネル136および142)のエリアを表すエリアにエンコードされた数として表すことができ、x速度およびy速度が異なるチャネルで表される)、x方向およびy方向内のオブジェクトの加速度(加速度は1つのチャネルまたは複数のチャネルのベクトルとして表すことができ、x加速度とy加速度は異なるチャネルで表される)、バウンディングボックスに関連付けられたブリンカーステータス(左折、右折、ブレーキング、リバース、ハザード、ライトなしなど)、道路ネットワーク情報(例えば、レーンを示す意味ラベル、基準線(例えば、基準線308)、横断歩道、停止標識、交差点、信号機など)、信号機の状態(例えば、赤色光、黄色光、緑色光など)など、の1つまたは複数を表し得るが、これらに限定されない。いくつかの例では、複数のチャネルを予測システムに入力して、少なくとも1つのヒートマップを生成できる。
【0107】
さらに、アクションデータは、現在のレーン310およびターゲットレーン312として表すことができる。いくつかの例では、アクションデータは、時間t-7からt0までの環境を表す1つまたは複数の画像にエンコードできる。
【0108】
トップダウン特徴は、上記の特徴画像の一部または全てをスタックすることにより、画像ブロブとして表される。いくつかの例では、マルチチャネル画像302の解像度は、センサ解像度の解像度に基づいて、ピクセルあたり15cmに設定できる。いくつかの例では、マルチチャネル画像302の単一のフレームは、50メートル×50メートルのサイズのエリアに対応できるが、任意のエリアを選択できる。いくつかの例では、マルチチャネル画像302は、車両304(例えば、自律車両)が左から右に向く、および構成可能な水平オフセットでマルチチャネル画像302のほぼ中央に位置するように回転および平行移動できる。いくつかの例では、マルチチャネル画像によって表される環境は予測のための信号のないジャンクションを表し得、そのケースでは、各レーンの信号状態はトップダウン表現に含まれ得ない。
【0109】
トレーニングデータ314は、環境内の全てのオブジェクトおよび車両のグラウンドトゥルースを表す。トレーニングデータ314は、将来の任意の数のフレームを含むことができる。図3は、時間t1、t2、t3、t4、t5、t6、t7、およびt8におけるトレーニングデータを示している。トレーニングデータ314は、例えば、機械学習コンポーネント232をトレーニングする目的で、図2のトレーニングデータ258に対応できる。
【0110】
図4は、本開示の例による、2つの二重駐車車両を含むシナリオの第1および第2の予測確率の図400であり、第2の予測確率はアクションデータに部分的に基づいている。
【0111】
予測確率402は、予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、それにより、予測確率402は、アクションデータに部分的に基づいていない。予測確率402の第1のフレーム(フレームt1として示されている)において、シナリオは、車両406ならびにオブジェクト408および410を表す。矢印412は、環境に関連付けられた交通の方向を示している。トラフィックの方向の同様の表示は、この開示全体を通して使用される。
【0112】
シナリオのオブジェクト408および410は、2台の二重駐車車両を表している。予測確率414は、時間t1における車両406に関連付けられた予測確率を表す予測コンポーネント228によって出力される。予測確率416および418は、それぞれ、オブジェクト408および410に関連付けられている。予測確率402は、予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0113】
予測確率404は、予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、これにより、予測確率は、アクションデータ420(灰色の影付きレーンとして示されている)に部分的に基づいている。予測確率422は車両406に関連付けられ、一方、予測確率424および426はそれぞれオブジェクト408および410に関連付けられる。予測確率404は、予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0114】
図5は、本開示の例による、二重駐車車両を含むシナリオの第1および第2の予測確率の図500であり、第2の予測確率はアクションデータに部分的に基づいている。
【0115】
予測確率502は、予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、それにより、予測確率502は、アクションデータに部分的に基づいていない。予測確率502の第1のフレーム(フレームt1として示されている)において、シナリオは、車両506ならびにオブジェクト508、510、および512を表す。
【0116】
オブジェクト508は二重駐車車両を表す。オブジェクト510および512は車両506に対する対向交通を表す。
【0117】
注目すべきことに、予測確率502は、車両506に関連付けられた非連続の予測確率を表す。例えば、時間t6において、予測確率514および516は、車両506に関連付けられている。時間t7において、予測確率518および520は、車両506に関連付けられている。そして、時間t8において、予測確率522および524は、車両506に関連付けられている。予測確率502は、予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0118】
予測確率504は、予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、これにより、予測確率はアクションデータ526(灰色の影付きレーンとして示されている)に部分的に基づいている。
【0119】
注目すべきことに、車両506に関連付けられた予測確率504は非隣接エリアを示さず、代わりに、オブジェクト508の周りを横断する車両506を表す。予測確率504は、予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0120】
図6は、本開示の例による、自律車両の前でターンするオブジェクトを含むシナリオの第1および第2の予測確率の図600であり、第2の予測確率はアクションデータに部分的に基づいている。
【0121】
予測確率602は、予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、それにより、予測確率602はアクションデータに部分的に基づいていない。予測確率602の第1のフレーム(フレームt1として示されている)において、シナリオは車両606およびオブジェクト608を表す。
【0122】
オブジェクト608は車両606の前のレーンにターンする車両を表す。
【0123】
注目すべきことに、フレームt2の領域610(およびフレームt3乃至t8の対応する領域)に関連付けられた予測確率はオブジェクト608に関連付けられ、一方、予測確率612は車両606に関連付けられている。予測確率602は予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0124】
予測確率604は予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、これにより、予測確率はアクションデータ614および616(灰色の影付きレーンとして示されている)に部分的に基づいている。アクションデータ614は現在の(または出口)レーンに対応でき、一方、アクションデータ616はターゲット(または入口)レーンに対応できる。
【0125】
フレームt2の領域618(およびフレームt3乃至t8の対応する領域)に関連付けられた予測確率は、オブジェクト608に関連付けられ、一方、予測確率620は車両606に関連付けられている。予測確率604は、予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0126】
図7は、本開示の例による、ジャンクションを横断する自律車両を含むシナリオの第1および第2の予測確率の図700であり、第2の予測確率はアクションデータに部分的に基づいている。
【0127】
予測確率702は、予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、それにより、予測確率702は、アクションデータに部分的に基づいていない。予測確率702の第1のフレーム(フレームt1として示されている)において、シナリオは、車両706およびオブジェクト708を表す。
【0128】
図7のシナリオは車両706の前のレーンにターンする車両を表すオブジェクト708の前のジャンクションを横切る車両706を表す。
【0129】
注目すべきことに、予測確率710、712、714、および716(例えば、それぞれの破線の内側の)は、車両706に関連付けられた予測確率を表し、予測確率のマルチモーダル出力を示している。予測確率702は、予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0130】
予測確率704は、予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、これにより、予測確率はアクションデータ718および720(灰色の影付きレーンとして示されている)に部分的に基づいている。アクションデータ718は現在の(または出口)レーンに対応でき、一方、アクションデータ720はターゲット(または入口)レーンに対応できる。
【0131】
予測確率722、724、726、および728は、オブジェクト708に関連付けられ、一方、それぞれの残りの予測確率は車両706に関連付けられる。したがって、予測確率704は車両706に関連付けられた位置のより鮮明な(crisper)予測を表し、これはより正確な予測を導くことができる。予測確率704は予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0132】
図8は、本開示の例による、ブロックされたジャンクションに進入する自律車両を含むシナリオの第1および第2の予測確率の図800であり、第2の予測確率はアクションデータに部分的に基づいている。
【0133】
予測確率802は、予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、それにより、予測確率802はアクションデータに部分的に基づいていない。予測確率802の第1のフレーム(フレームt1として示されている)において、シナリオは、車両806ならびにオブジェクト808、810、および812を表す。
【0134】
図8のシナリオは、右にターンして、オブジェクト808および810に続こうとしていることを意図している、ジャンクションにおける車両806を表す。
【0135】
注目すべきことに、予測確率814、816、818、および820(例えば、それぞれの破線の内側の)は車両806に関連付けられた予測確率を表し、予測確率のマルチモーダル出力を示している。予測確率802は予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0136】
予測確率804は予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、これにより、予測確率はアクションデータ822および824(灰色の影付きレーンとして示されている)に部分的に基づいている。アクションデータ822は現在の(または出口)レーンに対応でき、一方、アクションデータ824はターゲット(または入口)レーンに対応できる。
【0137】
予測確率826、828、830、および832は、車両806に関連付けられており、一方、それぞれの残りの予測確率はオブジェクト808、810、または812に関連付けられている。したがって、予測確率804は車両806に関連付けられた位置のより鮮明な(crisper)予測を表し、これはより正確な予測を導くことができる。予測確率804は、予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0138】
図9は、本開示の例による、別のジャンクションを横断する自律車両を含むシナリオの第1および第2の予測確率の図900であり、第2の予測確率はアクションデータに部分的に基づいている。
【0139】
予測確率902は、予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、それにより、予測確率902は、アクションデータに部分的に基づいていない。予測確率902の第1のフレーム(フレームt1として示されている)において、シナリオは、車両806ならびにオブジェクト808、810、および812を表す。
【0140】
図9のシナリオは、ジャンクションを横切ることを意図しているジャンクションにおける車両906を表す。この例では、車両906のターゲットレーンがブロックされていないため、車両906はゴールに向かって進む。無条件のケース(例えば、予測確率902によって表される)では、車両906が右、左、または直進することができるが、車両906がどれをするかわからないということ、をネットワークは提案する。
【0141】
注目すべきことに、予測確率914、916、918、および920(例えば、それぞれの破線の内側の)は、車両906に関連付けられた予測確率を表し、予測確率の分散モーダル出力を示している。予測確率902は、予測コンポーネント228によって決定されるように、時間の経過とともに進展するように示されている。
【0142】
予測確率904は、予測コンポーネント228の出力を示す一連の8つのフレーム(t1乃至t8とラベル付けされている)を指し、これにより、予測確率は、アクションデータ922および924(灰色の影付きレーンとして示されている)に部分的に基づいている。アクションデータ922は、現在の(または出口)レーンに対応でき、一方、アクションデータ924は、ターゲット(または入口)レーンに対応できる。
【0143】
予測確率926、928、930、および932は、車両906に関連付けられ、一方、それぞれの残りの予測確率は、オブジェクト908、910、または912に関連付けられている。したがって、予測確率904は、車両906に関連付けられた位置のより鮮明な(crisper)予測を表し、これは、より正確な予測を導くことができる。予測確率904は時間の経過とともに進展するように示されている。
【0144】
図1、2B、および10は、本開示の実施形態による例示的なプロセスを示している。これらのプロセスは論理フローグラフとして図示され、各操作は、ハードウェア、ソフトウェア、またはそれらの組み合わせにおいて実装できる一連の操作を表す。ソフトウェアのコンテキストにおいては、操作は、1つまたは複数のプロセッサで実行したときに、列挙した操作を実行する、1つまたは複数のコンピュータ可読記録媒体に格納されたコンピュータ実行可能命令を表す。一般に、コンピュータ実行可能命令は、特定の機能を実行する、または特定の抽象的データタイプを実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。操作が記載される順序は、制限として解釈されることを意図するものではなく、任意の数の記載される操作を、任意の順序および/または並行して組み合わせて、プロセスを実行できる。
【0145】
図10は、本開示の例による、センサデータおよびアクションデータを受信し、マルチチャネル画像を生成し、予測確率を評価し、予測確率に基づいて車両を制御するための例示的なプロセス1000を示す。例えば、プロセス1000の一部または全ては、本明細書で説明されるように、図2における1つまたは複数のコンポーネントによって実行できる。例えば、プロセス1000の一部または全ては、車両コンピューティングデバイス204および/またはコンピューティングデバイス242によって実行できる。
【0146】
操作1002にて、プロセスは、環境のオブジェクトデータを受信することを含むことができ、オブジェクトデータはオブジェクトを表す。いくつかの例では、オブジェクトデータは、自律車両の知覚システムによって出力されたデータを表すことができる。例えば、オブジェクトデータは、バウンディングボックス情報、速度/加速度情報、分類などを含むことができるが、これらに限定されない。いくつかの例では、操作1002は、自律車両のセンサを使用して環境のセンサデータをキャプチャすることを含むことができる。例えば、センサデータは、lidarセンサ、radarセンサ、画像センサ、飛行時間センサ(time of flight sensor)、sonarセンサなどのうちの1つまたは複数によってキャプチャされるデータを含むことができる。いくつかの例では、操作1002は、複数のセンサを使用してセンサデータをキャプチャし、センサデータを融合または組み合わせて、環境の詳細および有益な表現にすることを含むことができる。少なくともいくつかの例では、環境に関する追加のデータ(横断歩道の位置、レーンの境界など)をエンコードし得る追加のデータを受信し得る(マップデータなど)。
【0147】
操作1004で、プロセスは、車両が環境内で実行するための候補アクションに関連付けられたアクションデータを受信することを含むことができる。いくつかの例では、アクションデータは、現在のレーン、ターゲットレーン、および/または各アクションに関連付けられた速度プロファイルまたは加速度プロファイルなどの速度あるいは加速度情報を含むことができる。候補アクションの例は、レーン内アクション、左折アクション、右折アクション、レーン変更アクション、停止アクション、譲歩アクション、合流アクションなどを含み得が、これらに限定されない。
【0148】
操作1006で、プロセスは、センサデータおよびアクションデータに少なくとも部分的に基づいて、環境のトップダウンビューを表すマルチチャネル画像を生成することを含むことができる。そのようなマルチチャネル画像の例は本開示を通し説明される。たとえば、マルチチャネル画像は、オブジェクトを、バウンディングボックス、オブジェクトの速度、環境内のオブジェクトの位置などとして表すことができる。いくつかの例では、マルチチャネル画像は、加速度情報(速度情報の代わりに、またはそれに加えて)を含むことができる。
【0149】
いくつかの例では、アクションデータは、マルチチャネル画像のチャネルにエンコードされた、現在のレーンおよびターゲットレーン、速度情報または加速度情報として表すことができる。
【0150】
マルチチャネル画像に含めることができる追加情報は、バウンディングボックスに関連付けられたオブジェクトの分類、x方向、y方向、および/またはz方向のバウンディングボックスの速度(速度は1つのチャネルまたは複数のチャネルで数値またはベクトルとして表すことができ、x速度、y速度、および/またはz速度は異なるチャネルで表される)、x方向、y方向、および/またはz方向のオブジェクトの加速度(加速度は、1つのチャネルまたは複数のチャネルで数値またはベクトルとして表すことができ、x加速度、y加速度、および/またはz加速度は異なるチャネルで表される)、車両のポーズ(例えば、x、y、z、ロール、ピッチ、ヨー)、ポーズの変化率、バウンディングボックスに関連付けられたブリンカーステータス(例えば、左折、右折、ブレーキ、後進、ハザード、ライトなしなど)、道路ネットワーク情報(例えば、レーン、横断歩道、一時停止標識、交差点、信号機などを示す意味ラベル)、信号機の状態(例えば、赤色光、黄色光、緑色光など)などを含むことができるが、これらに限定されない。そのようなマルチチャネル画像では、オブジェクトおよび環境に関する意味情報は、本明細書で詳細に説明されるように、1つまたは複数のチャネルにエンコードされ得る。
【0151】
本明細書で説明されるように、操作1006は、時間の経過に伴う環境内のオブジェクトの動作を表す複数の画像を生成することを含むことができる。
【0152】
操作1008で、プロセスは、候補アクションが考慮されたことを決定することを含むことができる。例えば、操作1008は、マルチチャネル画像が複数の候補アクションの各候補アクションに対して生成されたかどうかを決定することを含むことができる。全てではない(または実質的に全てではない)候補アクションが考慮された場合(たとえば、操作1008で「いいえ」)、プロセスは、操作1006に戻り、追加のマルチチャネル画像を生成できる。全ての候補アクションが考慮された場合(たとえば、操作1008で「はい」)、プロセスは操作1010に進む。もちろん、いくつかの例では、実装形態に応じて、操作を並行して実行できる。
【0153】
操作1010で、プロセスは、マルチチャネル画像を機械学習モデルに入力することを含むことができる。そのような機械学習モデルは、複数の予測確率を生成するように(たとえば、ヒートマップとして)トレーニングできる。機械学習モデル、ヒートマップ、および予測確率の追加の詳細については、本開示全体で説明される。
【0154】
操作1012において、プロセスは、機械学習モデルから、オブジェクトおよび/または車両に関連付けられた予測確率を受信することを含むことができる。機械学習モデル、ヒートマップ、および予測確率の追加の詳細については、本開示全体で説明される。
【0155】
操作1014において、プロセスは、予測確率に少なくとも部分的に基づいて、候補アクションを評価することを含むことができる。本明細書で説明するように、操作1014は、候補アクションに関連付けられた1つまたは複数のコスト、リスク、および/またはリワード(reward)を決定することを含むことができる。例えば、候補アクションを評価して、候補アクションに関連付けられた軌道について、候補軌道に沿った自律車両に関連付けられた領域と1つまたは複数の予測確率との間の重複の量を決定できる。いくつかの例では、自律車両に関連付けられた領域とオブジェクトの予測確率との間の重複の量は、そのような候補アクションに関連付けられたリスクの量を表すことができる。いくつかの例では、自律車両に関連付けられた領域と自律車両の予測確率との間の重複の量は、自律車両が予測確率内にとどまる程度を表すことができる。いくつかの例では、候補アクションを、自律車両に関連付けられた予想される位置とオブジェクトに関連付けられた予測確率との間の1つまたは複数の距離に基づいて評価できる。
【0156】
操作1014は、評価に少なくとも部分的に基づいて候補アクションを選択する、またはそうでなければ、決定することをさらに含むことができる。たとえば、候補アクションに関連付けられたコストを比較でき、最低のコストに関連付けられた候補アクションを選択して、自律車両を制御できる。
【0157】
操作1016において、プロセスは、予測確率に少なくとも部分的に基づいて車両を制御することを含むことができる。いくつかの例では、操作1016は、自律車両の軌道を決定することを含むことができる。いくつかの例では、本明細書で説明するように、軌道は車両によって実行されるように選択された候補アクションに基づくことができ、予測確率を評価することなく生成された軌道と比較してより安全および/またはより滑らかな軌道を表すことができる。いくつかの例では、操作1016は、環境を横断するために自律車両のステアリング、ブレーキ、および/または加速のうちの1つまたは複数を制御することを含むことができる。
【0158】
したがって、本明細書で説明する操作は、予測を改善し、計画システムが可能な将来を検索する方法を提供する。
【0159】
[例示的な発明内容]
A:1つまたは複数のプロセッサと、命令が実行されると、前記システムに自律車両のセンサによってキャプチャされた環境のセンサデータを受信することと、前記自律車両が前記環境内で実行する候補アクションに関連付けられたアクションデータを受信することとであって、前記候補アクションは、レーン内アクション、ターンアクション、またはレーン変更アクションの1つまたは複数を含み、前記アクションデータは前記候補アクションを示している、ことと、前記センサデータおよび前記アクションデータに少なくとも部分的に基づいて、前記環境のトップダウンビューを表すマルチチャネル画像を生成することであって、前記マルチチャネル画像は、前記自律車両に近接する前記環境内の車両に関連付けられたバウンディングボックス、前記車両に関連付けられた1つまたは複数の運動学的情報または意味情報、および前記自律車両に関連付けられた前記候補アクションを表す、ことと、前記マルチチャネル画像を、前記車両に関連付けられた可能な位置の予測確率を含むヒートマップを生成するようにトレーニングされた機械学習モデル内へ、入力することと、前記ヒートマップに少なくとも部分的に基づいて、前記候補アクションに関連付けられたコストを決定することと、前記候補アクションに関連付けられた前記コストに少なくとも部分的に基づいて、前記自律車両が前記環境を横断するための軌道を決定することと、を含む操作を実行させる、前記1つまたは複数のプロセッサによって実行可能な前記命令を格納する1つまたは複数のコンピュータ可読媒体と、を含むシステム。
【0160】
B:前記自律車両に関連付けられた前記候補アクションを表す前記マルチチャネル画像を生成することは、前記候補アクションに関連付けられた前記環境内のターゲットレーンを表す前記マルチチャネル画像のチャネルを生成することを含み、前記ターゲットレーンは、前記自律車両が占有する予定のレーンを表す、
段落Aに記載のシステム。
【0161】
C:前記自律車両に関連付けられた前記候補アクションを表す前記マルチチャネル画像を生成することは、前記候補アクションに関連付けられた前記自律車両の目標速度または目標加速度を表す前記マルチチャネル画像のチャネルを生成することを含む、段落AまたはBに記載のシステム。
【0162】
D:前記予測確率は、将来の時間に関連付けられた占有グリッドとして表され、前記占有グリッドのセルは、将来の時間にて、前記車両が前記セルに関連付けられた領域に存在する確率を示す、段落A乃至Cのいずれかに記載のシステム。
【0163】
E:前記候補アクションが第1候補アクションであり、前記ヒートマップが第1のヒートマップであり、前記予測確率が第1の予測確率であり、前記コストは第1のコストであり、前記操作が、前記センサデータおよび第2の候補行動に少なくとも部分的に基づいて、前記車両に関連付けられた第2の予測確率を含む第2のヒートマップを決定することと、前記第2のヒートマップに少なくとも部分的に基づいて、第2のコストを決定することと、前記第1のコストおよび前記第2のコストに少なくとも部分的に基づいて、前記第1候補アクションまたは前記第2の候補行動から選択された行動を選択することと、前記選択された行動に少なくとも部分的に基づく前記軌道を決定することと、をさらに含む、
段落A乃至Dのいずれかに記載のシステム。
【0164】
F:環境内のオブジェクトを表すオブジェクトデータを受信することと、車両が前記環境内で実行するための候補アクションに関連付けられたアクションデータを受信することと、前記オブジェクトデータおよび前記アクションデータに少なくとも部分的に基づいて、前記環境のトップダウンビューを表すマルチチャネル画像を生成することであって、前記マルチチャネル画像は、前記オブジェクト、前記オブジェクトに関連付けられたモーション情報、および前記車両に関連付けられた前記候補アクションを表す、ことと、前記マルチチャネル画像を機械学習モデル内へ入力することと、前記機械学習モデルから、前記オブジェクトに関連付けられた予測確率を受信することと、前記予測確率に少なくとも部分的に基づいて、前記車両が前記環境を横断するように、制御することと、を含む方法。
【0165】
G:前記予測確率は第1の予測確率であり、前記方法は前記機械学習モデルから前記車両に関連付けられた第2の予測確率を受信すること、をさらに含む、段落Fに記載の方法。
【0166】
H:前記候補アクションは、レーン内アクション、レーン変更アクション、またはターンアクションの少なくとも1つを含み、前記車両に関連付けられた前記候補アクションを表す前記マルチチャネル画像を生成することは、前記候補アクションに関連付けられたターゲットレーンを表す前記マルチチャネル画像のチャネルを生成することを含む、
段落FまたはGに記載の方法。
【0167】
I:前記チャネルは第1のチャネルであり、前記車両に関連付けられた前記候補アクションを表す前記マルチチャネル画像を生成することは、前記候補アクションに関連付けられた前記車両の目標の速度または目標の加速度を表す前記マルチチャネル画像の第2のチャネルをさらに含む、段落Hに記載の方法。
【0168】
J:前記マルチチャネル画像は、前記環境内の追加のオブジェクトの追加のオブジェクト情報を含む1つまたは複数のチャネルをさらに含み、前記マルチチャネル画像は現在の時間より前の1つまたは複数の前回の時間に関連付けられた複数のマルチチャネル画像の1つである、段落F乃至Iのいずれかに記載の方法。
【0169】
K:前記機械学習モデルから、前記現在の時間の後の1つまたは複数の将来の時間における前記環境を表す複数の予測確率を、受信すること、をさらに含むに段落J記載の方法。
【0170】
L:前記予測確率は現在の時間の後の第1の時間に関連付けられた第1の予測確率であり、前記方法は、前記機械学習モデルから前記オブジェクトに関連付けられた第2の予測確率を受信することをさらに含み、前記第2の予測確率は前記第1の時間の後の第2の時間に関連付けられており、前記第1の予測確率に関連付けられた第1の確率の量は前記第2の予測確率に関連付けられた第2の確率の量の閾値量内である、段落F乃至Kのいずれかに記載の方法。
【0171】
M:前記オブジェクトデータが画像データ、lidarデータ、radarデータ、または飛行時間データ(time-of-flight data)の少なくとも1つに少なくとも部分的に基づいている、段落F乃至Lのいずれかに記載の方法。
【0172】
N:前記機械学習モデルは畳み込みニューラルネットワークを含む、段落F乃至Mのいずれかに記載の方法。
【0173】
O.前記アクションデータは第1のアクションデータであり、前記候補アクションは第1の候補アクションであり、前記マルチチャネル画像は第1のマルチチャネル画像であり、前記環境の前記トップダウンビューは前記環境の第1のトップダウンビューであり、前記予測確率は前記第1の候補アクションに関連付けられた第1の予測確率であり、前記方法は前記車両が前記環境内で実行するための第2の候補アクションに関連付けられた第2のアクションデータを受信することと、前記オブジェクトデータおよび前記第2のアクションデータに少なくとも部分的に基づいて、前記環境の第2のトップダウンビューを表す第2のマルチチャネル画像を生成することと、前記第2のマルチチャネル画像を前記機械学習モデル内に入力することと、前記機械学習モデルから、前記オブジェクトに関連付けられた第2の予測確率を受信することと、をさらに含む、段落F乃至Nのいずれかに記載の方法。
【0174】
P.前記第1の予測確率に関連付けられた第1のコストを決定することと、前記第2の予測確率に少なくとも部分的に基づいて、第2のコストを決定することと、選択されたアクションとして、ならびに前記第1のコストおよび記第2のコストに少なくとも部分的に基づいて、前記第1の候補アクションまたは前記第2の候補アクションの1つを選択することと、前記選択されたアクションに少なくとも部分的に基づいて、前記車両が前記環境を横断するように制御することと、をさらに含む、段落Oに記載の方法。
【0175】
Q:実行されると、1つまたは複数のプロセッサに、環境内のオブジェクトを表すオブジェクトデータを受信することと、車両が前記環境内で実行するための候補アクションに関連付けられたアクションデータを受信することであって、前記候補アクションは、レーン内アクション、ターンアクションまたはレーン変更アクションの1つまたは複数を含み、前記アクションデータは前記候補アクションを示している、ことと、前記オブジェクトデータおよび前記アクションデータに少なくとも部分的に基づいて、前記オブジェクト、前記オブジェクトに関連付けられたモーション情報、および前記車両に関連付けられた前記候補アクションを表すマルチチャネル画像を生成することと、前記マルチチャネル画像を機械学習モデル内へ入力することと、前記機械学習モデルから、前記オブジェクトに関連付けられた予測確率を受信することと、前記予測確率および前記候補アクションに少なくとも部分的に基づいて、前記車両が前記環境を横断するように制御することと、を含む操作を実行させる、命令を格納する1つまたは複数の非一時的コンピュータ可読媒体。
【0176】
R:前記車両に関連付けられた前記候補アクションを表す前記マルチチャネル画像を生成することは、前記候補アクションに関連付けられたターゲットレーンを表す前記マルチチャネル画像のチャネルを生成することを含み、前記ターゲットレーンは前記車両が占有する予定のレーンを示す、段落Qに記載の非一時的コンピュータ可読媒体。
【0177】
S:前記チャネルは第1のチャネルであり、前記車両に関連付けられた前記候補アクションを表す前記マルチチャネル画像を生成することは、前記候補アクションに関連付けられた前記車両の目標の速度または目標の加速度を表す前記マルチチャネル画像の第2のチャネル生成することをさらに含む、段落QまたはSに記載の非一時的コンピュータ可読媒体。
【0178】
T:前記アクションデータは第1のアクションデータであり、前記候補アクションは第1の候補アクションであり、前記マルチチャネル画像は第1のマルチチャネル画像であり、前記予測確率は前記第1の候補アクションに関連付けられた第1の予測確率であり、前記操作は前記車両が前記環境内で実行するための第2の候補アクションに関連付けられた第2のアクションデータを受信することと、前記オブジェクトデータおよび前記第2のアクションデータに少なくとも部分的に基づいて、前記オブジェクト、前記モーション情報、および前記第2の候補アクションを表す第2のマルチチャネル画像を生成することと、前記第2のマルチチャネル画像を前記機械学習モデル内に入力することと、前記機械学習モデルから、前記オブジェクトに関連付けられた第2の予測確率を受信することと、をさらに含む、段落Q乃至Tのいずれかに記載の非一時的コンピュータ可読媒体。
【0179】
上述の例示の発明内容は1つの特定の実装形態に関して説明しているが、この文書のコンテキストでは、例示の発明内容はまた、方法、デバイス、システム、コンピュータ可読媒体、および/またはその他の実装形態を介して実装できることを理解されたい。さらに、例示A乃至Tのいずれかは、単独でまたは他の1つまたは複数の例示A乃至Tと組み合わせて実装され得る。
【0180】
[結論]
本明細書で説明する技術の1つまたは複数の例について説明したが、様々な変更、追加、置換、およびそれらの同等物が、本明細書で説明する技術の範囲内に含まれる。
【0181】
例示の説明では、本明細書の一部を形成する添付の図面を参照するが、これは例示として請求される主題の具体的な例を示す。他の例を使用でき、構造的変更などの変更または代替を行うことできることを理解されたい。そのような例示、変更または代替は、意図して請求される主題に関する範囲から必ずしも逸脱するものではない。本明細書のステップは特定の順序で提示できるが、いくつかのケースでは、説明したシステムおよび方法の機能を変更することなく、特定の入力を異なる時間または異なる順序で提供するように、順序を変更できる。開示された手順をまた異なる順序で実行できる。さらに、本明細書にある様々な計算は開示された順序で実行される必要はなく、計算の代替順序を使用する他の例を容易に実装できる。並べ替えに加えて、計算はまた、同じ結果となるサブ計算に分解できる。
図1
図2A
図2B
図3
図4
図5
図6
図7
図8
図9
図10