(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-02-22
(54)【発明の名称】オブジェクトの動きに基づくトップダウンシーンの予測
(51)【国際特許分類】
B60W 30/095 20120101AFI20230215BHJP
B60W 40/04 20060101ALI20230215BHJP
B60W 60/00 20200101ALI20230215BHJP
G08G 1/16 20060101ALI20230215BHJP
G06T 7/246 20170101ALI20230215BHJP
G06T 7/00 20170101ALI20230215BHJP
G06V 10/82 20220101ALI20230215BHJP
G06V 20/56 20220101ALI20230215BHJP
【FI】
B60W30/095
B60W40/04
B60W60/00
G08G1/16 C
G06T7/246
G06T7/00 650A
G06T7/00 350B
G06V10/82
G06V20/56
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022537280
(86)(22)【出願日】2020-12-10
(85)【翻訳文提出日】2022-08-17
(86)【国際出願番号】 US2020064184
(87)【国際公開番号】W WO2021126651
(87)【国際公開日】2021-06-24
(32)【優先日】2019-12-18
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】518156417
【氏名又は名称】ズークス インコーポレイテッド
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】アンドレス ギレルモ モラレス モラレス
(72)【発明者】
【氏名】マリン コビラロフ
(72)【発明者】
【氏名】ゴーサム ガリメラ
(72)【発明者】
【氏名】カイ ジェンユー ワン
【テーマコード(参考)】
3D241
5H181
5L096
【Fターム(参考)】
3D241BA32
3D241BB31
3D241CE01
3D241CE02
3D241CE04
3D241CE05
3D241DC25Z
5H181AA01
5H181AA21
5H181BB04
5H181BB15
5H181BB20
5H181CC03
5H181CC04
5H181CC14
5H181FF04
5H181FF05
5H181LL01
5H181LL02
5H181LL09
5L096BA04
5L096CA04
5L096DA02
5L096EA35
5L096HA11
5L096KA04
(57)【要約】
オブジェクトの動きに基づいて環境のトップダウン表現の予測を決定するための技術が本明細書で説明される。第1の車両(自律走行車など)のセンサは、第1の車両(例えば、車両、歩行者、自転車)とは別個のオブジェクトを含み得る環境のセンサデータを取り込み得る。オブジェクト及び環境のトップダウンビューを表すマルチチャネル画像は、センサデータに部分的に基づいて生成され得る。環境データ(オブジェクトの範囲、速度、車線の位置、横断歩道など)も画像に符号化され得る。経時的に環境を表す複数の画像が生成され得、各オブジェクトに関連付けられた軌道テンプレート(例えば、将来の動きのための一般的なインテント)及び予測軌道(例えば、より正確な予測された動き)を出力するように構成された予測システムに入力され得る。予測システムは、軌道テンプレート及び予測軌道を出力するように構成された機械学習モデルを含み得る。
【特許請求の範囲】
【請求項1】
自律走行車のセンサによって捕捉された環境のセンサデータを受信するステップと、
前記センサデータに少なくとも部分的に基づいて、前記環境のトップダウンビューを表すマルチチャネル画像を生成するステップであって、前記マルチチャネル画像は、前記環境内のオブジェクトに関連付けられたバウンディングボックスを表す、ステップと、
前記マルチチャネル画像を機械学習モデルに入力するステップと、
前記機械学習モデルから、前記オブジェクトに関連付けられた動きのクラスを示す軌道テンプレート及び前記オブジェクトに関連付けられた予測軌道を受信するステップと、
前記軌道テンプレートまたは前記予測軌道のうちの少なくとも1つに少なくとも部分的に基づいて前記自律走行車を制御するステップと
を含む、コンピュータ実装方法。
【請求項2】
前記オブジェクトは第1のオブジェクトであり、
前記マルチチャネル画像は、第2のオブジェクトに関連付けられたデータを含み、
前記軌道テンプレートは第1の軌道テンプレートであり、
前記第1の軌道テンプレート及び第2の軌道テンプレートは、前記第1のオブジェクトと前記第2のオブジェクトとの間の相互作用に少なくとも部分的に基づいている、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記機械学習モデルは、
前記環境内の前記オブジェクトの履歴に少なくとも部分的に基づいて決定された特徴マップを出力する第1のニューラルネットワークと、
前記特徴マップと関連付けられた特徴ベクトルに少なくとも部分的に基づいて前記軌道テンプレートを出力する第2のニューラルネットワークと、
前記軌道テンプレート及び前記特徴ベクトルに少なくとも部分的に基づいて前記予測軌道を出力する第3のニューラルネットワークと、を備える、請求項1または請求項2のいずれかに記載のコンピュータ実装方法。
【請求項4】
前記第2のニューラルネットワークは、前記オブジェクトに関連付けられたヒートマップを出力するようにさらに構成され、
前記自律走行車は、前記ヒートマップに少なくとも部分的に基づいてさらに制御される、請求項3に記載のコンピュータ実装方法。
【請求項5】
前記第3のニューラルネットワークは、軌道テンプレートの第1の分類に少なくとも部分的に基づいて前記予測軌道を出力し、前記機械学習モデルは、
前記軌道テンプレート及び前記特徴ベクトルの第2の分類に少なくとも部分的に基づいて前記予測軌道を出力する第4のニューラルネットワークをさらに含み、
前記方法は、前記軌道テンプレートと関連付けられた分類に少なくとも部分的に基づいて、前記軌道テンプレートを前記第3のニューラルネットワークまたは前記第4のニューラルネットワークの1つまたは複数に入力するステップをさらに含む、請求項3に記載のコンピュータ実装方法。
【請求項6】
実行されると、1つまたは複数のプロセッサに請求項1から5のいずれか一項に記載のコンピュータ実装方法を行わせる命令を記憶する1つまたは複数の非一時的なコンピュータ可読媒体。
【請求項7】
1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサによって実行可能な命令を記憶する1つまたは複数の非一時的なコンピュータ可読媒体と
を備えるシステムであって、前記命令は、実行されると前記システムに、
環境内のオブジェクトを表すデータを受信するステップと、
前記データに少なくとも部分的に基づいて、前記環境のトップダウンビューを表す画像を生成するステップであって、前記画像は、前記オブジェクト及び前記オブジェクトに関連付けられた動き情報を表す、ステップと、
前記画像を機械学習モデルに入力するステップと、
前記機械学習モデルから、前記オブジェクトに関連付けられた軌道テンプレート及び予測軌道を受信するステップであって、前記軌道テンプレートは、前記オブジェクトに関連付けられた動きのクラスを示す、ステップと
を含む動作を実行させる、システム。
【請求項8】
前記予測軌道は、前記オブジェクトに関連付けられた、可能性のある位置の予測確率を含むヒートマップとして表される、請求項7に記載のシステム。
【請求項9】
前記機械学習モデルは、
特徴マップを出力する第1のニューラルネットワークと、
前記オブジェクトに関連付けられた前記特徴マップの一部に少なくとも部分的に基づいて前記軌道テンプレートを出力する第2のニューラルネットワークと、
前記軌道テンプレートに少なくとも部分的に基づいて前記予測軌道を出力する第3のニューラルネットワークと、を備える、請求項7または請求項8に記載の前記システム。
【請求項10】
前記オブジェクトのデータは、前記環境内の2つ以上のオブジェクトに関連付けられたデータを含み、
前記特徴マップは、前記環境内で決定された前記2つ以上のオブジェクトの共同履歴データを含む、請求項9に記載のシステム。
【請求項11】
前記画像は、前記環境内の追加オブジェクトの追加オブジェクト情報を含む1つまたは複数のチャネルをさらに備え、
前記画像は、現在の時間の前の1つまたは複数の以前の時間に関連付けられた複数の画像のうちの1つである、請求項7から10のいずれか一項に記載のシステム。
【請求項12】
前記画像は、前記オブジェクトと前記追加オブジェクトとの間の相互作用を表し、前記予測軌道及び追加オブジェクトに関連付けられた少なくとも1つの他の予測軌道は、前記相互作用に少なくとも部分的に基づいている、請求項11に記載のシステム。
【請求項13】
前記動作は、前記オブジェクトに関連付けられた前記軌道テンプレートまたは前記予測軌道のうちの少なくとも1つに少なくとも部分的に基づいて前記システムに車両を制御させることをさらに含む、請求項7から12のいずれか一項に記載のシステム。
【請求項14】
前記画像は、
オブジェクトに関連付けられた意味データと、
前記オブジェクトに関連付けられた速度データと、
前記オブジェクトに関連付けられた加速度データと、
前記環境に関連付けられたシナリオデータと、
前記環境に関連付けられた道路ネットワークと、
前記環境内の車両に関連付けられた車両データと、のうちの少なくとも1つを含むマルチチャネル画像である、請求項7から13のいずれか一項に記載のシステム。
【請求項15】
前記機械学習モデルは、
クラスタリングアルゴリズムに少なくとも部分的に基づいて前記軌道テンプレートを決定することと、
回帰アルゴリズムに少なくとも部分的に基づいて、前記予測軌道を決定することと
によって訓練される、請求項7から14のいずれか一項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、オブジェクトの動きに基づいて環境のトップダウン表現の予測を決定するための技術に関する。
【背景技術】
【0002】
関連出願に対する相互参照
本PCT国際特許出願は、2019年12月18日に出願された米国特許出願第16/719,780号「オブジェクトの動きに基づくトップダウンシーンの予測」の継続出願であり、かつ優先権の利益を主張し、その内容全体が参照により本明細書に組み込まれる。
【0003】
予測技術を使用して、環境内のエンティティの将来の状態を判断することができる。すなわち、予測技術を使用して、特定のエンティティが将来どのように振る舞う可能性が高いかを判断することができる。現在の予測技術は、多くの場合、環境内のエンティティの将来の状態を予測するための物理ベースのモデリングまたは道路交通法のシミュレーションを含む。
【図面の簡単な説明】
【0004】
詳細な説明は、添付の図面を参照して説明される。図面において、参照番号の左端の数字は、その参照番号が最初に出現する図面を識別する。異なる図面における同一の参照番号の使用は、類似または同一のコンポーネントまたは特徴を示す。
【
図1】本開示の例による、センサデータを受信し、環境を表すマルチチャネル画像を機械学習モデルに入力し、環境内のオブジェクトに関連付けられた軌道テンプレート及び予測軌道を受信するための例示的なプロセスの図解フローチャートである。
【
図2A】本明細書において説明される技術を実装するための例示的なシステムのブロック図である。
【
図2B】本明細書で説明される技術を実装するために機械学習モデルを訓練するための例示的な訓練コンポーネントのブロック図である。
【
図3】本開示の例による、オブジェクトに関連付けられた決定された軌道テンプレートに関連付けられた予測軌道を決定するように構成されたネットワークを含む例示的な予測システムのブロック図である。
【
図4】本開示の例による、軌道テンプレートに基づいて予測軌道を決定するように構成されたネットワークを含む例示的な予測システムのブロック図である。
【
図5】本開示の例による、オブジェクトが車両の環境に存在することを決定し、オブジェクトに関連付けられた軌道テンプレート及び予測軌道を決定し、予測軌道に部分的に基づいて車両を制御するための例示的なプロセスを示す図である。
【
図6】本開示の例による、オブジェクトに関連付けられた共同履歴に基づいて、環境内の検出されたオブジェクトに関連付けられた予測軌道を決定するための例示的なプロセスを示す図である。
【発明を実施するための形態】
【0005】
環境のトップダウン表現に基づいて環境内のオブジェクトの予測軌道を決定するための技術が本明細書で説明される。例えば、自律走行車のセンサは、他の車両、自転車運転者、歩行者などの自律走行車とは別個のオブジェクトを含んでもよい環境のセンサデータを取り込んでもよい。トップダウンの視点から環境を表す画像は、センサデータに少なくとも部分的に基づいて生成され得る。いくつかの例では、画像は、環境及び/またはオブジェクトに関連付けられた意味情報を含み得る。オブジェクトに関して、そのような意味情報は、範囲(例えば、バウンディングボックスを車両に関連付けられていると識別する)、バウンディングボックスに関連付けられた動き情報(例えば、速度、加速度など)、分類情報(ボックスが車両、自転車運転者、歩行者などを表すかどうか)を有するバウンディングボックスを含み得る。環境に関して、画像は、道路ネットワークデータを示す意味情報(例えば、道路ネットワークに関連付けられた識別子、(例えば、速度制限、道路データ(例えば、車線幅、車線端、停止線、交通信号等)、交通信号状態等)を含んでよい。いくつかの例では、そのような画像は、上記の情報のうちの任意の1つまたは複数が画像の別個のチャネルに記憶されるマルチチャネル画像を含み得る。
【0006】
時間の経過とともに環境を表す複数の画像が生成され得、将来のオブジェクトの動き(例えば、オブジェクトが移動する一般的な方向、オブジェクトインテントの分類)及び各オブジェクトに関連付けられた予測軌道を表す軌道テンプレートを出力するように構成された予測システム(例えば、機械学習モデル)に入力され得る。いくつかの例では、予測システムは、将来のオブジェクトの可能性のある位置に関連付けられた予測確率を含むヒートマップを出力するように構成され得る。予測軌道及び/または予測確率は、自律走行車の動作を制御するために計画システムに出力され得る。
【0007】
自律走行車によって捕捉されるセンサデータは、ライダーデータ、レーダーデータ、画像データ、飛行時間データなどを含み得る。いくつかの例では、センサデータは、オブジェクトに関連付けられた分類(例えば、車両、歩行者、自転車など)を決定するように構成された知覚システムに提供され得る。知覚システムは、センサデータに基づいてオブジェクトに関連付けられた動き情報を決定するように構成され得る。センサデータ及びセンサデータに基づくデータは、環境のトップダウン表現で表現され得る。例えば、トップダウン表現は、オブジェクトの範囲(例えば、長さ、幅など)及びオブジェクトの分類(例えば、車両、自転車運転者、歩行者など)だけでなく、環境内のオブジェクトの位置を表す2次元のバウンディングボックスとしてオブジェクトを表し得る。速度情報(例えば、運動学的情報)などの動き情報は、他の表現が企図されるが、バウンディングボックスに関連付けられた速度ベクトルとして表現されてよい。
【0008】
いくつかの例では、予測システムに入力される画像は、マルチチャネル画像の個々のチャネルによって表され得、各チャネルは、オブジェクト及びオブジェクトが位置する環境に関する異なる情報を表し得る。例えば、チャネルは、道路ネットワーク情報(例えば、車線、横断歩道、停止線、レーンディバイダ、停止標識、交差点、交通信号などを示す意味ラベル)、交通信号状態(例えば、赤色光、黄色光、緑色光など)、各オブジェクトに関連付けられたバウンディングボックス、x方向及びy方向における各オブジェクトに関連付けられた速度、各オブジェクトに関連付けられた加速度、オブジェクトのライト状態(例えば、左折、右折、ブレーキ、後進、ハザード、ライトなしなど)などのうちの1つまたは複数を表し得るが、これらに限定されない。
【0009】
様々な例において、予測システムは、環境内のオブジェクトの過去の動きを表す複数の画像(マルチチャネル画像)を受信し得る。いくつかの例では、予測システムは、環境内のオブジェクトの共同履歴を表す特徴マップを決定し得る。いくつかの例では、予測システムは、共有の履歴及び/または各オブジェクトに関連付けられた位置に部分的に基づいて、各オブジェクトに関連付けられた特徴ベクトルを決定し得る。
【0010】
いくつかの例では、予測システムは、特徴マップ及び/または特徴ベクトルを利用して、各オブジェクトに関連付けられた少なくとも1つの軌道テンプレート及び少なくとも1つの予測軌道を生成し得る。軌道テンプレート(またはモード)は、オブジェクトのインテントの分類(車線に留まる、車線を変更するなど)を表し得る。インテントの分類は、オブジェクトが前方に進み続けるか、停止するか、左右に曲がるか、車線に留まるかなど、オブジェクトの将来の動き(例えば、将来の移動の予測される方向)の大まかな推定を含み得る。様々な例において、2つ以上のオブジェクトに関連付けられたインテントの分類は、共同インテントを含み得る。そのような例では、第1のオブジェクトに関連付けられた軌道テンプレートは、第2のオブジェクトに関連付けられた軌道テンプレートに依存し得る。例えば、車両及び歩行者は、横断歩道のある交差点に近づく場合がある。歩行者に道を譲る車両軌道テンプレートは、横断歩道を渡る歩行者軌道テンプレートに依存し得る。
【0011】
予測軌道は、オブジェクトの将来の動きのより正確な軌道(またはより正確な推定)を表し得る。いくつかの例では、将来の動きは、将来の1つまたは複数の時点でのオブジェクトの1つまたは複数の将来の位置として表され得る。いくつかの例では、予測軌道は、軌道テンプレートに基づいてもよい。いくつかの例では、予測軌道は、以前に捕捉されたセンサデータによって決定されるように、環境を通るオブジェクトの過去の動きに基づいてもよい。
【0012】
いくつかの例では、予測システムは、1つまたは複数の軌道テンプレート及び/または1つまたは複数の予測軌道を出力するように訓練された機械学習モデルを含み得る。いくつかの例では、出力は、環境内で検出された各オブジェクトの軌道テンプレート及び予測軌道を含み得る。いくつかの例では、検出されたオブジェクトに関連付けられた軌道テンプレート及び予測軌道は、それらが環境内で互いに(及び自律走行車と)相互作用するときに、オブジェクトの予測された将来の動きを表し得る。例えば、機械学習モデルは、将来の1つまたは複数の時間(例えば、1秒、2秒、8秒など)において、各オブジェクト(例えば、他の車両、自転車運転者、歩行者など)に関連付けられた座標(例えば、x座標及びy座標)を出力し得る。
【0013】
いくつかの例では、機械学習モデルは、オブジェクトに関連付けられた座標ならびに各座標に関連付けられた確率情報を出力し得る。いくつかの例では、確率情報は、閾値確率レベルに関連付けられた楕円または他の多角形として表され得る(例えば、特定の時間におけるオブジェクトの位置が楕円によって表される領域内にある75%の確率)。いくつかの例では、確率情報は、環境内のオブジェクトの位置に関連付けられた確率分布を含み得る。いくつかの例では、予測軌道は、機械学習モデルによって出力される座標の間を補間することによって生成され得る。
【0014】
いくつかの例では、機械学習モデルは、例えば、2018年10月4日に出願され、「トップダウンシーン上の軌跡予測」と題された米国特許出願第16/151,607号、2019年7月5日に出願され、「アクションデータに基づくトップダウンシーン上の予測」と題された米国特許出願第16/504,147号、及び2017年11月8日に出願され、「行動予測のための確率的ヒートマップ」と題された米国特許出願第15/807,521号に記載されたような、予測確率に関連付けられたヒートマップを出力してもよく、各出願の内容全体が参照により本明細書に組み込まれる。ヒートマップは、自律走行車に近接する環境の離散化領域を表し得る。例えば、ヒートマップは、自律走行車の周りの100メートル×100メートルの領域を表す64×64グリッド(またはJ×Kサイズのグリッド)を表し得る。もちろん、ヒートマップは、領域の任意のサイズを表し得、上記で参照により組み込まれる米国特許出願に記載されるように、領域の任意の数の別個の部分を表し得る。
【0015】
様々な例において、予測システムは、機械学習モデルによって出力されるヒートマップに基づいて予測軌道を決定するように構成され得る。そのような例では、予測システムは、ヒートマップを分析して、ヒートマップのセルに関連付けられた最高確率(または閾値を上回る確率)を決定して、予測軌道を決定し得る。様々な例において、予測システムは、上記で参照により組み込まれる米国特許出願に記載される技術を利用するなど、コスト及び/または制約に基づいて予測軌道を決定し得る。
【0016】
いくつかの例では、機械学習モデルは、畳み込みニューラルネットワーク(CNN)を含み得、これは、限定されないが、長・短期記憶(LSTM)層などの1つまたは複数の再帰型ニューラルネットワーク(RNN)層を含み得る。予測システムに関連付けられた機械学習モデルは、教師なし及び/または教師あり学習アルゴリズムを利用して訓練され得る。いくつかの例では、機械学習モデルは、教師なし学習アルゴリズムを利用して軌道テンプレートを決定するように訓練され得る。いくつかの例では、機械学習モデルは、1つまたは複数のクラスタリングアルゴリズム(例えば、k平均法、階層的等)を利用して軌道テンプレートを決定し得る。少なくともいくつかの例では、テンプレートを有する軌道の数は、進行方向の周りの軌道を反映すること、及び/または軌道から方向偏差を除去することのうちの1つまたは複数によって増強され得る。いくつかの例では、機械学習モデルは、1つまたは複数のオブジェクト位置に基づいて軌道テンプレートを決定し得る。そのような例では、機械学習モデルは、将来の時点でオブジェクトの位置に関連付けられた確率分布を決定し得る。機械学習モデルは、確率分布を表すグリッドにクラスタリングアルゴリズムを適用して、オブジェクトに関連付けられた軌道テンプレートを決定し得る。
【0017】
いくつかの例では、機械学習モデルは、1つまたは複数の回帰アルゴリズムなどの教師あり学習アルゴリズムを利用して、予測軌道を決定するように訓練され得る。様々な例において、オブジェクトの予測軌道は、オブジェクトに関連付けられた軌道テンプレートに基づいてもよい。いくつかの例では、機械学習モデルは、軌道テンプレート及び/または予測軌道を決定するように構成された1つまたは複数のネットワークを含み得る。いくつかの例では、ネットワークは、オブジェクトに関連付けられた分類に基づいて決定され得る。例えば、第1のネットワークは、歩行者の第1の軌道テンプレート及び/または第1の予測軌道を決定するために利用されてよく、第2のネットワークは、車両の第2の軌道テンプレート及び/または第2の予測軌道を決定するために利用されてよい。
【0018】
いくつかの例では、機械学習モデルは、異なるインテントについての予測軌道を決定するように構成された単一のネットワークを含み得る。いくつかの例では、機械学習モデルは、異なるインテントに関連付けられた予測軌道を決定するように構成された異なるネットワークを含み得る。例えば、機械学習モデルは、第1の軌道テンプレートを用いてオブジェクトの軌道を決定するように構成された第1のネットワーク、第2の軌道テンプレートを用いてオブジェクトの軌道を決定するように構成された第2のネットワークなどを含み得る。
【0019】
本明細書で説明される技術は、いくつかの追加の手段でコンピューティングデバイスの機能を改善することができる。いくつかの例では、環境及び環境内のオブジェクトをトップダウンビューとして表すことは、予測軌道を生成する目的のための環境の簡略化された表現を表すことができる。いくつかの例では、画像は、環境の特定の特徴を抽出することなく環境を表すことができ、これは、予測システムの生成及び少なくとも1つの予測軌道の後続の生成を簡略化し得る。
【0020】
加えて、画像は、オブジェクト間の相互作用を含む共同履歴などのように、環境内のオブジェクト間の相互作用を表すことができる。共同履歴で捕捉されたオブジェクト間の相互作用は、オブジェクトに関連付けられた予測軌道の精度を改善し得る。そのような相互作用は、明示的に決定されてもよく、または複数のオブジェクトに関連付けられたオブジェクトデータをマルチチャネル画像に一緒に含めることによって暗黙的に決定されてもよい。いくつかの例では、共同履歴に基づいて決定された軌道テンプレート及び/または予測軌道を評価することは、自律走行車が環境を横断するために、より正確かつ/またはより安全な軌道を生成することを可能にし得る。少なくともいくつかの例では、環境のトップダウン符号化に基づく条件付け予測は、オブジェクトに関連付けられた確率分布関数の拡散を最小化(改善)し、システムのより安全な意思決定をもたらし得る。コンピュータの機能に対するこれら及び他の改善について、本明細書で説明される。
【0021】
本明細書で説明される本技術は、多くの手法で実装されることが可能である。例示的な実装例は、添付の図を参照して、下記に提供される。自律走行車のコンテキストにおいて説明されているが、本明細書において説明される方法、装置、及びシステムは、様々なシステム(例えば、センサシステムまたはロボティックプラットホーム)に対して適用されることが可能であり、自律走行車に限定されない。一例では、そのようなシステムが様々な動作を実行することが安全であるかどうかの表示を提供し得るドライバ制御車両で、同様の技術が利用され得る。別の例において、技術は、航空もしくは航海のコンテキストにおいて、またはシステムに対して知られていない挙動に関連付けられ得るオブジェクトもしくはエンティティに関与する任意のシステムにおいて、利用されることが可能である。さらに、センサデータは、画像データ(例えば、ステレオカメラ、飛行時間データなど)、ライダーデータ、レーダーデータ、ソナーデータなどの任意の2次元、3次元、または多次元データを含むことができる。また、本明細書において説明される技術は、(例えば、センサを使用して捕捉された)実データ、(例えば、シミュレータによって生成された)シミュレートされたデータ、または、この2つの任意の組み合わせと共に使用されることが可能である。
【0022】
図1は、本開示の例による、センサデータを受信し、環境を表すマルチチャネル画像を機械学習モデルに入力し、環境内のオブジェクトに関連付けられた軌道テンプレート及び予測軌道を受信するための例示的なプロセス100の図解フロー図である。
【0023】
動作102において、プロセスは、環境内のオブジェクトを表すセンサデータを受信することを含み得る。いくつかの例では、センサデータは、自律走行車の知覚システムから受信され得る。例えば、センサデータは、オブジェクトに関連付けられたバウンディングボックス、オブジェクトに関連付けられた速度及び/または加速度情報、オブジェクトに関連付けられた分類情報などのうちの1つまたは複数を含み得るが、これらに限定されない。いくつかの例では、センサデータは、自律走行車上の1つまたは複数のセンサによって捕捉され得る。いくつかの例では、センサデータは、別の車両に関連付けられたセンサ、環境に搭載されたセンサなどの1つまたは複数のリモートセンサによって捕捉され得る。例えば、センサデータは、ライダーセンサ、レーダーセンサ、画像センサ、飛行時間センサ、ソナーセンサ、及び/または自律走行車、別の車両、及び/または環境に関連付けられた任意の他のセンサのうちの1つまたは複数によって捕捉されるデータを含んでよい。少なくともいくつかの例では、追加の環境データ(例えば、車線、基準線、横断歩道、交通装置及び/または標識等の部分を符号化する環境のマップデータ)を受信してもよい。
【0024】
例104は、自律走行車106(例えば、車両106)が環境を横断している環境を示す。いくつかの例では、車両106は、環境のセンサデータを取り込むことを含むことができるプロセス100の動作を実行してもよい。議論の目的のために、センサデータを取り込む(または利用する)車両は、ドライバー(または乗員)がいかなる時も車両を制御することを期待されない状態で、旅程全体のためのあらゆる安全上重要な機能を実行することが可能な車両を説明している、米国運輸省道路交通安全局によって発行されたレベル5分類に従って演算するように構成される自律走行車とすることができる。このような例では、車両は全ての駐車機能を含む開始から停止までの全ての機能を制御するように構成されることが可能であるため、無人化することが可能である。これは例にすぎず、本明細書において説明されるシステム及び方法は、ドライバーによって常時、手動で制御される必要がある車両から、部分的にまたは完全に自律的に制御される車両までに及ぶ車両を含む、任意の地上車両、空路車両、または水路車両に組み込まれることが可能である。車両に関連付けられた追加の詳細は、本開示を通して説明される。
【0025】
また、オブジェクト108は環境内に位置する。いくつかの例では、オブジェクト108は、車両、歩行者、自転車などを表し得る。例104に例示される環境は、ドライブ可能領域及びドライブ不可能領域を含み得る。いくつかの例では、動作102は、車両106を環境内に位置決めし、環境に関連付けられたマップデータにアクセスすることを含み得る。例えば、マップデータは、車線マーキング、車線境界、1つまたは複数の車線基準(例えば、車線に関連付けられた中心線及び/または利用可能な(例えば、法的な)車線間の経路)などのマップ要素を含んでよい。マップ要素の付加的な例は、車線要素、バイク車線要素、交差点要素、レーンディバイダ要素、信号要素、一時停止標識要素、一時停止線要素、先方優先標識要素、先方優先車線要素、駐車車線要素、私道要素、減速バンプ要素、信号を無視して横断する領域(例えば、仮想横断歩道)、軌道通過点(例えば、既知の軌道)、搭乗者ピックアップポイント、標識位置要素、ジオフェンス要素などうちの1つまたは複数を含むことができるが、これらに限定されない。
【0026】
様々な例において、動作102は、車両106及び/またはマップデータに関連付けられた位置に基づいて、自律走行車106に関連付けられた計画された経路110を決定することを含み得る。例示的な例では、計画された経路110は、現在の車線112からマップデータに関連付けられたターゲット車線114まで交差点を横断することを含み得る。
【0027】
いくつかの例では、動作102で捕捉されたセンサデータは、オブジェクトのタイプ(例えば、車両、歩行者、自転車などのオブジェクトの分類を示す意味情報)を含むが、これらに限定されない、オブジェクト108に関する情報を決定するために使用されてもよい。いくつかの例では、動作102は、本明細書で説明するように、オブジェクト108のタイプ、オブジェクト108に関連付けられたバウンディングボックス、及び/またはオブジェクト108に関連付けられた動き情報を決定することを含み得る。
【0028】
動作116において、プロセスは、環境のトップダウンビューを表すマルチチャネル画像を機械学習モデルに入力することを含み得、マルチチャネル画像は、センサデータに少なくとも部分的に基づいている。そのようなマルチチャネル画像の例は、画像118、120、及び122に示される。いくつかの例では、画像118、120、及び122は、経時的に例104に描写される環境を表し得る。例えば、画像118は過去の環境を時間T-Nで表し得、画像120は過去の環境を時間T-N+1で表し得、画像122は時間T0で環境を表し得る。例えば、画像118は過去の環境を2秒で表し得、画像120は過去の環境を1秒で表し得、画像122は現在の時間(例えば、時間=0)で環境を表し得る。もちろん、画像118、120、及び122は、任意の期間の環境を表し得、上記の例で使用される例示的な時間に限定されない。
【0029】
例示的な例では、画像118は、時間T-Nにおける環境を表してよく、第1のチャネル124、第2のチャネル126、及び第3のチャネル128を含んでよい。いくつかの例では、第1のチャネル124は、環境内のオブジェクト108(1)及び108(2)などの自律走行車106及び/またはオブジェクト108のバウンディングボックス、位置、範囲(例えば、長さ及び幅)などを表し得る。理解できるように、画像118は、環境内の任意の数の静的オブジェクト(例えば、建物、木、縁石、歩道、マップ要素など)または動的オブジェクト(例えば、移動可能なオブジェクト)をいつでも含んでもよく、例の2つのオブジェクト108(1)及び108(2)(バウンディングボックスとして表される)に限定されない。
【0030】
画像118は、それぞれオブジェクト108(1)及び108(2)に関連付けられた速度情報130(1)及び130(2)(例えば、運動学的情報、動き情報)をさらに含んでもよい。図示の例では、速度情報130(1)及び130(2)は、それぞれのオブジェクトに関連付けられた速度ベクトルとして表される。速度のコンテキストで説明されるが、速度情報130(1)及び130(2)は、加速度(例えば、経時的な平均、時間内で観測される最大加速度など)、ステアリング角、基準線または障害物からの距離などに関連付けられた情報を表し得る。
【0031】
理解できるように、オブジェクト108(1)及び/または108(2)は、異なる位置及び/または経時的な動きに関連付けられ得る。したがって、画像120は、速度情報130(1)と同一または異なる速度情報132(1)を含み得、画像122は、速度情報130(1)及び/または132(1)と同一または異なる速度情報134(1)を含み得る。同様に、速度情報130(2)などのオブジェクト108(2)に関連付けられた速度情報は、画像120及び122に表されるように、経時的に同じであっても異なっていてもよい。
【0032】
いくつかの例では、第2のチャネル126は、車両106と関連付けられた計画された経路110を表し得る。例えば、第2のチャネル126は、計画された経路110と関連付けられた現在のレーン112及び/またはターゲット車線114を示し得る。いくつかの例では、第3のチャネル128は、車両106に近接する環境に関連付けられたマップデータを表し得る。様々な例において、第3のチャネル128は、マッピングされた領域に関連付けられたデータ及びマッピングされていない領域(例えば、車道、駐車場など)に関連付けられたデータを含んでよい。マッピングされていない領域に関連付けられたデータは、領域に関連付けられた情報の欠如、領域の一般的なサイズなどの指示を含み得る。例えば、第3のチャネルは、道路及び道路につながる専用車道を含むマッピングされていない領域に関連付けられたデータを含み得る。
【0033】
上述のように、画像120及び122は、異なる時間(例えば、時間T-N+1、及び時間T0)で環境を表し得る。いくつかの例では、画像120及び122の態様は、画像118の態様に類似し得る。例えば、画像120及び122は、単なる例であるが、第1のチャネル124、第2のチャネル126、及び第3のチャネル128を含んでもよく、各チャネルに関連付けられた追加のチャネル及び/または追加の情報が本明細書で企図される。
【0034】
理解できるように、動作116は、本明細書で説明されるように、マルチチャネル画像を生成または決定することを含み得る。マルチチャネル画像の生成または決定の例は、上記の参照により本明細書に組み込まれる米国特許出願第16/151,607号に関連して議論される。
【0035】
動作136において、プロセスは、機械学習モデルから、マルチチャネル画像に基づいて、オブジェクト(例えば、オブジェクト108(1)及び108(2))に関連付けられた軌道テンプレート及び予測軌道を受信することを含み得る。実施例138は、それぞれオブジェクト108(1)及び108(2)に関連付けられた軌道テンプレート140及び142を示す。実施例144は、それぞれオブジェクト108(1)及び108(2)に関連付けられた予測軌道146及び148を示す。
【0036】
軌道テンプレート140または142は、関連付けられたオブジェクト108(1)または108(2)の将来の動き(例えば、将来の移動の予測される方向、動きのクラスなど)のインテントの分類を表し得る。インテントの分類は、オブジェクト108(1)または108(2)が前進、停止、左折または右折などを継続するかどうかなど、オブジェクト108(1)または108(2)の将来の動きの大まかな推定を含み得る。様々な例において、2つ以上のオブジェクト108(1)及び108(2)に関連付けられたインテントの分類は、共同インテントを含み得る。そのような例では、第1のオブジェクト108(1)に関連付けられた軌道テンプレート140は、第2のオブジェクト108(2)に関連付けられた軌道テンプレート142(2)に依存し得、またはその逆の場合もある。例えば、第1のオブジェクト108(1)は、歩行者である第2のオブジェクト108(2)も接近している交差点に接近する車両を含み得る。軌道テンプレート140(1)及び142(2)は、オブジェクト108(1)及び108(2)の一方または両方が他方に道を譲ることを表し得る。
【0037】
様々な例において、機械学習モデルは、オブジェクト108(1)及び108(2)に関連付けられた1つまたは複数の可能な将来の動き(例えば、可能な軌道テンプレート140及び142)に基づいて、オブジェクト108(1)及び108(2)に関連付けられた軌道テンプレート140(1)及び142(2)を決定するように構成され得る。実施例138は、オブジェクト108(1)に関連付けられた2つの可能な軌道テンプレート140(1)及び140(2)、ならびにオブジェクト108(2)に関連付けられた3つの可能な軌道テンプレート142(1)、142(2)、及び142(3)を示す。様々な例において、可能な軌道テンプレート140及び142は、オブジェクト108(1)及び108(2)の様々な可能な将来の動きを表し得る。いくつかの例では、可能な軌道テンプレート140及び142は、上記のように、マルチチャネル画像に含まれるものなど、マップデータ及び/またはそれに関連付けられたマップ要素に基づいてもよい。例えば、オブジェクト108(1)に関連付けられた可能な軌道テンプレート140は、横断歩道要素に関連付けられ得る。いくつかの例では、可能な軌道テンプレート140及び142は、マップデータ及び/またはマップ要素とは無関係であってもよい。
【0038】
実施例138は、機械学習モデルによって考慮される様々な可能な軌道テンプレート140及び142を示すが、機械学習モデルは、それぞれオブジェクト108(1)及び108(2)に関連付けられた決定された軌道テンプレート140(1)及び142(2)を出力し得ることが理解される。したがって、動作136において、プロセスは、オブジェクト108(1)に関連付けられた軌道テンプレート140(1)及びオブジェクト108(2)に関連付けられた軌道テンプレート142(2)を受信することを含み得る。
【0039】
様々な例において、機械学習モデルは、環境に関連付けられたオブジェクトのタイプ(例えば、歩行者、車両、自転車運転者など)及び/または1つまたは複数のシナリオ(例えば、高速道路、ジャンクション(例えば、道路分割、4方向交差点など))に基づいて、軌道テンプレート140(1)及び142(2)を決定するように訓練され得る。そのような例では、機械学習モデルは、異なるタイプのオブジェクト(例えば、オブジェクトデータ)及び/または異なるシナリオ(例えば、シナリオデータ、環境データ、(例えば、車線、基準線、横断歩道、交通装置及び/または標識などの部分を符号化する環境のマップデータなど)など)に関連付けられた訓練データを利用して訓練され得る。オブジェクト及び/またはシナリオのタイプは、画像118、120、及び122などのマルチチャネル画像内の機械学習モデルに提供されてよい。例えば、画像118、120、及び122は、オブジェクト108(1)を車両として、オブジェクト108(2)を歩行者として表し得、シナリオは4方向の交差点として表し得る。車両及び歩行者が4方向の交差点に近づいているという決定に基づいて、機械学習モデルは、それに関連付けられた軌道テンプレート140(1)及び142(2)を決定し得る。
【0040】
様々な例において、機械学習モデルは、教師なし学習アルゴリズムを利用して軌道テンプレート140(1)及び142(2)を決定するように訓練され得る。いくつかの例では、機械学習モデルは、軌道テンプレート140(1)及び142(2)を決定するためにクラスタリングアルゴリズムを利用し得る。少なくとも1つの例では、機械学習モデルは、k平均クラスタリングアルゴリズムを利用し得る。
【0041】
様々な例において、機械学習モデルは、それぞれのオブジェクト108(1)及び108(2)に関連付けられた決定された軌道に基づいて、軌道テンプレート140(1)及び142(2)を決定し得る。いくつかの例では、決定された軌道は、それぞれのオブジェクト108(1)または108(2)の経時的な平均軌道を含み得る。いくつかの例では、決定された軌道は、クラスタ軌道を含み得、クラスタ中心は、それぞれのオブジェクト108(1)または108(2)の経時的な平均的な動きに基づいている。様々な例において、軌道は、それに関連付けられたマップデータ及び/またはマップ要素とは無関係であってもよい。そのような例では、軌道は、マップデータに関係なく、移動空間内の観測に基づいて決定され得る。例えば、オブジェクト108(1)に関連付けられた第1の軌道は、オブジェクトが走行している車線に関連付けられたデータ、道路ネットワークデータなどに関係なく、オブジェクト108(1)の観測された動きに基づいてもよい。別の例では、車両は、マッピングされていないゾーン(例えば、車道、駐車場など)から環境に入ることができる。機械学習モデルは、車両に関連付けられたセンサデータを処理して、経時的な車両の観測された動きに基づいて、それに関連付けられた軌道を決定し得る。様々な例において、マップデータ及び/またはマップ要素とは独立して、オブジェクト108に関連付けられた軌道を決定することは、信号無視歩行者、直角駐車スペースに入れられる、及び出される車などの場合のように、車線マーキングが制限されている(または存在しない)車両の安全な動作を改善し得る。そのような例では、本明細書に記載の技術は、環境100内で動作する車両及びオブジェクト108の安全性を高める。
【0042】
いくつかの例では、機械学習モデルは、オブジェクト108(1)に関連付けられた第1のオブジェクト軌道及びオブジェクト108(2)に関連付けられた第2のオブジェクト軌道を、時間の経過(例えば、時間T-NからT0)に伴うオブジェクト108(1)及び108(2)の観察された動きに基づいて決定し得る。様々な例において、オブジェクト軌道は、オブジェクト108(1)及び108(2)のそれぞれの本体フレームに変換され得る。そのような例では、オブジェクトの軌道の分散は減少し得る。いくつかの例では、オブジェクト軌道は、オブジェクト108(1)及び108(2)に関連付けられたそれぞれの本体y軸の周りに示され得る。そのような例では、オブジェクトの軌道の分散はさらに減少し得る。様々な例において、軌道テンプレート140(1)及び142(2)は、クラスタ割り当て(例えば、データポイントのクラスタへの割り当て)に基づいて導出され得る。いくつかの例では、軌道テンプレート140(1)及び142(2)は、クラスタリングアルゴリズムを適用する反復間のデータ点の重心に対する閾値未満の変化に基づいて決定され得る。
【0043】
様々な例において、機械学習モデルは、予測範囲(例えば、将来の2秒、8秒など)の終わりにそれぞれのオブジェクト108(1)及び108(2)に関連付けられた予測位置に基づいて、軌道テンプレート140(1)及び142(2)を決定し得る。いくつかの例では、機械学習モデルは、それに関連付けられた予測された位置及び/または確率を表すヒートマップを生成するように構成され得る。少なくともいくつかの例では、そのような予測された位置は、期間の終わり及び/または指定された/提供された任意の他の期間に関連付けられたそれらの位置を含み得る。そのような例では、粗いテンプレート軌道に関連付けられた広範なヒートマップ(または出力確率)は、それにもかかわらず、環境を通る車両の軌道を計画するためのプランナシステムによって消費者であり得る。様々な例において、機械学習モデルは、時間T=0でオブジェクト108(1)及び108(2)に関連付けられた決定された軌道に基づいて、予測位置を決定するように構成され得る。様々な例において、予測位置は、グリッドに基づいてビンに関連付けられ得る。いくつかの例では、機械学習モデルは、分類問題を実行して、異なる軌道テンプレート140及び142の確率分布を決定し得る。本明細書に記載される任意の例では、そのようなテンプレート軌道モデルの出力は、全ての可能なテンプレートにわたる分布を含み得る。非限定的な例として、テンプレートを出力するネットワークの最終層は、各テンプレートの確率が指定されるソフトマックス関数を含み得る。したがって、様々なオブジェクトは、1つまたは複数のテンプレートの比較的高い確率を有し得る(例えば、左車線内で交差点に近づく車両は、進行して曲がる等しいテンプレート化された軌道を有し得る)。
【0044】
いくつかの例では、異なる軌道テンプレート140及び142は、グリッドの別々のビンに関連付けられ得る。そのような例では、グリッドは、異なる軌道テンプレート140及び142がそれぞれ異なるビンに関連付けられるように、十分な解像度を含み得る。様々な例において、1つまたは複数の教師なし学習アルゴリズム(例えば、クラスタリングアルゴリズム)をビンに適用して、軌道テンプレート140(1)及び142(2)を決定し得る。
【0045】
様々な例において、機械学習モデルは、オブジェクト108(1)に関連付けられた予測軌道146及びオブジェクト108(2)に関連付けられた予測軌道148を決定するように訓練され得る。予測軌道146及び148は、それぞれのオブジェクト108(1)及び108(2)の将来の動きの正確な軌道を表し得る。いくつかの例では、将来の動きは、将来の1つまたは複数の時点でのオブジェクトの1つまたは複数の将来の位置として表され得る。いくつかの例では、予測軌道146及び148は、それぞれ軌道テンプレート140(1)及び142(2)に基づいてもよい。
【0046】
様々な例において、予測軌道146及び148は、上記で参照により組み込まれる米国特許出願に記載される技術を利用するなど、機械学習モデルによって出力されるヒートマップに基づいて決定され得る。そのような例では、ヒートマップは、予測軌道146または148を決定するために、ヒートマップのセルに関連付けられた最高の確率を決定するために分析されてよい。例えば、予測軌道146及び148は、予測範囲の終わりにオブジェクト108の予測位置及び/またはそれに関連付けられた確率を表すヒートマップを利用して決定されてよい。
【0047】
様々な例において、機械学習モデルは、履歴データ(例えば、時間T=0の前の時点でのオブジェクト108(1)及び108(2)に関連付けられた位置)に基づいて回帰アルゴリズムを利用して、予測軌道146及び148を決定し得る。いくつかの例では、機械学習モデルは、オブジェクト108(1)及び108(2)のそれぞれに関連付けられた個々のオブジェクト回帰を実行し得る。そのような例では、予測軌道146及び148は、別個の回帰分析に基づいて決定され得る。
【0048】
様々な例において、機械学習モデルは、各オブジェクト108(1)及び108(2)に関連付けられた特徴ベクトルを、それに関連付けられた共同履歴に基づいて(例えば、マルチチャネル画像に基づいて)決定するように構成され得る。いくつかの例では、個々のオブジェクト回帰は、それぞれの特徴ベクトル及び軌道テンプレート140(1)及び142(2)を連結することなどによって、特徴ベクトル上で実行されてもよい。そのような例では、予測軌道146及び148は、特徴ベクトルと、オブジェクト108(1)または108(2)に関連付けられた軌道テンプレート140(1)または142(2)との連結に基づいてもよい。
【0049】
図2Aは、本明細書において説明される技術を実装するための例示的なシステムのブロック図である。少なくとも1つの例では、システム200は、車両106などの車両202を含み得る。
【0050】
車両202は、1つまたは複数の車両コンピューティングデバイス204(車両コンピューティングデバイス204または車両コンピューティングデバイス204とも称される)、1つまたは複数のセンサシステム206、1つまたは複数のエミッタ208、1つまたは複数の通信接続210、少なくとも1つの直接接続212、及び1つまたは複数のドライブシステム214を含み得る。
【0051】
車両コンピューティングデバイス204は、1つまたは複数のプロセッサ216及び1つまたは複数のプロセッサ216と通信可能に結合されたメモリ218を含み得る。図示された例において、車両202は、自律走行車であるが、車両202は、任意の他のタイプの車両とすることができる。図示の例では、車両コンピューティングデバイス204のメモリ218は、位置決めコンポーネント220、知覚コンポーネント222、1つまたは複数のマップ224、1つまたは複数のシステムコントローラ226、画像生成コンポーネント230を含む予測コンポーネント228、機械学習コンポーネント232、及び訓練コンポーネント234、ならびに計画コンポーネント236を記憶する。例示的な目的のためにメモリ218に存在するものとして
図2Aに示されるが、位置決めコンポーネント220、知覚コンポーネント222、1つまたは複数のマップ224、1つまたは複数のシステムコントローラ226、予測コンポーネント228、画像生成コンポーネント230、機械学習コンポーネント232、訓練コンポーネント234、及び計画コンポーネント236は、追加的に、または代替的に、車両202にアクセス可能であってもよい(例えば、コンピューティングデバイス238上などにリモートに記憶されてもよい)ことが企図される。
【0052】
少なくとも1つの例において、位置決めコンポーネント220は、車両202の位置及び/または方向(例えば、x位置、y位置、z位置、ロール、ピッチ、またはヨーのうちの1つまたは複数)を決定するためにセンサシステム206からのデータを受信する機能を含んでよい。例えば、位置決めコンポーネント220は、環境のマップを含むこと、及び/または要求すること/受信することができ、マップ内で自律走行車の位置及び/または向きを継続的に決定することができる。いくつかの例において、位置決めコンポーネント220は、自律走行車の位置を正確に決定すべく画像データ、LIDARデータ、レーダーデータ、IMUデータ、GPSデータ、ホイールエンコーダデータ等を受信するように、SLAM(同時の位置決め及びマッピング)、CLAMS(同時の較正、位置決め及びマッピング)、相対SLAM、バンドル調整、非線形最小二乗最適化等を利用することができる。いくつかの例では、本明細書で論じるように、位置決めコンポーネント220は、車両202の様々なコンポーネントにデータを提供して、軌道を生成するための、及び/またはマップデータを生成または受信するための自律走行車の初期位置を決定し得る。
【0053】
いくつかの例において、知覚コンポーネント222は、オブジェクト検出、セグメンテーション、及び/または分類を実行する機能を含み得る。いくつかの例では、知覚コンポーネント222は、車両202に近接するエンティティの存在及び/またはエンティティタイプ(例えば、自動車、歩行者、自転車運転者、建物、樹木、路面、縁石、歩道、未知のものなど)としてのエンティティの分類を示す処理されたセンサデータを提供し得る。付加的または代替的な例において、知覚コンポーネント222は、検出されたエンティティ(例えば、追跡されるオブジェクト)に関連付けられる1つまたは複数の特性及び/またはエンティティが配置される環境を示す、処理済みのセンサデータを提供し得る。いくつかの例において、エンティティに関連付けられる特性は、x位置(グローバル位置及び/またはローカル位置)、y位置(グローバル位置及び/またはローカル位置)、z位置(グローバル位置及び/またはローカル位置)、向き(例えば、ロール、ピッチ、ヨー)、エンティティタイプ(例えば、分類)、エンティティの速度、エンティティの加速度、エンティティの範囲(サイズ)などを含むことができるが、これらに限定されない。環境に関連付けられる特性は、環境内の別のエンティティの存在、環境内の別のエンティティの状態、時刻、曜日、季節、気象条件、暗闇/光の表示などを含むことができるが、これらに限定されない。
【0054】
メモリ218は、環境内をナビゲートするために車両202によって使用され得る1つまたは複数のマップ224をさらに含んでもよい。この説明のために、マップは、これらには限定されないが、(交差点などの)トポロジー、通り、山脈、道路、地形、及び一般的な環境などの環境に関する情報を提供することができる2次元、3次元、またはN次元でモデル化された任意の数のデータ構造とすることができる。いくつかの例では、マップは、限定されるわけではないが、テクスチャ情報(例えば、色情報(例えば、RGB色情報、Lab色情報、HSV/HSL色情報)など)、明暗度情報(例えば、LIDAR情報、RADAR情報など)、空間情報(例えば、メッシュ上に投影された画像データ、個々の「サーフェル」(例えば、個々の色及び/または明暗度に関連付けられるポリゴン))、反射性情報(例えば、鏡面性情報、再帰反射性情報、BRDF情報、BSSRDF情報など)を含むことができる。1つの例では、マップは、環境の3次元メッシュを含むことができる。いくつかの例において、マップの個々のタイルが環境の個別の部分を表すように、マップをタイル形式で記憶でき、本明細書にて説明するように、必要に応じて作業メモリにロードできる。少なくとも1つの例では、1つまたは複数のマップ224は、少なくとも1つのマップ(例えば、画像および/またはメッシュ)を含むことができる。いくつかの例において、車両202は、マップ224に少なくとも部分的に基づいて制御されてよい。すなわち、マップ224は、位置決めコンポーネント220、知覚コンポーネント222、予測コンポーネント228、及び/または計画コンポーネント236と関連して使用されて、車両202の位置を決定し、環境内のオブジェクトを識別し、オブジェクト及び/または車両202に関連付けられた予測確率変数を生成し、及び/または環境内をナビゲートするための経路及び/または軌道を生成し得る。
【0055】
いくつかの例において、1つまたは複数のマップ224は、ネットワーク240を介してアクセス可能な(コンピューティングデバイス238などの)遠隔コンピューティングデバイス上に記憶され得る。いくつかの例において、複数のマップ224は、例えば、特徴(例えば、エンティティのタイプ、時刻、曜日、その年の季節など)に基づいて記憶されてよい。複数のマップ224を記憶することは、同様のメモリ要件を有してよいが、マップにおけるデータがアクセスされ得る速度を増加させ得る。
【0056】
少なくとも1つの例では、車両コンピューティングデバイス204は、1つまたは複数のシステムコントローラ226を含んでよく、これは、車両202のステアリング、推進、ブレーキ、安全性、エミッタ、通信、及び他のシステムを制御するように構成されてよい。これらのシステムコントローラ226は、ドライブシステム214及び/または車両202の他のコンポーネントの対応するシステムと通信し、及び/または制御し得る。
【0057】
概して、予測コンポーネント228は、環境内のオブジェクトの予測軌道を生成し得る。例えば、予測コンポーネント228は、車両202から閾値距離内にある車両、歩行者、自転車運転者などの1つまたは複数の予測軌道を生成することができる。いくつかの例では、予測コンポーネント228は、本明細書で説明されるように、観察された及び予測された挙動に基づいて、オブジェクトのための軌道テンプレート及び予測軌道を生成するように構成され得る。
【0058】
いくつかの例では、画像生成コンポーネント230は、シーンのトップダウンビューを表す画像を生成する機能を含み得る。画像生成コンポーネント230によって生成されるこのような画像の例を、画像118、120、及び122として
図1に示す。
【0059】
いくつかの例では、画像生成コンポーネント230は、車両202の周りの領域を表す画像を生成し得る。いくつかの例では、領域は、センサに見える領域(例えば、センサ範囲)、後退する地平線、アクション(例えば、交差点を横断する)に関連付けられた領域などに少なくとも部分的に基づくことができる。少なくとも1つの例では、画像は、任意の領域が企図されるが、車両202の周りの100メートル×100メートルの領域を表し得る。画像生成コンポーネント230は、知覚コンポーネント222から環境内のオブジェクトに関するデータを受信してよく、位置決めコンポーネント220、知覚コンポーネント222、及び1つまたは複数のマップ224から環境自体に関するデータを受信してよい。画像生成コンポーネント230は、(例えば、本明細書で説明されるように、バウンディングボックスによって表される)環境内のオブジェクト、オブジェクトに関する意味情報(例えば、分類タイプ)、動き情報(例えば、速度情報、加速度情報など)などを含む環境のトップダウンビューを生成し得る。画像生成コンポーネント230は、1つまたは複数の速度ベクトル、1つまたは複数の加速度ベクトル、照明インジケータ(例えば、それぞれのインジケータの状態として表される、オブジェクトのブレーキライト、オブジェクトのターンシグナルライトなど)、交通信号情報(例えば、交通信号の状態)、車線情報(例えば、車線が左折のみの車線であるか、右折のみの車線であるかなど)などを含むが、これらに限定されない、オブジェクト及び環境の様々な属性を表す画像内の画像要素(例えば、記号または他の表現)をさらに生成し得る。
【0060】
いくつかの例では、画像生成コンポーネント230は、本明細書で詳細に説明されるように、環境の意味情報を含む1つまたは複数の画像を生成し得る。画像生成コンポーネント230によって生成された画像は、本明細書で説明されるように、軌道テンプレート及び/または予測軌道を生成するために使用され得る環境内の環境及びオブジェクトの状態に関する先行情報を表し得る。
本明細書で説明される例のいずれにおいても、画像生成コンポーネント230は、複数のチャネルを有する画像を生成することができ、各チャネルは、いくつかの情報(意味的またはその他)を表す。
【0061】
いくつかの例では、機械学習コンポーネント232(機械学習モデルコンポーネント232とも称される)は、本明細書で説明されるように、画像生成コンポーネント230によって生成された画像を受信し、1つまたは複数の軌道テンプレート及び/または予測軌道を生成する機能を含んでもよい。
【0062】
いくつかの例では、機械学習コンポーネント232は、モデルに入力されるトップダウン画像に基づいて、1つまたは複数の軌道テンプレート及び/または予測軌道を出力するように訓練された1つまたは複数の機械学習モデルを含んでもよい。いくつかの例では、機械学習コンポーネント232の軌道テンプレート及び/または予測軌道は、CNNを含み、CNNは、1つまたは複数のRNN層、例えば、LSTM層を含んでもよく、含まなくてもよい。
【0063】
いくつかの例では、機械学習コンポーネント232によって出力される軌道テンプレートは、オブジェクトの将来の動き(例えば、将来の動きの予測される方向、動きのクラスなど)の意図の分類を表し得る。インテントの分類は、オブジェクトが前進、停止、左折または右折などを継続するかどうかなど、オブジェクトの将来の動きの大まかな推定値を含み得る。いくつかの例では、軌道テンプレートは、1つまたは複数のマップ224によって提供されるマップデータとは無関係に決定されてもよい。様々な例において、機械学習コンポーネント232によって出力される予測軌道は、オブジェクトの1つまたは複数の将来の位置によって表される軌道など、オブジェクトの将来の動きの軌道を表し得る。
【0064】
いくつかの例では、予測軌道は、機械学習コンポーネント232によって生成されたヒートマップに基づいて決定され得る。そのような例では、予測コンポーネント228は、機械学習コンポーネント232によって出力されるヒートマップに基づいて予測軌道を決定するように構成され得る。いくつかの例では、ヒートマップは、自律走行車に近接する環境の離散化された領域を表し得る。いくつかの例では、ヒートマップによって表される領域は、機械学習コンポーネント232に入力される画像によって表される領域に対応し得る。もちろん、ヒートマップは、領域の任意のサイズを表すことができ、領域の任意の数の離散部分を表すことができる。場合によっては、ヒートマップの一部は、ヒートマップのセルと呼ぶことができる。各セルは、ヒートマップに対応する時間に、オブジェクトが環境内の対応する位置にある確率を表す予測確率を含んでよい。いくつかの例では、機械学習モデルは、複数のヒートマップを出力してもよく、複数のヒートマップのうちのヒートマップは、将来の特定の時間(例えば、0.5秒、1秒、3秒、5秒、10秒など)においてオブジェクトに関連付けられた確率予測を表してもよい。
【0065】
様々な例において、訓練コンポーネント234は、車両202の動作中(例えば、車両がオンラインであるとき)に機械学習コンポーネント232を訓練するように構成され得る。いくつかの例では、訓練コンポーネント234は、オブジェクトによって実際に実行されるアクションに基づいて、訓練のためのグラウンドトゥルースを決定し得る。グラウンドトゥルースは、オブジェクトが環境を通過した実際の軌道を含み得る。いくつかの例では、訓練コンポーネント234は、軌道テンプレート及び/または予測軌道に対してグラウンドトゥルース(例えば、実行されるアクション)を比較し得る。比較に基づいて、訓練コンポーネント234は、機械学習コンポーネント232を訓練して、車両202を制御するために計画コンポーネント236に提供され得る正確な軌道テンプレート及び/または予測軌道を出力するように構成され得る。
【0066】
一般に、計画コンポーネント236は、環境を通過するために車両202が進む経路を決定し得る。経路は、第1の位置(例えば、現在の位置)から第2の位置(例えば、ターゲット位置)まで移動する経路を含み得る。この説明の目的のために、ルートは、2つの位置間で移動するためのウェイポイントのシーケンスであることが可能である。非限定的な例として、ウェイポイントは、道路、交差点、全地球測位システム(GPS)座標などを含む。いくつかの例において、計画コンポーネント236は、第1の位置から第2の位置までのルートの少なくとも一部に沿って自律走行車202を誘導するための命令を生成するように構成され得る。
【0067】
少なくとも1つの例において、計画コンポーネント236は、ウェイポイントのシーケンスにおける第1のウェイポイントからウェイポイントのシーケンスにおける第2のウェイポイントにどのように自律走行車を誘導するかを決定し得る。いくつかの例において、命令は、軌道であってよく、または軌道の一部であってもよい。いくつかの例において、多数の軌道は、後退ホライズン技法に従って(例えば、技術的な許容範囲内で)実質的に同時に生成されてよく、ここで、多様な軌道のうちの1つが、ナビゲートすべき車両202のために選択される。様々な例において、車両が環境を通過するための軌道は、予測コンポーネント228によって決定される軌道テンプレート及び/または予測軌道に基づいて決定され得る。
【0068】
いくつかの例では、機械学習コンポーネント232は、軌道テンプレート及び/または予測軌道を計画コンポーネント236に直接提供してもよく、計画コンポーネント236は、次に、車両202が実行するためのアクションを選択または決定することができ、及び/または車両202がたどる軌道を生成することができる。
【0069】
いくつかの例では、本明細書で説明されるコンポーネントのいくつかまたは全ての態様は、任意のモデル、アルゴリズム、及び/または機械学習アルゴリズムを含むことができる。例えば、場合によっては、メモリ218(および以下で説明されるメモリ242)におけるコンポーネントは、ニューラルネットワークとして実装することができる。
【0070】
本明細書で説明されるように、例示的なニューラルネットワークは、入力データが連続して接続された層を通して出力を生じさせる生物学に着想を得たアルゴリズムである。ニューラルネットワークの各層が、別のニューラルネットワークを備えることも可能であり、または任意の数の層(畳み込み層であるか否かにかかわらず)を備えることが可能である。本開示のコンテキストで理解することができるように、ニューラルネットワークは、機械学習を利用することができ、機械学習は、出力が学習されたパラメータに基づいて生成されるそのような幅広いクラスのアルゴリズムを指すことが可能である。
【0071】
ニューラルネットワークのコンテキストで論じられているが、任意のタイプの機械学習が本開示と調和して使用され得る。例えば、機械学習アルゴリズムは、回帰アルゴリズム(例えば、通常の最小二乗回帰(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(サポートベクトルマシン)、教師あり学習、教師なし学習、半教師あり学習などを含むことができるが、これらに限定されない。
【0072】
アーキテクチャのさらなる例は、ResNet50、ResNet101、VGG、DenseNet、PointNetなどのニューラルネットワークを含む。
【0073】
少なくとも1つの例において、センサシステム206は、ライダーセンサ、レーダーセンサ、超音波トランスデューサ、ソナーセンサ、位置センサ(例えば、GPS、コンパスなど)、慣性センサ(例えば、慣性測定ユニット(IMU)、加速度計、磁力計、ジャイロスコープなど)、カメラ(例えば、RGB、IR、強度、深度)、飛行時間センサ、マイク、ホイールエンコーダ、環境センサ(例えば、温度センサ、湿度センサ、光センサ、圧力センサなど)、などを含んでよい。センサシステム206は、これらのまたは他のタイプのセンサのそれぞれの複数のインスタンスを含み得る。例えば、ライダーセンサは、車両202の角部、前部、後部、側部、及び/または上部に位置する個々のライダーセンサを含んでよい。別の例として、カメラセンサは、車両202の外部及び/または内部についての様々な位置に配置される多数のカメラを含んでよい。センサシステム206は、車両コンピューティングデバイス204に入力を提供し得る。追加的または代替的に、センサシステム206は、1つまたは複数のネットワーク240を介して、所定の期間の経過後、ほぼリアルタイムなどで、特定の周波数で1つまたは複数のコンピューティングデバイス238にセンサデータを送信し得る。
【0074】
車両202はまた、上述したように、光及び/または音を発するための1つまたは複数のエミッタ208を含んでもよい。この例示のエミッタ208は、車両202の乗客と通信するための内部オーディオ及びビジュアルエミッタを含む。例示の目的で、限定ではなく、内部エミッタは、スピーカー、ライト、サイン、ディスプレイスクリーン、タッチスクリーン、触覚エミッタ(例えば、振動及び/またはフォースフィードバック)、機械式アクチュエータ(例えば、シートベルトテンショナー、シートポジショナー、ヘッドレストポジショナーなど)などを含むことができる。この例におけるエミッタ208は、また、外部エミッタを含む。例示の目的で、限定ではなく、この例における外部エミッタは、移動の方向の信号を送る照明、または車両の行動の他のインジケータ(例えば、インジケータ照明、標識、照明アレイなど)、ならびに歩行者、または音響ビームステアリング技術を含む1つまたは複数の近隣の他の車両と音響で通信する1つまたは複数のオーディオエミッタ(例えば、スピーカー、スピーカーアレイ、ホーンなど)を含む。
【0075】
車両202は、また、車両202と1つまたは複数の他のローカルまたは遠隔コンピューティングデバイスと間の通信を可能とする1つまたは複数の通信接続210も含んでよい。例えば、通信接続210は、車両202上の他のローカルコンピューティングデバイス及び/またはドライブシステム214との通信を容易にし得る。また、通信接続210は、車両202が他の近くのコンピューティングデバイス(例えば、他の近くの車両、交通信号など)と通信することを可能にし得る。また、通信接続210は、車両202が遠隔操作のコンピューティングデバイスまたは他の遠隔サービスと通信することを可能とする。
【0076】
通信接続210は、車両コンピューティングデバイス204を別のコンピューティングデバイスまたはネットワーク240などのネットワークに接続するための物理及び/または論理インターフェースを含んでよい。例えば、通信接続210は、IEEE802.11規格によって定義される周波数、ブルートゥースのような短距離無線周波数、セルラー通信(例えば、2G、3G、4G、4G LTE、5Gなど)、またはそれぞれのコンピューティングデバイスが他のコンピューティングデバイスとインターフェース接続することを可能にする任意の適切な有線もしくは無線通信プロトコルを介するなどして、Wi-Fiベースの通信を有効にし得る。
【0077】
少なくとも1つの例では、車両202は、1つまたは複数のドライブシステム214を含み得る。いくつかの例では、車両202は、単一のドライブシステム214を含み得る。少なくとも1つの例では、車両202が複数のドライブシステム214を含む場合、個々のドライブシステム214は、車両202の反対側の端部(例えば、前部及び後部など)に配置されてもよい。少なくとも1つの例では、ドライブシステム214は、ドライブシステム214及び/または車両202の周囲の状態を検出するための1つまたは複数のセンサシステムを含み得る。例示の目的で、限定ではなく、センサシステムは、ドライブシステムのホイールの回転を感知するための1つまたは複数のホイールエンコーダ(例えば、ロータリーエンコーダ)、ドライブシステムの方向及び加速度を測定するための慣性センサ(例えば、慣性測定ユニット、加速度計、ジャイロスコープ、磁力計など)、カメラまたは他の画像センサ、ドライブシステムの周囲の状態におけるオブジェクトを音響的に検出するための超音波センサ、ライダーセンサ、レーダーセンサなどを含んでよい。ホイールエンコーダなどのいくつかのセンサは、ドライブシステム214に固有とすることができる。場合によっては、ドライブシステム214上のセンサシステムは、車両202の対応するシステム(例えば、センサシステム206)と重複してよく、またはそれを補足してもよい。
【0078】
ドライブシステム214は、高電圧バッテリー、車両を推進させるためのモーター、他の車両システムによる使用のためにバッテリーからの直流を交流へと変換するためのインバーター、ステアリングモーター及びステアリングラックを含むステアリングシステム(これは電動式とすることが可能である)、油圧または電動アクチュエータを含むブレーキシステム、油圧及び/または空気圧コンポーネントを含むサスペンションシステム、トラクションの損失を緩和し、制御を維持するために制動力を分配するための安定性制御システム、HVACシステム、照明(例えば、車両の外部周囲を照らすためのヘッド/テールライトのような照明)、及び1つまたは複数の他のシステム(例えば、冷却システム、安全システム、車載充電システム、DC/DCコンバーターのような他の電気部品、高電圧ジャンクション、高電圧ケーブル、充電システム、充電ポートなど)を含む車両システムの多くを含んでよい。さらに、ドライブシステム214は、センサシステムからデータを受信して前処理をすることができる、様々な車両システムの動作を制御するためのドライブシステムコントローラを含んでよい。いくつかの例において、ドライブシステムコントローラは、1つまたは複数のプロセッサと、1つまたは複数のプロセッサと通信可能に結合されたメモリとを含むことができる。メモリは、ドライブシステム214の様々な機能を実行するための1つまたは複数のコンポーネントを記憶することができる。さらに、ドライブシステム214はまた、それぞれのドライブシステムによる、1つまたは複数の他のローカルまたはリモートコンピューティングデバイスとの通信を可能にする1つまたは複数の通信接続を含む。
【0079】
少なくとも1つの例において、直接接続212は、1つまたは複数のドライブシステム214を車両202の本体と結合するための物理的インターフェースを提供してよい。例えば、直接接続212は、ドライブシステム214と車両との間のエネルギー、流体、空気、データなどの転送を可能とすることができる。いくつかの例において、直接接続212は、ドライブシステム214を車両202の本体にさらに解放可能に固定し得る。
【0080】
いくつかの例では、車両202は、ネットワーク240を介してセンサデータを1つまたは複数のコンピューティングデバイス238に送信し得る。いくつかの例では、車両202は、生のセンサデータをコンピューティングデバイス238に送信し得る。他の例では、車両202は処理されたセンサデータ及び/またはセンサデータの表現をコンピューティングデバイス238に送信し得る。いくつかの例において、車両202は、所定の期間が経過した後で、ほぼリアルタイムで、などにおいて、センサデータを特定の周波数でコンピューティングデバイス238に送信し得る。場合によっては、車両202は、センサデータ(生または処理済み)を1つまたは複数のログファイルとしてコンピューティングデバイス238に送信し得る。
【0081】
コンピューティングデバイス238は、プロセッサ244及び訓練コンポーネント246を記憶するメモリ242を含み得る。いくつかの例では、訓練コンポーネント246は、1つまたは複数の軌道テンプレート及び/または予測軌道を出力するように機械学習モデルを訓練する機能を含んでもよい。機械学習モデルは、将来のある時(例えば、予測範囲の終わり)に予測されたオブジェクト位置を表す軌道テンプレート及び/またはヒートマップを出力するように構成された第1のネットワークまたはネットワークの第1のセット、予測軌道を出力するように構成された第2のネットワークまたはネットワークの第2のセットを含んでよい。いくつかの例では、ネットワークの第2のセットは、軌道テンプレートに関連付けられた分類に基づいて予測軌道を決定するように構成されたネットワークを含み得る。いくつかの例では、第1のネットワークまたはネットワークの第1のセットは、1つまたは複数のクラスタリングアルゴリズムを利用して訓練され得、第2のネットワークまたはネットワークの第2のセットは、1つまたは複数の回帰アルゴリズムを利用して訓練され得る。
【0082】
いくつかの例では、訓練コンポーネント246は、予測確率を含む1つまたは複数のヒートマップを出力するように機械学習モデルを訓練する機能を含み得る。例えば、訓練コンポーネント246は、環境のトップダウンビューを表す画像のセットを受信し得る。場合によっては、画像のセットは、5秒、7秒、10秒、20秒などの一定期間環境を通過する1つまたは複数のオブジェクトを表し得る。画像のセットの少なくとも一部は、機械学習モデルを訓練するための入力として使用され得、画像のセットの少なくとも一部は、機械学習モデルを訓練するためのグラウンドトゥルース情報として使用され得る。非限定的な例として、画像のシーケンスの第1のセット(例えば、3、4、5、またはそれ以上)は、機械学習モデルに入力され得る。場合によっては、車両202の経路及び/またはルート(例えば、軌道)は、同様に訓練のために入力されてもよい(例えば、マルチチャネル画像のチャネルとして符号化されてもよい)。次いで、第1のセットの直前の画像のシーケンス内の第2のセットの画像(または、例えば、画像から位置及び/または速度を抽出することによって、そこから関連付けられた軌道情報)は、モデルを訓練するためのグラウンドトゥルースとして使用され得る。したがって、オブジェクトが環境を横断する記録された軌道の画像を提供することによって、予測コンポーネント228は、本明細書で説明されるように、予測確率を含む軌道テンプレート、予測軌道、及び/またはヒートマップを出力するように訓練され得る。
【0083】
いくつかの例では、訓練コンポーネント246は、シミュレータによって生成された訓練データを含み得る。例えば、シミュレートされた訓練データは、追加の訓練例を提供するために、車両が環境内のオブジェクトに衝突するか、または環境内のオブジェクトにもう少しで衝突する例を表すことができる。
【0084】
訓練コンポーネント246の追加の詳細は、
図2Bに関連して、ならびに本開示を通して以下で説明される。
【0085】
車両202のプロセッサ216及びサービスコンピューティングデバイス238のプロセッサ244は、本明細書で説明されるように、データを処理して動作を実行するための命令を実行することが可能である任意の適切なプロセッサであってよい。限定ではない例として、プロセッサ216及び244は、1つまたは複数の中央処理装置(CPU)、グラフィックス処理ユニット(GPU)、または、電子データを処理してその電子データをレジスタ及び/またはメモリに記憶することができる他の電子データへと変換する任意の他のデバイスまたはデバイスの一部を含んでよい。いくつかの例では、集積回路(例えば、ASICなど)、ゲートアレイ(例えば、FPGAなど)、及び他のハードウェアデバイスはまた、それらがエンコードされた命令を実装するよう構成される限り、プロセッサとみなすことができる。
【0086】
メモリ218及び242は、非一時的なコンピュータ可読媒体の例示である。メモリ218及び242は、オペレーティングシステム及び1つまたは複数のソフトウェアアプリケーション、命令、プログラム、ならびに/または本明細書で説明される方法及び様々なシステムに起因する機能を実行するデータを記憶し得る。様々な実装において、メモリは、任意の適切なメモリ技術、例えば、スタティックランダムアクセスメモリ(SRAM)、シンクロナスダイナミックRAM(SDRAM)、不揮発性/フラッシュタイプメモリ、または、情報を記憶することが可能な任意の他のタイプのメモリなどを使用して、実装されることが可能である。本明細書で説明されるアーキテクチャ、システム、及び個々の要素は、多くの他の論理的、プログラム的、及び物理的なコンポーネントを含むことができ、添付図面に示されるそれらは本明細書での説明に関連する単なる例にすぎない。
【0087】
いくつかの例では、メモリ218及び242は、少なくともワーキングメモリ及びストレージメモリを含み得る。例えば、ワーキングメモリは、プロセッサ216及び244によって操作されるデータを記憶するために用いられる制限された容量の高速メモリ(例えば、キャッシュメモリ)であってよい。場合によっては、メモリ218及び242は、データの長期記憶に使用される比較的大きな容量の低速メモリであり得る記憶メモリを含み得る。場合によっては、プロセッサ216及び244は、本明細書で説明されるように、記憶メモリに記憶されているデータを直接操作しない場合があり、データは、データに基づく動作を実行させるためにワーキングメモリへとロードされる必要がある場合がある。
【0088】
図2は分散システムとして示されているが、代替の例では、車両202の構成要素は、コンピューティングデバイス238に関連付けられ得、及び/またはコンピューティングデバイス238の構成要素は、車両202に関連付けられ得ることに留意されたい。すなわち、車両202は、コンピューティングデバイス238に関連する1つまたは複数の機能を実行し得、逆もまた同様である。
【0089】
図2Bは、本明細書で説明される技術を実装するために機械学習モデルを訓練するための例示的な訓練コンポーネントのブロック
図248を示す。
【0090】
いくつかの例では、訓練データ250は、車両が環境を通過するときに捕捉されるデータを含んでもよい。様々な例において、訓練データ250は、訓練データ内の各オブジェクトに関連付けられたオブジェクトのタイプ(例えば、歩行者、車両、自転車運転者など)を含み得る。いくつかの例では、訓練データ250は、環境に関連付けられた1つまたは複数のシナリオ(例えば、高速道路、ジャンクション(例えば、道路分割、4方向交差点など))に対応する情報を含み得る。そのような例では、機械学習コンポーネント232は、異なるタイプのオブジェクト及び/または異なるシナリオに関連付けられたデータに基づいて、軌道テンプレート及び予測軌道を決定するように訓練され得る。いくつかの例では、入力252は、訓練データ250に少なくとも部分的に基づいてもよい。
【0091】
1つまたは複数のマルチチャネル画像を含む入力252は、機械学習コンポーネント232に入力されてもよい。上述したように、機械学習コンポーネント232は、クラスタリングアルゴリズムなどの1つまたは複数の教師なし学習アルゴリズムを利用して、オブジェクトに関連付けられた軌道テンプレートを決定し得る。
【0092】
いくつかの例では、機械学習コンポーネント232は、ResNetアーキテクチャを含んでもよい。いくつかの例では、機械学習コンポーネント232は、ベースバックボーンとしてResNetアーキテクチャを含み得る。
【0093】
いくつかの例では、出力特徴マップは、1×1の畳み込みを通過して最終チャネル寸法を取得してもよく、最終チャネル寸法は、出力256(例えば、軌道テンプレート及び予測軌道)として表される入力分解能に一致するように(例えば、アップサンプリングコンポーネント254を介して)双線形(または他の方法で)アップサンプリングされ得る。
【0094】
いくつかの例では、機械学習コンポーネント232からの出力ロジットは、シグモイド交差エントロピー損失を使用して、訓練データ250(例えば、占有マップを表すグラウンドトゥルース)と比較され得る。
【0095】
クロスエントロピー損失及び/または確率質量コンポーネント258は、出力ロジットを訓練データ250と比較する機能を含んでよい。次いで、結果として生じる損失行列は、以下の関数に従って、訓練データ250内の占有された画素と占有されていない画素とにわたってバランスがとられ得る。
【0096】
【0097】
ここで、Liは、将来の第iステップでのシグモイド交差エントロピー損失から得られる損失行列であり、Nは、予測される将来のステップの数である。1occupied及び1unoccupiedという用語は、将来のオブジェクトの占有及び非占有マップを表すインジケータ行列であり、占有及び非占有という用語は、将来の占有及び非占有セルの数を表す。占有にわたってバランスを取ることは、占有されている勾配と占有されていない勾配の等しい数(またはほぼ等しい数)が逆伝播を通過し、予測コンポーネント228が全てのセルを占有されていると、または全てのセルを占有されていないと予測するように偏らないことを確実にする。
【0098】
上記の式(1)で指定された密なセグメンテーションコストは、シーン内のエンティティの総数を保存しない場合がある。いくつかの例では、クロスエントロピー損失及び/または確率質量コンポーネント258は、シーン内の予測コンポーネント228によって予測される全確率質量(例えば、ヒートマップに関連付けられた確率の合計、予測される将来の位置に関連付けられた全確率分布)と、占有セルの実際の数との間の差を最小化するための追加のコストを含み得る。
【0099】
【0100】
ここで、φiは、将来のステップiにおける占有マップを表す。確率質量コンポーネントを追加することによって、予測コンポーネント228は、追加の確率質量を生成することなく、利用可能なセル間に総確率質量を分配し得る。例えば、自律走行車が2つの可能なモードを有する場合、ネットワークは、2つのモード間で占有の確率を分配し得、任意の追加の占有確率を追加しない場合がある。
【0101】
さらに、シーンの質量を制約または他の方法で管理することは、追加のオブジェクトを環境に追加するネットワークの可用性を制限し、処理を簡素化し得る。
【0102】
図3は、本開示の例に従って、オブジェクトに関連付けられた決定された軌道テンプレート306に関連付けられた予測軌道304を決定するように構成された軌道ネットワーク302を含む予測システム300を図示する。
【0103】
図示されるように、予測システム300の第1のネットワーク308(図示されるネットワークA)は、車両の環境を表す1つまたは複数の画像310を受信し得る。画像310は、本明細書に記載されるように、マルチチャネル画像を含み得る。画像は、オブジェクトデータ(例えば、環境内で検出されたオブジェクトを表すバウンディングボックス、オブジェクトに関連付けられた速度情報(x方向及びy方向)、オブジェクトに関連付けられた加速度情報(x方向及びy方向)、オブジェクトのタイプ(例えば、車両、歩行者、自転車運転者、スクーター、スケートボードなど)、バウンディングボックスに関連付けられたブリンカー状態(例えば、左折、右折、ブレーキ、リバース、ハザード、ライトなしなど)など)、道路ネットワーク情報(例えば、車線、横断歩道、停止標識、交差点、交通信号などを示す意味ラベル)、環境内の1つまたは複数のシナリオ(例えば、高速道路、ジャンクション(例えば、道路分割、4車線交差点など)、信号状態(例えば、赤色、黄色、緑色など)、車両データ(例えば、ルート、軌道など)などを含んでよいが、これらに限定されない。そのような画像では、オブジェクト及び環境に関する意味情報は、本明細書で詳細に説明されるように、1つまたは複数のチャネルで符号化され得る。
【0104】
第1のネットワーク308は、画像310を受信し、環境を表すグローバル特徴マップ312を生成するように構成され得る。様々な例において、第1のネットワーク308は、ニューラルネットワークを含み得る。少なくとも1つの例では、第1のネットワーク308は、CNNを含んでもよいが、他のタイプのネットワークが本明細書で企図される。様々な例において、特徴マップ312は、環境内の検出されたオブジェクトの共同履歴を表し得る。共同履歴は、オブジェクト間の依存関係(例えば、あるオブジェクトの別のオブジェクトへの反応)を含み得る。共同履歴は、独立したオブジェクト(例えば、他のオブジェクトに関係なく動作するオブジェクト)を含み得る。
【0105】
様々な例において、予測システム300は、特徴マップ312に基づいて1つまたは複数のオブジェクトごとの特徴314を決定するように構成され得る。いくつかの例では、オブジェクトごとの特徴314は、各検出されたオブジェクトに関連付けられた特徴ベクトルを表し得る。様々な例において、オブジェクトごとの特徴314は、特徴マップ312に表される各オブジェクトに関連付けられた空間位置に基づいてもよい。
【0106】
様々な例において、オブジェクトごとの特徴314は、テンプレートネットワーク316に入力され得る。そのような例では、テンプレートネットワーク316は、入力されたオブジェクトごとの特徴314に部分的に基づいて、検出された各オブジェクト(例えば、1つまたは複数の軌道テンプレート306)に関連付けられた軌道テンプレート306を出力するように構成され得る。様々な例において、テンプレートネットワーク316は、ニューラルネットワークを含み得る。いくつかの例では、テンプレートネットワーク316は、高密度ニューラルネットワークを含み得る。少なくとも1つの例では、テンプレートネットワーク316は、教師なし学習アルゴリズムを利用して訓練され得るが、任意のタイプの機械学習は、本開示と一致して使用され得る。
【0107】
様々な例において、軌道テンプレート306及びオブジェクトごとの特徴314は、組み合わされ(例えば、連結され)、軌道ネットワーク302に入力され得る。軌道ネットワーク302は、各検出されたオブジェクトに関連付けられた予測軌道304を出力するように構成され得る。様々な例において、軌道ネットワーク302は、ニューラルネットワークを含み得る。いくつかの例では、軌道ネットワーク302は、密なニューラルネットワークを含み得る。軌道ネットワーク302は、教師なし及び/または教師あり学習アルゴリズムを利用して訓練されてもよいが、任意のタイプの機械学習が本開示と一致して使用されてもよい。例示的な例では、単一の軌道ネットワーク302は、出力軌道テンプレート306のそれぞれについて予測軌道304を決定するように構成され得る。他の例では、
図4に示されるように、予測システム300は、それぞれが特定の軌道テンプレート306の予測軌道304を決定するように構成される、2つ以上の軌道ネットワーク302を含み得る。
【0108】
様々な例において、予測システムは、観測データ(例えば、グラウンドトゥルースオブジェクト軌道322)に基づいて予測システムの少なくとも1つのネットワークを訓練するように構成された訓練コンポーネント234などの訓練コンポーネント320を含み得る。様々な例において、訓練コンポーネント320は、324でグラウンドトゥルースオブジェクト軌道322から軌道テンプレートを抽出し得る。いくつかの例では、グラウンドトゥルースオブジェクト軌道322は、車両動作(例えば、環境内で動作する車両)中に知覚システムによって観測される軌道(例えば、実際のオブジェクト軌道)を含んでもよい。そのような軌道テンプレートは、例えば、動きをいくつかのタイプの動き(動かないまま、車線を変える、車線に留まる、左に曲がる、右に曲がるなど)に広く分類することに基づいて決定されてよい。
【0109】
いくつかの例では、グラウンドトゥルースオブジェクト軌道322から(324で)抽出された軌道テンプレートは、326で連結されてもよく、連結されたデータは、軌道ネットワーク302及び/またはテンプレートネットワーク316を訓練するために使用されてもよい。
【0110】
様々な例において、テンプレートネットワーク316及び軌道ネットワーク302は、共同で訓練され得る。そのような例では、軌道テンプレート306は、訓練において予測軌道304を補強し得、逆もまた同様である。
【0111】
図4は、本開示の例による、軌道テンプレート406の第1の軌道テンプレートに基づいて第1の予測軌道404を決定するように構成された第1の軌道ネットワーク402と、軌道テンプレート406の第2の軌道テンプレートに基づいて第2の予測軌道410を決定するように構成された第2の軌道ネットワーク408とを含む、例示的な予測システム400を示す。
【0112】
図示されるように、予測システム400の第1のネットワーク412(図示されるネットワークA)は、車両の環境を表す1つまたは複数の画像414を受信し得る。画像414は、本明細書に記載されるように、マルチチャネル画像を含み得る。画像は、オブジェクトデータ(例えば、環境内で検出されたオブジェクトを表すバウンディングボックス、オブジェクトに関連付けられた速度情報(x方向及びy方向)、オブジェクトに関連付けられた加速度情報(x方向及びy方向)、オブジェクトのタイプ(例えば、車両、歩行者、自転車運転者、スクーター、スケートボードなど)、バウンディングボックスに関連付けられたブリンカー状態(例えば、左折、右折、ブレーキ、リバース、ハザード、ライトなしなど)など)、道路ネットワーク情報(例えば、車線、横断歩道、停止標識、交差点、交通信号などを示す意味ラベル)、環境内の1つまたは複数のシナリオ(例えば、高速道路、ジャンクション(例えば、道路分割、4車線交差点など)、信号状態(例えば、赤色、黄色、緑色など)、車両データ(例えば、ルート、軌道など)などを含んでよいが、これらに限定されない。そのような画像では、オブジェクト及び環境に関する意味情報は、本明細書で詳細に説明されるように、1つまたは複数のチャネルで符号化され得る。
【0113】
第1のネットワーク412は、画像414を受信し、環境を表すグローバル特徴マップ416を生成するように構成され得る。様々な例において、第1のネットワーク412は、ニューラルネットワークを含み得る。少なくとも1つの例では、第1のネットワーク412は、CNNを含んでもよいが、他のタイプのネットワークが本明細書で企図される。様々な例において、特徴マップ416は、環境内の検出されたオブジェクトの共同履歴を表し得る。共同履歴は、オブジェクト間の依存関係(例えば、あるオブジェクトの別のオブジェクトへの反応)を含み得る。いくつかの例では、共同履歴は、環境内のオブジェクトの物理的な近接性(例えば、第1のオブジェクトと第2のオブジェクトとの間の閾値未満の距離)、閾値未満の瞬間の軌道間の角度(例えば、オブジェクトが互いに近づいているかもしれないことを示す)などによって決定され得る。共同履歴は、独立したオブジェクト(例えば、他のオブジェクトに関係なく動作するオブジェクト)を含み得る。
【0114】
様々な例において、予測システム400は、特徴マップ416に基づいて1つまたは複数のオブジェクトごとの特徴418を決定するように構成され得る。いくつかの例では、オブジェクトごとの特徴418は、各検出されたオブジェクトに関連付けられた特徴ベクトルを表し得る。様々な例において、オブジェクトごとの特徴418は、特徴マップ416に表される各オブジェクトに関連付けられた空間位置に基づいてもよい。
【0115】
様々な例において、オブジェクトごとの特徴418は、テンプレートネットワーク420に入力され得る。テンプレートネットワーク420は、各検出オブジェクトに関連付けられた軌道テンプレート406(例えば、1つまたは複数の軌道テンプレート406)を出力するように構成され得る。様々な例において、テンプレートネットワーク420は、ニューラルネットワークを含み得る。いくつかの例では、テンプレートネットワーク420は、密なニューラルネットワークを含み得る。少なくとも1つの例では、テンプレートネットワーク420は、教師なし学習アルゴリズムを利用して訓練され得るが、任意のタイプの機械学習は、本開示と一致して使用され得る。
【0116】
様々な例において、軌道テンプレート406の第1の軌道テンプレート及び第1の軌道テンプレートに対応する第1のオブジェクトに関連付けられたオブジェクトごとの特徴418は、第1のオブジェクトに関連付けられた第1の予測軌道404を決定するために、第1の軌道ネットワーク402に入力され得る。いくつかの例では、軌道テンプレート406の第2の軌道テンプレート及び第2の軌道テンプレートに対応する第2のオブジェクトに関連付けられたオブジェクトごとの特徴418は、第2のオブジェクトに関連付けられた第2の予測軌道410を決定するために、第2の軌道ネットワーク408に入力されてもよい。
【0117】
軌道ネットワーク402及び408は、第1のオブジェクト及び第2のオブジェクトに関連付けられた予測軌道404及び410を出力するように構成され得る。いくつかの例では、予測軌道404及び410は、それぞれ第1のオブジェクト及び第2のオブジェクトに関連付けられ得る。そのような例では、第1の軌道ネットワーク402は、第1のオブジェクトに関連付けられた第1の予測軌道404を、それに関連付けられた軌道テンプレートに基づいて出力し得、第2の軌道ネットワーク408は、第2のオブジェクトに関連付けられた第2の予測軌道410を、それに関連付けられた軌道テンプレート406に基づいて出力し得る。いくつかの例では、第1の予測軌道404及び第2の予測軌道410は、例えばそれに関連付けられた異なる軌道テンプレート406に基づいて、第1のオブジェクトまたは第2のオブジェクトのうちの1つに関連付けられ得る。そのような例では、本明細書に記載の技術は、オブジェクトに関連付けられた予測をさらに改善し得る。例えば、第1のオブジェクトは、それに第1の軌道テンプレート(右折)及び第2の軌道テンプレート(左折)と関連付けられ得る。第1の予測軌道404は、第1のオブジェクトに関連付けられた第1の軌道テンプレートに基づいてもよく、第2の予測軌道410は、第1のオブジェクトに関連付けられた第2の軌道テンプレートに基づいてもよい。様々な例において、軌道ネットワーク402及び408は、ニューラルネットワークを含み得る。いくつかの例では、軌道ネットワーク402及び408は、密なニューラルネットワークを含み得る。軌道ネットワーク402及び408は、教師なし及び/または教師あり学習アルゴリズムを利用して訓練されてもよい。
【0118】
様々な例において、第1の軌道ネットワーク402は、第1の軌道テンプレートに関連付けられ得、第2の軌道ネットワーク408は、第2の(異なる)軌道テンプレートに関連付けられ得る。そのような例では、第1の軌道ネットワークは、第1の軌道テンプレートと関連付けられた訓練データを利用して訓練され得、第2の軌道ネットワークは、第2の軌道テンプレートと関連付けられた訓練データを利用して訓練され得る。いくつかの例では、第1の軌道ネットワーク402は、第1の軌道テンプレートと関連付けられた第1の分類(例えば、動きの分類、動きのクラス、右折、直進、左折など)と関連付けられ得、第2の軌道ネットワーク408は、第2の軌道テンプレートと関連付けられた第2の分類と関連付けられ得る。例えば、第1の軌道ネットワークは、右への予測された一般的な(例えば、粗い)移動に関連付けられた軌道テンプレートに関連付けられた予測軌道を決定するように訓練されてもよく、第2の軌道ネットワークは、左への予測された一般的な移動に関連付けられた軌道テンプレートに関連付けられた予測軌道を決定するように訓練されてもよいが、これは例示的な目的のための例にすぎず、そのように限定することを意図するものではない。
図3に例示されるようないくつかの例では、単一のネットワークは、1つまたは複数の軌道テンプレート406の予測軌道を決定するように構成され得る。いくつかの例では、単一のネットワークは、テンプレートネットワーク420によって出力される全ての軌道テンプレートの予測軌道を決定するように構成され得る。
【0119】
図1、2B、5、及び6は、本開示の実施形態による例示的なプロセスを示す。これらのプロセスは、論理フローグラフとして示され、それぞれの動作は、ハードウェア、ソフトウェア、またはそれらの組み合わせにおいて実装されることが可能である一連の動作を表す。ソフトウェアのコンテキストにおいて、動作は、1つまたは複数のプロセッサによって実行された場合に、列挙した動作を実行する1つまたは複数のコンピュータ可読記憶媒体に記憶されたコンピュータ実行可能命令を表す。一般に、コンピュータ実行可能命令は、具体的な機能を実行するか、または具体的な抽象データ型を実装するルーティン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。動作が説明される順序は、限定として解釈されることが意図されるわけではなく、任意の数の説明される動作が、プロセスを実装するために任意の順序で、及び/または並行して組み合わされることが可能である。
【0120】
図5は、本開示の例による、オブジェクトが車両の環境に存在することを決定し、オブジェクトに関連付けられた軌道テンプレート及び予測軌道を決定し、予測軌道に部分的に基づいて車両を制御するための例示的なプロセス500を示す図である。例えば、本明細書で説明されるように、プロセス500のうちの一部または全ては、
図2Aにおける1つまたは複数のコンポーネントによって実行され得る。例えば、プロセス500の一部または全ては、車両コンピューティングデバイス204及び/またはコンピューティングデバイス238によって実行されてもよい。
【0121】
動作502において、プロセスは、環境に関連付けられたセンサデータを受信することを含み得る。センサデータは、車両の1つまたは複数のセンサ及び/または1つまたは複数のリモートセンサによって捕捉され得る。例えば、センサデータは、ライダーセンサ、レーダーセンサ、画像センサ、飛行時間センサ、ソナーセンサなどのうちの1つまたは複数によって捕捉されるデータを含み得る。いくつかの例では、動作502は、複数のセンサを使用してセンサデータを取り込むことと、センサデータを環境の詳細かつ有益な表現に融合しまたは組み合わせることとを含み得る。例えば、センサデータは、バウンディングボックス情報、速度/加速度情報、分類等を含んでよいが、これらに限定されない。いくつかの例では、環境に関する追加データ(横断歩道の位置、車線境界など)を符号化し得る追加データ(マップデータなど)を受信し得る。
【0122】
動作504において、プロセスは、オブジェクトがセンサデータに表されるかどうかを決定することを含み得る。例えば、動作504は、センサデータの少なくとも一部を検出器に入力すること、または検出または知覚アルゴリズム(例えば、知覚コンポーネント222)にデータを提供して、環境内の1つまたは複数のオブジェクトを識別することを含み得る。オブジェクトの例は、車両、歩行者、自転車、スケートボード、スクーターなどを含むが、これらに限定されない。オブジェクトが検出されない場合(例えば、動作504において「いいえ」)、プロセスは、捕捉された追加のセンサデータに対する動作502に戻り得る。
【0123】
オブジェクトが検出されるという決定(例えば、動作504における「はい」)に基づいて、動作506でのプロセスは、センサデータに少なくとも部分的に基づいて、環境のトップダウンビューを表す画像を生成することを含み得、画像は、オブジェクトに関連付けられたバウンディングボックスと、オブジェクトに関連付けられた速度情報とを含む。いくつかの例では、画像は(速度情報の代わりにまたはそれに加えて)加速度情報を含み得る。
【0124】
画像に含めることができる追加情報には、限定されないが、バウンディングボックスに関連付けられたオブジェクトの分類を表すバウンディングボックスの色、x方向及びy方向におけるバウンディングボックスの速度(速度は、1つのチャネルまたは複数のチャネル内のベクトルとして、x速度及びy速度を異なるチャネルで表すことができる)、x方向及びy方向におけるオブジェクトの加速度(加速度は、1つのチャネルまたは複数のチャネル内のベクトルとして、x加速度及びy加速度を異なるチャネルで表すことができる)、バウンディングボックスに関連付けられたブリンカー状態(例えば、左折、右折、ブレーキ、後進、ハザード、ライトなしなど)、道路ネットワーク情報(例えば、車線、横断歩道、停止標識、交差点、交通信号などを示す意味ラベル)、交通信号状態(例えば、赤色光、黄色光、緑色光など)などが含まれ得る。そのような画像では、オブジェクト及び環境に関する意味情報は、本明細書で詳細に説明されるように、1つまたは複数のチャネルで符号化され得る。
【0125】
本明細書で説明されるように、動作506は、経時的な環境内のオブジェクトの挙動を表す複数の画像を生成することを含むことができる。
【0126】
動作508において、プロセスは、画像を機械学習モデルに入力することを含み得る。そのような機械学習モデルは、オブジェクトに関連付けられた軌道テンプレート及び予測軌道を生成するように訓練され得る。いくつかの例では、機械学習モデルは、(例えば、ヒートマップとして)複数の予測確率を生成するように訓練され得る。機械学習モデル、軌道テンプレート、予測軌道、ヒートマップ、及び予測確率の追加の詳細は、本開示を通して議論される。
【0127】
動作510において、プロセスは、軌道テンプレートまたは予測軌道のうちの少なくとも1つに少なくとも部分的に基づいて車両を制御することを含み得る。いくつかの例では、車両を制御することは、環境を通過するために自律走行車のステアリング、ブレーキ、及び/または加速度のうちの1つまたは複数を制御することを含み得る。様々な例において、動作510は、計画コンポーネント236などの計画コンポーネントに軌道テンプレート及び/または予測軌道を送信することを含み得る。そのような例では、計画コンポーネントは、オブジェクトに関連付けられた軌道テンプレートまたは予測軌道のうちの少なくとも1つに少なくとも部分的に基づいて、車両制御に関連付けられた1つまたは複数の車両軌道を決定し得る。いくつかの例では、軌道テンプレートまたは予測軌道のうちの少なくとも1つに基づく車両軌道は、軌道を生成する計画コンポーネント236が車両に近接するエンティティのアクションをより密接に予測し得るため、軌道テンプレートまたは予測軌道のうちの少なくとも1つなしで生成された車両軌道と比較して、より安全かつ/またはより滑らかな車両軌道を表し得る。
【0128】
図6は、本開示の例による、オブジェクトに関連付けられた共同履歴に基づいて、環境内の検出されたオブジェクトに関連付けられた予測軌道を決定するための例示的なプロセス600を示す図である。例えば、本明細書で説明されるように、プロセス600のうちの一部または全ては、
図2における1つまたは複数のコンポーネントによって実行され得る。例えば、プロセス600の一部または全ては、車両コンピューティングデバイス204及び/またはコンピューティングデバイス238によって実行されてもよい。
【0129】
動作602において、プロセスは、環境に関連付けられたセンサデータを受信することを含み得る。センサデータは、車両の1つまたは複数のセンサ及び/または1つまたは複数のリモートセンサによって捕捉され得る。例えば、センサデータは、ライダーセンサ、レーダーセンサ、画像センサ、飛行時間センサ、ソナーセンサなどのうちの1つまたは複数によって捕捉されるデータを含み得る。いくつかの例では、動作602は、複数のセンサを使用してセンサデータを捕捉することと、センサデータを環境の詳細かつ有益な表現に融合うぃまたは組み合わせることとを含み得る。例えば、センサデータは、バウンディングボックス情報、速度/加速度情報、分類等を含んでよいが、これらに限定されない。いくつかの例では、環境に関する追加データ(横断歩道の位置、車線境界など)を符号化し得る追加データ(マップデータなど)を受信し得る。
【0130】
動作604において、プロセスは、1つまたは複数のオブジェクトがセンサデータ内に表されるかどうかを決定することを含み得る。例えば、動作604は、センサデータの少なくとも一部を検出器に入力すること、または検出もしくは知覚アルゴリズム(例えば、知覚コンポーネント222)にデータを提供して、環境内の1つまたは複数のオブジェクトを識別することを含み得る。オブジェクトの例は、車両、歩行者、自転車、スケートボード、スクーターなどを含むが、これらに限定されない。オブジェクトが検出されない場合(例えば、動作604において「いいえ」)、プロセスは、追加のセンサデータを取り込むために動作602に戻り得る。
【0131】
オブジェクトが検出されるという決定(例えば、動作604における「はい」)に基づいて、動作606でプロセスは、センサデータに少なくとも部分的に基づいて、環境内のオブジェクトの共同履歴(例えば、個々の動き及び/またはオブジェクト間の相互作用の組み合わされた履歴)を表す特徴マップを生成することを含み得る。様々な例において、特徴マップは、本明細書に記載されるように、複数のマルチチャネル画像の組み合わせを含み得る。オブジェクトの共同履歴は、第1のオブジェクトが第2のオブジェクトに道を譲ることの表示などの、環境内のオブジェクト間の相互作用を含み得る。
【0132】
動作608において、プロセスは、特徴マップに少なくとも部分的に基づいて、オブジェクトの第1のオブジェクトに関連付けられた第1の特徴ベクトル及びオブジェクトの第2のオブジェクトに関連付けられた第2の特徴ベクトルを決定することを含み得る。第1の特徴ベクトル及び第2の特徴ベクトルは、それぞれ、第1のオブジェクト及び第2のオブジェクトと関連付けられた運動を表し得る。様々な例において、第1の特徴ベクトルは、第1のオブジェクトに関連付けられた第1の空間位置に基づいてもよく、第2の特徴ベクトルは、第2のオブジェクトに関連付けられた第2の空間位置に基づいてもよい。
【0133】
動作610において、プロセスは、第1の特徴ベクトル及び第2の特徴ベクトルに少なくとも部分的に基づいて、第1のオブジェクトに関連付けられた第1の軌道テンプレート及び第2のオブジェクトに関連付けられた第2の軌道テンプレートを決定することを含み得る。第1の軌道テンプレート及び第2の軌道テンプレートは、それぞれ、第1のオブジェクト及び第2のオブジェクトに関連付けられた動きのインテントの分類を表し得る。例えば、第1の軌道テンプレートは、(時間T=0からの)将来の第1のオブジェクトの一般的な(または粗い)意図された動きを表し得、第2の軌道テンプレートは、将来の第2のオブジェクトの一般的な意図された動きを表し得る。いくつかの例では、軌道テンプレートは、グリッド内の1つまたは複数の将来の位置によって表されてもよく、将来のオブジェクトの潜在的な位置をビニングすること、T=0の前の時間、時間T=0において、等で速度分析を実行すること、及び/またはオブジェクトの過去の位置及び/または潜在的な位置(例えば、ビニングされた、またはそうでない)上のクラスタリングアルゴリズムを利用することによって決定されてもよい。
【0134】
様々な例において、第1の軌道テンプレート及び第2の軌道テンプレートは、
図3のテンプレートネットワーク316及び/または
図4のテンプレートネットワーク420などのテンプレートネットワークを利用して決定され得る。テンプレートネットワークは、1つまたは複数の軌道テンプレートを出力するように構成されたニューラルネットワーク(例えば、CNN)を表し得る。テンプレートネットワークは、入力特徴ベクトルに基づいて軌道テンプレートを出力し得る。いくつかの例では、テンプレートネットワークは、センサデータ、マルチチャネル画像、及び/またはそこから決定された特徴マップに基づいて、軌道テンプレートを出力するように構成され得る。
【0135】
動作612において、プロセスは、第1の特徴ベクトル及び第1の軌道テンプレートに少なくとも部分的に基づいて、第1のオブジェクトに関連付けられた第1の予測軌道を、及び第2の特徴ベクトル及び第2の軌道テンプレートに少なくとも部分的に基づいて、第2のオブジェクトに関連付けられた第2の予測軌道を決定することを含み得る。様々な例において、第1の予測軌道及び第2の予測軌道は、1つまたは複数のニューラルネットワークを利用して決定され得る。いくつかの例では、ネットワークは、密なニューラルネットワークを含み得る。
【0136】
いくつかの例では、単一のニューラルネットワークを利用して、第1の予測軌道及び第2の予測軌道を決定し得る。そのような例では、ニューラルネットワークは、意図に関係なく軌道を決定するように構成され得る(例えば、1つのニューラルネットワークは、全ての軌道テンプレートに関連付けられた軌道を決定する)。様々な例において、第1の予測軌道を決定するために第1のニューラルネットワークを利用し得、第2の予測軌道を決定するために第2のニューラルネットワークを利用し得る。そのような例では、第1の予測軌道及び第2の予測軌道が基になり得る第1の軌道テンプレート及び第2の軌道テンプレートは、第1のオブジェクト及び第2のオブジェクトのインテントの異なる分類を表し得る。例えば、第1のオブジェクトは、左への移動を含む第1の軌道テンプレートとそれに関連付けられ得、第2のオブジェクトは、右への移動を含む第2の軌道テンプレートとそれに関連付けられ得る。任意の他の動き(例えば、直進、わずかな右、わずかな左、鋭い右、鋭い左など)が企図されるが。
[例示的な項]
A:自律走行車のセンサによって捕捉された環境のセンサデータを受信することと、センサデータに少なくとも部分的に基づいて、環境のトップダウンビューを表すマルチチャネル画像を生成することであって、前記マルチチャネル画像は、前記環境内のオブジェクトに関連付けられたバウンディングボックスを表すことと、前記マルチチャネル画像を機械学習モデルに入力することと、前記機械学習モデルから、前記オブジェクトに関連付けられた動きのクラスを示す軌道テンプレート及び前記オブジェクトに関連付けられた予測軌道を受信することと、前記軌道テンプレートまたは前記予測軌道のうちの少なくとも1つに少なくとも部分的に基づいて前記自律走行車を制御することと、を含む、コンピュータ実装方法。
【0137】
B:前記オブジェクトが第1のオブジェクトであり、前記マルチチャネル画像が第2のオブジェクトに関連付けられたデータを含み、前記軌道テンプレートが第1の軌道テンプレートであり、前記第1の軌道テンプレート及び第2の軌道テンプレートが、前記第1のオブジェクトと前記第2のオブジェクトとの間の相互作用に少なくとも部分的に基づいている、段落Aに記載のコンピュータ実装方法。
【0138】
C:前記機械学習モデルが、前記環境内の前記オブジェクトの履歴に少なくとも部分的に基づいて決定された特徴マップを出力する第1のニューラルネットワークと、前記特徴マップに関連付けられた特徴ベクトルに少なくとも部分的に基づいて前記軌道テンプレートを出力する第2のニューラルネットワークと、前記軌道テンプレート及び前記特徴ベクトルに少なくとも部分的に基づいて前記予測軌道を出力する第3のニューラルネットワークと、を含む、段落Aまたは段落Bのいずれかに記載のコンピュータ実装方法。
【0139】
D:前記第2のニューラルネットワークは、前記オブジェクトに関連付けられたヒートマップを出力するようにさらに構成され、前記自律走行車は、前記ヒートマップに少なくとも部分的に基づいてさらに制御される、段落Cに記載のコンピュータ実装方法。
【0140】
E:前記第3のニューラルネットワークが、軌道テンプレートの第1の分類に少なくとも部分的に基づいて前記予測軌道を出力し、前記機械学習モデルが、前記軌道テンプレート及び前記特徴ベクトルの第2の分類に少なくとも部分的に基づいて前記予測軌道を出力する第4のニューラルネットワークをさらに含み、前記方法が、前記軌道テンプレートに関連付けられた分類に少なくとも部分的に基づいて、前記軌道テンプレートを前記第3のニューラルネットワークまたは前記第4のニューラルネットワークの1つまたは複数に入力することをさらに含む、段落Cに記載のコンピュータ実装方法。
【0141】
F:プロセッサと、実行されると、プロセッサに、段落AからEのいずれか1つに記載のコンピュータ実装方法を実行させる命令を記憶する非一時的なコンピュータ可読媒体とを備えるシステムまたはデバイス。
【0142】
G:処理のための手段と、前記処理のための手段に結合された記憶のための手段とを備え、前記記憶のための手段は、段落AからEのいずれか1つに記載のコンピュータ実装方法を実行するように1つまたは複数のデバイスを構成する命令を含む、システムまたはデバイス。
【0143】
H:1つまたは複数のプロセッサと、前記1つまたは複数のプロセッサによって実行可能な命令を記憶する1つまたは複数のコンピュータ可読媒体と、を備え、前記命令は、実行されると前記システムに、環境内のオブジェクトを表すデータを受信することと、前記データに少なくとも部分的に基づいて、前記環境のトップダウンビューを表す画像を生成することであって、前記画像が前記オブジェクト及び前記オブジェクトに関連付けられた動き情報を表す、前記生成することと、前記画像を機械学習モデルに入力することと、前記機械学習モデルから、前記オブジェクトに関連付けられた軌道テンプレート及び予測軌道を受信することであって、前記軌道テンプレートが前記オブジェクトに関連付けられた動きのクラスを示す、前記受信することと、を含む動作を実行させる、前記コンピュータ可読媒体。
【0144】
I:前記予測軌道が、前記オブジェクトに関連付けられた可能性のある位置の予測確率を含むヒートマップとして表される、段落Hに記載のシステム。
【0145】
J:前記機械学習モデルが、特徴マップを出力する第1のニューラルネットワークと、前記オブジェクトに関連付けられた前記特徴マップの一部に少なくとも部分的に基づいて前記軌道テンプレートを出力する第2のニューラルネットワークと、前記軌道テンプレートに少なくとも部分的に基づいて前記予測軌道を出力する第3のニューラルネットワークと、を含む、段落Hまたは段落Iのいずれかに記載のシステム。
【0146】
K:前記第3のニューラルネットワークは、複数の軌道テンプレートに少なくとも部分的に基づいて前記予測軌道を出力する、段落Jに記載のシステム。
【0147】
L:前記第3のニューラルネットワークは、前記軌道テンプレートの第1の分類に少なくとも部分的に基づいて前記予測軌道を出力し、前記機械学習モデルは、前記軌道テンプレートの第2の分類に少なくとも部分的に基づいて前記予測軌道を出力する第4のニューラルネットワークをさらに含む、段落Jに記載のシステム。
【0148】
M:前記オブジェクトデータは、前記環境内の2つ以上のオブジェクトに関連付けられたデータを含み、前記特徴マップは、前記環境内で決定された前記2つ以上のオブジェクトの共同履歴データを含む、段落Jに記載のシステム。
【0149】
N:前記画像は、前記環境内の追加のオブジェクトの追加のオブジェクト情報を含む1つまたは複数のチャネルをさらに備え、前記画像は、現在の時間の前の1つまたは複数の以前の時間に関連付けられた複数の画像のうちの1つである、段落HからMのいずれか1つに記載のシステム。
【0150】
O:前記画像は、前記オブジェクトと前記追加オブジェクトとの間の相互作用を表し、前記予測軌道及び追加オブジェクトに関連付けられた少なくとも1つの他の予測軌道は、前記相互作用に少なくとも部分的に基づく、段落Nに記載のシステム。
【0151】
P:前記動作が、前記オブジェクトに関連付けられた前記軌道テンプレートまたは前記予測軌道のうちの少なくとも1つに少なくとも部分的に基づいて前記システムに車両を制御させることをさらに含む、段落HからOのいずれか1つに記載のシステム。
【0152】
Q:前記画像が、オブジェクトに関連付けられた意味データ、前記オブジェクトに関連付けられた速度データ、前記オブジェクトに関連付けられた加速度データ、前記環境に関連付けられたシナリオデータ、前記環境に関連付けられた道路ネットワーク、または前記環境内の車両に関連付けられた車両データのうちの少なくとも1つを含むマルチチャネル画像である、段落HからPのいずれか1つに記載のシステム。
【0153】
R:前記機械学習モデルが、クラスタリングアルゴリズムに少なくとも部分的に基づいて前記軌道テンプレートを決定し、回帰アルゴリズムに少なくとも部分的に基づいて前記予測軌道を決定するように訓練される、段落HからQのいずれか1つに記載のシステム。
【0154】
S:実行されると、1つまたは複数のプロセッサに、環境内のオブジェクトを表すデータを受信することと、前記データに少なくとも部分的に基づいて、前記環境の少なくともトップダウンビューを表す画像を生成することと、前記画像を機械学習モデルに入力することと、前記機械学習モデルから、前記オブジェクトに関連付けられた軌道テンプレート及び予測軌道を受信することであって、前記軌道テンプレートが前記オブジェクトに関連付けられた動きのクラスを示す、前記受信することと、を含む動作を実行させる命令を記憶する、1つまたは複数の非一時的コンピュータ可読媒体。
【0155】
T:前記画像は、オブジェクトに関連付けられた意味データ、前記オブジェクトに関連付けられた速度データ、前記オブジェクトに関連付けられた加速度データ、前記環境に関連付けられたシナリオデータ、前記環境に関連付けられた道路ネットワーク、または前記環境内の車両に関連付けられた車両データのうちの少なくとも1つを含むマルチチャネル画像である、段落Sに記載の1つまたは複数の非一時的コンピュータ可読媒体。
【0156】
U:前記機械学習モデルが、前記軌道テンプレートを出力する第1のニューラルネットワークと、前記出力軌道テンプレートに少なくとも部分的に基づいて前記予測軌道を出力する少なくとも1つの第2のニューラルネットワークとを含む、段落Sまたは段落Tのいずれかに記載の1つまたは複数の非一時的コンピュータ可読媒体。
【0157】
V:前記動作が、前記オブジェクトに関連付けられた前記軌道テンプレートまたは前記予測軌道のうちの少なくとも1つに少なくとも部分的に基づいて車両を制御することをさらに含む、段落SからUのいずれか1つに記載の1つまたは複数の非一時的なコンピュータ可読媒体。
【0158】
上記で説明される例示的な項は、1つの特定の実装形態に関して説明される一方で、本明細書のコンテキストにおいて、例示的な項の内容は、方法、デバイス、システム、コンピュータ可読媒体、及び/または別の実装形態を介して実装されることも可能であることを理解されたい。さらに、例AからVのいずれかは、単独で、または例AからVの他の1つもしくは複数の例と組み合わせて実装され得る。
(結論)
本明細書で説明される技術の1つまたは複数の例が説明された一方で、それらの様々な変形、追加、置換、及び等価物が、本明細書で説明される技術の範囲内に含まれる。
【0159】
例の説明では、請求項に記載される主題の特定の例を示す、それらの一部を形成する添付図面に対する参照が行われている。他の例を使用することができ、構造的変更などの変更または代替を行うことできることを理解されたい。このような例、変更、または変形は、必ずしも、意図された請求項に記載の主題に関する範囲からの逸脱ではない。本明細書で説明されるステップは、特定の順序で提示されることが可能である一方で、場合によっては、順序付けは、変更されることが可能であり、その結果、説明されるシステム及び方法の機能を変更することなく、特定の入力が異なる時間で、または異なる順序で提供されることが可能である。開示された手順はまた異なる順序で実行できる。さらに、本明細書における様々な計算は、開示される順序で実行される必要はなく、計算の代替の順序を用いる他の例が容易に実装されることが可能である。順序変更されることに加えて、計算は、同一の結果を有する部分的計算に分解されることも可能である。
【手続補正書】
【提出日】2022-09-20
【手続補正1】
【補正対象書類名】図面
【補正方法】変更
【補正の内容】
【国際調査報告】