JP7119839B2 - 物体検出装置、物体検出方法及び車両制御装置 - Google Patents

物体検出装置、物体検出方法及び車両制御装置 Download PDF

Info

Publication number
JP7119839B2
JP7119839B2 JP2018180713A JP2018180713A JP7119839B2 JP 7119839 B2 JP7119839 B2 JP 7119839B2 JP 2018180713 A JP2018180713 A JP 2018180713A JP 2018180713 A JP2018180713 A JP 2018180713A JP 7119839 B2 JP7119839 B2 JP 7119839B2
Authority
JP
Japan
Prior art keywords
layer
vehicle
object detection
amount
unit
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
JP2018180713A
Other languages
English (en)
Other versions
JP2020052667A (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.)
Toyota Motor Corp
Original Assignee
Toyota Motor 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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2018180713A priority Critical patent/JP7119839B2/ja
Priority to US16/582,250 priority patent/US20200097005A1/en
Publication of JP2020052667A publication Critical patent/JP2020052667A/ja
Application granted granted Critical
Publication of JP7119839B2 publication Critical patent/JP7119839B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • 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/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • 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/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Business, Economics & Management (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Description

本発明は、物体を検出する物体検出装置及び物体検出方法ならびに車両制御装置に関する。
画像に表された物体を検出する技術が研究されている。近年では、物体を検出するために、いわゆるディープニューラルネットワーク(以下、単にDNNと呼ぶ)を用いることで、検出精度を向上する技術が提案されている。そしてそのようなDNNにおいて、同一の構造を持つ部分ネットワークを並列に設け、入力に対して各部分ネットワークによる処理結果の和をとるブロック(ResNeXtモジュール)を設けることで、ハイパーパラメータ数を減少させる技術が提案されている(例えば、非特許文献1を参照)。
また、DNNを学習する際に、一部の層のモジュールを確率的にランダムに短絡することで、DNNの学習に要する時間を短出するとともに、DNNの汎化性を向上させる技術が提案されている(例えば、非特許文献2を参照)。
Saining Xie他、「Aggregated Residual Transformations for Deep Neural Networks」、CVPR2017、2017年 Gao Huang他、「Deep Networks with Stochastic Depth」、ECCV2016、2016年
上記の技術でも、DNNを用いた物体検出が行われるときには、設計時に予め決定されたネットワーク全体を用いて物体検出処理が実行される。そのため、DNNを用いた物体検出処理には、ある程度の計算リソースが必要となり、また物体検出処理に要する演算コストを制御することは困難である。一方、利用可能な計算リソースの総量及び利用可能な総電力量が制限される演算装置がある。このような演算装置でDNNを用いた物体検出処理を実行する場合、この演算装置と同じ電源から電力供給される他の機器の電力使用状況またはこの演算装置における他の演算処理の実行状況に応じて、DNNによる演算処理に利用可能な電力量または利用可能な計算リソース(以下、単に利用可能なリソースと呼ぶことがある)が不足することがある。そしてその結果として、DNNを用いた物体検出処理を目標時間内に終了することが困難となることがある。
そこで、本発明は、利用可能なリソースが制限される場合でも、物体検出処理を目標時間内に終了できる物体検出装置を提供することを目的とする。
一つの実施形態によれば、物体検出装置が提供される。この物体検出装置は、車両に搭載されたセンサから得られるセンサ信号をニューラルネットワークに入力することで車両の周囲に存在する物体を検出し、ニューラルネットワークは、センサ信号が入力される入力層と、物体の検出結果を出力する出力層と、入力層と出力層との間に接続される複数の層とを有し、複数の層のうちの少なくとも一つの層は、同一の構造を持ち、かつ、その層に入力される信号に対して互いに並列に演算する複数の部分ネットワークを有する検出部と、検出部が利用可能な電力量及び検出部が利用可能な計算リソースの少なくとも何れかに応じて、少なくとも一つの層のそれぞれにおける複数の部分ネットワークのうち、検出部が物体を検出する際に用いられる部分ネットワークの数を制御するネットワーク制御部とを有する。
この物体検出装置において、ネットワーク制御部は、検出部が利用可能な電力量及び検出部が利用可能な計算リソースの少なくとも何れかに応じて、検出部が物体を検出する際の目標計算量を求め、目標計算量に応じて、ニューラルネットワークの少なくとも一つの層のそれぞれにおける複数の部分ネットワークのうち、検出部が物体を検出する際に用いられる部分ネットワークの数を制御することが好ましい。
この場合において、物体検出装置は、目標計算量と、ニューラルネットワークの少なくとも一つの層のそれぞれについて、複数の部分ネットワークのうち、検出部が物体を検出する際に用いられる部分ネットワークとの関係を表すテーブルを記憶する記憶部をさらに有することが好ましい。そしてネットワーク制御部は、そのテーブルを参照して、目標計算量に応じて、ニューラルネットワークの少なくとも一つの層のそれぞれについて、複数の部分ネットワークのうち、検出部が物体を検出する際に用いられる部分ネットワークを決定することが好ましい。
本発明の他の形態によれば、物体検出方法が提供される。この物体検出方法は、車両に搭載されたセンサから得られるセンサ信号をニューラルネットワークに入力することで車両の周囲に存在する物体を検出し、ニューラルネットワークは、センサ信号が入力される入力層と、物体の検出結果を出力する出力層と、入力層と出力層との間に接続される複数の層とを有し、複数の層のうちの少なくとも一つの層は、同一の構造を持ち、かつ、その層に入力される信号に対して互いに並列に演算する複数の部分ネットワークを有し、物体の検出に利用可能な電力量及び物体の検出に利用可能な計算リソースの少なくとも何れかに応じて、ニューラルネットワークの少なくとも一つの層のそれぞれにおける複数の部分ネットワークのうち、物体を検出する際に用いられる部分ネットワークの数を制御することを含む。
本発明のさらに他の形態によれば、車両制御装置が提供される。この車両制御装置は、車両に搭載されたセンサから得られるセンサ信号から検出された車両の周囲の物体の位置を表す情報をニューラルネットワークを入力することで車両の制御情報を求め、ニューラルネットワークは、車両の周囲の物体の位置を表す情報が入力される入力層と、車両の制御情報を出力する出力層と、入力層と出力層との間に接続される複数の層とを有し、複数の層のうちの少なくとも一つの層は、同一の構造を持ち、かつ、その層に入力される信号に対して互いに並列に演算する複数の部分ネットワークを有する制御情報決定部と、制御情報決定部が利用可能な電力量及び制御情報決定部が利用可能な計算リソースの少なくとも何れかに応じて、ニューラルネットワークの少なくとも一つの層のそれぞれにおける複数の部分ネットワークのうち、制御情報決定部が車両の制御情報を求める際に用いられる部分ネットワークの数を制御するネットワーク制御部とを有する。
本発明に係る物体検出装置は、利用可能なリソースが制限される場合でも、物体検出処理を目標時間内に終了できるという効果を奏する。
物体検出装置が実装される車両制御システムの概略構成図である。 物体検出装置の一つの実施形態である電子制御装置のハードウェア構成図である。 物体検出処理を含む車両制御処理に関する、電子制御装置のプロセッサの機能ブロック図である。 識別器として利用されるDNNが有する可変層の概略構成図である。 複数の可変層を含む、DNNの構造の一部の例を示す図である。 識別器制御部により実行される識別器制御処理の動作フローチャートである。 物体検出処理を含む車両制御処理の動作フローチャートである。
以下、図を参照しつつ、物体検出装置について説明する。この物体検出装置は、車両に搭載されたカメラにより得られた画像から、車両の周囲に存在する物体を検出するための識別器としてDNNを利用する。物体検出装置が利用するDNNは、画像が入力される入力層と、物体の検出結果を出力する出力層と、入力層と出力層との間に接続される複数の隠れ層とを有し、複数の隠れ層のうちの少なくとも一つの層は、同一の構造を持ち、かつ、その隠れ層に入力される信号に対して互いに並列に演算する複数の部分ネットワークを有する可変層として構成される。そしてこの物体検出装置は、利用可能なリソースに応じて1回の物体検出処理を実行する際の目標計算量を求め、その目標計算量に応じて、少なくとも一つの可変層のそれぞれについておける複数の部分ネットワークのうち、物体検出処理に利用される部分ネットワークの数を制御する。これにより、この物体検出装置は、利用可能なリソースが制限される場合でも、物体検出処理を目標時間内に終了することができる。
以下では、物体検出装置を、車両制御システムに適用した例について説明する。この例では、物体検出装置は、車両に搭載されたカメラにより得られた画像に対して物体検出処理を実行することで、車両の周囲に存在する各種の物体、例えば、他の車両、人、道路標識または道路標示などを検出し、その検出結果に基づいて車両を自動運転制御する。
図1は、物体検出装置が実装される車両制御システムの概略構成図である。また図2は、物体検出装置の一つの実施形態である電子制御装置のハードウェア構成図である。本実施形態では、車両10に搭載され、かつ、車両10を制御する車両制御システム1は、車両10の周囲を撮影するためのカメラ2と、電力センサ3と、物体検出装置の一例である電子制御装置(ECU)4とを有する。カメラ2と、電力センサ3と、ECU4とは、コントローラエリアネットワークといった規格に準拠した車内ネットワーク5を介して通信可能に接続される。
カメラ2は、所定の検知範囲内に存在する物体を検出するためのセンサである撮像部の一例であり、CCDあるいはC-MOSなど、可視光に感度を有する光電変換素子のアレイで構成された2次元検出器と、その2次元検出器上に撮影対象となる領域の像を結像する結像光学系を有する。そしてカメラ2は、車両10の前方を向くように、例えば、車両10の車室内に取り付けられる。そしてカメラ2は、所定の撮影周期(例えば1/30秒~1/10秒)ごとに車両10の前方領域を撮影し、その前方領域が写った画像を生成する。カメラ2により得られた画像は、カラー画像であってもよく、あるいは、グレー画像であってもよい。なお、カメラ2により生成された画像は、センサ信号の一例である。
カメラ2は、画像を生成する度に、その生成した画像を、車内ネットワーク5を介してECU4へ出力する。
電力センサ3は、電力測定部の一例であり、ECU4へ電力を供給する車載バッテリ6から各機器へ供給される単位時間当たりの電力量を所定の周期ごとに測定する。そして電力センサ3は、測定した電力量を表す信号を、車内ネットワーク5を介してECU4へ出力する。なお、電力センサ3は、複数設けられてもよい。そして複数の電力センサ3のそれぞれは、車載バッテリ6から電力供給を受ける各機器の何れかに設けられ、その機器へ供給される単位時間当たりの電力量を所定の周期ごとに測定し、測定した電力量を表す信号を、車内ネットワーク5を介してECU4へ出力すればよい。
ECU4は、車両10を制御する。本実施形態では、ECU4は、カメラ2により得られた時系列の一連の画像から検出された物体に基づいて車両10を自動運転するよう、車両10を制御する。そのために、ECU4は、通信インターフェース21と、メモリ22と、プロセッサ23とを有する。
通信インターフェース21は、通信部の一例であり、ECU4を車内ネットワーク5に接続するためのインターフェース回路を有する。すなわち、通信インターフェース21は、車内ネットワーク5を介して、カメラ2及び電力センサ3と接続される。そして通信インターフェース21は、カメラ2から画像を受信する度に、受信した画像をプロセッサ23へわたす。また通信インターフェース21は、電力センサ3から測定した電力量を表す信号を受信する度に、その信号をプロセッサ23へわたす。
メモリ22は、記憶部の一例であり、例えば、揮発性の半導体メモリ及び不揮発性の半導体メモリを有する。そしてメモリ22は、ECU4のプロセッサ23により実行される物体検出処理において使用される各種のデータ、例えば、カメラ2から受信した画像、電力センサ3により測定された電力量、物体検出処理で利用される識別器を特定するための各種パラメータ、利用可能なリソースと、プロセッサ23が1秒当たりに実行可能な計算量(以下、単に実行可能計算量と呼ぶ)との関係を表す参照テーブル、及び、目標計算量と物体検出処理に利用される部分ネットワークの関係を表す参照テーブルをなどを記憶する。さらに、メモリ22は、地図情報を記憶してもよい。
プロセッサ23は、制御部の一例であり、1個または複数個のCPU(Central Processing Unit)及びその周辺回路を有する。プロセッサ23は、論理演算ユニット、数値演算ユニットあるいはグラフィック処理ユニットといった他の演算回路をさらに有していてもよい。そしてプロセッサ23は、車両10が走行している間、カメラ2から画像を受信する度に、受信した画像に対して物体検出処理を含む車両制御処理を実行する。そしてプロセッサ23は、検出された車両10の周囲の物体に基づいて、車両10を自動運転するよう、車両10を制御する。
図3は、物体検出処理を含む車両制御処理に関する、ECU4のプロセッサ23の機能ブロック図である。プロセッサ23は、リソース量算出部31と、目標計算量算出部32と、識別器制御部33と、物体検出部34と、運転計画部35と、車両制御部36とを有する。プロセッサ23が有するこれらの各部は、例えば、プロセッサ23上で動作するコンピュータプログラムにより実現される機能モジュールである。あるいは、プロセッサ23が有するこれらの各部は、プロセッサ23に設けられる、専用の演算回路であってもよい。また、プロセッサ23が有するこれらの各部のうち、リソース量算出部31、目標計算量算出部32、識別器制御部33及び物体検出部34が、物体検出処理を実行する。
リソース量算出部31は、所定の周期ごとに、プロセッサ23が有する計算リソースの総量のうち、物体検出処理に利用可能な計算リソース量を算出する。
例えば、リソース量算出部31は、プロセッサ23のアイドル率及びメモリ22のメモリ利用可能量を、物体検出処理に利用可能な計算リソース量として算出する。リソース量算出部31は、例えば、プロセッサ23のアイドル率を、1からプロセッサ23の稼働率を減じることで算出する。プロセッサ23の稼働率は、例えば、単位時間当たりの実行命令数をプロセッサ23の単位時間当たりの実行可能命令数で除した値とすることで算出できる。あるいは、プロセッサ23のアイドル率は、単位時間tu当たりのプロセッサ23のアイドル時間tiを、その単位時間tuで除した値(ti/tu)とすることができる。また、リソース量算出部31は、メモリ22の全メモリ容量から、メモリ22において現在利用中のメモリ量を減じた値を、メモリ利用可能量として算出できる。
リソース量算出部31は、アイドル率及びメモリ利用可能量を算出する度に、アイドル率及びメモリ利用可能量を目標計算量算出部32へ通知する。
目標計算量算出部32は、識別器制御部33とともにネットワーク制御部を構成し、所定の周期ごとに、物体検出処理に利用可能な計算リソース量(プロセッサ23のアイドル率及びメモリ22のメモリ利用可能量)と、電力センサ3により測定された電力量から求められる、物体検出処理に利用可能な電力量とに基づいて、物体検出部34による、カメラ2により得られた画像1枚当たりの目標計算量をもとめる。目標計算量は、目標時間内に物体検出処理が終了するように(この例では、画像の取得周期ごとに物体検出処理が終了するように)決定される。なお、物体検出処理に利用可能な電力量は、車載バッテリ6が供給可能な単位時間当たりの電力量の最大値から、電力センサ3により測定された電力量を減じた値とすることができる。なお、車載バッテリ6が供給可能な単位時間当たりの電力量の最大値は、例えば、メモリ22に予め記憶される。
例えば、目標計算量算出部32は、メモリ22に予め記憶された、物体検出処理に利用可能なリソース(計算リソース及び電力量)と実行可能計算量との関係を表す参照テーブルを参照して、物体検出処理に利用可能なリソースに対応する1秒当たりの実行可能計算量をもとめる。そして目標計算量算出部32は、実行可能計算量を、全ての部分ネットワークが物体検出処理に利用される場合の物体検出部34の1秒当たりの演算量(以下、最大必要演算量と呼ぶ)と比較する。なお、最大必要演算量は、画像1枚当たりに要する、全ての部分ネットワークが物体検出処理に利用される場合の物体検出部34の演算量に、1秒当たりに物体検出部34が処理する画像の枚数を乗じた値となる。
実行可能計算量が最大必要演算量以上となる場合、目標計算量算出部32は、目標計算量を、全ての部分ネットワークが物体検出処理に利用される場合の画像1枚当たりに要する物体検出部34の演算量に設定する。一方、実行可能計算量が最大必要演算量未満となる場合、目標計算量算出部32は、実行可能計算量を1秒当たりに物体検出部34が処理する画像の枚数で除した値を、目標計算量として設定する。
目標計算量算出部32は、目標計算量を求める度に、その目標計算量を識別器制御部33へ通知する。
識別器制御部33は、所定の周期ごとに、目標計算量に基づいて、物体検出部34により物体の検出に利用される識別器として用いられるDNNが有する複数の部分ネットワークのうちの物体検出処理に利用される部分ネットワークの数を制御する。なお、識別器として利用されるDNNは、プロセッサ23上で動作する物体検出処理用のコンピュータプログラムによりソフトウェア的に実装される。しかし、識別器として利用されるDNNは、プロセッサ23が有する専用の演算回路として実装されてもよい。
本実施形態では、識別器として利用されるDNNは、例えば、Single Shot MultiBox Detector、Faster R-CNN、VGG-19またはAlexNetといった、コンボリューションニューラルネットワーク(CNN)型のアーキテクチャを持つDNNとすることができる。あるいは、識別器として利用されるDNNは、Fully Convolutional Networkといった、入力された画像から、その画像の各画素について、その画素に表される可能性の有る物体を識別するセグメンテーション用のCNNアーキテクチャを持つDNNであってもよい。
すなわち、本実施形態で識別器として利用されるDNNは、画像が入力される入力層と、物体検出の結果を出力する出力層と、入力層と出力層との間に接続される複数の隠れ層とを有する。そして複数の隠れ層には、畳み込み層及びプーリング層が含まれる。さらに、複数の隠れ層には、全結合層が含まれてもよい。
さらに、本実施形態では、DNNが有する複数の隠れ層のうちの何れか一つ以上の層において、同一の構造を持ち、かつ、その層に入力される信号に対して互いに並列に演算する複数の部分ネットワークが設けられる可変層として形成される。また、複数の部分ネットワークが同一の構造を持つとは、その複数の部分ネットワークのそれぞれに入力されるデータが同一であり、かつ、入力されるデータに対して同じ種類の演算(例えば、畳み込みなど)を実行することをいう。
図4は、識別器として利用されるDNNが有する一つの可変層の概略構成図である。この例では、DNNの入力側から順にi番目(iは1以上の整数)の可変層400に、互いに並列に、可変層400の上流側の層により得られたfeature map xiに対して畳み込み演算を行う複数の畳み込みモジュールTi1(xi)~Tini(xi)(niは、2以上の整数)が設けられる。これらの畳み込みモジュールは、複数の部分ネットワークの一例である。
畳み込みモジュールTi1(xi)~Tini(xi)のそれぞれは、互いに同一の構造を持つ。そして畳み込みモジュールTi1(xi)~Tini(xi)のそれぞれは、スイッチSi1~Siniを介して可変層400の上流側の層と下流側の層との間に接続される。畳み込みモジュールTi1(xi)~Tini(xi)は、それぞれ、複数の画像を含む教師データに基づいて、誤差逆伝搬法といった学習手法に従って予め学習される。例えば、DNNが学習される際に、スイッチSi1~Siniのうち、互いに異なる目標計算量ごとに、その目標計算量に応じたスイッチのみがオンにされ、畳み込みモジュールTi1(xi)~Tini(xi)のうちのオンとなるスイッチに対応する畳み込みモジュールのみがDNNに接続される。その上で、教師データを用いてDNNが学習される。これにより、畳み込みモジュールTi1(xi)~Tini(xi)のうちの一部の畳み込みモジュールのみが物体検出処理に利用される場合でも、DNNは、物体の検出精度の低下を抑制できる。
可変層400では、畳み込みモジュールTi1(xi)~Tini(xi)のうち、対応するスイッチがオンとなる畳み込みモジュールの出力の和が計算される。そしてその和に対して、畳み込み演算を実施した畳み込みモジュールの数に対する可変層400が有する畳み込みモジュールの総数の比(ni/ΣSbk)、ただし、ΣSbk≠0、Sbk(k=1,...,ni)は、スイッチSikがオンの時に1となり、スイッチSikがオフの時に0となるbool変数である)が乗じられることで得られる値とxiとの和が、feature map xi+iとして出力される。なお、スイッチSi1~Siniの全てがオフとされる場合には、入力されたfeature map xiそのものがfeature map xi+iとなる。そしてfeature map xi+iが、次の層に入力される。
なお、識別器として利用されるDNNは、図4に示されるような可変層を2以上有していてもよい。
図5は、複数の可変層を含む、DNNの構造の一部の例を示す図である。図5に示されるように、DNN500には、複数の可変層501-1~501-d(dは2以上の整数)が含まれる。各可変層は、2以上の畳み込みモジュールを含む。また、図5において、図示は省略されているが、連続する二つの可変層の間にプーリング層といった他の層が設けられてもよい。複数の可変層501-1~501-dのそれぞれに含まれる畳み込みモジュールの数は同じでもよく、あるいは、互いに異なっていてもよい。さらに、DNN500が1以上の全結合層を有する場合、複数の可変層501-1~501-dのうちの何れか一つ以上が全結合層であってもよい。例えば、最も下流側の可変層501-dが全結合層であってもよい。この場合、全結合層となる可変層に含まれる複数の部分ネットワークのそれぞれは、上流側の層が有する複数のニューロンの全ての出力値を入力として一つの出力値を演算するように構成されてもよい。また、全結合層が可変層となる場合には、特定の種類の検出対象物体に関する検出結果を出力するためのニューロンが、目標計算量に応じて物体検出処理に利用されるか否かが切り替えられる部分ネットワークとなっていてもよい。この場合には、目標計算量が少ないほど、検出対象となる物体の種類の数が減少する。
識別器制御部33は、各可変層について、スイッチSi1~Sini(i=1,2,...,d)のうち、目標計算量に応じて使用される部分ネットワークに対応するスイッチをオンにし、他のスイッチをオフにする。そのために、識別器制御部33は、例えば、メモリ22に予め記憶された、目標計算量とオンにするスイッチの組み合わせとの関係を表す参照テーブルを参照することで、目標計算量に対応する、オンにするスイッチの組み合わせを特定できる。そして識別器制御部33は、特定した組み合わせに含まれる各スイッチをオンにし、他のスイッチをオフにする。これにより、識別器制御部33は、目標計算量に対応する部分ネットワークが物体検出処理に使用されるようになる。なお、目標計算量が多いほど、オンになるスイッチの数、すなわち、物体検出に使用される部分ネットワークの数が多くなるように、参照テーブルは設定されることが好ましい。そして例えば、目標計算量が、画像1枚当たりに要する、全ての部分ネットワークが物体検出処理に利用される場合の物体検出部34の演算量に相当する計算量である場合には、全ての部分ネットワークが物体検出処理に利用されるように、識別器制御部33は、部分ネットワークの数を制御することが好ましい。これにより、プロセッサ23は、目標計算量が大きくなるほど、物体検出の精度を向上でき、一方、目標計算量が小さくなるほど、物体検出に要する演算量を低減できる。そのため、プロセッサ23は、物体検出に利用可能な計算リソースを十分に確保することが困難な場合でも、物体検出の精度の低下を抑制しつつ、物体検出処理をその実行周期にて完了させることができる。すなわち、プロセッサ23は、物体検出処理を目標時間内に完了させることができる。
図6は、識別器制御部33により実行される識別器制御処理の動作フローチャートである。リソース量算出部31、目標計算量算出部32及び識別器制御部33は、所定の周期(例えば、1/10秒~1秒など)ごとに、図6に示される動作フローチャートに従って、識別器制御処理を実行する。
プロセッサ23のリソース量算出部31は、プロセッサ23の動作状況に基づいて、物体検出部34により実行される、DNNを用いた物体検出処理に利用可能な計算リソース量を求める(ステップS101)。そしてプロセッサ23の目標計算量算出部32は、その計算リソース量と、DNNを用いた物体検出処理に利用可能な電力量とに基づいて、目標計算量を求める(ステップ102)。
プロセッサ23の識別器制御部33は、物体検出部34にて物体検出処理に使用される識別器のDNNが有する複数の部分ネットワークのうち、目標計算量にて物体検出処理を完了できるよう、物体検出処理に使用する部分ネットワークの数を制御する(ステップS103)。
ステップS103の後、識別器制御部33は、識別器制御処理を終了する。
物体検出部34は、検出部の一例であり、カメラ2から画像が得られる度に、その画像を識別器として利用されるDNNに入力することで、その画像に表された、車両10の周囲に存在する検出対象となる物体を検出する。その際、DNNが有する複数の部分ネットワークのうち、識別器制御部33により使用するよう制御された部分ネットワークが物体検出処理に利用される。なお、検出対象となる物体には、例えば、車または人といった移動物体が含まれる。また、検出対象となる物体には、車線区画線といった道路標示または道路標識、及び信号機といった静止物体がさらに含まれてもよい。
物体検出部34は、検出された物体の種類及び画像上での位置を表す情報を運転計画部35へ出力する。
運転計画部35は、各画像から検出された物体に基づいて、車両10の周囲に存在する物体と車両10とが衝突しないように車両10の走行予定経路を1以上生成する。走行予定経路は、例えば、現時刻から所定時間先までの各時刻における、車両10の目標位置の集合として表される。例えば、運転計画部35は、カメラ2から画像を受信する度に、カメラ2についての車両10への取り付け位置などの情報を用いて視点変換処理を実行することで、受信した画像を鳥瞰画像に変換する。そして運転計画部35は、一連の鳥瞰画像に対してKalman Filterなどを用いたトラッキング処理を実行することで、各画像についての検出されている物体を追跡し、その追跡結果により得られた軌跡から、物体のそれぞれの所定時間先までの予測軌跡を推定する。運転計画部35は、追跡中の各物体の予測軌跡に基づいて、何れの物体についても所定時間先までの追跡中の物体のそれぞれと車両10間の距離の予測値が所定距離以上となるように、車両10の走行予定経路を生成する。その際、運転計画部35は、例えば、車両10に搭載されたGPS受信機(図示せず)から得た測位情報に表される車両10の現在位置と、メモリ22に記憶されている地図情報とを参照して、車両10が走行可能な車線の数を確認してもよい。そして運転計画部35は、車両10が走行可能な車線が複数存在する場合には、車両10が走行する車線を変更するように走行予定経路を生成してもよい。その際、運転計画部35は、画像から検出された車線区画線の位置を参照して、車両10が走行中の車線、あるいは変更先の車線と車両10との位置関係を判定してもよい。さらに、運転計画部35は、画像から検出された信号機が一時停止を示している場合には、車両10をその信号機に対応する停止線にて停止させるように走行予定経路を設定してもよい。
なお、運転計画部35は、複数の走行予定経路を生成してもよい。この場合、運転計画部35は、複数の走行予定経路のうち、車両10の加速度の絶対値の総和が最小となる経路を選択してもよい。
運転計画部35は、生成した走行予定経路を車両制御部36へ通知する。
車両制御部36は、車両10が通知された走行予定経路に沿って走行するように車両10の各部を制御する。例えば、車両制御部36は、通知された走行予定経路、及び、車速センサ(図示せず)により測定された車両10の現在の車速に従って、車両10の加速度を求め、その加速度となるようにアクセル開度またはブレーキ量を設定する。そして車両制御部36は、設定されたアクセル開度に従って燃料噴射量を求め、その燃料噴射量に応じた制御信号を車両10のエンジンの燃料噴射装置へ出力する。あるいは、車両制御部36は、設定されたブレーキ量に応じた制御信号を車両10のブレーキへ出力する。
さらに、車両制御部36は、車両10が走行予定経路に沿って走行するために車両10の進路を変更する場合には、その走行予定経路に従って車両10の操舵角を求め、その操舵角に応じた制御信号を、車両10の操舵輪を制御するアクチュエータ(図示せず)へ出力する。
図7は、プロセッサ23により実行される、物体検出処理を含む車両制御処理の動作フローチャートである。プロセッサ23は、カメラ2から画像を受信する度に、図7に示される動作フローチャートに従って車両制御処理を実行する。なお、以下に示される動作フローチャートにおいて、ステップS201~S202の処理が物体検出処理に対応する。
プロセッサ23のリソース量算出部31、目標計算量算出部32及び識別器制御部33は、図6に示されるフローチャートに従って、利用可能な計算リソース量及び利用可能な電力量に応じて決定される目標計算量で物体検出処理を完了できるよう、識別器として利用するDNNの可変層に含まれる複数の部分ネットワークのうち、物体検出処理で使用される部分ネットワークの数を制御する(ステップS201)。すなわち、図4及び図5に示されるように、識別器制御部33は、目標計算量に対応する部分ネットワークに対応するスイッチをオンにして、その部分ネットワークが物体の検出に利用されるようにする。そしてプロセッサ23の物体検出部34は、カメラ2から得られた画像を識別器に入力して、画像に表された車両10の周囲の物体を検出する(ステップS202)。
プロセッサ23の運転計画部35は、検出されている物体を追跡し、その追跡結果に基づいて推定されるその物体の予測軌跡と所定の距離以上となるように、車両10の走行予定経路を生成する(ステップS203)。そしてプロセッサ23の車両制御部36は、走行予定経路に沿って車両10が走行するように車両10を制御する(ステップS204)。そしてプロセッサ23は、車両制御処理を終了する。
以上に説明してきたように、この物体検出装置は、物体検出処理において識別器として用いられるニューラルネットワークの可変層に含まれる複数の部分ネットワークのうち、画像に対する物体検出処理を目標時間に応じた目標計算量で完了できるよう、物体検処理に利用する部分ネットワークの数を制御する。これにより、この物体検出装置は、物体検出処理に利用可能な計算リソース量及び電力量が制限される場合でも、物体検出処理を目標時間内に完了することができる。また各部分ネットワークは、予め、目標計算量に応じてニューラルネットワークに接続された状態で学習されるので、物体検出処理に利用可能な計算リソース量及び電力量が制限される場合でも、この物体検出装置は、物体検出の精度の低下を抑制できる。さらに、プロセッサ23の一部の回路が故障した場合、あるいは、車載バッテリから供給可能な電力量が低下した場合のように、物体検出処理に利用可能な計算リソースの総量または利用可能な電力量の最大値が低下する場合でも、この物体検出装置は、物体検出処理に要する演算量を削減できるので、物体検出処理を目標時間内に完了することができる。一方、この物体検出装置では、設計の段階においてDNNのサイズにマージンを持たせる必要が無いので、物体検出処理に利用可能な計算リソース量及び電力量が十分な場合には、この物体検出装置は、全ての部分ネットワークを物体検出処理に利用することで、物体検出の精度を向上できる。
変形例によれば、目標計算量算出部32は、物体検出処理に利用可能な計算リソース量と物体検出処理に利用可能な電力量の何れか一方に基づいて目標計算量を求めてもよい。例えば、物体検出処理に利用可能な計算リソース量に基づいて目標計算量を求める場合、目標計算量算出部32は、メモリ22に予め記憶された、利用可能な計算リソース量と実行可能計算量との関係を表す参照テーブルを参照して、利用可能な計算リソース量に対応する実行可能計算量をもとめればよい。そして目標計算量算出部32は、その実行可能計算量に基づいて、上記の実施形態と同様に目標計算量を求めればよい。この場合には、電力センサ3は省略されてもよい。また、物体検出処理に利用可能な電力量に基づいて目標計算量を求める場合、目標計算量算出部32は、メモリ22に予め記憶された、電力量と実行可能計算量との関係を表す参照テーブルを参照して、物体検出処理に利用可能な電力量に対応する実行可能計算量をもとめればよい。そして目標計算量算出部32は、その実行可能計算量に基づいて、上記の実施形態と同様に目標計算量を求めればよい。この場合には、リソース量算出部31は省略されてもよい。
他の変形例によれば、識別器制御部33は、物体検出処理に利用可能な計算リソース量と物体検出処理に利用可能な電力量の少なくとも一方に基づいて、DNNが有する複数の部分ネットワークのうち、物体検出処理に利用される部分ネットワークの数を直接決定してもよい。この場合には、識別器制御部33は、物体検出処理に利用可能な計算リソース量と物体検出処理に利用可能な電力量の組み合わせまたは何れか一方と、オンにするスイッチの組み合わせとの関係を表す参照テーブルを参照することで、物体検出処理に利用可能な計算リソース量と物体検出処理に利用可能な電力量の少なくとも一方に対応する、オンにするスイッチの組み合わせを特定すればよい。この場合には、目標計算量算出部32は省略されてもよい。
上記の実施形態または変形例による物体検出装置は、カメラ2以外の車両10の周囲に存在する物体を検知するためのセンサにより取得されたセンサ信号に対して適用されてもよい。そのような、所定の検知範囲内に存在する物体を検出するためのセンサとして、例えば、車両10に搭載されたLIDARセンサあるいはレーザセンサが用いられてもよい。この場合、物体検出部34が識別器として用いるDNNは、車両10に搭載されたセンサにより取得されたセンサ信号から、物体を検出するように予め学習されればよい。この場合も、識別器は、上記の実施形態または変形例と同様に、複数の部分ネットワークを含む可変層を1以上有し、複数の部分ネットワークは、対応する目標計算量に応じて予め学習されればよい。
また他の変形例によれば、複数の部分ネットワークを有するDNNは、物体検出処理以外に用いられてもよい。例えば、運転計画部35が、一連の画像から検出された、追跡された物体の位置に基づいて車両10の走行予定経路を決定するために、DNNが利用されてもよい。この場合、ECU4は、車両制御装置の一例となり、運転計画部35は、制御情報決定部の一例となり、車両10の走行予定経路は、車両10の制御情報の一例となる。DNNは、追跡された物体の各画像から検出された位置が入力されると、車両10の最適な走行予定経路を出力するよう、例えば、強化学習の手法に従って予め学習されればよい。そしてこの場合も、識別器制御部33は、運転計画部35の運転計画処理に利用可能なリソース(計算リソース量及び電力量の少なくとも一方)と、オンにするスイッチの組み合わせとの関係を表す参照テーブルを参照することで、そのリソースに基づいて、DNNが有する複数の部分ネットワークのうち、運転計画処理に利用される部分ネットワークを決定すればよい。なお、この場合も、運転計画処理に利用可能なリソースが多くなるほど、運転計画処理に利用される部分ネットワークの数が多くなるように、参照テーブルは設定されればよい。これにより、運転計画処理に利用可能なリソースが制限される場合でも、運転計画部35は、所定の制御周期ごとに、1回の運転計画処理を完了することができる。
また、上記の実施形態または変形例による、物体検出装置のプロセッサ23の各部の機能を実現するコンピュータプログラムは、半導体メモリ、磁気記録媒体または光記録媒体といった、コンピュータ読取可能な可搬性の記録媒体に記録された形で提供されてもよい。
以上のように、当業者は、本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
1 車両制御システム
2 カメラ
3 電力センサ
4 電子制御装置(物体検出装置)
5 車内ネットワーク
6 車載バッテリ
21 通信インターフェース
22 メモリ
23 プロセッサ
31 リソース量算出部
32 目標計算量算出部
33 識別器制御部
34 物体検出部
35 運転計画部
36 車両制御部

