JP7321983B2 - 情報処理システム、情報処理方法、プログラムおよび車両制御システム - Google Patents

情報処理システム、情報処理方法、プログラムおよび車両制御システム Download PDF

Info

Publication number
JP7321983B2
JP7321983B2 JP2020139082A JP2020139082A JP7321983B2 JP 7321983 B2 JP7321983 B2 JP 7321983B2 JP 2020139082 A JP2020139082 A JP 2020139082A JP 2020139082 A JP2020139082 A JP 2020139082A JP 7321983 B2 JP7321983 B2 JP 7321983B2
Authority
JP
Japan
Prior art keywords
array
coordinate
value
vector
prediction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020139082A
Other languages
English (en)
Other versions
JP2022035033A (ja
Inventor
敦史 川崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2020139082A priority Critical patent/JP7321983B2/ja
Priority to US17/184,661 priority patent/US20220057992A1/en
Publication of JP2022035033A publication Critical patent/JP2022035033A/ja
Application granted granted Critical
Publication of JP7321983B2 publication Critical patent/JP7321983B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/0097Predicting future conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0027Planning or execution of driving tasks using trajectory prediction for other traffic participants
    • B60W60/00274Planning or execution of driving tasks using trajectory prediction for other traffic participants considering possible movement changes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/09Taking automatic action to avoid collision, e.g. braking and steering
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • B60W30/0956Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/0098Details of control systems ensuring comfort, safety or stability not otherwise provided for
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0019Control system elements or transfer functions
    • B60W2050/0028Mathematical models, e.g. for simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Data Mining & Analysis (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Human Computer Interaction (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Molecular Biology (AREA)
  • Multimedia (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Operations Research (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Traffic Control Systems (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)

Description

本発明の実施形態は、情報処理システム、情報処理方法、プログラムおよび車両制御システムに関する。
安全かつ快適な自動車の自動運転および走行支援、並びに、ロボットの自律移動の実現には、建物、フェンス、および、縁石などの静的な障害物だけではなく、他車両および歩行者などの移動体の動きを事前に把握する必要がある。特に車線変更および交差点の横断といったシーンでは、移動体が将来どのように動くかを予測しなければ、自車の安全な行動を決定することができない。
周辺に存在する移動体の将来位置を予測する予測技術は、盛んに検討が行われており、ニューラルネットワークを用いた手法が多く存在する。例えば、マップ(画像)情報からCNN(Convolutional Neural Networks)で特徴を抽出し、軌道の位置情報(ベクトル)の特徴と結合させて予測に用いる技術が提案されている。
特開2016-186446号公報 特開2019-159535号公報
Cui, Henggang, et al. "Multimodal trajectory predictions for autonomous driving using deep convolutional networks." International Conference on Robotics and Automation (ICRA). IEEE, 2019. Rosanne Liu et al., "An Intriguing Failing of Convolutional Neural Networks and the CoordConv Solution", NeurIPS, 2018.
しかしながら、従来技術では、データが適切な形式で表されていないため、このデータを用いた処理が適切に実行できない場合があった。例えば、上記のようにマップ情報から抽出される特徴(マップ特徴)とベクトルの特徴とを結合させる技術では、複数の特徴の次元が不一致となるため、マップ特徴がベクトルに合わせるように変換される。しかし、変換によりマップ特徴の空間的特徴が損なわれ、後段の予測処理が高精度に実行できなくなる場合がある。
実施形態の情報処理システムは、ベクトル取得部と、座標配列生成部と、確率分布配列生成部と、を備える。ベクトル取得部は、n次元のベクトルを取得する。座標配列生成部は、n個のn次元の配列であって、m番目の配列の要素それぞれに、要素のm次元目の座標のインデックスと同じ値の要素値が設定されたn個の座標配列を生成する。確率分布配列生成部は、n個の座標配列それぞれに対応する、確率密度関数の出力値を要素値として含むn個の第1確率分布配列を求め、n個の第1確率分布配列それぞれの対応するn個の要素値を要素ごとに乗算し、乗算結果を要素値とする第2確率分布配列を求める。
第1の実施形態にかかる情報処理システムのブロック図。 座標配列の設定例を示す図。 座標配列を画像の形式で表した例を示す図。 確率分布配列の生成処理の具体例を示す図。 実施形態にかかる車両を示す図。 処理装置のハードウェア構成図。 事前に用意されたマップ情報に従い軌道を予測する例を示す図。 センサ情報のみを使用して軌道を予測する例を示す図。 予測装置の機能ブロック図。 環境マップの一例を示す図。 予測部の機能ブロック図。 マップ情報の正規化の例を示す図。 予測部の機能ブロック図。 識別部のブロック図。 予測処理のフローチャート。 学習処理のフローチャート。 変形例の予測装置の機能ブロック図。
以下に添付図面を参照して、この発明にかかる情報処理システム、情報処理方法、プログラムおよび車両制御システムの好適な実施形態を詳細に説明する。
(第1の実施形態)
より安定した予測を行うために、環境情報として車線中央線などの情報を含んだ高精度マップおよび航空写真画像などを用いて予測を行う手法が提案されている。しかし、このようなマップ情報は事前に用意する必要があり、すべての道路に対して用意することは現実的ではない、また高精度マップの生成は、処理負荷およびコストが大きい。
そこで、事前に用意するマップ情報を使用せずに、移動体(自動車、自律移動ロボットなど)に取り付けられたカメラおよびレーザーセンサなどのセンサから得られる情報のみを使用して、周辺に存在する他の移動体の位置を予測することが求められている。カメラおよびレーザーセンサなど情報を上面図に変換する技術は多く提案されている。しかし、このような上面図は車線中央線などの情報を含まないため、ニューラルネットワークで学習を行うには、特徴の抽出をより的確に行う必要がある。
マップ特徴を変換する技術は、上記のように空間的特徴が損なわれる場合があり、より的確に特徴の抽出を行いたいときには不向きである。
そこで、本実施形態では、軌道を表すベクトルを、マップ(画像)に投影させることが可能な配列の形式に変換する。これにより、例えばマップ(画像)の空間的特徴を損なわずにベクトルと統合し、予測処理などに用いることができる。
軌道の座標系をマップの座標系に変換する変換パラメータが既知であれば、軌道を表すベクトルをマップに投影させることは可能である。しかし変換パラメータのみを用いた変換では、変換後の座標値が小数点以下の値になりうる。従って、マップ上の位置を示すようにするために、変換後の座標値をさらに整数(インデックス)に変換する必要がある。このような処理は微分不可能な処理であるため、例えばニューラルネットワークに組み込むことができない。
また、軌道などを表すベクトルを画像に投影するためにニューラルネットワークを用いる方法も考えられる。しかしニューラルネットワークを用いる場合、内部処理がブラックボックスとなり、正確に投影処理が行われることを保証できない場合がある。
そこで、本実施形態では、微分可能な処理、かつ、少なくとも一部の内部処理が保証できるような処理により、軌道を表すベクトルを画像に投影させることが可能な配列の形式に変換する。
以下では、移動体の軌道を表すベクトルを、マップ(画像)に投影可能な形式に変換する場合を例に説明する。例えば軌道を表すベクトルは2次元のベクトルである。マップは、2次元配列と解釈することができる。適用可能な情報はこれらに限られるものではない。n次元(nは2以上の整数)のベクトルを、n次元配列に変換する処理に適用することができる。
生成される配列は、そのまま後段の処理に用いられてもよいし、他の次元数が同じ情報と統合されてから後段の処理に用いられてもよい。後段の処理は、例えばニューラルネットワークを用いる軌道の予測処理であるが、これに限られるものではない。ニューラルネットワークを用いる他の処理であってもよいし、微分可能な処理を組み込むことが可能なニューラルネットワーク以外の処理であってもよい。
図1は、第1の実施形態にかかる情報処理システムとしての配列生成装置200の機能構成の一例を示すブロック図である。配列生成装置200は、ベクトル取得部201と、座標配列生成部202と、確率分布配列生成部203と、を備える。
ベクトル取得部201は、n次元のベクトル(多次元ベクトル)を取得する。多次元ベクトルの各要素値は、整数でもよいし、小数点以下の数値であってもよい。
座標配列生成部202は、多次元ベクトルを入力として、多次元ベクトルと同じ個数(n個)の座標配列を生成する。座標配列は、多次元ベクトルと同じ次元数(n次元)の配列である。例えば多次元ベクトルが2次元のベクトル(2次元空間上の位置を表すベクトルなど)の場合、座標配列は、2次元で表される座標(例えば、x座標とy座標)ごとの要素値を格納する。座標配列の各次元のサイズは予め定められる。
n個の座標配列の要素値は以下のように設定される。
・m番目(1≦m≦n)の座標配列の要素それぞれは、m次元目の座標のインデックスと同じ値の要素値を設定する。
・インデックスは、0、1、2、・・・、Sm-1である。Smは、m次元目の座標のサイズである。
図2は、n=2の場合の座標配列の設定例を示す図である。図2では、左上を原点とし、右方向がx座標、下方向がy座標となる例が示されている。いずれの座標もサイズは7、すなわち、S1=S2=7である。
1番目の座標配列211の要素それぞれは、その要素のx座標(1次元目の座標)のインデックスと同じ値の要素値が設定される。この結果、y座標の方向には、すべて同じ要素値が設定される。2番目の座標配列212の要素それぞれは、その要素のy座標(2次元目の座標)のインデックスと同じ値の要素値が設定される。この結果、x座標の方向には、すべて同じ要素値が設定される。nが3以上の場合も同様であり、例えば1次元目の座標(x座標など)の方向にインデックスと同じ値の要素値が設定された場合、他の座標の方向には同じ値が設定される。
図3は、座標配列を画像の形式で表した例を示す図である。図3の画像は、要素値を画素値する2次元の画像に相当する。座標配列211に相当する画像は、x座標の方向に画素値が徐々に変化するグラデーション画像となる。座標配列212に相当する画像は、y座標の方向に画素値が徐々に変化するグラデーション画像となる。
図1に戻り、確率分布配列生成部203は、多次元ベクトルと、座標配列生成部202により生成された複数の座標配列と、を入力として、多次元ベクトルの座標が示す位置を確率分布の形式で表した多次元の配列を生成する。確率分布の形式で表した多次元の配列を以下では確率分布配列という。確率分布配列の次元数は、多次元ベクトルおよび座標配列と同じn次元である。
確率分布配列生成部203は、まず、n個の座標配列に含まれるl番目(1≦l≦n)の座標配列それぞれについて、多次元ベクトルのl次元目の値と、座標配列の要素値それぞれとの差分を算出する。確率分布配列生成部203は、算出した差分を入力値として確率密度関数(PDF:Probability Density Function)に入力し、確率密度関数が出力する出力値を、対応する要素の要素値とする確率分布配列(第1確率分布配列)を生成する。確率密度関数は、例えばガウス分布などのように、入力値が0であるときに出力値(確率)が最大となる関数である。この例では、確率密度関数に入力する入力値は、多次元ベクトルと座標配列の要素値とから得られる値(両者の差分)に相当する。
次に、確率分布配列生成部203は、生成されたn個の確率分布配列(第1確率分布配列)それぞれの対応するn個の要素値を要素ごとに乗算し、乗算結果を要素値とする確率分布配列(第2確率分布配列)を生成する。
図4は、確率分布配列の生成処理の具体例を示す図である。図4は、n=2の場合の確率分布配列の生成例を示す。ベクトル401は、入力される2次元のベクトルである。次元ごとに、確率密度関数(PDF)を用いた処理が行われる。
x座標については、確率分布配列生成部203は、ベクトル401のx座標の値と、座標配列211の各要素との差分を算出する。次に、確率分布配列生成部203は、確率密度関数(PDF)に各要素について算出した差分を入力し、出力値(確率)を算出する。算出された出力値は、対応する要素の要素値として設定される。
上記のように、確率密度関数は、入力値が0のとき確率が最大となる関数である。従って、配列のx座標のインデックスの値がベクトル401のx座標の値に近いほど、そのインデックスの配列の要素値(確率)は大きくなる。
確率分布配列生成部203は、y座標についても同様の処理を実行する。確率分布配列生成部203は、x座標について得られた確率分布配列、および、y座標について得らえた確率分布配列の各要素の要素値を乗算した値を、対応する要素の要素値とする確率分布配列(第2確率分布配列)411を生成する。
確率分布配列411は、ベクトル401のx座標およびy座標の値に近いインデックスほど、要素値が大きくなる。要素値412は、ベクトル401が示す座標に近いインデックスに相当する要素値を示す。このように、確率分布配列411は、ベクトル401が示す位置を注視させることができる要素値が設定された配列であると解釈することができる。
nが3以上の場合も同様であり、確率分布配列生成部203は、多次元配列の座標ごとに確率密度関数を用いた処理を実行し、各座標に対して得られた複数の確率分布配列の要素値を要素ごとに掛け合わせる(乗算する)ことで、多次元の確率分布配列を生成する。
確率密度関数は、入力値が0のとき確率が最大となる関数でなくてもよい。確率分布配列生成部203は、ベクトル401の値を平均とする確率密度関数を使用してもよい。例えば確率分布配列生成部203は、l次元目の座標については、多次元ベクトルの同じ次元(l次元目)の座標の値を平均とする確率密度関数を使用する。このような確率密度関数を用いる場合は、多次元ベクトルの値と座標配列の要素値との差分を算出する処理は不要となる。
この例では、確率密度関数に入力する入力値は、座標配列の要素値である。また、確率密度関数は、多次元ベクトルに応じて定められる確率密度関数であると解釈することができる。
確率密度関数の分散は固定値でもよいし、ニューラルネットワークなどのモデルを用いて学習されるパラメータに基づいて求められてもよい。このパラメータを導入しても出力される確率分布配列のピークの位置は変わらない。このため、例えば確率分布配列を生成する処理すべてがブラックボックスとなることはない。
配列生成装置200は、上記のようにして生成された確率分布配列を出力する。この確率分布配列は、多次元ベクトルを変換した配列に相当する。確率分布配列は、上記のように、確率密度関数、減算(差分の算出)、および、乗算(要素値の乗算)などの微分可能な処理で生成される。従って、出力される確率分布配列は、例えばニューラルネットワークを用いた処理に組み込むことができる。
(第2の実施形態)
第2の実施形態では、配列生成装置により生成される配列を応用して移動体の将来位置を予測するシステムとして情報処理システムを実現する例を説明する。本実施形態の情報処理システムは、事前に用意するマップ情報ではなく、カメラおよびレーザーセンサなどのセンサから得られる情報のみから生成されるマップ情報を使用する場合であっても、特徴をより的確に抽出することが可能となる。
移動体は、例えば、道路に設けられたレーンに沿って移動する自動車またはモータバイク等の車両である。移動体は、自動車またはモータバイクに限られず、例えば、レーンに沿って移動するロボットであってもよい。移動体は、船舶等の水上のレーンを移動する物体であってもよい。以下では、主に移動体が車両である場合を例に説明する。
図5は、実施形態にかかる車両10を示す図である。車両10は、処理装置12を搭載する。処理装置12は、例えば専用または汎用コンピュータを含む装置である。処理装置12の少なくとも一部の機能は、車両10に搭載されず、車両10とネットワークを介して接続されるクラウド等の他装置に搭載されてもよい。車両10は、例えば人による運転操作に応じて走行する通常車両であってもよいし、人による運転操作を受けずに自動的に走行することができる(自律走行することができる)自動運転車両であってもよい。なお、処理装置12は、車両10に限らず、路側機等の他の装置に設けられてもよい。
図6は、実施形態にかかる処理装置12のハードウェア構成の一例を示す図である。処理装置12は、記憶装置21と、入力装置22と、表示装置23と、センサ装置24と、通信装置25と、車両制御装置26と、情報処理装置30とを備える。
記憶装置21は、ハードディスクドライブ、光ディスクドライブまたはフラッシュメモリ等の半導体メモリ素子等である。記憶装置21は、処理装置12により実行されるプログラムおよび処理装置12が用いるデータを記憶する。
入力装置22は、ユーザからの指示および情報入力を受け付ける。入力装置22は、例えば、操作パネル、マウスまたはトラックボール等のポインティングデバイス、あるいは、キーボード等の入力デバイスである。
表示装置23は、ユーザに対して各種の情報を表示する。表示装置23は、例えば、液晶表示装置等の表示デバイスである。
センサ装置24は、車両10の周囲の状況を検知する1または複数のセンサを有する。例えば、センサ装置24は、車両10の周囲に存在する移動体(例えば他車両)の位置、速度、加速度、角速度および角加速度を検出する。さらに、センサ装置24は、車両10の周囲に存在する移動体の進行方向を示す方向指示情報を検出する。例えば、センサ装置24は、レーザー光を用いて距離を検出する距離センサ(レーザーセンサ、LiDARなど)を有する。センサ装置24は、移動体の位置および速度を検出するミリ波センサを有してもよい。また、センサ装置24は、周囲の物体までの距離を音波によって探知するソナーを有してもよい。また、例えば、センサ装置24は、周囲の物体を撮像するカメラを有してもよい。カメラは、単眼カメラおよびステレオカメラなどの、どのような形式のカメラであってもよい。
通信装置25は、無線通信により外部装置と情報を送受信する。通信装置25は、車両10の外部装置(例えば路側機)に設けられたセンサによる、車両10の周囲に存在する移動体の位置、速度、加速度、角速度、角加速度および方向指示情報の検出結果を取得する。また、通信装置25は、車両10の周囲に存在する移動体と直接通信を行うことにより、例えば車車間通信を行うことにより、移動体の位置、速度、加速度、角速度、角加速度および方向指示情報を取得してもよい。
車両制御装置26は、車両10を駆動させるための駆動機構を制御する。例えば、車両10が自動運転車両である場合には、予測装置40により予測された移動体の位置、センサ装置24から得られる情報およびその他の情報に基づいて周辺の状況を判断して、アクセル量、ブレーキ量および操舵角等を制御する。また、車両10が人による運転操作を介して走行する通常車両の場合、車両制御装置26は、操作情報に応じて、アクセル量、ブレーキ量および操舵角等を制御する。
情報処理装置30は、例えば、専用または汎用の1または複数のコンピュータである。情報処理装置30は、記憶装置21、入力装置22、表示装置23、センサ装置24、通信装置25および車両制御装置26を管理および制御する。情報処理装置30は、メモリ31と、1または複数のハードウェアプロセッサ32とを有する。
メモリ31は、例えば、ROM33(Read Only Memory)と、RAM34(Random Access Memory)とを含む。ROM33は、情報処理装置30の制御に用いられるプログラムおよび各種設定情報等を書き換え不可能に記憶する。RAM34は、SDRAM(Synchronous Dynamic Random Access Memory)等の揮発性の記憶媒体である。RAM34は、1または複数のハードウェアプロセッサ32の作業領域として機能する。
1または複数のハードウェアプロセッサ32は、メモリ31(ROM33およびRAM34)にバスを介して接続される。1または複数のハードウェアプロセッサ32は、例えば、1または複数のCPU(Central Processing Unit)を含んでもよいし、1または複数のGPU(Graphics Processing Unit)を含んでもよい。また、1または複数のハードウェアプロセッサ32は、ニューラルネットワークを実現するための専用の処理回路を含む半導体装置等を含んでもよい。
1または複数のハードウェアプロセッサ32は、RAM34の所定領域を作業領域としてROM33または記憶装置21に予め記憶された各種プログラムとの協働により各種処理を実行することにより、予測装置40として機能する。情報処理装置30または処理装置12が、予測装置40に相当すると解釈することもできる。予測装置40の機能の詳細は後述する。
予測装置40として機能させるためのプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD-R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
さらに、プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、プログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
車両10、処理装置12、または、情報処理装置30が、第2の実施形態の情報処理システムに相当すると解釈することができる。
ここで、マップ情報の例について説明する。図7は、レーン情報を含む事前に用意されたマップ情報に従い車両(移動体の一例)の軌道を予測する例を示す図である。図8は、事前に用意されたマップ情報を使用せずにセンサ装置24からの情報(センサ情報)のみを使用して軌道を予測する例を示す図である。レーン情報は、移動体が走行可能な軌道を示す情報である。軌道は、複数の時刻の移動体の位置を示す情報である。
図7に示すように、一般的に移動体61はレーン(破線)に沿って移動する。従って、事前に用意されたマップ情報を用いる軌道の予測では、加減速およびレーンの選択問題は生じるものの、移動体61の行動範囲は絞ることができる。
センサ情報のみを用いた場合に使用できるマップ情報の一例として、グリッド状に障害物の有無を示す障害物マップがある。図8は、このような障害物マップの例を示す。例えば障害物が存在しないグリッドは白で表され、障害物が存在しないグリッドは黒で表され、障害物が存在するか否か不明なグリッドは灰色で表される。図8のような障害物マップを用いる軌道の予測では、障害物が存在しない領域(白色領域)を移動体61が動くことはわかるが、行動範囲が広いため移動体61が通るべき領域を絞ることができず(矢印)、予測が不安定になる。
そこで本実施形態では、特徴をより的確に抽出し、より高精度に軌道を予測可能とするため、配列生成装置により生成される配列を用いて移動体の軌道を予測する。以下、本実施形態の予測装置40の機能の詳細について説明する。
図9は、本実施形態にかかる予測装置40の機能構成例を示すブロック図である。図9に示すように、予測装置40は、移動体情報取得部101と、環境マップ取得部102と、真値取得部103と、予測部104と、識別部105と、学習部106と、配列生成装置200と、を備える。
移動体情報取得部101は、予測対象とする移動体(第1移動体)を含む1以上の移動体の位置を示す移動体情報を取得する。例えば移動体情報取得部101は、センサ装置24、車車間通信、および、路車間通信などによって移動体情報を取得する。路車間通信は、例えば路側器などの外部装置と、車両10との間の通信である。移動体情報の取得方法はこれに限られず、どのような方法であってもよい。
移動体情報は、さらに、移動体の向き(角度など)、速度、加速度、角速度、角加速度、これらの値(向き、速度、加速度、角速度および角加速度)それぞれの分散、移動方向(方向指示器の情報など)、および、識別情報(物体IDなど)のうち少なくとも1つを含んでもよい。移動体情報取得部101は、例えば、移動体情報を時刻ごとに取得し、時系列で取得した移動体情報を物体IDごとに記憶装置21などに記憶する。
環境マップ取得部102は、環境情報と移動体情報とを含む環境マップ(環境マップ情報)を取得する。環境マップ取得部102は、例えば、環境情報を取得し、取得した環境情報と、移動体情報取得部101により取得された移動体情報と、をマップ上に表したマップ情報である環境マップを生成する。例えば環境マップ取得部102は、センサ装置24から得られる情報のみを使用して環境情報を取得する。環境情報は、予測対象とする移動体の周辺の環境を示す情報である。
環境マップは、カメラにより撮像された画像を変換した鳥瞰画像の形式であってもよい。環境マップは、距離センサによる検出結果を障害物マップに変換した形式であってもよい。鳥瞰画像の場合、複数のカメラにより撮像された複数の画像を重ね合わせて、移動体の全周囲を表現した1枚の画像として環境マップが与えられてもよい。
環境マップは、道路、歩道、縁石、車両、人物、および、道路マーキングなどの属性情報を含んでもよい。属性情報は、カメラにより撮像された画像、および、距離センサによる検出結果である点群情報から、物体検出、および、セマンティックセグメンテーションなどの技術を使用して求められる。
環境マップの各グリッドは複数の次元の情報で表される。各次元は、環境情報および属性情報のいずれかを示す。属性情報の表現形式はどのような形式であってもよい。例えば、複数次元のうち、1次元のみが1で残りが0であるワンホット表現であってもよい。複数次元それぞれに対して、セマンティックセグメンテーションで得られる、対応する属性の尤度が設定されてもよい。
図10は、環境マップの一例を示す図である。図10は、左側に示すような道路状況に対して生成される環境マップ821の例を示している。図10の例に示す道路状況では、車両10に相当する車両801の周辺に、他の移動体である車両811、812が存在する。
環境マップ821は、車両801の上方から観察した場合の障害物の有無を複数のグリッドで表したマップ情報である。各グリッドは、障害物の有無を0~1の確率値で表現した情報が対応づけられる。環境マップ821では、障害物が存在しないグリッドは白(確率値=0)で表され、障害物が存在しないグリッドは黒(確率値=1)で表され、障害物が存在するか否か不明なグリッドは確率値に応じた濃度の灰色で表される。
例えば、車両10を中心として光線(レーザー光など)を照射したとき、光線が到達した物体(移動体または障害物)に対応するグリッドには1(障害物あり)が設定され、車両10から物体までの間に対応する、物体が存在しないグリッドには0(障害物なし)が設定される。光線がいずれの物体にも到達しない場合は、その光線が通過するグリッドには例えば0.5(不明)が設定される。
環境マップ取得部102は、障害物が存在する位置に曖昧さを含むように環境マップを生成してもよい。例えば物体が存在するグリッドを中心とした確率分布により障害物の有無が表されてもよい。また、環境マップ取得部102は、予測対象とする移動体を除いた物体のみの有無を表す環境マップを生成してもよい。
図9に戻り、真値取得部103は、予測部104が予測に用いる予測モデル(ニューラルネットワークなど)の学習時に必要となる移動体の将来位置の真値を取得する。真値は、位置、移動体の向き(角度など)、速度、加速度、角速度および角加速度のうち少なくとも1つを含む。真値はどのように作成されてもよい。例えば真値は、人手で教示することにより作成されてもよい。移動体情報取得部101で取得され、蓄積された移動体情報が、真値の作成に用いられてもよい。予測する時刻分の真値が必要となる。
予測部104は、移動体情報および環境マップから、移動体の将来位置を予測し、移動体の予測軌道を出力する。将来位置は、位置の座標で表されてもよいし、例えば現在の位置からの移動量で表されてもよい。例えば予測部104は、環境マップと、1以上の時刻に取得された移動体情報とから、移動体の1以上の位置を予測する。予測部104は、例えば、環境マップおよび移動体情報を入力して移動体の位置の予測結果を出力するニューラルネットワークなどの予測モデルを用いて、移動体の位置を予測する。
なお、予測対象とする移動体は1つに限られず、複数であってもよい。予測部104は、予測対象とする1以上の移動体それぞれについて、軌道を予測して出力する。1以上の移動体それぞれに対して予測部104が割り当てられ、各予測部104が対応する移動体の軌道予測を行ってもよい。予測対象とする移動体は、車両10自体であってもよい。例えば、移動体情報取得部101は、車車間通信および路車間通信などによって車両10自体の移動体情報を取得する。
学習部106は、予測部104が用いる予測モデル(ニューラルネットワーク)の学習を行う。なお、事前に学習された予測モデルが用いられる場合は、予測装置40は学習部106を備えなくてもよい。学習部106による学習処理の詳細は後述する。
次に、予測部104の機能の詳細について説明する。予測部104は、推論時と学習時とで挙動が異なる。図11は、推論時における予測部104の詳細な機能構成例を示すブロック図である。図11に示すように、予測部104は、時系列特徴抽出部501と、空間特徴抽出部502と、時空間特徴統合部503と、サンプリング部504と、軌道生成部505と、を備える。
時系列特徴抽出部501は、移動体情報から時系列特徴を抽出して出力する。時系列特徴抽出部501は、移動体情報取得部101により取得された移動体情報である位置、角度、速度、角速度、加速度および角加速度のうち少なくとも1つを含む1次元のベクトルを1時刻以上にわたり取得したデータ(入力データ)を入力する。時系列特徴抽出部501が出力する時系列特徴は、移動体の時系列における移動変化量を特徴化した情報である。
時系列特徴抽出部501は、例えばリカレントニューラルネットワークおよび全結合層を含み、上記のような入力データを繰り返し入力する。リカレントニューラルネットワークの種類として、単純再帰型ネットワークであるSimple RNN、LSTM(Long short term memory)、および、GRU(Gated recurrent unit)などを用いてもよい。
空間特徴抽出部502は、移動体情報取得部101により取得された移動体情報である位置および角度と、環境マップ取得部102により取得された環境マップと、を入力データとして入力し、空間特徴を出力する。空間特徴は、移動体の周辺情報を特徴化した情報である。例えば空間特徴抽出部502は、この入力データを入力して空間特徴を出力するニューラルネットワークを用いて、入力データに対する空間特徴を求める。
環境マップの座標系は、車両10または外部装置のセンサの取り付け位置を中心としている。このため、ニューラルネットワークの入力データとして用いる場合には、移動体ごとに座標系が正規化される必要がある。すなわち空間特徴抽出部502は、基準時刻(例えば現在時刻)の移動体情報の位置および角度を用いて、環境マップの切り抜きおよび回転を行う。
図12は、移動体ごとのマップ情報の正規化の例を示す図である。図12では、車両901、902を中心とし、進行方向が上向きになるように事前に定めた大きさの矩形で切り抜きと回転が行われる。矩形1101、1102は、それぞれ車両901、902に対して正規化されたマップ情報の例である。
正規化する前のマップ情報に含まれない領域が正規化後のマップ情報の範囲内となる場合、空間特徴抽出部502は、予め定められた値、または、隣接する領域の値などから推定した値を設定してもよい。例えば、「0」、「0.5(障害物マップでの不明)」、または、「1」が設定される。
上記の正規化方法は一例であり、これに限られるものではない。例えば、移動体の前方範囲のみを矩形を切り抜く方法、および、回転処理を施さない方法などを正規化方法として採用してもよい。
空間特徴抽出部502は、正規化した環境マップをニューラルネットワークに入力する。ニューラルネットワークは例えばCNNおよび全結合層で構成されており、1次元のベクトルに縮約した空間特徴を出力する。
時空間特徴統合部503は、時系列特徴抽出部501により抽出された時系列特徴と空間特徴抽出部502により抽出された空間特徴と、を入力データとして入力し、両者を統合した特徴量に相当する時空間特徴を出力する。例えば時空間特徴統合部503は、これらの入力データを入力して時空間特徴を出力するニューラルネットワークを用いて時空間特徴を求める。時系列特徴および空間特徴はいずれも1次元のベクトルであるため、これらを次元方向に連結した入力データを入力し、時空間特徴を出力する全結合層を含むニューラルネットワークを用いることができる。
サンプリング部504は、1次元以上の多次元正規分布内でランダムサンプリングを行い、軌道予測のためのサンプリング値を生成する。サンプリング値は、軌道の一連の動きを多次元正規分布内で表現した潜在変数から得られる。潜在変数は、移動体の軌道の特徴を表す多次元正規分布により表現されると解釈することができる。複数のサンプリング値をサンプリングすれば、尤もらしい将来の軌道の仮説を特徴化した軌道を複数予測することができる。すなわち、軌道生成部505で複数の軌道を出力させる場合、サンプリング部504は複数のサンプリング値をサンプリングする。潜在変数を表す多次元正規分布は、予測部104で用いられるニューラルネットワークの学習と併せて学習される。多次元正規分布の学習方法の詳細は後述する。
軌道生成部505は、サンプリングされたサンプリング値を入力として予測軌道を生成する。サンプリング部504でランダムサンプリングを行った回数(サンプリング値の個数)が、軌道生成部505で出力される予測軌道の個数となる。
軌道生成部505は、時空間特徴統合部503により得られた時空間特徴と、サンプリング部504により得られたサンプリング値と、を入力データとして入力し、予測軌道を出力する。軌道生成部505は、サンプリング値ごとに予測軌道を生成する。1以上のサンプリング値それぞれに対して軌道生成部505が割り当てられ、各軌道生成部505が対応するサンプリング値に対する軌道予測を行ってもよい。
例えば軌道生成部505は、上記の入力データを入力して予測軌道を出力するニューラルネットワークを用いて予測軌道を求める。時空間特徴およびサンプリング値はいずれも1次元のベクトルであるため、これらを次元方向に連結した入力データを入力し、予測軌道を出力するニューラルネットワークを用いることができる。
軌道生成部505が用いるニューラルネットワークは、例えばリカレントニューラルネットワークと全結合層とを含む。リカレントニューラルネットワークは、指定された予測時間に達するまでタイムステップごとに繰り返し演算を行う。各タイムステップにおけるリカレントニューラルネットワークの入力は、時空間特徴と潜在変数とを連結した同一の入力データである。リカレントニューラルネットワーク内の内部変数は、繰り返し演算を行うことで逐次更新される。
各タイムステップにおけるリカレントニューラルネットワークの全結合層からの出力は、将来の位置を表す座標値、または、将来の位置の分布を表す情報である。位置を表す座標値は、例えばx座標値およびy座標値の2次元の情報である。位置の分布を表す情報は、例えば、位置のピークを表す2次元の座標値、分散を表す2次元の値、および、相関係数を表す1次元の値を含む計5次元の情報である。
指定された予測時間に達するまでタイムステップごとに繰り返し演算が行われることで、将来の予測位置の集合は1本の予測軌道となる。軌道生成部505は、このような演算をサンプリング値ごとに行い、サンプリング値の個数分の予測軌道を生成する。
なお、これまでは予測部104が備える機能を各部(時系列特徴抽出部501、空間特徴抽出部502、時空間特徴統合部503、サンプリング部504、軌道生成部505)に分けて説明したが、これらの機能の一部または全部は一体化されてもよい。例えば、各部が用いるニューラルネットワークを統合した1つのニューラルネットワークが、予測部104による軌道予測のためのニューラルネットワークとして用いられてもよい。
次に、予測部104が用いるニューラルネットワークの学習部106による学習方法について説明する。図13は、学習時における予測部(以下、予測部104bとする)の詳細な機能構成例を示すブロック図である。図13に示すように、予測部104bは、時系列特徴抽出部501、501bと、空間特徴抽出部502と、時空間特徴統合部503と、潜在変数抽出部504bと、軌道生成部505と、を備える。推論時と同じ構成については同一の符号を付し説明を省略する。
時系列特徴抽出部501bは、移動体情報の真値(移動体の軌道の真値)を入力し、移動体情報の真値に対する時系列特徴を出力する。移動体情報の真値は、将来時刻での移動体の位置、角度、速度、角速度、加速度および角加速度のうち少なくとも1つを含む1次元のベクトルを1時刻以上にわたり取得したデータである。例えば時系列特徴抽出部501に移動体情報を順次入力した後に、時系列特徴抽出部501のリカレントニューラルネットワークと同じパラメータ(重みなど)を持つ時系列特徴抽出部501bのカレントニューラルネットワークに真値を入力していくことで、真値に相当する軌道の時系列特徴を抽出することができる。以下では、真値に相当する軌道を真値軌道という場合がある。
潜在変数抽出部504bは、ニューラルネットワークを用いて、真値軌道の時系列特徴が1次元以上の多次元正規分布に近似した潜在変数を抽出する。ニューラルネットワークは、真値軌道の時系列特徴を全結合層に入力して、1次元以上の平均と分散とに分けて出力することで多次元正規分布を表現する。平均と分散とにより表される分布と、多次元正規分布との誤差を示す損失が、学習の損失関数に加えられる。これにより、真値軌道の時系列特徴を近似した多次元正規分布を求めることができる。分布間の誤差を示す損失は、例えば、KL Divergence距離を用いることができる。
潜在変数抽出部504bは、例えばReparameterization trickを使用して、軌道生成部505へ入力するためのサンプリング値を生成する。潜在変数抽出部504bで生成した平均をμ、分散をΣとしたとき、サンプリング値は以下の(1)式で表現できる。
μ=√Σ×N(0,I) ・・・(1)
ここで、Iは単位行列である。N(0,I)は、平均μ=0、分散Σ=1の多次元正規分布内におけるランダムサンプリングを表す。このように構成することで、潜在変数からのサンプリングを、逆伝播可能な形式で表現できる。
学習部106は、損失関数を最小化するように学習を行う。損失関数は、上記の分布間の損失(KL Divergence距離など)に加えて、軌道生成部505で生成された予測軌道と真値軌道との誤差を示す損失(予測軌道の損失)を含む。
例えば軌道生成部505の出力が位置の分布を表す情報(2次元正規分布など)の場合、各タイムステップで出力された将来位置と分散と相関係数とにより表される分布(2次元正規分布など)内において、真値となる位置(真値位置)が存在する確率が最大(マイナスをつけて最小)となるように、予測軌道の損失が設計される。また、軌道生成部505の出力が位置を表す座標値の場合、出力された座標値と真値位置との絶対誤差または自乗誤差を最小化するように、予測軌道の損失が設計される。
配列生成装置200および識別部105も学習時にのみ用いられる。配列生成装置200は、予測部104で生成した予測軌道(予測ベクトル)を環境マップと同じサイズである確率分布配列(予測配列)に変換する。また、真値取得部103で取得した真値軌道(真値ベクトル)を環境マップと同じサイズである確率分布配列(真値配列)に変換する。
識別部105は、マップ情報(環境マップ)と、配列生成装置200で生成した予測軌道の確率分布配列と、真値軌道の確率分布配列と、を入力データとして入力とし、真値か予測値かを示す確率を出力する。入力となる確率分布配列は真値軌道および予測軌道ともに時刻ごとに与えられる。例えば識別部105は、上記の入力データを入力して確率を出力するニューラルネットワークなどの識別モデルを用いて、確率を出力する。真値か予測値かを示す確率は、入力された軌道(予測軌道または真値軌道)が正しいか否かを示す情報と解釈することができる。
図14は、識別部105の構成例を示すブロック図である。図14に示すように、識別部105は、空間特徴抽出部601と、空間特徴統合部602と、時空間特徴抽出部603と、を備えている。
空間特徴抽出部601は、環境マップを入力データとして入力し、空間特徴を出力する。空間特徴は、移動体の周辺情報を特徴化した情報である。例えば空間特徴抽出部601は、この入力データを入力して空間特徴を出力するニューラルネットワークを用いて、入力データに対する空間特徴を求める。このニューラルネットワークは、予測部104に含まれる空間特徴抽出部502が用いるニューラルネットワークとは異なるパラメータを持つ。
空間特徴統合部602は、空間特徴抽出部601で抽出された空間特徴と確率分布配列(真値軌道または予測軌道)とを入力し、チャンネル方向に連結する。空間特徴のサイズ(2次元で表される各座標のサイズ)と、確率分布配列のサイズは同じであるため連結が可能である。確率分布配列による連結を行うことで、空間特徴の空間を崩すことなく微分可能な状態で位置の予測値(予測軌道)および位置の真値(真値軌道)を追加することができる。
確率分布配列は時刻ごとに存在するため、空間特徴統合部602は、各時刻で空間特徴と確率分布配列とを連結する。空間特徴統合部602は、各時刻で同一の環境マップを用いる。これにより、時刻数分の3次元の空間特徴が生成される。
時空間特徴抽出部603は、時刻数分の空間特徴から、入力された空間特徴が予測値であるか、真値であるかを示す確率を出力する。例えば時空間特徴抽出部603は、畳み込み(Convolution)とLSTM(Long short term memory)とを組み合わせたConvolutional LSTMで構成され、空間特徴を再帰的に入力する。
時空間特徴抽出部603は、例えば、時刻ごとに同一のパラメータを持つCNN(Convolutional Neural Networks)、全結合層、および、シグモイド関数を用いて真値か予測値かを示す確率を出力する。時空間特徴抽出部603は、Convolutional LSTMの最終時刻の出力のみに基づいて、CNN、全結合層、および、シグモイド関数を用いて真値か予測値かを示す確率を出力してもよい。時空間特徴抽出部603は、真値軌道と予測軌道に対してそれぞれ動作するが、同一のパラメータを持つニューラルネットワークを使用する。
識別部105は、深層学習におけるGAN(Generative Adversarial Network)のDiscriminatorの働きを担っている。本実施形態では、GANの枠組みを適用することにより、識別部105および予測部104が学習される。
すなわち学習部106は、ネットワーク全体の学習(後述)を行う際に、予測部104(GANにおけるGenerator)、および、識別部105を交互に学習する。予測部104の学習時には、学習部106は、識別部105のネットワークのパラメータを固定し、予測軌道を真値であると識別する確率が高くなるように学習を行う。識別部105の学習時には、学習部106は、予測部104のネットワークのパラメータを固定し、識別部105で出力される予測軌道が真値であると識別する確率が低くなり、真値軌道を真値であると識別する確率が高くなるように学習を行う。
GANでは、Discriminatorの学習、および、Generatorの学習を交互に行うことで、Generatorの精度が向上する。本実施形態では、識別部105をDiscriminatorとし、予測部104をGeneratorとしてGANを適用することで、予測部104による軌道予測の精度を向上させる。
GANの枠組みを用いることにより、例えば、事前に用意するマップ情報を用いずにレーン中央線などの情報を含まない環境マップで軌道を予測する場合であっても、より効果的な特徴を抽出することが可能となる。また、配列生成装置200を用いることにより、ベクトルで表現された軌道情報を画像で表現されたマップ情報に合わせることができる。この結果、空間的特徴を損なわずに保持することが可能となる。
学習部106によるネットワーク全体の学習について説明する。学習部106は、潜在変数抽出部504bで得られた多次元分布を多次元正規分布に近づけるためのKL Divergence距離と、軌道生成部505で得られた予測軌道と真値軌道との誤差と、識別部105が出力する確率と、を最適化する。
上述したように、学習部106は、予測部104(予測モデル)および識別部105(識別モデル)を交互に学習する。識別部105に予測軌道を入力したときに出力される確率をpとし、識別部105に真値軌道を入れたときに出力される確率をpとする。
予測部104の学習時には、学習部106は、識別部105のネットワークのパラメータを固定する。このとき損失関数は、KL Divergence距離と、軌道生成部505で得られた予測軌道と真値軌道との誤差と、予測軌道を真値と識別する確率が高くするための損失と、の3つを組み合わせる。予測軌道を真値と識別する確率が高くするための損失は、例えば-log(p)で表現される。
一方、識別部105の学習時には、学習部106は、予測部104のネットワークのパラメータを固定する。学習部106は、識別部105が予測軌道を真値と識別する確率が低くなり、真値軌道を真値と識別する確率が高くなるように学習を行う。このとき損失関数は、例えば{-log(1-p)}-log(p)で表現される。
以上の構成により、配列生成装置200を応用して移動体の将来位置を予測するシステムを実現することができる。
次に、このように構成された本実施形態にかかる予測装置40による予測処理の流れについて説明する。図15は、本実施形態における予測処理の一例を示すフローチャートである。
移動体情報取得部101は、センサ装置24などから移動体情報を取得する(ステップS101)。環境マップ取得部102は、環境マップを取得する(ステップS102)。予測部104は、移動体情報および環境マップを用いて、移動体の軌道を予測する(ステップS103)。予測部104は、予測により得られた予測軌道を出力する(ステップS104)。その後、ステップS101に戻り処理が繰り返される。
次に、このように構成された本実施形態にかかる予測装置40による学習処理の流れについて説明する。図16は、本実施形態における学習処理の一例を示すフローチャートである。
学習時に用いられる予測部104b(時系列特徴抽出部501、空間特徴抽出部502、時空間特徴統合部503)は、移動体情報および環境マップを用いて時空間特徴を算出する(ステップS201)。また予測部104b(時系列特徴抽出部501b)は、移動体情報の真値を用いて時系列特徴を算出する(ステップS202)。
予測部104b(潜在変数抽出部504b)は、ステップS202で算出された時系列特徴から潜在特徴を算出する(ステップS203)。予測部104bは、ステップS201で算出された時空間特徴およびステップS203で算出された潜在特徴から軌道を予測する(ステップS204)。
配列生成装置200は、予測軌道と真値軌道とを入力し、それぞれについて確率分布配列を生成する(ステップS205)。
学習部106は、予測軌道と真値軌道との誤差を示す損失、分布間の誤差を示す損失、および、予測軌道を真値と識別する確率が高くするための損失と、を含む損失関数を最小化するように学習処理を実行する(ステップS206)。学習部106は、学習が終了したか否かを判定する(ステップS207)。例えば学習部106は、損失の改善の大きさが閾値より小さくなったか、および、学習の回数が上限値に達したか否か、などにより、学習の終了を判定する。
学習が終了していない場合(ステップS207:No)、ステップS201に戻り、新たな学習データに対して処理が繰り返される。学習が終了したと判定された場合(ステップS207:Yes)、学習処理を終了する。
(変形例)
図17は、変形例にかかる予測装置40-2の機能構成例を示すブロック図である。図17に示すように、予測装置40-2は、移動体情報取得部101と、環境マップ取得部102と、真値取得部103と、予測部104と、学習部106-2と、配列生成装置200と、を備える。
本変形例は、識別部105を備えないこと、および、学習部106-2の機能が、第2の実施形態の予測装置40と異なっている。他の構成は第2の実施形態の予測装置40の構成を示す図9と同一であるため、同一の符号を付し説明を省略する。
なお本変形例では、配列生成装置200は、予測軌道のみに対して確率分布配列を生成する。
本変形例では識別部105-2が備えられないため、学習部106-2は、予測軌道を真値と識別する確率が高くするための損失の代わりに、確率分布配列の最適化に用いるための損失を用いて学習を行う。確率分布配列の最適化に用いるための損失は、例えば、真値軌道を環境マップ上に投影した画像と、確率分布配列と、の間の要素ごとの絶対誤差または自乗誤差を用いることができる。学習部106-2による学習処理の流れは図16と同様である。
以上のように、実施形態の情報処理システムは、ベクトルの情報(位置情報、軌道など)をマップ(画像)に投影させることが可能な配列の形式に変換する。変換は、微分可能な処理で構成されているため、例えば軌道予測などの他の処理で用いるニューラルネットワークに容易に組み込むことができる。
事前に用意するマップ情報を用いずに、センサのみを用いて生成されたマップ情報(環境マップなど)を用いる場合であっても、移動体の位置を表すベクトルをマップ情報に投影させることにより、より効果的に特徴量を抽出することが可能となる。この結果、例えばマップ情報がない場合であっても、移動体の軌道をよりロバストに予測することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10 車両
12 処理装置
30 情報処理装置
40、40-2 予測装置
101 移動体情報取得部
102 環境マップ取得部
103 真値取得部
104、104b 予測部
105 識別部
106、106-2 学習部
200 配列生成装置
201 ベクトル取得部
202 座標配列生成部
203 確率分布配列生成部
501、501b 時系列特徴抽出部
502 空間特徴抽出部
503 時空間特徴統合部
504 サンプリング部
504b 潜在変数抽出部
505 軌道生成部

Claims (15)

  1. n次元(nは2以上の整数)のベクトルを取得するベクトル取得部と、
    n個のn次元の配列であって、m番目(1≦m≦n)の配列の要素それぞれに、前記要素のm次元目の座標のインデックスと同じ値の要素値が設定されたn個の座標配列を生成する座標配列生成部と、
    n個の前記座標配列それぞれに対応する、確率密度関数の出力値を要素値として含むn個の第1確率分布配列を求め、n個の前記第1確率分布配列それぞれの対応するn個の要素値を要素ごとに乗算し、乗算結果を要素値とする第2確率分布配列を求める確率分布配列生成部と、を備え、
    前記出力値は、
    前記ベクトルと前記座標配列の要素値とから得られる入力値を前記確率密度関数に入力して得られる、または、
    前記座標配列の要素値である入力値を、前記ベクトルに応じて定められる前記確率密度関数に入力して得られる、
    情報処理システム。
  2. 前記確率分布配列生成部は、n個の前記座標配列に含まれるl番目(1≦l≦n)の前記座標配列それぞれについて、前記ベクトルのl次元目の値と、前記座標配列の要素値それぞれとの差分を算出し、前記差分を前記入力値として前記確率密度関数に入力し、前記第1確率分布配列を求める、
    請求項1に記載の情報処理システム。
  3. 前記確率密度関数は、前記入力値が0であるときに出力値が最大となる関数である、
    請求項2に記載の情報処理システム。
  4. 前記確率分布配列生成部は、n個の前記座標配列それぞれについて、前記座標配列の要素値である前記入力値を、前記ベクトルのl次元目(1≦l≦n)の値を平均とする前記確率密度関数に入力し、前記第1確率分布配列を求める、
    請求項1に記載の情報処理システム。
  5. 前記確率密度関数の分散は、固定値、または、学習により求められる値である、
    請求項1に記載の情報処理システム。
  6. 予測対象とする第1移動体を含む1以上の移動体の位置を示す移動体情報と、前記第1移動体の周辺の環境をマップ上に表した環境マップ情報と、を入力する予測モデルを用いて、前記第1移動体の位置を予測する予測部と、
    前記予測モデルを学習する学習部と、をさらに備え、
    前記ベクトル取得部は、前記予測部により予測された前記位置を表す予測ベクトルを取得し、
    前記確率分布配列生成部は、前記予測ベクトルを前記ベクトルとしたときの前記第2確率分布配列である予測配列を求め、
    前記学習部は、前記予測配列を用いて、前記予測モデルを学習する、
    請求項1に記載の情報処理システム。
  7. 前記確率分布配列生成部は、
    前記確率分布配列生成部は、前記予測ベクトルを前記ベクトルとしたときの前記第2確率分布配列である予測配列と、前記第1移動体の位置の真値を表す真値ベクトルを前記ベクトルとしたときの前記第2確率分布配列である真値配列と、を求め、
    前記予測配列または前記真値配列を入力する識別モデルを用いて、前記予測配列または前記真値配列が正しいか否かを識別する識別部をさらに備え、
    前記学習部は、さらに前記識別モデルを学習する、
    請求項6に記載の情報処理システム。
  8. 前記識別部は、前記予測配列または前記真値配列と、前記環境マップ情報と、を連結したマップ情報を前記識別モデルに入力し、前記予測配列または前記真値配列が正しいか否かを識別する、
    請求項7に記載の情報処理システム。
  9. 前記学習部は、前記予測モデルと前記識別モデルとを交互に学習する、
    請求項7に記載の情報処理システム。
  10. 前記環境マップ情報は、前記第1移動体の周辺の環境を示す環境情報と、前記移動体情報とに基づいて生成される、
    請求項6に記載の情報処理システム。
  11. 前記予測部は、前記環境マップ情報と前記移動体情報とを入力とするニューラルネットワークである前記予測モデルを用いて、前記第1移動体の位置を予測する、
    請求項6に記載の情報処理システム。
  12. 前記ニューラルネットワークは、移動体の軌道の特徴を表す多次元正規分布に基づいてサンプリングされた1以上の変数それぞれに応じて1以上の位置を予測する、
    請求項11に記載の情報処理システム。
  13. 情報処理システムで実行される情報処理方法であって、
    n次元(nは2以上の整数)のベクトルを取得するベクトル取得ステップと、
    n個のn次元の配列であって、m番目(1≦m≦n)の配列の要素それぞれに、前記要素のm次元目の座標のインデックスと同じ値の要素値が設定されたn個の座標配列を生成する座標配列生成ステップと、
    n個の前記座標配列それぞれに対応する、確率密度関数の出力値を要素値として含むn個の第1確率分布配列を求め、n個の前記第1確率分布配列それぞれの対応するn個の要素値を要素ごとに乗算し、乗算結果を要素値とする第2確率分布配列を求める確率分布配列生成ステップと、を含み、
    前記出力値は、
    前記ベクトルと前記座標配列の要素値とから得られる入力値を前記確率密度関数に入力して得られる、または、
    前記座標配列の要素値である入力値を、前記ベクトルに応じて定められる前記確率密度関数に入力して得られる、
    情報処理方法。
  14. コンピュータに、
    n次元(nは2以上の整数)のベクトルを取得するベクトル取得ステップと、
    n個のn次元の配列であって、m番目(1≦m≦n)の配列の要素それぞれに、前記要素のm次元目の座標のインデックスと同じ値の要素値が設定されたn個の座標配列を生成する座標配列生成ステップと、
    n個の前記座標配列それぞれに対応する、確率密度関数の出力値を要素値として含むn個の第1確率分布配列を求め、n個の前記第1確率分布配列それぞれの対応するn個の要素値を要素ごとに乗算し、乗算結果を要素値とする第2確率分布配列を求める確率分布配列生成ステップと、を実行させ、
    前記出力値は、
    前記ベクトルと前記座標配列の要素値とから得られる入力値を前記確率密度関数に入力して得られる、または、
    前記座標配列の要素値である入力値を、前記ベクトルに応じて定められる前記確率密度関数に入力して得られる、
    プログラム。
  15. 車両を制御する車両制御システムであって、
    予測対象とする第1移動体の位置を予測する予測装置と、
    予測された前記位置に基づき車両を駆動するための駆動機構を制御する車両制御装置と、
    を備え、
    前記予測装置は、
    前記第1移動体を含む1以上の移動体の位置を示す移動体情報と、前記第1移動体の周辺の環境をマップ上に表した環境マップ情報と、を入力する予測モデルを用いて、前記第1移動体の位置を予測する予測部と、
    前記予測部により予測された前記位置を表す、n次元(nは2以上の整数)のベクトルを取得するベクトル取得部と、
    n個のn次元の配列であって、m番目(1≦m≦n)の配列の要素それぞれに、前記要素のm次元目の座標のインデックスと同じ値の要素値が設定されたn個の座標配列を生成する座標配列生成部と、
    n個の前記座標配列それぞれに対応する、確率密度関数の出力値を要素値として含むn個の第1確率分布配列を求め、n個の前記第1確率分布配列それぞれの対応するn個の要素値を要素ごとに乗算し、乗算結果を要素値とする第2確率分布配列を求める確率分布配列生成部と、
    前記第2確率分布配列を用いて前記予測モデルを学習する学習部と、を備え、
    前記出力値は、
    前記ベクトルと前記座標配列の要素値とから得られる入力値を前記確率密度関数に入力して得られる、または、
    前記座標配列の要素値である入力値を、前記ベクトルに応じて定められる前記確率密度関数に入力して得られる、
    車両制御システム。
JP2020139082A 2020-08-20 2020-08-20 情報処理システム、情報処理方法、プログラムおよび車両制御システム Active JP7321983B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020139082A JP7321983B2 (ja) 2020-08-20 2020-08-20 情報処理システム、情報処理方法、プログラムおよび車両制御システム
US17/184,661 US20220057992A1 (en) 2020-08-20 2021-02-25 Information processing system, information processing method, computer program product, and vehicle control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020139082A JP7321983B2 (ja) 2020-08-20 2020-08-20 情報処理システム、情報処理方法、プログラムおよび車両制御システム

Publications (2)

Publication Number Publication Date
JP2022035033A JP2022035033A (ja) 2022-03-04
JP7321983B2 true JP7321983B2 (ja) 2023-08-07

Family

ID=80270803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020139082A Active JP7321983B2 (ja) 2020-08-20 2020-08-20 情報処理システム、情報処理方法、プログラムおよび車両制御システム

Country Status (2)

Country Link
US (1) US20220057992A1 (ja)
JP (1) JP7321983B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210309221A1 (en) * 2021-06-15 2021-10-07 Nauto, Inc. Devices and methods for determining region of interest for object detection in camera images
CN115144547B (zh) * 2022-08-29 2022-12-09 四川九通智路科技有限公司 基于物联网的隧道气体浓度检测方法、装置及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006090957A (ja) 2004-09-27 2006-04-06 Nissan Motor Co Ltd 移動体の周囲物体検出装置及び移動体の周囲物体検出方法
JP2013506931A (ja) 2009-10-05 2013-02-28 ネーデルランドセ・オルガニサティ・フォール・トゥーヘパスト−ナトゥールウェテンスハッペライク・オンデルズーク・テーエヌオー 道路車両用の衝突回避システムおよび方法ならびに各コンピュータプログラム製品
JP2018142324A (ja) 2017-02-27 2018-09-13 澤蒼 顧 異なる空間における距離のモデルの構築方法、その装置、及びそのプログラム、及びそのモデルを構成したプログラムが搭載された汎用モバイル端末装置
JP2020059497A (ja) 2018-10-11 2020-04-16 澤蒼 顧 「機知獲得」モデルを導入した自動運転の制御方法、装置及びそれによって構成されるプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013208521B4 (de) * 2013-05-08 2022-10-13 Bayerische Motoren Werke Aktiengesellschaft Kollektives Erlernen eines hochgenauen Straßenmodells
US20200049511A1 (en) * 2018-08-07 2020-02-13 Ford Global Technologies, Llc Sensor fusion
EP3918514A1 (en) * 2019-01-30 2021-12-08 Sony Group Corporation Object detection apparatus, system and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006090957A (ja) 2004-09-27 2006-04-06 Nissan Motor Co Ltd 移動体の周囲物体検出装置及び移動体の周囲物体検出方法
JP2013506931A (ja) 2009-10-05 2013-02-28 ネーデルランドセ・オルガニサティ・フォール・トゥーヘパスト−ナトゥールウェテンスハッペライク・オンデルズーク・テーエヌオー 道路車両用の衝突回避システムおよび方法ならびに各コンピュータプログラム製品
JP2018142324A (ja) 2017-02-27 2018-09-13 澤蒼 顧 異なる空間における距離のモデルの構築方法、その装置、及びそのプログラム、及びそのモデルを構成したプログラムが搭載された汎用モバイル端末装置
JP2020059497A (ja) 2018-10-11 2020-04-16 澤蒼 顧 「機知獲得」モデルを導入した自動運転の制御方法、装置及びそれによって構成されるプログラム

Also Published As

Publication number Publication date
US20220057992A1 (en) 2022-02-24
JP2022035033A (ja) 2022-03-04

Similar Documents

Publication Publication Date Title
US11276230B2 (en) Inferring locations of 3D objects in a spatial environment
JP7239703B2 (ja) 領域外コンテキストを用いたオブジェクト分類
US11465633B2 (en) Method and system for generating predicted occupancy grid maps
US20180211119A1 (en) Sign Recognition for Autonomous Vehicles
US11836884B2 (en) Real-time generation of functional road maps
CN110576847A (zh) 基于焦点的对传感器数据的标记
US11827214B2 (en) Machine-learning based system for path and/or motion planning and method of training the same
US20230213643A1 (en) Camera-radar sensor fusion using local attention mechanism
JP2023549036A (ja) 点群からの効率的な三次元物体検出
JP7321983B2 (ja) 情報処理システム、情報処理方法、プログラムおよび車両制御システム
CN115273002A (zh) 一种图像处理方法、装置、存储介质及计算机程序产品
JP2024019629A (ja) 予測装置、予測方法、プログラムおよび車両制御システム
US20200210778A1 (en) Methods and systems for generating training data for neural network
Aditya et al. Collision Detection: An Improved Deep Learning Approach Using SENet and ResNext
EP4086817A1 (en) Training distilled machine learning models using a pre-trained feature extractor
Lekić et al. Using GANs to enable semantic segmentation of ranging sensor data
US20230105331A1 (en) Methods and systems for semantic scene completion for sparse 3d data
US20240094009A1 (en) Map annotation modification using sparse pose graph node updates
US20220155096A1 (en) Processing sparse top-down input representations of an environment using neural networks
Zhang Learning-based monocular vision obstacle detection and avoidance for UAV navigation in urban airspace
Bhatia et al. Road Image Segmentation for Autonomous Car
KR20230119334A (ko) 레이더 클러터 제거를 위한 자가 집중 기법 적용 3차원 물체 검출 기술
CN117010265A (zh) 能够进行自然语言交互的自动驾驶模型及其训练方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220824

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230606

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230616

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230627

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230726

R151 Written notification of patent or utility model registration

Ref document number: 7321983

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151