(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023107231
(43)【公開日】2023-08-02
(54)【発明の名称】演算が効率的な交通参加者の軌道表現
(51)【国際特許分類】
B60W 30/08 20120101AFI20230726BHJP
B60W 40/04 20060101ALI20230726BHJP
B60W 60/00 20200101ALI20230726BHJP
B60W 30/10 20060101ALI20230726BHJP
G08G 1/16 20060101ALI20230726BHJP
【FI】
B60W30/08
B60W40/04
B60W60/00
B60W30/10
G08G1/16 C
【審査請求】有
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023006951
(22)【出願日】2023-01-20
(31)【優先権主張番号】22152650
(32)【優先日】2022-01-21
(33)【優先権主張国・地域又は機関】EP
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
2.PYTHON
(71)【出願人】
【識別番号】322007626
【氏名又は名称】コンチネンタル・オートナマス・モビリティ・ジャーマニー・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング
(74)【代理人】
【識別番号】100069556
【弁理士】
【氏名又は名称】江崎 光史
(74)【代理人】
【識別番号】100111486
【弁理士】
【氏名又は名称】鍛冶澤 實
(74)【代理人】
【識別番号】100191835
【弁理士】
【氏名又は名称】中村 真介
(74)【代理人】
【識別番号】100221981
【弁理士】
【氏名又は名称】石田 大成
(72)【発明者】
【氏名】イェルク・ライヒャルト
【テーマコード(参考)】
3D241
5H181
【Fターム(参考)】
3D241BA15
3D241BA31
3D241BA42
3D241BB15
3D241BB16
3D241BB45
3D241BB46
3D241DC25Z
3D241DC30Z
3D241DC31Z
5H181AA01
5H181BB13
5H181BB20
5H181CC03
5H181CC04
5H181CC12
5H181CC14
5H181FF27
5H181LL04
5H181LL09
(57)【要約】 (修正有)
【課題】本開示は、一般に、自律車両に関し、特に、(例えば、自律車両による複数物体追尾用の)演算に関して効率的に交通参加者(例えば、車両、歩行者、サイクリスト)等の物体の軌道を表現する技術に関する。
【解決手段】車両を制御する制御信号を生成する例示的な方法は、車両と同じ環境における単一の物体の軌道のパラメータ表現を取得することと、複数物体および複数仮説追尾のフレームワーク内で、車両の1つまたは複数のセンサにより受信されたデータに基づいて単一の物体の軌道のパラメータ表現を更新することと、物体の更新された軌道に基づいて車両を制御する制御信号を生成することと、を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
車両を制御する制御信号を生成する方法において、
前記車両と同じ環境における単一の物体の軌道のパラメータ表現を取得することと、
複数物体及び複数仮説追尾のフレームワーク内で、前記車両の1つ又は複数のセンサにより受信されたデータに基づいて前記単一の物体の軌道の前記パラメータ表現を更新することと、
前記物体の前記更新された軌道に基づいて前記車両を制御する前記制御信号を生成することと、を備える当該方法。
【請求項2】
前記制御信号が、前記物体及び前記車両と同じ環境における少なくとも1つの他の物体の前記更新された軌道に基づいて生成される請求項1に記載の方法。
【請求項3】
前記車両の移動を制御するために前記制御信号を前記車両に供給することをさらに備える、請求項1又は2に記載の方法。
【請求項4】
前記更新された軌道に基づいて前記物体に関連するインテントを決定することをさらに備え、前記制御信号が前記インテントに基づいて決定される請求項1~3の何れか1項に記載の方法。
【請求項5】
前記インテントが、道路からの退出、道路への進入、車線変更、道路横断、ターンの実行、又はこれらの任意の組み合わせを含む請求項4に記載の方法。
【請求項6】
出力を取得するために、前記更新された軌道を訓練された機械学習モデルに入力することをさらに備え、前記制御信号が、前記訓練された機械学習モデルの前記出力に基づいて決定される請求項1~5の何れか1項に記載の方法。
【請求項7】
前記機械学習モデルがニューラルネットワークである請求項6に記載の方法。
【請求項8】
前記軌道の前記パラメータ表現を取得することが、メモリから複数の制御点を取り込むことを含む請求項1~7の何れか1項に記載の方法。
【請求項9】
前記車両の移動に基づいて、前記取得されたパラメータ表現を新しい座標系に変換することをさらに備える請求項8に記載の方法。
【請求項10】
前記取得されたパラメータ表現を変換することが、前記パラメータ表現の前記複数の制御点を前記新しい座標系に変換することを含む請求項9に記載の方法。
【請求項11】
前記パラメータ表現を更新することが、
前記取得されたパラメータ表現と運動モデルとに基づいて期待パラメータ表現を予測することと、
前記期待パラメータ表現を前記車両の前記1つ又は複数のセンサにより受信された前記データと比較することと、
前記比較に基づいて前記パラメータ表現を更新することと、を含む請求項1~10の何れか1項に記載の方法。
【請求項12】
前記期待パラメータ表現を予測することが、前記期待パラメータ表現の複数の制御点を決定することを含む請求項11に記載の方法。
【請求項13】
前記期待パラメータ表現の前記複数の制御点を決定することが、前記期待パラメータ表現の前記複数の制御点の平均及び/又は共分散を取得することを含む請求項12に記載の方法。
【請求項14】
前記運動モデルが、前記取得されたパラメータ表現を時間期間だけ前方にシフトさせるように構成される線形モデルである請求項11~13の何れか1項に記載の方法。
【請求項15】
前記パラメータ表現がカルマンフィルタアルゴリズムに基づいて更新される請求項11~14の何れか1項に記載の方法。
【請求項16】
前記比較に基づいて前記物体が異常であるか否かを決定することをさらに備える請求項11~15の何れか1項に記載の方法。
【請求項17】
前記データが第1データであり、前記更新されたパラメータ表現が第1パラメータ曲線表現である請求項1~16の何れか1項に記載の方法において、
前記車両の前記1つ又は複数のセンサにより受信された第2データに基づいて前記軌道の前記取得されたパラメータ表現を更新して、第2更新されたパラメータ表現を取得することと、
前記第1更新されたパラメータ表現及び前記第2更新されたパラメータ表現を、前記物体に関連する仮説として格納することと、をさらに備える当該方法。
【請求項18】
前記物体が交通参加者である請求項1~17の何れか1項に記載の方法。
【請求項19】
1つ又は複数のプロセッサと、
メモリと、
1つ又は複数のプログラムと、を備える車両であって、前記1つ又は複数のプログラムが前記メモリに格納されており、前記1つ又は複数のプロセッサにより実行されるように構成されており、前記1つ又は複数のプログラムが、
前記車両と同じ環境における単一の物体の軌道のパラメータ表現を取得し、
複数物体及び複数仮説追尾のフレームワーク内で、前記車両の1つ又は複数のセンサにより受信されたデータに基づいて前記単一の物体の軌道の前記パラメータ表現を更新し、
前記物体の前記更新された軌道に基づいて前記車両を制御する前記制御信号を生成するための命令を含む当該車両。
【請求項20】
車両を制御する制御信号を生成するシステムにおいて、
1つ又は複数のプロセッサと、
メモリと、
1つ又は複数のプログラムと、を備えるシステムであって、前記1つ又は複数のプログラムが前記メモリに格納されており、前記1つ又は複数のプロセッサにより実行されるように構成されており、前記1つ又は複数のプログラムが、
前記車両と同じ環境における単一の物体の軌道のパラメータ表現を取得し、
複数物体及び複数仮説追尾のフレームワーク内で、前記車両の1つ又は複数のセンサにより受信されたデータに基づいて前記単一の物体の軌道の前記パラメータ表現を更新し、
前記物体の前記更新された軌道に基づいて前記車両を制御する前記制御信号を生成するための命令を含む当該システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、自律車両に関し、特に、(例えば、自律車両による複数物体追尾用の)演算に関して効率的に交通参加者(例えば、車両、歩行者、サイクリスト)等の物体の軌道を表現する技術に関する。
【背景技術】
【0002】
自律エージェント(例えば、自動車、ドローン、ロボット、農業機器等を含む車両)の安全かつ快適な動作は、環境における他のエージェント及び物体の将来の振舞いの尤度を考慮に入れた予期的な移動計画を必要とする。他のエージェントの意図は外側の観察者には一般に知覚可能ではないため、自律エージェントはそれらの動的環境の将来の振舞いに関する推論を行うことしかできない。そのような推論は環境の文脈における過去及び将来の移動の観察に加え、他のエージェントがその意図、例えば、方向指示を示すような能動的に送信する全ての信号に基づくことしかできない。
【0003】
このように、自律エージェントは、そのセンサを用いてその環境における動的物体の移動を連続的に追尾することを必要とする。一般に、エージェントの環境には複数の動的物体が存在することから、このプロセスは複数物体追尾(「MOT」)と称される。複数物体追尾は、多数の具体的な困難を伴うものであり、追尾される物体の数は、物体がエージェントの観察領域に進入及び退出する度に変化する場合があり、誤りを含むセンサ読み出しは物体の存在を誤って示す場合があり、又は、一時的なオクルージョンに起因して存在する物体がセンサ読み出しを供給しない場合がある。従って、運動状態の現在の推定量を更新するために、センサ読み出しを追跡される物体にどのようにして正しく関連付けるかという問題、いわゆるデータ連関問題が生じる。
【0004】
データ連関の不確かさを取り扱う本質的な解決策は、いわゆる複数仮説追尾アルゴリズム(「MHT」)において追尾される物体にセンサ読み出しを割り当てる多数の整合性を有する異なる仮説を同時に維持することである。実際、これにより、全ての可能性を有する代替案を考慮に入れつつも、より確実なエビデンスが収集される(例えば、オクルージョンが解決される)、後の時点にデータ連関の最終決定を先送りすることができる。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】Granstroem et al (https://arxiv.org/abs/1912.08718,
図I)
【発明の概要】
【発明が解決しようとする課題】
【0006】
MHTアルゴリズムはMOTについて優れた追尾性能を示す一方、維持すべき連関仮説の数が潜在的に非常に多いことから演算コストがかかる。組み込みハードウェアのリアルタイム追尾システムで適用される場合、MHTアルゴリズムは従って物体の現在のキネマティクス状態、例えば、現在の位置、速度、及び加速度等の推定量を維持することのみに現在限定される。
【0007】
しかし、物体の現在のキネマティクス状態だけでなく、その軌道履歴の一部も追尾することは非常に有益である場合があるのは、軌道履歴がエージェントのインテントに関する価値ある情報を有する可能性があるからである。例えば、車線変更を完了したばかりの車両は、さらに車線変更を行う可能性は、この最近の操作をしていない同じキネマティクス状態の他の車両よりも低い。
【0008】
MHTアルゴリズムが軌道追尾に用いられるならば、必要なメモリは、仮説の数(M)と軌道の長さ(L)、つまり、追尾される時間ステップの数の積であるM*Lに応じてスケーリングする。また、移動するセンサの適用において、状況理解、予測、及び計画のために考慮される全ての仮説を、センサに固定される座標系であって、L*mに応じてスケーリングし、mはこれらのタスクに適用される仮説の数であり≦Mである座標系に変換する演算コストを考慮に入れる必要がある。
【0009】
その結果、MHTアルゴリズムを軌道追尾にも使用可能とする、座標変換に際して必要なメモリと必要な演算の両方を削減する軌道表現を生成し維持することが望ましい。
【課題を解決するための手段】
【0010】
本開示は、自律車両及び動作する自律エージェント用の制御信号を生成する方法、電子装置、システム、装置、及び非一時的格納媒体に関する。本開示の実施形態は、交通参加者(例えば、自車両、他の車両、歩行者、サイクリスト等)の軌道をメモリ効率良くかつ演算効率良く表現することができる。いくつかの実施形態において、物体の軌道は、パラメータ表現、例えば、ベジェ表現として表現される。いくつかの実施形態において、物体の軌道は、ベジェ曲線の一般化、つまり、データから学習される一方、低いメモリフットプリントと座標変換の演算効率を保証する、ベジェ曲線の本質的な性質を維持する基底関数の線形結合(例えば、第1基底関数、第2基底関数、第3基底関数等)であってよい。
【0011】
パラメータ表現、例えば、ベジェ曲線を用いて交通軌道を表現することは、数多くの技術的に有利な点を有する。例えば、ベジェ曲線は、自律エージェントから観察される典型的な交通軌道(例えば、平滑な走行軌道)を表現するのに好適である。また、環境の現在の状態と共に軌道履歴は、他のエージェントのインテントに関する豊かな情報を提供することができ、不確かさを大幅に削減し、計画プロセスを単純化することができる。
【0012】
また、パラメータ表現は、ナイーブな軌道表現よりも大幅に少ないメモリを必要とする。ナイーブな軌道表現は、複数のキネマティクス状態パラメータ(つまり、位置、速度、加速度)によりそれぞれ定義されるキネマティクス状態の時間シーケンスを含む。従って、複数仮説手法においては、演算コストは、物体に関して維持される仮説の数(M)と追尾される軌道の長さ(L)(例えば、追尾される時間ステップの数)の積であるM*Lに応じて、メモリ及び演算の両方においてスケーリングする。それとは対照的に、ベジェ曲線又はその一般化は、複数の制御点によりパラメータ化されるため、数秒の時間期間(例えば、数10~数100のタイムスタンプ/サイクル)において観察されるキネマティクス状態を、一定数のパラメータ(例えば、3次ベジェ曲線では8、5次ベジェ曲線では12)を用いて要約することができる。ベジェ曲線は、任意の軌道追尾アルゴリズムの演算コストを、追尾される軌道の長さ(L)とのスケーリングから定数へと下げる。言い換えれば、本発明の実施形態は、軌道追尾アルゴリズムのスケーリングを、現在の状態のみを追尾するスケーリングと比較可能に維持することができ、それと同時に豊かな時間文脈を提供する。これにより、メモリフットプリントの削減>95%が達成される。
【0013】
また、軌道のパラメータ表現が必要とする演算リソースは、ナイーブな軌道表現と比較して大幅に少ない。例えば、(例えば、自車両の移動に起因して)異なる座標系から見たベジェ曲線表現を得るために、系は制御点、つまり、曲線のパラメータを移動かつ回転させることにより、演算的に効率良く曲線の正確な表現を得ることができる。いくつかの実施形態において、制御点は、アフィン変換を用いて変換されてよい。言い換えれば、と環境特徴の静止位置、例えば、交通標識が変換されるのと同様に、制御点は変換される。このことは、例えば、そのパラメータを直接的に変換することができない、何らかの座標系の多項式表現とは対照的である。物体の軌道が多項式表現を用いてフィッティングされる場合、自車両の座標系の多項式は回転下では多項式のままではないため、エゴ運動補償は困難である。従って、系は全ての測定された点のリストを維持することに限定され、これらをエゴ運動について補償し、多項式を用いて点を再びフィッティングすることになるが、これは演算コストが高くなる場合がある。
【0014】
また、パラメータ表現は、演算的に効率良く更新可能である。追尾アルゴリズムの予測ステップに必要な運動モデルは、サイクルタイムのみに依存する時間不変線形変換である。物体の位置、速度、及び加速度を観察する際、観察モデルは線形時間不変であるため、軌道のパラメータのカルマン更新方程式は正確である。パラメータは完全に解釈可能である。軌道に沿う物体の標準的なキネマティクス状態ベクトル(位置、速度、加速度)は、線形変換を用いて回復可能である。データのフィッティングは必要ではなく、むしろ、更新ステップは、新しい観察を曲線のパラメータに直接的に統合する。従って、ベジェ曲線表現又はその一般化を計算するために観察のシーケンスを格納する必要がない。
【0015】
本開示で説明されるように、本開示のいくつかの実施形態は、状態追尾において用いられるキネマティクス状態ベクトルのガウス分布のカルマン更新方程式への直接的なドロップインとして、適合された運動モデルと測定モデルと共にベジェ曲線又はその一般化の制御点の多変量ガウス分布を得る。これにより、軌道を形成する状態のシーケンスを維持するための演算及びメモリコストをかけることなく、任意の状態追尾アルゴリズムを軌道追尾アルゴリズムに変換する。同時に、一般的な状態追尾と比較して、軌道の最新点は物体の現在の状態と常に一致するため、情報が失われることはない。ベジェ曲線はジャークが限定された快適で平滑な軌跡を表現可能であるため、実際に測定される物体状態の偏差を、他の交通参加者の振舞いの異常を検出するために用いることができる。また、コンパクトなベジェ表現は、交通シーンの文脈におけるエージェントの過去の振舞いを要約するものであるため、自律エージェントにおける状況理解のためのAIアルゴリズム(例えば、機械学習モデル、例えば、ニューラルネットワーク)の入力のみに好適である。
【0016】
車両を制御する制御信号を生成する例示的な方法は:車両と同じ環境における単一の物体の軌道のパラメータ表現を取得することと;複数物体及び複数仮説追尾のフレームワーク内で、車両の1つ又は複数のセンサにより受信されたデータに基づいて単一の物体の軌道のパラメータ表現を更新することと;物体の更新された軌道に基づいて車両を制御する制御信号を生成することと、を備える。
【0017】
いくつかの実施形態において、制御信号が、物体及び車両と同じ環境における少なくとも1つの他の物体の更新された軌道に基づいて生成される。
【0018】
いくつかの実施形態において、本方法は、車両の移動を制御するために制御信号を車両に供給することをさらに備える。
【0019】
いくつかの実施形態において、本方法は、更新された軌道に基づいて物体に関連するインテントを決定することをさらに備え、制御信号がインテントに基づいて決定される。
【0020】
いくつかの実施形態において、インテントが、道路からの退出、道路への進入、車線変更、道路横断、ターンの実行、又はこれらの任意の組み合わせを含む。
【0021】
いくつかの実施形態において、本方法は、出力を取得するために、更新された軌道を訓練された機械学習モデルに入力することをさらに備え、制御信号が、訓練された機械学習モデルの出力に基づいて決定される。
【0022】
いくつかの実施形態において、機械学習モデルがニューラルネットワークである。
【0023】
いくつかの実施形態において、軌道のパラメータ表現を取得することが、メモリから複数の制御点を取り込むことを含む。
【0024】
いくつかの実施形態において、本方法は、車両の移動に基づいて、取得されたパラメータ表現を新しい座標系に変換することをさらに備える。
【0025】
いくつかの実施形態において、取得されたパラメータ表現を変換することが、パラメータ表現の複数の制御点を新しい座標系に変換することを含む。
【0026】
いくつかの実施形態において、パラメータ表現を更新することが:取得されたパラメータ表現と運動モデルとに基づいて期待パラメータ表現を予測することと;期待パラメータ表現を車両の1つ又は複数のセンサにより受信されたデータと比較することと;比較に基づいてパラメータ表現を更新することと、を含む。
【0027】
いくつかの実施形態において、期待パラメータ表現を予測することが、期待パラメータ表現の複数の制御点を決定することを含む。
【0028】
いくつかの実施形態において、期待パラメータ表現の複数の制御点を決定することが、期待パラメータ表現の複数の制御点の平均及び/又は共分散を取得することを含む。
【0029】
いくつかの実施形態において、運動モデルが、取得されたパラメータ表現を時間期間だけ前方にシフトさせるように構成される線形モデルである。
【0030】
いくつかの実施形態において、パラメータ表現がカルマンフィルタアルゴリズムに基づいて更新される。
【0031】
いくつかの実施形態において、本方法は、比較に基づいて物体が異常であるか否かを決定することをさらに備える。
【0032】
いくつかの実施形態において、データが第1データであり、更新されたパラメータ表現が第1パラメータ曲線表現であり、本方法は:車両の1つ又は複数のセンサにより受信された第2データに基づいて軌道の取得されたパラメータ表現を更新して、第2更新されたパラメータ表現を取得することと;第1更新されたパラメータ表現及び第2更新されたパラメータ表現を、物体に関連する仮説として格納することと、をさらに備える。
【0033】
いくつかの実施形態において、物体が交通参加者である。
【0034】
いくつかの実施形態において、例示的な車両は:1つ又は複数のプロセッサと;メモリと;1つ又は複数のプログラムと、を備え、1つ又は複数のプログラムがメモリに格納されており、1つ又は複数のプロセッサにより実行されるように構成されており、1つ又は複数のプログラムが:車両と同じ環境における単一の物体の軌道のパラメータ表現を取得し;複数物体及び複数仮説追尾のフレームワーク内で、車両の1つ又は複数のセンサにより受信されたデータに基づいて単一の物体の軌道のパラメータ表現を更新し;物体の更新された軌道に基づいて車両を制御する制御信号を生成するための、命令を含む。
【0035】
いくつかの実施形態において、車両を制御する制御信号を生成する例示的なシステムは:1つ又は複数のプロセッサと;メモリと;1つ又は複数のプログラムと、を備え、1つ又は複数のプログラムがメモリに格納されており、1つ又は複数のプロセッサにより実行されるように構成されており、1つ又は複数のプログラムが:車両と同じ環境における単一の物体の軌道のパラメータ表現を取得し;複数物体及び複数仮説追尾のフレームワーク内で、車両の1つ又は複数のセンサにより受信されたデータに基づいて単一の物体の軌道のパラメータ表現を更新し;物体の更新された軌道に基づいて車両を制御する制御信号を生成するための、命令を含む。
【0036】
説明される様々な実施形態をより良く理解するために、以下の図面と共に以下の詳細な説明が参照されるべきであり、図面を通して同様の符号は一致する部分を示す。
【図面の簡単な説明】
【0037】
【
図1A】
図1Aは、いくつかの実施形態による、2つの車両の現在の状態のみが既知であるシナリオを示す。
【
図1B】
図1Bは、いくつかの実施形態による、2つの車両の現在の状態のみが既知であるシナリオを示す。
【
図1C】
図1Cは、いくつかの実施形態による、物体の現在の状態及び軌道履歴の両方が既知であるシナリオを示す。
【
図1D】
図1Dは、いくつかの実施形態による、物体の現在の状態及び軌道履歴の両方が既知であるシナリオを示す。
【
図2】
図2は、いくつかの実施形態による、車両の制御信号を生成する例示的なプロセスを示す。
【
図3A】
図3Aは、いくつかの実施形態による、例示的な軌道表現を示す。
【
図3B】
図3Bは、いくつかの実施形態による、例示的な軌道表現を示す。
【
図4】
図4は、いくつかの実施形態による、演算装置の一例を示す。
【発明を実施するための形態】
【0038】
以下の説明は、当業者が様々な実施形態を成すこと及び使用することを可能にするように提示される。特定のデバイス、技法、及び用途の説明は、実施例としてのみ提供される。本明細書で説明される実施例に対する種々な変更は、当業者には容易に明白であり、本明細書で定義される一般的な原則は、様々な実施形態の精神及び範囲から逸脱することなく、他の実施例及び用途に適用されてもよい。このように、様々な実施形態は、本明細書で説明され、提示される実施例に限定されることを意図しておらず、請求項と整合する範囲と合致するものである。
【0039】
本開示は、自律車両及び動作する自律エージェント用の制御信号を生成する方法、電子装置、システム、装置、及び非一時的格納媒体に関する。本開示の実施形態は、交通参加者(例えば、自車両、他の車両、歩行者、サイクリスト等)の軌道をメモリ効率良くかつ演算効率良く表現することができる。いくつかの実施形態において、物体の軌道は、パラメータ表現として表現される。パラメータ表現は、ベジェ曲線の一般化、つまり、データから学習される一方、低いメモリフットプリントと座標変換の演算効率を保証する、ベジェ曲線の本質的な性質を維持する基底関数の線形結合(例えば、第1基底関数、第2基底関数、第3基底関数等)であってよい。
【0040】
パラメータ表現、例えば、ベジェ曲線を用いて交通軌道を表現することは、数多くの技術的に有利な点を有する。例えば、ベジェ曲線は、自律エージェントから観察される典型的な交通軌道(例えば、平滑な走行軌道)を表現するのに好適である。また、環境の現在の状態と共に軌道履歴は、他のエージェントのインテントに関する豊かな情報を提供することができ、不確かさを大幅に削減し、計画プロセスを単純化することができる。
【0041】
また、パラメータ表現は、ナイーブな軌道表現よりも大幅に少ないメモリを必要とする。ナイーブな軌道表現は、複数のキネマティクス状態パラメータ(つまり、位置、速度、加速度)によりそれぞれ定義されるキネマティクス状態の時間シーケンスを含む。従って、複数仮説手法においては、演算コストは、物体に関して維持される仮説の数(M)と追尾される軌道の長さ(L)(例えば、追尾される時間ステップの数)の積であるM*Lに応じて、メモリ及び演算の両方においてスケーリングする。それとは対照的に、ベジェ曲線又はその一般化は、複数の制御点によりパラメータ化されるため、数秒の時間期間(例えば、数10~数100のタイムスタンプ/サイクル)において観察されるキネマティクス状態を、一定数のパラメータ(例えば、3次ベジェ曲線では8、5次ベジェ曲線では12)を用いて要約することができる。パラメータ表現は、任意の軌道追尾アルゴリズムの演算コストを、追尾される軌道の長さ(L)とのスケーリングから定数へと下げる。言い換えれば、本発明の実施形態は、追尾アルゴリズムのスケーリングを、現在の状態のみを追尾するスケーリングと比較可能に維持することができ、それと同時に豊かな時間文脈を提供する。これにより、メモリフットプリントの削減>95%が達成される。
【0042】
また、軌道のパラメータ表現が必要とする演算リソースは、ナイーブな軌道表現と比較して大幅に少ない。例えば、(例えば、自車両の移動に起因して)異なる座標系から見たベジェ曲線表現を得るために、系は制御点、つまり、曲線のパラメータを移動かつ回転させることにより、演算的に効率良く曲線の正確な表現を得ることができる。いくつかの実施形態において、制御点は、アフィン変換を用いて変換されてよい。言い換えれば、と環境特徴の静止位置、例えば、交通標識が変換されるのと同様に、制御点は変換される。このことは、例えば、そのパラメータを直接的に変換することができない、何らかの座標系の多項式表現とは対照的である。物体の軌道が多項式表現を用いてフィッティングされる場合、自車両の座標系の多項式は回転下では多項式のままではないため、エゴ運動補償は困難である。従って、系は全ての測定された点のリストを維持することに限定され、これらをエゴ運動について補償し、多項式を用いて点を再びフィッティングすることになるが、これは演算コストが高くなる場合がある。
【0043】
また、パラメータ表現は、演算的に効率良く更新可能である。追尾アルゴリズムの予測ステップに必要な運動モデルは、サイクルタイムのみに依存する時間不変線形変換である。物体の位置、速度、及び加速度を観察する際、観察モデルは線形時間不変であるため、軌道のパラメータのカルマン更新方程式は正確である。パラメータは完全に解釈可能である。軌道に沿う物体の標準的なキネマティクス状態ベクトル(位置、速度、加速度)は、線形変換を用いて回復可能である。データのフィッティングは必要ではなく、むしろ、更新ステップは、新しい観察を曲線のパラメータに直接的に統合する。従って、ベジェ曲線表現又はその一般化を計算するために観察のシーケンスを格納する必要がない。
【0044】
本開示で説明されるように、本開示のいくつかの実施形態は、状態追尾において用いられるキネマティクス状態ベクトルのガウス分布のカルマン更新方程式への直接的なドロップインとして、適合された運動モデルと測定モデルと共にベジェ曲線又はその一般化の制御点の多変量ガウス分布を得る。これにより、軌道を形成する状態のシーケンスを維持するための演算及びメモリコストをかけることなく、任意の状態追尾アルゴリズムを軌道追尾アルゴリズムに変換する。同時に、一般的な状態追尾と比較して、軌道の最新点は物体の現在の状態と常に一致するため、情報が失われることはない。ベジェ曲線はジャークが限定された快適で平滑な軌跡を表現するため、実際に測定される物体状態の偏差を、他の交通参加者の振舞いの異常を検出するために用いることができる。また、コンパクトなベジェ表現は、交通シーンの文脈におけるエージェントの過去の振舞いを要約するものであるため、自律エージェントにおける状況理解のためのAIアルゴリズムの入力のみに好適である。
【0045】
以下の説明では、例示的な方法、パラメータ等が記載される。しかし、そのような説明は本開示の範囲を制限することを意図しておらず、例示的な実施形態の説明として提供されることを認識すべきである。
【0046】
以下の説明では、様々な要素を説明するために「第1」、「第2」等の用語を使用するが、これらの要素はこれらの用語によって限定されるべきではない。これらの用語は、ある要素を別の要素と区別するために使用されるに過ぎない。例えば、説明される様々な実施形態の範囲から逸脱することなく、第1グラフィック表現は第2グラフィック表現と称することができ、同様に、第2グラフィック表現は第1グラフィック表現と称することができる。第1グラフィック表現及び第2グラフィック表現は、両者ともグラフィック表現であるが、同一のグラフィック表現ではない。
【0047】
本明細書で記載される様々な実施形態の説明で使用される用語は、特定の実施形態を説明することを目的とするに過ぎず、限定することを意図するものではない。記載される様々な実施形態の説明及び添付の特許請求の範囲で使用される場合、単数形「a」、「an」及び「the」は、文脈がそうではないことを明確に示さない限り、複数形も含むことが意図される。本明細書で使用される場合、用語「及び/又は」が、関連する列挙された項目の1つ又は複数の全ての可能な任意の組み合わせを指し、かつこれを含むことをもまた理解されるだろう。また、本明細書で使用される場合、用語「includes(含む)」、「including(含む)」、「comprises(備える)」及び/又は「comprising(素なる)」が、記載される特徴、整数、ステップ、動作、要素、及び/又は部材の存在を記載する一方、1つ又は複数の他の特徴、整数、ステップ、動作、要素、部材及び/又はそれらのグループの存在又は追加を除外しないことが理解されるだろう。
【0048】
用語「if(~する場合)」は、文脈に応じて「when(~する時)」、「upon(~する時)」、「in response to determining(~の判定に応じて)」又は「in response to detecting(~の検出に応じて)」を意味すると任意に解釈される。同様に、表現「if it is determined(~と判定される場合)」又は「if [a stated condition or event]is detected([記載される条件又はイベント]が検出される場合)」は、文脈に応じて「upon determining(~と判定される時)」又は「in response to determining(~の判定に応じて)」、又は「upon detecting [the stated condition or event]([記載される条件又はイベント]の検出時に)」、又は「in response to detecting [the stated condition or event]([記載される条件又はイベント]の検出に応じて)」を意味すると任意に解釈される。
【0049】
自律車両の安全かつ快適な航法は、予期的な計画、つまり、環境における動的物体の将来の振舞いに関する期待を形成し、予測を行う能力を必要とする。そのような予測の基礎となるのが、過去の観測に基づく動的物体の現在の状態の正確な推定である。当然、そのような状態推定量は、測定プロセスの不確かさ又は観測不可能な量、例えば、運転者のインテント等に起因して、確率的である。状態空間モデルは、動的物体の現在の状態の推定量へと観測を連続的に吸収し、時間に関してそれらの移動を追尾するために、確実な確率フレームワークを提供するため、このタスクについてのみ好適である。このための標準的な技術はカルマンフィルタ又はあらゆるその変形及び拡張である。以下、カルマンフィルタの主な動作ステップ、この手法のいくつかの弱点、及びそれをどのように改善可能かについて説明する。
【0050】
カイマンフィルタアルゴリズム
【0051】
単一の物体xtの現在の状態ベクトルに関する確率分布は、時刻tまでのこの物体の過去の全ての観測のシーケンスにおいて、P(xt|ot,..,o0)=Pt|tとして考慮することができる。例えば、2次元で追尾される自律車両は、x位置、y位置、速度v、加速度a、ヨー角ψ、回転速度ψ・の6成分を有する一般的な状態ベクトルxtにより示される。最も単純な場合、このベクトルの確率密度は、ガウス分布Pt|t=N(xt;μt|t,Σt|t)であり、平均はμt|t、共分散はΣt|tである。
【0052】
関心の対象となるのは、現在の状態ベクトルxt:P(xt+δt|xt)が与えられている場合、時刻t+δtにおける未来の状態ベクトルに関するさらなる分布である。また、最も単純な場合はガウス分布P(xt+δt|xt)=N(xt+δt;x^
t+δt,Q(δt))であり、平均は線形関数x^
t+δt=F(δt)xt、共分散行列はQ(δt)であり、行列F(δt)及びQ(δt)はδtのみに依存する。
【0053】
さらに、所与の状態ベクトルについての観測o
tの尤度P(o
t|x
t)が考慮される。また、最も単純な場合はガウス分布P(o
t|x
t)=N(o
t;o
^
t,R)であり、平均は所与の状態関数の線形関数o
^
t=Hx
t、共分散はRである。一例として、上記状態ベクトルと、位置及び速度推定量を返すのみであるセンサについて、行列
【数1】
は以下の通りであってよい。
【0054】
【0055】
観測ベクトルotは、x位置、y位置及び速度vの3つの成分からなる。
【0056】
利用可能なこれら分布を用いて、系は、時刻t+δtから逐次に新規観測を、状態ベクトルxt+δtの洗練された推定量へと同化させることができる。このことは、予測ステップのイテレーションを介したその前に得られた全ての情報と、シーケンスにおける各観測の更新ステップにおいてベイズの法則を引き続き適用することとに基づいて行われる。
【0057】
【0058】
パラメータベクトルのガウス分布と観測のガウス尤度を、線形運動及び観測モデルと共に仮定すれば、これらの方程式を閉形式で解くことができ、予測ステップの標準的なカルマンフィルタ方程式Pt+δt|t=N(xt+δt;μt+δt|t,Σt+δt|t)が得られる。
【0059】
【0060】
この場合、更新されたPt+δt|t+δt=N(xt+δt;μt+δt|t+δt,Σt+δt|t+δt)は、以下のように計算される。
【0061】
【0062】
これら方程式を用いて、単一の物体の現在の状態を逐次観測から効率的に追尾することができる。
【0063】
自律車両の場合のように追尾が移動型センサから行われる場合、系は、エゴ補償と称されるプロセスにおいてセンサ移動を補償する必要がある。系は固定された世界座標系であり、世界座標系は移動車両の座標系からの観測を、予測及び更新ステップが行われる固定された座標系へと変換する必要がある。その一方、一般に、状況解釈及び計画は車両の座標系で行われるため、系は更新された状態推定量を車両座標系に逆変換する必要がある。
【0064】
好ましくは、追尾は直接的に車両の座標系で行われ、従って、系は、状態推定量を、測定が行われる車両の現在の座標系に変換する必要がある。この場合、更新は直接的に車両の座標系で行われてよい。
【0065】
複数物体追尾
【0066】
自律車両の環境は、複数物体追尾アルゴリズム(MOT)を用いて追尾されるべき2つ以上の動的物体を含む場合がある。そのため、センサは相異なる物体について1セットの検出を戻す。例えば、レーダセンサは、レーダ反射に基づいて、複数の検出された物体を戻し、又は複数の物体がカメラ画像において検出されてよい。レーダ反射、カメラ画像又はライダセンサの一般的な物体検出器はフレーム毎に動作するのであって、つまり、時刻tのセンサ読み出しにおける物体検出iについて、その前の読み出しに基づいて推定された物体iの状態ベクトルに対する確立された1対1の対応は存在しない。そのような一般的な直接的な対応関係は、物体がセンサのレンジに出入りするため、確立することができず、物体検出器は、オクルージョン又は単純な検出器の不具合に起因して、偽陽性の物体検出を生じるか、物体検出に失敗する場合がある。
【0067】
{o
t}は、時刻tにおけるk
t回の物体検出のセットとし、o
t,iは時刻tにおける検出iを示す。単一の物体の状態推定量は、カルマン方程式の更新ステップにおいて、追尾される物体に物体検出を精度高く対応付けることに依存する。例えば、時刻t=3の場合を考慮すると、物体jの状態
【数6】
は
【数7】
とは異なるが、
それはデータ連関シーケンスが異なるためである。
【0068】
また、追尾される相異なる物体のデータ連関シーケンスは整合性を有する必要がある。物体検出が単一の追尾される物体と対応付け可能でしかない場合、相異なる物体のデータ連関シーケンスは非交和でなければならず、特定の検出ot,iが、相異なる2つの物体の連関シーケンスにおいて行われることは不可能である。
【0069】
このデータ連関の整合性は、更新ステップ前の複数物体追尾アルゴリズムにおいて確実になる。任意の物体jの予測された状態から生じるあらゆる単一の物体検出iの尤度を
【数8】
として計算する能力により、現在追尾されている物体に対する、k
t+δt回の検出{o
t+δt}のセットの連関であって、最尤整合性連関を選択可能となり、これらとともに更新ステップに進むことができる。
【0070】
複数仮説追尾
【0071】
その一方、何れの時間ステップにおいても、比較可能な尤度について、整合性を有するいくつかのデータ連関の可能性が存在することが考えられる場合がある。この曖昧性は、特に、例えば、都心部の交通に一般的な、多くのオクルージョンを有する雑然としたシーンにおいて生じる。
【0072】
一般に、状態推定量への観測の逐次連関ではデータ連関における誤りを訂正できないため、誤ったデータ連関を選択することは、環境の現在の状態を潜在的に誤って推定し、その結果、安全な動作が計画不可能であるリスクとなることが分かる。
【0073】
このリスクは、単一の整合性データ連関のみを用いて処理するという制限を解除することにより緩和可能である。複数仮説追尾(MHT)アルゴリズムは、各時刻において、最高のM最尤整合性データ連関のリストを維持し、それらのそれぞれを用いて独立して枝分かれプロセスに進む。このようにして、曖昧性を解決するさらなる観測が収集されるまで、同様に高い尤度のデータ連関と、その結果得られる動的環境の状態の推定量は維持される。
【0074】
MHTアルゴリズムで維持される全ての追尾される物体の整合性データ連関は「グローバル仮説」と称される。単一の追尾される物体のデータ連関シーケンスとその結果得られる状態推定量は「ローカル仮説」と称される。従って、グローバル仮説は、整合性を有するローカル仮説のセットを含む。整合性が失われない限り、単一のローカル仮説はいくつかのグローバル仮説に現れてよい。一般に、維持されるグローバル仮説の数は数百単位であり、ローカル仮説の数はそれと同じ単位である。
【0075】
メモリフットプリントを削減するために、いかなるグローバル仮説の一部でないローカル仮説はメモリからプルーニングされる。
【0076】
この手法の困難な点
【0077】
理論的には良好である一方、上記手法はいくつかの欠点を有しており、本開示はこれら欠点に取り組むことを目的とする。
【0078】
一般に、状態ベクトルxの選択は、例えば車両について、一般に、上述したように状態変数として位置、速度、加速度、ヨー角、回転速度が選択される、追尾される物体のキネマティクスに関する先行技術の知識から動機付けられる。直観的である一方、この状態の定義は、更新方程式に近似を導入する必要がある非線形運動モデルを意味する。例えば、時刻t+δtのx位置は、状態変数において非線形である
【数9】
として計算される必要がある。実際、古典的なカルマンフィルタの最も一般的な拡張、いわゆる拡張又は無香料フィルタは、また、多くの場合、運動モデルは、一般に観測者に利用可能ではないパラメータを伴う。例えば、上記車両モデルにおいて、速度v及び回転速度ψ
・は、操舵角αとホイールベース
【数10】
を介して関係付けられる。実際の物体運動及び用いられる物体モデルの偏差は、一般に、ノイズ項Q、いわゆるプロセスノイズにより説明される。モデルの誤特定は、それより大きなノイズ項を用いて説明される必要があり、そのため、推定量がさらに不確かになることは明らかである。
【0079】
また、状態ベクトルのそのような定義は、車両の現在のキネマティクス状態を正確に表現することを主に目的としており、将来の予測に関連する過去の観測からの情報を表現することは目的としていない。例えば、
図1Aの場合、高速道路のオンオフランプで現在の状態の完全なそのキネマティクス状態ベクトルを有する2つの車両が観察される。その一方、このキネマティクス状態は、将来に関する不確かさを減少させる情報を含んでいない。両方の車両に関して、高速道路に進入又はそこから退出することは同等の尤度を有するようにみえることから、これら2つの車両の後方を走行する観察者は、
図1Bに示されているように、前方のシーンの4つの同等の可能性を有する将来の展開に対応する必要がある。
【0080】
運転者の意図は一般に観察不可能であるため、利用可能な交通参加者の過去の軌道の全体又は少なくとも一部を有することは、交通参加者の将来の振舞いに関する予測の不確かさを減少させ、このようにして計画を容易にする。次の
図1C及び
図1Dはこのことを示している。過去の軌道が与えられていることで、シーンの起こり得る将来の展開に関する不確かさは実質的に消失する。
【0081】
起動追尾のナイーブな手法は、動的物体のキネマティクス状態の最新のL推定量のリストを単純に維持することである。追尾が10Hzの周波数で実行される場合、ΔT秒間そのようなリストを維持するためにはL=10ΔT状態ベクトルを維持する必要がある。このようにして、メモリフットプリントは、複数物体追尾におけるあらゆる追尾される物体について、又は複数仮説追尾におけるあらゆる追尾されるローカル仮説について、Lと共に線形にスケーリングする。MHT追尾の先行技術による実装での計算要件の議論については非特許文献1を参照。
【0082】
また、追尾が車両の座標系で行われる必要がある場合、軌道としてのL状態履歴のナイーブなリストは、計算コストがかかるあらゆる単一の時刻のエゴ補償を必要とする。
【0083】
本開示は、その状態としてL時間ステップにおける物体の過去の軌道を用いるように構成されている実施形態を含む。しかし、リストを用いる代わりに、系はLに依存せずに小さいメモリフットプリントでこの軌道のパラメータ表現と、近似を必要とすることなくカルマン更新方程式を用いて、対応する線形運動及びこの表現のパラメータの推定を可能にする観察モデルとを用いる。メモリフットプリントが小さいことにより、組み込みソフトウェアで実行されるリアルタイム対応系において軌道追尾を複数物体追尾アルゴリズムと共に用いることが可能になる。
【0084】
また、この表現におけるエゴ補償は、パラメータのみが変換される必要があるため、計算に関して非常に安価であり、従って、計算コストは追尾される軌道の長さに依存しない。
【0085】
単一又は複数の物体を追尾しているか否か、及び単一又は複数のデータ連関仮説を追尾しているか否かとは関係なく、逐次のベイズのデータ同化のパラダイムに従うあらゆる追尾アルゴリズムのコアは同様である。状態表現、状態を時間的に前方に伝播する運動モデル、及び所与の状態推定量の観察の尤度の評価を可能にする観察モデルが必要とされる。以下、n+1基底関数、それに対応する運動モデル及び観察モデルに基づく、d次元の軌道の提案される表現の数学的詳細が説明される。
【0086】
系は、n+1次元ベクトルΦ(t)=[Φ0(t),Φ1(t),Φ2(t),…,Φn(t)]に設けられる時間Φi(t)のn+1軌道基底関数を考慮する。
【0087】
ここで、系は、制御点の(n+1)xd次元行列Pを定義する。Pの各行はd次元の1つの制御点に対応する。制御点は軌道のパラメータであり、c(t)=ΦT(t)Pここでc(t))はd次元ベクトル、として時刻tにおけるPによりパラメータ化された軌道に沿う位置が求められる。通例通り、上付き文字Tは転置を示す。全てのtについてPが完全にc(t)を特定することは明らかであり、従って、c(t)を追尾したい場合、Pを推定かつ追尾する必要があるだけである。
【0088】
この軌道のエゴ運動補償は、センサ並進及び回転下で自明に変換する制御点を変換するだけで、空間の任意の固定点として得られる。
【0089】
Pの運動モデルは、基底関数から直接計算可能な時間不変線形変換として得られる。
【0090】
観察モデルは、以下のようにして得られる。動的物体のセンサは、一般に、位置情報及び速度等の時間微分を得ることが可能である。本開示において選択される表現のため、軌道のj階微分は本開示の制御点の線形変換dj/dtjc(t)=HjPここでHj=dj/dtjΦT(t)、として与えられる。
【0091】
図2は、いくつかの実施形態による、車両の制御信号を生成する例示的なプロセスを示す。例えば、プロセス200は、ソフトウェアプラットフォームを実装する1つ又は複数の電子装置を用いて行われる。いくつかの実施例において、プロセス200は、自律車両(例えば自車両)における1つ又は複数の電子装置を用いて行われる。いくつかの実施形態において、プロセス200は、クライアントサーバシステムを用いて行われ、プロセス200のブロックは、サーバと1つ又は複数のクライアント装置との間で任意に分割される。従って、プロセス200の部分は本開示においては特定の装置により行われると説明される一方、プロセス200はそれに限定されないと理解されよう。プロセス200において、いくつかのブロックは任意に組み合わされ、いくつかのブロックの順序は任意に変更され、いくつかのブロックは任意に省略される。いくつかの実施例において、プロセス200と組み合わせて追加のステップが行われてもよい。従って、図示(及び以下にさらに詳細に説明される)される動作は本来的に例示的であり、それ自体限定的であると見なされるべきではない。
【0092】
ブロック202において、(例えば、1つ又は複数の電子装置は)物体のパラメータ軌道表現の推定量のセットを得る。物体は車両と同じ環境における交通参加者であってよく、車両、歩行者、サイクリスト、ドローン、動物等であってよい。
【0093】
d次元のパラメータ軌道表現は、時間依存のn+1基底関数及びd次元のn+1制御点を備える。n+1次元ベクトルに設けられる時間τ依存のn+1基底関数は以下の通りである。
【0094】
Φ(τ)=[φ0(τ)φ1(τ)φ2(τ)・・・ φn(τ)]
【0095】
系は、区間τ∈[0,1]における長さΔTの軌道を表現することを目的し、このことは任意のΔTについて、置き換えdτ=dt/ΔTを行うことにより常に可能である。
【0096】
時刻tの任意の時間において、時間スパンΔTについて、d次元における物体の過去の軌道に沿う点は、n+1基底関数と、(n+1)xd次元行列Ptに設けられるd次元のn+1制御点との線形結合により与えられる。
【0097】
c(τ)=ΦT(τ)Pt
【0098】
ここで、
【数11】
は追尾される軌道に沿う点であり、τ=0はt-ΔTに対応し、τ=1は現在の時刻tに対応する。制御点P
tは、物体の移動につれて時間変換する曲線のパラメータである。これらは、空間の点と同様に座標系の移動下で変換するため、制御点は適切な名称である。
【0099】
そのような基底関数の選択例はバーンスタイン多項式である。
【0100】
【0101】
この場合、曲線c(τ)はベジェ曲線として知られ、制御点Ptは特に直観的な解釈を有する。本開示では、この特別な場合を実行例として参照する。その一方、全ての記載が一般的な基底関数に適用可能であることは当業者には理解されるべきである。特に、経験的に測定される軌道を正確に表現するために基底関数を最適化することができる。
【0102】
カルマンフィルタでこの軌道表現を用いることができ、軌道のパラメータについて分布を特定可能であるように、ベクトル
【数13】
が時刻tの状態表現として導入される。単純に、x
tは制御点P
tの(n+1)×d行列の成分をコンカチネートすることにより形成され、第1の2つの成分はp
oに対応し、第2の2つの成分はp
1に対応する等である。この状態についての分布は、
【数14】
における、平均μ
t、共分散Σ
tの多変量ガウス分布を介してモデル化されると仮定することができる。P
t及びx
tは同等であることから、以下の説明はその時刻で最も便利な方の記法を採用する。
【0103】
図3Aは、2次元における3次ベジェ曲線(例えばn=3,d=2)を用いた例を示す。3次ベジェ曲線は4制御点p
0,p
1,p
2,p
3によりパラメータ化される。各制御点は、2つの値で表現される2次元点である。そのような軌道の状態ベクトルx
tのサイズは(n+1)d=8である。図中、確率的態様も示されている。アノテーション点及びそれに対応する楕円は、制御点に対応する平均μ
tと、x
tの成分の95%信頼区間とを示す。実線は軌道の平均推定量
【数15】
を示し、破線はサンプル軌道
【数16】
に対応し、x
t多変量ガウス分布からサンプリングされ、平均はμ
t、共分散はΣ
tである。
【0104】
その後、ブロック206では、自律系の1つ又は複数のセンサにより受信されたデータに基づいてローカル仮説のセットを更新することにより、データ同化ステップが行われる。ブロック206aにおいて、エゴ補償が行われる。パラメータ軌道表現のために、制御点のみ、つまり、状態ベクトルを変換する必要がある。このことは、キネマティクス状態ベクトルのリストを変換するよりも演算コストが大幅に少ない。これは線形変換であることから、本開示では、これを状態密度のパラメータに直接的に適用可能である。基準系はd次元ベクトルだけ移動Δoされ、d×d行列により回転Rされると仮定すると、系はここでの状態密度の共分散行列をまず変換することができる。共分散行列は、回転Rによる影響を受けるのみである。
【0105】
【0106】
状態密度の平均は、まず斉次座標に変換され、つまり、定数であり1に等しい追加次元が制御点に導入される。斉次化された平均ベクトルは以下のように計算される。
【0107】
μh=[μ1,…μd,1,μd+1,…μ2d,1…μnd,…μ(n+1)d,1]
【0108】
その後、d×(d+1)行列が導入される。
【0109】
T=[R-RΔo]
【0110】
平均ベクトルは以下のように変換できる。
【0111】
【数18】
上記のように、Inはn×n単位行列である。
【0112】
ブロック206bにおいて、軌道の制御点の特定の運動モデルを用いて軌道拡張が予測される。
【0113】
時刻tを考えると、系は、τ0=0及びτm=1間の相異なる時刻τi,i∈{1,..,m}の軌道に沿う軌道のm>n+1個のサンプルc(τi)を有する。これらサンプルはm x d行列Cの行として設けられてよい。m x (n+1)行列Bは、Bのi行がΦ(τi)に対応するように構成されてよい。この場合、制御点は、軌道サンプルのサンプルに対する最小二乗法フィッティングとして推定することができる。
【0114】
Pt=(BTB)-1BTC
【0115】
ここで、制御点の運動モデル、つまり、軌道に沿う移動下が検討対象となる。このために、m x (n+1)行列B’は、B’のi行がΦ(τi+δt/ΔT)に対応するように構成されてよい。この場合、系は変換された制御点を得ることができる。
【0116】
【0117】
このようにして、系は、基底関数の選択のみに依存する制御点の線形運動モデルF(δt)を得ることができる。
【0118】
【0119】
ここで、Idはd次元の単位行列である。
【0120】
特に、移動された軌道の端点はc(1)=Φ
T(1)P
t+δtとなる。
図3Bは、これを3次ベジェ曲線の実行例について示す。
【0121】
行列Pt、つまり、時刻tの軌道をパラメータ化する制御点p0,p1,p2,及びp3は、行列Pt+δt、つまり、時刻t+δtの軌道をパラメータ化する制御点p′
0,p′
1,p′
2,及びp′
3に伝播される。この構成により、新しい軌道推定量は古い推定量に丁度時刻tまで従う。
【0122】
この場合、カルマンフィルタ方程式の予測ステップは以下のように記載される。
【0123】
【0124】
ブロック206dにおいて、現在のセンサ読み出しの尤度jは、ローカル仮説の予測された軌道拡張のセットに基づく。一般的な物体検出器は、物体位置、速度及び場合に応じて加速度の測定を行う。これらのタイプのキネマティクス測定は簡単に得られる。i-th階微分は単純に以下の通りである。
【0125】
【0126】
軌道追尾のために、自然な選択は最新、つまり、最後の時点τ=1における軌道の点を考慮することである。ここで、各物体について利用可能なセンサ情報に応じて、観測行列Hを構成することができる。
【0127】
例えば、系は2次元において物体の軌道を追尾し、センサが位置とそれぞれの速度を供給する場合、観測ベクトルo
t=[x,y,v
x,v
y]が形成される。この場合、行がΦ(1)及び
【数23】
である2×(n+1)行列H
0を形成し、上記からカルマン方程式の更新ステップに必要な行列Hを得る。
【0128】
【0129】
これにより、系は最新の観測を用いて軌道を常に更新することにより時間期間ΔTに対する物体の軌道を追尾可能とする必要な全てのパーツを有する。
【0130】
ブロック206dにおいて、M最尤整合性グローバル仮説は、その前のステップで計算された現在のセンサ読み出しの尤度に基づいて形成される。
【0131】
ブロック206eにおいて、M最尤整合性グローバル仮説で用いられないあらゆるローカル仮説はメモリからプルーニングされる。
【0132】
ここで、プロセス206dは、ブロック208でのさらなる処理のために、M最尤整合性グローバル仮説及びそれに対応するローカル仮説のセットを戻す。
【0133】
ブロック208において、系は物体の更新された軌道に基づいて車両の制御信号を決定する。いくつかの実施形態において、系は、物体の更新された軌道に基づいて物体に関連するインテントを決定してよく、これに応じて車両の制御信号を決定してよい。例えば、
図1A~
図1Dを参照して説明したように、軌道履歴を用いて交通参加者のインテント(例えば、高速道路からの退出、高速道路への進入、道路横断、ターンの実行)を決定してよい。物体に関連するインテントに基づいて、系は、物体との衝突を回避するために車両の制御信号を決定してよい。制御信号は、車両を制御する(例えば、速度維持、加速、減速、方向変更等)ために車両に提供又は送信されてよい。
【0134】
いくつかの実施形態において、系は、下流での様々な分析のために更新された軌道を用いてよい。例えば、系は、状況理解のために、更新された軌道を機械学習モデルに入力してよい。例えば、機械学習モデルは、物体の軌道を受信し、物体のインテントを同定し、異常な振舞いを同定し、将来の軌道を予測する等するように構成されてよい。コンパクトなパラメータ表現は、交通シーンの文脈での交通参加者の過去の振舞いを要約するものであるため、自律車両における状況理解のためのAIアルゴリズムのみに好適である。ベジェ表現のコンパクト性に起因して、コンパクトな機械学習モデルを演算に関して効率的に訓練することができ、訓練されたモデルは高速分析を提供することができる。本開示で説明される機械学習モデルは、経験を通してかつデータの使用により自動的に改善する任意のコンピュータアルゴリズムを含む。機械学習モデルは、教師ありモデル、教師なしモデル、半教師ありモデル、自己教師ありモデル等を含んでよい。例示的な機械学習モデルは、線形回帰、ロジスティック回帰、決定木、サポートベクターマシン(SVM)、ナイーブベイズ、ニューラルネットワーク、k平均法、ランダムフォレスト、次元削減アルゴリズム、勾配ブースティングアルゴリズム等を含むが、これらに限定されることはない。
【0135】
いくつかの実施形態において、系は、上記のように物体について複数の仮説を格納する。物体の各仮説はベジェ曲線表現(例えば、曲線をパラメータ化する制御点)を含む。このようにして、更新されたベジェ曲線表現は、物体に関連する多くの仮説のうちの1つとして格納されてよい。
【0136】
いくつかの実施形態において、系は、物体が以上な振舞いをしているか否かを決定するために、物体の更新された軌道を評価する。ベジェ曲線は平滑な曲線であり、典型的な走行軌跡(例えば、ジャークが限定された快適で平滑な軌跡)を良好に表現するため、実際に測定された物体状態の偏差を用いて、他の交通参加者の振舞いの異常を検出できる。いくつかの実施形態において、系は、期待曲線(例えば、ブロック206bで得られるもの)と実際に観察された軌道との間の偏差を決定し、この偏差を所定の閾値と比較する。閾値が超過される場合、系は、物体が異常な振舞い(例えば、無謀運転)を示していると決定してよい。検出された異常に基づいて、系は(例えば、異常物体から離間するために)制御信号を生成してよい。
【0137】
プロセス200を参照して説明した技術は、自車両以外の交通参加者の軌道を表現するベジェ曲線を用いるように構成されている一方、この技術は、ベジェ曲線を用いて自車両自体の軌道を追尾するために適用可能である。また、プロセス200を参照して説明した技術は、ベジェ曲線の使用を含む一方、ベジェ曲線表現は、基底関数の任意の線形結合(例えば、第1基底関数、第2基底関数、第3基底関数等)により置き換え可能であると理解されるべきである。いくつかの実施形態において、機械学習モデル、例えば、ニューラルネットワーク又はガウス過程を用いて基底関数を計算してよい。
【0138】
本開示で説明される動作は、
図4に示される構成要素により任意に実行される。
図4は、1つの実施形態による演算装置の一例を示す。装置400は、ネットワークと接続されているホストコンピュータであってよい。装置400はクライアントコンピュータ又はサーバであってよい。
図4に示されているように、装置400は、任意の好適なタイプのマイクロプロセッサベースの装置であってよく、例えば、パーソナルコンピュータ、ワークステーション、サーバ又はハンドヘルド演算装置(携帯型電子装置)、例えば、電話又はタブレットであってよい。装置は、例えば、1つ又は複数のプロセッサ410、入力装置420、出力装置430、ストレージ440及び通信装置460を含んでよい。入力装置420は及び出力装置430は、一般に、上記のものに対応してよく、コンピュータと接続可能又は統合可能の何れかであってよい。
【0139】
入力装置420は、入力を行う任意の好適な装置であってよく、例えば、タッチスクリーン、キーボードもしくはキーパッド、又は音声認識装置であってよい。出力装置430は、出力を行う任意の好適な装置であってよく、例えば、タッチスクリーン、ハプティクス装置、又はスピーカであってよい。
【0140】
ストレージ440は、格納を行う任意の好適な装置であってよく、例えば、RAMを含む電気、磁気又は光メモリ、キャッシュ、ハードドライブ、又は取り外し可能ストレージディスクであってよい。通信装置460は、ネットワークを通して信号を送信及び受信可能なに二の好適な装置を含んでよく、例えば、ネットワークインタフェースチップ又は装置であってよい。コンピュータの構成要素は、任意の好適な方法で接続されてよく、例えば、物理バス又は無線で接続されてよい。
【0141】
ストレージ440に格納可能であり、プロセッサ410により実行可能なソフトウェア450は、例えば、本開示の(例えば、上記装置において具現化される)機能を具現化するプログラミングを含んでよい。
【0142】
また、ソフトウェア450は、上記のような命令実行システム、装置又はデバイスからソフトウェア関連の命令を取り出し、命令を実行可能な、命令実行システム、装置又はデバイスによる使用又はそれと共に使用される非一時的コンピュータ可読格納媒体内に格納及び/又は移送されてよい。本開示の文脈において、コンピュータ可読格納媒体は、命令実行システム、装置又はデバイスによる使用又はそれと共に使用されるプログラミングを含むか格納可能な任意の媒体、例えば、ストレージ440であってよい。
【0143】
また、ソフトウェア450は、上記のような命令実行システム、装置又はデバイスからソフトウェア関連の命令を取り出し、命令を実行可能な、命令実行システム、装置又はデバイスによる使用又はそれと共に使用される任意の移送媒体内で伝播されてよい。本開示の文脈において、移送媒体は、命令実行システム、装置又はデバイスによる使用又はそれと共に使用されるプログラミングを通信、伝搬又は移送可能な任意の媒体であってよい。移送可読媒体は、電子、磁気、光、電磁気又は赤外線の有線又は無線伝播媒体を含んでよいが、これらに限定されることはない。
【0144】
装置400は、任意の好適なタイプの相互接続通信システムであってよいネットワークと接続されてよい。ネットワークは任意の好適な通信プロトコルを実行してよく、任意の好適なセキュリティプロトコルにより保護されてよい。ネットワークは、ネットワーク信号を送信及び受信可能な任意の構成のネットワークリンク、例えば、無線ネットワーク接続、T1又はT3ライン、ケーブルネットワーク、DSL又は電話線等を備えてよい。
【0145】
装置400は、ネットワーク上で動作するために好適な任意のオペレーティングシステムを実行してよい。ソフトウェア450は任意の好適なプログラミング言語、例えば、C、C++、Java又はPythonで書かれてよい。様々な実施形態において、本開示の機能を具現化するアプリケーションソフトウェアは様々な構成、例えば、クライアント/サーバ構成、ウェブベースのアプリケーション又はウェブサービスとしてウェブブラウザでデプロイされてよい。
【0146】
添付の図面を参照して本開示及び実施例を十分に説明してきたが、様々な変更及び修正が当業者には明らかであることに留意されたい。そのような変更及び修正は、請求項により定義される、本開示及び実施例の範囲内に含まれるものであると理解されるべきである。
【0147】
上記記載は、説明を目的として、特定の実施形態を参照して行われてきた。しかし、上記例示的な説明は網羅的であること又は開示されたまさにその形態に本発明を限定することを意図していない。上記教示から多くの修正及び変形が可能である。実施形態は、技術の原則及びそれらの実際の適用を最もよく説明するために選択及び説明されてきた。これにより、当業者には、考えられる特定の使用に好適な様々な修正を伴う技術及び様々な実施形態を最もよく利用することが可能となっている。
【手続補正書】
【提出日】2023-02-02
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
車両を制御する制御信号を生成する方法において、
前記車両と同じ環境における単一の物体の軌道のパラメータ表現を取得することと、
複数物体及び複数仮説追尾のフレームワーク内で、前記車両の1つ又は複数のセンサにより受信されたデータに基づいて前記単一の物体の軌道の前記パラメータ表現を更新することと、
前記物体の前記更新された軌道に基づいて前記車両を制御する前記制御信号を生成することと、を備える当該方法。
【請求項2】
前記制御信号が、前記物体及び前記車両と同じ環境における少なくとも1つの他の物体の前記更新された軌道に基づいて生成される請求項1に記載の方法。
【請求項3】
前記車両の移動を制御するために前記制御信号を前記車両に供給することをさらに備える、請求項1又は2に記載の方法。
【請求項4】
前記更新された軌道に基づいて前記物体に関連するインテントを決定することをさらに備え、前記制御信号が前記インテントに基づいて決定される請求項請求項1又は2に記載の方法。
【請求項5】
前記インテントが、道路からの退出、道路への進入、車線変更、道路横断、ターンの実行、又はこれらの任意の組み合わせを含む請求項4に記載の方法。
【請求項6】
出力を取得するために、前記更新された軌道を訓練された機械学習モデルに入力することをさらに備え、前記制御信号が、前記訓練された機械学習モデルの前記出力に基づいて決定される請求項1又は2に記載の方法。
【請求項7】
前記機械学習モデルがニューラルネットワークである請求項6に記載の方法。
【請求項8】
前記軌道の前記パラメータ表現を取得することが、メモリから複数の制御点を取り込むことを含む請求項1又は2に記載の方法。
【請求項9】
前記車両の移動に基づいて、前記取得されたパラメータ表現を新しい座標系に変換することをさらに備える請求項8に記載の方法。
【請求項10】
前記取得されたパラメータ表現を変換することが、前記パラメータ表現の前記複数の制御点を前記新しい座標系に変換することを含む請求項9に記載の方法。
【請求項11】
前記パラメータ表現を更新することが、
前記取得されたパラメータ表現と運動モデルとに基づいて期待パラメータ表現を予測することと、
前記期待パラメータ表現を前記車両の前記1つ又は複数のセンサにより受信された前記データと比較することと、
前記比較に基づいて前記パラメータ表現を更新することと、を含む請求項1に記載の方法。
【請求項12】
前記期待パラメータ表現を予測することが、前記期待パラメータ表現の複数の制御点を決定することを含む請求項11に記載の方法。
【請求項13】
前記期待パラメータ表現の前記複数の制御点を決定することが、前記期待パラメータ表現の前記複数の制御点の平均及び/又は共分散を取得することを含む請求項12に記載の方法。
【請求項14】
前記運動モデルが、前記取得されたパラメータ表現を時間期間だけ前方にシフトさせるように構成される線形モデルである請求項11に記載の方法。
【請求項15】
前記パラメータ表現がカルマンフィルタアルゴリズムに基づいて更新される請求項11に記載の方法。
【請求項16】
前記比較に基づいて前記物体が異常であるか否かを決定することをさらに備える請求項11~15の何れか1項に記載の方法。
【請求項17】
前記データが第1データであり、前記更新されたパラメータ表現が第1パラメータ曲線表現である請求項1又は2に記載の方法において、
前記車両の前記1つ又は複数のセンサにより受信された第2データに基づいて前記軌道の前記取得されたパラメータ表現を更新して、第2更新されたパラメータ表現を取得することと、
前記第1更新されたパラメータ表現及び前記第2更新されたパラメータ表現を、前記物体に関連する仮説として格納することと、をさらに備える当該方法。
【請求項18】
前記物体が交通参加者である請求項1又は2に記載の方法。
【請求項19】
1つ又は複数のプロセッサと、
メモリと、
1つ又は複数のプログラムと、を備える車両であって、前記1つ又は複数のプログラムが前記メモリに格納されており、前記1つ又は複数のプロセッサにより実行されるように構成されており、前記1つ又は複数のプログラムが、
前記車両と同じ環境における単一の物体の軌道のパラメータ表現を取得し、
複数物体及び複数仮説追尾のフレームワーク内で、前記車両の1つ又は複数のセンサにより受信されたデータに基づいて前記単一の物体の軌道の前記パラメータ表現を更新し、
前記物体の前記更新された軌道に基づいて前記車両を制御する前記制御信号を生成するための命令を含む当該車両。
【請求項20】
車両を制御する制御信号を生成するシステムにおいて、
1つ又は複数のプロセッサと、
メモリと、
1つ又は複数のプログラムと、を備えるシステムであって、前記1つ又は複数のプログラムが前記メモリに格納されており、前記1つ又は複数のプロセッサにより実行されるように構成されており、前記1つ又は複数のプログラムが、
前記車両と同じ環境における単一の物体の軌道のパラメータ表現を取得し、
複数物体及び複数仮説追尾のフレームワーク内で、前記車両の1つ又は複数のセンサにより受信されたデータに基づいて前記単一の物体の軌道の前記パラメータ表現を更新し、
前記物体の前記更新された軌道に基づいて前記車両を制御する前記制御信号を生成するための命令を含む当該システム。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0147
【補正方法】変更
【補正の内容】
【0147】
上記記載は、説明を目的として、特定の実施形態を参照して行われてきた。しかし、上記例示的な説明は網羅的であること又は開示されたまさにその形態に本発明を限定することを意図していない。上記教示から多くの修正及び変形が可能である。実施形態は、技術の原則及びそれらの実際の適用を最もよく説明するために選択及び説明されてきた。これにより、当業者には、考えられる特定の使用に好適な様々な修正を伴う技術及び様々な実施形態を最もよく利用することが可能となっている。
なお、本願は、特許請求の範囲に記載の発明に関するものであるが、他の態様として以下の構成も包含し得る:
1.
車両を制御する制御信号を生成する方法において、
前記車両と同じ環境における単一の物体の軌道のパラメータ表現を取得することと、
複数物体及び複数仮説追尾のフレームワーク内で、前記車両の1つ又は複数のセンサにより受信されたデータに基づいて前記単一の物体の軌道の前記パラメータ表現を更新することと、
前記物体の前記更新された軌道に基づいて前記車両を制御する前記制御信号を生成することと、を備える当該方法。
2.
前記制御信号が、前記物体及び前記車両と同じ環境における少なくとも1つの他の物体の前記更新された軌道に基づいて生成される上記1に記載の方法。
3.
前記車両の移動を制御するために前記制御信号を前記車両に供給することをさらに備える、上記1又は2に記載の方法。
4.
前記更新された軌道に基づいて前記物体に関連するインテントを決定することをさらに備え、前記制御信号が前記インテントに基づいて決定される上記1~3の何れか1つに記載の方法。
5.
前記インテントが、道路からの退出、道路への進入、車線変更、道路横断、ターンの実行、又はこれらの任意の組み合わせを含む上記4に記載の方法。
6.
出力を取得するために、前記更新された軌道を訓練された機械学習モデルに入力することをさらに備え、前記制御信号が、前記訓練された機械学習モデルの前記出力に基づいて決定される上記1~5の何れか1つに記載の方法。
7.
前記機械学習モデルがニューラルネットワークである上記6に記載の方法。
8.
前記軌道の前記パラメータ表現を取得することが、メモリから複数の制御点を取り込むことを含む上記1~7の何れか1つに記載の方法。
9.
前記車両の移動に基づいて、前記取得されたパラメータ表現を新しい座標系に変換することをさらに備える上記8に記載の方法。
10.
前記取得されたパラメータ表現を変換することが、前記パラメータ表現の前記複数の制御点を前記新しい座標系に変換することを含む上記9に記載の方法。
11.
前記パラメータ表現を更新することが、
前記取得されたパラメータ表現と運動モデルとに基づいて期待パラメータ表現を予測することと、
前記期待パラメータ表現を前記車両の前記1つ又は複数のセンサにより受信された前記データと比較することと、
前記比較に基づいて前記パラメータ表現を更新することと、を含む上記1~10の何れか1つに記載の方法。
12.
前記期待パラメータ表現を予測することが、前記期待パラメータ表現の複数の制御点を決定することを含む上記11に記載の方法。
13.
前記期待パラメータ表現の前記複数の制御点を決定することが、前記期待パラメータ表現の前記複数の制御点の平均及び/又は共分散を取得することを含む上記12に記載の方法。
14.
前記運動モデルが、前記取得されたパラメータ表現を時間期間だけ前方にシフトさせるように構成される線形モデルである上記11~13の何れか1つに記載の方法。
15.
前記パラメータ表現がカルマンフィルタアルゴリズムに基づいて更新される上記11~14の何れか1つに記載の方法。
16.
前記比較に基づいて前記物体が異常であるか否かを決定することをさらに備える上記11~15の何れか1つに記載の方法。
17.
前記データが第1データであり、前記更新されたパラメータ表現が第1パラメータ曲線表現である上記1~16の何れか1つに記載の方法において、
前記車両の前記1つ又は複数のセンサにより受信された第2データに基づいて前記軌道の前記取得されたパラメータ表現を更新して、第2更新されたパラメータ表現を取得することと、
前記第1更新されたパラメータ表現及び前記第2更新されたパラメータ表現を、前記物体に関連する仮説として格納することと、をさらに備える当該方法。
18.
前記物体が交通参加者である上記1~17の何れか1つに記載の方法。
19.
1つ又は複数のプロセッサと、
メモリと、
1つ又は複数のプログラムと、を備える車両であって、前記1つ又は複数のプログラムが前記メモリに格納されており、前記1つ又は複数のプロセッサにより実行されるように構成されており、前記1つ又は複数のプログラムが、
前記車両と同じ環境における単一の物体の軌道のパラメータ表現を取得し、
複数物体及び複数仮説追尾のフレームワーク内で、前記車両の1つ又は複数のセンサにより受信されたデータに基づいて前記単一の物体の軌道の前記パラメータ表現を更新し、
前記物体の前記更新された軌道に基づいて前記車両を制御する前記制御信号を生成するための命令を含む当該車両。
20.
車両を制御する制御信号を生成するシステムにおいて、
1つ又は複数のプロセッサと、
メモリと、
1つ又は複数のプログラムと、を備えるシステムであって、前記1つ又は複数のプログラムが前記メモリに格納されており、前記1つ又は複数のプロセッサにより実行されるように構成されており、前記1つ又は複数のプログラムが、
前記車両と同じ環境における単一の物体の軌道のパラメータ表現を取得し、
複数物体及び複数仮説追尾のフレームワーク内で、前記車両の1つ又は複数のセンサにより受信されたデータに基づいて前記単一の物体の軌道の前記パラメータ表現を更新し、
前記物体の前記更新された軌道に基づいて前記車両を制御する前記制御信号を生成するための命令を含む当該システム。
【外国語明細書】