Claims (5)

  1. 車両に搭載されたセンサから得られるセンサ信号をニューラルネットワークに入力することで前記車両の周囲に存在する物体を検出し、前記ニューラルネットワークは、前記センサ信号が入力される入力層と、前記物体の検出結果を出力する出力層と、前記入力層と前記出力層との間に接続される複数の層とを有し、前記複数の層のうちの少なくとも一つの層は、同一の構造を持ち、かつ、当該層に入力される信号に対して互いに並列に演算する複数の部分ネットワークを有する検出部と、
    前記検出部が利用可能な電力量に応じて、前記少なくとも一つの層のそれぞれにおける前記複数の部分ネットワークのうち、前記検出部が前記物体を検出する際に用いられる部分ネットワークの数を制御するネットワーク制御部と、
    を有する物体検出装置。
  2. 前記ネットワーク制御部は、前記検出部が利用可能な電力量に応じて、前記検出部が前記物体を検出する際の目標計算量を求め、前記目標計算量に応じて、前記少なくとも一つの層のそれぞれにおける前記複数の部分ネットワークのうち、前記検出部が前記物体を検出する際に用いられる部分ネットワークの数を制御する、請求項1に記載の物体検出装置。
  3. 前記目標計算量と、前記少なくとも一つの層のそれぞれについて、前記複数の部分ネットワークのうち、前記検出部が前記物体を検出する際に用いられる部分ネットワークとの関係を表すテーブルを記憶する記憶部をさらに有し、
    前記ネットワーク制御部は、前記テーブルを参照して、前記目標計算量に応じて、前記少なくとも一つの層のそれぞれについて、前記複数の部分ネットワークのうち、前記検出部が前記物体を検出する際に用いられる部分ネットワークを決定する、請求項2に記載の物体検出装置。
  4. 車両に搭載されたセンサから得られるセンサ信号をニューラルネットワークに入力することで前記車両の周囲に存在する物体を検出し、前記ニューラルネットワークは、前記センサ信号が入力される入力層と、前記物体の検出結果を出力する出力層と、前記入力層と前記出力層との間に接続される複数の層とを有し、前記複数の層のうちの少なくとも一つの層は、同一の構造を持ち、かつ、当該層に入力される信号に対して互いに並列に演算する複数の部分ネットワークを有し、
    前記物体の検出に利用可能な電力量に応じて、前記少なくとも一つの層のそれぞれにおける前記複数の部分ネットワークのうち、前記物体を検出する際に用いられる部分ネットワークの数を制御する、
    物体検出方法。
  5. 車両に搭載されたセンサから得られるセンサ信号から検出された前記車両の周囲の物体の位置を表す情報をニューラルネットワークを入力することで前記車両の制御情報を求め、前記ニューラルネットワークは、前記車両の周囲の物体の位置を表す情報が入力される入力層と、前記制御情報を出力する出力層と、前記入力層と前記出力層との間に接続される複数の層とを有し、前記複数の層のうちの少なくとも一つの層は、同一の構造を持ち、かつ、当該層に入力される信号に対して互いに並列に演算する複数の部分ネットワークを有する制御情報決定部と、
    前記制御情報決定部が利用可能な電力量に応じて、前記少なくとも一つの層のそれぞれにおける前記複数の部分ネットワークのうち、前記制御情報決定部が前記制御情報を求める際に用いられる部分ネットワークの数を制御するネットワーク制御部と、
    を有する車両制御装置。
