(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-18
(45)【発行日】2024-01-26
(54)【発明の名称】オクルージョン認識プランニング
(51)【国際特許分類】
B60W 30/10 20060101AFI20240119BHJP
B60W 60/00 20200101ALI20240119BHJP
G08G 1/16 20060101ALI20240119BHJP
G06T 7/00 20170101ALI20240119BHJP
【FI】
B60W30/10
B60W60/00
G08G1/16 D
G06T7/00 650A
(21)【出願番号】P 2020570423
(86)(22)【出願日】2019-06-17
(86)【国際出願番号】 US2019037514
(87)【国際公開番号】W WO2019245982
(87)【国際公開日】2019-12-26
【審査請求日】2022-06-17
(32)【優先日】2018-06-18
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2018-06-18
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】518156417
【氏名又は名称】ズークス インコーポレイテッド
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】ウィリアム アンソニー シルヴァ
(72)【発明者】
【氏名】ドラゴミール ディミトロフ アンゲロフ
(72)【発明者】
【氏名】ベンジャミン イサーク ツヴィーベル
(72)【発明者】
【氏名】ユハナ カンガスプンタ
【審査官】平井 功
(56)【参考文献】
【文献】特開2017-215939(JP,A)
【文献】Young-Woo Seo and Chris Urmson,A perceptin mechanism for supporting autonomous intersection handling in urban driving,In Proceedings of the International Conference on Intelligent Robots and Systems,米国,IEEE,2008年09月22日,p. 1830-1835
(58)【調査した分野】(Int.Cl.,DB名)
B60W 10/00-10/30
B60W 30/00-60/00
G08G 1/00-99/00
G06T 7/00- 7/90
(57)【特許請求の範囲】
【請求項1】
1つ以上のプロセッサと、
前記1つ以上のプロセッサによって実行可能な命令を格納した1つ以上のコンピュータ可読媒体と、
を備えたシステムであって、前記命令は、実行されると、前記システムに
車両上のセンサからセンサデータを受信するステップと、
前記車両に近接する環境を表すマップデータであって、複数のオクルージョンフィールドを含むオクルージョングリッドを含むマップデータを受信するステップであって、前記複数のオクルージョンフィールドのオクルージョンフィールドが、オクルージョンである前記オクルージョンフィールドに関連付けられた前記環境の一部を示すオクルージョン状態、及び占有されている前記環境の前記一部を示す占有状態に関連付けられる、ステップと、
前記センサデータの一部に少なくとも部分的に基づいて、前記オクルージョンフィールドの前記占有状態及び前記オクルージョン状態を決定するステップと、
前記オクルージョンフィールドに少なくとも部分的に基づいて、前記オクルージョングリッドに関連付けられた情報の
量を
、
非占有であるオクルージョンフィールドの数が第1の閾値数以上であること、
可視オクルージョンフィールドの数が第2の閾値数以上であること、
未決定なオクルージョンフィールドを閾値期間観察すること、または
交差点の距離に対する非オクルージョン及び非占有領域の範囲を決定すること、
のうちの1つまたは複数に少なくとも部分的に基づいて、決定
するステップと、
前記情報の量に少なくとも部分的に基づいて、前記環境を横断する前記車両のための安全な軌道を決定するステップと、
前記車両を制御し前記安全な軌道に従って前記環境を横断させるステップと、
を含む操作を実行させる、システム。
【請求項2】
前記センサがLIDARセンサであり、前記センサデータがLIDARデータを含み、前記操作が、
前記車両上の画像センサから画像データを受信するステップと、
前記画像データの少なくとも一部に対して意味区分を実行して、前記環境内の少なくとも運転可能路面を識別する区分された画像データを生成するステップと、
前記オクルージョンフィールドを前記区分された画像データに関連付けるステップと、
前記オクルージョンフィールドが前記運転可能路面に関連付けられていると決定するステップと、
前記運転可能路面に関連付けられている前記オクルージョンフィールドに少なくとも部分的に基づいて、前記車両を制御し前記環境を横断させるステップと、
をさらに備える請求項1に記載のシステム。
【請求項3】
前記複数のオクルージョンフィールドが前記環境内の運転可能路面の一部を個別化し、前記オクルージョンフィールドの前記オクルージョン状態が前記センサによる前記オクルージョンフィールドの可視性を示す、請求項1又は2に記載のシステム。
【請求項4】
前記操作が、
前記オクルージョンフィールドに関連付けられた
LIDARリターンの第1の数と、
前記オクルージョンフィールドに関連付けられた個別化された領域の第2の数と、
に少なくとも部分的に基づいて、前記オクルージョンフィールドの前記占有状態に関連付けられた信頼値を決定するステップをさらに備える請求項1又は2に記載のシステム。
【請求項5】
前記第2の数に対する前記第1の数の第1の比率が閾値未満であることは前記オクルージョンフィールドの非占有状態の高い信頼性を示し、前記第2の数に対する前記第1の数の第2の比率が前記閾値以上であることは前記オクルージョンフィールドの占有済み状態の高い信頼性を示す、請求項4に記載のシステム。
【請求項6】
1つ以上のプロセッサと、
前記1つ以上のプロセッサによって実行可能な命令を格納した1つ以上のコンピュータ可読媒体と、を備えるシステムによって実行される方法であって、
ロボットプラットフォーム上のセンサを使用して取り込まれたセンサデータを受信するステップと、
前記センサデータに少なくとも部分的に基づいて、前記ロボットプラットフォームの位置を決定するステップと、
前記位置の前記ロボットプラットフォームに近接する環境を表すマップデータであって、オクルージョングリッドを含むマップデータを受信するステップと、
前記オクルージョングリッドのオクルージョンフィールドの占有状態を決定するステップ
であって、
前記オクルージョンフィールドに少なくとも部分的に基づいて、
前記オクルージョンフィールドに関連付けられた情報の
量を
、
非占有であるオクルージョンフィールドの数が第1の閾値数以上であること、
可視オクルージョンフィールドの数が第2の閾値数以上であること、
未決定なオクルージョンフィールドを閾値期間観察すること、または
交差点の距離に対する非オクルージョン及び非占有領域の範囲を決定すること、
のうちの1つまたは複数に少なくとも部分的に基づいて、決定
するステップと、
前記情報の量に少なくとも部分的に基づいて、前記オクルージョングリッドに近接する前記環境の領域を横断する軌道を決定
するステップと、
前記オクルージョングリッドの前記占有状態に少なくとも部分的に基づいて、前記ロボットプラットフォームを制御するステップと、
を備える方法。
【請求項7】
前記ロボットプラットフォーム上のLIDARセンサを使用して取り込まれたLIDARデータを、前記センサデータとして受信するステップと、
前記LIDARデータの一部を占有フィールドに関連付けることに少なくとも部分的に基づいて、前記オクルージョンフィールドの前記占有状態を決定するステップであって、前記占有状態は、占有済み状態、非占有状態、又は未決定状態の内の1つを含む、ステップと、
前記LIDARデータの前記一部に少なくとも部分的に基づいて、前記オクルージョンフィールドのオクルージョン状態を決定するステップであって、前記オクルージョン状態は可視又はオクルージョンであることの1つを含む、ステップと、
前記オクルージョン状態及び前記占有状態に少なくとも部分的に基づいて、前記ロボットプラットフォームを制御し前記環境を横断させるステップと、
をさらに備え、
前記情報の
量は、前記オクルージョングリッドのサイズ又は前記オクルージョングリッドに関連付けられた制限速度の少なくとも1つに関係して、前記LIDARセンサから可視である前記オクルージョングリッドのオクルージョンフィールドの数に少なくとも部分的に
さらに基づいて決定される、
請求項6に記載の方法。
【請求項8】
前記占有状態または前記オクルージョン状態のうちの少なくとも1つを決定するステップが、
前記オクルージョンフィールドの上の領域に関連付けられた予想のLIDARリターンの第1の数を決定するステップと、
前記オクルージョンフィールドの上の前記領域に関連付けられた実際のLIDARリターンの第2の数を決定するステップと、
前記予想のLIDARリターンの第1の数及び前記実際のLIDARリターンの第2の数に少なくとも部分的に基づいて、前記オクルージョンフィールドの前記占有状態に関連付けられた信頼値を決定するステップと、
前記信頼値が信頼閾値以上であると決定するステップと、
を備える請求項7に記載の方法。
【請求項9】
前記ロボットプラットフォーム上の画像センサを使用して取り込まれた画像データを、前記センサデータとして受信するステップと、
前記画像データの少なくとも一部を区分して、前記環境内の運転可能路面を識別する区分された画像データを生成するステップと、
前記オクルージョンフィールドを前記区分された画像データに関連付けるステップと、
前記オクルージョンフィールドが前記運転可能路面に関連付けられていると決定するステップと、
前記運転可能路面に関連付けられている前記オクルージョンフィールドに少なくとも部分的に基づいて、前記ロボットプラットフォームを制御し前記環境を横断させるステップと、
をさらに備える請求項6に記載の方法。
【請求項10】
前記ロボットプラットフォームは自律車両を含み、前記自律車両に近接する前記環境は交差点を含み、前記方法が、
前記自律車両が横断する前記交差点に関連付けられた距離を決定するステップと、
前記交差点に関連付けられた制限速度を決定するステップと、
前記交差点に関連付けられた前記距離と、
前記制限速度と、
安全係数と、
に少なくとも部分的に基づいて前記オクルージョングリッドの範囲を決定するステップと、
をさらに備える請求項6に記載の方法。
【請求項11】
前記自律車両が前記交差点に関連付けられた前記距離を横断するための予想される時間に少なくとも部分的に基づいて、前記オクルージョングリッドの前記範囲を決定するステップをさらに備える請求項10に記載の方法。
【請求項12】
前記オクルージョンフィールドが時相論理記号を含み、前記方法が
前記時相論理記号を含む時相論理式を評価することに少なくとも部分的に基づいて、軌道を検証するステップと、
少なくとも部分的に前記軌道に基づいて、前記ロボットプラットフォームを制御し前記環境を横断させるステップと、
をさらに備える請求項6に記載の方法。
【請求項13】
前記オクルージョングリッドが複数のオクルージョンフィールドを含み、前記方法が
前記ロボットプラットフォームを制御し前記環境を横断させる前に、前記複数のオクルージョンフィールドの閾値数が前記センサから可視及び非占有であると決定するステップ、
をさらに備える請求項6に記載の方法。
【請求項14】
前記オクルージョングリッドの一部が前記センサから可視ではないと決定するステップと、
前記ロボットプラットフォームを制御し、前記センサから可視である前記オクルージョングリッドの前記一部を増やす位置に移動させるステップと、
をさらに備える請求項6に記載の方法。
【請求項15】
コンピュータ上で実行すると、請求項6から請求項14のいずれか一項に記載の方法を実行する、コード化された命令を備えたコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オクルージョン認識プランニングに関する。
【0002】
[関連出願の相互参照]
この特許出願は、2018年6月18日に出願されたシリアル番号16/011,436の「オクルージョン認識プランニング」と題された米国実用特許出願の優先権を主張、及び2018年6月18日に出願されたシリアル番号16/011,468の「オクルージョン認識プランニング及びコントロール」と題された米国実用特許出願の優先権を主張する。シリアル番号16/011,436及び16/011,468の出願は参照により本明細書に完全に組み込まれる。
【背景技術】
【0003】
様々な方法、装置、及びシステムが、複数の障害物を含む環境を通る自律車両をガイドするために、自律車両に利用される。例えば、自律車両は、他の車両、建物、歩行者、又は他の物体を含み得る混雑領域内で自律車両をガイドするルート計画方法、装置、及びシステムを利用する。いくつかの例では、環境内の車両、建物、及び/又は物体は、環境の領域を自律車両のセンサから可視であるのを妨害でき、そのような領域を通るルートを計画する際に課題を提示できる。
【図面の簡単な説明】
【0004】
詳細な説明は添付の図面を参照し説明する。図面において、参照番号の左端の数字は参照番号が最初に現れる図を識別している。異なる図面における同じ参照番号の使用は類似又は同一の項目又は機能を示す。
【0005】
【
図1】
図1は、本開示の実施形態による、環境内の複数のオクルージョンフィールドを含む例示のオクルージョングリッドの斜視図を示し、障害物に起因するオクルージョングリッドのオクルージョン領域及び非オクルージョン領域を決定するためのオクルージョン監視コンポーネントを含む車両を示す環境である。
【
図2】
図2は、本開示の実施形態による、LIDARデータを光線放射することに基づいて、オクルージョングリッド内のオクルージョンフィールドの占有率を決定するための例示のプロセスの図解フロー図である。
【
図3】
図3は、本開示の実施形態による、オクルージョンフィールドを画像データに投影することに基づいて、オクルージョングリッド内のオクルージョンフィールドの占有率を決定するための例示のプロセスの図解フロー図である。
【
図4】
図4は、本明細書で説明する技法を実装するための例示のシステムのブロック図を示す。
【
図5】
図5は、本開示の実施形態による、領域特性に基づいてオクルージョングリッドを生成するための例示のプロセスの図解フロー図である。
【
図6】
図6は、本開示の実施形態による、交差点にてオクルージョングリッドを評価し、車両を制御し交差点を横断させるための例示のプロセスの図解フロー図である。
【
図7】
図7は、本開示の実施形態による、交差点にてオクルージョングリッドを評価し、車両を制御し交差点を横断させるための別の例示のプロセスの図解フロー図である。
【
図8】
図8は、本開示の実施形態による、物体に関連付けられたオクルージョン領域を決定し、オクルージョン領域内の動的物体の予測軌道を生成するための例示のプロセスの図解フロー図である。
【
図9】
図9は、本開示の実施形態による、地形的オクルージョングリッドを評価し、車両を制御し地形的障害物を横断させるための例示のプロセスの図解フロー図である。
【
図10】
図10は、本開示の実施形態による、LIDARデータを光線放射することに基づいて、及び/又は画像データへのオクルージョンフィールドの投影に基づいて、オクルージョンフィールドの占有率を決定し、車両を制御し環境を横断させるための例示のプロセスを示す。
【
図11】
図11は、本開示の実施形態による、オクルージョングリッドを示すマップデータに基づいて、又は環境内の障害物の識別に基づいて、オクルージョングリッドを決定し、車両を制御し環境を横断させるための例示のプロセスを示す。
【発明を実施するための形態】
【0006】
この開示は、環境内のオクルージョン領域に基づいて、自律車両などの車両を制御する技術を対象としている。例えば、オクルージョン領域はオクルージョングリッドで表すことができ、これはマップデータに関連して格納し得る、又は環境内の障害物に基づいて動的に生成できる。オクルージョングリッドは複数のオクルージョンフィールドを含むことができ、運転可能路面などの環境の個別の領域を表すことができる。いくつかの例では、オクルージョンフィールドは、オクルージョン状態(例えば、その位置が自律車両の1つ以上のセンサから可視であるかどうかを示す)及び占有状態(例えば、その位置が、車両、歩行者、動物などの物体に占有されているかどうか示す)を示すことができる。少なくともいくつかの例では、占有状態は「未決定」状態(すなわち、利用可能なデータに基づいても、オクルージョンフィールドが占有されているかどうか現在不明であり得る)をさらに含み得る。場合によっては、自律車両上のセンサによって取り込まれたLIDARデータ及び/又は画像データを使用して、オクルージョン状態及び/又は占有状態を決定できる。例えば、LIDARデータを光線放射して、LIDAR光線がオクルージョンフィールドで表される空間の領域を通過したかどうかを決定できる。いくつかの例では、オクルージョンフィールドが占有されている又は占有されていないという信頼レベルは、オクルージョンフィールドに関連付けられた予想のLIDARリターンの第1の数に、及び/又はオクルージョンフィールドに関連付けられた実際のLIDARリターンの第2の数に少なくとも部分的に基づくことができる。いくつかの例では、オクルージョンフィールドが占有されているかどうかの信頼レベルは、オクルージョンフィールドの高さに関するLIDARリターンの列内のLIDARの観測値に少なくとも部分的に基づくことができる。いくつかの例では、オクルージョンフィールドの占有率は画像データに基づくことができる。例えば、画像データを環境内で取り込むことができ、画像データを区分して、運転可能な領域(例えば、物体が占有されていない路面)を示す区分された画像データを生成できる。オクルージョンフィールドを表す位置データを区分された画像データに投影して、オクルージョンフィールドが運転可能路面に関連付けられているかどうかを決定できる。オクルージョン状態及び占有状態はオクルージョングリッドの全てのオクルージョンフィールドに対して決定できる。いくつかの例では、オクルージョンフィールドが全て可視及び非占有である場合、オクルージョングリッドはクリアであると見なすことができ、自律車両を制御し環境を横断させることができる。
【0007】
いくつかの例では、LIDARデータ及び画像データを使用して、オクルージョンフィールドのオクルージョン状態及び占有状態を決定できる。例えば、自律車両に比較的近いオクルージョンフィールドの場合、LIDARセンサの解像度は、閾値以上の信頼レベル(信頼値とも呼ばれる)を含むオクルージョンフィールドのオクルージョン状態及び占有状態を決定するのに十分であり得る。いくつかの例では、信頼レベルが閾値未満の場合(例えば、自律車両から比較的遠いオクルージョンフィールドの場合、又はオクルージョンフィールドに関連付けられたLIDAR光線の数が閾値を下回っている場合)、画像データを使用して、LIDARデータを使用するオクルージョン状態及び/又は占有状態に関する決定を更新又は補足できる。
【0008】
本明細書で論じる手法は様々な状況で使用できる。第1の状況では、無防備な左折、自由な右折、複雑な交差点の通り抜けなどの複雑な操縦を自律車両が実行している交差点を自律車両が走行する際に、オクルージョンベース計画を使用できる。理解できるように、そのような例では対向車は交差点で停止しない場合があり、これは交差点を横断するにあたり安全である場合を決定することにおける課題を提示できる。一例では、自律車両は交差点に近づき、ストップライン(例えば、マップデータに示されている)で停止できる。マップデータからオクルージョングリッドにアクセスでき、自律車両はセンサデータを取り込んでオクルージョンフィールドの状態を決定できる。いくつかの例では、自律車両は、オクルージョングリッドの一部がオクルージョンである(例えば、駐車中の車などの障害物が原因で)、及び/又は進行するための十分な情報に不足していると決定できる。いくつかの例では、自律車両は交差点を緩やかに横断して、環境内のセンサの位置を変更し得る。自律車両はセンサデータを取り込み続けて、オクルージョン領域のいくつか又は全てのオクルージョンフィールドのオクルージョン状態及び占有状態を決定できる。他の車両が交差点を横断している場合、オクルージョンフィールドは占有されていると決定され、自律車両は交差点を横断するために適切な時間待機し続け得る。交差点を横断する他の車両がなく、センサがフィールドの占有状態を決定可能な場合、オクルージョンフィールドは非占有であり、オクルージョングリッドはクリアであり、自律車両は交差点を横断し得る。理解できるように、オクルージョンベース計画は様々な交差点を横断するために使用でき、特定の交差点又は操縦に限定されない。
【0009】
第2の状況では、自律車両は環境のセンサデータを取り込み得、環境内の物体がセンサによる環境の一部の感知を「妨害」していると決定できる。いくつかの例では、オクルージョングリッドを物体に動的に関連付けることができる。いくつかの例では、自律車両は初期時間ではオクルージョングリッドについての情報をほとんど知り得ないが(例えば、特に障害物によって隠されたオクルージョンフィールドの占有率)、いくつかの例では、自律車両は、オクルージョングリッドに物体が進入する前に横断する領域を監視することにより、オクルージョンフィールドのコンテキストを推測できる。例えば、自律車両はオクルージョングリッドのオクルージョン領域を監視するので、自律車両はオクルージョングリッドに進入する任意の物体(例えば、車両、歩行者など)を監視できる。一定期間後、物体がオクルージョングリッドに進入していない場合、及び物体がオクルージョングリッドから出ていない場合、自律車両はオクルージョングリッドが非占有であると推測し得、必要に応じて車両軌道を実行し得る。
【0010】
第3の状況では、自律車両が環境のセンサデータを取り込み、環境内の物体を識別できる。自律車両は、本明細書で論じるように、オクルージョングリッドを物体に関連付けることができる。いくつかの例では、自律車両はまた、オクルージョン領域を横断した環境内の歩行者などの1つ以上の動的物体を識別できる。自律車両は、物体がオクルージョン領域に移動する前に動的物体の軌跡を監視でき、物体に関連付けられた1つ以上の予測軌道を生成できる。いくつかの例では、1つ以上の予測軌道は、動的物体の測定された軌跡に基づく、並びに/又は環境内の合理的な経路(例えば、横断歩道又は歩道を横切る、最新の軌道の継続など)及び/若しくは目的地に基づくことができる。従って、動的物体が観察されない場合でも、オクルージョン領域にある物体のために、自律車両は、動的物体の予測軌道を自律車両の制御に関する決定に組み込むことができる。そのような予測軌道は、オクルージョン領域に残っている動的物体に基づいて、又はオクルージョン領域を離れる動的物体に基づいて、以降の観測によって後に確認され得る。
【0011】
第4の状況では、丘の頂上などの地形的障害物によって引き起こされるオクルージョン領域を対象とする。例えば、車両が丘の頂上(例えば頂点)に近づくと、車両は丘の頂上の反対側の地面を確かめることが不可能になり得る。いくつかの例では、地形的オクルージョングリッドを丘の領域を表すマップデータに関連付けて、丘を横断するのを容易にできる。例えば、地形的オクルージョングリッド(及び本明細書で論じる他のオクルージョングリッド)は、環境内の空間の3次元領域を表すオクルージョンフィールドを含むことができる。理解できるように、オクルージョンフィールドの垂直部分は、車両がオクルージョンフィールドの地面部分を確かめることが可能でなくても、丘の頂上に近づく車両から可視であり得る。車両はLIDARデータなどの環境のセンサデータを取り込み、LIDARデータをオクルージョングリッドのオクルージョンフィールドに光線放射し、オクルージョンフィールドの少なくとも一部の占有率を決定できる。従って、オクルージョンフィールドの一部がクリアであると決定することにより(例えば、地上1、2メートル間のオクルージョンフィールドの領域)、自律車両はオクルージョンフィールドの占有状態(例えば、占有済み、非占有、又は未決定)を決定できる。従って、本明細書で論じる技術を使用して、自律車両は、環境の全ての領域のセンサデータを取り込むこと無く、丘の頂上を「見渡し」て、環境についての情報を取得できる。
【0012】
いくつかの例では、マップデータに関連して格納されたオクルージョングリッドのサイズは、いくつかの領域特性に少なくとも部分的に基づくことができる。交差点のコンテキストでは、領域特性は、限定しないが、自律車両が走行しなければならない交差点を横切る距離(例えば、対向車を避けるために)、交差点内の車両の制限速度(例えば、対向車の)、制限速度に関連付けられた安全係数(例えば、予想される交通の速度を効果的に上げるための)、交差点距離を横断する自律車両の加速レベル及び/又は平均速度など、を含むことができる。そのような特定の例については以下で詳細に論じる。従って、オクルージョングリッドは、オクルージョングリッドに障害物がない場合、自律車両が安全に領域を横断できるようなサイズとすることができる。
【0013】
いくつかの例では、上記のように、オクルージョングリッドは複数のオクルージョンフィールドを含むことができる。いくつかの例では、オクルージョンフィールドは、自律車両の軌道を評価又は検証するための時相論理式で使用できる時相論理記号を表すことができる。例えば、自律車両は、オクルージョンフィールドの占有状態及び/又はオクルージョン状態がそれぞれ「非占有」及び「非オクルージョン」になるまで、軌道を開始することを止められ得る。いくつかの例では、自律車両のプランナーシステムは、線形時相論理又は信号時相論理などの時相論理を使用して、自律車両の軌道を評価できる。
【0014】
本明細書で論じる技術は、いくつかの手法でコンピューティングデバイスの機能を改善できる。例えば、オクルージョングリッドを評価するコンテキストにおいて、グリッドの領域は、環境についての不必要な決定に専念する過剰なリソースなしで、自律車両による領域の安全な横断を確実にするようなサイズとすることができる。いくつかの例では、複数のセンサモダリティ(LIDARセンサ、画像センサ、RADARセンサなど)を使用して、オクルージョン状態又はオクルージョンフィールドの占有状態に関連付けられた全体的な信頼レベルを改善できる。改善された軌道生成は安全結果を改善でき、乗り手の体験を改善できる(例えば、軌道を開始する前に交差点がクリアであることを確実にすることによって、緊急ブレーキ、旋回などの発生を減少することによって)。コンピュータの機能及び/又はユーザーの体験に対するこれら及びその他の改善について、本明細書で論じる。
【0015】
本明細書に記載の技術は、いくつかの手法で実施できる。例示の実装について、以下の図面を参照しながら以下に説明する。自律車両のコンテキストで論じられているが、本明細書で説明する方法、装置、及びシステムは、様々なシステム(例えば、ロボットプラットフォーム)に適用でき、自律車両に限定されない。別の例では、この技術は、航空若しくは航海のコンテキストで、又はマシンビジョンを使用する任意のシステムで利用できる。さらに、本明細書で説明する技法は実データ(例えばセンサを使用して取り込まれた)、シミュレートデータ(例えばシミュレータによって生成された)、又はその2つの任意の組合せで使用できる。
【0016】
図1は、環境内の複数のオクルージョンフィールドを含む例示のオクルージョングリッドの斜視図を示す環境100である。
図1はまた、本開示の実施形態による、障害物に起因するオクルージョングリッドのオクルージョン領域及び非オクルージョン領域を決定するためのオクルージョン監視コンポーネントを含む車両を示す。
【0017】
図示のように、環境100は環境100を表すデータを取り込む1つ以上のセンサシステム104を含む車両102を含むことができる。
【0018】
例示の目的で、車両102は、ドライバー(又は乗員)の車両の常時制御を期待せず、全体行程の全ての安全上重要な機能を実行可能な車両について説明する米国国家高速道路交通安全局が発行するレベル5分類に従って操作するように構成された自律車両とすることができる。このような例では、車両102は全ての駐車機能を含む開始から停止までの全ての機能を制御するように構成できるので、無人化できる。これは単なる例であり、本明細書で説明するシステム及び方法は、ドライバーが常に手動で制御する必要がある車両から、部分的又は完全に自律的に制御されているものまでを含む任意の地上、空中、又は水上車両に組み込むことができる。車両102に関連付けられた追加の詳細を以下で説明する。
【0019】
少なくとも1つの例では、上記のように、車両102を車両102上に配置できるセンサシステム104に関連付けることができる。センサシステム104は、光検出及び測距(LIDAR)センサ、無線検出及び測距(RADAR)センサ、超音波変換器、音響誘導及び測距(SONAR)センサ、位置センサ(例えば、グローバルポジショニングシステム(GPS)、コンパスなど)、慣性センサ(例えば、慣性測定ユニット、加速度計、磁気計、ジャイロスコープなど)、カメラ(例、RGB、IR、強度、深度、飛行時間など)、ホイールエンコーダ、マイク、環境センサ(例えば、温度センサ、湿度センサ、光センサ、圧力センサなど)など、を含むことができる。センサシステム104は車両102に関連付けられた車両コンピューティングデバイス106によって利用できるセンサデータを生成できる。
【0020】
少なくとも1つの例では、車両コンピューティングデバイス106は、オクルージョン監視コンポーネント108のセンサデータを利用できる。例えば、オクルージョン監視コンポーネント108はオクルージョンデータ及び/又はマップデータにアクセスし、オクルージョングリッド内のオクルージョンフィールドのオクルージョン状態及び占有状態を決定できる。
【0021】
一例として、限定しないが、環境100内の車両102は交差点110に接近している。いくつかの例では、車両102はマップデータにアクセスでき、オクルージョングリッド112が交差点110に関連付けられていると決定できる。いくつかの例では、交差点110は車両102が交差点110に進入する一方通行車に道を譲る必要のある交差点を表すことができる。
【0022】
オクルージョングリッド112は、環境100の一部を個別の領域に分離する複数のオクルージョンフィールドを含むことができる。いくつかの例では、オクルージョンフィールド114はオクルージョン状態を表すことができる(例えば、オクルージョンフィールド114が車両102の1つ以上のセンサに関連付けられた感知領域116内にあるかどうかの表示を)。理解できるように、環境100はオクルージョングリッド112の一部を車両102の感知領域116から欠落させる1つ以上の障害物118、120、及び122を含み得る。従って、オクルージョングリッド112の非オクルージョン領域124は、車両102によって「見る」ことができるオクルージョングリッド112の領域を表すことができる。すなわち、車両102は非オクルージョン領域124を表すセンサデータを取り込むことができる。同様に、オクルージョン領域126は、車両102によって「見る」ことができないオクルージョングリッド112の領域を表すことができる。
図1に示すように、オクルージョン領域126内のオクルージョンフィールドは、その領域に対応するセンサデータの欠如を表すために灰色で網掛けされ、一方、非オクルージョン領域124は網掛けされない。
【0023】
いくつかの例では、オクルージョンフィールドが物体によって占有されている場合、オクルージョンフィールドは、物体のIDを示す追加のメタデータ、及びオクルージョングリッドを通過する物体の経路を示すデータを格納できる。
【0024】
LIDARデータ及び画像データを使用してオクルージョンフィールドを評価することに対する追加の詳細は、それぞれ
図2及び
図3に関連して以下で論じる。
【0025】
図2は、本開示の実施形態による、LIDARデータを光線放射することに基づいて、オクルージョングリッド内のオクルージョンフィールドの占有率を決定するための例示のプロセス200の図解フロー図である。LIDARデータのコンテキストで論じているが、例示のプロセス200は、RADARデータ、SONARデータ、飛行時間画像データなどのコンテキストで使用できる。
【0026】
オペレーション202において、プロセスは、オクルージョングリッドを含むマップデータを受信することを含むことができる。例204はオペレーション202において受信できるマップデータ206を示している。いくつかの例では、マップデータ206は
図1に示すように交差点110を表すことができる。例204にさらに示すように、車両102はLIDAR光線208によって図解するように環境のLIDARデータを取り込む。単一の線として示しているが、LIDAR光線208は環境をスキャンする複数の光線を含むことができる。
【0027】
いくつかの例では、マップデータ206は複数のオクルージョンフィールド216を含むオクルージョングリッド210を含む。本開示を通して論じるように、オクルージョングリッド210は環境の任意のサイズ又は形状を表すことができる。いくつかの例では、オクルージョングリッド210は複数のオクルージョンフィールド216を含むことができ、それによって個々のオクルージョンフィールドは環境の個別の領域を表す。いくつかの例では、オクルージョンフィールドは、幅1メートル、長さ3メートル、高さ2メートルの領域を表し得るが、任意のサイズをオクルージョンフィールドに使用し得る。いくつかの例では、オクルージョンフィールドはボクセル化された空間の複数のボクセルを表す「メタボクセル」であると見なされ得る。
【0028】
オペレーション212において、プロセスは、LIDARデータを光線放射することに少なくとも部分的に基づいて、1つ以上のオクルージョンフィールドの占有率を決定することを含むことができる。環境の詳細214において、オクルージョンフィールド216はオクルージョンフィールド216を横断するLIDAR光線で示される。詳細214に示すように、LIDAR光線218及び220はオクルージョンフィールド216を横断するように示されている。例204にさらに示すように、LIDAR光線218はリターンを伴わないLIDAR光線を表すことができる。これは、LIDAR光線218はLIDARセンサによって放出され、オクルージョンフィールド216を横断すると予想されたが、車両102はLIDAR光線218のリターンを受信しなかったことを意味する。そのようなリターンの欠如は、LIDAR光線218が表面に当たらず戻っていない可能性がある、又はLIDARセンサから離れる方向へ反射面で反射した可能性があるため、占有状態が未決定であり得る。さらに、LIDAR光線220はリターンを伴うLIDAR光線を表す。これは、LIDAR光線220が、LIDARセンサによって放出され、その後の時間、車両102によって(例えば、環境内の物体からの反射によって)受信されたことを意味する。
【0029】
いくつかの例では、LIDAR光線208は、オクルージョンフィールド(例えば、オクルージョンフィールド216)が物体によって占有されていることを示し得る。この場合、オペレーション212はオクルージョンフィールド216が占有されていることを決定することを含むことができる。少なくともいくつかの例では、占有率は、特定のオクルージョンフィールド216上の垂直列内のLIDARリターンの数に基づいて決定され得る(例えば、詳細226に示しているように)。非限定的な例として、LIDARリターンは領域が占有されていること、又はLIDAR光線がLIDARセンサによって反射として受信される前に領域を横断したことを示し得る(例えば、リターンは領域が非占有であることを示し得る)。いくつかの例では、LIDAR光線は、以下で論じるように、LIDARセンサによって受信されることなく領域を横断し得る。
【0030】
非限定的な例として、オクルージョンフィールド216に関連付けられた垂直列は5つのボクセル(例えば、詳細226において、ボクセル216(1)、216(2)、216(3)、216(4)、及び216(5)に示されるように)を含み、及びそれらの大部分が、物体がボクセル内に位置することを示す場合、占有状態は占有閾値に達し、オクルージョンフィールド216は占有されていると決定される。言い換えれば、いくつかの例では、オクルージョンフィールド216の占有率は、オクルージョンフィールド216に関連付けられたボクセルに関連付けられた占有スコアに少なくとも部分的に基づくことができる。もちろん、オクルージョンフィールドは任意の数の垂直及び/又は水平ボクセルに関連付けることができる。
【0031】
いくつかの例では、LIDAR光線208はオクルージョンフィールド216が物体によって占有されていないことを示し得る。例えば、オクルージョンフィールド216に関連付けられたボクセルの大部分がリターン無しを示す場合(及び/又はボクセルを横断し、予想されるリターンの数と比較されたリターンに関連付けられたLIDAR光線の数に基づいて)、LIDARセンサから離れる方向の表面で反射する全ての光線とは対照的に、オクルージョンフィールド216を占有する物体は存在しない可能性が高い。いくつかの例では、オクルージョンフィールド216の占有率に関する決定は信頼レベルと関連付けることができる。いくつかの例では、オクルージョンフィールドの占有率の信頼レベルは、オクルージョンフィールドに関連付けられた予想のLIDARリターンの第1の数、及びオクルージョンフィールドに関連付けられた実際のLIDARリターンの第2の数(例えば、物体又は非物体を示す)に少なくとも部分的に基づくことができる。一例として、限定しないが、信頼レベルは第2の数と第1の数との比率に少なくとも部分的に基づくことができる。もちろん、任意の手法又はヒューリスティックを使用してオクルージョンフィールドの占有率に関連付けられた信頼レベルを決定できる。信頼レベルを超えない、センサデータが戻らない、又はそうでなければ占有率の決定を行うことが不可能であるいくつかの例では、オクルージョンフィールド216に関連付けられた占有状態は未決定(例えば、占有状態を決定するのに十分な情報がない)であると決定され得る。
【0032】
オペレーション222において、プロセスは占有率に少なくとも部分的に基づいて自律車両に命令することを含むことができる。例えば、車両102が、オクルージョンフィールド216が非占有である(及びオクルージョングリッド210の全てのオクルージョンフィールド又はオクルージョングリッド210のオクルージョンフィールドの閾値数が非占有である)と決定した場合、車両102を制御し軌道224に従って交差点110を横断させることができる。いくつかの例では、オクルージョンフィールド216が占有されている場合、及び/又はオクルージョングリッド210のオクルージョンフィールドの閾値数が物体によって占有されている場合、オペレーション222は自律車両(例えば、車両102)を制御し交差点110を横断させずに待機させることを含むことができる。いくつかの例では、閾値は、例えば予想される最高制限速度、横断する車線幅などに基づいて設定され得る。そのような決定は、例えば、車両がオクルージョン領域を最高制限速度(若干のバッファを足した)で交差点に向かって進んでいると仮定して、車両102が交差点を安全に横断するのに掛る時間に基づいて行い得る。追加の詳細を
図5に関連して論じる。
【0033】
いくつかの例では、オペレーション222は車両102の加速レベル及び/又は速度の選択を含むことができる。例えば、オクルージョンフィールドはオクルージョングリッド210のクリア部分のサイズを効果的に減少させる占有されたオクルージョンフィールドを示し得る。いくつかの例では、オペレーション222は、オクルージョングリッド210のクリア部分の減少したサイズ(例えば、車両102及び占有されたオクルージョンフィールドの間の距離として表される)に基づいて車両102をより速く加速させる、より高い加速レベル(例えば、「ブーストモード」)を選択することを含むことができる。いくつかの例では、オペレーション222は、オクルージョングリッドの一部が可視ではない(例えば、オクルージョン領域126と同様に)、又はそうでなければ未決定である占有状態を含むと決定することを含むことができ、オペレーション222は、車両102を制御し交差点まで緩やかに移動させ(例えば、「前方に徐行」)、オクルージョングリッド210の可視領域を増加することを含むことができる。追加の例について本開示を通して論じる。
【0034】
図3は、本開示の実施形態による、画像データへのオクルージョンフィールドの投影に基づいて、オクルージョングリッド内のオクルージョンフィールドの占有率を決定するための例示のプロセス300の図解フロー図である。
【0035】
オペレーション302において、プロセスは画像データ及びマップデータを受信することを含むことができる。例えば、画像データ304を車両102の1つ以上の画像センサによって取り込むことができる。いくつかの例では、マップデータ306は、車両102がマップデータ306に関連付けられた交差点110に接近していると決定すると、メモリから(例えば、車両コンピューティングデバイス106から)アクセスされ得る。
【0036】
一般に、画像データ304は、車両の1つ以上の画像センサによって取り込まれた任意の画像データを含むことができる。場合によっては、画像データ304は、障害物308、310、及び312の表示を含むことができる。図示のように、障害物308、310、及び312は、道路の脇に駐車する車両を表すことができる。
【0037】
一般に、マップデータ306はオクルージョンフィールド316などの複数のオクルージョンフィールドを含むオクルージョングリッド314を含むことができる。いくつかの例では、マップデータ306は、障害物308、310、及び312を含むことができるが、場合によっては、障害物308、310、及び312のデータは、マップデータと見なされないことがある。すなわち、場合によっては、マップデータ306は静的物体のみを含み得る。その場合、障害物308、310、及び312(例えば、動的物体又は潜在動的物体)はマップデータ306として含まれ得ない。さらに車両102はマップデータ306の一部と見なしてもよいし、見なさなくてもよいが、車両102はコンテキストを形成するために及び交差点110に関する車両102の位置を示すためにマップデータ306に示されている。
【0038】
図示のように、障害物312は交差点110に向かって道路を走行していることを表している。いくつかの例では、障害物312はオクルージョンフィールド326を占有できる。
【0039】
オペレーション318において、プロセスは画像データに対して意味区分を実行することを含むことができる。いくつかの例では、画像データ304を、限定しないが、運転可能路面(例えば、物体又は障害物によって占有されていない路面)、地面、車両、歩行者、建物、歩道、植生、街灯柱、郵便受けなどを含む、画像データ304内の領域及び/又は物体を識別するための区分アルゴリズムに入力できる。いくつかの例では、オペレーション318は画像データ304内の物体を区分する及び/又は分類するように訓練された機械学習アルゴリズムを使用して画像データ304を区分することを含むことができる。
【0040】
オペレーション320において、プロセスは、1つ以上のオクルージョンフィールドを区分された画像データに投影することに少なくとも部分的に基づいて、1つ以上のオクルージョンフィールドの占有率を決定することを含むことができる。例えば、投影されたマップデータを伴う区分された画像データ322は、オクルージョングリッド314及び画像データ304に投影されたオクルージョンフィールド316及び326を示している。さらに示すように、投影されたマップデータを伴う区分された画像データ322(データ322とも呼ばれる)は、障害物308、310、及び312にそれぞれ対応する区分された障害物308’、310’、及び312’を含む。オクルージョンフィールド326が、車両であると決定できる障害物312’に(例えば、意味区分を介して)投影されるので、オペレーション320は少なくともオクルージョンフィールド326が障害物312’によって占有されていると決定できる。
【0041】
オペレーション320は、任意のアルゴリズムを使用して、3次元オクルージョングリッド314及び/又はオクルージョンフィールド316を画像データ304に投影できる。一例では、オクルージョンフィールド316を運転可能路面としてラベル付けされた領域に投影する場合、オペレーション320は、オクルージョンフィールド316が非占有のフィールドを表すと決定できる。いくつかの例では、オクルージョンフィールド326が物体312’に投影される場合、オペレーション320はオクルージョンフィールド326が占有されていると決定できる。少なくともいくつかの例では、追加のオクルージョンフィールドは未決定であるオクルージョン状態に対応し得る。言い換えると、物体の画像が一部のオクルージョンフィールドを効果的に妨害するので、オクルージョンフィールドが占有されているかどうかを明示することは不可能であり得る。本明細書に記載の例のいずれかに関わらず、安全性を目的として、未決定状態はオクルージョン状態として扱われ得る。
【0042】
オペレーション324において、プロセスは少なくとも部分的に占有率に基づいて自律車両(例えば、車両102)に命令することを含むことができる。例えば、車両102がオクルージョンフィールド316は非占有である(及びオクルージョングリッド314の全てのオクルージョンフィールドが非占有である)と決定した場合、交差点110を横断する軌道に従うように車両102を制御できる。いくつかの例では、オクルージョンフィールド326が占有されている、未決定である場合、及び/又はオクルージョングリッド314のオクルージョンフィールドの閾値数が物体によって占有されている場合、オペレーション324は自律車両(例えば、車両102)を制御し交差点110を横断させずに待機させることを含むことができる。いくつかの例では、情報の十分性が閾値を下回っている場合(例えば、占有された又は未決定のオクルージョンフィールドの数が閾値以上、並びに/又はオクルージョン及び不可視オクルージョンフィールドの数が領域を走行するための安全な軌道を計画者が決定不可能であるような閾値以上の場合)、オペレーション324は、車両102に前方へ徐行する、又はそうでなければ追加情報を収集するために車両102に位置を変更するように命令することを含むことができる。
【0043】
いくつかの例では、情報の十分性は、非占有であるオクルージョンフィールドの数が閾値数以上、及び/又は可視オクルージョンフィールドの数が特定の数以上である(例えば、領域を横切るための軌道を安全に計画するための特定の閾値を上回るのに十分な)と決定することに対応できる。いくつかの例では、情報の十分性は未決定なオクルージョンフィールドを一定期間観察して、オクルージョンフィールドが非占有であるという信頼レベルを高めることを含むことができる。いくつかの例では、情報の十分性は、自律車両が走行する交差点の距離に関係する、並びに/又は交差点の一部を横断する自律車両の速度、加速度、及び/若しくは時間に関係する、非オクルージョン及び非占有領域の範囲を決定することを含むことができる。
【0044】
いくつかの例では、プロセス200及び300を並行して(例えば、実質的に同時に)実行でき、各プロセスの出力を比較して、1つ以上のオクルージョンフィールドの状態について、及び/又はオクルージョングリッドの状態についての全体的な信頼レベルを高めることができる。いくつかの例では、LIDARデータを使用して車両102までの距離閾値内にあるオクルージョンフィールドの状態を決定することができるが、画像データを使用して車両102からの距離閾値以上のオクルージョンフィールドの状態を決定することもできる。もちろん、本明細書で説明する例は限定することを意図するものではなく、他の実装は本開示の範囲内であると見なされる。
【0045】
図4は、本明細書で記載する技法を実装するための例示のシステム400のブロック図を示す。少なくとも1つの例では、システム400は車両402を含むことができ、これは
図1の車両102に対応できる。
【0046】
車両402は、車両コンピューティングデバイス404、1つ以上のセンサシステム406、1つ以上のエミッタ408、1つ以上の通信接続部410、少なくとも1つの直接接続部412、及び1つ以上の駆動モジュール414を含むことができる。
【0047】
車両コンピューティングデバイス404は、1つ以上のプロセッサ416及び1つ以上のプロセッサ416と通信可能に結合されたメモリ418を含むことができる。図示の例では、車両402は自律車両である。しかしながら、車両402は任意の他のタイプの車両、又は少なくとも画像キャプチャデバイス(例えば、カメラ対応スマートフォン)を有する任意の他のシステムとすることができる。図示の例では、車両コンピューティングデバイス404のメモリ418は、位置測定コンポーネント420、知覚コンポーネント422、計画コンポーネント424、1つ以上のシステムコントローラ426、1つ以上のマップ428、予測コンポーネント430、オクルージョン監視コンポーネント432、オクルージョン領域コンポーネント434、光線放射コンポーネント436、区分コンポーネント438、投影コンポーネント440、オクルージョンコンテキストコンポーネント442、及び速度コンポーネント444を格納している。例示の目的でメモリ418内に存在するものとして
図4に示すように、位置測定コンポーネント420、知覚コンポーネント422、計画コンポーネント424、1つ以上のシステムコントローラ426、1つ以上のマップ428、予測コンポーネント430、オクルージョン監視コンポーネント432、オクルージョン領域コンポーネント434、光線放射コンポーネント436、区分コンポーネント438、投影コンポーネント440、オクルージョンコンテキストコンポーネント442、及び速度コンポーネント444は、追加的に又は代替的に車両402にアクセス可能である(例えば、車両402から離れたメモリに格納されている、又はそうでなければアクセス可能である)ことができることを意図されている。いくつかの例では、車両コンピューティングデバイス404は
図1の車両コンピューティングデバイス106に対応できる。
【0048】
少なくとも1つの例では、位置測定コンポーネント420はセンサシステム406からデータを受信し、車両402の位置及び/又は向き(例えば、1つ以上のx、y、z位置、ロール、ピッチ、又はヨー)を決定する機能を含むことができる。例えば、位置測定コンポーネント420は、環境のマップを含み、及び/又は要求/受信でき、マップ内の自律車両の位置及び/又は向きを継続的に決定できる。いくつかの例では、位置測定コンポーネント420は、SLAM(同時位置測定及びマッピング)、CLAMS(同時に較正、位置測定及びマッピング)、相対SLAM、バンドル調整、非線形最小二乗最適化などを利用して、画像データ、LIDARデータ、radarデータ、IMUデータ、GPSデータ、ホイールエンコーダデータなどを受信し、自律車両の位置を正確に決定できる。いくつかの例では、本明細書で論じるように、位置測定コンポーネント420は車両402の様々なコンポーネントにデータを提供して、軌道を生成するための、及び/又はオクルージョングリッドを含むマップデータをメモリから検索することを決定するための自律車両の初期位置を決定できる。
【0049】
いくつかの例では、知覚コンポーネント422は、物体検出、区分及び/又は分類を実行する機能を含むことができる。いくつかの例では、知覚コンポーネント422は、車両402に近接するエンティティの存在及び/又はエンティティタイプ(例えば、車、歩行者、自転車、動物、建物、木、路面、縁石、歩道、不明など)としてのエンティティの分類を示す処理済みのセンサデータを提供できる。追加及び/又は代替の例では、知覚コンポーネント422は、検出されたエンティティ(例えば、追跡された物体)及び/又はエンティティが位置する環境に関連付けられた1つ以上の特性を示す処理済みのセンサデータを提供できる。いくつかの例では、エンティティに関連付けられた特性は、限定しないが、x位置(グローバル及び/又はローカルポジション)、y位置(グローバル及び/又はローカルポジション)、z位置(グローバル及び/又はローカルポジション)、方向(例えば、ロール、ピッチ、ヨー)、エンティティタイプ(例えば、分類)、エンティティの速度、エンティティの加速度、エンティティの範囲(サイズ)などを含むことができる。環境に関連付けられた特性は、限定しないが、環境内の別のエンティティの存在、環境内の別のエンティティの状態、時刻、曜日、季節、気象条件、暗闇/光の表示などを含むことができる。いくつかの例では、知覚コンポーネント422は、本明細書で論じるように、区分コンポーネント438と連動して作動し、画像データを区分できる。
【0050】
一般に、計画コンポーネント424は環境を横断するために車両402が辿る経路を決定できる。例えば、計画コンポーネント424は様々なルート及び軌道並びに様々なレベルの詳細を決定できる。例えば、計画コンポーネント424は第1の位置(例えば現在の位置)から第2の位置(例えば目標の位置)へ走行するルートを決定できる。この議論の目的に、ルートは2つの位置の間を走行するための一連の経由地点にできる。非限定的な例として、経由地点は、道路、交差点、全地球測位システム(GPS)座標などが含まれる。さらに、計画コンポーネント424は、第1の位置から第2の位置への経路の少なくとも一部に沿って自律車両をガイドするための命令を生成できる。少なくとも1つの例では、計画コンポーネント424は一連の経由地点内の第1の経由地点から一連の経由地点の第2の経由地点まで自律車両をどのようにガイドするかを決定できる。いくつかの例では、命令は軌道又は軌道の一部とすることができる。いくつかの例では、receding horizon技術に従って、複数の軌道を実質的に同時に(例えば、技術的許容範囲内で)生成でき、複数の軌道のうちの1つが車両402の走行のために選択される。
【0051】
いくつかの例では、計画コンポーネント424は、本明細書で論じるように、オクルージョンフィールド及び/又はオクルージョングリッドの状態に少なくとも部分的に基づいて、車両402の1つ以上の軌道を生成できる。いくつかの例では、計画コンポーネント424は、線形時相論理及び/又は信号時相論理などの時相論理を使用して、車両402の1つ以上の軌道を評価できる。計画コンポーネント424における時相論理の利用の詳細は、参照によりその全体が本明細書に組み込まれる米国特許出願第15/632,147号に論じられている。
【0052】
少なくとも1つの例示において、車両コンピューティングデバイス404は、1つ以上のシステムコントローラ426を含むことができ、これは、車両402のステアリング、推進、制動、安全性、エミッタ、通信、及びその他のシステムを制御するよう構成できる。これらのシステムコントローラ426は、車両402の駆動モジュール414及び/又は他のコンポーネントの対応するシステムと通信及び/又は制御できる。
【0053】
メモリ418はさらに、環境内を走行する車両402によって使用できる1つ以上のマップ428を含むことができる。この説明の目的上、限定しないが、マップはトポロジ(交差点のような)、通り、山脈、道路、地形、及び一般的な環境などの環境についての情報を提供可能である2次元、3次元、又はN次元でモデル化された任意の数のデータ構造とすることができる。いくつかの例では、マップには、限定しないが、テクスチャ情報(例えば、色情報(例えば、RGB色情報、ラボ色情報、HSV/HSL色情報)など)、強度情報(例えば、LIDAR情報、RADAR情報など)、空間情報(例えば、メッシュに投影された画像データ、個々の「サーフェル」(例えば、個々の色及び/又は強度に関連付けられたポリゴン))、反射率情報(例えば、鏡面反射率情報、再帰反射率情報、BRDF情報、BSSRDF情報など)を含むことができる。一例では、マップは環境の3次元メッシュを含むことができる。いくつかの例では、マップの個々のタイルが環境の個別部分を表すように、マップをタイルフォーマットで格納でき、必要に応じて作業メモリに読み込むことができる。少なくとも1つの例では、1つ以上のマップ428は、少なくとも1つのマップ(例えば、画像及び/又はメッシュ)を含むことができる。いくつかの例では、車両402は、マップ428に少なくとも部分的に基づいて制御できる。すなわち、マップ428を、位置測定コンポーネント420、知覚コンポーネント422、及び/又は計画コンポーネント424に関連して使用して、車両402の位置を決定し、環境内の物体を識別し、並びに/又は環境内を走行するためのルート及び/若しくは軌道を生成できる。
【0054】
いくつかの例では、1つ以上のマップ428は、ネットワーク446を介してアクセス可能なリモートコンピューティングデバイス(コンピューティングデバイス448など)に格納できる。いくつかの例では、複数のマップ428は、例えば、特性(例えば、エンティティタイプ、時刻、曜日、季節など)に基づいて格納できる。複数のマップ428を格納することは同様のメモリ要件を有するが、マップ内のデータにアクセスできる速度を増加できる。
【0055】
いくつかの例では、1つ以上のマップ428は、環境内の個々の位置に関連付けられたオクルージョングリッドを格納できる。例えば、車両402が環境を横断すると、及び車両402に近接する領域を表すマップがメモリに読み込まれると、位置に関連付けられた1つ以上のオクルージョングリッドもメモリに読み込むことができる。
【0056】
いくつかの例では、予測コンポーネント430は、環境内の物体の予測軌道を生成する機能を含むことができる。例えば、予測コンポーネント430は、車両402からの閾値距離内で、車両、歩行者、動物などの1つ以上の予測軌道を生成できる。いくつかの例では、
図8に関連して論じるように、予測コンポーネント430は物体の痕跡を測定し、物体が環境内のオクルージョン領域に進入している時の物体の軌道を生成できる。従って、物体が車両402の1つ以上のセンサから可視でない場合でさえ、予測コンポーネント430は、物体がセンサデータに取り込まれなくても、物体についてのデータを維持するようにメモリ内の物体の軌道を延長できる。
【0057】
一般に、オクルージョン監視コンポーネント432は、オクルージョングリッドデータを生成及び/又はアクセスし、オクルージョングリッドのオクルージョン領域及び非オクルージョン領域を決定する、並びにオクルージョングリッドのオクルージョンフィールドのオクルージョン状態及び/又は占有状態を決定する機能を含むことができる。いくつかの例では、オクルージョン監視コンポーネント432は、
図1のオクルージョン監視コンポーネント108に対応できる。本明細書で論じるように、オクルージョン監視コンポーネント432は、LIDARデータ、画像データ、マップデータなどを受信して、環境内のオクルージョン関連情報を決定できる。いくつかの例では、オクルージョン監視コンポーネント432は計画コンポーネント424にオクルージョン情報を提供して、いつ車両402を制御し環境を横断させるかを決定できる。オクルージョン監視コンポーネント432は予測コンポーネント430にオクルージョン情報を提供して、環境内のオクルージョン領域内の1つ以上の物体の予測軌道を生成できる。オクルージョン監視コンポーネント432の追加の詳細はメモリ418に格納された残りのコンポーネントに関連して論じる。
【0058】
オクルージョン領域コンポーネント434はオクルージョンであるオクルージョングリッドの一部(例えば、
図1のオクルージョン領域126と同様の)を決定する、及び非オクルージョンであるオクルージョングリッドの一部(例えば、
図1の非オクルージョン領域124と同様の)を決定する機能を含むことができる。例えば、オクルージョン領域コンポーネント434は、LIDARデータ、画像データ、RADARデータなどを受信して、領域が車両402の1つ以上のセンサから「可視」であるかどうかを決定できる。いくつかの例では、オクルージョン領域コンポーネント434はセンサデータをマップデータに投影して、データが配置されていないマップの領域を決定する機能を含むことができる。いくつかの例では、マップデータを使用して、観測可能な領域の「外側」に領域があることを決定し、領域をオクルージョン領域と決定できる。いくつかの例では、オクルージョン領域コンポーネント434は環境内の物体に基づいてオクルージョン領域を動的に生成できる。
【0059】
光線放射コンポーネント436は、LIDARデータを受信し、特定のオクルージョンフィールドのオクルージョン状態及び/又は占有状態を決定するために、オクルージョンフィールドを通るようにLIDARデータを光線放射する機能を含むことができる。いくつかの例では、光線放射コンポーネント436は特定のオクルージョンフィールドに関連付けられたLIDARリターンの予想数を決定でき、特定のフィールドに関連付けられた実際のLIDARリターンの数を決定できる。いくつかの例では、本明細書で論じるように、光線放射コンポーネント436はオクルージョンフィールドのオクルージョン状態及び/又は占有状態に関連付けられた信頼レベルを決定できる。理解できるように、本明細書で論じる機能は、LIDARデータに限定されず、複数のセンサ技術(例えば、RADAR、SONAR、飛行時間型イメージャ、深度カメラなど)を使用してオクルージョン状態及び/又は占有状態を決定するために使用できる。
【0060】
区分コンポーネント438は、画像データを受信し、画像データを区分して、画像データで表される様々な物体及び/又は領域を識別する機能を含むことができる。例えば、区分コンポーネント438は、限定しないが、運転可能路面、自由空間(例えば、運転可能路面)及び/又は非自由空間、車両、歩行者、建物、植生などを含む画像データを識別及び意味分類内に区分するように訓練された1つ以上の機械学習アルゴリズムを含むことができる。いくつかの例では、区分コンポーネント438は知覚コンポーネント422と連動して作動し、例えば、画像データ及び/又はLIDARデータに対して意味区分を実行できる。
【0061】
投影コンポーネント440は区分された画像データ並びにオクルージョングリッド及びオクルージョンフィールドを含むマップデータを受信し、オクルージョンフィールドを区分画像データに投影する機能を含むことができる。いくつかの例では、投影コンポーネント440は、オクルージョンフィールドを運転可能路面(例えば、クリアな道路)に、領域を占有する、又はそうでなければ未決定の物体(例えば、車両)に投影するかどうかを決定することによって、1つ以上のオクルージョンフィールドの占有率を決定できる。
【0062】
オクルージョンコンテキストコンポーネント442は環境のコンテキストに基づいて、オクルージョングリッド、特にオクルージョン領域の占有率を決定する機能を含むことができる。理解できるように、オクルージョングリッドの一部は車両402がオクルージョン領域のセンサデータを取り込み得ないような物体によってオクルージョンであることができる。いくつかの例では、オクルージョンコンテキストコンポーネント442はオクルージョン領域の物理的に前方の領域を監視し(例えば、トラフィックフローの方向に関して)、物体がオクルージョン領域に進入しているかどうかを決定できる。オクルージョン領域のサイズ、及びその後の時間の経過に基づいて、物体がオクルージョン領域に進入していない場合、オクルージョンコンテキストコンポーネント442はオクルージョン領域が占有されていないことを決定できる。非限定的な例として、そのようなオクルージョンコンテキストコンポーネント442は2車線道路の交差点に接近する車両の存在を決定でき、オクルージョン領域の後方を通過する物体が検出されないという決定に基づいて、オクルージョンコンテキストコンポーネント442はオクルージョン領域が非占有であると決定できる。いくつかの例では、占有状態の決定に関連付けられた信頼レベルは時間の経過とともに増加できる(例えば、追加の観測値を蓄積することによって)。いくつかの例では、動的に生成されたオクルージョングリッドの場合、オクルージョングリッドの存続期間は、オクルージョングリッドがインスタンス化されてからの時間量に対応できる。いくつかの例では、オクルージョングリッドの占有状態の信頼レベルは、オクルージョングリッドの存続期間に少なくとも部分的に基づくことができる。いくつかの例では、オクルージョンコンテキストコンポーネント442は、LIDARデータ、画像データ、RADARデータなどを受信して、オクルージョン領域のコンテキストを決定できる。
【0063】
速度コンポーネント444は、環境を横断している間の車両402の速度及び/又は加速度レベルを決定する機能を含むことができる。いくつかの例では、速度及び/又は加速レベルは、限定しないが、低速(例えば、「クリープモード」)、通常の速度(例えば、通常速度)、及び高速(例えば、「ブーストモード」)を含むことができる。例えば、交差点又は領域全体を横断することなく交差点又は領域に進入する車両402のために、低速レベルを選択できる。例えば、そして
図6に関連して論じられるように、通常制御に従って進行する前に、車両402を制御し軌道に沿って緩やかに移動させ、より多くの領域を「見」て、オクルージョン領域のサイズを減少させ得る。そのような軌道の場合、速度コンポーネント444は低速を選択できる。別の例として、オクルージョングリッドがクリアである場合、環境を横断する車両402のために通常速度を選択できる。場合によっては、オクルージョングリッドのサイズが障害物に起因し減少する場合、及び/又は環境内の限られた視線に基づき、高速を選択して、車両402が対向車に曝すことのできる時間を減少できる。いくつかの例では、速度コンポーネント444は、計画コンポーネント424及び/又はシステムコントローラ426と連動して作動し、車両402の加速度を制御できる。
【0064】
理解できるように、本明細書で論じるコンポーネント(例えば、位置測定コンポーネント420、知覚コンポーネント422、計画コンポーネント424、1つ以上のシステムコントローラ426、1つ以上のマップ428、予測コンポーネント430、オクルージョン監視コンポーネント432、オクルージョン領域コンポーネント434、光線放射コンポーネント436、区分コンポーネント438、投影コンポーネント440、オクルージョンコンテキストコンポーネント442、及び速度コンポーネント444)は、例示の目的で分離されたものとして説明する。ただし、様々なコンポーネントによって実行される操作は、他の任意のコンポーネントと組み合わす、又は他の任意のコンポーネントで実行できる。例として、区分機能は知覚コンポーネント422(例えば、区分コンポーネント438ではなく)によって実行され、システムによって転送されるデータの量を減少し得る。
【0065】
いくつかの例では、本明細書で論じるコンポーネントの内のいくつか又は全ての態様は、任意のモデル、アルゴリズム及び/又は機械学習アルゴリズムを含むことができる。例えば、いくつかの例では、メモリ418(及び以下で論じるメモリ452)の中のコンポーネントをニューラルネットワークとして実装できる。
【0066】
本明細書で説明するように、例示のニューラルネットワークは、入力データを一連の接続された層に通して出力を作りだす生物学的に着想を得たアルゴリズムである。ニューラルネットワークの各層はまた別のニューラルネットワークを含むことができ、又は任意の数の層(畳み込みかどうかに関係なく)を含むことができる。本開示のコンテキストで理解できるように、ニューラルネットワークは機械学習を利用でき、これは学習されたパラメータに基づいて出力が生成されるようなアルゴリズムの広範なクラスを指すことができる。
【0067】
ニューラルネットワークのコンテキストで論じたが、任意のタイプの機械学習をこの開示と一致して使用できる。例えば限定しないが、機械学習アルゴリズムは、回帰アルゴリズム(例えば、通常の最小二乗回帰(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(サポートベクターマシン)、教師あり学習、教師なし学習、半教師あり学習などの方法を含むことができる。
【0068】
アーキテクチャの追加の例は、ResNet50、ResNet101、VGG、DenseNet、PointNetなどのニューラルネットワークを含む。
【0069】
少なくとも1つの例では、センサシステム406は、LIDARセンサ、radarセンサ、超音波トランスデューサー、sonarセンサ、位置センサ(例えば、GPS、コンパスなど)、慣性センサ(例えば、慣性測定ユニット(IMU)、加速度計、磁力計、ジャイロスコープなど)、カメラ(例えばRGB、IR、強度、深度、飛行時間など)、マイク、ホイールエンコーダ、環境センサ(例えば温度センサ、湿度センサ、光センサ、圧力センサなど)など、を含むことができる。センサシステム406は、センサのこれら又は他のタイプのそれぞれの複数の実例を含むことができる。例えば、LIDARセンサは、車両402のコーナー、フロント、バック、サイド、及び/又はトップに設置された個々のLIDARセンサを含むことができる。別の例として、カメラセンサは車両402の外部及び/又は内部の様々な位置に配置された複数のカメラを含むことができる。センサシステム406は車両コンピューティングデバイス404に入力を提供できる。追加的又は代替的に、センサシステム406は、所定の期間が経過した後、ほぼ実時間で、特定の周波数で1つ以上のコンピューティングデバイスに1つ以上のネットワーク446を介してセンサデータを送信できる。いくつかの例では、センサシステム406は
図1のセンサシステム104に対応できる。
【0070】
車両402はまた、上記のように、光及び/又は音を発するための1つ以上のエミッタ408を含むことができる。この例示のエミッタ408は車両402の乗客と通信するための内部オーディオ及びビジュアルエミッタを含む。限定ではなく例として、内部エミッタは、スピーカー、ライト、標識、ディスプレイ画面、タッチスクリーン、触覚エミッタ(例えば、振動及び/又はフォースフィードバック)、機械式アクチュエータ(例えば、シートベルトテンショナ、シートポジショナ、ヘッドレストポジショナなど)などを含むことができる。この例のエミッタ408はまた外部エミッタを含む。限定ではなく例として、この例示の外部エミッタは、走行の方向又は車両の作動の他のインジケータ(例えば、インジケータライト、標識、ライトアレイなど)を信号で送るためのライト、及び音響ビームステアリング技術を備える1つ以上の歩行者又は他の近くの車両と音声で通信するための1つ以上のオーディオエミッタ(例えば、スピーカー、スピーカーアレイ、ホーンなど)を含む。
【0071】
車両402はまた、車両402と1つ以上の他のローカル又はリモートコンピューティングデバイスとの間の通信を可能にする1つ以上の通信接続部410を含むことができる。例えば、通信接続部410は車両402及び/又は駆動モジュール414上の他のローカルコンピューティングデバイスとの通信を容易にできる。また、通信接続部410は、車両が他の近くのコンピューティングデバイス(例えば、他の近くの車両、交通信号など)と通信することを可能にできる。通信接続部410はまた、車両402が遠隔操作コンピューティングデバイス又は他の遠隔サービスと通信することを可能にする。
【0072】
通信接続部410は車両コンピューティングデバイス404を別のコンピューティングデバイス又はネットワーク446などのネットワークに接続するための物理的及び/又は論理的インターフェースを含むことができる。例えば、通信接続部410は、IEEE802.11規格によって定義された周波数を介するようなWi-Fiベースの通信、Bluetoothなどの短距離無線周波数、セルラー通信(例えば、2G、3G、4G、4G LTE、5Gなど)、又はそれぞれのコンピューティングデバイスが他のコンピューティングデバイスとインターフェースで接続することを可能にする任意の適切な有線又は無線通信プロトコルを可能にできる。
【0073】
少なくとも1つの例では、車両402は1つ以上の駆動モジュール414を含むことができる。いくつかの例では、車両402は単一の駆動モジュール414を有することができる。少なくとも1つの例では、車両402が複数の駆動モジュール414を有する場合、個々の駆動モジュール414は車両402の両端部(例えば前部及び後部など)に位置付けできる。少なくとも1つの例では、駆動モジュール414は駆動モジュール414及び/又は車両402の周囲の状況を検出するための1つ以上のセンサシステムを含むことができる。限定ではなく例として、センサシステムは、駆動モジュールのホイールの回転を感知するための1つ以上のホイールエンコーダ(例えばロータリーエンコーダ)、駆動モジュールの向きと加速度を測定するための慣性センサ(例えば、慣性測定ユニット、加速度計、ジャイロスコープ、磁力計など)、カメラ又はその他の画像センサ、駆動モジュールの周囲の物体を音響的に検出するための超音波センサ、LIDARセンサ、RADARセンサなど、を含むことができる。ホイールエンコーダなどの一部のセンサは駆動モジュール414に固有のものにできる。場合によっては、駆動モジュール414上のセンサシステムは車両402の対応するシステム(例えばセンサシステム406)と重複又は補足できる。
【0074】
駆動モジュール414は、高電圧バッテリー、車両を推進するモーター、バッテリーからの直流を他の車両システムで使用する交流に変換するインバーター、ステアリングモーター及びステアリングラック(電動とすることができる)を含むステアリングシステム、油圧又は電気アクチュエータを含むブレーキシステム、油圧及び/又は空気圧コンポーネントを含むサスペンションシステム、トラクションの損失を軽減し制御を維持するブレーキ力分散用の安定性制御システム、HVACシステム、照明(例えば車両の外部環境を照らすヘッド/テールライトなどの照明)、及び1つ以上の他のシステム(例えば冷却システム、安全システム、車載充電システム、DC/DCコンバーター、高電圧ジャンクション、高電圧ケーブル、充電システム、充電ポートなどのその他の電装コンポーネント)を含む多くの車両システムを含むことができる。さらに、駆動モジュール414は、センサシステムからデータを受信し事前処理し、様々な車両システムの操作を制御できる駆動モジュールコントローラを含むことができる。いくつかの例では、駆動モジュールコントローラは、1つ以上のプロセッサ、及び1つ以上のプロセッサと通信可能に結合されたメモリを含むことができる。メモリは1つ以上のモジュールを格納して、駆動モジュール414の様々な機能を実行できる。さらに、駆動モジュール414はまた、それぞれの駆動モジュールによる1つ以上の他のローカル又はリモートコンピューティングデバイスとの通信を可能にする1つ以上の通信接続部を含む。
【0075】
少なくとも1つの例では、直接接続部412は1つ以上の駆動モジュール414を車両402の本体と結合するための物理的インターフェースを提供できる。例えば、直接接続部412は、駆動モジュール414と車両との間のエネルギー、流体、空気、データなどの転送を可能にできる。いくつかの例では、直接接続部412はさらに駆動モジュール414を車両402の本体に着脱可能に固定できる。
【0076】
少なくとも1つの例では、位置測定コンポーネント420、知覚コンポーネント422、計画コンポーネント424、1つ以上のシステムコントローラ426、1つ以上のマップ428、予測コンポーネント430、オクルージョン監視コンポーネント432、オクルージョン領域コンポーネント434、光線放射コンポーネント436、区分コンポーネント438、投影コンポーネント440、オクルージョンコンテキストコンポーネント442、及び速度コンポーネント444は、上記のようにセンサデータを処理でき、それぞれの出力を1つ以上のネットワーク446を介して、1つ以上のコンピューティングデバイス448へ送信できる。少なくとも1つの例では、位置測定コンポーネント420、知覚コンポーネント422、計画コンポーネント424、1つ以上のシステムコントローラ426、1つ以上のマップ428、予測コンポーネント430、オクルージョン監視コンポーネント432、オクルージョン領域コンポーネント434、光線放射コンポーネント436、区分コンポーネント438、投影コンポーネント440、オクルージョンコンテキストコンポーネント442、及び速度コンポーネント444は、所定の期間が経過した後、ほぼ実時間で、特定の周波数で、それぞれの出力を1つ以上のコンピューティングデバイス448に送信できる。
【0077】
いくつかの例では、車両402はネットワーク446を介してセンサデータを1つ以上のコンピューティングデバイス448に送信できる。いくつかの例では、車両402は未処理のセンサデータをコンピューティングデバイス448に送信できる。他の例では、車両402は処理済みのセンサデータ及び/又はセンサデータの表現をコンピューティングデバイス448に送信できる。いくつかの例では、車両402は、所定の期間の経過後、ほぼ実時間で、特定の周波数にてセンサデータをコンピューティングデバイス448に送信できる。場合によっては、車両402はセンサデータ(未処理又は処理済み)を1つ以上のログファイルとしてコンピューティングデバイス448に送信できる。
【0078】
コンピューティングデバイス448は、プロセッサ450及びマップコンポーネント454を格納したメモリ452を含むことができる。
【0079】
いくつかの例では、マップコンポーネント454は、オクルージョングリッドをマップ位置に関連付ける機能を含むことができる。いくつかの例では、マップコンポーネント454は交差点に接近する車両が通行権を持たない交差点を識別でき、例えばその位置のオクルージョングリッドを生成できる。いくつかの例では、マップコンポーネント454は、例えば、車両402の視界を減少させ得る丘の頂上によって引き起こされる地形的オクルージョン領域を識別できる。いくつかの例では、
図5に関連して論じるように、例えば、オクルージョングリッドのサイズは、交差点の距離、制限速度、制限速度安全係数などの領域特性に少なくとも部分的に基づくことができる。
【0080】
車両402のプロセッサ416及びコンピューティングデバイス448のプロセッサ450は本明細書で説明するようにデータを処理し操作を実行するための命令を実行可能な任意の適切なプロセッサとすることができる。限定ではなく例として、プロセッサ416及び450は、1つ以上の中央処理装置(CPU)、グラフィック処理装置(GPU)、又は電子データを処理して電子データをレジスタ又はメモリに格納できる他の電子データに変換する他の任意のデバイス又はデバイスの一部、を備えることができる。いくつかの例では、集積回路(例えば、ASICなど)、ゲートアレイ(例えば、FPGAなど)、及び他のハードウェアデバイスはまた、それらが符号化された命令を実装するよう構成される限り、プロセッサと見なすことができる。
【0081】
メモリ418及び452は非一時的コンピュータ可読媒体の例である。メモリ418及び452は、オペレーティングシステム及び1つ以上のソフトウェアアプリケーション、命令、プログラム、及び/又はデータを格納して、本明細書に記載の方法及び様々なシステムに起因する機能を実装できる。様々な実装では、メモリを、スタティックランダムアクセスメモリ(SRAM)、シンクロナスダイナミックRAM(SDRAM)、不揮発性/フラッシュタイプメモリ、又は情報を格納可能な任意のその他のタイプのメモリなど、適切なメモリ技術を使用して実装できる。本明細書で説明するアーキテクチャ、システム、及び個々の要素は、他の多くの論理的、プログラム的、及び物理的なコンポーネントを含むことができ、それらの添付図面に示すものは、本明細書の議論に関連する単なる例にすぎない。
【0082】
図4は分散システムとして示されているが、代替の例では、車両402のコンポーネントをコンピューティングデバイス448に関連付けることができ、及び/又はコンピューティングデバイス448のコンポーネントは車両402に関連付けることができる、という事に留意すべきである。すなわち、車両402はコンピューティングデバイス448に関連付けられた機能のうちの1つ以上を実行でき、逆もまた同様である。さらに、オクルージョン監視コンポーネント432及び/又は予測コンポーネント430の態様は、本明細書で論じるデバイスのいずれかで実行できる。
【0083】
図2、
図3、及び
図5から
図11は、本開示の実施形態による例示のプロセスを示す。これらのプロセスはロジカルフローグラフとして図示され、このそれぞれの操作は、ハードウェア、ソフトウェア、又はそれらの組み合わせにおいて実装できる一連の操作を表す。ソフトウェアのコンテキストにおいては、操作は、1つ以上のプロセッサで実行したときに、列挙した操作を実行する1つ以上のコンピュータ可読記録媒体に格納されたコンピュータ実行可能命令を表す。一般に、コンピュータ実行可能命令は特定の機能を実行する、又は特定の抽象的データタイプを実装するルーチン、プログラム、物体、コンポーネント、データ構造などを含む。操作が記載される順序は限定して解釈されることを意図するものではなく、任意の数の記載される操作を任意の順序で及び/又は並行し結合して、プロセスを実装することができる。
【0084】
図5は、本開示の実施形態による、領域特性に基づいてオクルージョングリッドを生成するための例示のプロセス500の図解フロー図である。例えば、プロセス500の一部又は全ては、本明細書で説明するように、
図4における1つ以上のコンポーネントによって実行できる。
【0085】
オペレーション502において、プロセスは領域特性を評価することを含むことができる。いくつかの例では、領域特性は、これらに限定しないが、交差点(又は領域)距離(例えば、交差する交差点の幅)、制限速度、車両速度、安全係数などを含むことができる。例504は交差点110の領域特性を示している。例えば、交差点110は交差点距離506に関連付けられており、これは交差点110のストップライン508と交差点110の出口に関連付けられた位置との間の距離を表す。いくつかの例では、車両102は交差点を横切ろうとする際に交差点110内で静止を維持し無い場合があり、従って、車両102を制御しチェックライン510まで走行させることがある。いくつかの例では、チェックライン510は、交通の流れを妨げることなく、車両102が走行できる交差点110から最も遠いものを表すことができる。すなわち、チェックライン510を超えると、車両102は対向車を妨げることがある。車両102がチェックライン510まで移動する場合、交差点距離506を更新し、車両102が横断する交差点110の減少した距離を反映できる。いくつかの例では、ストップライン508及び/又はチェックライン510をマップデータとして格納、又は環境内で取り込まれたセンサデータに基づいて動的に生成できる。
【0086】
交差点110はまた制限速度512に関連付けられ得る。理解できるように、交差点110を横断する車両が到達すると予想される速度を効果的に上昇させる制限速度512に、安全係数を関連付けることができる。例えば、制限速度512が時速25マイルである交差点では、安全係数は追加時速15マイルであり得る。つまり、交差点110を横断する少なくともいくつかの車両はスピード違反と推定される。このような安全係数を考慮しこの仮定は立てられている。
【0087】
例504はまた、平均速度、「クリープモード」、及び「ブーストモード」に関連付けられた車両102を示している。理解できるように、平均速度は交差点距離506を横断する車両102の予想される平均速度とすることができる。さらに、交差点110の少なくとも一部を緩やかに又は速やかに横断するための様々な加速レベルに車両102を関連付けることができる。
【0088】
オペレーション514において、プロセスは領域特性に少なくとも部分的に基づいてオクルージョングリッドを生成することを含むことができる。例504では、オクルージョングリッドが生成され、交差点110に関連付けられる。いくつかの例では、オクルージョングリッド516は、オクルージョングリッドの長さ518(又は、より一般的には、オクルージョングリッド516の範囲(例えば、長さ、幅、高さ))に関連付けることができる。一例として、限定しないが、オクルージョングリッドの長さ518は、車両102が軌道を開始する際にオクルージョングリッド516がクリアである場合、車両102の平均速度で交差点距離506に関連付けられた交差点110を横断する車両102が、制限速度512(及び安全係数)で走行する車両と交差できないようなサイズにできる。すなわち、オクルージョングリッドの長さ518は、オクルージョングリッド516がクリアである場合、車両102が交差点110を安全に横断可能なサイズである。理解できるように、領域特性に少なくとも部分的に基づいてオクルージョングリッド516を生成することは、安全な走行を確実にすることを要求されるよりも、追加のリソースを操作に割り当てることなく安全結果を改善する。
【0089】
いくつかの例では、交差点に関連付けられた可視領域の長さが、交差点の地形により制限又は限定され得る。例えば、交差点の前の道路は車両102によって感知できる領域のサイズを減少させるヘアピンターン又は他の障害物を含み得る。いくつかの例では、交差点についての地理的及び/又は地形的情報(例えば、最大可視距離)を使用しオクルージョングリッド516のサイズを設定して、車両102が物理的な可能性を超えるクリアな領域を予想する状況を回避できる。従って、車両の速度及び/又は加速度を設定し、車両がそのような交差点を安全に横断できることを確実にできる。同様に、本明細書で論じるように、非オクルージョン領域のサイズに関連付けられた閾値又は未決定の占有状態に関連付けられた閾値を、感知された領域のサイズに基づいて調整できる。
【0090】
図6は本開示の実施形態による、交差点でのオクルージョングリッドを評価し、車両を制御し交差点を横断させるための例示のプロセス600の図解フロー図である。例えば、プロセス600の一部又は全ては、本明細書で説明するように、
図4における1つ以上のコンポーネントによって実行できる。
【0091】
オペレーション602において、プロセスは交差点でのオクルージョングリッドを評価することを含むことができる。例604では、車両102は交差点110のストップライン606に示されている。交差点110に関連付けられたマップデータに少なくとも部分的に基づいて、車両102はオクルージョングリッド608をメモリに読み込むことができる。さらに、車両102は、マップデータに基づいてストップライン606を決定でき、又は環境内のストップライン606を識別することに基づいてストップライン606を生成できる。さらに、チェックライン610はメモリからアクセスされることが、又は交差点110の路肩若しくは保護された領域を識別することに基づいて決定されることができる。
【0092】
いくつかの例では、1つ以上の障害物612(ここでは駐車中の車の列)及び建物632に関する車両102の位置により、車両102は、非オクルージョン領域614をオクルージョングリッド608の一部に関連付けることができ、及びオクルージョン領域616をオクルージョングリッド608の一部に関連付けることができる。図示のように、オクルージョン領域616に対応するオクルージョングリッドの個々のオクルージョンフィールドは灰色で網掛けされ、一方、非オクルージョン領域614は網掛けされない。理解できるように、物体618は、オクルージョン領域616を占有できるが、車両102はオクルージョン領域616に関連付けられたセンサデータを受信し得ない為、車両102は物体618(例えば、対応する占有状態が未決定であり得る)の存在について知らないこととなる。
【0093】
いくつかの例では、オペレーション602は、非オクルージョン領域614のオクルージョンフィールドが可視及び非占有である一方で、オクルージョン領域616のオクルージョンフィールドが不可視であり占有状態が未知(例えば、未決定)である、と決定することを含むことができる。いくつかの例では、オクルージョン領域616内のオクルージョンフィールドのデフォルト状態は、占有済み状態(又は占有済み状態として扱われるべき未決定状態)とすることができる。
【0094】
オペレーション620において、プロセスはオクルージョングリッドの第1の評価(例えば、交差点を安全に横断するのに十分な情報がないという決定)に少なくとも部分的に基づいて、車両を制御し位置を変更させることを含むことができる。例622では、車両102を制御しストップライン606からチェックライン610に移動させ、オクルージョングリッド608の非オクルージョン領域614のサイズを増加させることができる(例えば、車両102のセンサからの利用可能なデータの量を増加させることによって)。従ってオクルージョングリッド608のオクルージョン領域616のサイズが減少する。例622に示すように、オクルージョングリッド608の大部分は車両102に対して非オクルージョンであるが、この時、車両102はオクルージョングリッド608内の物体618を識別できるようになっている。従って物体618に対応するオクルージョングリッド608のオクルージョンフィールドは占有領域624として識別される(そして例示の目的で、黒で網掛けされている)。同様に、物体618は車両102の感知領域に関する「網掛け」を生成でき、オクルージョン領域634によって示される(及び例622では網掛けの灰色として)。従って交差点110にさらに進入することなく、車両102を制御しチェックライン610で待機させることができる。いくつかの例では、車両102を制御しチェックライン610へ緩やかに(例えば、速度閾値未満で)前進(例えば、「クリープモード」)させることができるが、任意の加速度及び/又は速度を使用できる。
【0095】
オペレーション626において、プロセスは、オクルージョングリッドの第2の評価に少なくとも部分的に基づいて、車両を制御し交差点を横断させることを含むことができる。例628では、物体618はオクルージョングリッド608を出ており、この時、可視及び非占有である。従って、車両102は、軌道630に少なくとも部分的に基づいて交差点110を横断するものとして示されている。いくつかの例では、車両102を制御し通常又は高加速(例えば、「ブーストモード」)を使用して交差点110を通って加速させることができるが、任意の加速を使用できる。
【0096】
いくつかの例では、オペレーション602、620、及び/又は626を車両102によって連続的に実行し、環境の状態を経時的に監視できる。いくつかの例では、プロセス600は、環境を継続的に評価するために、10ヘルツ(Hz)(又は任意の周波数)の周波数でオクルージョングリッドを評価することを含むことができる。
【0097】
図7は、本開示の実施形態による、交差点でのオクルージョングリッドを評価し、車両を制御し交差点を横断させるための別の例示のプロセス700の図解フロー図である。例えば、プロセス700の一部又は全ては、本明細書で説明するように、
図4における1つ以上のコンポーネントによって実行できる。
【0098】
オペレーション702において、プロセスは交差点でのオクルージョングリッドを評価することを含むことができる。いくつかの例では、オペレーション702は環境内の障害物を識別することに応答してオクルージョングリッドを生成することを含むことができる。例704では、車両102は交差点110にて、無防備な左折(例えば、車両102には緑色の矢印がなく、対向車に道を譲らなければならない)を実行するような、軌道706を辿ろうとしている。いくつかの例では、車両102は環境内の物体708(例えば、車両)を識別でき、オクルージョングリッド710を物体708に関連付けることができる。本明細書で論じるように、車両はLIDARデータ及び/又は画像データを受信して、オクルージョングリッド710内のオクルージョンフィールドのオクルージョン状態及び/又は占有状態を評価できる。
【0099】
オペレーション712において、プロセスは車両102を制御し交差点で待機させることを含むことができる。理解できるように、オクルージョンであるオクルージョングリッド710(交差点110を安全に横断するのに十分な量の情報を提供しないオクルージョングリッド710)の一部に少なくとも部分的に基づいて、及び/又は交差点110を横断する物体708に少なくとも部分的に基づいて、車両102を制御し交差点110に待機させることができる。
【0100】
オペレーション714において、プロセスは、オクルージョングリッドをクリアであると(又はそうでなければ、軌道706に従って交差点110の安全な横断を可能にするのに十分な情報を提供すると)評価することを含むことができる。例716では、物体708は交差点110を横切ってオクルージョングリッド710の外に進んだものとして示されている。いくつかの例では、オペレーション714は、オクルージョンフィールドが可視であり占有されていない(又はそうでなければ未決定である)と、従ってオクルージョングリッド710がクリアである(又は十分な情報を提供する)と決定するために、LIDARデータ及び/又は画像データを取り込むことを含むことができる。
【0101】
オペレーション718において、プロセスは、オクルージョングリッドがクリアであることに少なくとも部分的に基づいて、車両102を制御して交差点を横断させることを含むことができる。いくつかの例では、オペレーション718は、車両102に環境を横断するように指示する前に、オクルージョングリッド710がクリアになる(又は、軌道706の安全な横断を決定するのに十分な量の情報を提供する)のを所定の時間(例えば、1秒、2秒など)待機することを含むことができる。例716に示すように、車両102は軌道706を介して交差点110を横断している。さらに、オクルージョングリッド710は障害物から可視及びクリアであると示されている。
【0102】
図8は、本開示の実施形態による、物体に関連付けられたオクルージョン領域を決定し、オクルージョン領域内の動的物体の予測軌道を生成するための例示のプロセス800の図解フロー図である。例えば、プロセス800の一部又は全ては、本明細書で説明するように、
図4における1つ以上のコンポーネントによって実行できる。例えば、プロセス800の一部又は全ては、車両コンピューティングデバイス404によって実行できる。
【0103】
オペレーション802で、プロセスは物体に関連付けられたオクルージョン領域を決定することを含むことができる。例804では、交差点110の車両102は環境のLIDARデータ及び/又は画像データを取り込む。いくつかの例では、オペレーション802は、環境内の物体806及び物体806に関連付けられたオクルージョン領域808を識別することを含むことができる。例804では、物体806は交差点110の近くに駐車された車を表すことができる。いくつかの例では、オペレーション802は物体806に関連付けられたオクルージョングリッド(不図示)を生成することを含むことができる。いくつかの例では、オクルージョン領域808はオクルージョングリッドのオクルージョン部分を表す。いくつかの例では、オペレーション802は、本明細書で論じるように、オクルージョングリッドを含むマップデータへアクセスすることを含むことができる。
【0104】
オペレーション810において、プロセスはオクルージョン領域808に近接する動的物体(例えば、歩行者)を識別することを含むことができる。いくつかの例では、オペレーション810は、動的物体812(例えば、歩行者)がオクルージョン領域808の距離閾値内にあることを決定することを含むことができる。いくつかの例では、オペレーション810は、LIDARデータ、画像データ、及び/又は他のセンサデータを受信して、測定された痕跡814として、環境内の動的物体812の軌道(例えば、位置、向き、及び速度)を測定することを含むことができる。
【0105】
オペレーション816において、プロセスは、動的物体の1つ以上の予測軌道を生成することを含むことができる。例804では、1つ以上の予測軌道818が、歩行者812がオクルージョン領域808にいる間に辿る可能性のある経路として示されている(ただし、予測軌道はオクルージョン領域808に限定されない)。いくつかの例では、予測軌道818は測定された痕跡814及び/又は環境内の記号若しくは領域に少なくとも部分的に基づくことができる。例えば、予測軌道は歩行者がオクルージョン領域808に進入した時の歩行者812の速度及び方向の延長を含み得る。別の例では、予測軌道は交差点の反対側の歩道などの環境の目的地に基づき得る。様々な方法を使用して予測軌道を生成できる。予測軌道を生成することの詳細は、参照によりその全体が本明細書に組み込まれる米国特許出願第15/833,715号に論じられている。
【0106】
いくつかの例では、オペレーション816は、1つ以上の予測軌道818に少なくとも部分的に基づいて、車両102を制御することを含むことができる。いくつかの例では、車両102の軌道が少なくとも1つの予測軌道の距離閾値内にある場合、車両102を制御し動的物体についての追加情報が決定できるまで待機させることができる。いくつかの例では、ある期間が経過するにつれて、車両102は歩行者812の経路が1つ以上の予測軌道818を辿る可能性を示す個々の予測軌道に関連付けられた確率を増加又は減少できる。例えば、時間が経過し、動的物体812に関連付けられた観察が行われる又は行われない時、予測軌道の候補リストから軌道を拒否できる(例えば、取り除くこと)。いくつかの例では、動的物体812が環境内で観察される時、1つ以上の予測軌道がオクルージョン領域808内の動的物体812の動向を描かない又は関連付けられない場合、それらを拒否できる。
【0107】
図9は、本開示の実施形態による、地形的オクルージョングリッドを評価し、車両を制御し地形的障害物を横断させるための例示のプロセス900の図解フロー図である。例えば、プロセス900の一部又は全ては、本明細書で説明するように、
図4における1つ以上のコンポーネントによって実行できる。例えばプロセス900の一部又は全ては車両コンピューティングデバイス404によって実行できる。
【0108】
オペレーション902において、プロセスはオクルージョングリッドを評価することを含むことができる。いくつかの例では、オクルージョングリッドは環境内の地形的(例えば、地理的)特徴に応答して生成された地形的オクルージョングリッドとすることができる。例904では、オクルージョングリッド906が丘の頂上に関連して示されている。理解できるように、車両102が丘に近づくと、地面の高低差及び角度に起因して、丘の頂上に車両102から可視ではない領域が自然と生じる。一例では、オクルージョングリッド906は、非オクルージョン領域908及びオクルージョン領域910に関連付けられている。図示のように、車両102はオクルージョングリッド906を横断するLIDAR光線912を放出し、非オクルージョン領域908及びオクルージョン領域910を識別する。
【0109】
理解できるように、車両102が丘の頂上に近づくと、車両102は丘の頂上の地面のセンサデータを取り込み不可能となり得る。いくつかの実施形態では、これは車両102の視界を減少させ、それに応じて車両102は環境を走行する車両102の速度を低下できる。
【0110】
しかしながら、オペレーション914において、プロセスは少なくとも1つのオクルージョンフィールドの占有率を決定することを含むことができる。例えば、オクルージョングリッド906は少なくとも1つのオクルージョンフィールド916を含む。例904に示すように、オクルージョンフィールド916はLIDAR光線912がオクルージョンフィールド916に関連付けられた地面のセンサデータを取り込むことができないような丘の頂上に位置している。いくつかの例では、オクルージョングリッド906は、オクルージョン又は非オクルージョンである特定の領域を示す領域の地形的情報(例えば、高さ情報)を含むマップデータを介してアクセスできる。さらに、そのようなマップ情報は、車両102の位置に基づいて、例えば、表面上にいくつのデータポイント(例えば、LIDARリターン)が予想できるかを示すことができる。しかしながら、オクルージョンフィールド916は3次元の空間ボリュームを含む、又は関連付けられているので、LIDAR光線912はオクルージョンフィールド916の一部を横断できる。いくつかの例では、本明細書で論じるように、LIDAR光線912の光線放射に少なくとも部分的に基づいて、オペレーション914はオクルージョンフィールド916の占有率を決定することを含むことができる。この例では、オクルージョンフィールド916は車両102から可視であり(オクルージョン状態を決定する目的で)、障害物によって占有されていない。
【0111】
オペレーション918において、プロセスは占有率に少なくとも部分的に基づいて車両(例えば、車両102)を制御することを含むことができる。例えば、環境内の丘を表すオクルージョングリッド906を評価することで、センサが山頂の丘を越えて地上データを直接取り込めないにもかかわらず、車両102は丘の頂上を「見渡す」ことができる。従って、車両102は、丘の頂上を越えたオクルージョングリッド906の占有率に基づいて、軌道を計画し及び/又は速度を決定できる。非限定的な例として、車両102は、オクルージョングリッド906によって提供される情報が丘を安全に横断するのに十分であるように、速度、向き、又は位置の内の1つ以上を調整し得る。
【0112】
図10は、本開示の実施形態による、LIDARデータを光線放射することに基づいて、及び/又は画像データへのオクルージョンフィールドの投影に基づいて、オクルージョンフィールドの占有率を決定し、車両を制御し環境を横断させるための例示のプロセス1000を示す。例えば、プロセス1000の一部又は全ては、本明細書で説明するように、
図4における1つ以上のコンポーネントによって実行できる。例えば、プロセス1000の一部又は全ては、車両コンピューティングデバイス404によって実行できる。
【0113】
オペレーション1002において、プロセスは自律車両に近接する環境を表すマップデータにアクセスすることを含むことができ、マップデータはオクルージョンフィールドを含むオクルージョングリッドを含む。いくつかの例では、オペレーション1002は、環境内の車両の位置を決定すること、及び車両の距離閾値内にあるマップデータにアクセスすること(例えば、receding horizon)を含むことができる。本明細書で論じるように、いくつかの例では、オクルージョングリッドは複数のオクルージョンフィールドを含むことができ、各オクルージョンフィールドは環境の個別部分(例えば、運転可能路面の一部)を表す。いくつかの例では、オクルージョンフィールドは、オクルージョン状態(例えば、オクルージョンフィールドが車両から可視であるかどうか)及び占有状態(例えば、オクルージョンフィールドが環境内の物体によって占有されているか、又はそうでなければ未決定であるかどうか)を表すことができる。
【0114】
オペレーション1004において、プロセスは自律車両上のセンサを使用してセンサデータを取り込むことを含むことができる。いくつかの例では、オペレーション1004は環境のLIDARデータ及び/又は画像データを取り込むこと含むことができる。
【0115】
オペレーション1006において、プロセスはオクルージョンフィールドの占有率を決定することを含むことができる。いくつかの例では、オペレーション1006はまたオクルージョンフィールドの可視性を決定することを含むことができる。いくつかの例では、オペレーション1006はLIDARデータ(例えば、オペレーション1008)及び/又は画像データ(例えば、オペレーション1010)に少なくとも部分的に基づいて、オクルージョンフィールドの占有率を決定することを含むことができる。
【0116】
オペレーション1008において、プロセスはLIDARデータを光線放射し、オクルージョンフィールドの占有率を決定することを含むことができる。
図2に関連して及び本開示を通して論じるように、LIDARデータの光線放射は、オクルージョンフィールドを通過するLIDARリターンの予想数(例えば、オクルージョンフィールド上のボクセル空間の列内のボクセルを通過し得る)を決定すること、及び上記で詳細に論じたそのようなオクルージョンフィールド上を通過するボクセルの総数に関するオクルージョンフィールドを通過するLIDARリターンの実数を決定すること、を含むことができる。もちろん、オペレーション1008はLIDARデータがオクルージョンフィールド内の物体を表すことを決定することを含むことができ、その場合、オクルージョンフィールドが占有されているであろう。リターンの閾値数(又はパーセンテージ)がリターン無しを示す場合、占有状態は非占有であり得る。そうでなければ、占有状態が未決定であり得る。
【0117】
オペレーション1010において、プロセスはオクルージョンフィールドを区分された画像データに投影し、オクルージョンフィールドの占有率を決定することを含むことができる。
図3に関連して及び本開示全体を通して論じたように、画像センサによって取り込まれた画像データを区分し、運転可能な領域、車両、歩行者などの位置を決定できる。オクルージョンフィールドの位置を区分された画像データに投影して、オクルージョンフィールドの位置が運転可能路面に対応するかどうかを決定できる。対応する場合、オクルージョンフィールドは占有されていないが、例えばオクルージョンフィールドが車両に投影されている場合、オクルージョンフィールドは占有されている、又はそうでなければ未決定であると決定できる。オクルージョンフィールドが占有されているかどうかの決定をオペレーション1012にて行うことができる。
【0118】
オペレーション1012において、オクルージョンフィールドの閾値数が占有されている(「yes」)、又は未決定である場合、プロセスはオペレーション1014に続く。オペレーション1014において、プロセスは、占有率に少なくとも部分的に基づいて、オクルージョングリッドがクリアでないと決定することを含むことができる。例えば、車両が安全に環境を横断し得ると決定するのに十分な数の非占有のオクルージョンフィールドがない場合、プロセスは戻り得る。いくつかの例では、オペレーション1014はオクルージョンフィールドの閾値数が占有されている、又は未決定であると決定することを含むことができる。いくつかの例では、オペレーション1014は車両を制御しオクルージョングリッドの大部分を観察するための位置に走行させることを含むことができる。プロセスはオペレーション1004に戻って、オクルージョンフィールドの、従ってオクルージョングリッドの状態を決定するための追加のデータを取り込むことができる。
【0119】
オクルージョンフィールドが占有されていない場合(オペレーション1012で「no」)、プロセスはオペレーション1016に続く。オペレーション1016において、プロセスは、占有率に少なくとも部分的に基づいて、オクルージョングリッドがクリアである、又はそうでなければ環境を安全に横断するのに十分な情報を提供すると決定することを含むことができる。
【0120】
オペレーション1018において、プロセスは、オクルージョングリッドがクリアであることに少なくとも部分的に基づいて、自律車両を制御し環境を横断させることを含むことができる。
【0121】
図11は、本開示の実施形態による、オクルージョングリッドを示すマップデータに基づいて、又は環境内の障害物の識別に基づいて、オクルージョングリッドを決定し、車両を制御し環境を横断させるための例示のプロセス1100を示す。例えば、プロセス1100の一部又は全ては、本明細書で説明するように、
図4における1つ以上のコンポーネントによって実行できる。例えば、プロセス1100の一部又は全ては車両コンピューティングデバイス404によって実行できる。
【0122】
オペレーション1102において、プロセスは自律車両を制御し環境内の第1の位置まで横断させることを含むことができる。場合によっては、第1の位置は環境内の交差点のストップラインを表すことができる。
【0123】
オペレーション1104において、プロセスは自律車両上のセンサを使用して環境のセンサデータを取り込むことを含むことができる。いくつかの例では、オペレーション1104は、環境内のLIDARデータ、画像データ、RADARデータなどを取り込むことを含むことができる。
【0124】
オペレーション1106において、プロセスは、1)マップデータがオクルージョングリッドを示しているかどうか、又は2)障害物が環境内で識別されているかどうかを決定することを含むことができる。「no」の場合(例えば、マップデータが、その位置に関連付けられたオクルージョングリッドがある、及び環境内で識別された物体がない、と示さない)、プロセスはオペレーション1102に戻ることができ、それにより自律車両は新しい位置に移動でき(オペレーション1102)、及び/又は自律車両が基準運転行動(例えば、センサデータに基づく軌道生成)に従って環境内のセンサデータを取り込むことができるようになる(オペレーション1104)。オペレーション1106において、「yes」の場合(例えば、マップデータが、その位置に関連付けられたオクルージョングリッドがある、又は環境内に識別された物体があると示す)、プロセスはオペレーション1108に続く。
【0125】
オペレーション1108において、プロセスは、複数のオクルージョンフィールドを含むオクルージョングリッドを決定することを含むことができ、オクルージョンフィールドは環境内の対応する領域の可視性及び占有率を示す。いくつかの例では、オクルージョングリッドはマップデータからアクセスでき、いくつかの例では、オクルージョングリッドは物体の識別に少なくとも部分的に基づいて動的に生成できる。
【0126】
オペレーション1110において、プロセスは、オクルージョン領域として及びセンサデータに少なくとも部分的に基づいて、第1の時間において、オクルージョングリッドの少なくとも一部がオクルージョンであると決定することを含むことができる。本明細書で論じるように、第1の時間においてオクルージョン領域は自律車両の1つ以上のセンサから可視ではあり得ない。
【0127】
オペレーション1112において、プロセスは、オクルージョン領域に少なくとも部分的に基づいて、自律車両を制御し第1の位置に留まらせる又は第2の位置を横断させることを含むことができる。第1の位置に留まらせる例は
図7に関連して論じ、車両を制御し第2の位置を横断させる例は
図6に関連して論じている。例えば、第2の位置をチェックラインにでき、自律車両を第2の位置まで走行させ、より多くのオクルージョングリッドを見ることを可能にする。
【0128】
オペレーション1114において、プロセスは、センサデータに少なくとも部分的に基づいて、第2の時間において、オクルージョン領域(又はオクルージョン領域に対応する環境の一部)が可視であると決定することを含むことができる。
図6に関して、環境内の障害物がオクルージョングリッド全体のデータを取り込むことからセンサを妨害しないように、自律車両は第2の位置に走行し得る。
図7に関して、自律車両は移動する障害物のために待機し得、それによりセンサがオクルージョングリッドを表すデータを取り込むことを可能にする。
【0129】
オペレーション1116において、プロセスは、第2の時間において、可視であるオクルージョン領域に少なくとも部分的に基づいて、自律車両を制御することを含むことができる。いくつかの例では、オペレーション1116はまた、自律車両が環境を安全に横断できることを示すオクルージョングリッドが占有されていないと決定することを含むことができる。
【0130】
[例示的な発明内容]
A:1つ以上のプロセッサと、前記1つ以上のプロセッサによって実行可能な命令を格納した1つ以上のコンピュータ可読媒体と、を備えたシステムであって、前記命令は、実行されると、前記システムに、自律車両上のLIDARセンサを使用してLIDARデータを取り込むステップと、前記自律車両に近接する環境を表すマップデータであって、複数のオクルージョンフィールドを含むオクルージョングリッドを含むマップデータにアクセスするステップであって、前記複数のオクルージョンフィールドのオクルージョンフィールドが前記環境の一部のオクルージョン状態及び占有状態に関連付けられる、ステップと、前記LIDARデータの一部を光線放射し、前記オクルージョンフィールドの前記占有状態及び前記オクルージョン状態を決定するステップと、前記オクルージョンフィールドに少なくとも部分的に基づいて、前記オクルージョングリッドに関連付けられた情報の十分性を決定し、前記自律車両が前記環境を横断するための安全な軌道を決定するステップと、前記自律車両を制御し前記安全な軌道に従って前記環境を横断させるステップと、を含む操作を実行させる、システム。
【0131】
B:前記操作が、前記自律車両上の画像センサを使用して画像データを取り込むステップと、前記画像データの少なくとも一部に対して意味区分を実行して、前記環境内の少なくとも運転可能路面を識別する区分された画像データを生成するステップと、前記オクルージョンフィールドを前記区分された画像データに投影するステップと、前記オクルージョンフィールドが前記運転可能路面に投影されていることを決定するステップと、前記運転可能路面に投影されている前記オクルージョンフィールドに少なくとも部分的に基づいて、前記自律車両を制御し前記環境を横断させるステップと、をさらに備える段落Aに記載のシステム。
【0132】
C:前記複数のオクルージョンフィールドが前記環境内の運転可能路面の一部を個別化し、前記オクルージョンフィールドの前記オクルージョン状態が前記LIDARセンサによる前記オクルージョンフィールドの可視性を示す、段落A又は段落Bに記載のシステム。
【0133】
D:前記操作が、前記オクルージョンフィールドに関連付けられたLIDARリターンの第1の数と、前記オクルージョンフィールドに関連付けられた個別化された領域の第2の数と、に少なくとも部分的に基づいて、前記オクルージョンフィールドの前記占有状態に関連付けられた信頼値を決定するステップをさらに備える段落Aから段落Cに記載のいずれかのシステム
【0134】
E:前記第2の数に対する前記第1の数の第1の比率が閾値未満であることは前記オクルージョンフィールドの非占有状態の高い信頼性を示し、前記第2の数に対する前記第1の数の第2の比率が前記閾値以上であることは前記オクルージョンフィールドの占有済み状態の高い信頼性を示す、段落Dに記載のシステム。
【0135】
F:ロボットプラットフォーム上のセンサを使用してセンサデータを取り込むステップと、前記センサデータに少なくとも部分的に基づいて、前記ロボットプラットフォームの位置を決定するステップと、前記位置の前記ロボットプラットフォームに近接する環境を表すマップデータであって、オクルージョングリッドを含むマップデータにアクセスするステップと、前記オクルージョングリッドのオクルージョンフィールドの占有状態を決定するステップと、前記オクルージョンフィールドに少なくとも部分的に基づいて、情報の十分性を決定し、前記オクルージョングリッドに近接する前記環境の領域を横断する軌道を決定するステップと、前記オクルージョングリッドの前記占有状態に少なくとも部分的に基づいて、前記ロボットプラットフォームを制御するステップと、を備える方法。
【0136】
G:前記センサデータとして前記ロボットプラットフォーム上のLIDARセンサを使用してLIDARデータを取り込むステップと、前記LIDARデータの一部を光線放射して、前記オクルージョンフィールドの前記占有状態を決定するステップであって、前記占有状態は、占有済み状態、非占有状態、又は未決定状態の1つを含む、ステップと、前記LIDARデータの一部を光線放射して、前記オクルージョンフィールドのオクルージョン状態を決定するステップであって、前記オクルージョン状態は可視又はオクルージョンであることの1つを含む、ステップと、前記オクルージョングリッドがクリアであることに少なくとも部分的に基づいて、前記ロボットプラットフォームを制御し前記環境を横断させるステップと、をさらに備え、前記情報の十分性は、前記オクルージョングリッドのサイズ又は前記オクルージョングリッドに関連付けられた制限速度の少なくとも1つに関係して、前記LIDARセンサから可視である前記オクルージョングリッドのオクルージョンフィールドの数に少なくとも部分的に基づいて決定される、段落Fに記載の方法。
【0137】
H:前記光線放射が、前記オクルージョンフィールドの上の領域に関連付けられた予想のLIDARリターンの第1の数を決定するステップと、前記オクルージョンフィールドの上の前記領域に関連付けられた実際のLIDARリターンの第2の数を決定するステップと、前記予想のLIDARリターンの第1の数及び前記実際のLIDARリターンの第2の数に少なくとも部分的に基づいて、前記オクルージョンフィールドの前記占有率に関連付けられた信頼値を決定するステップと、前記信頼値が信頼閾値以上であると決定するステップと、を備える段落Gの方法。
【0138】
I:前記ロボットプラットフォーム上の画像センサを使用して、画像データを前記センサデータとして取り込むステップと、前記画像データの少なくとも一部に対して区分を実行して、前記環境内の運転可能路面を識別する区分された画像データを生成するステップと、前記オクルージョンフィールドを前記区分された画像データに投影するステップと、前記オクルージョンフィールドを前記運転可能路面に投影すると決定するステップと、前記運転可能路面に投影する前記オクルージョンフィールドに少なくとも部分的に基づいて、前記ロボットプラットフォームを制御し前記環境を横断させるステップと、をさらに備える段落Fから段落Hのいずれかに記載の方法。
【0139】
J:前記ロボットプラットフォームが自律車両を含み、前記自律車両に近接する前記環境が交差点を含み、前記方法が、前記自律車両が横断する前記交差点の距離を決定するステップと、前記交差点に関連付けられた制限速度を決定するステップと、前記交差点の前記距離と、前記制限速度と、安全係数と、に少なくとも部分的に基づいて、前記オクルージョングリッドの範囲を決定するステップと、をさらに備える段落Fから段落Iのいずれかに記載の方法。
【0140】
K:前記自律車両が前記交差点の前記距離を横断する予想される時間に少なくとも部分的に基づいて、前記オクルージョングリッドの前記範囲を決定するステップをさらに備える段落Jに記載の方法。
【0141】
L:前記オクルージョンフィールドが時相論理記号を含み、前記方法が、前記時相論理記号を含む時相論理式の評価に少なくとも部分的に基づいて軌道を検証するステップと、前記軌道に少なくとも部分的に基づいて、前記ロボットプラットフォームを制御し前記環境を横断させるステップと、をさらに備える段落Fから段落Kのいずれかに記載の方法。
【0142】
M:前記オクルージョングリッドが複数のオクルージョンフィールドを含み、前記方法が、前記複数のオクルージョンフィールドの閾値数が前記センサから可視であり、前記ロボットプラットフォームを制御し前記環境を横断させる前に、非占有であると決定するステップ、をさらに備える段落Fから段落Lのいずれかに記載の方法。
【0143】
N:前記オクルージョングリッドの一部が前記センサから可視ではないと決定するステップと、前記ロボットプラットフォームを制御し前記センサから可視である前記オクルージョングリッドの前記一部を増やす位置に移動させるステップと、をさらに備える段落Fから段落Mのいずれかに記載の方法。
【0144】
O:実行されると、1つ以上のプロセッサに、ロボットプラットフォーム上のセンサを使用して取り込まれたセンサデータを受信するステップと、前記センサデータに少なくとも部分的に基づいて、前記ロボットプラットフォームの位置を決定するステップと、前記位置の前記ロボットプラットフォームに近接する環境を表すマップデータであって、オクルージョングリッドを含むマップデータにアクセスするステップと、前記オクルージョングリッドのオクルージョンフィールドの占有状態を決定するステップと、前記オクルージョンフィールドに少なくとも部分的に基づいて、情報の十分性を決定し、前記オクルージョングリッドに近接する前記環境の領域を横断する軌道を決定するステップと、前記オクルージョングリッドの前記占有状態に少なくとも部分的に基づいて、前記ロボットプラットフォームを制御するステップと、を含む操作を実行させる命令を格納した非一時的コンピュータ可読媒体。
【0145】
P:前記センサデータがLIDARデータであり、前記センサがLIDARセンサであり、前記操作は、前記LIDARデータの一部を光線放射し前記オクルージョンフィールドの前記占有状態及びオクルージョン状態を決定するステップと、前記占有状態及び前記オクルージョン状態に少なくとも部分的に基づいて、前記オクルージョングリッドに関連付けられた前記情報の十分性を決定するステップと、前記情報の十分性に少なくとも部分的に基づいて、前記ロボットプラットフォームを制御し前記環境を横断させるステップと、をさらに備える段落Oに記載の非一時的コンピュータ可読媒体。
【0146】
Q:前記光線放射は、前記オクルージョンフィールド上の領域に関連付けられた予想のLIDARリターンの第1の数を決定するステップと、前記オクルージョンフィールド上の前記領域に関連付けられた実際のLIDARリターンの第2の数を決定するステップと、前記予想のLIDARリターンの第1の数及び前記実際のLIDARリターンの第2の数に少なくとも部分的に基づいて、前記オクルージョンフィールドの前記占有状態に関連付けられた信頼値を決定するステップと、前記信頼値が信頼閾値以上であると決定するステップであって、前記信頼閾値以上である前記信頼レベルは前記オクルージョンフィールドが非占有であることを示す、ステップと、を備える段落Pに記載の非一時的コンピュータ可読媒体。
【0147】
R:前記ロボットプラットフォーム上の画像センサを使用して、画像データを前記センサデータとして取り込み、前記画像データの少なくとも一部に対して区分を実行し、前記環境内の運転可能路面を識別する区分された画像データを生成し、前記オクルージョンフィールドを前記区分された画像データに投影し、前記オクルージョンフィールドを前記運転可能路面に投影すると決定する、段落Oから段落Qのいずれかに記載の非一時的コンピュータ可読媒体。
【0148】
S:前記操作は、前記オクルージョングリッドの一部が前記センサから可視ではないと決定するステップと、前記ロボットプラットフォームを制御し前記オクルージョングリッド全体が前記センサから可視である位置に移動させるステップと、をさらに備え、前記ロボットプラットフォームの速度が速度閾値を下回る、段落Oから段落Rのいずれかに記載の非一時的コンピュータ可読媒体。
【0149】
T:前記センサデータが第1のセンサデータであり、前記操作が、前記ロボットプラットフォーム上の画像センサによって取り込まれた画像データを、前記第1のセンサデータとして受信するステップと、前記ロボットプラットフォーム上のLIDARセンサによって取り込まれたLIDARデータを、第2のセンサデータとして受信するステップと、前記第1のセンサデータ及び前記第2のセンサデータに少なくとも部分的に基づいて、前記オクルージョンフィールドの前記占有状態に関連付けられた信頼値を決定するステップと、をさらに備える段落Oから段落Sのいずれかに記載の非一時的コンピュータ可読媒体。
【0150】
U:1つ以上のプロセッサと、前記1つ以上のプロセッサによって実行可能な命令を格納した1つ以上のコンピュータ可読媒体と、を備えたシステムであって、前記命令は、実行されると、前記システムに、自律車両を制御し環境内の第1の位置を横断させるステップと、前記自律車両のセンサを使用して、少なくとも前記環境のLIDARデータ又は画像データを、センサデータとして取り込むステップと、マップデータにアクセスすることに又は環境内の障害物を識別することに少なくとも部分的に基づいて、複数のオクルージョンフィールドを含むオクルージョングリッドを決定するステップであって、前記オクルージョングリッドのオクルージョンフィールドが前記環境の対応する領域のオクルージョン状態及び占有状態を示す、ステップと、オクルージョン領域として、及び前記センサデータに少なくとも部分的に基づいて、第1の時間において前記オクルージョングリッドの少なくとも第1の部分がオクルージョンであると決定するステップと、非オクルージョン領域として、及び前記センサデータに少なくとも部分的に基づいて、前記第1の時間において前記オクルージョングリッドの少なくとも第2の部分が非オクルージョンであると決定するステップと、前記第2の部分の範囲及び占有率に少なくとも部分的に基づいて、前記環境を通る軌道を安全に横断することに関連付けられた信頼レベルを決定するステップと、閾値レベル未満の前記信頼レベルに少なくとも部分的に基づいて、前記自律車両を制御し前記第1の位置に留まらせる、又は第2の位置まで横断させるステップと、第2の時間において前記センサデータに少なくとも部分的に基づいて、前記オクルージョングリッドの第3の部分が可視及び非占有であると決定するステップと、前記第2の時間において可視及び非占有である前記オクルージョングリッドの前記第3の部分に少なくとも部分的に基づいて、前記自律車両を制御するステップと、を含む操作を実行させる、システム。
【0151】
V:前記操作が、前記自律車両が他の通行車に道を譲る必要がある交差点に、前記自律車両が接近していると決定するステップ、前記障害物が動的オクルージョングリッドに関連付けられていると決定するステップ、前記オクルージョングリッド内を横断した動的障害物の予測軌道を決定するステップ、又は地形的オクルージョン領域に基づいて前記オクルージョングリッドを決定するステップの1つ以上をさらに備える段落Uのシステム。
【0152】
W:前記センサデータが前記LIDARデータを含み、前記センサがLIDARセンサであり、前記操作は前記LIDARデータの一部を光線放射して、前記オクルージョンフィールドの前記オクルージョン状態及び前記占有状態を決定するステップ、をさらに備える段落U又は段落Vに記載のシステム。
【0153】
X:前記センサデータが画像データであり、前記センサが画像センサであり、前記操作が、前記画像データの少なくとも一部に対して区分を実行して、前記環境内の運転可能路面を識別する区分された画像データを生成するステップと、前記オクルージョンフィールドを前記区分された画像データに投影するステップと、前記オクルージョンフィールドが前記運転可能路面に投影されていると決定するステップと、前記運転可能路面に投影されている前記オクルージョンフィールドに少なくとも部分的に基づいて、前記自律車両を制御し前記環境を横断させるステップと、をさらに備える段落Uから段落Wのいずれかに記載のシステム。
【0154】
Y:前記操作が、前記複数のオクルージョンフィールドの非オクルージョン及び非占有のオクルージョンフィールドの第1の数を決定するステップと、前記第1の数が前記環境の安全な横断に関連付けられたオクルージョンフィールドの閾値数未満であると決定するステップと、前記第1の数が前記閾値数未満であるということに少なくとも部分的に基づいて、前記自律車両を制御し前記第1の位置に留まらせる又は前記第2の位置まで横断させるステップと、をさらに備える段落Uから段落Xのいずれかに記載のシステム。
【0155】
Z:自律車両を制御し環境内の第1の位置まで横断させるステップと、マップデータへのアクセス又は環境内の障害物の識別に少なくとも部分的に基づいて、オクルージョングリッドを決定するステップと、オクルージョン領域として、第1の時間において前記オクルージョングリッドの少なくとも第1の部分がオクルージョンであると決定するステップと、非オクルージョン領域として、前記第1の時間において前記オクルージョングリッドの少なくとも第2の部分が可視であると決定するステップと、前記非オクルージョン領域の占有状態を決定するステップと、前記非オクルージョン領域の範囲及び前記非オクルージョン領域の前記占有状態に少なくとも部分的に基づいて、前記自律車両を制御し前記第1の位置に留まらせる又は第2の位置まで横断させるステップと、第2の時間において前記オクルージョングリッドの第3の部分が非オクルージョンである及び非占有であると決定するステップと、前記第2の時間において前記オクルージョングリッドの前記第3の部分が非オクルージョン及び非占有であることに少なくとも部分的に基づいて、前記自律車両を制御するステップと、を含む方法。
【0156】
AA:前記自律車両が環境内の交差点に接近していることを決定するステップであって、前記自律車両が前記交差点での通行権を欠いている、ステップをさらに備え、前記第1の位置が前記交差点に関連付けられたストップラインであり、前記第2の位置が前記ストップラインを少なくとも部分的に超える前記交差点内にあるチェックラインである、段落Zに記載の方法。
【0157】
AB:前記自律車両を制御し閾値速度未満の第1の速度で前記第1の位置から前記第2の位置まで横断させるステップと、前記第2の位置でのセンサデータを取り込むことを決定するステップと、前記センサデータに少なくとも部分的に基づいて、前記第2の時間において前記第3の部分が非オクルージョン及び非占有であると決定するステップと、前記第3の部分の範囲が閾値以上であると決定するステップと、前記自律車両を制御し前記速度閾値以上の第2の速度で前記第2の位置から前記交差点を横断させるステップと、をさらに備える段落AAの方法。
【0158】
AC:前記障害物が動的障害物であり、前記方法が、前記環境内の前記動的障害物を識別するステップと、前記オクルージョングリッドを前記動的障害物に関連付けるステップと、前記非オクルージョン領域の前記範囲及び前記非オクルージョン領域の前記占有状態に少なくとも部分的に基づいて、前記第1の時間において前記自律車両を制御し前記第1の位置に留まらせるステップと、前記第2の時間において前記オクルージョングリッドの前記第3の部分が非オクルージョン及び非占有であることに少なくとも部分的に基づいて、前記自律車両を制御するステップと、をさらに備える段落Zから段落ABのいずれかに記載の方法。
【0159】
AD:前記環境内の前記障害物を識別するステップと、前記オクルージョングリッドを前記障害物に関連付けるステップと、前記環境内の動的物体を識別するステップと、前記環境内の前記動的物体のモーションデータを取り込むステップと、前記動的物体が前記オクルージョン領域内を横断したと決定するステップと、前記オクルージョン領域内の前記動的物体の予測軌道を決定するステップと、前記動的物体の前記予測軌道に少なくとも部分的に基づいて、前記自律車両を制御するステップと、をさらに備える段落Zから段落ACのいずれかに記載の方法。
【0160】
AE:前記自律車両が地形的オクルージョン領域までの距離閾値内にあると決定するステップと、地形的オクルージョングリッドとして、前記地形的オクルージョン領域に関連付けられた前記マップデータに少なくとも部分的に基づいて前記オクルージョングリッドを決定するステップと、をさらに備える段落Zから段落ADのいずれかの方法。
【0161】
AF:前記自律車両上のLIDARセンサを使用してLIDARデータを取り込むステップと、前記LIDARデータの一部を光線放射して、オクルージョンフィールドのオクルージョン状態及び占有状態を決定し、前記オクルージョンフィールドが前記オクルージョングリッドの一部を表す、ステップと、をさらに備える段落Zから段落AEのいずれかに記載の方法。
【0162】
AG:前記自律車両上の画像センサを使用して、画像データを取り込むステップと、前記画像データの少なくとも一部に対して区分を実行して、前記環境内の運転可能路面を識別する区分された画像データを生成するステップと、オクルージョンフィールドを前記区分された画像データに投影するステップであって、前記オクルージョンフィールドが前記オクルージョングリッドの一部を表す、ステップと、前記オクルージョンフィールドが前記運転可能路面に投影されていると決定するステップと、前記運転可能路面に投影されている前記オクルージョンフィールドに少なくとも部分的に基づいて、前記自律車両を制御し前記環境を横断させるステップと、をさらに備える段落Zから段落AFのいずれかに記載の方法。
【0163】
AH:前記環境内を横断するための前記一部の第1の範囲、並びに非オクルージョン及び非占有である前記オクルージョングリッドの前記第3の部分の第2の範囲に少なくとも部分的に基づいて選択された速度に基づいて、前記自律車両を制御し前記環境の一部を横断させるステップをさらに備える段落Zから段落AGのいずれかに記載の方法。
【0164】
AI:前記オクルージョン領域に関連付けられた期間を決定するステップと、前記期間中に前記オクルージョン領域に進入した物体がないと決定するステップと、前記オクルージョン領域に関連付けられた制限速度に少なくとも部分的に基づいて、前記期間に少なくとも部分的に基づいて前記オクルージョン領域の占有率に関連付けられた信頼レベルを決定するステップと、をさらに備える段落Zから段落AHのいずれかに記載の方法。
【0165】
AJ:実行されると、1つ以上のプロセッサに、ロボットプラットフォームを制御し環境内の第1の位置まで横断させるステップと、マップに関する前記ロボットプラットフォームの位置を決定するステップであって、前記マップはマップデータを含む、ステップと、前記位置に関連付けられた前記マップデータへアクセスすること、又は前記ロボットプラットフォームに近接する環境内の障害物の特定することに少なくとも部分的に基づいて、オクルージョングリッドを決定するステップと、オクルージョン領域として、第1の時間において前記オクルージョングリッドの少なくとも第1の部分がオクルージョンであると決定するステップと、非オクルージョン領域として、前記第1の時間において前記オクルージョングリッドの少なくとも第2の部分が可視であると決定するステップと、前記非オクルージョン領域の占有状態を決定するステップと、前記非オクルージョン領域の範囲及び前記非オクルージョン領域の前記占有状態に少なくとも部分的に基づいて、前記ロボットプラットフォームを制御し前記第1の位置に留まらせる、又は第2の位置まで横断させるステップと、第2の時間において前記オクルージョングリッドの第3の部分が非オクルージョン及び非占有であると決定するステップと、前記第2の時間において前記第3の部分が非オクルージョン及び非占有であることに少なくとも部分的に基づいて、前記ロボットプラットフォームを制御するステップと、を含む操作を実行させる命令を格納した非一時的コンピュータ可読媒体。
【0166】
AK:前記操作が、前記ロボットプラットフォームが他の車両に譲る必要がある環境内の交差点に前記ロボットプラットフォームが接近していると決定するステップをさらに備え、前記第1の位置が前記交差点に関連付けられたストップラインであり、前記第2の位置が前記ストップラインを少なくとも部分的に超えた前記交差点内にあるチェックラインである、段落AJに記載の非一時的コンピュータ可読媒体。
【0167】
AL:前記操作が、前記ロボットプラットフォーム上のLIDARセンサを使用してLIDARデータを取り込むステップと、前記LIDARデータの一部を光線放射して、オクルージョンフィールドの占有率を決定するステップであって、前記オクルージョンフィールドが前記オクルージョングリッドの一部を表す、ステップと、前記占有率に少なくとも部分的に基づいて、前記オクルージョングリッドが可視及び非占有であると決定するステップと、をさらに備える段落AJ又は段落AKに記載の非一時的コンピュータ可読媒体。
【0168】
AM:前記操作が、前記ロボットプラットフォーム上の画像センサを使用して画像データを取り込むステップと、前記画像データの少なくとも一部に対して区分を実行して、前記環境内の運転可能路面を識別する区分された画像データを生成するステップと、オクルージョンフィールドを前記区分された画像データに投影するステップであって、前記オクルージョンフィールドは前記オクルージョングリッドの一部を表す、ステップと、前記オクルージョンフィールドが前記運転可能路面に投影されていると決定するステップと、前記運転可能路面に投影されている前記オクルージョンフィールドに少なくとも部分的に基づいて、前記ロボットプラットフォームを制御し前記環境を横断させるステップと、をさらに備える段落AJから段落ALのいずれかに記載の非一時的コンピュータ可読媒体。
【0169】
AN:前記操作が、前記オクルージョン領域に関連付けられた期間を決定するステップと、前記期間中に前記オクルージョン領域に進入した物体がないと決定するステップと、安全な軌道に関連付けられた信頼レベルを決定するステップと、をさらに備える段落AJから段落AMのいずれかに記載の非一時的コンピュータ可読媒体。
【0170】
上述の例示の発明内容は1つの特定の実装に関して説明しているが、この文書のコンテキストでは、例示の発明内容はまた、方法、デバイス、システム及び/又はコンピュータ可読媒体、及び/又はその他の実装を介して実装できることを理解されたい。
【0171】
[結論] 本明細書で説明する技術の1つ以上の例について説明したが、様々な変更、追加、置換、及びそれらの同等物が、本明細書で説明する技術の範囲内に含まれる。
【0172】
例示の説明では、本明細書の一部を形成する添付の図面を参照するが、これは例示として請求される主題の具体的な例を示す。他の例を使用でき、構造的変更などの変更又は代替を行うことできることを理解されたい。そのような例示、変更又は代替は、意図して請求される主題に関する範囲から必ずしも逸脱するものではない。本明細書のステップは特定の順序で提示できるが、場合によっては、説明したシステム及び方法の機能を変更することなく、特定の入力を異なる時間又は異なる順序で提供するように、順序を変更できる。開示された手順はまた異なる順序で実行できる。さらに、本明細書にある様々な計算は開示された順序で実行される必要はなく、計算の代替順序を使用する他の例を容易に実装できる。並べ替えに加えて、計算はまた、同じ結果となるサブ計算に分解できる。