(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-10
(45)【発行日】2024-10-21
(54)【発明の名称】オクルージョン予測および軌道評価
(51)【国際特許分類】
B60W 40/02 20060101AFI20241011BHJP
G08G 1/16 20060101ALI20241011BHJP
B60W 60/00 20200101ALI20241011BHJP
【FI】
B60W40/02
G08G1/16 C
B60W60/00
(21)【出願番号】P 2021540184
(86)(22)【出願日】2020-01-09
(86)【国際出願番号】 US2020012967
(87)【国際公開番号】W WO2020146659
(87)【国際公開日】2020-07-16
【審査請求日】2023-01-10
(32)【優先日】2019-01-11
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】518156417
【氏名又は名称】ズークス インコーポレイテッド
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】ウィリアム アンソニー シルヴァ
(72)【発明者】
【氏名】チャン ワン
【審査官】稲本 遥
(56)【参考文献】
【文献】米国特許出願公開第2018/0095465(US,A1)
【文献】特開2009-086788(JP,A)
【文献】米国特許出願公開第2013/0245877(US,A1)
【文献】国際公開第2018/003056(WO,A1)
【文献】特開2010-079565(JP,A)
【文献】特開2015-230678(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B60W 10/00-10/30
30/00-60/00
G08G 1/00-99/00
(57)【特許請求の範囲】
【請求項1】
方法であって、
環境内
で車両が従う軌道を受け取るステップと、
前記環境内の
第1のオブジェクト
に対する第1の予
測位置を決定するステップであって、前記
第1の予
測位置は、将来の時
点に関連付けられるステップと、
前記環境内の第2のオブジェクトに対する第2の予測位置を決定するステップであって、前記第2の予測位置は、前記将来の時点に関連付けられる、ステップと、
前記
第1の予
測位置および前記軌道に少なくとも部分的に基づいて、前記将来の時
点にお
いて前記
第1のオブジェクトに関連付けられ
る第1の被オクルージョ
ン領域を決定するステップと、
前記第2の予測位置および前記軌道に少なくとも部分的に基づいて、前記将来の時点において前記第2のオブジェクトに関連付けられる第2の被オクルージョン領域を決定するステップと、
前記
第1の被オクルージョ
ン領域
および前記第2の被オクルージョン領域に少なくとも部分的に基づいて
、前記車両を制御するステップと
を備える
、方法。
【請求項2】
前記
第1の被オクルージョ
ン領域に関連付けられるオクルージョンスコアを決定するステップ
をさらに備え、
前記オクルージョンスコアは、少なくとも部分的にマップデータに基づ
く、
請求項1に記載の方法。
【請求項3】
前記将来の時
点における
前記第1の被オクルージョン領域に関連付けられるオクルージョングリッドのオクルージョンフィールドのオクルージョン状態および占有状態を決定するステップ
をさらに備える、請求項2に記載の方法。
【請求項4】
前記
第1の被オクルージョ
ン領域に関連付けられる属性に基づいて、前記
第1の被オクルージョ
ン領域のオクルージョンスコアを決定するステップ
をさらに備え、
前記車両を制御するステップは、前記
第1の被オクルージョ
ン領域の前記オクルージョンスコアにさらに基づく、
請求項1に記載の方法。
【請求項5】
前記第1の
被オクルージョ
ン領域に関連付けられる第1の属性に基づいて、前記第1の
被オクルージョ
ン領域
に対する第1のオクルージョンスコアを決定するステップと、
前記第2の
被オクルージョ
ン領域に関連付けられる第2の属性に基づいて、前記第2の
被オクルージョ
ン領域
に対する第2のオクルージョンスコアを決定するステップと、
前記第1のオクルージョンスコアおよび前記第2のオクルージョンスコアに少なくとも部分的に基づいて
、前記軌道
に対する軌道スコアを決定
するステップと
をさらに備え、
前記車両を制御するステップは、前記軌道
に対する前記軌道スコアにさらに基づく、
請求項
1に記載の方法。
【請求項6】
前記軌道は、第1の軌道であり、前記軌道スコアは、第1の軌道スコアであり、
前記方法は、
第2の軌道
に対する第2の軌道スコアを決定するステップと、
選択された軌道として、前記第1の軌道スコアまたは前記第2の軌道スコアに少なくとも部分的に基づいて、前記第1の軌道または前記第2の軌道を選択するステップと
を備え、
前記車両を制御するステップは、前記選択された軌道に少なくとも部分的にさらに基づく、
請求項
5に記載の方法。
【請求項7】
前記第1の属性は、
前記第1の
被オクルージョ
ン領域に関連付けられるマップデータ、
前記第1の
被オクルージョ
ン領域内の1つまたは複数のオブジェクト、
前記軌道に関連付けられるポイントと、前記第1の
被オクルージョ
ン領域との間の距離、
前記第1の
被オクルージョ
ン領域のサイズ、
前記第1の
被オクルージョ
ン領域に関連付けられる期間、または
前記車両に関連付けられる進行方向
のうちの1つまたは複数に関連付けられる、請求項
5または
6に記載の方法。
【請求項8】
前記
第1の予
測位置
または前記第2の予測位置は、
ライダーセンサ、レーダセンサ、画像センサ、または飛行時間センサのうちの1つまたは複数から受信
されたセンサデータ、
ヒートマップであって、前記
第1のオブジェクト
または前記第2のオブジェクトを表現する前記ヒートマップを生成するためにトレーニングされた機械学習モデルから受け取られた
、ヒートマップ、
前記
第1のオブジェクト
または前記第2のオブジェクトの分類
、初期位置、もしく
は速度に少なくとも部分的に基づく確率マップ、または
前記
第1のオブジェクト
または前記第2のオブジェクトに関連付けられる物理学ベースのモデル
のうちの1つまたは複数に少なくとも部分的に基づく、請求項1ないし
7のいずれか一項に記載の方法。
【請求項9】
コンピュータ上で実行され
ると、請求項1ないし
8のいずれか一項に記載の方法を実装する
、符号化された命令を
含む、コンピュータプログラム。
【請求項10】
システムであって、
1つまたは複数のプロセッサと、
実行され
ると、前記1つまたは複数のプロセッサに、
環境内
で車両が従うための第1の軌道を受け取ることと、
前記環境内
で前記車両が従うための第2の軌道を受け取ることと、
将来の時
点における前記環境内のオブジェクトの予
測位置を決定することと、
前記第1の軌道および前記オブジェクトの前記予
測位置に少なくとも部分的に基づいて、前記オブジェクトに関連付けられる第1の
被オクルージョ
ン領域を決定することと、
前記第2の軌道および前記オブジェクトの前記予
測位置に少なくとも部分的に基づいて、前記オブジェクトに関連付けられる第2の
被オクルージョ
ン領域を決定することと、
前記第1の
被オクルージョ
ン領域および前記第2の
被オクルージョ
ン領域に少なくとも部分的に基づいて、前記車両を制御することと
を含む演算を実行させるコンピュータ実行可
能命令を格納する
、1つまたは複数の非一時
的コンピュータ可読媒体と
を備える、システム。
【請求項11】
前記予
測位置は、第1の予
測位置であり、前記将来の時
点は、第1の時
点であり、前記演算は、
前記環境内の前記オブジェクトの第2の予
測位置を決定することであって、前記第2の予
測位置は、前記第1の時
点の後の第2の時
点に関連付けられる
、ことと、
前記第1の軌道および前記第2の予
測位置に少なくとも部分的に基づいて、前記オブジェクトに関連付けられる第3の
被オクルージョ
ン領域を決定することと
をさらに含み、
前記車両を制御することは、少なくとも部分的に前記第3の
被オクルージョ
ン領域にさらに基づく、
請求項
10に記載のシステム。
【請求項12】
前記オブジェクトは、静止オブジェクトであり、前記第1の予
測位置は、前記第2の予
測位置に対応するか、または、
前記オブジェクトは、動的オブジェクトであり、前記第1の予
測位置は、前記第2の予
測位置とは異なる、
請求項
11に記載のシステム。
【請求項13】
前記演算は、
前記環境に関連付けられるマップデータに少なくとも部分的に基づいて、前記第1の
被オクルージョ
ン領域のオクルージョンスコアを決定することをさらに含み、
前記車両を制御することは、前記オクルージョンスコアにさらに基づく、
請求項
10~
12のいずれか一項に記載のシステム。
【請求項14】
前記環境内の前記オブジェクトの前記予
測位置を決定することは、
ヒートマップであって、前記オブジェクトを表現する前記ヒートマップを生成するためにトレーニングされた機械学習モデルから受け取られたヒートマップ、
前記オブジェクトの分類、前記オブジェクトの初期位置、もしくは前記オブジェクトの速度に少なくとも部分的に基づく確率マップ、または
前記オブジェクトに関連付けられる物理学ベースのモデル
のうちの少なくとも
一つに部分的
に基づく、請求項
10ないし
13のいずれか一項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明のさまざまな例示的な実施形態は、オクルージョン予測および軌道評価に関する。
【背景技術】
【0002】
本特許出願は、2019年1月11日に出願された米国実用特許出願第16/246,208号の優先権を主張する。出願番号第16/246,208号は、参照により本明細書に完全に組み込まれている。
【0003】
様々な方法、装置、およびシステムが、自律車両によって、様々な静的オブジェクトおよび動的オブジェクトを含む環境を通じてそのような自律車両を案内するために利用される。例えば、自律車両は、ルートプランニング方法、装置、およびシステムを利用して、他の移動している車両(自律またはそれ以外)、移動している人々、静止している建物などを有する過密エリアを通じて自律車両を案内する。ある例において、自律車両は、自律車両が環境内を横断するための複数の潜在的なルートを生成し得るが、そのようなルート間で選択することは、課題を提示し得る。
【図面の簡単な説明】
【0004】
詳細な説明は、添付の図を参照しつつ説明される。図において、参照番号の左端の数字は、その参照番号が最初に現われる図を識別する。異なる図における同じ参照番号の使用は、類似または同一の構成要素または特徴を示す。
【0005】
【
図1】本開示の実施形態による、センサデータをキャプチャし、車両のための軌道および環境内のオブジェクトに関連付けられる予測された軌道を受け取り、予測されたオクルージョンされる領域を決定し、予測されたオクルージョンされる領域に少なくとも部分的に基づいて車両を制御するための例示的なプロセスの絵入りフロー図である。
【
図2】本開示の実施形態による、静的オブジェクトに関連付けられる、予測されたオクルージョンされる領域に基づいて、車両の軌道を評価する例の図である。
【
図3】本開示の実施形態による、動的オブジェクトの軌道に関連付けられる、予測されたオクルージョンされる領域に基づいて、車両の軌道を評価する例の図である。
【
図4】本開示の実施形態による、動的オブジェクトに関連付けられる、予測されたオクルージョンされる領域に基づいて、車両の多様な軌道を評価する例の図である。
【
図5B】本開示の実施形態による、経時的なオブジェクトに関連付けられる、予測されたオクルージョンされる領域に基づいて、車両の第1の軌道を評価する例の図である。
【
図5C】本開示の実施形態による、経時的なオブジェクトに関連付けられる、予測されたオクルージョンされる領域に基づいて、車両の第2の軌道を評価する例の図である。
【
図6】本開示の実施形態による、オブジェクトに関連付けられる予測された軌道、および車両軌道に対するそれぞれのオブジェクトに関連付けられる予測されたオクルージョンされる領域に基づいて、車両のための軌道を評価し、車両軌道に対するオクルージョンスコアを決定し、オクルージョンスコアに基づいて車両を制御する例示的なプロセスの絵入りフロー図である。
【
図7】本明細書において説明される技法を実装するための例示的なシステムのブロック図を描く図である。
【
図8】本開示の実施形態による、センサデータをキャプチャし、オブジェクトについての予測された位置を決定し、自律車両が環境を横断するための軌道を決定し、異なる車両軌道に基づいて、オブジェクトについての予測された位置に関連付けられる予測されたオクルージョンされる領域を決定し、オクルージョンされる領域に関連付けられるコストに基づいて軌道を選択し、選択された軌道に基づいて自律車両を制御する例示的なプロセスを描く図である。
【発明を実施するための形態】
【0006】
本開示は、軌道に関連付けられる予測されたオクルージョンされる領域に基づいて、軌道を評価することに向けられており、予測されたオクルージョンされる領域は、環境内のオブジェクトの予測された位置に対して決定される。例えば、(自律車両などの)車両のセンサは、環境のセンサデータをキャプチャすることができ、センサデータは、車両とは別個のオブジェクト、例えば、他の車両、歩行者、建物、植物などを含んでよい。環境のセンサカバレッジは、環境内の障害物に基づいて限定される(オクルージョンされる)ことがある。車両に関連付けられるプランニングシステムは、そのようなオブジェクトを避けてナビゲートするために、環境内で車両が従うべき軌道を生成することができる。車両に関連付けられるオクルージョンシステムは、環境内で車両が従うべき軌道および/または検出されたオブジェクトに関連付けられる予測された軌道に基づいて、オブジェクトに関連付けられる予測されたオクルージョンされる領域を決定することができる。
【0007】
静的オブジェクト(例えば、駐車中の自動車、建物など)の場合、オクルージョンシステムは、車両軌道に沿った様々なポイントについての予測されたオクルージョンされる領域を決定することができる。動的オブジェクト(例えば、環境内の他の車両)の場合、オクルージョンシステムは、オブジェクトに関連付けられる予測された軌道を受け取ることができ、環境内のオブジェクトに関連付けられる予測されたオクルージョンされる領域を決定することができる。オクルージョンシステムは、環境内で車両が従うべき複数の軌道に関連付けられる、予測されたオクルージョンされる領域を決定することができる。ある例において、予測されたオクルージョンされる領域は、様々なコストまたはオクルージョンスコアに関連付けられることが可能であり、これらは、予測されたオクルージョンされる領域のサイズ、評価されている特定の軌道に沿ったオブジェクトによってオクルージョンされるエリアの重要性などに基づいてよい。オクルージョンスコアは、軌道に沿った複数の将来の時間について決定されてもよく、オクルージョンスコアは、軌道スコアを決定するために加算され、または集約されてもよい。技法は、複数の軌道に対する軌道スコアを決定するために並行して実行されることが可能であり、軌道は、軌道スコアに基づいて複数の軌道から選択されてもよい。選択された軌道は、車両を制御するために使用されることが可能であり、環境を横断する。
【0008】
車両によってキャプチャされるセンサデータは、ライダーデータ、レーダデータ、画像データ、飛行時間データ、ソナーデータなどを含むことができる。ある場合において、センサデータは、環境内のオブジェクトのタイプ(例えば、車両、歩行者、自転車、動物、駐車中の自動車、樹木、建物など)を決定するように構成される知覚システムに対して提供されることができる。さらに、知覚システムは、センサデータに基づいて、環境内のオブジェクトに関する移動情報決定することができる。センサデータおよびセンサデータに基づいた任意のデータは、環境のトップダウンビュー(例えば、1つまたは複数のチャネルを有するトップダウン画像)において表現されることができる。例えば、画像は、オブジェクトの範囲(例えば、オブジェクトの長さおよび幅)、ならびに/またはオブジェクトの分類(例えば、車両、歩行者など)だけでなく、環境内のオブジェクトの位置も表現する2次元境界ボックスとして、オブジェクトを表現することができる。ある例において、付加的な画像チャネルは、速度、加速度、それらに関連付けられる不確実性などを含んでもよい。速度情報などの移動情報は、境界ボックスに関連付けられる速度ベクトルとして表現されることが可能であるが、他の表現も想定される。また、画像は、道路網情報(例えば、車線、横断歩道、一旦停止線、車線分離帯、一時停止標識、交差点、信号機などを示す意味論的なラベル)、信号機ステータス(例えば、赤信号、黄信号、青信号など)、オブジェクトに関連付けられる境界ボックス、x方向、y方向および/またはz方向におけるオブジェクトの速度、x方向およびy方向におけるオブジェクトの加速度、オブジェクトの方向指示器ステータス(例えば、左折、右折、ブレーキ、後進、ハザード、無灯火など)などのうちの1つまたは複数を表現することができるが、これらに限定されない。
【0009】
環境内のオブジェクトを表現する、車両によってキャプチャされたセンサデータは、車両の特定の軌道に関する、環境内のオブジェクトに関連付けられる予測されたオクルージョンされる領域を生成するために使用されることができる。例えば、オクルージョンシステムは、将来の時点におけるオブジェクトの推定される位置に関連する、予測されたオクルージョンされる領域に関連付けられるオクルージョングリッドを決定することができる。オブジェクトの位置は、オブジェクト分類、位置、速度、加速度、センサ不確実性などに基づいて、オブジェクトの取り得る位置を決定するために経時的に評価されることができる。レイキャスティングなどの技法は、オクルージョングリッドによって表現される環境のどのエリアが、車両の位置に関して経時的にオクルージョンされるかを決定するために使用されることができる。ある例において、オクルージョンを決定するための異なる技法が、様々なセンサ様式に基づいて使用されることができる。非限定的な例として、レイキャスティングは、ライダーセンサについてのオクルージョンを決定するために使用されてもよいのに対して、カメラ行列を使用する画像投影は、画像センサのオクルージョンを決定するために使用されてもよい。オクルージョングリッドは、3次元とすることができ、環境内のオブジェクトの体積を表すボクセルでオブジェクトの予測を表現することができる。オクルージョングリッドを生成するための技法は、例えば、「Occlusion Aware Planning」と題され、2018年6月18日に出願された米国特許出願第16/011,436号において見出されることが可能であり、これは、その全体が参照によって本明細書に組み込まれている。
【0010】
車両が環境を横断するにつれて、プランニングシステムは、時間の進行と共に車両が従い得る多様な取り得る軌道を生成することができる。軌道は、例えば、前方へ移動すること、後方へ移動すること、左へ移動すること、右へ移動すること、斜めに移動すること、停止すること、加速すること、減速すること、または、車両内の搭乗者および/もしくは貨物が所望の目的地に他の方法で到達するための安全で効率的な搭乗を提供するための移動パターンの任意の組み合わせを含んでよい。プランニングシステムは、多様な取り得る軌道を並行して生成することができ、車両が従うべき軌道を選択する前に、安全性、効率、快適さ、および/または他の所望の成果について、各軌道を評価することができる。
【0011】
オクルージョンシステムは、車両が環境を通じて従うべき軌道を選択する際に使用するためのオクルージョン情報を、プランニングシステムに提供することができる。例えば、オクルージョンシステムは、車両が第1の軌道に従うにつれてオブジェクトによって引き起こされる第1の予測されたオクルージョンされる領域を決定することができ、ただし、第1の予測されたオクルージョンされる領域は、車両が第1の軌道に従うときの、車両に関するオブジェクトの予測された位置に基づく。同様に、およびある例において並行して、オクルージョンシステムは、車両が第1の軌道と異なる第2の軌道に従うにつれて、オブジェクトによって引き起こされる第2の予測されたオクルージョンされる領域も決定することができる。第2の予測されたオクルージョンされる領域も、車両に関するオブジェクトの予測された位置に基づいてよいが、車両が第2の軌道に従うときのものである。
【0012】
例示のために、対向車があり得る交差点の一部を車両が観察することをオブジェクト(例えば、駐車中の自動車)が遮蔽している交差点に、車両が近づく状況を考えてみる。車両のための第1の軌道は、交差点において待機してよく、車両のための第2の軌道は、交差点内へ前方に徐行してよい。オクルージョンシステムは、第1の軌道に従って交差点においては待機する間の、駐車中の自動車についての予測されたオクルージョンされる領域と、第2の軌道に沿って前方へ徐行することに関連付けられる、駐車中の自動車のための予測されたオクルージョンされる領域とを生成することができる。第1の軌道および第2の軌道についての予測されたオクルージョンされる領域に少なくとも部分的に基づいて、車両は、2つの軌道間でより効率的に選択することができる(例えば、交差点の最適な視認性をもたらす)。
【0013】
オクルージョンシステムは、車両が軌道に従うにつれて、環境内の様々なオブジェクトによって引き起こされるオクルージョンに対して、1つまたは複数のオクルージョンスコアを生成することができる。オクルージョンスコアは、(例えば、横断歩道、私道などを表現する)マップデータなどと共に、オクルージョンに関連付けられる属性、例えば、オブジェクトによってオクルージョンされる環境の割合(および/または、逆に、オクルージョンされない環境の割合)、オブジェクトに関する視認性距離(例えば、オブジェクトが車両からどのくらい近いか、または遠いか)、オクルージョンされる領域は軌道の重要な領域を妨げるかどうか(例えば、オクルージョンされる領域が、接近してきている対向車情報を含む場合)の組み合わせのうちの1つまたは複数などに基づいてよい。ある例において、オクルージョンシステムは、車両が採用し得る様々な取り得る軌道に対する軌道スコアを決定することができ、ただし、軌道スコアは、環境内の様々な予測されたオクルージョンされる領域のオクルージョンスコアの全体的な合計または集約を表現する。例えば、軌道スコアは、車両を代表するどの軌道またはアクションが車両に対するより良い(または、より悪い)視認性をもたらすことになるかに対応してもよい。オクルージョンシステムは、車両についての1つまたは複数の軌道に関連付けられる軌道スコアをプランニングシステムに出力することが可能であり、プランニングシステムは、軌道を生成および選択するための付加的な車両システムによって提供される他の情報と共に、軌道スコアを使用することができ、車両が従うべき軌道を選択する。少なくともある例において、従うべき軌道の決定は、軌道に沿った単一のオクルージョンスコアおよび/または同じ軌道に沿ったすべてのオクルージョンスコアの合計のうちの1つまたは複数に少なくとも部分的に基づいてもよい。
【0014】
本明細書において論じられる技法は、コンピューティングデバイスの機能を多くの手法で改善することができる。例えば、オクルージョンシステムは、所望のルートを達成するために重要でないと決定された領域についての、オブジェクトの予測された位置および関連付けられるオクルージョンされる領域を生成することを控えてもよく、したがって、取り得る軌道を分析する際に処理リソースおよびコンピューティングリソースを節約する。ある場合において、説明される技法の動的な性質(例えば、予測されたオクルージョンされる領域に部分的に基づいて、車両を制御すること)は、自律車両などの車両に対する軌道を生成および/または選択するために列挙されるべき、より少ない規則を必要とする。予測されたオクルージョンされる領域に部分的に基づいて、車両を制御することによって、車両の安全性は、特に、特定の規則が存在しない状況が生じた場合に、車両が設定された命令に従うことを必要とするのではなく、車両がその周囲に適応し、反応することを可能にすることによって、改善されることができる。さらに、車両が遭遇し得るあらゆる運転状況に対して列挙される規則の数は、事実上無限となるので、予測されたオクルージョンされる領域に部分的に基づいて車両を制御することは、処理リソースを低減することができる。したがって、予測されたオクルージョンされる領域に基づいて軌道を分析するための技法は、従来の技法より高速に実行されることが可能であり、これは、より高速な応答を可能とすることができ、または付加的な代替的軌道をコンピューティングシステムが考慮することを可能とすることができ、それによって、安全性成果、性能、および/または精度を改善する。コンピュータの機能に対する、これらの改良点および他の改良点は、本明細書において論じられている。
【0015】
本明細書において説明される技法は、多くの手法で実装されることが可能である。例示的な実装例は、以下の図を参照して、下記に提供される。自律車両のコンテキストにおいて論じられているが、本明細書において説明される方法、装置、およびシステムは、多種多様なシステム(例えば、センサシステムまたはロボティックプラットホーム)に対して適用されることが可能であり、自律車両に限定されない。別の例において、技法は、航空もしくは航海のコンテキストにおいて、またはシステムに対して知られていない振る舞いに関連付けられ得るオブジェクトもしくはエンティティに関与する任意のシステムにおいて、利用されることが可能である。また、本明細書において説明される技法は、(例えば、センサを使用してキャプチャされた)実データ、(例えば、シミュレータによって生成された)シミュレートされたデータ、または、この2つの任意の組み合わせと共に使用されることが可能である。
【0016】
図1は、本開示の実施形態による、センサデータをキャプチャし、車両についての軌道と環境内のオブジェクトに関連付けられる予測された軌道とを受け取り、オブジェクトに関連付けられる予測されたオクルージョンされる領域を決定し、予測されたオクルージョンされる領域に少なくとも部分的に基づいて車両を制御するための、例示的なプロセス100の絵入りのフロー図である。
【0017】
演算102において、プロセスは、環境のセンサデータをキャプチャすることを含むことができる。ある例において、センサデータは、車両(自律またはそれ以外)上の1つまたは複数のセンサによってキャプチャされることが可能である。例えば、センサデータは、ライダーセンサ、レーダセンサ、画像センサ、飛行時間センサ、ソナーセンサなどのうちの1つまたは複数によってキャプチャされるデータを含むことができる。
【0018】
例は、演算102においてキャプチャされた画像データ104を例示する。例えば、画像データ104は、環境内のオブジェクト106を表現することができる。ある例において、オブジェクト106は、車両、歩行者、動物などを表現することができる。ある例において、演算102においてキャプチャされたセンサデータは、オブジェクトのタイプ(例えば、車両、歩行者、自転車、動物などの、オブジェクトの分類を示す意味論的な情報)を含むが、これに限定されない、オブジェクト106に関する情報を決定するために使用されることが可能である。ある例において、演算は、本明細書において論じられるような、オブジェクト106のタイプ、オブジェクト106に関連付けられる境界ボックス、オブジェクト106に関連付けられるセグメンテーション情報、および/またはオブジェクトに関連付けられる移動情報、ならびに、これらに関連付けられる任意の不確実性を決定することを含むことができる。
【0019】
演算108において、プロセスは、車両についての軌道を受け取ること、および環境内のオブジェクトに関連付けられる予測された軌道を受け取ることを含むことができる。例110は、軌道114に関連付けられる車両112を例示し、それによって、軌道114は、車両が環境内で従うべき経路を表現する。ある例において、軌道114は、道路セグメントの中心線を表現することができる。ある例において、軌道114は、車両112に関連付けられる制御を表現することができる。例えば、制御は、経時的なステアリング角度および/または加速を含むことができるが、これらに限定されない。当然ながら、軌道114は、様々な実装例に応じて、他のデータを表現することができる。
【0020】
考察の目的のために、センサデータをキャプチャする(または利用する)車両112は、運転者(または乗員)がいかなる時も車両を制御することを期待されない状態で、旅程全体のためのあらゆるセーフティクリティカル機能を実行することが可能な車両を説明している、米国高速道路交通安全局によって発行されたレベル5分類に従って演算するように構成される自律車両とすることができる。そのような例において、車両112は、あらゆる駐車機能を含む、始動から停止までのあらゆる機能を制御するように構成されることが可能であるので、それは無人状態とされることができる。これは例にすぎず、本明細書において説明されるシステムおよび方法は、運転者によって常に手動で制御される必要がある車両から、部分的にまたは完全に自律的に制御される車両にわたる車両を含む、任意の地上車両、空中車両、または水上車両へ組み込まれることが可能である。車両112に関連付けられる付加的な詳細は、本開示の全体にわたって説明されている。
【0021】
例示される例110に示されるように、オブジェクト106も環境内に位置する。ある例において、オブジェクト106は、車両、歩行者、自転車、動物などを表現することができる。例110に例示された環境は、運転可能な領域116と運転不可能な領域118とを含むことができる。ある例において、運転可能な領域116は、車両112が(合法的に)横断することができる環境の任意のエリア(例えば、道路、私道、駐車場など)を含むことができる。ある例において、非運転可能な領域118は、車両112が合法的にまたは物理的に横断することができない環境のエリア(例えば、歩道、建物、公園など)を表現することができる。
【0022】
ある例において、演算108において受け取られた軌道は、環境内で車両112を位置決めすること、および環境に関連付けられるマップデータにアクセスすることに少なくとも部分的に基づくことができる。例えば、マップデータは、運転可能な領域116に対応する環境の領域を示す車線要素などの、マップ要素を含むことができる。マップ要素の付加的な例は、建物または構造、横断歩道要素、バイク車線要素、交差点要素、車線分離帯要素、信号要素、一時停止標識要素、一時停止線要素、先方優先標識要素、先方優先車線要素、駐車車線要素、私道要素、減速バンプ要素、信号を無視して横断する領域(例えば、仮想横断歩道)、軌道通過点(例えば、知られている軌道)、搭乗者ピックアップポイント、標識位置要素、ジオフェンス要素などうちの1つまたは複数を含むことができるが、これらに限定されない。ある場合において、オブジェクトに関連付けられる予測された軌道は、マップデータに基づくことができる。
【0023】
ある例において、演算108において受け取られた軌道は、環境内のオブジェクトについての予測された軌道、例えば、環境を通じて移動するオブジェクト106に関連付けられる予測された軌道120などを決定することに基づくことができる。予測された軌道120は、例えば、それぞれの離散化された確率分布に対応する時間において、環境内の対応する位置にオブジェクト106が存在するであろう確率を示す予測確率を表現する、離散化された確率分布(例えば、確率マップ、離散化された予測確率マップ、ヒートマップなど)を使用して、決定されることが可能である。1つまたは複数の離散化された確率分布を生成する例は、2018年11月30日に出願された米国特許出願第16/206,877号において論じられており、これは、その全体が参照によって本明細書に組み込まれている。
【0024】
演算122において、プロセスは、軌道および予測された軌道に基づいて、オブジェクトに関連付けられる予測されたオクルージョンされる領域を決定することを含むことができる。例124は、車両112の軌道114に対する、およびオブジェクト106の予測された軌道120に対する、予測されたオクルージョンされる領域126を決定することを例示する。例えば、軌道114に沿った、将来の時点における車両112の領域は、領域112*として表現されることが可能である。ある例において、領域112*のサイズは、車両112のサイズ、車両112の速度、環境内の位置、環境内のオブジェクトのタイプ、車両112に関連付けられる安全性要因などに少なくとも部分的に基づくことができる。同様に、予測された軌道120に沿った、将来の時点におけるオブジェクト106の領域は、領域106*として表現されることが可能であり、ただし、領域106*のサイズは、オブジェクト106のサイズ、オブジェクト106の予測された速度、環境内の予測された位置、オブジェクト106のタイプおよび環境内の他のオブジェクトなどに少なくとも部分的に基づくことができる。
【0025】
ある例において、予測されたオクルージョンされる領域126は、オブジェクト106によって遮蔽されてよく、したがって、車両112の様々なセンサが環境に関する情報を取得することを防止する、環境の一部を表現する。ある例において、予測されたオクルージョンされる領域126は、レイキャスティング技法を使用して決定されることが可能である。例えば、光線は、車両112*の1つまたは複数のセンサによって観察可能である環境の領域を決定するために、車両112*に関連付けられる地点から投影されることができる。車両112*の1つまたは複数のセンサにとって観察可能でない領域は、予測されたオクルージョンされる領域126として表現されることができる。ある例において、環境の領域(またはオクルージョングリッド)は、領域の状態、例えば、領域が空きスペースを表現するかどうか、領域が環境内のオブジェクトによって占有されるかどうか、領域がオクルージョンされる領域を表現するかどうか、領域が未知であるなどを示すメタデータに関連付けられることができる。
【0026】
例124では、分かりやすいように、x方向およびy方向にあるものとして一般に示されているが、予測されたオクルージョンされる領域126は、z方向成分に関連付けられるオクルージョン情報も表現してもよく、z方向成分は、例えば、オブジェクト106の高さに対応してよい。別の例において、オクルージョン情報は、丘もしくは谷などの、周囲環境の土地に、または、停止灯もしくは鉄道踏切信号などの、オクルージョンされてよいが、軌道決定に関連するオブジェクトの高さに対応するz方向成分に関連付けられてもよい。
【0027】
ある例において、演算122は、予測されたオクルージョンされる領域126に対するオクルージョンスコアを決定することを含むことができる。例えば、オクルージョンスコアは、予測されたオクルージョンされる領域126の1つまたは複数の態様または属性に基づくことができ、ただし、オクルージョンスコアは、予測されたオクルージョンされる領域のサイズ、評価されている特定の軌道に沿ったオブジェクトによってオクルージョンされるエリアの重要性、マップデータなどに関連付けられることができる。予測されたオクルージョンされる領域126の離散的な領域(例えば、オクルージョングリッドの個々のオクルージョンフィールド)に対するオクルージョンスコアは、予測されたオクルージョンされる領域126に対する全体的なオクルージョンスコアを決定するために加算され得る。さらに、本開示の全体にわたって論じられているように、オクルージョンスコアは、軌道114に沿った複数の将来の時間について決定されてもよく、オクルージョンスコアは、軌道114に対する軌道スコアを決定するために加算されても、または集約されてもよい。また、時間の経過と共に、オブジェクトが軌道を維持または変化させるにつれて、および車両112の周囲の環境が変化するにつれて、オクルージョンスコア(および、したがって、軌道スコア)は修正されても、または他の方法で更新されてもよい。
【0028】
演算128において、プロセスは、予測されたオクルージョンされる領域に少なくとも部分的に基づいて、車両を制御することを含むことができる。例えば、多様な取り得る軌道に対する軌道スコアは、軌道を選択するために比較されることが可能であり、軌道は、車両112が制御するために使用されることが可能であり、環境を横断する。選択された軌道は、多様な軌道スコアのうちの最も高い軌道スコア、多様な軌道スコアのうちの最も低い軌道スコア、多様な軌道スコアのうちの中央値の軌道スコア、または任意の適切な選択に基づくことができる。少なくともある例において、軌道は、車両による安全な横断を保証するように、環境内のデータの量を最適化するために選ばれ得る。
【0029】
軌道スコアは、車両のための軌道を選択するための様々な手法において使用され得るが、他の入力も、軌道を選択することおよび/または車両を制御することに貢献し得る(例えば、安全システム、ユーザ入力など)。例えば、ある例において、軌道スコアは、軌道を評価することに関連付けられる多くのコストのうちの1つとして使用され得る。軌道を評価するために使用される付加的なコストの例は、基準コスト(例えば、環境内の基準軌道と候補軌道との間の距離に基づくコスト)、障害物コスト(例えば、環境内の基準軌道および/または候補軌道と障害物との間の距離に基づくコスト)、ステアリングコスト(例えば、車両のステアリング角度に基づくコスト)、加速度コスト(例えば、車両の最大加速度に基づくコスト)などのうちの1つまたは複数を含むことができるが、これらに限定されない。
【0030】
予測された軌道、予測されたオクルージョンされる領域、オクルージョンスコア、および軌道スコアの付加的な詳細は、本開示の全体にわたって論じられている。
【0031】
図2は、本開示の実施形態による、静的オブジェクトに関連付けられる、予測されたオクルージョンされる領域に基づいて、車両の軌道を評価する例200である。
【0032】
環境202は、車両204(例えば、自律車両)およびオブジェクト206(例えば、別の車両)を含む。ある例において、車両204のプランニングシステムは、本明細書において論じられているように、オブジェクト206の予測された位置に対して軌道208を経時的に評価し得る。例示されるように、環境202は、初期時間(例えば、T1)を表現し得る。
【0033】
ある例において、車両204のプランニングシステムは、車両204が従うことを選び得る多様な取り得る軌道について、オブジェクト206に関連付けられる予測されたオクルージョンされる領域を決定してもよい。例えば、車両204のプランニングシステムは、将来の時点におけるオブジェクトの推定される位置に関連する、予測されたオクルージョンされる領域に関連付けられるオクルージョングリッドを生成してもよい。オクルージョングリッドは、複数のオクルージョンフィールドを含むことができ、複数のオクルージョンフィールドは、運転可能な面などの、環境の離散的なエリアを表現することができる。ある例において、オクルージョンフィールドは、オクルージョン状態(例えば、自律車両の1つまたは複数のセンサに位置が目に見えるかどうかを示す)、および占有状態(例えば、車両、歩行者、動物などのオブジェクトによって位置が占領されているかどうかを示す)を示すことができる。オクルージョングリッドは、環境のマップデータから生成されることが可能であり、プランニングシステムは、車両のセンサからのデータを使用して、オクルージョンフィールドの状態を決定することができる。ある例において、プランニングシステムは、レイキャスティング技法、または他の方法を使用して、オクルージョングリッドに関連付けられるオクルージョン状態を決定することができる。さらに、ある例において、車両204のプランニングシステムは、運転可能な面、空きスペース(例えば、運転可能な面)および/または空いていないスペース、車両、歩行者、建物、植物などを含むが、これらに限定されない意味的なカテゴリへ、画像データを識別し、セグメント化することができる。プランニングシステムは、セグメント化された画像データと、オクルージョングリッドおよびオクルージョンフィールドを含むマップデータとを受け取り、オクルージョンフィールドをセグメント化された画像データへ投影するための機能性も含んでよい。ある例において、プランニングシステムは、オクルージョンフィールドが、運転可能な面(例えば、障害物のない道路)へ投影するか、オブジェクト(例えば、領域を占領することになる車両)へ投影するか、または、さもなければ決定不能であるかを決定することによって、1つまたは複数のオクルージョンフィールドの占有を決定することができる。
【0034】
オブジェクト206の位置は、オブジェクト分類、位置、速度、加速度、センサ不確実性などに基づいて、オブジェクト206の取り得る将来の位置を決定するために経時的に評価され得る。例200において、プランニングシステムは、オブジェクト206が時間T1を通じて静的オブジェクトであると決定することができ、オブジェクト206が将来の時間T2を通じて静的な(例えば、相対的に静止している)ままであろうということをある程度の確実性をもって予測することができる。例えば、オブジェクト206は、停止灯または一時停止標識における車両であってもよく、それにより、少なくともある期間の間は、オブジェクト206が静止したままであろうと車両204は(例えば、画像データおよび/またはマップデータに基づいて)決定することができる。
【0035】
演算210において、車両204のプランニングシステム(および/またはオクルージョンシステム)は、車両204の第1の軌道に基づいて、静的オブジェクト(例えば、オブジェクト206)の予測されたオクルージョンされる領域を決定することができる。予測された環境212は、将来の時間における(例えば、T1の後の時間である、T2Aにおける)車両204およびオブジェクト206を例示しており、ただし、車両204は第1の軌道に従う。オブジェクト206が将来の時間T2Aを通じて静的なままであろうという決定に基づいて、プランニングシステムは、車両204の第1の軌道に基づいて、将来の時間T2Aについてのオクルージョングリッドを生成することができる。予測された環境212に対して生成されたオクルージョングリッドは、オブジェクト206の位置に基づいた、オクルージョン状態および占有状態のインジケーションを含むことができる。さらに、プランニングシステムは、予測された環境212に関連付けられるマップデータを使用して、オブジェクト206によってオクルージョンされる予測された環境の部分を決定することができる。
【0036】
予測された環境212に示されるように、車両204の第1の軌道は、車両204とオブジェクト206との間に多くの空間がある状態で車両を停止させる。結果として、比較的小さい予測されたオクルージョンされる領域214によって示されるように、より多くの視認性が車両204にとって利用可能となる。
【0037】
演算216において、車両204のプランニングシステムは、車両204の第2の軌道に基づいて、静的オブジェクト(例えば、オブジェクト206)の予測されたオクルージョンされる領域を決定することができる。ある例において、車両204のプランニングシステムは、環境を通じて横断するためのどの軌道を決定する前に、または、さもなければ選択する前に、第1の軌道および第2の軌道(または、任意の数の取り得る軌道)についての予測されたオクルージョンされる領域を並行して決定することができる。予測された環境218は、将来の時間における(例えば、T1の後の時間である、T2Bにおける)車両204およびオブジェクト206を例示しており、ただし、車両204は、第1の軌道と異なる第2の軌道に従う。時間T2AおよびT2Bは、実質的に同じ将来の時間であってもよく、それにより、車両204のプランニングシステムは、環境内の予測されたオクルージョンされる領域に、異なる軌道がどのように影響を与えそうかを比較することができる。
【0038】
上記の考察と同様に、プランニングシステムは、車両204の第2の軌道に基づいて、およびオブジェクト206が将来の時間T2Bを通じて静的なままであろうという決定に基づいて、将来の時間T2Bについてのオクルージョングリッドを生成することができる。予測された環境218に対して生成されたオクルージョングリッドも、オブジェクト206の位置に基づいた、オクルージョン状態および占有状態のインジケーションを含むことができる。さらに、プランニングシステムは、予測された環境218に関連付けられるマップデータを使用して、オブジェクト206によってオクルージョンされる予測された環境の部分および/または属性を決定することができる。
【0039】
しかしながら、予測された環境218に示されるように、車両204の第2の軌道は、予測された環境212に比べて、車両がオブジェクト206のより近くに停止することをもたらす。結果として、予測された環境212に比べて、比較的大きい予測されたオクルージョンされる領域220によって示されるように、より少ない視認性が車両204にとって利用可能となる。当然ながら、例示の目的のために2つの評価として示されているが、各軌道に沿った多様なポイントが、それに関連付けられるオクルージョンスコアおよび/または軌道スコアを決定するために、決定され、加算され(または、他の方法で組み合わされ)てもよい。
【0040】
図3は、本開示の実施形態による、動的オブジェクトの軌道に関連付けられる、予測されたオクルージョンされる領域に基づいて、車両の軌道を評価する例300である。
【0041】
環境302は、車両304およびオブジェクト306を含む。ある例において、車両304のプランニングシステムおよび/またはオクルージョンシステムは、オブジェクト306の予測された位置に対して軌道308を経時的に評価し得る。例示されるように、環境302は、初期時間(例えば、T1)を表現し得る。さらに、環境302は、2つの接続された運転可能な面、すなわち、第1の運転可能な面310(例えば、いくつかの例を挙げると、幹線道路、高速道路、または幹線ルート)と、第2の運転可能な面312(例えば、出口道路または脇道など)とを含む。
【0042】
オブジェクト306の位置は、オブジェクト分類、位置、速度、加速度、センサ不確実性などに基づいて、オブジェクト306の取り得る将来の位置を決定するために、経時的に評価され得る。例300において、プランニングシステムは、オブジェクト306が運転可能な面310を横断するときのオブジェクト306の変化する位置、オブジェクト306が運転可能な面310を横断するときのオブジェクト306の速度などに基づいて、オブジェクト306は時間T1を通じて動的オブジェクトであると決定することができる。
【0043】
ある例において、車両304のプランニングシステムおよび/またはオクルージョンシステムは、(例えば、車両304が環境302を横断するにつれて連続的に)オブジェクト306の予測された位置を決定することができる。例えば、車両304のプランニングシステムは、環境内のオブジェクト306の取り得る位置を経時的に表現する、離散化された確率分布を生成することができる。例えば、プランニングシステムは、初期状態または初期時間(例えば、T1)におけるオブジェクト306の不確実性に関連付けられる共分散行列を決定することができる。共分散行列は、環境内の長手方向位置、横方向位置、および/または垂直方向位置に関する分散を含むことができる。オブジェクト306の位置が経時的に(例えば、将来の時間T2において)評価されるにつれて、将来におけるオブジェクト306の位置に関連付けられる共分散行列を決定するために、共分散行列も同様に評価され得る。物理学に基づくモデリングなどの、オブジェクト306の取り得る位置を表現するための他の技法が考慮され、これは、オブジェクトの速度および/またはタイプ、マップデータなどを決定することと、オブジェクトの予測された軌道を決定することを含んでよい。
【0044】
例300において、車両304のプランニングシステムは、オブジェクト306が運転可能な面310から運転可能な面312上へ出るであろうという第1の確率と、オブジェクト306が運転可能な面310上を継続するであろうという第2の確率とがあると決定することができる。ある例において、プランニングシステムは、環境内のオブジェクト306の取り得る位置に関連付けられる予測確率を含む、1つまたは複数の離散化された確率分布またはヒートマップを生成することができる。離散化された確率分布は、将来の任意の時点または期間、例えば、1秒、2秒、5秒先などの将来などを表現するために生成されることが可能である。さらに、そのような離散化された確率分布は、単一のオブジェクトに関連付けられる予測確率を表現することができ、または複数のオブジェクトに関連付けられる集約された予測確率を表現することができる。オブジェクト306に関連付けられる予測された軌道は、そのような離散化された確率分布またはヒートマップに少なくとも部分的に基づいて決定されることができる。離散化された確率分布が、1つの取り得る例として説明されているが、オブジェクトの位置および/または軌道を予測するための任意の適切な技法、およびそれらに関連付けられる確率が使用されてもよい。
【0045】
ある場合において、車両304のプランニングシステムは、オブジェクトに近接しているか、または車両に近接している、環境のセルまたは部分へ離散化され得るガウス分布として表現され得る分散行列に基づいて、将来のオブジェクト306の取り得る位置を表現することができる。例えば、離散化された確率分布は、車両304の周りの100メートル×100メートルの領域を表現する、64×64グリッド(またはJ×Kサイズのグリッド)を表現することができる。当然ながら、離散化された確率マップは、任意のサイズの領域を表現することができ、領域の任意の数の離散的な部分を表現することができる。つまり、離散化された確率マップは、任意のレベルの分解能で環境を表現することができる。ある場合において、離散化された確率マップの一部は、離散化された確率マップのセルと称されることができる。各セルは、離散化された確率マップに対応する時間において、オブジェクト306が環境内の対応する位置に存在するであろう確率を表現する予測確率を含むことができる。ある例において、機械学習モデルは、複数の離散化された確率マップを出力することができ、複数の離散化された確率マップのうちの離散化された確率マップは、将来の特定の時間(例えば、0.5秒、1秒、3秒、5秒、10秒など)におけるオブジェクトに関連付けられる予測確率を表現することができる。離散化された確率分布の観点から説明されているが、予測された軌道は、そのように限定的である必要はない。他のモデル(例えば、機械学習されたモデル)は、オブジェクトに関連付けられる1つもしくは複数の予測された軌道、および/または、それらに関連付けられる確率を一般に出力することができる。
【0046】
例示される例300において、第1の確率および第2の確率が、閾値確率を超えてよく、このことは、車両のプランニングシステムに、オブジェクトの両方の予測された位置について、オブジェクト306によって引き起こされる予測されたオクルージョンされる領域を評価させることが可能である。
【0047】
例えば、演算314において、車両304のプランニングシステムは、オブジェクト(例えば、オブジェクト306)の第1の軌道に基づいて、予測されたオクルージョンされる領域を決定することができる。予測された環境316は、将来の時間における(例えば、T1の後の時間である、T2Aにおける)車両304およびオブジェクト306を例示しており、ただし、オブジェクト306は、第1の軌道に従う。オブジェクト306が将来の時間T2Aにおいて運転可能な面310から運転可能な面312上へ出るであろうという決定に基づいて、プランニングシステムは、オブジェクト306の第1の軌道に基づいて、将来の時間T2Aについてのオクルージョングリッドを生成することができる。予測された環境316に対して生成されたオクルージョングリッドは、オブジェクト306の位置および/または空きスペースなどに基づいた、オクルージョン状態および占有状態のインジケーションを含むことができる。さらに、プランニングシステムは、予測された環境316に関連付けられるマップデータを使用して、オブジェクト306によってオクルージョンされる予測された環境の部分を決定することができる。プランニングシステムは、オクルージョングリッドおよびマップデータ(これは、オクルージョンされる領域の重要性を決定するためにも使用され得る)に基づいて、予測されたオクルージョンされる領域318を決定し、予測されたオクルージョンされる領域318を使用して、上記および下記に説明されるように車両を制御することができる。
【0048】
演算320において、車両304のプランニングシステムは、オブジェクト(例えば、オブジェクト306)の第2の軌道に基づいて、予測されたオクルージョンされる領域を決定することができる。ある例において、車両304のプランニングシステムは、オブジェクト306の第1の軌道および第2の軌道(または任意の数の取り得る軌道)についての予測されたオクルージョンされる領域を並行して決定することができる。予測された環境322は、将来の時間における(例えば、T1の後の時間である、T2Bにおける)車両304およびオブジェクト306を例示しており、ただし、オブジェクト306は、第2の、第1の軌道とは異なる軌道に従う。時間T2AおよびT2Bは、実質的に同じ将来の時間であってもよく、それにより、車両304のプランニングシステムは、オブジェクト306の異なる予測された軌道が環境内のオクルージョンされる領域にどのように影響を与えそうかを比較することができる。
【0049】
オブジェクト306が将来の時間T2Bにおいて運転可能な面312上に留まるであろうという決定に基づいて、プランニングシステムは、オブジェクト306の第2の軌道に基づいて、将来の時間T2Bについてのオクルージョングリッドを生成することができる。予測された環境322に対して生成されたオクルージョングリッドは、オブジェクト306の位置に基づいた、オクルージョン状態および占有状態のインジケーションを含むことができる。さらに、プランニングシステムは、予測された環境322に関連付けられるマップデータを使用して、オブジェクト306によってオクルージョンされる、予測された環境の部分を決定する(および/またはオクルージョンされる領域の重要度を決定する)ことができる。プランニングシステムは、オクルージョングリッドおよびマップデータに基づいて、予測されたオクルージョンされる領域324を決定し、予測されたオクルージョンされる領域324を使用して、上記および下記に説明されるように車両を制御することができる。当然ながら、例示の目的のために2つの評価として示されているが、各軌道に沿った多様なポイントが、それに関連付けられるオクルージョンスコアおよび/または軌道スコアを決定するために、決定され、加算され(または、他の方法で組み合わされ)てもよい。
【0050】
図4は、本開示の実施形態による、動的オブジェクトに関連付けられる、予測されたオクルージョンされる領域に基づいて、車両の多様な軌道を評価する例400である。
【0051】
環境402は、車両404、オブジェクト406(例えば、別の車両)、オブジェクト408(例えば、停止灯)、およびオブジェクト410(例えば、二重駐車車両(DPV)を含む。ある例において、車両404のプランニングシステムは、オブジェクト406の予測された位置に対して、第1の軌道412および第2の軌道414を経時的に評価し得る。例示されるように、環境402は、オブジェクト408によって表現される赤信号で車両404が右折しようとする初期時間(例えば、T1)を表現し得る。第1の軌道412および第2の軌道414は、車両404が曲がって入ることができる運転可能な面の異なる車線に対応する。
【0052】
上記で論じられるように、オブジェクト406の位置は、オブジェクト分類、位置、速度、加速度、センサ不確実性などに基づいて、オブジェクトの取り得る将来の位置を決定するために経時的に評価され得る。例400において、プランニングシステムは、例えば、オブジェクトが環境を横断するときのオブジェクト406の変化する位置、オブジェクトが環境を横断するときのオブジェクト406の速度などに基づいて、オブジェクト406が時間T1を通じて動的オブジェクトであると決定することができる。また、車両404のプランニングシステムは、オブジェクト分類に基づくなどして、オブジェクト408が赤信号インジケーションを有する停止灯であると決定することができる。この情報を使用して、プランニングシステムは、停止灯が赤いままである間にオブジェクト406が交差点を通過し続けるであろう確率が高いと決定することができる。さらに、車両404のプランニングシステムは、この情報を使用して、第1の軌道412および第2の軌道414についての予測されたオクルージョンされる領域を決定し、オブジェクト406によって引き起こされる予測されたオクルージョンされる領域に基づいて、車両が従うためにどの軌道を選択するべきであるかを評価することができる。
【0053】
例えば、演算416において、車両404のプランニングシステムは、車両404の第1の軌道412に基づいて、動的オブジェクト(例えば、オブジェクト406)の予測されたオクルージョンされる領域を決定する。予測された環境418は、将来の時間における(例えば、T1の後の時間である、T2Aにおける)車両404、オブジェクト406、オブジェクト408、およびオブジェクト410を例示しており、ただし、車両404は、第1の軌道412に従う。車両404のプランニングシステムは、車両404の第1の軌道412、オブジェクト406の予測された軌道、およびオブジェクト410の予測された位置に基づいて、将来の時間T2Aについてのオクルージョングリッドを生成することができる。予測された環境418に対して生成されたオクルージョングリッドは、オブジェクト406およびオブジェクト410の位置に基づいた、オクルージョン状態および占有状態のインジケーションを含むことができる。さらに、プランニングシステムは、予測された環境418に関連付けられるマップデータを使用して、車両404が第1の軌道412に従うにつれて、オブジェクト406およびオブジェクト410によってオクルージョンされる予測された環境の部分(ならびに/または、それらに関連付けられる重要性)を決定することができる。例えば、予測された環境418に関連付けられるマップデータは、オブジェクト410の背後の方向から交通が到来するかもしれず、車両404によって選択された軌道にかかわらず目に見えないかもしれないことを示してよい。ある場合において、マップデータは、オブジェクト410の位置の結果として考慮され得る他の潜在的なハザード、例えば、配達を行うためにオブジェクト410の近くの建物にアクセスする配達ドライバー、オブジェクト410と歩道との間の狭いエリアを横断する自転車走行者などに対する洞察を提供することができる。これらの考慮事項は、環境内で車両404が従うべき軌道を選択する場合に、予測された環境418の異なる領域に関連付けられる重要性を増加させ(または減少させ)することができる。
【0054】
プランニングシステムは、オブジェクト406の予測された位置に対応するオクルージョングリッドおよびマップデータと、オブジェクト410の予測された位置に対応する、予測されたオクルージョンされる領域422とに基づいて、予測されたオクルージョンされる領域420を決定する。プランニングシステムは、予測されたオクルージョンされる領域420および予測されたオクルージョンされる領域422を使用して、予測されたオクルージョンされる領域420および/または予測されたオクルージョンされる領域422に対する、1つまたは複数のオクルージョンスコアを生成することができる。ある例において、オクルージョンスコアは、予測されたオクルージョンされる領域420および/または422のサイズ、軌道412に沿ったオブジェクト406および/またはオブジェクト410によってオクルージョンされるエリアの重要性、マップデータなどに基づくことができる。例えば、オブジェクトは、車両の視界から比較的大きいエリアをオクルージョンすることがあるが、そのエリアが、車両を制御することに対してほとんど重要性を有しない(例えば、そのエリアが、進行方向の背後にある)場合、オクルージョンスコアは低くなり得る。しかしながら、他の場合において、オブジェクトは、車両の視界から比較的小さいエリアをオクルージョンすることができ、そのエリアが、車両を制御することに対して高い重要性を有し(例えば、そのエリアが、急速に接近する対向車を有する、車両の正面の進入車線である、オクルージョンされるエリアが、私道または横断歩道などを含むなど)、オクルージョンスコアを比較的高くさせる。当然ながら、大きいオクルージョンされるエリアが高いオクルージョンスコア受け取り、小さいオクルージョンされるエリアが低いオクルージョンスコアを受け取る例が想定される。さらに、ある例において、領域は、車両404の潜在的な軌道にかかわらずオクルージョンされることがあり、「恒久的にオクルージョンされる」とも称される。領域が恒久的にオクルージョンされると決定される場合、プランニングシステムは、例えば、速度を増加または減少させること、車両によって講じられる近い将来のアクションを周囲の交通および/または歩行者に通知するための信号(例えば、方向指示器または他の信号)を適用することなどによって、車両404を適切に制御し得る。少なくともある例において、そのような恒久的にオクルージョンされるエリアは、オクルージョンスコアおよび/または軌道スコアを決定する場合に考慮に入れられてもよい。非限定的な例として、恒久的にオクルージョンされるエリアは、それをさらに最小限にする代替的な軌道を計画することは可能ではないであろうため、あらゆるオクルージョンスコアおよび/または軌道スコアに対する最小の境界を提供することができる。
【0055】
演算424において、車両404のプランニングシステムは、車両404の第2の軌道414に基づいて、動的オブジェクト(例えば、オブジェクト406)の予測されたオクルージョンされる領域を決定する。ある例において、車両404のプランニングシステムは、車両404の第1の軌道412および第2の軌道414(または任意の数の取り得る軌道)についての予測されたオクルージョンされる領域を並行して決定することができる。予測された環境426は、将来の時間における(例えば、T1の後の時間である、T2Bにおける)車両404、オブジェクト406、オブジェクト408、およびオブジェクト410を例示しており、ただし、車両404は、第1の軌道412と異なる第2の軌道414に従う。時間T2AおよびT2Bは、実質的に同じ将来の時間であってもよく、それにより、車両404のプランニングシステムは、環境内のオクルージョンされる領域に車両404の異なる軌道412および414がどのように影響を与えそうかを比較することができる。
【0056】
車両404のプランニングシステムは、車両404の第2の軌道414、オブジェクト406の予測された軌道、およびオブジェクト410の予測された位置に基づいて、将来の時間T2Bについてのオクルージョングリッドを生成することができる。予測された環境426に対して生成されたオクルージョングリッドは、オブジェクト406およびオブジェクト410の位置に基づいた、オクルージョン状態および占有状態のインジケーションを含むことができる。さらに、プランニングシステムは、予測された環境426に関連付けられるマップデータを使用して、車両404が第2の軌道414に従うにつれて、オブジェクト406および/またはオブジェクト410によってオクルージョンされる予測された環境の部分を決定する(および/またはそれらに関連付けられる重要性を決定する)ことができる。プランニングシステムは、オクルージョングリッドおよびマップデータに基づいて、オブジェクト406の予測された位置に対応する予測されたオクルージョンされる領域428と、オブジェクト410の予測された位置に対応する予測されたオクルージョンされる領域430とを決定する。プランニングシステムは、予測されたオクルージョンされる領域428および/または予測されたオクルージョンされる領域430を使用して、予測されたオクルージョンされる領域428および/または予測されたオクルージョンされる領域430に対する、1つまたは複数のオクルージョンスコアを生成することができる。ある例において、オクルージョンスコアは、予測されたオクルージョンされる領域428および/または430のサイズ、軌道414に沿ったオブジェクト406および/またはオブジェクト410によってオクルージョンされるエリアの重要性、マップデータ、感知されたデータなどに基づくことができる。
【0057】
ある例において、車両404のプランニングシステムは、第1の軌道412に対するオクルージョンスコアのうちの1つまたは複数を、第2の軌道414に対するオクルージョンスコアと比較し、それぞれの軌道に対するオクルージョンスコアに基づいて、軌道間で選択することができる。例えば、予測されたオクルージョンされる領域420は、予測されたオクルージョンされる領域428より大きいエリアを有するにもかかわらず、オブジェクト406によってオクルージョンされるエリアの重要性に基づいて、低いオクルージョンスコアを受け取ってもよい。また、予測されたオクルージョンされる領域428は、予測されたオクルージョンされる領域420より小さいエリアを有するにもかかわらず、オブジェクト406によってオクルージョンされるエリアの重要性に基づいて、高いオクルージョンスコアを受け取ってもよい。したがって、予測されたオクルージョンされる領域420および予測されたオクルージョンされる領域428の分析に基づいて、車両404のプランニングシステムは、車両404を制御することが可能であり、第1の軌道412に従って環境を横断する。
【0058】
車両404のプランニングシステムは、車両404が環境を横断するための第1の軌道412または第2の軌道414を選択する場合、予測されたオクルージョンされる領域422および予測されたオクルージョンされる領域430も考慮し得る。予測されたオクルージョンされる領域422および予測されたオクルージョンされる領域430は、少なくとも部分的に重複し、恒久的にオクルージョンされる環境の領域をもたらす。換言すれば、車両404が第1の軌道412に従うか、または第2の軌道414に従うかにかかわらず、オブジェクト410の背後のエリアはオクルージョンされることになる。マップデータに基づいて、車両404のプランニングシステムは、対向車がオブジェクト410の背後に存在する可能性があると決定することができ、この情報を、第1の軌道412または第2の軌道414を選択する際に使用してもよい。例えば、車両404のプランニングシステムは、少なくとも交通の交差点の通過時に、対向車線においてオクルージョンされる車両が、オブジェクト406のルートに従い、オブジェクト410によって占有されない車線内に留まる可能性の方が高いという決定に基づいて、車両404にとって第1の軌道に従う方がより安全であると決定することができる。当然ながら、例示の目的のために2つの評価として示されているが、各軌道に沿った多様なポイントが、それに関連付けられるオクルージョンスコアおよび/または軌道スコアを決定するために、決定され、加算され(または、他の方法で組み合わされ)てもよい。
【0059】
図5Aは、
図5Bおよび
図5Cにおいて提示される例500の概観である。環境502は、車両504、第1のオブジェクト506、および第2のオブジェクト508を含んでよい。この例において、第1のオブジェクト506は、運転可能な面510上に駐車しており、近くに配達を行うなどのために、そのハザードランプを点灯させているトラックであってよい(例えば、オブジェクト506は、二重駐車車両を表現してよい)。また、この例において、第2のオブジェクト508は、車両504と同じ方向に移動する車両であってよい。運転可能な面510は、2つの車線において交通が反対方向に移動する2車線道路であってもよく、したがって、オブジェクト508は、オブジェクト506の周りをナビゲートする予測された軌道509に関連付けられることができる。
【0060】
ある例において、車両504のプランニングシステムは、オブジェクト506およびオブジェクト508の予測された位置に対して、第1の軌道512および第2の軌道514を経時的に評価し得る。例示されるように、環境502は、車両504が静止オブジェクト506に接近しており、オブジェクト508が、運転可能な面510の接近してきている対向車線内のオブジェクト506を通過している初期時間(例えば、T1)を表現し得る。
【0061】
環境516において示されるように、第1の軌道512は、車両504がオブジェクト506に接近するときに、運転可能な面510の同じ車線内に留まる車両504に対応する。また、環境518において示されるように、第2の軌道514は、オブジェクト506を避けてオブジェクト508に従うためなどに、運転可能な面510の対向車線内へ移動する車両504に対応する。車両504のプランニングシステムは、上述したように、将来の時間における静止オブジェクト506および動的オブジェクト508の予測された位置を決定することができる。演算520は、車両504のプランニングシステムが、第1の軌道512に基づいて、および
図5Bにおいてさらに説明されるように、オブジェクト506およびオブジェクト508についての予測されたオクルージョンされる領域を決定することを含むことができる。演算522は、車両504のプランニングシステムが、第2の軌道514に基づいて、および
図5Cにおいてさらに説明されるように、オブジェクト506およびオブジェクト508についての予測されたオクルージョンされる領域を決定することを含むことができる。
【0062】
例えば、
図5Bは、本開示の実施形態による、オブジェクトに関連付けられる予測されたオクルージョンされる領域に基づいて、車両504の第1の軌道512を経時的に評価する例524である。環境516は、便宜上再現されており、車両504が従い得る第1の軌道512を示す。予測された環境526は、将来の時間における(例えば、T
1の後の時間である、T
2Aにおける)車両504、オブジェクト506、およびオブジェクト508を例示しており、ただし、車両504は、第1の軌道512に従う。また、予測された環境528は、後続の将来の時間における(例えば、T
2Aの後の時間である、T
3Aにおける)車両504、オブジェクト506、およびオブジェクト508を例示しており、ただし、車両504は、第1の軌道512に沿って続く。
【0063】
車両504のプランニングシステムは、車両504の第1の軌道512、オブジェクト506の位置、およびオブジェクト508の予測された軌道に基づいて、将来の時間T2AおよびT3Aについてのオクルージョングリッドを生成することができる。予測された環境526および528に対して生成されたオクルージョングリッドは、オブジェクト506およびオブジェクト508の位置に基づいた、オクルージョン状態および占有状態のインジケーションを含むことができる。さらに、プランニングシステムは、予測された環境526および528に関連付けられるマップデータを使用して、時間の経過と共に、および車両504が第1の軌道512に従うにつれて、オブジェクト506によってオクルージョンされる予測された環境の部分(および/またはそれらに関連付けられる重要性)ならびにオブジェクト508を決定することができる。例えば、プランニングシステムは、予測された環境526および528に関連付けられるマップデータを使用することができ、運転可能な面510上に対向車が存在し得ると決定し、結果的に、対向車を含んでよい運転可能な面510のオクルージョンされる領域に対して、より高い相対的重要度を関連付けてもよい。プランニングシステムは、時間T2Aにおける予測された環境526についてのオクルージョングリッドおよびマップデータ、ならびに時間T3Aにおける予測された環境528についての予測されたオクルージョンされる領域534に基づいて、予測されたオクルージョンされる領域530および532を決定することができる。
【0064】
車両504のプランニングシステムは、多様な予測されたオクルージョンされる領域530、532、および534を使用して、予測されたオクルージョンされる領域530、532、および534に対するオクルージョンスコアを生成することができる。ある例において、プランニングシステムは、予測されたオクルージョンされる領域530、532、および/または534に対するオクルージョンスコアを加算して、集約して、または他の方法で組み合わせて、第1の軌道512に対する軌道スコアを決定することができる。例524は、2つの将来の時間(例えば、T2AおよびT3A)を例示しているが、特定の軌道に対する軌道スコアを決定するために、予測されたオクルージョンされる領域に対して生成される任意の数のオクルージョンスコアを加算すること、集約すること、および/または他の方法で組み合わせることを含めて、任意の数の将来の時間が特定の軌道について評価されてもよい。
【0065】
図5Cは、本開示の実施形態による、オブジェクトに関連付けられる予測されたオクルージョンされる領域に基づいて、車両504の第2の軌道514を経時的に評価する例536である。環境518は、便宜上再現されており、車両504が従い得る第2の軌道514を示す。予測された環境538は、将来の時間における(例えば、T
1の後の時間である、T
2Bにおける)車両504、オブジェクト506、およびオブジェクト508を例示しており、ただし、車両504は、第2の軌道514に従う。また、予測された環境540は、後続の将来の時間における(例えば、T
2Bの後の時間である、T
3Bにおける)車両504、オブジェクト506、およびオブジェクト508を例示しており、ただし、車両504は、第2の軌道514に沿って続く。将来の時間T
2BおよびT
3Bは、それぞれ将来の時間T
2AおよびT
3Aと実質的に同じであってもよく、それにより、車両504のプランニングシステムは、環境内のオクルージョンされる領域に車両504の異なる軌道512および514がどのように影響を与えそうかを比較することができる。
【0066】
車両504のプランニングシステムは、車両504の第2の軌道514、オブジェクト506の位置、およびオブジェクト508の予測された軌道に基づいて、将来の時間T2BおよびT3Bについてのオクルージョングリッドを生成することができる。予測された環境538および540に対して生成されたオクルージョングリッドは、オブジェクト506およびオブジェクト508の位置に基づいた、オクルージョン状態および占有状態のインジケーションを含むことができる。さらに、プランニングシステムは、予測された環境538および540に関連付けられるマップデータを使用して、時間の経過と共に、および車両504が第2の軌道514に従うにつれて、オブジェクト506およびオブジェクト508によってオクルージョンされる予測された環境の部分を決定することができる。プランニングシステムは、時間T2Bにおける予測された環境538についてのオクルージョングリッドおよびマップデータ、ならびに時間T3Bにおける予測された環境540についての予測されたオクルージョンされる領域546に基づいて、予測されたオクルージョンされる領域542および544を決定することができる。
【0067】
車両504のプランニングシステムは、多様な予測されたオクルージョンされる領域542、544、および/または546を使用して、予測されたオクルージョンされる領域542、544、および546に対するオクルージョンスコアを生成することができる。ある例において、プランニングシステムは、予測されたオクルージョンされる領域542、544、および546に対するオクルージョンスコアを加算して、集約して、または他の方法で組み合わせて、第2の軌道514に対する軌道スコアを決定することができる。車両504のプランニングシステムは、第1の軌道512に関連付けられる軌道スコアと第2の軌道514に関連付けられる軌道スコアとを(組み合わせて、および/またはオクルージョンスコア単位で)比較して、車両504が環境を横断するにつれて車両504をどのように制御するかを決定することができる。例えば、プランニングシステムは、最大面積の視認性(例えば、最小のオクルージョンされる総面積)を有する軌道、関心領域の視認性を最も長い時間維持する軌道、軌道スコアおよび/または他のコストに基づく軌道などを選択してもよい。当然ながら、例示の目的のために2つの評価として示されているが、各軌道に沿った多様なポイントが、それに関連付けられるオクルージョンスコアおよび/または軌道スコアを決定するために、決定され、加算され(または、他の方法で組み合わされ)てもよい。
【0068】
図6は、本開示の実施形態による、オブジェクトに関連付けられる予測された軌道、および車両軌道に対するそれぞれのオブジェクトに関連付けられる予測されたオクルージョンされる領域に基づいて、車両のための軌道を評価し、車両軌道に対するオクルージョンスコアを決定し、オクルージョンスコアに基づいて車両を制御する例示的なプロセス600の絵入りフロー図である。環境502は、例示的なプロセス600に関連して説明される様々な概念を例示するために再現されている。
【0069】
車両504のプランニングシステムは、車両504が環境を横断するにつれて、各種機能を実行し得る。例えば、演算602において、車両504のプランニングシステムは、車両の第1の軌道(例えば、軌道512)を決定する。また、演算604において、車両504のプランニングシステムは、車両の第2の軌道(例えば、軌道514)を決定する。演算602および演算604は、車両504のプランニングシステムによって実質的に同時に実行されることが可能である。
【0070】
演算606において、1つまたは複数の予測された軌道が、オブジェクトA(例えば、オブジェクト506)について決定される。予測された軌道は、オブジェクト分類、位置、速度、加速度、センサ不確実性などに基づいて、オブジェクトAの取り得る位置を決定するために、オブジェクトAを経時的に評価することと共に、オブジェクトA(例えば、オブジェクト506)の現在の位置に基づくことができる。ある例において、オブジェクトAについての予測された軌道は、オブジェクトAが経時的に比較的静止している場合には、静的な軌道とすることができ、または、オブジェクトAが経時的に移動および/もしくは加速する場合には、動的な軌道とすることができる。オブジェクトAについての予測された軌道は、将来の1つまたは複数の時間(例えば、0.5秒、1秒、5秒など)におけるオブジェクトの予測された位置を表現することができる。
【0071】
また、環境内の付加的なオブジェクトについての予測された軌道が決定されることができる。例えば、演算608において、オブジェクトN(例えば、オブジェクト508)についての1つまたは複数の予測された軌道(例えば、予測された軌道509)が決定される。オブジェクトNについての予測された軌道は、オブジェクトAについての予測された軌道と実質的に同時に、および上述したのと同様の(または異なる)手法で、決定されることが可能である。例えば、オブジェクトNについての予測された軌道は、将来の1つまたは複数の時間(例えば、0.5秒、1秒、5秒など)におけるオブジェクトの予測された位置を表現することができ、ただし、1つまたは複数の時間は、オブジェクトAについての予測された位置が計算されるのと実質的に同じ時間である。様々なオブジェクト(例えば、オブジェクトA~オブジェクトN)についての予測された軌道は、車両504の第1の軌道512に関連して決定されることができる。換言すれば、プランニングシステムは、車両504が第1の軌道512に沿って環境を横断するにつれて、オブジェクトが車両504に関連して存在するであろう場所を決定する。
【0072】
演算610において、1つまたは複数の予測された軌道が、オブジェクトAについて決定され、これは、予測された軌道606に対応してもよく、または対応しなくてもよい。非限定的な例として、オブジェクトAの予測された軌道は、車両軌道に依存してもよく、そのため、異なり得る。同様に、演算612において、1つまたは複数の予測された軌道が、オブジェクトN(これは、上記のように、608において予測されたものと異なってもよい)について決定され、これは、オブジェクトAからオブジェクトNのうちの任意の数のオブジェクトについて、1つまたは複数の予測された軌道を決定することを含んでもよい。演算610および612においてオブジェクトAおよびオブジェクトNについて決定された予測された軌道は、車両504の第2の軌道514に関連して決定されることができる。したがって、プランニングシステムは、車両504が第2の軌道514に沿って環境を横断するにつれて、オブジェクトが車両504に関連して存在するであろう場所を決定する。ある例において、第1の軌道512に基づいて軌道が決定されるオブジェクトの数は、第2の軌道514に基づいて軌道が決定されるオブジェクトの数と異なってもよい。演算610および演算612は、車両504のプランニングシステムによって実質的に同時に実行されることが可能であり、演算606および演算608とも実質的に同時に実行されてもよい。さらに、オブジェクトAおよび/またはオブジェクトNについての予測された軌道は、第1の軌道512に対してオブジェクトAおよびオブジェクトNについて決定されたのと実質的に同じ将来の時間における、第2の軌道514に関連するオブジェクトAおよびオブジェクトNの予測された位置を表現することができる。
【0073】
演算614において、オブジェクトAに関連付けられる、予測されたオクルージョンされる領域が決定される。また、演算616において、オブジェクトNに関連付けられる、予測されたオクルージョンされる領域が決定される。上記で論じられるように、予測されたオクルージョンされる領域は、オブジェクトがセンサの環境の視界を妨げることが理由で、車両のセンサによって感知されることが不可能な環境のエリアに対応する。したがって、演算614および演算616によって決定された、予測されたオクルージョンされる領域は、車両504が第1の軌道512に従った場合に、車両504のセンサによって見られることが不可能なことがあり得る環境のエリアを表現する。
【0074】
演算618において、オブジェクトAに関連付けられる、予測されたオクルージョンされる領域が決定される。演算620において、オブジェクトNに関連付けられる、予測されたオクルージョンされる領域が決定される。したがって、演算618および演算620によって決定された、予測されたオクルージョンされる領域は、車両504が第2の軌道514に従った場合に、車両504のセンサによって感知されることが不可能であり得る環境のエリアを表現する。したがって、演算618および演算620によって決定された、予測されたオクルージョンされる領域は、第1の軌道512および第2の軌道514とで車両504の位置がオブジェクトAおよびオブジェクトNに関連して異なり得るので、演算614および演算616によって決定された、予測されたオクルージョンされる領域と(必然的ではないが)異なるであろう。
【0075】
演算622において、第1の軌道に関連付けられる第1のオクルージョンスコアが決定される。オクルージョンスコアは、予測されたオクルージョンされる領域に関連付けられる属性、例えば、オブジェクトA~オブジェクトNによってオクルージョンされる環境の割合、オブジェクトA~オブジェクトNに関連する視認性距離(例えば、オブジェクトが車両からどのくらい近いか、または遠いか)、オクルージョンされる領域が軌道の重要な領域を妨げるかどうか(例えば、車両の「背後の」オクルージョンされる領域は、車両の「正面の」オクルージョンされる領域、すなわち、車両の進行に影響を与えることになる領域、例えば対向車などを含む(または含んでよい)オクルージョンされる領域などほど重要ではないことがある)などの組み合わせの1つまたは複数などに基づいてよい。ある例において、第1のオクルージョンスコアは、第1の軌道512に対する軌道スコアを決定するために使用されることが可能であり、ただし、軌道スコアは、環境内のオブジェクトA~オブジェクトNのオクルージョンスコアの全体的な和または集約を表現する。
【0076】
演算624において、第2の軌道に関連付けられる第2のオクルージョンスコアが決定される。第2の車両軌道に対するオクルージョンスコアは、予測されたオクルージョンされる領域に関連付けられる、同じ属性または異なる属性を使用して、決定されることができる。また、ある例において、第2のオクルージョンスコアは、環境内のオブジェクトA~オブジェクトNのオクルージョンスコアの全体的な和または集約を表現する、第2の軌道514に対する軌道スコアを決定するために使用されることが可能である。
【0077】
演算626において、車両は、オクルージョンスコアに基づいて、および/または軌道スコアに基づいて、制御される。例えば、車両は、最も良い視認性割合(例えば、最も小さいオクルージョンされる面積)を有する軌道、重要なエリアの視認性を維持する(例えば、重要なエリアをオクルージョンしない)軌道、閾値オクルージョンスコア以上のオクルージョンスコアを有しない軌道などに従うように制御され得る。
【0078】
図7は、本明細書において説明される技法を実装するための例示的なシステム700のブロック図を描く。少なくとも1つの例において、システム700は、車両702を含むことができ、車両702は、
図1の車両112、
図2の車両204、
図3の車両304、
図4の車両404、および/または
図5A~
図5Cの車両504に対応することができる。
【0079】
車両702は、車両コンピューティングデバイス704と、1つまたは複数のセンサシステム706と、1つまたは複数のエミッタ708と、1つまたは複数の通信接続部710と、少なくとも1つの直接接続部712と、1つまたは複数の駆動システム714とを含むことができる。
【0080】
車両コンピューティングデバイス704は、1つまたは複数のプロセッサ716と、1つまたは複数のプロセッサ716と通信可能に結合されたメモリ718とを含むことができる。例示される例において、車両702は自律車両であるが、車両702は、任意の他のタイプの車両またはロボティックプラットホームであってもよい。例示される例において、車両コンピューティングデバイス704のメモリ718は、位置特定構成要素720、知覚構成要素722、1つまたは複数のマップ724、1つまたは複数のシステムコントローラ726、オクルージョン構成要素728、オブジェクト軌道予測構成要素730、オブジェクト位置投影構成要素732、プランニング構成要素734、および軌道選択構成要素736を格納する。
図7では、例示の目的のためにメモリ718に存在するものとして描かれているが、位置特定構成要素720、知覚構成要素722、1つまたは複数のマップ724、1つまたは複数のシステムコントローラ726、オクルージョン構成要素728、オブジェクト軌道予測構成要素730、オブジェクト位置投影構成要素732、プランニング構成要素734、および軌道選択構成要素736は、付加的にまたは代替的に、車両702にアクセス可能である(例えば、車両702から遠隔のメモリ上に格納される、または車両702から遠隔のメモリによって他の方法でアクセス可能である)ことが想定される。
【0081】
少なくとも1つの例において、位置特定構成要素720は、車両702の位置および/または向き(例えば、x位置、y位置、z位置、ロール、ピッチ、またはヨーのうちの1つまたは複数)を決定するために、センサシステム706からデータを受け取るための機能性を含むことができる。例えば、位置特定構成要素720は、環境のマップを含むことおよび/または要求すること/受け取ることができ、マップ内の自律車両の位置および/または向きを連続的に決定することができる。ある例において、位置特定構成要素720は、SLAM(自己位置推定およびマッピングの同時実行)、CLAMS(較正、位置特定およびマッピングの同時実行)、相対的SLAM、バンドル調整、非線形最小二乗最適化などを利用して、画像データ、ライダーデータ、レーダデータ、飛行時間データ、IMUデータ、GPSデータ、ホイールエンコーダデータなどを受け取って、自律車両の位置を正確に決定することができる。ある例において、位置特定構成要素720は、本明細書において論じられるように、車両702の様々な構成要素にデータを提供して、軌道を生成するために、および/またはメモリからオクルージョングリッドを含むマップデータを取り出すことを決定するために、自律車両の最初の位置を決定することができる。
【0082】
ある例において、知覚構成要素722は、オブジェクト検出、セグメンテーション、および/または分類を実行するための機能性を含むことができる。ある例において、知覚構成要素722は、車両702に近接するエンティティの存在、および/またはエンティティの分類をエンティティタイプ(例えば、自動車、歩行者、サイクリスト、動物、建物、樹木、路面、縁石、歩道、停止灯、一時停止標識、未知など)として示す、処理済みのセンサデータを提供することができる。付加的な例または代替的な例において、知覚構成要素722は、検出されたエンティティ(例えば、追跡されるオブジェクト)に関連付けられる1つまたは複数の特性および/またはエンティティが配置される環境を示す、処理済みのセンサデータを提供することができる。ある例において、エンティティに関連付けられる特性は、x位置(グローバル位置および/またはローカル位置)、y位置(グローバル位置および/またはローカル位置)、z位置(グローバル位置および/またはローカル位置)、向き(例えば、ロール、ピッチ、ヨー)、エンティティタイプ(例えば、分類)、エンティティの速度、エンティティの加速度、エンティティの範囲(サイズ)などを含むことができるが、これらに限定されない。環境に関連付けられる特性は、環境内の別のエンティティの存在、環境内の別のエンティティの状態、時刻、曜日、季節、気象条件、暗さ/照明のインジケーションなどを含むことができるが、これらに限定されない。
【0083】
メモリ718は、車両702によって環境内でナビゲートするために使用されることができる、1つまたは複数のマップ724をさらに含むことができる。この考察の目的のために、マップは、環境に関する情報を提供することができる2次元、3次元、またはN次元でモデル化された任意の数のデータ構造、例えば、(交差点などの)トポロジー、通り、山脈、道路、地形、および一般的な環境などとすることができるが、これらに限定されない。ある例において、マップは、テクスチャー情報(例えば、色情報(例えば、RGB色情報、Lab色情報、HSV/HSL色情報)など)、強度情報(例えば、ライダー情報、レーダ情報など)、空間情報(例えば、メッシュ上へ投影された画像データ、個々の「サーフェル」(例えば、個々の色および/または強度に関連付けられる多角形))、反射率情報(例えば、鏡面性情報、再帰反射性情報、BRDF情報、BSSRDF情報など)を含むことができるが、これらに限定されない。一例において、マップは、環境の3次元メッシュを含むことができる。ある例において、マップは、タイル化されたフォーマットで格納されることが可能であり、それにより、マップの個々のタイルは、環境の離散的な部分を表現し、必要に応じて作業メモリへロードされることが可能である。少なくとも1つの例において、1つまたは複数のマップ724は、少なくとも1つのマップ(例えば、画像および/またはメッシュ)を含むことができる。ある例において、車両702は、マップ724に少なくとも部分的に基づいて制御され得る。つまり、マップ724は、車両702の位置を決定するために、環境内のオブジェクトを識別するために、ならびに/または環境内でナビゲートするためのルートおよび/もしくは軌道を生成するために、位置特定構成要素720、知覚構成要素722、オクルージョン構成要素728、および/またはプランニング構成要素734に関連して使用され得る。
【0084】
ある例において、1つまたは複数のマップ724は、ネットワーク738を介してアクセス可能な(コンピューティングデバイス740などの)遠隔コンピューティングデバイス上に格納されることが可能である。ある例において、多様なマップ724は、例えば、特性(例えば、エンティティのタイプ、時刻、曜日、その年の季節など)に基づいて格納されることが可能である。多様なマップ724を格納することは、同様のメモリ要件を有することが可能であるが、マップ内のデータがアクセスされることが可能である速度を高める。
【0085】
ある例において、1つまたは複数のマップ724は、環境内の個々の位置に関連付けられるオクルージョングリッドを格納することができる。例えば、車両702が環境を横断するにつれて、および、車両702に近接したエリアを表現するマップがメモリへロードされるにつれて、位置に関連付けられる1つまたは複数のオクルージョングリッドも同様にメモリへロードされ得る。ある例において、オクルージョングリッドは、マップデータに基づいて動的に生成されることが可能である。
【0086】
一般に、オクルージョン構成要素728は、将来の時間における、環境内のオクルージョンされるエリアを予測することを含めて、環境内の1つまたは複数のオブジェクトによって引き起こされる、環境のオクルージョンされるエリアを決定することができる。ある例において、オクルージョン構成要素728は、いつおよび/またはどのように車両702を制御して環境を横断させるかを決定するために、プランニング構成要素734にオクルージョン情報を提供することができる。本明細書において論じられるように、オクルージョン構成要素728は、環境内のオクルージョン関連情報を決定するために、ライダーデータ、画像データ、マップデータなどを受け取ることができる。オクルージョングリッドを生成および/または使用する例は、2018年6月18日に出願された米国特許出願第16/011,436号において論じられている。米国特許出願第16/011,436号は、その全体が参照によって本明細書に組み込まれている。
【0087】
オクルージョン構成要素728に含まれるオブジェクト軌道予測構成要素730は、リアルタイムなどで、環境内のオブジェクトの軌道を決定し、オブジェクトの将来の軌道を予測することもできる。予測された軌道は、オブジェクト分類、位置、速度、加速度、センサ不確実性などに基づいて、オブジェクトの取り得る位置を決定するために、オブジェクトを経時的に評価することと共に、オブジェクトの現在の位置に基づくことができる。オブジェクト軌道予測構成要素730は、多様な取り得る車両軌道に対する多様なオブジェクト軌道を実質的に同時に評価および/または予測するように構成され得る。1つまたは複数の予測された軌道を生成する例は、2018年10月4日に出願された米国特許出願第16/151,607号において論じられている。米国特許出願第16/151,607号は、その全体が参照によって本明細書に組み込まれている。
【0088】
オブジェクト位置投影構成要素732は、車両軌道に対する様々なオブジェクト軌道に関連付けられる、予測されたオクルージョンされる領域を決定することができる。例えば、オブジェクト位置投影構成要素732は、オクルージョンされる領域を車両の周囲の環境のマップ724上へ投影して、環境のどの「知られている」部分がオブジェクトによってオクルージョンされることになるかを決定することができる。マップ724は、環境の重要なエリア、例えば、横断歩道、交差点、バイク車線、進入車線などを決定するために、オブジェクト位置投影構成要素732によって使用され得る。ある例において、オブジェクト位置投影構成要素732は、レイキャスティング技法を使用して、オブジェクトに関連付けられる予測されたオクルージョンされる領域を決定することができる。さらに、オブジェクト位置投影構成要素732は、オクルージョンされると予測された、環境のエリアの相対的重要度に基づいて、予測されたオクルージョンされる領域に対するオクルージョンスコアを決定することができる。付加的に、または代替的に、オブジェクト位置投影構成要素732は、他の要因、例えば、オクルージョンされる領域によって妨げられる環境の割合、車両からオクルージョンされる領域までの距離、オクルージョンされる領域に関連付けられるマップデータ(例えば、横断歩道領域、私道などを示す)などに基づいて、オクルージョンスコアを決定してもよい。ある例において、オブジェクト位置投影構成要素732は、オクルージョンスコアを特定の軌道に対する軌道スコアへ集約することができ、ただし、軌道スコアは、車両702にとってより良い(またはより悪い)視認性をもたらすことになる車両702を代表する軌道またはアクションに対応し得る。
【0089】
一般に、プランニング構成要素734は、環境を横断するために車両702が従うべき経路を決定することができる。例えば、プランニング構成要素734は、様々なルートおよび軌道ならびに様々なレベルの詳細を決定することができる。例えば、プランニング構成要素734は、第1の位置(例えば、現在の位置)から第2の位置(例えば、ターゲット位置)へ進行するためのルートを決定することができる。この考察の目的のために、ルートは、2つの位置間で進行するための通過点のシーケンスとすることができる。非限定的な例として、通過点は、通り、交差点、全地球測位システム(GPS)座標などを含む。さらに、プランニング構成要素734は、第1の位置から第2の位置へのルートの少なくとも一部に沿って自律車両を案内するための命令を生成することができる。少なくとも1つの例において、プランニング構成要素734は、通過点のシーケンス内の第1の通過点から、通過点のシーケンス内の第2の通過点へ、どのように自律車両を案内するかを決定することができる。ある例において、命令は、軌道、または軌道の一部とすることができる。ある例において、多様な軌道は、後退水平技法に従って(例えば、技術的な許容範囲内で)実質的に同時に生成されることが可能であり、ただし、多様な軌道のうちの1つが、車両702をナビゲートするために選択される。
【0090】
ある例において、プランニング構成要素734は、本明細書において論じられるように、様々な軌道に対して決定されたオクルージョンスコアおよび/または軌道スコアに少なくとも部分的に基づいて、車両702についての1つまたは複数の軌道を生成することができる。ある例において、プランニング構成要素734は、線形時間論理および/または信号時間論理などの時間論理を使用して、車両702の1つまたは複数の軌道を評価することができる。プランニング構成要素734内の時間論理を利用する詳細は、米国特許出願第15/632,147号において論じられており、これは、その全体が参照によって本明細書に組み込まれている。
【0091】
少なくとも1つの例において、車両コンピューティングデバイス704は、1つまたは複数のシステムコントローラ726を含むことができ、1つまたは複数のシステムコントローラ726は、ステアリング、推進、制動、安全性、エミッタ、通信、および車両702の他のシステムを制御するように構成され得る。これらのシステムコントローラ726は、駆動システム714の対応するシステムおよび/または車両702の他の構成要素と通信することおよび/またはこれらを制御することができる。
【0092】
理解され得るように、本明細書において論じられる構成要素(例えば、位置特定構成要素720、知覚構成要素722、1つまたは複数のマップ724、1つまたは複数のシステムコントローラ726、オクルージョン構成要素728、オブジェクト軌道予測構成要素730、オブジェクト位置投影構成要素732、プランニング構成要素734、および軌道選択構成要素736)は、例示の目的のために分割されたものとして説明されている。しかしながら、様々な構成要素によって実行される演算は、組み合わされることが可能であり、または任意の他の構成要素内で実行されることが可能である。例として、オブジェクト位置予測/投影機能は、システムによって伝達されるデータの量を低減させるために、(例えば、オブジェクト軌道予測構成要素730ではなく)知覚構成要素722によって実行されてもよい。
【0093】
少なくとも1つの例において、センサシステム706は、ライダーセンサ、レーダセンサ、超音波振動子、ソナーセンサ、位置センサ(例えば、GPS、コンパスなど)、慣性センサ(例えば、慣性計測ユニット(IMU)、加速度計、磁力計、ジャイロスコープなど)、カメラ(例えば、RGB、IR、強度、奥行き、飛行時間など)、マイクロフォン、ホイールエンコーダ、環境センサ(例えば、温度センサ、湿度センサ、光センサ、圧力センサなど)などを含むことができる。センサシステム706は、これらのまたは他のタイプのセンサの各々の多様な例を含むことができる。例えば、ライダーセンサは、車両702の角部、前部、後部、側面、および/または上部に位置する個々のライダーセンサを含むことができる。別の例として、カメラセンサは、車両702の外部および/または内部に関する様々な位置に配設された多様なカメラを含むことができる。センサシステム706は、車両コンピューティングデバイス704に入力を提供することができる。付加的に、または代替的に、センサシステム706は、所定の期間の経過後、ほぼリアルタイムなどで、1つまたは複数のネットワーク738を介して、1つまたは複数のコンピューティングデバイスに特定の周波数でセンサデータを送ることができる。
【0094】
車両702は、上述したように、照明および/または音を発するための1つまたは複数のエミッタ708も含むことができる。この例におけるエミッタ708は、車両702の搭乗者と通信するための内部オーディオおよび視覚的エミッタを含む。限定ではなく、例として、内部エミッタは、スピーカ、照明、サイン、表示画面、タッチ画面、触覚エミッタ(例えば、振動および/または力フィードバック)、機械的アクチュエータ(例えば、シートベルトテンショナ、シートポジショナ、ヘッドレストポジショナなど)などを含むことができる。この例におけるエミッタ708は、外部エミッタも含む。限定ではなく、例として、この例における外部エミッタは、進行方向を伝えるための照明または車両アクションの他のインジケータ(例えば、インジケータ照明、サイン、照明アレイなど)、および、歩行者または他の近くの車両と音で通信するための1つまたは複数のオーディオエミッタ(例えば、スピーカ、スピーカアレイ、ホーンなど)を含み、これらのうちの1つまたは複数は、音響ビームステアリング技術を含む。
【0095】
車両702は、車両702と1つまたは複数の他のローカルコンピューティングデバイスまたは遠隔コンピューティングデバイスと間の通信を可能にする、1つまたは複数の通信接続部710も含むことができる。例えば、通信接続部710は、車両702上の他のローカルコンピューティングデバイスおよび/または駆動システム714との通信を容易にすることができる。また、通信接続部710は、車両が他の近くのコンピューティングデバイス(例えば、他の近くの車両、交通信号機など)と通信することを可能にすることができる。通信接続部710は、車両702が遠隔の遠隔操作コンピューティングデバイスまたは他の遠隔サービスと通信することも可能にする。
【0096】
通信接続部710は、車両コンピューティングデバイス704を別のコンピューティングデバイス、またはネットワーク738などのネットワークに接続するための物理的および/または論理的なインターフェースを含むことができる。例えば、通信接続部710は、IEEE802.11標準によって定義された周波数、ブルートゥース(登録商標)などの短距離無線周波数、セルラー通信(例えば、2G、3G、4G、4G LTE、5Gなど)、または、それぞれのコンピューティングデバイスが他のコンピューティングデバイスとインターフェースすることを可能にする任意の適切な有線通信プロトコルもしくは無線通信プロトコルなどを介した、Wi-Fiベースの通信を可能にすることができる。
【0097】
少なくとも1つの例において、車両702は、1つまたは複数の駆動システム714を含むことができる。ある例において、車両702は、単一の駆動システム714を有することができる。少なくとも1つの例において、車両702が多様な駆動システム714を有する場合、個々の駆動システム714は、車両702の対向する端部(例えば、前部および後部など)に配置され得る。少なくとも1つの例において、駆動システム714は、駆動システム714および/または車両702の周囲の条件を検出するための1つまたは複数のセンサシステムを含むことができる。限定ではなく、例として、センサシステムは、駆動モジュールのホイールの回転を感知するための1つまたは複数のホイールエンコーダ(例えば、ロータリエンコーダ)、駆動モジュールの向きおよび加速度を測定するための慣性センサ(例えば、慣性計測ユニット、加速度計、ジャイロスコープ、磁力計など)、カメラまたは他の画像センサ、駆動システムの周囲におけるオブジェクトを音響的に検出するための超音波センサ、ライダーセンサ、レーダセンサなどを含むことができる。ホイールエンコーダなどのあるセンサは、駆動システム714固有とすることができる。ある場合において、駆動システム714上のセンサシステムは、車両702の対応するシステム(例えば、センサシステム706)と重複すること、または車両702の対応するシステムを補足することができる。
【0098】
駆動システム714は、高電圧バッテリ、車両を推進させるためのモータ、他の車両システムによる使用のためにバッテリからの直流を交流に変換するためのインバータ、ステアリングモータとステアリングラックとを含むステアリングシステム(これは電動式とすることができる)、油圧アクチュエータまたは電気アクチュエータを含むブレーキシステム、油圧構成要素および/または空気圧構成要素を含むサスペンションシステム、静止摩擦の損失を緩和し、制御を維持するために制動力を分配するための安定性制御システム、HVACシステム、照明(例えば、車両の外周を照明するためのヘッドライド/テールライトなどの照明)、および1つまたは複数の他のシステム(例えば、冷却システム、安全システム、車載充電システム、DC/DCコンバータなどの他の電気構成要素、高電圧ジャンクション、高電圧ケーブル、充電システム、充電ポートなど)を含めて、車両システムの多くを含むことができる。また、駆動システム714は、センサシステムからデータを受け取り、前処理することができ、様々な車両システムの演算を制御するための駆動システムコントローラを含むことができる。ある例において、駆動システムコントローラは、1つまたは複数のプロセッサと、1つまたは複数のプロセッサと通信可能に結合されたメモリとを含むことができる。メモリは、駆動システム714の様々な機能性を実行するための1つまたは複数の構成要素を格納することができる。さらに、駆動システム714は、それぞれの駆動システムによる、1つまたは複数の他のローカルコンピューティングデバイスまたは遠隔コンピューティングデバイスとの通信を可能にする、1つまたは複数の通信接続部も含む。
【0099】
少なくとも1つの例において、直接接続部712は、1つまたは複数の駆動システム714を車両702の本体と結合するための物理的なインターフェースを提供することができる。例えば、直接接続部712は、駆動システム714と車両との間でエネルギー、流体、空気、データなどを伝達することを可能にすることができる。ある例において、直接接続部712は、車両702の本体に駆動システム714をさらに取り外し可能に固定することができる。
【0100】
少なくとも1つの例において、位置特定構成要素720、知覚構成要素722、1つまたは複数のマップ724、1つまたは複数のシステムコントローラ726、オクルージョン構成要素728、オブジェクト軌道予測構成要素730、オブジェクト位置投影構成要素732、プランニング構成要素734、および軌道選択構成要素736は、上述したように、センサデータを処理することができ、それらのそれぞれの出力を、1つまたは複数のネットワーク738上で、1つまたは複数のコンピューティングデバイス740に送ることができる。少なくとも1つの例において、位置特定構成要素720、知覚構成要素722、1つまたは複数のマップ724、1つまたは複数のシステムコントローラ726、オクルージョン構成要素728、オブジェクト軌道予測構成要素730、オブジェクト位置投影構成要素732、プランニング構成要素734、および軌道選択構成要素736は、それらのそれぞれの出力を、所定の期間の経過後、ほぼリアルタイムなどで、特定の周波数で1つまたは複数のコンピューティングデバイス740に送ることができる。
【0101】
ある例において、車両702は、ネットワーク738を介して、1つまたは複数のコンピューティングデバイス740にセンサデータを送ることができる。ある例において、車両702は、コンピューティングデバイス740に未加工のセンサデータを送ることができる。他の例において、車両702は、コンピューティングデバイス740に、処理済みのセンサデータおよび/またはセンサデータの表現を送ることができる。ある例において、車両702は、所定の期間の経過後、ほぼリアルタイムなどで、コンピューティングデバイス740に特定の周波数でセンサデータを送ることができる。ある場合において、車両702は、コンピューティングデバイス740に、センサデータ(未加工または処理済み)を1つまたは複数のログファイルとして送ることができる。
【0102】
コンピューティングデバイス740は、プロセッサ742と、トレーニング構成要素746を格納するメモリ744とを含むことができる。
【0103】
ある例において、トレーニング構成要素746は、オブジェクト位置および/または軌道の予測を決定し、オクルージョンされる領域の予測を決定し、軌道がどのように生成されることができるか、および/または、環境内のオブジェクト位置に応じて軌道がどのように変化することができるかを決定するなどのために、1つまたは複数のモデルをトレーニングするための機能性を含むことが可能である。ある例において、トレーニング構成要素746は、異なる状況に応じて車両702をどのように制御するかを修正するために、車両コンピューティングデバイス704に、1つまたは複数のモデルによって生成された情報を通信することができる。
【0104】
例えば、本明細書において論じられる構成要素の一部または全部の態様は、任意のモデル、アルゴリズム、および/または機械学習アルゴリズムを含むことができる。例えば、ある例において、メモリ744(および、上記で論じられるメモリ718)内の構成要素は、ニューラルネットワークとして実装されることが可能である。ある例において、トレーニング構成要素746は、ニューラルネットワークを利用して1つまたは複数のモデルを生成および/または実行して、軌道プランニングのためのオクルージョン分析の様々な態様を改善することができる。
【0105】
本明細書において説明されるように、例示的なニューラルネットワークは、入力データに一連の接続された層を通過させて出力を作る生物模倣アルゴリズムである。ニューラルネットワーク内の各層は、別のニューラルネットワークも含むことができ、または(畳み込みであっても、畳み込みでなくても)任意の数の層を含むことができる。本開示の文脈で理解され得るように、ニューラルネットワークは、機械学習を利用することができ、これは、学習されたパラメータに基づいて出力が生成されるような広範なクラスのアルゴリズムを指すことができる。
【0106】
ニューラルネットワークのコンテキストで論じられているが、任意のタイプの機械学習が本開示と調和して使用され得る。例えば、機械学習アルゴリズムは、回帰アルゴリズム(例えば、通常最小二乗回帰(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(サポートベクトルマシン)、教師付き学習、教師なし学習、半教師付き学習などを含むことができるが、これらに限定されない。
【0107】
アーキテクチャの付加的な例は、ResNet50、ResNet101、VGG、DenseNet、PointNetなどのニューラルネットワークを含む。
【0108】
車両702のプロセッサ716およびコンピューティングデバイス740のプロセッサ742は、本明細書において説明されるようにデータを処理し、演算を実行するための命令を実行することが可能な任意の適切なプロセッサとすることができる。限定ではなく、例として、プロセッサ716および742は、1つもしくは複数の中央処理装置(CPU)、グラフィック処理ユニット(GPU)、または、電子データを処理して、その電子データを、レジスタおよび/もしくはメモリに格納されることが可能である他の電子データに変換する、任意の他のデバイスもしくはデバイスの部分を含むことが可能である。ある例において、集積回路(例えば、ASICなど)、ゲートアレイ(例えば、FPGAなど)、および他のハードウェアデバイスも、それらが、符号化された命令を実装するように構成される限り、プロセッサとみなされ得る。
【0109】
メモリ718および744は、非一時的なコンピュータ可読媒体の例である。メモリ718および744は、本明細書において説明される方法、および様々なシステムに帰属する機能を実装するための、オペレーティングシステムおよび1つまたは複数のソフトウェアアプリケーション、命令、プログラム、および/またはデータを格納することができる。様々な実装において、メモリは、任意の適切なメモリ技術、例えば、スタティックランダムアクセスメモリ(SRAM)、シンクロナスダイナミックRAM(SDRAM)、不揮発性/フラッシュタイプメモリ、または、情報を格納することが可能な任意の他のタイプのメモリなどを使用して、実装されることが可能である。本明細書において説明されるアーキテクチャ、システム、および個々の要素は、多くの他の論理的構成要素、プログラム構成要素、および物理的構成要素を含むことができ、これらのうちで添付の図に示されるものは、本明細書における考察に関連する例にすぎない。
【0110】
図7は分散型システムとして例示されているが、代替的な例において、車両702の構成要素はコンピューティングデバイス740に関連付けられることが可能であること、および/またはコンピューティングデバイス740の構成要素は車両702に関連付けられることが可能であることが、留意されるべきである。つまり、車両702は、コンピューティングデバイス740に関連付けられる機能のうちの1つまたは複数を実行することができ、その逆も同様である。さらに、オクルージョン構成要素728および/またはプランニング構成要素734の態様は、本明細書において論じられるデバイスのいずれかで実行されることが可能である。
【0111】
図8は、本開示の実施形態による、センサデータをキャプチャし、オブジェクトについての予測された位置を決定し、自律車両が環境を横断するための軌道を決定し、異なる車両軌道に基づいて、オブジェクトについての予測された位置に関連付けられる予測されたオクルージョンされる領域を決定し、オクルージョンされる領域に関連付けられるコストに基づいて軌道を選択し、選択された軌道に基づいて自律車両を制御する例示的なプロセス800を描く。例えば、プロセス800の一部または全部は、本明細書において説明されるように、
図8内の1つまたは複数の構成要素によって実行され得る。例えば、プロセス800の一部または全部は、車両コンピューティングデバイス704によって実行され得る。さらに、例示的なプロセス800において説明される演算のいずれも、並行して、プロセス800に描かれているものとは異なる順序で、および/または描かれているプロセス800の演算のいずれかを省略して、実行されてもよい。
【0112】
演算802において、プロセスは、自律車両を制御することを含むことが可能であり、環境を横断する。例えば、演算802は、目的地に到達するための通過点間の1つまたは複数の軌道に従うように自律車両を制御することを含んでよい。
【0113】
演算804において、プロセスは、自律車両上のセンサを使用して、環境のセンサデータをキャプチャすることを含むことができる。ある例において、演算804は、環境のライダーデータ、画像データ、レーダデータ、飛行時間データなどをキャプチャすることを含むことができる。
【0114】
演算806において、プロセスは、環境内のオブジェクトの予測された位置を決定することを含むことができる。ある例において、演算806は、離散化された確率分布、または環境内のオブジェクトの取り得る位置に関連付けられる予測確率を含むヒートマップを使用して、オブジェクトの予測された位置を決定することができる。ある例において、演算806は、オブジェクトが静的オブジェクトであると決定することを含むことができ、この場合には、オブジェクトは静止したままでよい。
【0115】
演算808において、プロセスは、自律車両が環境を横断するための第1の軌道および第2の軌道を決定することを含むことができる。演算808は、いくつかの例を挙げると、自律車両の物理的な限定、自律車両の場所の法的規制、それに関連付けられるコスト、および/または自律車両の意図される目的地を含む、多種多様な要因に基づいてよい。当然ながら、演算808は、自律車両のための任意の数の軌道またはアクションを決定することを含むことができる。
【0116】
演算810において、プロセスは、第1の軌道およびオブジェクトの予測された位置(これは第1の軌道に少なくとも部分的に基づいてよい)に基づいて、オブジェクトに関連付けられる第1のオクルージョンされる領域を決定することを含むことができる。第1のオクルージョンされる領域は、環境のマップに少なくとも部分的に基づいて決定されてもよく、それにより、自律車両のプランニングシステムは、自律車両が第1の軌道に従う場合にオブジェクトによってオクルージョンされ得る、環境の知られている構成要素のサイズおよび/または相対的重要度を決定することができる。
【0117】
演算812において、プロセスは、第2の軌道およびオブジェクトの予測された位置(これは第2の軌道に少なくとも部分的に基づいて決定されてよい)に基づいて、オブジェクトに関連付けられる第2のオクルージョンされる領域を決定することを含むことができる。第2のオクルージョンされる領域も、環境のマップに少なくとも部分的に基づいて決定されてもよく、それにより、自律車両のプランニングシステムは、自律車両が第2の軌道に従う場合にオブジェクトによってオクルージョンされ得る、環境の知られている構成要素のサイズおよび/または相対的重要度を決定することができる。ある例において、演算812は、演算810と実質的に同時に実行される。
【0118】
演算814において、プロセスは、第1のオクルージョンされる領域に関連付けられる1つまたは複数の属性に基づいて、第1のオクルージョンされる領域に対する第1のオクルージョンスコアを決定することを含むことができる。第1のオクルージョンされる領域に対する第1のオクルージョンスコアは、自律車両が第1の軌道に従う場合にオブジェクトによってオクルージョンされ得る、環境の知られている構成要素のサイズおよび/または相対的重要度に基づいてよい。ある例において、オクルージョンされる領域の属性は、マップデータ、動的データ(例えば、オクルージョンされる領域内の歩行者、動物、車両などを示す、キャプチャされたデータ)、または他のデータに基づくことができる。
【0119】
演算816において、プロセスは、第2のオクルージョンされる領域に関連付けられる1つまたは複数の属性に基づいて、第2のオクルージョンされる領域に対する第2のオクルージョンスコアを決定することを含むことができる。第2のオクルージョンされる領域に対する第2のオクルージョンスコアも、自律車両が第2の軌道に従う場合にオブジェクトによってオクルージョンされ得る、環境の知られている構成要素のサイズおよび/または相対的重要度に基づいてよい。ある例において、オクルージョンされる領域の属性は、マップデータ、動的データ(例えば、オクルージョンされる領域内の歩行者、動物、車両などを示す、キャプチャされたデータ)、または他のデータに基づくことができる。ある例において、演算814は、演算816と実質的に同時に実行される。
【0120】
演算818において、プロセスは、第1のオクルージョンスコアおよび/または第2のオクルージョンスコアに少なくとも部分的に基づいて、第1の軌道または第2の軌道を、選択された軌道として選択することを含むことができる。第1の軌道または第2の軌道を選択することは、選択された軌道に沿った車両にとってより良い予測された視認性を表現するオクルージョンスコアをどの軌道が有するかに基づいてよい。ある場合においては、安全性への懸念のために、または道路交通法に従うなどのために、車両の他のシステムが選択をオーバーライドすることに起因して、より悪い予測された視認性を表現するオクルージョンスコアを有する軌道が選択され得る。本願明細書において論じられるように、演算818は、他のコスト、例えば、基準コスト、障害物コスト、ステアリングコスト、加速度コストなどに基づいて、第1の軌道または第2の軌道を選択することを含むことができる。
【0121】
演算820において、プロセスは、選択された軌道に少なくとも部分的に基づいて、自律車両を制御することを含むことができる。このようにして、本明細書における技法は、予測されたオクルージョンされる領域を自律車両の制御に組み込むことができる。
【0122】
(例示的な条項)
A:システムであって、1つまたは複数のプロセッサと、1つまたは複数のプロセッサによって実行可能な命令を格納する1つまたは複数のコンピュータ可読媒体とを備え、命令は、実行された場合に、システムに、自律車両のセンサを使用して、環境のセンサデータをキャプチャすることと、自律車両が環境内を横断するための第1の軌道を決定することと、自律車両が環境内を横断するための第2の軌道を決定することと、センサデータに少なくとも部分的に基づいて、環境内のオブジェクトの現在の位置を検出することと、センサデータに少なくとも部分的に基づいて、オブジェクトの予測された位置を決定することと、第1の軌道およびオブジェクトの予測された位置に少なくとも部分的に基づいて、オブジェクトに関連付けられる第1のオクルージョンされる領域を決定することと、第2の軌道およびオブジェクトの予測された位置に少なくとも部分的に基づいて、オブジェクトに関連付けられる第2のオクルージョンされる領域を決定することと、第1のオクルージョンされる領域に関連付けられる第1のコスト、または第2のオクルージョンされる領域に関連付けられる第2のコストに少なくとも部分的に基づいて、第1の軌道または第2の軌道を、選択された軌道として選択することと、選択された軌道に少なくとも部分的に基づいて、自律車両を制御することとを含む演算を実行させる、システム。
【0123】
B:予測された位置は、第1の時間に関連付けられる第1の予測された位置であり、演算は、センサデータに少なくとも部分的に基づいて、環境内のオブジェクトの第2の予測された位置を決定することであって、第2の予測された位置は、第1の時間の後の第2の時間に関連付けられる、決定することと、第1の軌道および第2の予測された位置に少なくとも部分的に基づいて、オブジェクトに関連付けられる第3のオクルージョンされる領域を決定することとをさらに含み、第1の軌道または第2の軌道を選択することは、第3のオクルージョンされる領域に関連付けられる第3のコストに少なくとも部分的にさらに基づく段落Aのシステム。
【0124】
C:オブジェクトは、静止オブジェクトであり、第1の予測された位置は、第2の予測された位置に対応し、または、オブジェクトは、動的オブジェクトであり、第1の予測された位置は、第2の予測された位置と異なる段落Bのシステム。
【0125】
D:演算は、環境に関連付けられるマップデータに少なくとも部分的に基づいて、第1のオクルージョンされる領域に対するオクルージョンスコアを決定することをさらに含み、選択された軌道を選択することは、オクルージョンスコアにさらに基づく段落A~Cのうちのいずれか1つに記載のシステム。
【0126】
E:演算は、オブジェクトの予測された位置に少なくとも部分的に基づいて、オブジェクトについての多様な予測された軌道を決定することをさらに含み、多様な予測された軌道のうちの1つまたは複数を決定することは、オブジェクトを表現するヒートマップを生成するためにトレーニングされた機械学習モデルから受け取られたヒートマップと、オブジェクトの分類、オブジェクトの最初の位置、オブジェクトの速度に少なくとも部分的に基づいた確率マップと、または、オブジェクトに関連付けられる物理ベースのモデルとのうちの少なくとも1つに少なくとも部分的に基づく段落A~Dのうちのいずれか1つに記載のシステム。
【0127】
F:車両が環境内で従うための軌道を受け取るステップと、環境内のオブジェクトについての予測された位置を決定するステップであって、予測された位置は、将来の時間に関連付けられる、ステップと、予測された位置および軌道に少なくとも部分的に基づいて、将来の時間におけるオブジェクトに関連付けられるオクルージョンされる領域を決定するステップと、オクルージョンされる領域に少なくとも部分的に基づいて、車両を制御するステップとを含む方法。
【0128】
G:オクルージョンされる領域に関連付けられるオクルージョンスコアを決定するステップであって、オクルージョンスコアは、マップデータに少なくとも部分的に基づく、ステップをさらに含む段落Fの方法。
【0129】
H:将来の時間におけるオクルージョングリッドのオクルージョンフィールドのオクルージョン状態および占有状態を決定するステップをさらに含む段落Gの方法。
【0130】
I:オクルージョンされる領域に関連付けられる属性に基づいて、オクルージョンされる領域に対するオクルージョンスコアを決定することをさらに含み、車両を制御するステップは、オクルージョンされる領域に対するオクルージョンスコアにさらに基づく段落F~Hのうちのいずれか1つに記載の方法。
【0131】
J:オブジェクトは、第1のオブジェクトであり、予測された位置は、第1の予測された位置であり、オクルージョンされる領域は、第1のオクルージョンされる領域であり、方法は、環境内の第2のオブジェクトについての第2の予測された位置を決定するステップであって、第2の予測された位置は、将来の時間に関連付けられる、ステップと、第2の予測された位置および軌道に少なくとも部分的に基づいて、将来の時間における第2のオブジェクトに関連付けられる第2のオクルージョンされる領域を決定するステップとさらに含み、車両を制御するステップは、第2のオクルージョンされる領域にさらに基づく段落F~Iのうちのいずれか1つに記載の方法。
【0132】
K:第1のオクルージョンされる領域に関連付けられる第1の属性に基づいて、第1のオクルージョンされる領域に対する第1のオクルージョンスコアを決定するステップと、第2のオクルージョンされる領域に関連付けられる第2の属性に基づいて、第2のオクルージョンされる領域に対する第2のオクルージョンスコアを決定するステップと、第1のオクルージョンスコアおよび第2のオクルージョンスコアに少なくとも部分的に基づいて、軌道に対する軌道スコアを決定するステップとをさらに含み、車両を制御するステップは、軌道に対する軌道スコアにさらに基づく段落Jの方法。
【0133】
L:軌道は、第1の軌道であり、軌道スコアは、第1の軌道スコアであり、方法は、第2の軌道に対する第2の軌道スコアを決定するステップと、第1の軌道スコアまたは第2の軌道スコアに少なくとも部分的に基づいて、第1の軌道または第2の軌道を、選択された軌道として選択するステップとをさらに含み、車両を制御するステップは、選択された軌道に少なくとも部分的にさらに基づく段落Kの方法。
【0134】
M:第1の属性は、第1のオクルージョンされる領域に関連付けられるマップデータ、第1のオクルージョンされる領域内の1つまたは複数のオブジェクト、軌道に関連付けられるポイントと第1のオクルージョンされる領域との間の距離、第1のオクルージョンされる領域のサイズ、第1のオクルージョンされる領域に関連付けられる期間、または、車両に関連付けられる進行方向のうちの1つまたは複数に関連付けられる段落KまたはLの方法。
【0135】
N:環境内のオブジェクトの予測された位置は、ライダーセンサ、レーダセンサ、画像センサ、または飛行時間センサのうちの1つまたは複数から受け取られたセンサデータに少なくとも部分的に基づく段落F~Mのうちのいずれか1つに記載の方法。
【0136】
O:命令を格納する非一時的なコンピュータ可読媒体であって、命令は、実行された場合に、1つまたは複数のプロセッサに、車両が環境内で従うための第1の軌道を受け取ることと、車両が環境内で従うための第2の軌道を受け取ることと、将来の時間における環境内のオブジェクトの予測された位置を決定することと、第1の軌道およびオブジェクトの予測された位置に少なくとも部分的に基づいて、オブジェクトに関連付けられる第1のオクルージョンされる領域を決定することと、第2の軌道およびオブジェクトの予測された位置に少なくとも部分的に基づいて、オブジェクトに関連付けられる第2のオクルージョンされる領域を決定することと、第1のオクルージョンされる領域および第2のオクルージョンされる領域に少なくとも部分的に基づいて、車両を制御することとを含む演算を実行させる非一時的なコンピュータ可読媒体。
【0137】
P:予測された位置は、第1の予測された位置であり、将来の時間は、第1の時間であり、演算は、環境内のオブジェクトの第2の予測された位置を決定することであって、第2の予測された位置は、第1の時間の後の第2の時間に関連付けられる、決定することと、第1の軌道および第2の予測された位置に少なくとも部分的に基づいて、オブジェクトに関連付けられる第3のオクルージョンされる領域を決定することとをさらに含み、車両を制御することは、第3のオクルージョンされる領域に少なくとも部分的にさらに基づく段落Oの非一時的なコンピュータ可読媒体。
【0138】
Q:オブジェクトは、静止オブジェクトであり、第1の予測された位置は、第2の予測された位置に対応し、または、オブジェクトは、動的オブジェクトであり、第1の予測された位置は、第2の予測された位置と異なる段落Pの非一時的なコンピュータ可読媒体。
【0139】
R:演算は、環境に関連付けられるマップデータに少なくとも部分的に基づいて、第1のオクルージョンされる領域に対するオクルージョンスコアを決定することをさらに含み、車両を制御することは、オクルージョンスコアにさらに基づく段落O~Qのうちのいずれか1つに記載の非一時的なコンピュータ可読媒体。
【0140】
S:環境内のオブジェクトの予測された位置を決定することは、オブジェクトを表現するヒートマップを生成するためにトレーニングされた機械学習モデルから受け取られたヒートマップと、オブジェクトの分類、オブジェクトの最初の位置、オブジェクトの速度に少なくとも部分的に基づいた確率マップと、または、オブジェクトに関連付けられる物理ベースのモデルとのうちの少なくとも1つに少なくとも部分的に基づく段落O~Rのうちのいずれか1つに記載の非一時的なコンピュータ可読媒体。
【0141】
T:オブジェクトの予測された位置を決定することは、ライダーセンサ、レーダセンサ、画像センサ、または飛行時間センサのうちの1つまたは複数から受け取られたセンサデータに少なくとも部分的に基づく段落O~Sのうちのいずれか1つに記載の非一時的なコンピュータ可読媒体。
【0142】
上述した例示的な条項は、1つの特定の実装に関して説明されているが、本文書の文脈において、例示的な条項の内容は、方法、デバイス、システム、コンピュータ可読媒体、および/または別の実装を介しても実装されることが可能であることが、理解されるべきである。
【0143】
(結論)
本明細書において説明される技法の1つまたは複数の例が説明されてきたが、様々な変更、追加、置換およびその均等物は、本明細書において説明される技法の範囲内に含まれる。
【0144】
例の説明において、本明細書の一部を形成する添付の図面への参照が行われ、それは、特許請求される主題の特定の例を例示として示す。他の例が使用されることが可能であること、または、構造変更などの、変形および変更を行うことが可能であることが理解されるべきである。そのような例、変形または変更は、意図した特許請求される主題に関する範囲から必ずしも逸脱するものとは限らない。本明細書におけるステップは、一定の順序で提示され得るが、ある場合において、説明されているシステムおよび方法の機能を変化させずに、異なる時にまたは異なる順序で、一定の入力が提供されるように、順序付けは変化させられ得る。開示されている手続きは、異なる順序でも実行され得る。また、本明細書における様々な計算は、開示された順序で実行される必要はなく、計算の代替的な順序付けを使用する他の例が、容易に実装され得る。再順序付けに加えて、計算は、同じ結果を有するサブ計算へと分解されることも可能である。