JP2018180713A 2018-09-26 2018-09-26 物体検出装置、物体検出方法及び車両制御装置 Active JP7119839B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018180713A JP7119839B2 (ja) 2018-09-26 2018-09-26 物体検出装置、物体検出方法及び車両制御装置
US16/582,250 US20200097005A1 (en) 2018-09-26 2019-09-25 Object detection device, object detection method, and vehicle controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018180713A JP7119839B2 (ja) 2018-09-26 2018-09-26 物体検出装置、物体検出方法及び車両制御装置

Publications (2)

Publication Number Publication Date
JP2020052667A JP2020052667A (ja) 2020-04-02
JP7119839B2 true JP7119839B2 (ja) 2022-08-17

Family

ID=69884130

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018180713A Active JP7119839B2 (ja) 2018-09-26 2018-09-26 物体検出装置、物体検出方法及び車両制御装置

Country Status (2)

Country Link
US (1) US20200097005A1 (ja)
JP (1) JP7119839B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11521339B2 (en) * 2020-06-10 2022-12-06 Snap Inc. Machine learning in augmented reality content items
JP7276282B2 (ja) * 2020-08-24 2023-05-18 トヨタ自動車株式会社 物体検出装置、物体検出方法及び物体検出用コンピュータプログラム
CN113408545B (zh) * 2021-06-17 2024-03-01 浙江光仑科技有限公司 一种基于微光学器件的端到端光电检测系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080319933A1 (en) 2006-12-08 2008-12-25 Medhat Moussa Architecture, system and method for artificial neural network implementation
JP2015014819A (ja) 2013-07-03 2015-01-22 クラリオン株式会社 接近物検出システム、及び車両
US20170371339A1 (en) 2016-06-28 2017-12-28 Ford Global Technologies, Llc Detecting Physical Threats Approaching A Vehicle

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080319933A1 (en) 2006-12-08 2008-12-25 Medhat Moussa Architecture, system and method for artificial neural network implementation
JP2015014819A (ja) 2013-07-03 2015-01-22 クラリオン株式会社 接近物検出システム、及び車両
US20170371339A1 (en) 2016-06-28 2017-12-28 Ford Global Technologies, Llc Detecting Physical Threats Approaching A Vehicle

