JP7348874B2 - 傾斜角検出装置及び制御装置 - Google Patents

傾斜角検出装置及び制御装置 Download PDF

Info

Publication number
JP7348874B2
JP7348874B2 JP2020068689A JP2020068689A JP7348874B2 JP 7348874 B2 JP7348874 B2 JP 7348874B2 JP 2020068689 A JP2020068689 A JP 2020068689A JP 2020068689 A JP2020068689 A JP 2020068689A JP 7348874 B2 JP7348874 B2 JP 7348874B2
Authority
JP
Japan
Prior art keywords
feature extraction
wheeled vehicle
image
vehicle
inclination angle
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
JP2020068689A
Other languages
English (en)
Other versions
JP2021165916A (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.)
Denso Corp
Toyota Motor Corp
Original Assignee
Denso Corp
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 Denso Corp, Toyota Motor Corp filed Critical Denso Corp
Priority to JP2020068689A priority Critical patent/JP7348874B2/ja
Priority to CN202110344339.3A priority patent/CN113492850B/zh
Priority to US17/220,082 priority patent/US11726483B2/en
Publication of JP2021165916A publication Critical patent/JP2021165916A/ja
Application granted granted Critical
Publication of JP7348874B2 publication Critical patent/JP7348874B2/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
    • 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
    • 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/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • 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
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/12Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to parameters of the vehicle itself, e.g. tyre models
    • 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
    • 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/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • 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/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • 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/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06F18/2148Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/285Selection of pattern recognition techniques, e.g. of classifiers in a multi-classifier system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • 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
    • 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/588Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
    • 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
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • 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
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • 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
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/402Type
    • B60W2554/4026Cycles
    • 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
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/404Characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Electromagnetism (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Databases & Information Systems (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
  • Image Processing (AREA)

Description

本発明は、画像に表された二輪車の地面の法線に対する傾斜角を検出する傾斜角検出装置、及び、そのような傾斜角検出装置を利用した、車両の走行を制御する制御装置に関する。
自車両の周囲を走行する二輪車の挙動を予測するために、二輪車の地面の法線に対する傾斜角を検出する技術が提案されている(例えば、特許文献1及び2を参照)。なお、本願では、二輪車をその正面または背面から見たときの、地面に対するその二輪車の接地点からその二輪車のライダーの頭頂部までを結ぶ直線の地面の法線に対する傾き角度を、地面の法線に対するその二輪車の傾斜角(以下、単に傾斜角と呼ぶことがある)とする。
例えば、特許文献1に開示された運転支援システムは、自動二輪車が自車両を追い越した場合にその自動二輪車のバンク角を検出し、検出したバンク角に基づいて自車用の前方に自動二輪車が割り込むか否かを判定する。
また、特許文献2に開示された動作方法は、画像の少なくとも二つのラインにおいて二輪車に分類される画素の中間カラム値を求め、その中間カラム値に基づいて二輪車の傾斜角を求める。
特開2017-185862号公報 特開2017-102928号公報
一般的に、二輪車が進行方向を変える際には、二輪車のライダーは、二輪車を進行方向側に傾けるので、二輪車の傾斜角は、二輪車の挙動を予測するための重要な情報となる。そこで、画像に表された二輪車の傾斜角より正確に検出することが求められる。
そこで、本発明は、画像に表された二輪車の地面の法線に対する傾斜角を検出することが可能な傾斜角検出装置を提供することを目的とする。
一つの実施形態によれば、傾斜角検出装置が提供される。この傾斜角検出装置は、撮像部により生成された画像を、二輪車を検出するように予め学習された第1の識別器に入力することで、画像上で二輪車を含む物体領域を検出する物体検出部と、物体領域を互いに異なる所定角度ずつ回転させた複数の特徴抽出領域を設定し、複数の特徴抽出領域のそれぞれを画像から切り出す特徴抽出領域設定部と、複数の特徴抽出領域のそれぞれにおいて二輪車の幅を求め、複数の特徴抽出領域のそれぞれについての画像に対する回転角と二輪車の幅とに基づいて、二輪車の幅が最小となる画像に対する回転角を、地面の法線に対する二輪車の傾斜角として検出する傾斜角検出部とを有する。
この傾斜角検出装置において、傾斜角検出部は、複数の特徴抽出領域のそれぞれについて、所定のサイズとなるようにその特徴抽出領域のサイズを変更してから、二輪車の左端の位置及び右端の位置を検出するように予め学習された第2の識別器に入力することで、複数の特徴抽出領域のそれぞれにおける二輪車の左端の位置及び右端の位置を求め、複数の特徴抽出領域のそれぞれについて、その特徴抽出領域における二輪車の左端の位置及び右端の位置の差としてその特徴抽出領域における二輪車の幅を求めることが好ましい。
また、この傾斜角検出装置において、傾斜角検出部は、複数の特徴抽出領域のそれぞれにおける、二輪車の幅とその特徴抽出領域の画像に対する回転角の組をフィッティングすることで、回転角の変化に対する二輪車の幅の変化を表すフィッティング曲線をもとめ、そのフィッティング曲線において二輪車の幅が最小となる回転角を、地面の法線に対する二輪車の傾斜角とすることが好ましい。
他の実施形態によれば、傾斜角検出装置が提供される。この傾斜角検出装置は、撮像部により生成された画像を、二輪車を検出するように予め学習された第1の識別器に入力することで、画像上で二輪車を含む物体領域を検出する物体検出部と、物体領域を互いに異なる所定角度ずつ回転させた複数の特徴抽出領域を設定し、複数の特徴抽出領域のそれぞれを画像から切り出す特徴抽出領域設定部と、複数の特徴抽出領域のそれぞれにおいて二輪車の高さを求め、複数の特徴抽出領域のそれぞれについての画像に対する回転角と二輪車の高さとに基づいて、二輪車の高さが最大となる画像に対する回転角を、地面の法線に対する二輪車の傾斜角として検出する傾斜角検出部とを有する。
さらに他の実施形態によれば、車両の走行を制御する制御装置が提供される。この制御装置は、車両に搭載された撮像部により生成された画像を、二輪車を検出するように予め学習された第1の識別器に入力することで、画像上で車両の周囲に位置する二輪車を含む物体領域を検出する物体検出部と、物体領域を互いに異なる所定角度ずつ回転させた複数の特徴抽出領域を設定し、複数の特徴抽出領域のそれぞれを画像から切り出す特徴抽出領域設定部と、複数の特徴抽出領域のそれぞれにおいて二輪車の幅を求め、複数の特徴抽出領域のそれぞれについての画像に対する回転角と二輪車の幅とに基づいて、二輪車の幅が最小となる画像に対する回転角を、地面の法線に対する二輪車の傾斜角として検出する傾斜角検出部と、検出された二輪車の傾斜角に基づいて、二輪車が走行する軌跡を予測し、予測した軌跡に基づいて、車両が二輪車と所定距離以上離れるように車両の走行予定経路を設定する運転計画部と、走行予定経路に沿って車両が走行するように車両を制御する車両制御部とを有する。
本発明に係る傾斜角検出装置は、画像に表された二輪車の地面の法線に対する傾斜角を検出することができるという効果を奏する。
傾斜角検出装置が実装される車両制御システムの概略構成図である。 傾斜角検出装置の一実施形態である電子制御装置のハードウェア構成図である。 傾斜角検出処理を含む車両制御処理に関する、電子制御装置のプロセッサの機能ブロック図である。 第1の識別器として利用されるDNNの構成の一例を示す図である。 画像上に表される二輪車についての物体領域及び特徴抽出領域の一例を示す図である。 切り出された特徴抽出領域とリサイズ後の特徴抽出領域の関係の一例を示す図である。 第2の識別器による二輪車の左右端の検出結果の一例を示す図である。 特徴抽出領域ごとの二輪車の幅の検出結果に基づく傾斜角検出の概要を説明する図である。 傾斜角検出処理に関連する各部の処理のタイミングチャートである。 傾斜角検出処理を含む車両制御処理の動作フローチャートである。
以下、図を参照しつつ、傾斜角検出装置について説明する。この傾斜角検出装置は、画像に表される二輪車の地面の法線に対する傾斜角を検出する。そのために、この傾斜角検出装置は、二輪車を検出するように予め学習された第1の識別器に画像を入力することで、画像上に表された二輪車を含む領域(以下、物体領域と呼ぶことがある)を検出する。そして、この傾斜角検出装置は、物体領域を所定の角度ずつ回転させることで得られる複数の特徴抽出領域を設定し、画像から、各特徴抽出領域を切り出す。そしてこの傾斜角検出装置は、各特徴抽出領域を一定のサイズにリサイズし、リサイズされた各特徴抽出領域個々の画素値を含む入力データを第2の識別器に入力することで、特徴抽出領域ごとに、その特徴抽出領域の水平方向における二輪車の幅(以下、単に、特徴抽出領域における二輪車の幅と呼ぶことがある)を求め、特徴抽出領域ごとの二輪車の幅と元の画像に対する回転角とに基づいて、二輪車の幅が最小となる回転角を、二輪車の傾斜角として検出する。
以下では、傾斜角検出装置を、車両制御システムに適用した例について説明する。この例では、傾斜角検出装置は、車両に搭載されたカメラにより得られた時系列の一連の画像に対して傾斜角検出処理を実行することで、車両の周囲に存在する二輪車を検出し、検出した二輪車の傾斜角を検出する。そして車両制御システムは、検出した傾斜角に基づいて、二輪車の挙動を予測し、予測した挙動に基づいて、車両を自動運転制御する。
図1は、傾斜角検出装置が実装される車両制御システムの概略構成図である。また図2は、傾斜角検出装置の一つの実施形態である電子制御装置のハードウェア構成図である。本実施形態では、車両10に搭載され、かつ、車両10を制御する車両制御システム1は、車両10の周囲を撮影するためのカメラ2と、傾斜角検出装置の一例である電子制御装置(ECU)3とを有する。カメラ2とECU3とは、コントローラエリアネットワークといった規格に準拠した車内ネットワーク4を介して通信可能に接続される。なお、車両制御システム1は、車両10の自動運転制御に用いられる地図を記憶するストレージ装置をさらに有していてもよい。さらに、車両制御システム1は、LiDARあるいはレーダといった測距センサ、GPS受信機といった、衛星測位システムに準拠して車両10の自己位置を測位するための受信機、他の機器と無線通信するための無線端末、及び、車両10の走行予定ルートを探索するためのナビゲーション装置などを有していてもよい。
カメラ2は、所定の検知範囲内に存在する物体を検出するためのセンサである撮像部の一例であり、CCDあるいはC-MOSなど、可視光に感度を有する光電変換素子のアレイで構成された2次元検出器と、その2次元検出器上に撮影対象となる領域の像を結像する結像光学系を有する。そしてカメラ2は、車両10の前方を向くように、例えば、車両10の車室内に取り付けられる。そしてカメラ2は、所定の撮影周期(例えば1/30秒~1/10秒)ごとに車両10の前方領域を撮影し、その前方領域が写った画像を生成する。カメラ2により得られた画像は、カラー画像であることが好ましい。なお、車両10には、撮影方向または焦点距離が異なる複数のカメラが設けられてもよい。
カメラ2は、画像を生成する度に、その生成した画像を、車内ネットワーク4を介してECU3へ出力する。
ECU3は、車両10を制御する。本実施形態では、ECU3は、カメラ2により得られた時系列の一連の画像から検出された物体に基づいて車両10を自動運転するよう、車両10を制御する。そのために、ECU3は、通信インターフェース21と、メモリ22と、プロセッサ23とを有する。
通信インターフェース21は、通信部の一例であり、ECU3を車内ネットワーク4に接続するためのインターフェース回路を有する。すなわち、通信インターフェース21は、車内ネットワーク4を介して、カメラ2と接続される。そして通信インターフェース21は、カメラ2から画像を受信する度に、受信した画像をプロセッサ23へわたす。
メモリ22は、記憶部の一例であり、例えば、揮発性の半導体メモリ及び不揮発性の半導体メモリを有する。なお、メモリ22は、後述するようにプロセッサ23が複数の演算ユニットを有する場合に、演算ユニットごとに専用のメモリ回路を有していてもよい。そしてメモリ22は、ECU3のプロセッサ23により実行される傾斜角検出処理において使用される各種のデータ及びパラメータ、例えば、カメラ2から受信した画像、傾斜角検出処理で利用される各識別器を特定するための各種パラメータ、及び、物体の種類ごとの確信度閾値などを記憶する。さらに、メモリ22は、検出された物体に関する情報を表す検出物体リストといった、傾斜角検出処理の途中で生成される各種のデータを一定期間記憶する。さらにまた、メモリ22は、地図情報といった車両10の走行制御に利用される情報を記憶してもよい。
プロセッサ23は、制御部の一例であり、1個または複数個のCPU(Central Processing Unit)及びその周辺回路を有する。プロセッサ23は、論理演算ユニット、数値演算ユニットあるいはグラフィック処理ユニット(Graphics Processing Unit, GPU)といった他の演算回路をさらに有していてもよい。そしてプロセッサ23は、車両10が走行している間、カメラ2から画像を受信する度に、受信した画像に対して傾斜角検出処理を含む車両制御処理を実行する。そしてプロセッサ23は、検出された車両10の周囲の物体、特に、二輪車に基づいて、車両10を自動運転するよう、車両10を制御する。
図3は、傾斜角検出処理を含む車両制御処理に関する、ECU3のプロセッサ23の機能ブロック図である。プロセッサ23は、物体検出部31と、特徴抽出領域設定部32と、傾斜角検出部33と、追跡部34と、運転計画部35と、車両制御部36とを有する。プロセッサ23が有するこれらの各部は、例えば、プロセッサ23上で動作するコンピュータプログラムにより実現される機能モジュールである。あるいは、プロセッサ23が有するこれらの各部は、プロセッサ23に設けられる、専用の演算回路であってもよい。また、プロセッサ23が有するこれらの各部のうち、物体検出部31、特徴抽出領域設定部32及び傾斜角検出部33が、傾斜角検出処理を実行する。なお、車両10に複数のカメラが設けられる場合には、プロセッサ23は、カメラごとに、そのカメラにより得られた画像に基づいて傾斜角検出処理を実行してもよい。
物体検出部31は、カメラ2から画像を受信する度に、受信した最新の画像を物体検出用の第1の識別器に入力することで、その画像に表されている二輪車といった検出対象物体が含まれる物体領域を検出する。なお、検出対象物体には、二輪車以外に、車両10の走行制御に影響する物体、例えば、他の車両、人、道路標識、信号機、車線区画線などの道路標示、及び、道路上のその他の物体などが含まれる。
本実施形態では、物体検出部31は、第1の識別器として、画像に表された検出対象物体(二輪車を含む)を含む物体領域を検出し、かつ、検出対象物体の種類を識別するように予め学習されたDNNを利用する。物体検出部31が利用するDNNは、例えば、Single Shot MultiBox Detector(SSD)、または、Faster R-CNNといった、コンボリューショナルニューラルネットワーク(以下、単にCNNと呼ぶ)型のアーキテクチャを持つDNNとすることができる。
図4は、第1の識別器として利用されるDNNの構成の一例を示す図である。DNN400は、画像が入力される入力側に設けられる主幹部401と、主幹部401よりも出力側に設けられる位置検出部402及び種類推定部403とを有する。位置検出部402は、主幹部401からの出力に基づいて、画像上に表された検出対象物体を含む物体領域として出力する。種類推定部403は、主幹部401からの出力に基づいて、位置検出部402で検出された物体領域に表された検出対象物体の種類ごとの確信度を算出する。なお、位置検出部402及び種類推定部403は一体的に形成されてもよい。
主幹部401は、例えば、入力側から出力側へ向けて直列に接続される複数の層を有するCNNとすることができる。その複数の層には2以上の畳み込み層が含まれる。さらに、主幹部401が有する複数の層には、1または複数の畳み込み層ごとに設けられるプーリング層が含まれてもよい。さらにまた、主幹部401が有する複数の層には、1以上の全結合層が含まれてもよい。例えば、主幹部401は、SSDのベースレイヤーと同様の構成とすることができる。あるいは、主幹部401は、VGG-19、AlexNetあるいはNetwork-In-Networkといった他のCNNアーキテクチャに従って構成されてもよい。
主幹部401は、画像が入力されると、その画像に対して各層での演算を実行することで、その画像から算出したfeature mapを出力する。なお、主幹部401は、解像度の異なる複数のfeature mapを出力してもよい。例えば、主幹部401は、入力された画像の解像度と同じ解像度を持つfeature mapと、入力された画像の解像度よりも低い解像度の1以上のfeature mapを出力してもよい。
位置検出部402及び種類推定部403には、それぞれ、主幹部401から出力されたfeature mapが入力される。そして位置検出部402及び種類推定部403は、それぞれ、例えば、入力側から出力側へ向けて直列に接続される複数の層を有するCNNとすることができる。位置検出部402及び種類推定部403のそれぞれについて、CNNが有する複数の層には2以上の畳み込み層が含まれる。また、位置検出部402及び種類推定部403のそれぞれについて、CNNが有する複数の層には、1または複数の畳み込み層ごとに設けられるプーリング層が含まれてもよい。なお、CNNが有する畳み込み層及びプーリング層は、位置検出部402及び種類推定部403について共通化されてもよい。さらに、位置検出部402及び種類推定部403のそれぞれについて、複数の層には、1以上の全結合層が含まれてもよい。この場合、全結合層は、各畳み込み層よりも出力側に設けられることが好ましい。また全結合層には、各畳み込み層からの出力が直接入力されてもよい。また、種類推定部403の出力層は、ソフトマックス関数に従って検出対象物体の種類のそれぞれの確信度を算出するソフトマックス層としてもよいし、シグモイド関数に従って検出対象物体の種類のそれぞれの確信度を算出するシグモイド層としてもよい。
位置検出部402及び種類推定部403は、例えば、画像上の様々な位置、様々なサイズ及び様々なアスペクト比の領域ごとに、検出対象物体の種類のそれぞれの確信度を出力するように学習される。したがって、識別器400は、画像が入力されることで、画像上の様々な位置、様々なサイズ及び様々なアスペクト比の領域ごとに、検出対象物体の種類のそれぞれの確信度を出力する。そして位置検出部402及び種類推定部403は、何れかの種類の検出対象物体についての確信度が所定の確信度閾値以上となる領域を、その種類の検出対象物体が表された物体領域として検出する。
識別器400の学習に利用される教師データに含まれる画像(教師画像)には、例えば、検出対象物体の種類(例えば、普通乗用車、バス、トラック、二輪車など)と、検出対象物体が表された物体領域である、その検出対象物体の外接矩形とがタグ付けされる。
識別器400は、上記のような多数の教師画像を用いて、例えば、誤差逆伝搬法といった学習手法に従って学習される。プロセッサ23は、このように学習された識別器400を利用することで、画像から、二輪車といった検出対象物体を精度良く検出できる。
物体検出部31は、さらに、Non-maximum suppression(NMS)処理を実行することで、少なくとも部分的に重複する2以上の物体領域のうち、同一の物体が表されていると推定される物体領域から一つを選択してもよい。
物体検出部31は、各物体領域の画像上での位置及び範囲と、その物体領域に含まれる物体の種類とを、検出物体リストに登録する。そして物体検出部31は、検出物体リストをメモリ22に記憶する。
特徴抽出領域設定部32は、検出された二輪車ごとに、その二輪車の幅を求めるための複数の特徴抽出領域を設定する。特徴抽出領域設定部32は、個々の二輪車に対して同じ処理を実行すればよいので、以下では、一つの二輪車に対する処理について説明する。
特徴抽出領域設定部32は、検出物体リストを参照して、検出された二輪車が表された物体領域を特定し、その物体領域を元の画像に対して互いに異なる所定角度ずつ回転させた複数の特徴抽出領域を設定する。そして特徴抽出領域設定部32は、画像から各特徴抽出領域を切り出す。なお、特徴抽出領域設定部32は、検出物体リストに2台以上の二輪車が登録されている場合、個々の二輪車ごとに、特徴抽出領域を設定すればよい。また、所定角度は、例えば、5°単位、10°単位あるいは20°単位とすることができる。
図5は、画像上に表される二輪車についての物体領域及び特徴抽出領域の一例を示す図である。この例では、画像500上に表された二輪車(ライダーを含む)501を含む矩形状の物体領域510について、物体領域510を±20度ずつ回転させることで、物体領域510自体(すなわち、回転角0度)を含めて5個の特徴抽出領域510~514が設定される。なお、各特徴抽出領域510~514には、元の物体領域510全体が包含されるように、特徴抽出領域設定部32は、各特徴抽出領域510~514を設定することが好ましい。これにより、何れかの特徴抽出領域から、二輪車の左右それぞれの端部の一部が外れることが抑制され、後述する第2の識別器が二輪車の左端及び右端のそれぞれの位置を正確に検出することが可能となる。
特徴抽出領域設定部32は、設定した各特徴抽出領域を、元の画像から切り出す。得られた各特徴抽出領域には、傾斜角の検出対象となる二輪車が含まれる。各特徴抽出領域は、対応する物体領域に対して互いに異なる回転角度で設定されているので、特徴抽出領域ごとに、その特徴抽出領域の下端に対する二輪車の傾きが異なることになる。また、一般に、二輪車を前方または後方から見た場合、地面に対する二輪車の接地点とその二輪車のライダーの頭頂部とを結ぶ方向(以下、説明の便宜上、中心線方向と呼ぶ)の長さは、中心線方向と直交する方向の長さよりも長い。そのため、図5において各特徴抽出領域510~514に示されるように、特徴抽出領域の下端に対する二輪車の中心線方向とのなす角が大きいほど、特徴抽出領域の水平方向(すなわち、特徴抽出領域の下端と平行な方向)における、二輪車の幅は小さくなる。すなわち、元の画像に対する特徴抽出領域の回転角と、二輪車の傾斜角との差が小さいほど、特徴抽出領域の水平方向における、二輪車の幅は小さくなる。そこで、これらの特徴抽出領域のそれぞれから二輪車の幅を検出することで、二輪車の傾斜角を推定することが可能となる。
特徴抽出領域設定部32は、画像から切り出した特徴抽出領域のそれぞれについて、水平方向の幅及び垂直方向の幅が所定のサイズ(例えば、64×64画素)となるように、ダウンサンプリング、アップサンプリング、bi-linear補間またはbi-cubic補間などのサイズ変換処理を実行することでリサイズする。これにより、画像上での二輪車のサイズ及び二輪車の傾斜角に関わらず、後述する第2の識別器に同じサイズの特徴抽出領域が入力されることになるので、第2の識別器の構造が簡単化される。
図6は、画像から切り出された特徴抽出領域とリサイズ後の特徴抽出領域の関係の一例を示す図である。図6において、特徴抽出領域610~614は、それぞれ、図5に示される特徴抽出領域510~514と対応しており、リサイズが行われる前の特徴抽出領域である。一方、特徴抽出領域620~624は、それぞれ、特徴抽出領域610~614を所定のサイズにリサイズすることで得られた、リサイズ後の特徴抽出領域である。元の画像に対するリサイズ前の各特徴抽出領域610~614の回転角は互いに異なっており、かつ、各特徴抽出領域610~614は、物体領域全体を包含するように設定されているため、各特徴抽出領域610~614の水平方向及び垂直方向のサイズは互いに異なっている。しかし、リサイズ後の特徴抽出領域620~624の水平方向及び垂直方向のサイズは互いに等しくなっている。
特徴抽出領域設定部32は、リサイズされた各特徴抽出領域を傾斜角検出部33へ出力する。さらに、特徴抽出領域設定部32は、各特徴抽出領域について、リサイズ前の水平方向の幅に対するリサイズ後の水平方向の幅の比(以下、説明の便宜上、正規化比と呼ぶ)を傾斜角検出部33へ通知する。
傾斜角検出部33は、検出物体リストに登録された二輪車のそれぞれについて、その二輪車の傾斜角を検出する。傾斜角検出部33は、個々の二輪車に対して同じ処理を実行すればよいので、以下では、一つの二輪車に対する処理について説明する。
傾斜角検出部33は、リサイズされた各特徴抽出領域の個々の画素値を含む入力データを、二輪車の左端の位置と右端の位置とを検出するように予め学習された第2の識別器に入力することで、特徴抽出領域ごとにその特徴抽出領域に表された二輪車の左端の位置と右端の位置とを検出する。傾斜角検出部33は、各特徴抽出領域から検出された、二輪車の左端の位置と右端の位置とに基づき、各特徴抽出領域に表された二輪車の幅を求める。そして傾斜角検出部33は、各特徴抽出領域についての二輪車の幅と元の画像に対する回転角とに基づいて、二輪車の幅が最小となる回転角を、二輪車の傾斜角として検出する。本実施形態では、傾斜角検出部33は、各特徴抽出領域のうち、二輪車の幅が最小となる特徴抽出領域の元の画像に対する回転角を、二輪車の傾斜角として検出する。
例えば、リサイズ後の個々の特徴抽出領域のサイズが64×64画素であり、特徴抽出領域の個数が5個であり、かつ、各特徴抽出領域が切り出された元の画像が、RGBの3チャネルで表されるカラー画像である場合、第2の識別器には、サイズが(5(特徴抽出領域数),3(チャネル数),64(水平方向画素数),64(垂直方向画素数))の4階のテンソルとなる入力データが第2の識別器に入力される。
第2の識別器は、例えば、CNN型のアーキテクチャを有するニューラルネットワークとすることができる。この場合、第2の識別器は、水平方向及び垂直方向についての畳み込み演算、または、水平方向、垂直方向及びチャネル方向についての畳み込み演算を行ってfeature mapを生成する1以上の畳み込み層と、畳み込み層により算出されたfeature mapに対する全結合演算を行う1以上の全結合層と、全結合層による演算結果に基づいて、各特徴抽出領域における二輪車の左端の位置及び右端の位置を出力する出力層とを有する。さらに、第2の識別器は、複数の畳み込み層の間に、feature mapの解像度を低下させるプーリング層を有してもよい。出力層は、例えば、活性化関数としてsigmoid関数を用い、各特徴抽出領域について、水平方向における位置ごとに、[0,1]の値域において二輪車の左端らしさを表す値を出力する。この場合、例えば、出力値0となる位置が二輪車の左端の位置を表し、一方、出力値1となる位置が二輪車の右端の位置を表す。あるいは、出力層は、活性化関数を用いず、各特徴抽出領域について、左端位置と右端位置それぞれの位置を回帰推定してもよい。
第2の識別器は、上記のようなリサイズ後の特徴抽出領域のセットとそのセットに含まれる各特徴抽出領域において二輪車の左端の位置及び右端の位置を表すアノテーション情報との組を複数含む教師データを用いて、誤差逆伝搬法に従って予め学習される。教師データとして使用されるリサイズ後の特徴抽出領域のセットは、例えば、教師データ生成用の画像を第1の識別器に入力して二輪車を表す物体領域を特定し、特定した物体領域に対して特徴抽出領域設定部32の処理と同様の処理を実行することで作成される。
図7は、第2の識別器による二輪車の左右端の検出結果の一例を示す図である。図7に示されるように、第2の識別器は、リサイズ後、すなわち、第2の識別器に入力された特徴抽出領域700上で、二輪車の左端位置xLeftNormalized及び右端位置xRightNormalizedを出力する。
傾斜角検出部33は、リサイズ後の特徴抽出領域のそれぞれについて、第2の識別器から出力された、二輪車の左端の位置及び右端の位置を、その特徴抽出領域の正規化比に基づいて、リサイズ前の特徴抽出領域における位置へ補正する。すなわち、傾斜角検出部33は、リサイズ後の特徴抽出領域のそれぞれについて、その特徴抽出領域における二輪車の左端の位置及び右端の位置を、その特徴抽出領域についての正規化比で除することで、リサイズ前の特徴抽出領域における、二輪車の左端の位置及び右端の位置を求めることができる。そして傾斜角検出部33は、リサイズ前の各特徴抽出領域について、二輪車の左端の位置と右端の位置の差を、その特徴抽出領域における二輪車の幅として算出する。傾斜角検出部33は、リサイズ前の各特徴抽出領域のうち、二輪車の幅が最小となる特徴抽出領域を特定し、特定した特徴抽出領域の元の画像に対する回転角を、二輪車の傾斜角として検出する。
例えば、図5に示される例では、5個の特徴抽出領域510~514のうち、物体領域を反時計回りに40°回転させた特徴抽出領域513において、二輪車501の幅が最小となる。そこで、傾斜角検出部33は、二輪車501の傾斜角を、反時計回りに40°として検出する。
変形例によれば、傾斜角検出部33は、特徴抽出領域のそれぞれの回転角と二輪車の幅の組を、非線形最小二乗法等のフィッティング手法を用いて2次曲線などで表されるフィッティング曲線にフィッティングする。このフィッティング曲線は、元の画像に対する回転角の変化に対する、二輪車の幅の変化を表す。そこで、傾斜角検出部33は、フィッティング曲線において二輪車の幅が最小となる回転角を特定し、その特定した回転角を、二輪車の傾斜角として検出してもよい。
図8は、この変形例による、特徴抽出領域ごとの二輪車の幅の検出結果に基づく傾斜角検出の概要を説明する図である。図8において、横軸は、元の画像に対する特徴抽出領域の回転角を表す。なお、この例では、時計回りに特徴抽出領域を回転させた場合の回転角が負で表され、一方、反時計回りに特徴抽出領域を回転させた場合の回転角が正で表される。また、縦軸は、二輪車の幅を表す。そして曲線800は、特徴抽出領域ごとに求められた二輪車の幅とその特徴抽出領域の回転角との組801に対するフィッティング曲線を表す。この例では、フィッティング曲線800において、回転角40°において二輪車の幅が最小となる。そこで、傾斜角検出部33は、二輪車の傾斜角を40°として検出する。
この変形例によれば、二輪車の傾斜角に対して何れの特徴抽出領域の回転角も一致していない場合でも、傾斜角検出部33は、その二輪車の傾斜角を正確に検出することができる。
傾斜角検出部33、検出物体リストに記録された二輪車ごとに、その二輪車の情報に、検出した二輪車の傾斜角を関連付けてメモリ22に記憶する。
図9は、傾斜角検出処理に関連する各部の処理のタイミングチャートである。プロセッサ23の各部の処理は、例えば、プロセッサ23上で動作するスケジューラ(図示せず)により管理され、図9に示されるタイミングチャートに従って実行される。図9において、横軸は時間を表す。また、図9において、個々のブロックは、そのブロック内に示された処理が実行されることを表し、個々の矢印は、各処理間でのデータ(画像、検出物体リスト、特徴抽出領域等)の受け渡しを表す。例えば、時刻t1にてECU3がカメラ2から画像を受け取ると、プロセッサ23が有するGPUにて、その画像に対する、物体検出部31による検出対象物体の検出処理が実行される。なお、検出対象物体の検出処理が行われる前に、画像に対してコントラスト補正または色変換といった前処理が行われてもよい。
検出対象物体の検出処理が行われると、プロセッサ23が有するCPUにて、検出された物体の種類及び物体領域の検出物体リストへの登録などの物体検出の後処理が行われ、その後に、後述する追跡部34による追跡処理が実行される。また、追跡処理と並列に、検出された二輪車に対して、特徴抽出領域設定部32による、特徴抽出領域設定処理が実行される。そして、特徴抽出領域設定処理の後に、GPUにより、個々の特徴抽出領域のリサイズ、リサイズされた個々の特徴抽出領域を含む、傾斜角検出部33の第2の識別器への入力データの生成、及び、第2の識別器による、各特徴抽出領域における二輪車の左右端の検出処理が実行される。そしてその検出結果に基づいて、CPUにより、二輪車の傾斜角の検出処理が実行される。そして追跡処理の結果及び傾斜角の検出結果が、運転計画部35及び車両制御部36の処理に利用される。なお、個々の特徴抽出領域のリサイズ、第2の識別器への入力データの生成、及び、第2の識別器による、回転角の異なる各特徴抽出領域における二輪車の左右端の検出処理は、バッチ処理として実行されればよい。
追跡部34は、最新の画像から検出された物体領域のそれぞれについて、その物体領域に表された検出対象物体を、検出物体リストを参照して過去の画像から検出された検出対象物体と対応付けることで、その物体領域に表された検出対象物体を追跡する。
追跡部34は、例えば、Lucas-Kanade法といった、オプティカルフローに基づく追跡処理を、最新の画像における、着目する物体領域及び過去の画像における物体領域に対して適用することで、その物体領域に表された検出対象物体を追跡する。そのため、追跡部34は、例えば、着目する物体領域に対してSIFTあるいはHarrisオペレータといった特徴点抽出用のフィルタを適用することで、その物体領域から複数の特徴点を抽出する。そして追跡部34は、複数の特徴点のそれぞれについて、過去の画像における物体領域における対応する点を、適用される追跡手法に従って特定することで、オプティカルフローを算出すればよい。あるいは、追跡部34は、画像から検出された移動物体の追跡に適用される他の追跡手法を、最新の画像における、着目する物体領域及び過去の画像における物体領域に対して適用することで、その物体領域に表された検出対象物体を追跡してもよい。
追跡部34は、最新の画像から検出された検出対象物体のうち、過去の画像に表された検出対象物体と対応付けられなかった検出対象物体に対して、新たな追跡対象として、他の追跡中の検出対象物体と異なる識別番号を割り当て、その割り当てた識別番号を検出物体リストに登録する。一方、追跡部34は、最新の画像から検出された検出対象物体のうち、過去の画像に表された検出対象物体と対応付けられた検出対象物体、すなわち、追跡中の検出対象物体について、その追跡中の検出対象物体に割り当てられた識別番号と同じ識別番号を対応付ける。
運転計画部35は、検出物体リストを参照して、車両10の周囲に存在する物体と車両10とが衝突しないように車両10の走行予定経路(トラジェクトリ)を1以上生成する。走行予定経路は、例えば、現時刻から所定時間先までの各時刻における、車両10の目標位置の集合として表される。例えば、運転計画部35は、検出物体リストを参照して、カメラ2についての車両10への取り付け位置などの情報を用いて視点変換処理を実行することで、検出物体リストにおける物体の画像内座標を鳥瞰画像上の座標(鳥瞰座標)に変換する。そして運転計画部35は、一連の鳥瞰座標に対してKalman FilterまたはParticle filterなどを用いたトラッキング処理を実行することで、検出物体リストに登録されている物体を追跡し、その追跡結果により得られた軌跡から、物体のそれぞれの所定時間先までの予測軌跡を推定する。その際、運転計画部35は、着目する検出対象物体が二輪車である場合、追跡中の各画像の取得時点における、その二輪車の傾斜角を予測軌跡の推定に利用する。例えば、着目する検出対象物体である二輪車が、地面に対する法線に対して反時計回りに傾斜している場合(すなわち、車両10から見て左側に傾斜している場合)、その傾斜角が大きいほど、かつ、反時計回りの傾斜角が時間経過とともに増加するほど、その二輪車は左側へ車線変更し、あるいは、左折する可能性が高い。そこで、運転計画部35は、その二輪車について、反時計回りの傾斜角が大きいほど、かつ、反時計回りの傾斜角が時間経過とともに増加するほど、短い時間で左側へ車線変更し、あるいは、左折する予測軌跡を推定する。同様に、着目する検出対象物体である二輪車が、地面に対する法線に対して時計回りに傾斜している場合(すなわち、車両10から見て右側に傾斜している場合)、その傾斜角が大きいほど、かつ、時計回りの傾斜角が時間経過とともに増加するほど、その二輪車は右側へ車線変更し、あるいは、右折する可能性が高い。そこで、運転計画部35は、その二輪車について、時計回りの傾斜角が大きいほど、かつ、時計回りの傾斜角が時間経過とともに増加するほど、短い時間で右側へ車線変更し、あるいは、右折する予測軌跡を推定する。さらに、着目する検出対象物体である二輪車の傾斜角の絶対値が、所定の角度(例えば、5°)以下である場合には、その二輪車は直進する可能性が高い。そこで、運転計画部35は、その二輪車について、直進するような予測軌跡を推定する。
運転計画部35は、追跡中の各物体の予測軌跡と、車両10の位置、速度及び姿勢に基づいて、何れの物体についても所定時間先までの追跡中の物体のそれぞれと車両10間の距離の予測値が所定距離以上となるように、車両10の走行予定経路を生成する。なお、運転計画部35は、車両10の位置、速度及び姿勢を、例えば、車両10に搭載されたGPS受信機(図示せず)から得た車両10の現在位置を表す現在位置情報に基づいて推定できる。あるいは、ローカライズ処理部(図示せず)が、カメラ2により画像が得られる度に、その画像から車両10の左右の車線区画線を検出し、検出された車線区画線とメモリ22に記憶されている地図情報とをマッチングすることで、車両10の位置、速度及び姿勢が推定されてもよい。さらに、運転計画部35は、例えば、車両10の現在位置情報と、メモリ22に記憶されている地図情報とを参照して、車両10が走行可能な車線の数を確認してもよい。そして運転計画部35は、車両10が走行可能な車線が複数存在する場合には、車両10が走行する車線を変更するように走行予定経路を生成してもよい。
なお、運転計画部35は、複数の走行予定経路を生成してもよい。この場合、運転計画部35は、複数の走行予定経路のうち、車両10の加速度の絶対値の総和が最小となる経路を選択してもよい。
運転計画部35は、生成した走行予定経路を車両制御部36へ通知する。
車両制御部36は、車両10が通知された走行予定経路に沿って走行するように車両10の各部を制御する。例えば、車両制御部36は、通知された走行予定経路、及び、車速センサ(図示せず)により測定された車両10の現在の車速に従って、車両10の加速度を求め、その加速度となるようにアクセル開度またはブレーキ量を設定する。そして車両制御部36は、設定されたアクセル開度に従って燃料噴射量を求め、その燃料噴射量に応じた制御信号を車両10のエンジンの燃料噴射装置へ出力する。あるいは、車両制御部36は、設定されたブレーキ量に応じた制御信号を車両10のブレーキへ出力する。
さらに、車両制御部36は、車両10が走行予定経路に沿って走行するために車両10の進路を変更する場合には、その走行予定経路に従って車両10の操舵角を求め、その操舵角に応じた制御信号を、車両10の操舵輪を制御するアクチュエータ(図示せず)へ出力する。
図10は、プロセッサ23により実行される、傾斜角検出処理を含む車両制御処理の動作フローチャートである。プロセッサ23は、カメラ2から画像を受信する度に、図10に示される動作フローチャートに従って車両制御処理を実行する。なお、以下に示される動作フローチャートにおいて、ステップS101~S105の処理が傾斜角検出処理に対応する。
プロセッサ23の物体検出部31は、カメラ2から得られた最新の画像を第1の識別器に入力して、その画像に表された検出対象物体を検出する。すなわち、物体検出部31は、画像上で検出対象物体を含む矩形形状の物体領域を検出する(ステップS101)。さらに、物体検出部31は、その検出対象物体の種類を識別する。そして物体検出部31は、検出された物体を検出物体リストに登録する。
プロセッサ23の特徴抽出領域設定部32は、最新の画像から検出された検出対象物体のうちの二輪車について、その二輪車を含む物体領域を元の画像に対して互いに異なる所定角度ずつ回転させた複数の特徴抽出領域を設定し、画像から各特徴抽出領域を切り出す(ステップS102)。さらに、特徴抽出領域設定部32は、各特徴抽出領域を、所定のサイズとなるようリサイズする(ステップS103)。
プロセッサ23の傾斜角検出部33は、最新の画像から検出された検出対象物体のうちの二輪車について、リサイズされた各特徴抽出領域の個々の画素値を含む入力データを第2の識別器に入力することで、特徴抽出領域ごとの二輪車の左右端の位置を検出する(ステップS104)。そして傾斜角検出部33は、特徴抽出領域ごとの二輪車の左右端の位置から、特徴抽出領域ごとの二輪車の幅を求め、その幅が最小となる特徴抽出領域の元の画像に対する回転角を、二輪車の傾斜角として検出する(ステップS105)。なお、上記の変形例のように、傾斜角検出部33は、特徴抽出領域ごとの二輪車の幅と元の画像に対する回転角との組に基づいて求められる、回転角の変化に対する二輪車の幅の変化を表すフィッティング曲線を求め、そのフィッティング曲線において二輪車の幅が最小となる回転角を、二輪車の傾斜角として検出してもよい。
また、プロセッサ23の追跡部34は、最新の画像における、検出対象物体を含む物体領域のそれぞれについて、その物体領域と、過去の画像における物体領域とに基づいて、最新の画像における、その物体領域に表されている検出対象物体を追跡する(ステップS106)。
プロセッサ23の運転計画部35は、検出物体リストを参照して、検出物体リストに登録されている各検出対象物体について、その検出対象物体の追跡結果から求められるその検出対象物体の予測軌跡と所定の距離以上離れるように、車両10の走行予定経路を生成する(ステップS107)。なお、運転計画部35は、上記のように、検出対象物体が二輪車である場合には、その二輪車の傾斜角も、予測軌跡の推定に利用する。そしてプロセッサ23の車両制御部36は、走行予定経路に沿って車両10が走行するように車両10を制御する(ステップS108)。そしてプロセッサ23は、車両制御処理を終了する。
以上に説明してきたように、この傾斜角検出装置は、二輪車を検出するように予め学習された第1の識別器に画像を入力することで、画像上に表された二輪車を含む物体領域を検出する。そして、この傾斜角検出装置は、物体領域を所定の角度ずつ回転させることで得られる複数の特徴抽出領域を設定し、画像から、各特徴抽出領域を切り出す。そしてこの傾斜角検出装置は、各特徴抽出領域を所定のサイズにリサイズした後に、各特徴抽出領域の個々の画素値を含む入力データを第2の識別器に入力することで、特徴抽出領域ごとに、その特徴抽出領域における二輪車の幅を求め、幅が最小となる特徴抽出領域の回転角を、二輪車の傾斜角として検出する。特に、この傾斜角検出装置は、第2の識別器として、リサイズされた各特徴抽出領域における二輪車の左端の位置及び右端の位置を検出するように予め学習された識別器を利用することで、各特徴抽出領域における二輪車の幅を正確に検出することができる。そして各特徴抽出領域における二輪車の幅は、その特徴抽出領域の下端に対する二輪車の傾斜角に応じて変化し、かつ、二輪車の幅が最小となるときの元の画像に対する特徴抽出領域の回転角と地面に対する二輪車の傾斜角とは略一致する。そのため、この傾斜角検出装置は、二輪車の幅が最小となる特徴抽出領域の元の画像に対する回転角から二輪車の傾斜角を求めることで、二輪車の傾斜角を正確に検出することができる。
再度図5を参照すると、特徴抽出領域の下端に対する二輪車の中心線方向とのなす角が大きいほど、特徴抽出領域の垂直方向(すなわち、特徴抽出領域の下端と直交する方向)における、二輪車の高さは大きくなることが想定される。そこで変形例によれば、傾斜角検出部33は、特徴抽出領域ごとの二輪車の上下端の位置から、特徴抽出領域ごとの二輪車の高さを求め、その高さが最大となる特徴抽出領域の元の画像に対する回転角を、二輪車の傾斜角として検出してもよい。この場合、傾斜角検出部33は、上記の実施形態と同様に、リサイズされた各特徴抽出領域の個々の画素値を含む入力データを、二輪車の上端の位置と下端の位置とを検出するように予め学習された第2の識別器に入力することで、特徴抽出領域ごとにその特徴抽出領域に表された二輪車の上端の位置と下端の位置とを検出すればよい。
他の変形例によれば、物体検出部31は、DNN以外の識別器を利用して、画像から検出対象物体を検出してもよい。例えば、物体検出部31は、第1の識別器として、画像上に設定されるウィンドウから算出される特徴量(例えば、HOG)を入力として、そのウィンドウに検出対象となる物体が表される確信度を出力するように予め学習されたサポートベクトルマシン(SVM)を用いてもよい。物体検出部31は、画像上に設定するウィンドウの位置、サイズ及びアスペクト比を様々に変更しながら、そのウィンドウから特徴量を算出し、算出した特徴量をSVMへ入力することで、そのウィンドウについて確信度を求める。そして物体検出部31は、何れかの種類の検出対象物体について確信度が所定の確信度閾値以上となるウィンドウに、その検出対象物体が表されていると判定し、かつ、そのウィンドウを物体領域とすればよい。なお、SVMは、検出対象となる物体の種類ごとに用意されてもよい。この場合には、物体検出部31は、各ウィンドウについて、そのウィンドウから算出された特徴量をそれぞれのSVMへ入力することで、物体の種類ごとに確信度を算出すればよい。
さらに他の変形例によれば、第2の識別器に入力される入力データには、物体検出部31が使用する第1の識別器の主幹部から出力されたfeature mapのうち、リサイズされた各特徴抽出領域の個々の画素の位置に対応するfeatureが含まれてもよい。
上記の実施形態または変形例による傾斜角検出装置は、車載機器以外に実装されてもよい。例えば、上記の実施形態または変形例による傾斜角検出装置は、屋外の所定の領域を所定周期ごとに撮影するように設置された監視カメラにより生成された画像から二輪車を検出し、検出した二輪車の傾斜角を検出するように構成されてもよい。
また、上記の実施形態または変形例による、傾斜角検出装置のプロセッサ23の各部の機能を実現するコンピュータプログラムは、半導体メモリ、磁気記録媒体または光記録媒体といった、コンピュータ読取可能な可搬性の記録媒体に記録された形で提供されてもよい。
以上のように、当業者は、本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
1 車両制御システム
2 カメラ
3 電子制御装置(傾斜角検出装置)
4 車内ネットワーク
21 通信インターフェース
22 メモリ
23 プロセッサ
31 物体検出部
32 特徴抽出領域設定部
33 傾斜角検出部
34 追跡部
35 運転計画部
36 車両制御部

Claims (5)

  1. 撮像部により生成された画像を、二輪車を検出するように予め学習された第1の識別器に入力することで、前記画像上で前記二輪車を含む物体領域を検出する物体検出部と、
    前記物体領域を互いに異なる所定角度ずつ回転させた複数の特徴抽出領域を設定し、前記複数の特徴抽出領域のそれぞれを前記画像から切り出す特徴抽出領域設定部と、
    前記複数の特徴抽出領域のそれぞれにおいて、当該特徴抽出領域に表された前記二輪車の左端の位置と前記二輪車の右端の位置間の幅を求め、前記複数の特徴抽出領域のそれぞれについての前記画像に対する回転角と前記幅とに基づいて、前記幅が最小となる前記画像に対する回転角を、地面の法線に対する前記二輪車の傾斜角として検出する傾斜角検出部と、
    を有する傾斜角検出装置。
  2. 前記傾斜角検出部は、前記複数の特徴抽出領域のそれぞれについて、所定のサイズとなるように当該特徴抽出領域のサイズを変更してから、前記二輪車の左端の位置及び右端の位置を検出するように予め学習された第2の識別器に入力することで、前記複数の特徴抽出領域のそれぞれにおける前記二輪車の左端の位置及び右端の位置を求め、前記複数の特徴抽出領域のそれぞれについて、当該特徴抽出領域における当該左端の位置及び当該右端の位置の差として当該特徴抽出領域における前記幅を求める、請求項1に記載の傾斜角検出装置。
  3. 前記傾斜角検出部は、前記複数の特徴抽出領域のそれぞれにおける、前記幅と当該特徴抽出領域の前記画像に対する回転角の組をフィッティングすることで、前記回転角の変化に対する前記幅の変化を表すフィッティング曲線をもとめ、当該フィッティング曲線において前記幅が最小となる回転角を、地面の法線に対する前記二輪車の傾斜角とする、請求項1または2に記載の傾斜角検出装置。
  4. 撮像部により生成された画像を、二輪車を検出するように予め学習された第1の識別器に入力することで、前記画像上で前記二輪車を含む物体領域を検出する物体検出部と、
    前記物体領域を互いに異なる所定角度ずつ回転させた複数の特徴抽出領域を設定し、前記複数の特徴抽出領域のそれぞれを前記画像から切り出す特徴抽出領域設定部と、
    前記複数の特徴抽出領域のそれぞれにおいて、当該特徴抽出領域に表された前記二輪車の上端の位置と前記二輪車の下端の位置間の高さを求め、前記複数の特徴抽出領域のそれぞれについての前記画像に対する回転角と前記高さとに基づいて、前記高さが最大となる前記画像に対する回転角を、地面の法線に対する前記二輪車の傾斜角として検出する傾斜角検出部と、
    を有する傾斜角検出装置。
  5. 車両の走行を制御する制御装置であって、
    前記車両に搭載された撮像部により生成された画像を、二輪車を検出するように予め学習された第1の識別器に入力することで、前記画像上で前記車両の周囲に位置する前記二輪車を含む物体領域を検出する物体検出部と、
    前記物体領域を互いに異なる所定角度ずつ回転させた複数の特徴抽出領域を設定し、前記複数の特徴抽出領域のそれぞれを前記画像から切り出す特徴抽出領域設定部と、
    前記複数の特徴抽出領域のそれぞれにおいて、当該特徴抽出領域に表された前記二輪車の左端の位置と前記二輪車の右端の位置間の幅を求め、前記複数の特徴抽出領域のそれぞれについての前記画像に対する回転角と前記幅とに基づいて、前記幅が最小となる前記画像に対する回転角を、地面の法線に対する前記二輪車の傾斜角として検出する傾斜角検出部と、
    前記傾斜角に基づいて、前記二輪車が走行する軌跡を予測し、予測した前記軌跡に基づいて、前記車両が前記二輪車と所定距離以上離れるように前記車両の走行予定経路を設定する運転計画部と、
    前記走行予定経路に沿って前記車両が走行するように前記車両を制御する車両制御部と、
    を有する制御装置。
JP2020068689A 2020-04-06 2020-04-06 傾斜角検出装置及び制御装置 Active JP7348874B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020068689A JP7348874B2 (ja) 2020-04-06 2020-04-06 傾斜角検出装置及び制御装置
CN202110344339.3A CN113492850B (zh) 2020-04-06 2021-03-31 倾斜角检测装置及控制装置
US17/220,082 US11726483B2 (en) 2020-04-06 2021-04-01 Apparatus for detecting inclination angle and controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020068689A JP7348874B2 (ja) 2020-04-06 2020-04-06 傾斜角検出装置及び制御装置

Publications (2)

Publication Number Publication Date
JP2021165916A JP2021165916A (ja) 2021-10-14
JP7348874B2 true JP7348874B2 (ja) 2023-09-21

Family

ID=77921283

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020068689A Active JP7348874B2 (ja) 2020-04-06 2020-04-06 傾斜角検出装置及び制御装置

Country Status (3)

Country Link
US (1) US11726483B2 (ja)
JP (1) JP7348874B2 (ja)
CN (1) CN113492850B (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012003708A (ja) 2010-06-21 2012-01-05 Mitsubishi Heavy Ind Ltd 車幅推定装置、車両推定装置、車幅推定方法及びプログラム
JP2015227082A (ja) 2014-05-30 2015-12-17 日本電産エレシス株式会社 車体傾斜角度検出装置および車体傾斜角度検出方法
JP2017102928A (ja) 2015-12-03 2017-06-08 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツングRobert Bosch Gmbh 二輪車における傾斜検出
JP2018152785A (ja) 2017-03-14 2018-09-27 トヨタ自動車株式会社 画像記録システム、画像記録方法、画像記録プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112015001698T5 (de) * 2014-05-12 2016-12-29 Robert Bosch Gmbh Vorrichtung zur Bilderkennung und Verfahren zur Steuerung der Vorrichtung
US11352090B2 (en) * 2014-07-28 2022-06-07 Robert Bosch Gmbh Information providing device and program for motorcycle
EP3358547A4 (en) * 2015-09-29 2019-05-08 Sony Corporation INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM
JP6607126B2 (ja) 2016-04-04 2019-11-20 スズキ株式会社 運転支援システム
WO2018140402A1 (en) * 2017-01-27 2018-08-02 Gentex Corporation Image compensation for motorcycle banking
US10614310B2 (en) * 2018-03-22 2020-04-07 Viisights Solutions Ltd. Behavior recognition
CN110008918B (zh) * 2019-04-11 2023-06-06 成都合纵连横数字科技有限公司 一种摩托车模拟器驾驶员姿态识别方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012003708A (ja) 2010-06-21 2012-01-05 Mitsubishi Heavy Ind Ltd 車幅推定装置、車両推定装置、車幅推定方法及びプログラム
JP2015227082A (ja) 2014-05-30 2015-12-17 日本電産エレシス株式会社 車体傾斜角度検出装置および車体傾斜角度検出方法
JP2017102928A (ja) 2015-12-03 2017-06-08 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツングRobert Bosch Gmbh 二輪車における傾斜検出
JP2018152785A (ja) 2017-03-14 2018-09-27 トヨタ自動車株式会社 画像記録システム、画像記録方法、画像記録プログラム

Also Published As

Publication number Publication date
CN113492850B (zh) 2023-11-03
US11726483B2 (en) 2023-08-15
JP2021165916A (ja) 2021-10-14
CN113492850A (zh) 2021-10-12
US20210309218A1 (en) 2021-10-07

Similar Documents

Publication Publication Date Title
JP7052663B2 (ja) 物体検出装置、物体検出方法及び物体検出用コンピュータプログラム
JP7388971B2 (ja) 車両制御装置、車両制御方法及び車両制御用コンピュータプログラム
US11308717B2 (en) Object detection device and object detection method
JP7359735B2 (ja) 物体状態識別装置、物体状態識別方法及び物体状態識別用コンピュータプログラムならびに制御装置
JP7077910B2 (ja) 区画線検出装置及び区画線検出方法
JP7115502B2 (ja) 物体状態識別装置、物体状態識別方法及び物体状態識別用コンピュータプログラムならびに制御装置
JP7226368B2 (ja) 物体状態識別装置
JP2022036726A (ja) 物体検出装置、物体検出方法及び物体検出用コンピュータプログラム
US11120292B2 (en) Distance estimation device, distance estimation method, and distance estimation computer program
JP7381388B2 (ja) 信号灯状態識別装置、信号灯状態識別方法及び信号灯状態識別用コンピュータプログラムならびに制御装置
JP7348874B2 (ja) 傾斜角検出装置及び制御装置
US20230177844A1 (en) Apparatus, method, and computer program for identifying state of lighting
JP2022146384A (ja) 物体検出装置
JP2024030951A (ja) 車両制御装置、車両制御方法及び車両制御用コンピュータプログラム
JP2022079954A (ja) 物体検出装置
JP2024024422A (ja) 物体検出装置、物体検出方法及び物体検出用コンピュータプログラム
JP2024011893A (ja) 車線判定装置、車線判定方向及び車線判定用コンピュータプログラム
JP2023084575A (ja) 点灯状態識別装置
JP2021081985A (ja) 物体検出装置
JP2023092183A (ja) 追跡装置、追跡方法及び追跡用コンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220801

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230531

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

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230908

R151 Written notification of patent or utility model registration

Ref document number: 7348874

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151