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

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

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

<>
  • 特許-外観に基づく動きの予測 図1
  • 特許-外観に基づく動きの予測 図2
  • 特許-外観に基づく動きの予測 図3
  • 特許-外観に基づく動きの予測 図4
  • 特許-外観に基づく動きの予測 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-28
(45)【発行日】2024-04-05
(54)【発明の名称】外観に基づく動きの予測
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240329BHJP
   B60W 40/02 20060101ALI20240329BHJP
   B60W 60/00 20200101ALI20240329BHJP
   G08G 1/16 20060101ALI20240329BHJP
【FI】
G06T7/00 650B
B60W40/02
B60W60/00
G08G1/16 C
【請求項の数】 15
(21)【出願番号】P 2021549329
(86)(22)【出願日】2020-01-27
(65)【公表番号】
(43)【公表日】2022-04-14
(86)【国際出願番号】 US2020015186
(87)【国際公開番号】W WO2020171916
(87)【国際公開日】2020-08-27
【審査請求日】2023-01-19
(31)【優先権主張番号】16/282,201
(32)【優先日】2019-02-21
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】518156417
【氏名又は名称】ズークス インコーポレイテッド
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】ヴァシリー カラセフ
(72)【発明者】
【氏名】テンシア リー
(72)【発明者】
【氏名】ジェームズ ウィリアム ベイジー フィルビン
(72)【発明者】
【氏名】サラ タリク
(72)【発明者】
【氏名】カイ ジェンユー ワン
【審査官】真木 健彦
(56)【参考文献】
【文献】米国特許出願公開第2019/0049987(US,A1)
【文献】特開2018-140749(JP,A)
【文献】特開2018-055141(JP,A)
【文献】中坪 宏太,軌跡と姿勢からの歩行者の進路予測に関する検討,電気学会論文誌C ,日本,一般社団法人電気学会,2012年12月01日,Vol.132 No.12,P.1925-1926
【文献】Joko Hariyono,Centroid based Pose Ratio for Pedestrian Action Recognition,2016 IEEE 25th International Symposium on Industrial Electronics (ISIE),IEEE,2016年,P.895-900,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7745009
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
B60W 40/02
B60W 60/00
G08G 1/16
(57)【特許請求の範囲】
【請求項1】
システムであって、
1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサによって実行されると、前記システムに動作を実行させる命令を格納する非一時的コンピュータ可読媒体と、
を備え、
前記動作は、
第1の時間において自律車両の1つまたは複数のセンサーによりキャプチャされた第1のセンサーデータを受信することであって、前記第1のセンサーデータは第1の画像データを備えることと、
前記第1の画像データに少なくとも部分的に基づいて、前記自律車両の環境における姿勢を有する物体を検出することと、
前記第1のセンサーデータ、または前記物体の表現に関連付けられた第2の画像を備えた、第2の時間において前記1つまたは複数のセンサーによりキャプチャされた第2のセンサーデータの1つまたは複数に少なくとも部分的に基づいて、前記物体の測定された速さを決定することと、
機械学習モデルに前記第1の画像データを入力することと、
前記機械学習モデルから前記物体の予測された速さを受信することと、
前記物体の前記予測された速さと前記物体の測定された速さとの差を決定することと、
前記物体の前記予測された速さと前記物体の測定された速さとの差に基づいて、前記第1のセンサーデータ及び前記第2のセンサーデータのジッタまたは不確実性を検出することと、
前記ジッタまたは前記不確実性に基づいて、前記測定された速さの信頼レベルを調整することと、
訓練された機械学習モデルを取得するために、前記差を最小化するように前記機械学習モデルの1つまたは複数のパラメータを変更することと、
を備えたシステム。
【請求項2】
前記動作が、
前記自律車両の1つまたは複数のセンサーによってキャプチャされた追加のセンサーデータを受信することであって、前記追加のセンサーデータは第2の物体を描写する追加の画像データを備えることと、
前記訓練された機械学習モデルに前記追加の画像データを入力することと、
前記訓練された機械学習モデルから、前記追加の画像データに少なくとも部分的に基づいて、前記第2の物体の予測された速さを受信することと、
前記第2の物体の前記予測された速さに少なくとも部分的に基づいて、前記自律車両を制御することと、
をさらに備えた、請求項1に記載のシステム。
【請求項3】
前記動作が、
前記機械学習モデルから、前記物体の前記姿勢に少なくとも部分的に基づいて、前記物体の予測された軌道を受信することと、
前記第1のセンサーデータおよび前記第2のセンサーデータに少なくとも部分的に基づいて、前記第1の時間から前記第2の時間までの前記物体の測定された軌道を決定することと、
前記物体の前記予測された軌道と、前記物体の前記測定された軌道との差を決定することと、
前記訓練された機械学習モデルを取得するために、前記差を最小化するように前記機械学習モデルの1つまたは複数のパラメータを変更することと、
をさらに備えた、請求項1または2に記載のシステム。
【請求項4】
前記動作が、
前記自律車両の1つまたは複数のセンサーによってキャプチャされた第3のセンサーデータを受信することであって、前記第3のセンサーデータは前記第2の物体に関連付けられた第3の画像データを備えることと、
前記訓練された機械学習モデルに前記第3の画像データを入力することと、
前記訓練された機械学習モデルから、前記第3の画像データに少なくとも部分的に基づいて、前記第2の物体の予測された軌道を受信することと、
前記第2の物体の前記予測された軌道に少なくとも部分的に基づいて、前記自律車両を制御することと、
をさらに備えた、請求項2に記載のシステム。
【請求項5】
前記第1のセンサーデータを受信することは、過去のセンサーデータのデータストアから前記第1のセンサーデータを受信することを備え、
前記動作が、前記物体に関連付けられ、前記物体の速さ、軌道、または位置の1つまたは複数を示した過去の軌跡データを受信することをさらに備えた、請求項1乃至4のいずれか一項に記載のシステム。
【請求項6】
前記動作が、
前記自律車両の1つまたは複数のセンサーによってキャプチャされた前記追加のセンサーデータを受信することであって、前記追加のセンサーデータは、
前記第2の物体に関連付けられた前記追加の画像データと、
前記第2の物体の測定された動きを示す、1つまたは複数のLIDARデータまたはRADARデータと、
を備えることと、
前記追加の画像データに少なくとも部分的に基づいて、前記自律車両の前記環境における前記第2の物体の姿勢を検出することと、
前記第2の物体の前記姿勢に少なくとも部分的に基づいて、前記1つまたは複数の前記LIDARデータまたは前記RADARデータによって示される前記第2の物体の前記測定された動きが前記LIDARデータまたは前記RADARデータの測定誤差によるものであることを決定することと、
をさらに備えた、請求項2に記載のシステム。
【請求項7】
前記物体は歩行者を含む、請求項1乃至6のいずれか一項に記載のシステム。
【請求項8】
方法であって、
第1の時間において1つまたは複数のセンサーによってキャプチャされた第1のセンサーデータを受信することであって、前記第1のセンサーデータは第1の画像データを備えることと、
前記第1の画像データに少なくとも部分的に基づいて、前記1つまたは複数のセンサーの環境における物体を検出することと、
前記第1のセンサーデータに少なくとも部分的に基づいて、前記第1の時間における前記物体の測定された速さを決定することと、
機械学習モデルに前記第1の画像データを入力することと、
前記機械学習モデルから前記物体の予測された速さを受信することと、
前記物体の前記予測された速さと前記物体の測定された速さとの差を決定することと、
前記物体の前記予測された速さと前記物体の測定された速さとの差に基づいて、前記第1のセンサーデータ及び前記第2のセンサーデータのジッタまたは不確実性を検出することと、
前記ジッタまたは前記不確実性に基づいて、前記測定された速さの信頼レベルを調整することと、
訓練された機械学習モデルを取得するために、前記差を最小化するように前記機械学習モデルの1つまたは複数のパラメータを変更することと、
を備える方法。
【請求項9】
前記第1のセンサーデータは、過去のLIDARデータ、過去のRADARデータ、または過去の軌跡ログデータの少なくとも1つを備え、
前記過去の軌跡ログデータは、前記物体に関連付けられ、前記物体の速さ、ヨー角度、姿勢、範囲、または加速度の1つまたは複数を示す、請求項8に記載の方法。
【請求項10】
前記1つまたは複数のセンサーによってキャプチャされた第2のセンサーデータを受信することであって、前記第2のセンサーデータは第2の物体を描写した第2の画像データを備えることと、
前記訓練された機械学習モデルに前記第2の画像データを入力することと、
前記訓練された機械学習モデルから、前記第2の画像データに少なくとも部分的に基づいて、前記第2の物体の予測された速さを受信することと、
前記第2の物体の前記予測された速さに少なくとも部分的に基づいて、自律車両を制御することと、
をさらに備えた、請求項8または9に記載の方法。
【請求項11】
前記機械学習モデルから、前記物体の姿勢に少なくとも部分的に基づいて、前記物体の予測された軌道を受信することと、
第2の時間における前記環境中の前記物体に関連付けられた第2のセンサーデータを受信することと、
前記第1のセンサーデータおよび前記第2のセンサーデータに少なくとも部分的に基づいて、前記第1の時間から前記第2の時間までの前記物体の測定された軌道を決定することと、
前記物体の前記予測された軌道と、前記物体の前記測定された軌道との差を決定することと、
前記訓練された機械学習モデルを取得するために、前記差を最小化するように前記機械学習モデルの1つまたは複数のパラメータを変更することと、
をさらに備えた、請求項8乃至10のいずれか一項に記載の方法。
【請求項12】
前記1つまたは複数のセンサーによってキャプチャされた第3のセンサーデータを受信することであって、前記第3のセンサーデータは第2の物体に関連付けられた第3の画像データを備えることと、
前記訓練された機械学習モデルに前記第3の画像データを入力することと、
前記訓練された機械学習モデルから、前記第3の画像データに少なくとも部分的に基づいて、前記第2の物体の予測された軌道を受信することと、
前記第2の物体の前記予測された軌道に少なくとも部分的に基づいて、自律車両を制御することと、
をさらに備えた、請求項11に記載の方法。
【請求項13】
前記物体は歩行者を含む、請求項8乃至12のいずれか一項に記載の方法。
【請求項14】
前記1つまたは複数のセンサーによってキャプチャされた第2のセンサーデータを受信することであって、前記第2のセンサーデータは、
第2の物体に関連付けられた第2の画像データと、
前記第2の物体に関連付けられたことを示す1つまたは複数のLIDARデータまたはRADARデータと、
を備えることと、
前記1つまたは複数のLIDARデータまたはRADARデータに少なくとも部分的に基づいて、前記第2の物体の測定された動きを決定することと、
前記第2の画像データに少なくとも部分的に基づいて、前記1つまたは複数のセンサーの環境における前記第2の物体の姿勢を検出することと、
前記第2の物体の前記姿勢に少なくとも部分的に基づいて、前記1つまたは複数の前記LIDARデータまたは前記RADARデータによって示される前記第2の物体の前記測定された動きが前記LIDARデータまたは前記RADARデータの測定誤差によるものであることを決定することと、
をさらに備えた、請求項8乃至13のいずれか一項に記載の方法。
【請求項15】
実行されると、コンピューティングデバイスに請求項8乃至14のいずれか一項に記載の方法を実行させる命令を格納した1つまたは複数の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、外観に基づく動きの予測に関する。
【背景技術】
【0002】
本PCT国際出願は、2019年2月21日に出願された米国出願特許第16/282201号の優先権を主張するものであり、その内容は参照により本明細書に組み込まれる。
【0003】
自律車両用ナビゲーションシステムの比較的重要な部分は知覚システムであり、その知覚システムは自律車両に搭載されたセンサーからの様々なデータを利用する。知覚システムは、自律車両が環境内の安全な経路を計画することを可能にするよう、自律車両が環境内の物体を認識することを与える。自律車両の安全な動作は、知覚システムが物体の動きを検出、分類、予測する際に利用できる情報に、少なくとも部分的に依存する。したがって、そのような物体の検出、分類、および/または予測によって提供される不正確および/または不完全な情報は、自律車両が操作できる安全性を低下させ得る。この欠点は、歩行者のように比較的短い時間で軌道が変化する物体に対して顕著になり得る。
【先行技術文献】
【特許文献】
【0004】
【文献】米国特許出願第15/807521号明細書
【図面の簡単な説明】
【0005】
詳細な説明は、添付の図面を参照して説明される。図中で、符号の左端の数字は、その符号が最初に現れる図面を示している。異なる図で同じ符号を使用することは、類似または同一の構成要素または機能を示す。
【0006】
図1】本明細書で説明される、物体の画像データに基づいて物体の動きを予測するように訓練されたニューラルネットワークを有する車両を含む例示的な環境を示している。
図2】物体の姿勢情報および/または軌道情報を決定する例示的なプロセスを示す絵画的フロー図である。
図3】本明細書で説明される、機械学習モデルを訓練するためにラベル付き画像を生成して使用する例示的なプロセスを示すフロー図である。
図4】本明細書で説明される、歩行者の予測された速さと歩行者の測定された速さとの差に基づいて機械学習モデルを修正する例示的なプロセスを示すフロー図である。
図5】本明細書で説明される技術を実装するための例示的なシステムを示すブロック図である。
【発明を実施するための形態】
【0007】
本明細書で説明される技術は、1つまたは複数の画像を含む画像データに取り込まれた物体の外観を用いて、物体の軌道を決定および/または予測することに向けられている。予測された軌道は、自律車両によって操作およびナビゲーションのために用いられてもよい。いくつかの実装では、予測された軌道は、実際の軌道と比較されてもよく、そのような比較は、機械学習のための訓練データを生成するために用いられる。
【0008】
物体の非限定的なリストには、これらに限定はされないが、歩行者、動物、サイクリスト、トラック、オートバイ、他の車両などを含む環境内の障害物が含まれ得る。環境内のそのような物体は、参照フレームに対する物体全体の位置および/または方向を備えた「幾何学的姿勢」(本明細書では単に「姿勢」とも呼ばれることがある)を有する。いくつかの例では、姿勢は、物体(例えば、歩行者)の位置、物体の方向、または物体の相対的な付属品の位置を示し得る。幾何学的姿勢は、2次元(例えば、x-y座標系を使用)または3次元(例えば、x-y-z座標系または極座標系を使用)で記述されてもよく、物体の方向(例えば、ロール、ピッチ、および/またはヨー)を含んでもよい。歩行者や動物などのいくつかの物体は、本明細書で「外観姿勢」と呼ばれるもの有する。外観姿勢は、身体の一部(例えば、付属品、頭部、胴体、目、手、足など)の形状および/または位置を備える。本明細書では、「姿勢」という用語は、参照フレームに対する物体の「幾何学的姿勢」と、歩行者、動物、および身体の一部の形状および/または位置を変化させることができる他の物体の「外観姿勢」の両方を指す。いくつかの例では、参照フレームは、車両に対する物体の相対的な位置を記述する2次元または3次元の座標系またはマップを参照して記述される。しかしながら、他の例では、他の参照フレームが使用され得る。
【0009】
本明細書で説明される技術は、任意の数の物体の種類に適用され得るが、説明および例では、歩行者に焦点を当てている。本明細書で説明される技術は、歩行者(本明細書では「人々」または「人」とも呼ばれる)に対しては、比較的迅速に軌道を変更できるなどの特徴を有するため、とりわけ適切であり得る。また、歩行者の外観姿勢は、歩行者の現在の軌道(例えば、動きの状態)、および/または将来の軌道に関する手がかりを提供することができる。外観姿勢とは、画像でキャプチャされることのできる歩行者の特徴である。例えば、外観姿勢は、腕の振り、脚の構成、胴体の角度、視線の方向などを含み得る。例えば、歩道から出て道路を横断しようとする歩行者は、前傾姿勢、片足を前に出すなどの姿勢を有し得る。一方、立っている歩行者は、両足を比較的真っ直ぐに揃え、傾斜のない姿勢を有し得る。走っている歩行者の場合は、歩幅が長い、および/または腕が振られている、などを有し得る。姿勢とそれに関連付けられた軌道の詳細は、例えば、ニューラルネットワークなどの機械学習モデルによって学習される特徴であってもよい。
【0010】
予測された軌道および/または現在の軌道を決定するために使用され得る歩行者の姿勢は、自律車両(以下、「車両」という)を操作またはナビゲートするためのセンサーまたは検出器と組み合わせて使用されてもよい。例えば、車両に搭載されたセンサーシステムからの情報は、車両を取り巻く環境を監視する知覚システムに提供されてもよい。このような監視は定期的に実行され、更新されてもよい。更新の頻度または速さが制限されている場合(例えば、センサーまたは検出器のサンプルレートまたは速さが制限されているため、または計算上の考慮事項によって制限されているため)、周囲の環境のいくつかの側面は、更新の間に顕著に変えることができる。特に、歩行者はその軌道をすぐに変えることができる。姿勢は、比較的高速な更新を有するカメラで撮影された画像から決定されるため、姿勢は、周囲の環境を監視するための更新速度または頻度を効果的に高めるため、センサーシステムからのデータとともに使用されてよい。特定の例では、知覚システムが約100ミリ秒(ms)の監視の更新サイクル期間を有するのに対し、視覚システム(例えば、1つまたは複数のカメラを含む)は約50msの更新サイクル期間を有し得る。このような場合、物体(例えば、歩行者)の動きを検出するために、知覚システムの数回の更新が必要となり得る。したがって、100msごとに更新する知覚システムの場合、物体の動きを検出するのに200から300ms以上かかり得る。一方、本明細書で説明される技術によれば、単一の画像における歩行者の姿勢に基づいて現在の動きが検出され、歩行者の将来の動きが10から50ms程度の短時間で予測され得る。これは、車両が歩行者の行動に反応する速度を向上することができ、および/または車両が環境内の経路を計画する際の信頼性を向上し得る。他の例では、知覚システムと視覚システムの相対的な更新速度は、提供された例よりも大きくても小さくてもよい。
【0011】
非限定的な例として、本明細書で説明される技術は、自律車両のコンピューティングデバイスによって、少なくとも部分的に実行されてもよく、このコンピューティングデバイスは、センサーデータを受信し、環境内の1つまたは複数の物体を検出し、および/または、環境内の1つまたは複数の物体(例えば、歩行者)の属性または物体パラメータを決定してもよい。物体パラメータは、1つまたは複数の物体のそれぞれの速度、加速度、位置、分類、および/または範囲に加え、それに関連付けられた任意の不確実な情報を備え得る。自律車両によってキャプチャされたセンサーデータは、LIDAR(light detection and ranging)センサーデータ、RADAR(radio detection and ranging)センサーデータ、ソナー(sound navigation and ranging)センサーデータ、画像データ、time of flightデータなどを含み得る。場合によっては、センサーデータは、環境内の物体の種類(車両、歩行者、自転車、動物、駐車している車、木、建物など)を決定するように構成された知覚システムに提供され得る。さらに、知覚システムは、センサーデータに基づいて、環境内の物体についての動き情報を決定することができる。
【0012】
いくつかの例では、自律車両のコンピューティングデバイスは、走行可能なエリアを決定する際にどの物体を考慮すべきかを決定、走行可能なエリアの範囲を決定、軌道を決定、既存の軌道を修正、および/または走行可能なエリア内で自律車両をナビゲートするために、物体および/または物体の属性を利用することができる。いくつかの例では、走行可能なエリアおよび/または軌道を修正するかどうかは、予測された軌道の車両ダイナミクスに関連付けられた1つまたは複数のコストおよび/または制約を考慮することによって、少なくとも部分的に決定することができる。
【0013】
コンピューティングデバイスは、物体に対する車両の安全レベルおよび/またはオフセット距離を決定するために、物体に関する確率的な情報を使用してもよい。例えば、コンピューティングデバイスは、物体の軌道に関連する不確実性を考慮して、例えば、距離の決定に確率的フィルタリングを適用してもよい。例えば、不確実性は、測定値、例えば、センサーおよび/またはセンサーコンポーネントの較正および/または公差、感知された物体の動き、例えば、物体の将来の潜在的な動きまたはその動きを特徴付ける予測モデルに関連した不確実性などに関連付けられ得る。
【0014】
本明細書で説明される技術は、自律車両などの車両が、環境内の物体に追従または回避しながら環境内をナビゲートできるよう、センサーおよび知覚データを活用することを目的としている。例えば、1つまたは複数の軌道は、予測確率に基づいて生成されることが可能であり、そのような軌道は、自律車両の操作を制御するために、プランナーシステムに提供され得る。
【0015】
いくつかの例では、自律車両のコンピューティングデバイスの予測システムは、自律車両に近接する物体の1つまたは複数の予測軌道を生成するために使用されることが可能なデータを出力するように訓練された機械学習モデルを含むことができる。例えば、機械学習モデルは、将来の1つまたは複数の時間(例えば、1秒、2秒、3秒など)における物体(例えば、第三者の車両)に関連付けられた座標(例えば、x座標およびy座標)を出力することができる。いくつかの例では、機械学習モデルは、物体に関連付けられた座標と同様に、各座標に関連付けられた確率情報も出力することができる。しかしながら、他の機械学習モデルも考えられている。いくつかの実行例では、機械学習モデルは、予測確率に関連付けられたヒートマップを出力することができる。また、本明細書で説明されるいくつかの方法の結果は、ヒートマップを改善するために使用され得る。非限定的な例として、検出された歩行者の姿勢(外観および/または幾何学的)および/または歩行者の出力速度は、そのような追加の機械学習モデルに入力するための追加の特徴を提供してもよく、その結果は、時間内の歩行者の可能性の高い位置を決定するための追加のデータ(機械学習モデルの1つまたは複数によって出力されるようなヒートマップに表されてもよい)を備える。いくつかの例では、少なくとも1つの予測された軌道は、ヒートマップに少なくとも部分的に基づいて決定されることが可能である。さらに、画像データに基づく機械学習(例えば、軌道予測)モデルの出力は、例えば、「Probabilistic Heat maps for Agent Prediction」と題された、2017年12月11日に出願された特許文献1に記載されているようなヒートマップ生成モデルへの入力として使用されることが可能であり、その全体が参照により本明細書に組み込まれる。
【0016】
本明細書で説明される技術は、多くの方法で実装されることが可能である。例示的な実装は、以下に図面を参照して提供される。自律車両のコンテキストで説明されているが、本明細書で説明される方法、装置、およびシステムは、様々なシステム(例えば、センサーシステムまたはロボットプラットフォーム)に適用されることが可能であり、自律車両に限定されない。別の例では、本技術は、航空または航海のコンテキストで利用されることが可能である。さらに、本明細書で説明される技術は、実データ(例えば、センサーを用いてキャプチャされたもの、シミュレートされたデータ(例えば、シミュレータによって生成されたもの)、またはその2つの任意の組み合わせで用いられることが可能である。
【0017】
図1から図5は、本明細書で説明される例示的な技術に関連付けられた付加的な詳細を提供する。
【0018】
図1は、本明細書で説明されるように、物体の画像データに基づいて物体の動きを予測するように訓練されたニューラルネットワークを有する車両102を含んだ例示的な環境100を示している。図1では説明のために個別のネットワークとして描かれているが、このようなネットワークは、物体の予測された動きを出力するように訓練されたより大きなネットワークのサブネットワークを形成してもよいことが理解される。いくつかの例では、環境100は、図2から図7を参照して本明細書で説明した実施形態の1つまたは多様な特徴、コンポーネント、および/または機能を含み得る。
【0019】
いくつかの例では、車両102は、例えば、第1の場所から第2の場所に人および/または貨物を輸送するために、表面104(例えば、路面)を横切って移動するように構成されてもよい。説明のために、車両102は、米国道路交通安全局によって2013年に発行されたレベル5の分類に従って動作するように構成された自律車両であってもよく、この分類は、運転者(または乗員)がいつでも車両を制御することを期待されない状態で、移動全体についてすべての安全上重要な機能を実行することができる車両を説明する。その場合、車両はすべての駐車機能を含め、発進から停止までのすべての機能を制御するように構成されているため、無人であり得る。これは単なる例であり、本明細書で説明されているシステムおよび方法は、常に運転者が手動で制御する必要がある車両から、部分的に自律的に制御される車両までを含む、任意の車両および/またはロボットに組み込まれてよく、例えば、制限付きアクセスハイウェイで動作している間などの特定の運転条件では、運転者の注意や支援なしに自律的に制御されることができるが、例えば、都市部の市街地で動作している間などの他の運転条件では、運転者の注意および/または支援を必要とするような車両、または少なくともいくつかの駐車機能においては、自律的に制御されるような車両である。
【0020】
いくつかの例では、車両102は、4つの車輪と、各車輪のためのそれぞれのタイヤを有する自動車であってもよい。他の種類および構成の車両が考えられており、例えば、バン、スポーツユーティリティービークル、クロスオーバービークル、トラック、バス、農業用車両、および建設用車両などである。車両102は、1つまたは複数の内燃機関、1つまたは複数の電気モータ、水素動力、またはそれらの任意の組み合わせによって駆動されてもよい。さらに、例示的な車両102は4つの車輪を有し得るが、本明細書で説明されるシステムおよび方法は、より少ない数またはより多い数の車輪、タイヤ、および/または軌跡を有する車両に組み込まれてもよい。車両102は、4輪操舵を有していてもよく、例えば、第1の方向に走行するときに車両102の第1の端部が車両102の前端になるように、また、反対の第2の方向に走行するときに第1の端部が車両102の後端になるように、全ての方向に概ね等しい性能特性で動作してもよい。同様に、車両102の第2の端部は、第2の方向に走行するときに車両102の前端であってもよく、反対の第1の方向に走行するときに第2の端部が車両102の後端になってもよい。これらの例示的な特徴は、例えば、狭い空間や、駐車場や都市部などの混雑した環境において、より大きな操作性を容易にし得る。
【0021】
様々な実施形態によれば、車両102は、センサーシステム106を含んでよい。さらに、様々な例では、車両102は、車両コンピューティングシステム108を含んでよい。車両コンピューティングシステム108は、車両コンピューティングシステム108および/または車両102に様々な操作を行わせる1つまたは複数のコンポーネントを含んでもよい。様々な実施形態において、車両コンピューティングシステム108は、画像データ110(例えば、リアルタイムデータおよび/またはシステムのメモリデバイスに格納されたデータ)、他のセンサーデータ112(例えば、LIDARデータ、RADARデータ、time of flightデータ、ソナーデータ、位置データ、内部データ、および/またはこれらの任意の組み合わせ)、知覚システム114、および予測システム116を含んでもよい。
【0022】
画像データ110は、時間をかけて撮影された、画像シーケンス110Aおよび画像シーケンス110Bなどの1つまたは複数の画像を含んでもよい。画像シーケンス110Aおよび画像シーケンス110Bの各画像は、特定の外観姿勢(例えば、体の部分の形状および/または位置)を有する歩行者126を描いている。例えば、画像シーケンス110Aでは、歩行者126が、腕を横に振り、脚を交互に間隔をあけて中程度の歩幅で歩いている様子が描かれており、画像シーケンス110Bの各画像では、歩行者126が、腕を前後に振り、脚を交互に長い歩幅で走っている様子が描かれている。画像データ110は、物体(例えば、人)の姿勢の決定、および/または速さおよび/または軌道の予測が基づき得るような画像を含んでよい。以下に、より詳細に説明されるように、画像データ110は、予測システム116に入力されてもよい。上述したように、予測システムは、画像データに基づいて歩行者の速さおよび/または軌道を予測するように訓練された機械学習モデル(例えば、ニューラルネットワーク)を備えてもよい。本明細書で説明される例では、速さおよび/または軌道の予測について説明しているが、本明細書で説明される技術および予測システムは、付加的または代替的に、速度、ヨー、ヨーレート、ロール、ロールレート、ピッチ、ピッチレート、位置、加速度、または他の特徴などの、物体の現在の特徴または状態を推定し、および/または将来の特徴または状態を予測するために使用され得る。図1の例に戻ると、予測システム116は、画像に描写された歩行者の姿勢に少なくとも部分的に基づいて、画像に描写された歩行者の速さおよび/または軌道を予測してもよい。予測システム116は、例えば、120のように、単一の画像に基づいて、速さおよび/または軌道の1つまたは複数の推定などの、知覚システム114からの情報を使用してもよい。付加的または代替的に、歩行者の多様な画像がセンサーシステム106によってキャプチャされると、予測システム116は、122のように、例えば、複数の画像に基づいて、速さおよび/または軌道の1つまたは複数の精緻な推定などの、知覚システム114からの情報を使用してもよい。いくつかの例では、推定122の精度は、推定120よりも改善され得る。いくつかの実装では、車両コンピューティングシステム108は、時間の経過とともに移動する物体を示す知覚システム114からのセンサーデータに基づいて、実際に測定された速さおよび/または軌道の決定124を付加的に実行してもよい。センサーデータは、センサーシステム106の多様なセンサー(例えば、LIDARセンサー、RADARセンサー、time of flightセンサー、ソナーセンサー、グローバルポジショニングシステムセンサー、内部センサーなど)からのセンサーデータを含み得る。いくつかの例では、実際に測定された速さおよび/または軌道の決定124は、センサーシステム106のセンサーの多様な様式からの融合された、または他の方法で結合されたセンサーデータに基づいて、知覚システム114によって得られてもよい。センサーデータは、1つまたは複数のログに格納されてもよく、これは、多様な異なる物体の時間的な軌跡を含んでもよい。センサーデータは、付加的または代替的に、各物体の物体種類を識別する格納された分類データを含んでもよい。以下に詳細に説明されるように、このようなセンサーデータは、モデルを訓練するための基礎として、および/または、車載で実行されるときにモデルからの出力を改良するために使用されてもよい。
【0023】
いくつかの例では、車両102のセンサーシステム106(例えば、画像センサーまたはカメラを介して)は、シーンの1つまたは複数の画像(例えば、画像データ110)をキャプチャしてもよい。非限定的な例では、センサーシステム106のカメラは、歩行者126などの1つまたは複数の物体を含むシーンの画像をキャプチャしてもよい。図1に示されるように、歩行者126は、時間Tで第1の位置にあり、時間T+tで第2の位置にある(例えば、時間Tの後に時間tのスパンでの移動)。換言すれば、歩行者126は、この時間スパンの間に、第1の位置から第2の位置まで移動する。このような移動は、例えば、画像シーケンス110Aおよび110Bに対応してもよい。いくつかの実装では、車両コンピューティングシステム108は、時間Tにおいてセンサーシステム106によってキャプチャされた画像を含む画像データ110を使用して、時間Tにおける歩行者の姿勢を決定し、歩行者の動き(例えば、速さおよび/または軌道)を予測し得る。
【0024】
いくつかの実施形態によれば、以下に説明されるように、予測システム116は、1つまたは複数の知覚ログまたは他のソースからの過去のセンサーデータに基づいて生成された訓練データを用いて学習された機械学習モデルを含んでもよい。訓練データは、画像データ110に描写された物体の実際に測定された速さおよび軌道を示す他の過去のセンサーデータに基づいて、過去の画像データ110を関連付けることによって生成されてもよい。過去のセンサーデータは、過去のLIDARデータ、RADARデータ、画像データ、time of flightデータ、またはこれらまたは他のセンサー様式の組み合わせを含むか、或いは少なくとも部分的に基づいていてもよい。過去のセンサーデータは、車両の環境で感知された1つまたは複数の動的な物体の軌跡を記述する軌跡データを含んでもよい。例えば、特定の姿勢をとっている歩行者を撮影した画像は、画像が撮影された時点および/または画像が撮影された後の時点で、実際に測定された歩行者の速さと軌道をラベル付けされることができる(例えば、軌跡情報、RADARリターン、または画像内の歩行者に関連付けられた同様のものなどによって提供され得るように)。このラベル付けは、ニューラルネットワークなどの機械学習モデルの訓練に使用されることができる訓練データを生成するために、物体が写っている画像の一部または全部に対して実行されることができる。この訓練データに基づいて、機械学習モデルは、画像(例えば、画像データ110)に撮影された人の姿勢に基づいて、人の動き(例えば、速さおよび/または軌道)を検出および/または予測するように訓練され得る。
【0025】
いくつかの実施形態では、センサーシステム106は、light detection and ranging(LIDAR)センサー、radio detection and ranging(RADAR)センサー、超音波トランスデューサ、音波航法及び測距(ソナー)センサー、位置センサー(例えば、グローバルポジショニングシステム(GPS)、コンパスなど)、慣性センサー(例えば、慣性測定ユニット、加速度計、磁力計、ジャイロスコープなど)、カメラ(RGB、赤外線、強度、深度、time of flightなど)、ホイールエンコーダ、マイク、環境センサー(温度センサー、湿度センサー、光センサー、圧力センサーなど)などを含み得る。センサーシステム106は、センサーデータを生成することができ、これは車両102に関連付けられた車両コンピューティングシステム108によって利用されることができる。
【0026】
図2は、物体の姿勢情報を決定し、速さおよび/または軌道情報を予測する例示的なプロセス200を示す絵画的フロー図である。このプロセスは、例えば、図1の車両102の車両コンピューティングシステム108によって実行されるものとして説明されているが、請求項の主題はそのように限定されず、他のシステムおよび/またはデバイスによって実行されてもよい。202において、車両コンピューティングシステム108は、センサーシステム106によってキャプチャされた環境のセンサーデータ112を受信し得る。例えば、センサーデータ112は、画像データ、LIDARデータ、RADARデータ、time of flightデータなどを含み得る。環境は、センサーデータ112が測定値を含む多数の物体を含んでいてもよい。プロセス200の特定の例では、画像データは、車両が動作している通りを歩いている人である物体206の画像を含む画像フレーム204を備える。物体208は、通りの側に立っている別の人であり得る。物体210は、通りの側を歩くさらに別の人物であり得る。
【0027】
いくつかの例では、212において、車両コンピューティングシステム108は、画像データを知覚システムに入力してもよい。例えば、画像データ110は、図1を参照して上述した知覚システム114に提供されてもよい。214において、車両コンピューティングシステム108は、画像データに少なくとも部分的に基づいて、画像データ110に表された1つまたは複数の物体(例えば、図2では歩行者として図示)の姿勢を決定してもよい。上述したように、姿勢は、幾何学的姿勢(例えば、SE(3)座標で記述された位置と方向)だけでなく、外観姿勢(例えば、体の部分の形状および/または位置)を含んでもよい。図示された例では、画像データ110は、物体206の画像216、物体208の画像218、および物体210の画像220を含む。予測システム116は、物体206、208、および210のそれぞれについて、姿勢を決定し得る。
【0028】
228において、予測システム116は、姿勢に基づいて、物体206、208、および210の速度および/または軌道を予測してもよい。いくつかの例では、予測システム116の出力は、速度の大きさ(すなわち、速さ)および物体の移動角度を含んでもよい。いくつかの例では、予測システム116は、センサーデータ入力に基づいて、現在の状態および/または1つまたは複数の将来の状態について、姿勢、速さ、軌道、および/または他の特徴を含む属性を出力するように訓練されてもよい。いくつかの例では、予測システム116は付加的に、現在および/または予測された将来の姿勢、速さ、および/または軌道の不確実性または信頼性を含む属性を出力するように構成されてもよい。図示された例では、予測システム116は、属性222を画像216内の物体206と関連付け、属性224を画像218内の物体208と関連付け、属性226を画像220内の物体210と関連付けている。上述したように、属性222、224、226は、姿勢、速さ、軌道、速度、ヨー、ヨーレート、ロール、ロールレート、ピッチ、ピッチレート、位置、加速度、これらの任意の信頼性または不確実性、または他の(例えば、将来の1つまたは複数の時間ステップに対応する)特徴の現在および/または将来の予測を含んでもよい。さらに、214および228は、説明のために2つの異なる動作として示されているが、図はそのように限定することを意図していない。非限定的な例として、画像データ110は、予測システム(例えば、予測システム118)に直接入力されてもよく、そこで検出された各物体に対する姿勢、速度、または他の属性の1つまたは複数が、姿勢を決定する中間ステップを必要とせずに、このようなモデルから直接出力されてもよい。
【0029】
いくつかの例では、速度のビンまたは範囲(例えば、立っている、歩いている、走っているなど)に対応して、姿勢の1つまたは複数の予め決定されたサブ分類が確立されてもよい。その場合、予測システム116は、予め決定されたサブ分類のどれが適用されるかを決定し得、各物体のサブ分類に信頼度または裕度を割り当て得る。例えば、予測システム116は、画像216に示された歩行者206が走っていることに比較的高い信頼度を割り当て、歩行者206が歩いていることに比較的低い信頼度を割り当て、歩行者206が立ち止まっていることにさらに低い信頼度を割り当て得る。予測システム116は、画像220に示された歩行者208が静止しているという比較的高い信頼度、歩行者208が歩いているという比較的低い信頼度、および歩行者208が走っているというさらに低い信頼度を割り当て得る。予測システム116は、画像224に示された歩行者210が歩いているという比較的高い信頼度、歩行者208が立っているという比較的低い信頼度、または走っているという比較的低い信頼度を割り当て得る。このような出力は、例えば、予測システムがニューラルネットワークで構成されている場合には、予測システムにおけるソフトマックス層が出力するものであってもよい。
【0030】
232において、属性230は、センサーシステム106からのセンサーデータ112とともに、予測システム116への入力として提供されてもよい。属性230は、属性222、224、および/または226を備えてもよく、これらは、いくつかの例では、付記された画像データを生成するために、対応する画像データと関連付けられてもよい。そのような予測システムは、次々にそのような属性を使用して、(以下で詳細に説明されるように)自律車両のプランナーに通知してもよい。
【0031】
いくつかの実装では、車両コンピューティングシステム108は、予測システム116からの物体(例えば、歩行者)の姿勢または予測された軌道を、物体に関連付けられたセンサーデータと比較することによって、センサーデータのジッタまたは不確実性を検出してよい。ジッタは、例えば、センサーの測定誤差により、2つの連続する画像または他のセンサーデータに含まれる物体の外観上の動きとして生じ得る。センサーデータにおける外観上の動きは、物体の実際の動きおよび/またはジッタに起因し得る。予測システムの出力(例えば、姿勢、予測された速さ、予測された軌道など)は、車両コンピューティングシステム108がジッタと物体の真の動きとの間の曖昧さを解消することを与える。例えば、知覚システムのノイズは、あるノイズフロア以上の物体の速さを確実に決定する能力を提供しない可能性があり、そのようなノイズは、物体の周りをナビゲートする能力に影響を与え得る。しかしながら、予測システム116の出力は、予測データが物体の動きの状態(例えば、歩行または走行)、ゼロではない速さ、および/またはセンサーデータによって示される外観上の動きと一致する軌道を示している場合、センサーデータによって示される物体の外観上の動きが物体の実際の動きに起因することを示してもよい。一方、予測システム116の出力は、予測データが物体の動いていない状態(例えば、静止)、速さがゼロ、および/またはセンサーデータが示す外観上の動きと矛盾する軌道を示す場合、センサーデータが示す物体の外観上の動きがジッタまたは測定誤差に起因することを示してもよい。ジッタの検出(例えば、曖昧さの解消を介して)に加えて、いくつかの例では、車両コンピューティングシステム108は、例えば、物体(例えば、人)の姿勢に基づいて知覚出力に関連付けられた信頼レベルを調整することによって、ジッタを緩和または補償してもよい。例えば、車両の知覚システム114が、センサーデータ(例えば、画像データ、LIDARデータなど)に基づいて、歩行者が位置を変えたことを示すが、予測システム116の出力は歩行者の姿勢が立っている状態に対応することを高い信頼度で示し、且つ/或いは、速度がゼロであることを予測する場合、車両コンピューティングシステム108は、センサーデータがジッタまたは測定誤差を含むと決定し、歩行者が実際に動いたという信頼度をダウンウェイトしてもよい。
【0032】
図3は、いくつかの実施形態による、機械学習モデルを訓練するためにラベル付き画像を生成および使用するための例示的なプロセス300を示すフロー図である。プロセス300は、(訓練)データ生成部302と訓練部304とに分けられ得る。例えば、データ生成部302は、機械学習モデルによる後の使用のための訓練データを生成することを含んでもよく、訓練部304は、画像内の物体の姿勢または他の状態に基づいて物体の軌道を予測するようにモデルを訓練するために、訓練データを機械学習モデルに提供することを含んでもよい。データ生成部302は、予め記録された訓練データの比較的大きなバッチを、手動でラベル付けすることなく、実質的に自動的に生成してもよい。いくつかの実装では、データ生成部302および訓練部304は、コンピューティングデバイス540などのコンピューティングデバイスによってオフラインで実行されてもよく、一方で、訓練された機械学習モデルによって実行される後の予測処理は、車両に搭載されたコンピューティングシステム上で動作してもよい。他の実装では、データ生成部302および/または訓練部304の任意の組み合わせは、ネットワークのコンピューティングシステムによって、および/または車両に搭載されたコンピューティングシステムによって(例えば、充電中または利用率の低い期間中に)実行されてもよい。
【0033】
306において、コンピューティングシステムは、格納された知覚データ(例えば、過去のデータまたは予め記録されたデータ)から、物体の種類として分類された物体に対応する軌跡を決定するか、またはその他の方法で受信してよい。例えば、格納された知覚データは、動作中にセンサーデータまたは軌跡データをキャプチャして格納した、車両のコンピューティングシステム(例えば、コンピューティングシステム108および/またはネットワークのコンピューティングシステム)から得られたデータを含んでもよい。格納された知覚データは、いくつかの例では、車両によってキャプチャされた、融合された知覚データを含んでもよい。融合された知覚データは、画像センサー、LIDARセンサー、RADARセンサー、time of flightセンサー、ソナーセンサー、グローバルポジショニングシステムセンサー、内部センサー、および/またはこれらの任意の組み合わせなど、車両上の多様なセンサーシステムからのセンサーデータの融合または他の組み合わせを含んでもよい。格納された知覚データは、付加的または代替的に、センサーデータに表された物体(例えば、歩行者、車両、建物、路面など)のセマンティック分類を含む分類データを含んでもよい。格納された知覚データは、付加的または代替的に、環境を通過する動的な物体として分類された物体の動きに対応する軌跡データ(位置、方向、センサーの特徴など)を含んでもよい。軌跡データは、多様な異なる物体の時間に関する多様な軌跡を含んでいてもよい。この軌跡データは、物体が静止している(例えば、立ち止まっている)時、または動いている(例えば、歩いている、走っているなど)時に、特定の種類の物体(例えば、歩行者、動物など)の画像を識別するためにマイニングされることができる。この例では、コンピューティングデバイスは、歩行者に対応する軌跡を決定する。
【0034】
308で、コンピューティングシステムは、物体(例えば、歩行者)の動きの状態に対応する軌跡の部分を識別してもよい。例えば、コンピューティングデバイスは、物体の動き(例えば、位置および/または方向の変化)に対応し得る軌跡の部分を識別してもよい。310において、コンピューティングシステムは、動いている物体(例えば、歩行者)の画像を識別してもよい。例えば、画像は、車両102のセンサーシステム106の一部であるカメラによって撮影されたものであってもよい。画像は、カメラまたは他の画像キャプチャデバイスによってキャプチャされた画像フレームのすべてまたは一部(例えば、クロップされた領域)を備えてもよい。
【0035】
312において、コンピューティングシステムは、画像をラベル付け(またはその他の方法で関連付け)してラベル付き画像を生成してもよく、ラベル付き画像は、画像が動きの状態の物体を描写していることを示すためにラベル付けされる。このようなラベルは、画像内の物体の1つまたは複数の測定パラメータまたは特性を含んでもよい。例えば、コンピューティングシステムは、知覚データに基づいて、画像が撮影されたときに、画像内の物体が実際に動いていたかどうかを決定してもよい。そのような場合、コンピューティングシステムは、画像が撮影されたとき、および/または画像が撮影されたときより後の1つまたは複数の時間における物体の動きの状態(例えば、歩く、走る、立ち止まるなど)、速さ、軌道、および/またはその他の特性を示すように、画像にラベルを付けるか、またはその他の方法で関連付け得る。このようにして、訓練データは、人手とコンピューティングの労力の観点から、比較的簡単かつ安価に生成され得る。このような訓練データは、物体(例えば、歩行者、動物など)の動きの状態および/または画像フレーム内の特定の姿勢に関連付けられた速さに対応する画像を検出する機械学習モデルを訓練するために使用されてもよい。動作308、310、312は、軌跡の一部または全部、および/または物体の一部または全部の動き状態に対して繰り返されてもよい。
【0036】
314において、コンピューティングシステムは、1つまたは複数の他の軌跡が、他の物体(例えば、他の歩行者)および/または他の物体の種類(例えば、歩行者以外の物体)について決定されるべきかどうかを決定してもよい。そのような場合、プロセス300は306に戻り、1つまたは複数の他の軌跡に基づいて、306、308、310、および312を含むプロセス300の部分を繰り返す。そうでない場合、プロセス300は316に進み、コンピューティングシステムは、ラベル付けされた画像を使用して、画像データに描写された物体の現在または将来の速さ、軌道、および/または他の特性を予測するために、MLモデルを訓練し得る。当然ながら、図3では、説明のために各物体に対して連続的に実行されるように図示されているが、図はそのように限定することを意図していない。少なくともいくつかの例では、画像(または画像のバッチ)に表されたすべての物体は、本明細書のステップに従って実質的に同時に処理されてもよい(例えば、General Purpose Graphics Processing Unit(GPGPU)上の並列処理を使用して、そのようなステップを実行することによって)。
【0037】
図4は、本明細書で説明される、歩行者の予測された速度と歩行者の測定された速度との差に基づいて機械学習モデルを修正するための例示的なプロセス400を示すフロー図である。いくつかの例では、プロセス400は、図1から図3および図5を参照して、本明細書で説明される実施形態の1つまたは複数の特徴、コンポーネント、および/または機能を含んでもよい。例えば、プロセス400は、後述するコンピューティングデバイス540などのコンピューティングデバイス、または車両コンピューティングシステム108によってオフラインで実行されてもよい。他の実施形態では、プロセス400の全てまたは一部は、コンピューティングシステム108などの車両に搭載されたコンピューティングシステムによって実行されてもよい(例えば、充電中または利用率の低い期間)。
【0038】
402において、コンピューティングシステムは、1つまたは複数のセンサーによってキャプチャされた過去のセンサーデータを受信してもよく、そのセンサーデータは画像データを備える。少なくともいくつかの例では、そのようなセンサーデータは、1つまたは複数のセンサーによって以前にキャプチャされた過去のセンサーデータであってもよい。例えば、過去のセンサーデータは、図1に図示された画像データ110のような、動作中の車両によって以前にキャプチャされ、車両または別のコンピューティングデバイス(例えば、コンピューティングデバイス540)の1つまたは複数のデータストアに知覚データとして格納された画像データを含んでもよい。404において、コンピューティングシステムは、画像データに少なくとも部分的に基づいて、1つまたは複数のセンサーの環境内の歩行者を検出してもよい。406において、コンピューティングシステムは、過去のセンサーデータに少なくとも部分的に基づいて、画像データがキャプチャされた時点および/または画像データがキャプチャされた後の1つまたは複数の時間における歩行者の測定された速さを決定してもよい。少なくともいくつかの例では、そのような測定された速さは、データ関連付け技術を使用して以前に決定されたように、物体に関連付けられた軌跡情報で提供されてもよい。付加的にまたは代替的に、いくつかのセンサー様式は、そのような速度情報(レーダーリターンなど)を提供してもよく、或いは、そのようなデータの後のタイムステップに少なくとも部分的に基づいて決定してもよい。いくつかの例では、コンピューティングシステムは、付加的または代替的に、過去のセンサーデータに少なくとも部分的に基づいて、画像データが撮影された時点および/または画像データが撮影された後の1つまたは複数の時間における歩行者の1つまたは複数の他の測定された特性(例えば、軌道、速度、ヨー、ヨーレート、ロール、ロールレート、ピッチ、ピッチレート、位置、加速度など)を決定してもよい。少なくともいくつかの例では、これらの付加的な属性は、(例えば、車両上の1つまたは複数のシステムによって)以前に計算され、物体軌跡に関連付けられ得る。少なくとも1つまたは複数の例では、このような物体軌跡は、別の機械学習モデルによって決定されるか、または別の方法でラベル付けされたような(例えば、幾何学的姿勢に加えて)外観姿勢も含んでもよい。そのような測定された、または別の方法で決定された値は、一般に「グランドトゥルース」データと呼ばれることがある。
【0039】
408で、コンピューティングシステムは、機械学習モデルに、画像データを入力してもよい。410において、コンピューティングシステムは、追加の画像があるかどうかを決定してもよい。ある場合、プロセス400は402に戻り、機械学習モデルに入力する追加の画像を取得してもよい。そうでない場合、プロセス400は412に進み、コンピューティングシステムは、機械学習モデルから、歩行者の予測された速さを受信してもよい。当然ながら、このような描写は、それほど限定的であることを意味しない。少なくともいくつかの例では、センサーデータおよび/または関連付けられた軌跡(または属性)情報のバッチが、実質的に同時に(例えば、並行して)そのような機械学習モデルに提供されてもよい。いくつかの例では、機械学習モデルは、付加的または代替的に、歩行者の1つまたは複数の他の特性(例えば、軌道、速度、ヨー、ヨーレート、ロール、ロールレート、ピッチ、ピッチレート、位置、加速度、外観姿勢など)の予測を出力してもよい。414において、コンピューティングシステムは、歩行者の予測された速度(およびその他の予測された特性)と、歩行者の測定された速さ(およびその他の測定された特性)「グランドトゥルース」との間の差を決定してもよい。416において、コンピューティングシステムは、訓練された機械学習モデルを取得するために、差を最小化するように機械学習モデルの1つまたは複数のパラメータを変更し得る。差を最小化するように機械学習モデルの1つまたは複数のパラメータを変更することにより、機械学習モデルは、物体を描写する画像(例えば、単一の画像または複数の画像)に基づいて、歩行者などの物体の速さ、軌道、および/または他の特性を正確に予測するように、時間をかけて「学習」する。
【0040】
図5は、本開示の実施形態に従って、本明細書で説明される技術を実施するための例示的なシステム500のブロック図である。いくつかの例では、システム500は、図1から図4を参照して本明細書で説明される実施形態の1つまたは複数の特徴、コンポーネント、および/または機能を含むことができる。
【0041】
いくつかの実施形態では、システム500は、車両502(例えば、図1を参照して本明細書で説明される車両102)を含み得る。車両502は、車両コンピューティングデバイス504、1つまたは複数のセンサーシステム506、1つまたは複数のエミッタ508、1つまたは複数の通信接続部510、少なくとも1つの直接接続部512、および1つまたは複数の駆動システム514を含み得る。
【0042】
車両コンピューティングデバイス504は、1つまたは複数のプロセッサ516と、1つまたは複数のプロセッサ516と通信可能に結合されたメモリ518とを含むことができる。図示された例では、車両502は自律車両であるが、車両502は、他の任意の種類の車両、または図5に図示されているようなコンポーネントを有する他のシステム(例えば、ロボットシステム、カメラ対応スマートフォンなど)であり得る。図示された例では、車両コンピューティングデバイス504のメモリ518は、ローカライゼーションコンポーネント520、知覚システム522(例えば、知覚システム114)、計画コンポーネント524、1つまたは複数のシステムコントローラ526、マップコンポーネント528、予測システム530(例えば、予測システム116)、および/またはセンサーデータ532(例えば、センサーデータ112)を格納する。図5では、説明のためにメモリ518に存在するものとして描かれているが、ローカライゼーションコンポーネント520、知覚システム522、計画コンポーネント524、1つまたは複数のシステムコントローラ526、予測システム530、および/またはセンサーデータ532は、付加的または代替的に、車両502にアクセス可能である(例えば、車両502から離れたメモリに格納されているか、またはそうでなければアクセス可能である)ことが考えられている。いくつかの例では、車両コンピューティングデバイス504は、図1の車両コンピューティングシステム108に対応することができる。
【0043】
少なくとも1つの例では、ローカライゼーションコンポーネント520は、センサーシステム506からデータを受信して、車両502の位置および/または方向(例えば、x、y、z位置、ロール、ピッチ、またはヨーの1つまたは複数)を決定する機能を含むことができる。例えば、ローカライゼーションコンポーネント520は、環境のマップを含み、および/または要求/受信することができ、マップ内の自律車両の位置および/または方向を連続的に決定することができる。いくつかの例では、ローカライゼーションコンポーネント520は、SLAM(ローカライゼーションとマッピングの同時実行)、CLAMS(キャリブレーション、ローカライゼーションとマッピングの同時実行)、相対SLAM、バンドル調整、非線形最小二乗最適化などを利用して、画像データ、LIDARデータ、RADARデータ、IMUデータ、GPSデータ、ホイールエンコーダデータなどを受信し、自律車両の位置を正確に決定することができる。いくつかの例では、ローカライゼーションコンポーネント520は、本明細書で説明されるように、軌道を生成するために、および/またはオクルージョングリッドを含むマップデータをメモリから取得することを決定するために、自律車両の初期位置を決定するために、車両502の様々なコンポーネントにデータを提供することができる。
【0044】
いくつかの例では、知覚システム522は、物体軌跡、検出、セグメント化、および/または分類を実行する機能を含むことができる(例えば、本明細書で説明される技術に基づく)。いくつかの例では、知覚システム522は、車両502に近接しているエンティティの存在を示す処理済みセンサーデータ、および/またはエンティティの種類(例えば、自動車、歩行者、自転車、動物、建物、木、路面、縁石、歩道、不明など)としての分類を提供することができる。付加的および/または代替的な例では、知覚システム522は、検出されたエンティティ(例えば、追跡された物体)および/またはエンティティが配置されている環境に関連付けられた1つまたは複数の特性を示す処理済みセンサーデータを提供することができる。いくつかの例では、エンティティに関連付けられた特性は、x位置(グローバルおよび/またはローカルの位置)、y位置(グローバルおよび/またはローカルの位置)、z位置(グローバルおよび/またはローカルの位置)、方向(例えば、ロール、ピッチ、ヨー)、エンティティの種類(例えば、分類)、エンティティの速度、エンティティの加速度、エンティティの範囲(大きさ)などを含むことができるが、これらに限定はされない。環境に関連付けられた特性は、環境内の別のエンティティの存在、環境内の別のエンティティの状態、時間帯、曜日、季節、天候、暗さ/明るさの表示などが含むことができるが、これらに限定はされない。
【0045】
通常、計画コンポーネント524は、環境を横切るために車両502が従うべき経路を決定することができる。例えば、計画コンポーネント524は、様々な経路および軌道、および様々なレベルの詳細を決定することができる。例えば、計画コンポーネント524は、第1の場所(例えば、現在の場所)から第2の場所(例えば、目標の場所)まで移動する経路を決定することができる。この議論の目的のために、経路は、2つの場所の間を移動するためのウェイポイントのシーケンスであることができる。非限定的な例として、ウェイポイントは、街路、交差点、グローバルポジショニングシステム(GPS)座標などを含む。さらに、計画コンポーネント524は、第1の場所から第2の場所への経路の少なくとも一部に沿って自律車両を誘導するための命令を生成することができる。少なくとも1つの例では、計画コンポーネント524は、自律車両を、ウェイポイントのシーケンスにおける第1のウェイポイントから、ウェイポイントのシーケンスにおける第2のウェイポイントへと案内する方法を決定することができる。いくつかの例では、命令は、軌道、または軌道の一部分とすることができる。いくつかの例では、多様な軌道は、Receding Horizon技術に従って実質的に同時に(例えば、技術的な許容範囲内で)生成することができ、複数の軌道の1つは、車両502がナビゲートするために選択される。
【0046】
少なくとも1つの例では、車両コンピューティングデバイス504は、1つまたは複数のシステムコントローラ526を含むことができ、これらのシステムコントローラ526は、車両502の操舵、推進、ブレーキ、安全、エミッタ、通信、および他のシステムを制御するように構成されることができる。これらのシステムコントローラ526は、駆動システム514および/または車両502の他のコンポーネントの対応するシステムと通信および/または制御することができる。
【0047】
メモリ518は、環境内をナビゲートするために車両502によって使用することができる1つまたは複数のマップ(図示せず)を維持および/または更新するために、マップコンポーネント528をさらに含むことができる。この議論の目的のために、マップは、2次元、3次元、またはN次元でモデル化された任意の数のデータ構造であって、トポロジー(交差点など)、街路、山脈、道路、地形、および一般的な環境などの環境に関する情報を提供することを有するものであることができる。いくつかの例では、マップは、以下を含むことができるが、これらに限定はされない:テクスチャ情報(例えば、色情報(例えば、RGB色情報、Lab色情報、HSV/HSL色情報)など)、強度情報(例えば、LIDAR情報、RADAR情報など)、空間情報(例えば、メッシュに投影された画像データ、個々の「サーフェル」(例えば、個々の色および/または強度に関連付けられたポリゴン))、反射率情報(例えば、鏡面反射率情報、再帰反射率情報、BRDF情報、BSSRDF情報など)など。一例では、マップは、環境の3次元メッシュを含むことができる。いくつかの例では、マップは、マップの個々のタイルが環境の離散的な部分を表し、必要に応じてワーキングメモリにロードされることができるように、タイル形式で格納されることができる。少なくとも1つの例では、1つまたは複数のマップは、少なくとも1つのマップ(例えば、画像および/またはメッシュ)を含むことができる。いくつかの例では、車両502はマップに少なくとも部分的に基づいて制御されることができる。すなわち、マップは、ローカライゼーションコンポーネント520、知覚システム522、および/または計画コンポーネント524と関連付けられて使用され、車両502の位置を決定し、環境内の物体を識別し、および/または環境内をナビゲートするための経路および/または軌道を生成することができる。
【0048】
いくつかの例では、1つまたは複数のマップは、ネットワーク542を介してアクセス可能なリモートコンピューティングデバイス(コンピューティングデバイス540など)に格納されることができる。いくつかの例では、複数のマップは、例えば、特性(例えば、エンティティの種類、時間帯、曜日、1年の季節など)に基づいて格納することができる。多様なマップを格納することは、同様のメモリ要件を有し得るが、マップ内のデータにアクセスできる速さを向上させることができる。
【0049】
予測システム530は、物体の1つまたは複数の画像に基づいて、姿勢、速さ、軌道、速度、ヨー、ヨーレート、ロール、ロールレート、ピッチ、ピッチレート、位置、加速度、または他の特性などの、物体(例えば、歩行者、動物など)の現在、および/または将来の特性または状態を推定するように構成される。例えば、予測システム530は、センサーシステム506のカメラまたは他の画像センサーによってキャプチャされたセンサーデータ532から画像データを受信し、物体のそのような特性の1つまたは複数を予測してもよい。予測は、物体を描写する単一の画像または複数の画像(例えば、複数の連続した画像フレーム)に基づいて行われることができる。
【0050】
いくつかの例では、本明細書で論じられるコンポーネントの一部または全部の側面は、任意のモデル、アルゴリズム、および/または機械学習アルゴリズムを含むことができる。例えば、いくつかの例では、知覚システム522、計画コンポーネント524、および予測システム530などのメモリ518(および後述のメモリ546)内のコンポーネントは、ニューラルネットワークとして実装されることができる。例えば、予測システム530は、画像データに基づいて歩行者(または他の物体)の速さ、軌道、および/または他の特性を予測するように訓練された機械学習モデル(例えば、ニューラルネットワーク)を備えてよい。
【0051】
本明細書で説明されているように、例示的なニューラルネットワークは、入力データを一連の接続された層に通して出力を生成する、生物学的に触発されたアルゴリズムである。ニューラルネットワークの各層は、別のニューラルネットワークを備えることもでき、任意の数の層(畳み込みであるか否かを問わない)を備えることもできる。本開示のコンテキストで理解できるように、ニューラルネットワークは、機械学習を利用することができ、これは、学習されたパラメータに基づいて出力が生成されるようなアルゴリズムの広範なクラスを指すことができる。
【0052】
ニューラルネットワークのコンテキストで論じられているが、本開示と一致する任意の種類の機械学習が使用されることができる。例えば、機械学習アルゴリズムは、回帰アルゴリズム(例えば、通常の最小二乗回帰(OLSR)、線形回帰、ロジスティック回帰、ステップワイズ回帰、多変量適応回帰スプライン(MARS)、局所的に重み付けされた散布図平滑化(LOESS))、インスタンスベースのアルゴリズム(例えば、リッジ回帰、最小絶対縮退選択演算子(LASSO)、弾性ネット、最小角回帰(LARS))、決定木アルゴリズム(例えば、分類回帰木(CART)、反復二分木3(ID3)、カイ二乗自動相互作用検出(CHAID)、決定スタンプ、条件付き決定木)、ベイジアンアルゴリズム(例えば、ベイジアンアルゴリズム(例えば、ナイーブベイズ、ガウスナイーブベイズ、多項ナイーブベイズ、平均一従属性分類器(AODE)、ベイジアンビリーフネットワーク(BNN)、ベイジアンネットワーク)、クラスタリングアルゴリズム(例えば、k-means、k-medians、期待値最大化(EM)、階層型クラスタリング)、相関ルール学習アルゴリズム(例えば、パーセプトロン、バックプロパゲーション、ホップフィールドネットワーク、放射状基底関数ネットワーク(RBFN)など)、深層学習アルゴリズム(ディープボルツマンマシン(DBM)、ディープビリーフネットワーク(DBN)、畳み込みニューラルネットワーク(CNN)、スタックドオートエンコーダーなど)、次元削減アルゴリズム(例えば、主成分分析(PCA)、主成分回帰(PCR)、部分最小二乗回帰(PLSR)、サモンマッピング、多次元尺度法(MDS)、プロジェクションパースート、線形判別分析(LDA)、混合判別分析(MDA)、二次判別分析(QDA)、フレキシブル判別分析(FDA)など)、アンサンブルアルゴリズム(例えば、Boosting, Bootstrapped Aggregation (Bagging), AdaBoost, Stacked Generalization (blending), Gradient Boosting Machines (GBM), Gradient Boosted Regression Trees (GBRT), Random Forest), SVM(Support Vector Machine), 教師付き学習, 教師なし学習, 半教師付き学習などを含むことができるが、これに限定はされない。
【0053】
アーキテクチャの追加の例には、ResNet50、ResNet101、VGG、DenseNet、PointNetなどのニューラルネットワークが含まれる。
【0054】
少なくとも1つの例では、センサーシステム506は、LIDARセンサー、RADARセンサー、超音波トランスデューサ、ソナーセンサー、位置センサー(例えば、GPS、コンパスなど)、慣性センサー(例えば、慣性計測ユニット(IMU)、加速度計、磁力計、ジャイロスコープなど)、カメラ(例えば、RGB、赤外線、強度、深度、time of flightなど)、マイク、ホイールエンコーダ、環境センサー(温度センサー、湿度センサー、光センサー、圧力センサーなど)、1つまたは複数のtime of flight(ToF)センサーなどを含むことができる。センサーシステム506は、これらの、または他の種類のセンサーのそれぞれの多様な例を含むことができる。例えば、LIDARセンサーは、車両502の角部、前部、後部、側面、および/または上部に配置された個々のLIDARセンサーを含むことができる。別の例として、カメラセンサーは、車両502の外部および/または内部の様々な場所に配置された多様なカメラを含むことができる。センサーシステム506は、車両コンピューティングデバイス504に入力を提供することができる。付加的にまたは代替的に、センサーシステム506は、1つまたは複数のネットワーク542を介して、特定の頻度で、予め決められた期間の経過後に、ほぼリアルタイムで、1つまたは複数のコンピューティングデバイスにセンサーデータを送信することができる。いくつかの例では、センサーシステム506は、図1のセンサーシステム106に対応することができる。
【0055】
車両502は、上述したように、光および/または音を放出するための1つまたは複数のエミッタ508を含むこともできる。この例のエミッタ508は、車両502の乗客と通信するための内部音声および映像エミッタを含む。限定ではなく例として、内部エミッタは、スピーカ、照明、サイン、ディスプレイスクリーン、タッチスクリーン、触覚エミッタ(例えば、振動および/またはフォースフィードバック)、機械的アクチュエータ(例えば、シートベルトテンショナ、シートポジショナ、ヘッドレストポジショナなど)などを含むことができる。本例におけるエミッタ508は、外部エミッタも含む。限定はされないが、本例の外部エミッタは、進行方向または車両動作の他の指示器を知らせるための照明(例えば、方向指示器の照明、標識、ライトアレイなど)、および歩行者または他の近くの車両と聴覚的に通信するための1つまたは複数の音声エミッタ(例えば、スピーカ、スピーカアレイ、ホーンなど)を含み、そのうちの1つまたは複数は、音響ビームステアリング技術を備える。
【0056】
車両502は、車両502と1つまたは複数の他のローカルまたはリモートコンピューティングデバイスとの間の通信を有する1つまたは複数の通信接続部510も含むことができる。例えば、通信接続部510は、車両502および/または駆動システム514上の他のローカルコンピューティングデバイスとの通信を容易にすることができる。また、通信接続部510は、車両が他の近くのコンピューティングデバイス(例えば、他の近くの車両、交通信号など)と通信することを与えることができる。通信接続部510は、また、車両502がリモート遠隔操作コンピューティングデバイスまたは他のリモートサービスと通信することを可能にする。
【0057】
通信接続部510は、車両コンピューティングデバイス504を別のコンピューティングデバイス(例えば、コンピューティングデバイス540)および/またはネットワーク542などのネットワークに接続するための物理的および/または論理的インターフェースを含むことができる。例えば、通信接続部510は、IEEE702.11規格によって定義された周波数を介したようなWi-Fiベースの通信、Bluetooth(登録商標)などの短距離無線周波数、セルラー通信(例えば、2G、3G、4G、4G LTE、5Gなど)、またはそれぞれのコンピューティングデバイスが他のコンピューティングデバイスとインターフェースすることを可能にする任意の適切な有線または無線通信プロトコルを可能にすることができる。
【0058】
少なくとも1つの例では、車両502は、1つまたは複数の駆動システム514を含むことができる。いくつかの例では、車両502は、単一の駆動システム514を有することができる。少なくとも1つの例では、車両502が多様な駆動システム514を有する場合、個々の駆動システム514は、車両502の反対側の端部(例えば、前部と後部など)に配置されることができる。少なくとも1つの例では、駆動システム514は、駆動システム514および/または車両502の周囲の状態を検出するための1つまたは複数のセンサーシステムを含むことができる。限定ではなく例として、センサーシステムは、駆動システムの車輪の回転を感知する1つまたは複数のホイールエンコーダ(例えば、ロータリーエンコーダ)、駆動システムの方向および加速度を測定する慣性センサー(例えば、慣性測定ユニット、加速度計、ジャイロスコープ、磁力計など)、カメラまたは他の画像センサー、駆動システムの周囲にある物体を音響的に検出する超音波センサー、LIDARセンサー、RADARセンサーなどを含むことができる。ホイールエンコーダのようないくつかのセンサーは、駆動システム514に固有のものとすることができる。場合によっては、駆動システム514上のセンサーシステムは、車両502の対応するシステム(例えば、センサーシステム506)と重複したり、補完したりすることができる。
【0059】
駆動システム514は、高電圧バッテリ、車両を推進するためのモータ、バッテリからの直流を他の車両システムで使用するための交流に変換するインバータ、ステアリングモータおよびステアリングラックを含む操舵システム(電気式とすることができる)、油圧または電気アクチュエータを含むブレーキシステム、油圧および/または空気圧コンポーネントを含むサスペンションシステム、トラクションの損失を緩和し制御を維持するためにブレーキ力を分配するための安定性制御システム、HVACシステム、照明(例えば、車両の外部周囲を照らすヘッド/テールライトなどの照明)、および1つまたは複数の他のシステム(例えば、冷却システム、安全システム、オンボード充電システム、DC/DCコンバータなどの他の電気コンポーネント、高電圧ジャンクション、高電圧ケーブル、充電システム、充電ポートなど)など、多数の車両システムを含むことができる。さらに、駆動システム514は、センサーシステムからデータを受信して前処理し、様々な車両システムの動作を制御することができる駆動システムコントローラを含むことができる。いくつかの例では、駆動システムコントローラは、1つまたは複数のプロセッサと、1つまたは複数のプロセッサと通信を有するように結合されたメモリとを含むことができる。メモリは、駆動システム514の様々な機能を実行するための1つまたは複数のシステムを格納することができる。さらに、駆動システム514は、それぞれの駆動システムが1つまたは複数の他のローカルまたはリモートのコンピューティングデバイスと通信を有する1つまたは複数の通信接続部も含む。
【0060】
少なくとも1つの例では、直接接続部512は、1つまたは複数の駆動システム514を車両502のボディと結合するための物理的インターフェースを提供することができる。例えば、直接接続部512は、駆動システム514と車両との間で、エネルギー、流体、空気、データなどの転送を与えることができる。いくつかの例では、直接接続部512は、駆動システム514を車両502のボディにさらに解放可能に固定することができる。
【0061】
少なくとも1つの例では、本明細書で論じられるコンポーネントは、上述のようにセンサーデータを処理することができ、1つまたは複数のネットワーク542を介して、1つまたは複数のコンピューティングデバイス540に、それぞれの出力を送信することができる。少なくとも1つの例では、本明細書で論じられるコンポーネントは、特定の頻度で、予め決められた期間の経過後に、ほぼリアルタイムなどで、それぞれの出力を1つまたは複数のコンピューティングデバイス540に送信することができる。
【0062】
いくつかの例では、車両502は、ネットワーク542を介して1つまたは複数のコンピューティングデバイス540にセンサーデータを送信することができる。いくつかの例では、車両502は、生のセンサーデータをコンピューティングデバイス540に送信することができる。他の例では、車両502は、処理されたセンサーデータおよび/またはセンサーデータの表現をコンピューティングデバイス540に送信することができる。いくつかの例では、車両502は、特定の頻度で、予め決められた期間の経過後に、ほぼリアルタイムでなど、センサーデータをコンピューティングデバイス540に送信することができる。いくつかの例では、車両502は、センサーデータ(生または処理済み)を1つまたは複数のログファイルとしてコンピューティングデバイス540に送信することができる。
【0063】
コンピューティングデバイス540は、訓練コンポーネント548、ログデータ550、機械学習コンポーネント552、および/または訓練データ534を格納するプロセッサ544およびメモリ546を含むことができる。ログデータ550は、動作中にセンサーデータをキャプチャして格納した、車両のコンピューティングシステム(例えば、コンピューティングシステム108、コンピューティングデバイス502など)から取得された過去または事前に記録されたセンサーデータを含んでもよい。ログデータ550は、生のセンサーデータまたは処理されたセンサーデータを含んでもよい。ログデータ550は、いくつかの例では、画像センサー、LIDARセンサー、RADARセンサー、time of flightセンサー、ソナーセンサー、グローバルポジショニングシステムセンサー、内部センサー、および/またはこれらの任意の組み合わせなど、車両上の複数のセンサーシステムによってキャプチャされた、融合された知覚データを含んでもよい。ログデータ550は、付加的または代替的に、センサーデータに表された物体(例えば、歩行者、車両、建物、路面など)のセマンティック分類を含む分類データ、および/または環境を通過する動的な物体として分類された物体の動きに対応する軌跡データを含んでもよい。軌跡データは、多様な異なる物体の時間に関する多様な軌跡を含んでもよい。
【0064】
訓練コンポーネント548は、ログデータ550を使用して、訓練データ534を生成することができる。例えば、訓練コンポーネント548は、物体の画像に、画像内の対象物の1つまたは複数の測定されたパラメータまたは特性をラベル付けすることができる。画像および/または測定されたパラメータまたは特性は、ログデータ550から取得されてもよい。ラベルは、画像が撮影された時点および/または画像が撮影された時点に続く1つまたは複数の時間における、物体の動きの状態(例えば、歩く、走る、静止するなど)、速さ、軌道、姿勢、および/または物体の他の特性の表示を含んでもよい。訓練コンポーネント548は、次いで訓練データ534を使用し、それを使用して機械学習コンポーネント552を訓練し、画像データに描写された物体の姿勢に基づいて、物体の現在または将来の速さ、軌道、および/または任意の他の特性を予測する、動きの状態を予測することができる。
【0065】
車両502のプロセッサ516およびコンピューティングデバイス540のプロセッサ544は、本明細書で説明されているように、データを処理し、動作を実行する命令を実行することができる任意の適切なプロセッサとすることができる。限定ではなく例として、プロセッサ516および544は、1つまたは複数の中央処理装置(CPU)、グラフィックスプロセッシングユニット(GPU)、または電子データを処理して、その電子データをレジスタおよび/またはメモリに格納することができる他の電子データに変換する他のデバイスまたはデバイスの一部を備えることができる。いくつかの例では、集積回路(ASICなど)、ゲートアレイ(FPGAなど)、およびその他のハードウェアデバイスは、コード化された命令を実装するように構成されている限りにおいて、プロセッサとみなすこともできる。
【0066】
メモリ518および546は、非一時的コンピュータ可読媒体の例である。メモリ518および546は、本明細書で説明される方法および様々なシステムに帰属する機能を実装するために、動作システムおよび1つまたは複数のソフトウェアアプリケーション、命令、プログラム、および/またはデータを格納することができる。様々な実装において、メモリは、スタティックランダムアクセスメモリ(SRAM)、シンクロナスダイナミックRAM(SDRAM)、不揮発性/フラッシュ型メモリ、または情報を記憶することができる他の種類のメモリなど、任意の適切なメモリ技術を用いて実装することができる。本明細書で説明されているアーキテクチャ、システム、および個々の要素は、他の多くの論理的、プログラム的、および物理的コンポーネントを含むことができるが、添付の図面に示されているものは、本明細書の議論に関連する単なる例である。
【0067】
理解できるように、本明細書で論じられているコンポーネントは、説明のために分割して記述されている。しかしながら、様々なコンポーネントによって実行される動作は、組み合わせたり、任意の他のコンポーネントで実行したりすることができる。
【0068】
図5は分散システムとして図示されているが、代替例では、車両502のコンポーネントをコンピューティングデバイス540に関連付けること、および/またはコンピューティングデバイス540のコンポーネントを車両502に関連付けることが可能であることに留意すべきである。すなわち、車両502は、コンピューティングデバイス540に関連付けられた1つまたは複数の機能を実行することができ、その逆も可能である。さらに、機械学習コンポーネント552の側面は、本明細書で論じられるデバイスのいずれかで実行することができる。
【0069】
例示項
A.システムであって、1つまたは複数のプロセッサと、1つまたは複数のプロセッサによって実行されると、システムに動作を実行させる命令を格納する非一時的コンピュータ可読媒体とを備え、動作は第1の時間において自律車両の1つまたは複数のセンサーによりキャプチャされた第1のセンサーデータを受信することであって、第1のセンサーデータは第1の画像データを備えることと、第1の画像データに少なくとも部分的に基づいて、自律車両の環境における姿勢を有する歩行者を検出することと、第1のセンサーデータ、または歩行者の表現に関連付けられた第2の画像を備えた、第2の時間において1つまたは複数のセンサーによりキャプチャされた第2のセンサーデータの1つまたは複数に少なくとも部分的に基づいて、歩行者の測定された速さを決定することと、機械学習モデルに第1の画像データを入力することと、機械学習モデルから歩行者の予測された速さを受信することと、歩行者の予測された速さと歩行者の測定された速さとの差を決定することと、訓練された機械学習モデルを取得するために、差を最小化するように機械学習モデルの1つまたは複数のパラメータを変更することとを備える。
【0070】
B.段落Aのシステムであって、動作が自律車両の1つまたは複数のセンサーによってキャプチャされた追加のセンサーデータを受信することであって、追加のセンサーデータは第2の歩行者を描写する追加の画像データを備えることと、訓練された機械学習モデルに追加の画像データを入力することと、訓練された機械学習モデルから、追加の画像データに少なくとも部分的に基づいて、第2の歩行者の予測された速さを受信することと、第2の歩行者の予測された速さに少なくとも部分的に基づいて、自律車両を制御することとをさらに備える。
【0071】
C.段落Aのシステムであって、動作が機械学習モデルから、歩行者の姿勢に少なくとも部分的に基づいて、歩行者の予測された軌道を受信することと、第1のセンサーデータおよび第2のセンサーデータに少なくとも部分的に基づいて、第1の時間から第2の時間までの歩行者の測定された軌道を決定することと、歩行者の予測された軌道と、歩行者の測定された軌道との差を決定することと、訓練された機械学習モデルを取得するために、差を最小化するように機械学習モデルの1つまたは複数のパラメータを変更することとをさらに備える。
【0072】
D.段落Cのシステムであって、動作が自律車両の1つまたは複数のセンサーによってキャプチャされた第3のセンサーデータを受信することであって、第3のセンサーデータは第2の歩行者に関連付けられた第3の画像データを備えることと、訓練された機械学習モデルに第3の画像データを入力することと、訓練された機械学習モデルから、第3の画像データに少なくとも部分的に基づいて、第2の歩行者の予測された軌道を受信することと、第2の歩行者の予測された軌道に少なくとも部分的に基づいて、自律車両を制御することとをさらに備える。
【0073】
E.段落Aのシステムであって、第1のセンサーデータを受信することは、過去のセンサーデータのデータストアから第1のセンサーデータを受信することを備え、動作は歩行者に関連付けられ、歩行者の速さ、軌道、または位置の1つまたは複数を示した過去の軌跡データを受信することをさらに備える。
【0074】
F.段落Aのシステムであって、動作が自律車両の1つまたは複数のセンサーによってキャプチャされた追加のセンサーデータを受信することであって、追加のセンサーデータは第2の歩行者に関連付けられた追加の画像データと、第2の歩行者の測定された動きを示す、1つまたは複数のLIDARデータまたはRADARデータとを備えることと、追加の画像データに少なくとも部分的に基づいて、自律車両の環境における第2の歩行者の姿勢を検出することと、第2の歩行者の姿勢に少なくとも部分的に基づいて、1つまたは複数のLIDARデータまたはRADARデータによって示される第2の歩行者の測定された動きがLIDARデータまたはRADARデータの測定誤差によるものであることを決定することとをさらに備える。
【0075】
G.方法であって、第1の時間において1つまたは複数のセンサーによってキャプチャされた第1のセンサーデータを受信することであって、第1のセンサーデータは第1の画像データを備えることと、第1の画像に少なくとも部分的に基づいて、1つまたは複数のセンサーの環境における物体を検出することと、第1のセンサーデータに少なくとも部分的に基づいて、第1の時間における物体の測定された速さを決定することと、機械学習モデルに第1の画像データを入力することと、機械学習モデルから物体予測された速さを受信することと、物体の予測された速さと物体の測定された速さとの差を決定することと、訓練された機械学習モデルを取得するために、差を最小化するように機械学習モデルの1つまたは複数のパラメータを変更することとを備える。
【0076】
H.段落Gの方法であって、第1のセンサーデータは、過去のLIDARデータ、過去のRADARデータ、または過去の軌跡ログデータの少なくとも1つを備え、過去の軌跡ログデータは、物体に関連付けられ、物体の速さ、ヨー角度、姿勢、範囲、または加速度の1つまたは複数を示す。
【0077】
I.段落Gの方法であって、1つまたは複数のセンサーによってキャプチャされた第2のセンサーデータを受信することであって、第2のセンサーデータは第2の物体を描写した第2の画像データを備えることと、訓練された機械学習モデルに第2の画像データを入力することと、訓練された機械学習モデルから、第2のデータに少なくとも部分的に基づいて、第2の物体の予測された速さを受信することと、第2の物体の予測された速さに少なくとも部分的に基づいて、自律車両を制御することとをさらに備える。
【0078】
J.段落Gの方法であって、機械学習モデルから、物体の姿勢に少なくとも部分的に基づいて、物体の予測された軌道を受信することと、第2の時間における環境中の物体に関連付けられた第2のセンサーデータを受信することと、第1のセンサーデータおよび第2のセンサーデータに少なくとも部分的に基づいて、第1の時間から第2の時間までの物体の測定された軌道を決定することと、物体の予測された軌道と物体の測定された軌道との差を決定することと、訓練された機械学習モデルを取得するために、差を最小化するように機械学習モデルの1つまたは複数のパラメータを変更することとをさらに備える。
【0079】
K.段落Jの方法であって、1つまたは複数のセンサーによってキャプチャされた第3のセンサーデータを受信することであって、第3のセンサーデータは第2の物体に関連付けられた第3の画像データを備えることと、訓練された機械学習モデルに第3の画像データを入力することと、訓練された機械学習モデルから、第3の画像データに少なくとも部分的に基づいて、第2の物体の予測された軌道を受信することと、第2の物体の予測された軌道に少なくとも部分的に基づいて、自律車両を制御することとをさらに備える。
【0080】
L.段落Gの方法であって、物体が歩行者を備える。
【0081】
M.1つまたは複数のセンサーによってキャプチャされた第2のセンサーデータを受信することであって、第2のセンサーデータは第2の物体に関連付けられた第2の画像データと、第2の物体に関連付けられたことを示す1つまたは複数のLIDARデータまたはRADARデータとを備えることと、1つまたは複数のLIDARデータまたはRADARデータに少なくとも部分的に基づいて、第2の物体の測定された動きを決定することと、第2の画像データに少なくとも部分的に基づいて、1つまたは複数のセンサーの環境における第2の物体の姿勢を検出することと、第2の物体の姿勢に少なくとも部分的に基づいて、1つまたは複数のLIDARデータまたはRADARデータによって示される第2の物体の測定された動きがLIDARデータまたはRADARデータの測定誤差によるものであることを決定することとをさらに備える。
【0082】
N.実行されると、1つまたは複数のプロセッサに動作を実行させる命令を格納した非一時的コンピュータ可読媒体であって、第1の時間において1つまたは複数のセンサーによってキャプチャされた第1のセンサーデータを受信することとであって、第1のセンサーデータは第1の画像データを備えることと、第1の画像データに少なくとも部分的に基づいて、1つまたは複数のセンサーの環境において姿勢を有する物体を検出することと、第1の時間における物体の測定された速さを決定することと、機械学習モデルに第1の画像データを入力することと、機械学習モデルから物体の予測された速さを受信することと、物体の予測された速度と物体の測定された速度の差を決定することと、訓練済みの機械学習モデルを取得する差を最小化するように機械学習モデルの1つまたは複数のパラメータを変更することとを備える。
【0083】
O.段落Nの非一時的コンピュータ可読媒体であって、第1のセンサーデータは、過去のLIDARデータ、過去のRADARデータ、または過去の軌跡ログデータの少なくとも1つを備え、過去の軌跡ログデータは、一定期間における物体の位置、速度、加速度、範囲、または姿勢の1つまたは複数を示す。
【0084】
P.段落Nの非一時的コンピュータ可読媒体であって、1つまたは複数のセンサーによってキャプチャされた第2のセンサーデータを受信することであって、第2のセンサーデータは第2の物体を描写する第2の画像データを備えることと、訓練された機械学習モデルに、第2の画像データを入力することと、訓練された機械学習モデルから、第2の画像データに少なくとも部分的に基づいて、第2の物体の予測された速さまたは第2の物体の予測された方向の1つまたは複数を受信することと、第2の物体の予測された速さに少なくとも部分的に基づいて、自律車両を制御することとを備える。
【0085】
Q.段落Nの非一時的コンピュータ可読媒体であって、第1の画像データに少なくとも部分的に基づいて、1つまたは複数のセンサーの環境における物体の姿勢を検出することと、機械学習モデルから、物体の姿勢に少なくとも部分的に基づいて、物体の予測された軌道を受信することと、第2の時間において環境中の物体に関連付けられた第2のセンサーデータを受信することと、第1のセンサーデータおよび第2のセンサーデータに少なくとも部分的に基づいて、第1の時間から第2の時間までの物体の測定された軌道を決定することと、物体の予測された軌道と物体の測定された軌道の差を決定することと、訓練された機械学習モデルを取得するために、差を最小化するように機械学習モデルの1つまたは複数のパラメータを変更することとを備える。
【0086】
R.段落Qの非一時的コンピュータ可読媒体であって、動作が1つまたは複数のセンサーによってキャプチャされた第3のセンサーデータを受信することであって、第3のセンサーデータは第2の物体に関連付けられた第3の画像データを備えることと、訓練された機械学習モデルに第3の画像データを入力することと、訓練された機械学習モデルから、第3の画像データに少なくとも部分的に基づいて、第2の物体の予測された軌道を受信することと、第2の物体の予測された軌道に少なくとも部分的に基づいて、自律車両を制御することとを備える。
【0087】
S.段落Nの非一時的コンピュータ可読媒体であって、姿勢は、物体の位置、物体の方向、物体の相対的な付属品の位置の1つまたは複数を示す。
【0088】
T.段落Nの非一時的コンピュータ可読媒体であって、動作が1つまたは複数のセンサーによってキャプチャされた第2のセンサーデータを受信することであって、第2のセンサーデータは、第2の物体に関連付けられた第2の画像データと、第2の物体に関連付けられたLIDARデータまたはRADARデータの1つまたは複数とを備えることと、第1のセンサーデータまたは第2のセンサーデータの1つまたは複数に少なくとも部分的に基づいて、物体の測定された動きを決定することと、第2の画像データに少なくとも部分的に基づいて、1つまたは複数のセンサーの環境における第2の物体の姿勢を検出することと、第2の物体の姿勢に少なくとも部分的に基づいて、LIDARデータまたはRADARデータの1つまたは複数によって示される第2の物体の測定された動きが、少なくとも部分的にLIDARデータまたはRADARデータの測定誤差によるものであると決定することとを備える。
【0089】
結論
明細書で説明されている技術の1つまたは複数の例が説明されているが、その様々な変更、追加、順列、および等価物は、本明細書で説明されている技術の範囲内に含まれる。
【0090】
例の説明では、本明細書の一部を構成する添付の図面を参照し、請求された主題の具体的な例を示す。他の例を使用することは可能であり、また、構造的な変更などの変更または改変を行うことができることを理解されたい。そのような例、変更または改変は、意図された請求項の主題に関する範囲から必ずしも逸脱するものではない。本明細書の手順は、一定の順序で提示することができるが、場合によっては、説明されたシステムおよび方法の機能を変更することなく、特定の入力が異なるタイミングまたは異なる順序で提供されるように、順序を変更することができる。また、開示された手順を異なる順序で実行することも可能である。さらに、本明細書で説明されている様々な計算は、開示されている順序で実行される必要はなく、計算の代替的な順序を使用する他の例も容易に実施することができる。順序を変えることに加えて、いくつかの例では、計算を同じ結果を持つサブ計算に分解することも可能である。
図1
図2
図3
図4
図5