Also Published As

Publication number Publication date
JP2020052667A (ja) 2020-04-02
US20200097005A1 (en) 2020-03-26

Similar Documents

Publication Publication Date Title
JP7052663B2 (ja) 物体検出装置、物体検出方法及び物体検出用コンピュータプログラム
CN111971574B (zh) 用于自动驾驶车辆的lidar定位的基于深度学习的特征提取
JP7086911B2 (ja) 自動運転車両のためのリアルタイム意思決定
CN111771135B (zh) 自动驾驶车辆中使用rnn和lstm进行时间平滑的lidar定位
US10997729B2 (en) Real time object behavior prediction
US20200026282A1 (en) Lane/object detection and tracking perception system for autonomous vehicles
US10984543B1 (en) Image-based depth data and relative depth data
CN111771141A (zh) 自动驾驶车辆中使用3d cnn网络进行解决方案推断的lidar定位
JP7147420B2 (ja) 物体検出装置、物体検出方法及び物体検出用コンピュータプログラム
JP7388971B2 (ja) 車両制御装置、車両制御方法及び車両制御用コンピュータプログラム
JP7119839B2 (ja) 物体検出装置、物体検出方法及び車両制御装置
US11157753B2 (en) Road line detection device and road line detection method
JP7359735B2 (ja) 物体状態識別装置、物体状態識別方法及び物体状態識別用コンピュータプログラムならびに制御装置
CN113267199A (zh) 行驶轨迹规划方法及装置
CN110119138A (zh) 用于自动驾驶车辆的自定位方法、系统和机器可读介质
CN110390240A (zh) 自动驾驶车辆中的车道后处理
CN112146680B (zh) 基于特征图确定消失点
CN111062405A (zh) 训练图像识别模型的方法和装置以及图像识别方法和装置
JP2020067896A (ja) 進行可能方向検出装置及び進行可能方向検出方法
CN112232104A (zh) 使用相对距离表示消失点
WO2019172104A1 (ja) 移動体挙動予測装置
CN112149484A (zh) 基于车道线确定消失点
US11370424B1 (en) Relevant object detection
JP2021128705A (ja) 物体状態識別装置
JP2021163432A (ja) 信号灯状態識別装置、信号灯状態識別方法及び信号灯状態識別用コンピュータプログラムならびに制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220405

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: 20220705

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220718

R151 Written notification of patent or utility model registration

Ref document number: 7119839

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151