JPWO2016113904A1 - 3次元情報算出装置、3次元情報算出方法、および自律移動装置 - Google Patents

3次元情報算出装置、3次元情報算出方法、および自律移動装置 Download PDF

Info

Publication number
JPWO2016113904A1
JPWO2016113904A1 JP2016569199A JP2016569199A JPWO2016113904A1 JP WO2016113904 A1 JPWO2016113904 A1 JP WO2016113904A1 JP 2016569199 A JP2016569199 A JP 2016569199A JP 2016569199 A JP2016569199 A JP 2016569199A JP WO2016113904 A1 JPWO2016113904 A1 JP WO2016113904A1
Authority
JP
Japan
Prior art keywords
dimensional information
unit
object candidate
region
information calculation
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.)
Granted
Application number
JP2016569199A
Other languages
English (en)
Other versions
JP6456405B2 (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPWO2016113904A1 publication Critical patent/JPWO2016113904A1/ja
Application granted granted Critical
Publication of JP6456405B2 publication Critical patent/JP6456405B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/215Motion-based segmentation
    • 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
    • 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/02Estimation 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 ambient 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/0015Planning or execution of driving tasks specially adapted for safety
    • 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
    • G05D1/0251Control 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 extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • 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/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • 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
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • 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
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/165Anti-collision systems for passive traffic, e.g. including static obstacles, trees
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/166Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes
    • 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
    • B60W2554/00Input parameters relating to 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
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/404Characteristics
    • B60W2554/4041Position
    • 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
    • G06T2207/10021Stereoscopic video; Stereoscopic 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/10028Range image; Depth image; 3D point clouds
    • 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
    • G06T2207/30261Obstacle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Mathematical Physics (AREA)
  • Electromagnetism (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Image Processing (AREA)

Abstract

3次元情報算出装置は、第1撮像部から複数の画像を連続的に取得する第1画像入力部と、第2撮像部から複数の画像を連続的に取得する第2画像入力部と、第1画像入力部が異なる時間に取得した2以上の画像を用いて、物体が存在する物体候補領域を抽出する物体候補領域抽出部と、抽出された物体候補領域の複数の画像上の位置に基づいて、第1撮像部の撮影範囲に対する物体候補領域の将来の位置を推定する領域将来推定部と、領域将来推定部の推定する将来の位置に基づき、3次元情報が必要である物体候補領域を対象として、第1画像入力部および第2画像入力部が取得する画像における当該物体候補領域の対応点に基づき3次元情報を算出する3次元情報算出部と、を備える。

Description

本発明は、3次元情報算出装置、3次元情報算出方法、および自律移動装置に関する。
近年、車両の前方をカメラで撮影し、自車の前方にある物体を検出する研究が自動車分野で盛んである。特許文献1には、時系列画像から算出された2次元オプティカルフローに基づいて物体が存在する可能性がある候補領域を抽出し、その候補領域のみ3次元情報を計算する装置が開示されている。
日本国特開2010−286926号公報
特許文献1に記載の発明では、物体が存在する可能性がある全ての候補領域を対象に3次元情報を算出するので、長い処理時間を要する。
本発明の第1の態様によると、3次元情報算出装置は、第1撮像部から複数の画像を連続的に取得する第1画像入力部と、第2撮像部から複数の画像を連続的に取得する第2画像入力部と、第1画像入力部が異なる時間に取得した2以上の画像を用いて、物体が存在する物体候補領域を抽出する物体候補領域抽出部と、抽出された物体候補領域の複数の画像上の位置に基づいて、第1撮像部の撮影範囲に対する物体候補領域の将来の位置を推定する領域将来推定部と、領域将来推定部の推定する将来の位置に基づき、3次元情報が必要である物体候補領域を対象として、第1画像入力部および第2画像入力部が取得する画像における当該物体候補領域の対応点に基づき3次元情報を算出する3次元情報算出部と、を備える。
本発明の第2の態様によると、3次元情報算出方法は第1撮像部から複数の画像を連続的に取得し、第2撮像部から複数の画像を連続的に取得し、第1撮像部から異なる時間に取得した2以上の画像を用いて、物体が存在する物体候補領域を抽出し、抽出された物体候補領域の複数の画像上の位置に基づいて、第1撮像部の撮影範囲に対する物体候補領域の将来の位置を推定し、推定した将来の位置に基づき、3次元情報が必要である物体候補領域を対象として、第1撮像部および第2撮像部から取得する画像における当該物体候補領域の対応点に基づき3次元情報を算出する。
本発明の第3の態様によると、自律移動装置は上述する物体検出装置と、第1撮像部と、第2撮像部と、3次元情報算出装置、第1撮像部、および第2撮像部を搭載する移動機構と、3次元情報算出装置の出力に基づき移動機構を制御する機構制御部と、を備える。
本発明による物体検出装置は、所定時間後の候補領域の位置に基づき3次元情報の算出の有無を判断するため、処理を高速化できる。
自律移動装置の構成を示すブロック図 情報処理装置の構成を示すブロック図 情報処理装置の機能構成を示すブロック図 物体検出部の機能構成を示すブロック図 物体候補領域テーブルの構成の一例を示す図 3次元情報を算出する処理を示すフローチャート 図6に示すフローチャートの後半 物体検出装置の動作例を示す撮影画像図 物体検出装置の動作例を示すタイミングチャート 動作例における物体候補領域の時系列変化を示す図 第2の実施の形態における物体検出部201の構成を示すブロック図 第2の実施の形態における物体候補領域テーブルの構成の一例を示す図 図6のステップS501の直前に実行する処理を示すフローチャート 図7のフローチャートのステップS521付近の変更を示すフローチャート 3次元情報の追加判定の詳細動作を示すフローチャート 3次元情報が得られていない空間を説明するための2次元俯瞰地図 視認位置を算出するフローチャート 視認位置の算出例を説明する図 第3の実施の形態に係る自律移動システムの構成を示すブロック図 第3の実施の形態に係る物体検出部の機能構成を示すブロック図
本発明は、撮影して得られた画像を用いて3次元情報を算出するにあたり、処理対象を限定することにより処理の高速化を図るものである。すなわち、処理対象領域を物体が存在する確率が高い候補領域のうち、所定時間の経過後も撮影範囲に含まれる候補領域のみを処理対象とする。以下、第1〜第3の実施の形態を説明する。
(第1の実施の形態)
以下、図1〜10を参照して、本発明に係る物体検出装置、および自律移動装置の第1の実施の形態を説明する。自律移動装置は、あらかじめ緯度と経度により設定された目的地に向かって走行する。自律移動装置は、移動経路に存在する静止障害物を検出し、静止障害物を避けて移動する。
図1は、自律移動装置の構成を示すブロック図である。自律移動装置1は、物体検出装置100と、自律移動装置1の周囲を撮影する第1カメラ121、および第2カメラ122と、自律移動装置1を移動させる移動機構124と、移動機構124を制御する機構制御部123と、地図情報等を保存する記憶装置127と、自律移動装置1の周囲の情報を取得する外界測定装置128と、外界測定装置128の出力を取り込む外界情報入力部128Aと、表示装置140と通信を行う送受信装置126と、を備える。
物体検出装置100は、第1カメラ121が撮影して得られた画像を取り込む第1画像入力部121Aと、第2カメラ122が撮影して得られた画像を取り込む第2画像入力部122Aと、内界測定装置129の出力を取り込む内界情報入力部129Aと、第1画像入力部121Aおよび第2画像入力部122Aから取り込まれた画像を処理する情報処理装置125とを備える。第1画像入力部121Aと、第2画像入力部122Aと、機構制御部123と、記憶装置127と、移動機構124と、外界情報入力部128Aと、内界情報入力部129Aと、情報処理装置125と、送受信装置126とは、内部バスにより接続されており、相互に情報を授受する。
第1カメラ121、および第2カメラ122は、自律移動装置1の周囲を撮影し、撮影して得られた画像を、それぞれ第1画像入力部121A、および第2画像入力部122Aに出力する。後述するように、第1画像入力部121Aから入力される画像が主に使用され、第2画像入力部122Aから入力される画像は、三次元位置を算出される際に使用される。
移動機構124は、自律移動装置1を移動させる機構であり、たとえば、モータと車輪とから構成される。移動機構124は、機構制御部123により制御される。
機構制御部123は、自律移動装置1を記憶装置127に記録されている目的地に向かって移動するように、移動機構124を制御する。機構制御部123は、物体検出装置100が物体を検出すると、その物体を避けるように移動機構124を制御する。
情報処理装置125は、第1カメラ121、および第2カメラ122で撮影して得られた画像を処理して、自律移動装置1の前方の物体を検出する。情報処理装置125の構成は後述する。
送受信装置126は、表示装置140と無線による通信を行う。送受信装置126は、ユーザによる表示装置140から自律移動装置1への指令を受信し、情報処理装置125の処理結果を表示装置140へ出力する。
記憶装置127は、不揮発性メモリにより構成される。記憶装置127には、移動制御プログラム、目的地、走行する環境に対応した地図、移動経路などが保存される。自律移動装置1は、この移動制御プログラムにより、外界測定装置128と内界測定装置129で測定された測定データ、および情報処理装置125の検出結果に基づき、地図上での自己位置を推定しながら、計画された移動経路を辿るように実環境を自律移動する。
外界測定装置128は、自律移動装置1の外部(実環境)における相対位置や絶対位置を示すデータを計測するための外界センサである。外界測定装置128は、たとえば、GPS衛星からの電波を受信して自律移動装置1の絶対位置を算出するGPS受信機を備える。外界測定装置128は、測定値を外界情報入力部128Aに出力する。
内界測定装置129は、たとえば、ロータリエンコーダとジャイロセンサとを備える。ロータリエンコーダは、移動機構124における車輪の回転量を測定する。ジャイロセンサは、自律移動装置1の姿勢、すなわち回転3軸、および並進3軸の加速度を計測する。内界測定装置129は、測定値を内界情報入力部129Aに出力する。
表示装置140は、例えば、通信機能やGUI機能付きの表示画面を有する端末である。
図2は、情報処理装置125の構成を示すブロック図である。
情報処理装置125は、CPU131と、主記憶部132と、補助記憶部133と、バス134とを備える。CPU131と、主記憶部132と、補助記憶部133とは、バス134により接続され、相互にデータの送受信が行われる。
送受信装置126は、表示装置140と通信することで、ユーザによる表示装置140から自律移動装置1への指令を受信し、情報処理装置125の処理結果を表示装置140へ出力する。
CPU131は、主記憶部132または補助記憶部133に格納されているプログラムを読み出す。CPU131は、演算を実行し、主記憶部132や補助記憶部133や機構制御部123に演算結果を出力する。
主記憶部132は、ランダムアクセスメモリにより構成される。主記憶部132には、CPU131によって実行されるプログラムや、CPU131によって実行される演算結果や、情報処理装置125で利用される設定情報、たとえば後述する物体候補領域テーブル300、算出終了予定時刻te、算出所要時間tcなどが保存される。主記憶部132には、第1画像入力部121Aや第2画像入力部122Aが取得した画像が過去画像として一定数保存される。主記憶部132には、物体候補領域の各種情報を格納する物体候補領域テーブルや、地図生成部202によって生成される自律移動装置1を中心とする局所地図も保存される。
補助記憶部133には、CPU131によって実行されるプログラムや、CPU131によって実行される演算の結果や、情報処理装置125で利用される設定情報が格納される。補助記憶部133は、特に、主記憶部132に格納しきれないデータの格納や、電源遮断された状態でもデータを保持する目的で使用される。補助記憶部133は、たとえば、ハードディスクドライブなどの磁気ディスクドライブ、あるいはフラッシュメモリ等の不揮発性メモリ等を、単体あるいは複数組み合わせて構成される。
(情報処理装置の機能ブロック)
図3は、情報処理装置125のCPU131が主記憶部132に格納される処理プログラムを実行することで実現される機能構成を示すブロック図である。情報処理装置125は、物体検出部201、および地図生成部202を備える。物体検出部201は、第1画像入力部121A、および第2画像入力部122Aから入力された画像を用いて3次元情報を出力する。詳しくは後述する。
地図生成部202は、外界情報入力部128Aから外界測定装置128の測定値を取得し、内界情報入力部129Aから内界測定装置129の測定値を取得する。これらの測定値から自律移動装置1の位置および姿勢を算出し、物体検出部201から取得する3次元情報に基づいて、自律移動装置1を中心とする障害物の地図を生成する。たとえば、地図の形式としては、Digital Elevation Map(以下、DEMと呼ぶ)を用いる。DEMは、実世界空間を上から見下ろしてある大きさを持つグリッドに分割し、各グリッドに代表する高さの値を記録した地図である。自律移動装置1の移動機構124が乗り越えられる高さは既知なので、機構制御部123は、所定値以上の高さが記録されたグリッドは走行不可能と判断する。機構制御部123がこの地図と予め設定された経路計画に基づいて、局所的な走行位置経路を計画し、その経路を走行するように移動機構124を制御することで、自律走行を行う。
(物体検出部の詳細)
図4は、物体検出部201の機能構成を示すブロック図である。物体検出部201は、物体候補領域抽出部211と、領域将来推定部212と、領域追跡部213と、処理対象選択部214と、3次元情報算出部215と、物体位置特定部216、とを備える。
物体候補領域抽出部211は、第1カメラ121が取得した2枚以上の時系列画像を用いて、画像上における物体が存在する可能性の高い領域(以下、物体候補領域と称する)とその2次元オプティカルフローを算出する。物体候補領域抽出部211は、領域の頂点座標と、物体候補領域を抽出した時刻とを、図5で後述する物体候補領域テーブル300に格納する。ただし、物体候補領域を抽出した時刻は、領域の抽出に用いた最新の画像の撮影時刻とする。また、すでに物体候補領域テーブル300に物体候補領域が設定されている領域は、オプティカルフローを算出しない。
物体候補領域を算出する方法としては、例えば、撮影時刻の異なる2枚の画像間の対応点探索処理によって、画素単位で2次元オプティカルフローを算出し、算出された2次元オプティカルフローに基づいて、物体の存在する可能性を算出し、算出された可能性から物体候補領域を抽出する方法が知られている。この方法では、物体候補領域の抽出だけでなく、その物体候補領域の全域について2次元オプティカルフローを取得できる。
領域将来推定部212は、物体候補領域抽出部211が算出した物体候補領域、およびその2次元オプティカルフローを物体候補領域テーブル300から取得する。領域将来推定部212は、取得したそれぞれの物体候補領域を対象として以下の処理を行う。すなわち、ある物体候補領域の2次元オプティカルフローに基づき、将来のある時刻における画像上の座標を推定し、物体候補領域テーブル300に格納する。領域将来推定部212は、3次元情報算出部215が算出を行っている場合は、その算出終了予定時刻teにおける座標を推定する。領域将来推定部212は、3次元情報算出部215が算出を行っていない場合は、それぞれの物体候補領域の面積を算出して面積が最も大きい物体候補領域を選択し、その3次元情報の算出に要する時間、すなわち算出所要時間tcを算出する。そして、現在から算出所要時間tcが経過した後の座標を推定する。3次元情報算出部215が3次元情報の算出に要する時間tcは、3次元情報を算出する画像上の面積に比例する所定の式により算出される。
領域将来推定部212が将来の画像上の座標を推定する方法としては、公知の手法を用いることができる。たとえば、過去の状態が将来再び現れる確率(時間的再現確率)を算出し、算出された時間的再現確率に基づいて時刻のサンプリングを行う。そして、サンプリングされた時刻における過去の状態の推定値を参照し、そのカーネル分布を畳込むことで状態の分布を予測する手法が知られている。
領域追跡部213は、第1カメラ121が画像(以下、最新取得画像、と呼ぶ)を取得すると物体候補領域テーブル300から物体候補領域を取得する。この物体候補領域は、従前に第1カメラ121が取得した画像を用いて算出された領域である。領域追跡部213は、取得したそれぞれの物体候補領域を対象として、以下の処理を行う。すなわち、領域追跡部213は、最新取得画像とその直前に取得された画像との間の対応点探索処理によって、最新取得画像における対応する物体候補領域を算出する。対応する物体候補領域がない場合は、領域追跡部213は、その物体候補領域を含むエントリを物体候補領域テーブル300から削除する。対応する物体候補領域がある場合は、領域追跡部213は、対応点探索処理により2次元オプティカルフローを算出し、その物体候補領域の2次元オプティカルフローとして物体候補領域テーブル300に追加する。
処理対象選択部214は、物体候補領域テーブル300から物体候補領域を取得し、取得したそれぞれの物体候補領域を対象として、以下の処理を行う。処理対象選択部214は、領域将来推定部212が算出した物体候補領域の将来の画像上の座標に基づき、3次元情報を計算するか否かを決定する。すなわち、処理対象選択部214は、将来の画像上の物体候補領域の座標が第1カメラ121の出力する画像における座標の範囲を超える場合は、物体候補領域がその将来の時点において第1カメラ121の撮影範囲外に存在すると判断し、3次元情報を算出しないと判断する。
処理対象選択部214は、物体候補領域テーブル300の3次元情報算出優先度に、3次元情報を算出すると決定した物体候補領域には正の値を割り当て、3次元情報を算出しないと決定した物体候補領域には負の値を割り当てる。処理対象選択部214は、3次元情報を計算すると決定した領域が複数ある場合には、物体候補領域の面積が大きい順に高い優先度、すなわち大きい正の数を記録する。
3次元情報算出部215は、物体候補領域内の各画素に対応する3次元情報を、第1カメラ121が取得した第1画像と第2カメラ122が取得した第2画像間の対応点探索処理によって算出する。3次元情報算出部215は、処理を開始したら、物体候補領域テーブル300の該当するエントリに対して、3次元情報計算実行状態に実行状態を表す値、たとえば「ACTIVE」を記録する。3次元情報算出部215は、処理が完了したら、物体候補領域テーブル300の該当するエントリに対して、3次元情報計算実行状態に実行終了を表す値、たとえば「DONE」を記録する。
物体位置特定部216は、3次元情報算出部215から物体候補領域の3次元情報を取得し、3次元情報、たとえば自律移動装置1から物体候補領域の各点までの距離から物体を検出する。物体位置特定部216は、検出された物体の情報から自律移動装置1の移動ベクトルを差し引いたものを最終的な物体の情報として主記憶部132に格納して、地図生成部202に送信する。移動ベクトルとは、物体候補領域の抽出に用いた画像を取得してから3次元情報の算出が完了した時刻までの時間内に移動する自律移動装置1の移動ベクトルである。例えば、物体が3次元空間上のボクセルとして検出する場合、ボクセルの重心の座標から移動ベクトルを差し引いた座標が、最終的な物体の重心座標となる。すなわち、自律移動装置1が原点である座標系が移動するので、移動分を考慮して物体の重心座標を算出する。物体検出処理には、既存の方法を用いることができる。
(物体候補領域テーブル)
図5に物体候補領域テーブル300の構成の一例を示す。
図5に示す物体候補領域テーブル300は複数のエントリから構成される。たとえば複数のエントリは、領域頂点座標と、2次元オプティカルフローの履歴と、領域が抽出された時刻と、時刻teにおける領域の推定状態と、3次元情報計算優先度と、3次元情報計算実行状態とから構成される。
領域頂点座標は、第1画像入力部121Aが取得した画像における物体候補領域を構成する頂点の座標である。図5では、一例として領域が矩形で表現される場合の4つの頂点の座標が示されている。領域頂点座標は、物体候補領域抽出部211により記録される。
2次元オプティカルフローの履歴は、第1カメラ121が撮影して得られた撮影時刻の異なる画像間の対応点探索処理によって算出された2次元オプティカルフローを、時系順に所定の数だけ示すものである。たとえば、図5の例においてIDが0の物体候補領域に注目すると、2次元オプティカルフローはX1とX2の2つが示されている。前述のとおり、2次元オプティカルフローは、物体候補領域抽出部211、および領域追跡部213により記録される。
抽出時刻には、物体候補領域の抽出または領域の追跡に用いられた最新取得画像の撮影時刻が記録される。抽出時刻は、物体候補領域抽出部211、および領域追跡部213により記録される。
時刻teにおける領域の推定状態は、算出終了予定時刻teにおける物体候補領域の推定される画像上の座標により表される。この値は、領域将来推定部212から記録される。
3次元情報算出優先度は、物体候補領域に対して3次元情報を算出する優先度合いを示す値により表される。3次元情報算出優先度として、3次元情報を算出する対象には正の値が、3次元情報を算出しない対象には負の値が記録される。優先度が高い場合は値を大きく記録する。3次元情報算出優先度の値は、処理対象選択部214から記録される。
3次元情報算出実行状態は、物体候補領域に対して3次元情報を算出中か否かを示す値により表される。この値は3次元情報算出部215から記録される。
(フローチャート)
図6〜7を参照して、物体検出装置100の処理の流れ、すなわち自律移動装置1が3次元情報を算出する処理の流れを説明する。
図6〜7は、物体検出装置100の情報処理装置125が実行するプログラムの動作を表すフローチャートである。以下に説明するこのフローチャートの実行主体は、情報処理装置125のCPU131である。
第1カメラ121、および第2カメラ122は所定時間ごとに、自律移動装置1の周囲を撮影し、画像を取得する。情報処理装置125は、第1カメラ121、および第2カメラ122が撮影を行うと、以下のプログラムを実行する。
ステップS501において、情報処理装置125は、第1画像入力部121A、および第2画像入力部122Aを用いて、第1カメラ121および第2カメラ122から最新の撮影画像を取得し、ステップS502に進む。以後、第1画像入力部121Aが取得した最新の画像を最新第1画像、第2画像入力部122Aが取得した最新の画像を最新第2画像、と呼ぶ。
ステップS502において、情報処理装置125は、物体候補領域テーブル300の先頭エントリ、すなわちIDが0であるエントリを読み込み、ステップS503に進む。
ステップS503において、情報処理装置125は、領域追跡部213を用いて、読み込んだエントリの当該物体候補領域を対象とした2次元オプティカルフローを算出し、最新第1画像における物体候補領域の位置を算出し、ステップS504に進む。
ステップS504において、情報処理装置125は、ステップS503において最新第1画像における物体候補領域の位置を算出できたか否かを判断する。算出できたと判断する場合はステップS504Aに進み、算出できなかったと判断する場合はステップS505に進む。
ステップS504Aにおいて、情報処理装置125は、物体候補領域テーブル300における当該エントリの2次元OFのデータとして、ステップS503において算出した2次元オプティカルフローを追加し、ステップS506に進む。
ステップS505において、情報処理装置125は、物体候補領域テーブル300において当該エントリを削除し、ステップS506に進む。最新第1画像において当該エントリに記載の物体候補領域を追跡できなかったからである。
ステップS506において、情報処理装置125は、現在読み込んでいるエントリが、物体候補領域テーブル300の最後のエントリであるか否かを判断する。最後のエントリであると判断する場合、すなわち全てのエントリに対してステップS503〜S505の処理が完了したと判断する場合はステップS508に進む。最後のエントリではないと判断する場合はステップS507に進む。
ステップS507において、情報処理装置125は、物体候補領域テーブル300の次のエントリを読み込み、ステップS503に戻る。
全てのエントリを読み込んだと判断した場合に実行されるステップS508において、情報処理装置125は、物体候補領域抽出部211を用いて物体候補領域以外の2次元オプティカルフローを算出し、ステップS509に進む。
ステップS509において、情報処理装置125は、ステップS508において算出した2次元オプティカルフローに基づき、新たな物体候補領域を抽出する。情報処理装置125は、抽出した物体候補領域を物体候補領域テーブル300に記録する。次にステップS510に進む。
ステップS510において、情報処理装置125は、主記憶部132に保存されている算出終了予定時刻teに、何らかの時刻が記録されているか否かを判断する。時刻が記録されていないと判断する場合はステップS511に進み、時刻が記録されていると判断する場合はステップS513に進む。本ステップは、3次元情報算出部215が3次元情報を算出しているか否かを判断している。
ステップS511において、情報処理装置125は、領域将来推定部212を用いて算出所要時間tcを算出する。すなわち、物体候補領域テーブル300に記載の各物体候補領域の面積を算出して面積が最も大きい物体候補領域を選択し、その面積を所定の式に代入して算出所要時間tcを算出する。次にステップS512に進む。
ステップS512において、情報処理装置125は、領域将来推定部212を用いて、物体候補領域テーブル300に記載の各物体候補領域について、算出所要時間tcが経過した時の各物体候補領域の画像上の座標を算出する。次に、ステップS514に進む。
算出終了予定時刻teに何らかの時刻が記録されていると判断されると実行されるステップS513において、情報処理装置125は、領域将来推定部212を用いて、算出終了予定時刻teにおける各物体候補領域の画像上の座標を算出する。次に、ステップS514に進む。
図6のステップS514において、情報処理装置125は、処理対象選択部214を用いて各物体候補領域の3次元情報算出の有無を決定する。すなわち、情報処理装置125は、ステップS512またはステップS513において算出した座標が、第1カメラ121の出力する画像の座標の範囲内であれば3次元情報を算出する、と判断する。次にステップS515に進む。
ステップS515において、情報処理装置125は、処理対象選択部214を用いて3次元情報算出優先度を決定し、物体候補領域テーブル300に保存する。すなわち、情報処理装置125は、ステップS514において3次元情報を算出すると判断した物体候補領域を対象として面積を算出し、面積が大きいほど正の大きな値を割り当てる。情報処理装置125は、3次元情報を算出すると判断しなかった物体候補領域には「−1」を記録する。次にステップS516に進む。
ステップS516において、情報処理装置125は、物体候補領域テーブル300から3次元情報算出優先度が最大であるエントリを読み込み、ステップS517に進む。
ステップS517において、情報処理装置125は、読み込んだエントリが2つの条件、すなわち(1)3次元情報算出の対象であること、(2)算出が開始されていないこと、の両方を満たすか否かを判断する。図5の例では、(1)優先度が正であること、(2)実行状態が「WAIT」であること、の両方を満たすか否かを判断する。2つの条件を満たすと判断する場合はステップS518に進み、少なくとも1つを満たさないと判断する場合はステップS526に進む。
ステップS518において、情報処理装置125は、3次元情報算出部215に算出開始指令を送り、読み込んだエントリに記載されている物体候補領域の3次元情報の算出を開始させる。3次元情報算出部215は、算出を開始すると物体候補領域テーブル300の実行状態を変更する。図5の例では、実行状態を「ACTIVE」に変更する。次にステップS519に進む。
ステップS519において、情報処理装置125は、主記憶部132に保存されている算出終了予定時刻teに、現在時刻に算出所要時間tcを加えた時間を保存し、ステップS520に進む。
ステップS520において、情報処理装置125は、3次元情報算出部215による3次元情報の算出が完了したか否かを判断し、完了したと判断する場合はステップS521に進み、算出が継続していると判断する場合はステップS525に進む。
ステップS521において、情報処理装置125は、物体位置特定部216を用いて物体の位置を特定し、その情報を地図生成部202に出力してステップS522に進む。
ステップS522において、情報処理装置125は、主記憶部132に保存されている算出終了予定時刻teをクリアする。すなわち、算出終了予定時刻teに時刻が保存されていない状態に変更する。次にステップS523に進む。
ステップS523において、情報処理装置125は、物体候補領域テーブル300に保存されている全ての領域に対する処理が完了したか否かを判断する。全ての領域に対する処理が完了したと判断する場合は図6〜7により動作が表されるプログラムを終了し、全ての領域に対する処理が完了していないと判断する場合はステップS524に進む。
ステップS524において、情報処理装置125は、現在読み込んでいるエントリの次に高い優先度を有するエントリを読み込み、ステップS517に戻る。
3次元情報算出部215による3次元情報の算出が完了していないと判断されると実行されるステップS525において、情報処理装置125は、現在読み込んでいるエントリの3次元情報算出優先度が負の値に変更されているか否かを判断する。負の値に変更されていると判断する場合は、図6〜7により動作が表されるプログラムを終了する。負の値に変更されていないと判断する場合はステップS520に戻る。
ステップS517において否定判断をされると実行されるステップS526において、情報処理装置125は、読み込んだエントリが2つの条件、すなわち(1)3次元情報算出の対象でないこと、(2)算出が開始されていること、の両方を満たすか否かを判断する。図5の例では、(1)優先度が負であること、(2)実行状態が「ACTIVE」であること、の両方を満たすか否かを判断する。2つの条件を満たすと判断する場合はステップS527に進み、少なくとも1つを満たさないと判断する場合はステップS523に進む。
ステップS527において、情報処理装置125は、3次元情報算出部215に算出中断命令を出力し、ステップS522に進む。
(動作例)
図8〜10を参照して、物体検出装置100の動作例を説明する。
まず周囲の状況と撮影して得られた画像を説明する。前方を撮影する物体検出装置100を搭載した自律移動装置1は車道を直進しており、車道の両脇に1本ずつ樹木が植えられ、1台の先行車両がある。このとき撮影して得られた画像が図8に示すものであり、四角で囲む3つの領域が物体候補領域として認識された領域である。以下では、先行車両を含む物体候補領域を領域C1、樹木を含む物体候補領域を領域C2、領域C3と呼ぶ。なお、領域C1は先行車両よりも大きく検出されるが、3次元情報を算出した後に物体位置特定部216が動作することにより、符号701により表されるように、正確な位置が算出される。
樹木は車道に対して静止しているが、自律移動装置1は車道を走行しているので、時系列的に連続して撮影された画像からは領域C2、領域C3が移動しているように観測される。自律移動装置1は車道を直進しているので、しばらく走行すると領域C2、領域C3は撮影範囲外に移動する。自律移動装置1は一定速度で走行するが、先行車両は後述する時刻ta+2の直前に加速し、時刻ta+2の直後に減速した。先行車両が加速すると領域C1は画像上の上方に移動する。
以下、図9および図10を参照して、上記の状況における物体検出装置100の動作を説明する。
図9は、物体検出部201の動作および物体候補領域テーブル300の保存されるエントリを示すタイミングチャートである。図9では、左から右に進むにつれて時間が経過している。図9に示す処理が開始する当初、すなわち時刻ta以前には物体候補領域テーブル300にエントリが一切存在しない。
図10は、第1画像入力部121Aが取得した画像における、物体候補領域抽出部211が抽出した領域の位置と、領域将来推定部212が推定する物体候補領域の位置を示す図である。図10では、図9と同様に左から右に進むにつれて時間が経過している。図9と図10は時刻が同期している。
まず、図9を参照して説明する。
第1画像入力部121Aおよび第2画像入力部122Aは、第1カメラ121および第2カメラ122が撮影を行うたびに、すなわち所定の時間間隔で画像を取得する。図9では、時刻ta、ta+1、ta+2、ta+3、ta+4のそれぞれで画像を取得する。すなわち、時刻ta、ta+1、・・に図6のステップS501が実行され、その処理が完了すると順次ステップが実行される。以下では、時刻taに取得した第1画像をIa、時刻ta+1に取得した最新第1画像をIa+1、・・と呼ぶ。主記憶部132には、従前に撮影されたk−1個の過去の時系列画像(Ia−1〜Ia−k)が格納されている。
以下では、時刻ta、ta+1、ta+2、ta+3からの一連の処理を説明するが、処理内容が同一で結果も同一の場合には説明を省略する。
(時刻taからの一連の処理)
時刻taにおける画像の取り込み(ステップS501)が完了すると、物体候補領域テーブル300のエントリの有無が判断され(ステップS501A)、この時点ではエントリがないので領域追跡部213の処理は行われない。次に、物体候補領域抽出部211によりオプティカルフローの算出(ステップS508)および物体候補領域の抽出(ステップS509)が行われ、物体候補領域テーブル300に領域C1、C2、C3が記録される。この処理が完了した時刻がt0である。
図10(a)は、時刻taに取得した画像Iaと物体候補領域抽出部211が抽出した物体候補領域C1〜C3を示した図である。時刻taに取得した第1画像(Ia)に対して、物体候補領域抽出部211が物体候補領域を抽出し、処理が完了した時刻t0で物体候補領域(C1〜C3)が得られた様子が示されている。
図9に戻って説明を続ける。
領域将来推定部212による物体候補領域抽出(ステップS509)が完了した時刻t0において、算出終了予定時刻teが記録されていないので(ステップS510:YES)、最大である物体候補領域の面積に応じて決定される時間tc1が算出される。そして、領域将来推定部212が物体候補領域テーブル300から物体候補領域(C1〜C3)のエントリを取得し、得られたエントリに含まれる2次元オプティカルフローに基づいて、今から時間tc1経過した後の状態を推定する(ステップS513)。ここでは、領域将来推定部212は、時間tc1が経過すると領域C1のみが第1カメラ121の撮影範囲内に留まり、領域C2、C3は撮影範囲外に移動すると推定する。
続いて処理対象選択部214が物体候補領域テーブル300に格納された将来の領域の推定状態を取得し、取得された推定状態に基づいて3次元情報を算出するか否かを決定し、決定された結果を物体候補領域テーブル300に格納する。ここでは、処理対象選択部214は、今から時間tc1を経過した後も第1カメラ121の撮影範囲内に留まる領域C1のみを3次元情報の算出対象であると判断する(ステップS514、S515)。この処理が完了した時刻をttとする。
図10(b)は、時刻t0において領域将来推定部212が推定する、時間tc1経過した後の物体候補領域(C1〜C3)の状態を示した図である。物体候補領域C1は時間tc1経過した後に第1カメラ121の撮影範囲内にあると推定されたのに対して、物体候補領域C2、C3は撮影範囲外にあると推定された状態が示されている。
図9に戻って説明を続ける。
領域C1は3次元情報の算出対象であり、算出が開始されていないので(ステップS517:YES)、情報処理装置125は、3次元情報算出部215に3次元情報の算出開始を指示する(ステップS518)。3次元情報算出部215は、物体候補領域テーブル300の領域C1のエントリについて、3次元情報の算出中である旨を記録する。情報処理装置125は、算出終了予定時刻teに現在時刻であるttに算出所要時間tc1を加えた時刻を記録する(ステップS519)。その後、3次元情報算出部215の算出完了、または物体候補領域テーブル300の変更を待ち続ける(ステップS520:NO、ステップS525:NO)。
(時刻ta+1からの一連の処理)
前述した時刻ttの少し前の時刻ta+1において、第1画像入力部121Aが画像Ia+1を取り込む(ステップS501)。物体候補領域テーブル300にはエントリがあるので(ステップS501A:YES)、領域追跡部213により領域C1〜C3の追跡処理が行われる(ステップS503〜506)。画像Ia+1では領域C1〜C3の全てが追跡できたので物体候補領域テーブル300のエントリは削除されない。
領域将来推定部212は、算出終了予定時刻teが記録されているので(ステップS510:YES)、算出終了予定時刻teにおける各領域の状態を推定する(ステップS513)。処理対象選択部214は、先ほどと同様に領域C1のみを3次元情報の算出対象であると判断する(ステップS514、S515)。
情報処理装置125は、領域C1のエントリについては算出が開始されており(ステップS517:NO)、3次元情報算出の対象であるため(ステップS526:NO)、特段の処理を行わない。情報処理装置125は、領域C2およびC3のエントリについては、それらが3次元情報算出の対象ではなく(ステップS517:NO)、3次元情報の算出が開始されていないため(ステップS526:NO)、特段の処理を行わず終了する。
(時刻ta+2からの一連の処理)
時刻ta+1から所定の時間が経過した時刻ta+2において、第1画像入力部121Aが画像Ia+2を取り込む(ステップS501)。領域追跡部213は領域C1〜C3の追跡処理を行い(ステップS503〜506)、領域C2の追跡ができなかったため、物体候補領域テーブル300から領域C2のエントリを削除する。
時刻t2に領域将来推定部212が算出を開始し、物体候補領域テーブル300にエントリを有する領域C1およびC3の時刻teにおける状態を推定する。先行車両が時刻ta+2の直前に加速したので、画像Ia+2における領域C1は上部に移動する。そのため、領域将来推定部212は時刻teにおいて領域C1とC3の両方が、第1カメラ121の撮影範囲外に移動すると推定する。
図10(C)は、時刻ta+2に取得した画像Ia+2における領域C1およびC3の位置と、時刻t2に推定した時刻teにおける領域C1およびC3の位置を示す図である。時刻teにおいて、領域C1は第1カメラ121の撮影範囲から上に逸れ、領域C3は第1カメラ121の撮影範囲から横に逸れると推定された様子が示されている。
図9に戻って説明を続ける。
領域将来推定部212は、時刻teにおいて領域C1も両者が第1カメラ121の撮影範囲外となるので、3次元情報の算出対象ではないと判断する(ステップS514)。領域将来推定部212は、物体候補領域テーブル300における領域C1のエントリの優先度に「−1」を記録する(ステップS515)。
この領域将来推定部212による物体候補領域テーブル300への書き込みにより、時刻taからの一連の処理により、ステップS520〜S525のループで待機していた処理が、ステップS525において肯定判定され、処理が終了する。
情報処理装置125は、領域C1のエントリに対して、算出が開始されており(ステップS517:NO)、3次元情報の算出対象外かつ3次元情報を算出中であるため(ステップS526:YES)、3次元情報算出部215に算出中断指令を出力する(ステップS527)。
(時刻ta+3からの一連の処理)
時刻ta+2から所定の時間が経過した時刻ta+3において、第1画像入力部121Aが画像Ia+3を取り込む(ステップS501)。領域追跡部213は領域C1の追跡処理を行う(ステップS503〜506)。
時刻t3に領域将来推定部212が算出を開始し、算出終了予定時刻teが記録されていないので(ステップS510:YES)、時間tc2が算出される。そして、物体候補領域テーブル300にエントリを有する領域C1が、現在から時間tc2経過後における状態を推定する。先行車両が時刻ta+2の直後に減速したので、画像Ia+3において領域C1は上部から中央に戻る。そのため、領域将来推定部212は現在から時間tc2経過後において領域C1が第1カメラ121の撮影範囲内に存在すると推定する。
図10(d)は、時刻ta+3に取得した画像Ia+3における領域C1の位置と、時刻t3に推定した現在時刻ta+3から時間tc2経過後における領域C1の位置を示す図である。現在から時間tc2経過後において、領域C1は第1カメラ121の撮影範囲内に存在すると推定された様子が示されている。
図9に戻って説明を続ける。
処理対象選択部214は、今から時間tc2を経過した後も第1カメラ121の撮影範囲内に留まる領域C1を、改めて3次元情報の算出対象であると判断する(ステップS514)。処理対象選択部214は、物体候補領域テーブル300の領域C1のエントリに、3次元情報の算出対象であり、算出が開始されていない旨を記録する。
領域C1は3次元情報の算出対象であり、算出が開始されていないので(ステップS517:YES)、情報処理装置125は、3次元情報算出部215に3次元情報の算出開始を指示する(ステップS518)。すなわち、一旦は中止された領域C1の3次元情報が算出される。
これにより、物体候補領域の3次元情報を算出中に将来の状態を再度推定し、その結果、画面内にいると推定された領域についてのみ3次元情報を算出し続けることができる。その結果、不要な3次元情報の算出処理を抑制することが可能となり、物体検出の処理時間の低減につながる。
また、3次元情報を算出中に将来の状態を再度推定し、その結果、画面外にいると推定された物体候補領域の3次元情報の算出処理を中断することが可能となる。これにより、不要な3次元情報の算出処理が抑制され、物体検出の処理時間の低減につながる。
また、3次元情報の算出対象外と判定された物体候補領域を追跡しておくことで、その後、その物体候補領域の将来の状態が画面内と推定された場合に、最新の物体候補領域を用いて3次元情報の算出処理を実行することが可能であり、物体検出性能の向上につながる。
上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)物体検出装置100は、第1カメラ121から複数の画像を連続的に取得する第1画像入力部121Aと、第2カメラ122から複数の画像を連続的に取得する第2画像入力部122Aと、を備える。物体検出装置100はさらに、第1画像入力部121Aが異なる時間に取得した2以上の画像を用いて、物体が存在する物体候補領域を抽出する物体候補領域抽出部211と、抽出された物体候補領域の複数の画像上の位置に基づいて、第1撮像部の撮影範囲に対する物体候補領域の将来の位置を推定する領域将来推定部212と、を備える。物体検出装置100はさらに、領域将来推定部212の推定する将来の位置に基づき、物体候補領域ごとに3次元情報を算出するか否かを判定する処理対象選択部214と、処理対象選択部214が3次元情報を算出すると判定した物体候補領域を対象として、第1画像入力部および第2画像入力部が取得する画像を用いて、第1撮像部と第2撮像部の基線長に基づき、物体候補領域の3次元情報を算出する3次元情報算出部215と、を備える。
物体検出装置100をこのように構成したので、所定時間後、たとえば3次元情報の算出が完了する時の物体候補領域の位置に基づき、当該物体候補領域の3次元情報を算出するか否かを判断するため、3次元情報の算出に要する時間を低減し、処理を高速化できる。
(2)処理対象選択部214は、領域将来推定部212により推定される物体候補領域が第1カメラ121の撮影範囲に含まれると判断すると3次元情報を算出すると判定し、領域将来推定部212により推定される物体候補領域が第1カメラ121の撮影範囲に含まれないと判断すると3次元情報を算出しないと判定する、
そのため、カメラで撮影された画像から物体候補領域を抽出し、抽出された物体候補領域に対して、将来における状態を推定し、推定された状態がカメラの撮影範囲内にある場合に3次元情報を算出する対象と判定し、3次元情報を算出する対象と判定された物体候補領域だけ3次元情報を算出することで、不要な3次元情報の算出処理を抑制することが可能となり、物体検出の処理時間の低減につながる。
(3)3次元情報算出部215は、物体候補領域の3次元情報を算出している最中に、当該物体候補領域が処理対象選択部214により3次元情報を算出しないと判定されると、当該3次元情報の算出を中断する。
そのため、3次元情報算出処理を実行中の物体候補領域に対して、処理が完了するまでの間に、将来における状態を推定し、推定された状態が第1カメラ121の撮影範囲外にあると判定された場合に、3次元情報算出処理を中断するように構成することができる。不要な3次元情報の算出処理を抑制することが可能となり、物体検出の処理時間の低減につながる。
(4)3次元情報算出部215は、処理対象選択部214により3次元情報を算出しないと判定された物体候補領域については、その後に3次元情報を算出すると判定されると、当該物体候補領域の3次元情報を算出する。
そのため、3次元情報算出の対象外と判定された物体候補領域に対して、所定の時間が経過後、将来における状態を推定し、推定された状態が第1カメラ121の撮影範囲内にあると判定された場合に、3次元情報算出処理を実行することで、必要な3次元情報の算出処理を実行することが可能となり、物体検出の検出性能の向上につながる。
上述した第1の実施の形態は、以下のように変形してもよい。
(1)第1の実施の形態では、撮影時刻の異なる2枚の画像を用いて画素単位でオプティカルフローを算出して物体候補領域を抽出したが、処理時間を減らすために、以下のように特定の個所領域のみ処理を行ってもよい。すなわち、一方の画像からエッジの画素を検出し、検出されたエッジ画素を縦方向、または横方向に連結してエッジ線分を抽出し、得られたエッジ線分の上端と下端の画素だけを対象に2次元オプティカルフローを算出し、そのオプティカルフローから物体の存在する可能性を算出し、物体が存在する可能性の高いエッジ線分を統合して物体候補領域としてもよい。
(2)第1の実施の形態では、算出終了予定時刻teおよび算出所要時間tcを物体候補領域にかかわらず共通の値としたが、算出終了予定時刻teおよび算出所要時間tcを物体候補領域ごとに値を設けてもよい。この場合は、各物体候補領域に対して3次元情報を算出するのに必要な処理時間を算出所要時間tcとする。
(3)物体候補領域の優先度は面積のみに基づいて決定されたが、優先度の決定方法はこれに限定されない。物体候補領域の位置を考慮し、画像の中心に近い位置の物体候補領域ほど優先順位を高くしてもよいし、物体候補領域の位置と面積の大きさを組み合わせて優先度を決定してもよい。また、過去の走行した映像を解析し、物体候補領域のサイズや位置と、実際の物体との関係性を学習し、その関係性に基づいて優先度を決定してもよい。
(4)物体検出装置100は、自律移動装置1と独立して設けられてもよい。すなわち、物体検出装置100は、自律移動装置1の送受信装置126と通信を行う通信部をさらに備え、送受信装置126と通信を行うことで第1の実施の形態と同様の作用効果を奏してもよい。すなわち送受信装置126を経由して、第1カメラ121、および第2カメラ122から画像を取得し、内界測定装置129および外界測定装置128から情報を取得してもよい。さらに、物体検出装置100の算出結果を、送受信装置126を経由して機構制御部123に出力してもよい。
(5)自律移動装置1は、記憶装置127に保存された移動経路に沿って移動するが、物体検出装置100の出力に基づき移動経路を再設定する移動経路変更部をさらに備えてもよい。
(6)自律移動装置1は、物体位置特定部216を備えず、3次元情報算出部215の算出する三次元情報に基づいて、障害物の回避を行ってもよい。
(第2の実施の形態)
図11〜18を参照して、本発明に係る物体検出装置、および自律移動装置の第2の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、3次元情報を算出した物体候補領域に対して物体の陰になっている領域を推定し、その領域の3次元情報を算出可能な位置まで移動体が移動した際に撮影して得られた画像を用いて3次元情報を再度算出する点で、第1の実施の形態と異なる。
本発明の第2の実施の形態に係る物体検出装置100の構成は、物体検出部201が3次元情報管理部311をさらに備える点、および情報処理装置125の主記憶部132に記憶される物体候補領域テーブル300の構成が異なる点が、第1の実施の形態と主に異なる。
図11は、本発明の第2の実施の形態における物体検出部201の構成を示すブロック図である。物体検出部201の備える3次元情報管理部311は、3次元情報算出部215および物体位置特定部216から情報を取得し、演算結果を処理対象選択部214に出力する。
3次元情報管理部311は、3次元情報算出部215から各物体候補領域に対する3次元情報を取得し、物体位置特定部216から物体の位置を取得する。3次元情報管理部311は、これらの情報を用いて、3次元情報算出部が3次元情報を算出した物体候補領域の周辺の空間で3次元情報が算出されていない空間を特定する。3次元情報管理部311は、3次元情報が算出されていない空間が存在する場合は、3次元情報が算出されていない空間を視認できる経路上の範囲を算出し、上記判定結果と共に物体候補領域テーブル300に格納する。
図12は、第2の実施の形態における物体候補領域テーブル300の構成の一例を示す。第2の実施の形態における物体候補領域テーブル300は、第1の実施の形態における物体候補領域テーブル300に3次元情報再算出対象、再算出範囲の項目2つが追加されている。
物体候補領域テーブル300の3次元情報再算出対象には、当該エントリの物体候補領域の周辺に3次元情報が得られなかった空間があり、その空間の3次元情報を再度算出する対象であるか否かを表すフラグが記録される。たとえば、図12の例では再算出の対象であることを「Y」で示し、再算出の対象ではないことを「N」で示している。3次元情報再算出対象の値は、3次元情報管理部311から記録される。
物体候補領域テーブル300の再算出範囲には、3次元情報の再算出を行うために画像を取得する移動経路上の範囲が記録される。移動経路の範囲は、記憶装置127に格納されている地図座標を用いて記録される。すなわち、地図座標で表した特定の位置(X,Y)を中心に、距離Rの範囲内で再算出を行うための画像の取得を行う。たとえば、図12の例では特定の位置(X,Y)と距離Rの範囲を、(X,Y,R)の形式で記述している。この再算出範囲は、3次元情報管理部311から記録される。
処理対象選択部214は、第1の実施の形態の処理に加えて、外界測定装置128を用いて自律移動装置1の自己位置を取得する。処理対象選択部214は、物体候補領域テーブル300に格納されているエントリから、3次元情報再算出対象の値がY、すなわち3次元情報の再算出対象であり、かつ、物体候補領域が再計算範囲内に自己位置が存在するエントリを抽出する。処理対象選択部214は、抽出した物体候補領域の優先度を、3次元情報算出対象を表す値以上に書き換え、3次元情報算出の実行状態を、未実行状態を示す値に書き換える。
(冒頭部のフローチャート)
第1の実施の形態では、第1カメラ121、および第2カメラ122が撮影を行う所定時間ごとに図6〜7により動作があらわされるプログラムを実行したが、第2の実施の形態では常時実行する。また、以下に示すように図6のステップS501の直前、および図7のステップS521の直後に実行するステップを追加する。
図13は、図6のステップS501の直前に実行する処理を示すフローチャートである。前述のように図13に示すフローチャートは常時実行される。以下に説明するこのフローチャートの実行主体は、情報処理装置125のCPU131である。
ステップS601において、情報処理装置125は、外界測定装置128を用いて自律移動装置1の位置を取得し、ステップS602に進む。
ステップS602において、情報処理装置125は、物体候補領域テーブル300の先頭のエントリを読み込み、ステップS603に進む。
ステップS603において、情報処理装置125は、読み込んだエントリが2つの条件、すなわち(1)再算出対象であること、(2)ステップS601において取得した位置が再計算範囲内に含まれること、の両方を満たすか否かを判断する。2つの条件を満たすと判断する場合はステップS604に進み、少なくとも1つを満たさないと判断する場合はステップS605に進む。
ステップS604において、情報処理装置125は、当該エントリの優先度を3次元情報算出対象を表す値以上、たとえば正の値に変更するとともに、実行状態を未実行を表す値、たとえば「WAIT」に変更し、ステップS605に進む。
ステップS605において、情報処理装置125は、物体候補領域テーブル300の全てのエントリが読み込まれたか否かを判断する。全てのエントリが読み込まれたと判断する場合はステップS607に進み、1つでも読み込まれていないエントリがあると判断する場合はステップS606に進む。
ステップS606において、情報処理装置125は、物体候補領域テーブル300から次のエントリを読み込み、ステップS603に戻る。
ステップS607において、情報処理装置125は、第1カメラ121および第2カメラ122が撮影を行う所定の時刻であるか否かを判断する。所定の時刻、たとえば時刻ta、ta+1等であると判断する場合は図6のステップS501に進み、所定の時刻ではないと判断する場合はステップS608に進む。
ステップS608において、情報処理装置125は、ステップS603において1回でも肯定判断されたか否かを判断する。1回でも肯定判断されたと判断する場合はステップS609に進み、全て否定判断されたと判断する場合はステップS609に進む。
ステップS609において、情報処理装置125は、第1カメラ121および第2カメラ122に撮影指令を送信し、図6のステップS501に進む。
(再算出判定のフローチャート)
図14は、第1の実施の形態における図7のフローチャートのステップS521付近の変更を示すフローチャートである。
ステップS521に至るまでの処理は、上述する図13の処理が加わる点以外は第1の実施の形態と同様である。
ステップS521において、情報処理装置125は、物体位置特定部216を用いて物体の位置を特定し、その情報を地図生成部202に出力してステップS630に進む。
ステップS630において、情報処理装置125は、3次元情報管理部311を用いて以下の3次元情報の追加判定処理を行う。情報処理装置125は、3次元情報算出部215から各物体候補領域に対する3次元情報を取得し、物体位置特定部216から物体の位置を取得し、物体の周辺の空間で3次元情報が算出されていない空間を特定する。情報処理装置125は、3次元情報が算出されていない空間が存在する場合、3次元情報が算出されていない空間を視認できる経路上の範囲を算出し、前記判定結果と共に物体候補領域テーブル300に格納する。次にステップS522に進む。
ステップS527において、情報処理装置125は、3次元情報算出部215に算出中断命令を出力し、ステップS522に進む。
ステップS522以下の処理は、第1の実施の形態と同様である。
図15は、ステップS630における3次元情報の追加判定の詳細動作を示すフローチャートである。
ステップS631において、情報処理装置125は、3次元情報算出部215から各物体候補領域に対する3次元情報を取得し、ステップS632に進む。
ステップS632において、情報処理装置125は、物体位置特定部216から物体の位置を取得し、ステップS633に進む。
ステップS633において、情報処理装置125は、得られた3次元情報と物体位置を2次元俯瞰地図に投影し、物体に隣接する3次元情報が得られていない空間を特定し、ステップS634に進む。ステップS633の処理は後に詳述する。
ステップS634において、情報処理装置125は、3次元情報が得られていない空間が存在するか否かを判断する。3次元情報が得られていない空間が存在すると判断する場合はステップS635に進み、3次元情報が得られていない空間が存在しないと判断する場合は図15に示すフローチャートの実行を終了し、図6のステップS522に進む。
ステップS635において、情報処理装置125は、3次元情報が得られていない空間を視認できる位置、すなわちその位置から撮影した画像を用いて現在は得られていない3次元情報が得られる位置を算出する。次に図6のステップS522に進む。ステップS635の処理は後にフローチャートを用いて詳述する。
(3次元情報が得られていない空間の特定)
図16は、ステップS633の処理を説明するための2次元俯瞰地図の一例である。
図16では、ある物体候補領域を対象として3次元情報をマッピングした例が示されている。図16に示す2次元俯瞰地図の横軸が自律移動装置1の水平位置、縦軸が自律移動装置1の前方方向である。自律移動装置1は図12の下方中央から上方を撮影した。2次元俯瞰地図には、物体候補領域内の各画素を対象として算出された3次元情報の水平位置と前方が該当する各グリッドにマッピングされる。2次元俯瞰地図では、所定の高さ以上の3次元情報が算出されたグリッド、すなわち物体が存在すると判断されたグリッドは縦線によるハッチングで表している。2次元俯瞰地図では、所定の高さ未満の3次元情報が算出されたグリッドは点によるハッチングで表している。2次元俯瞰地図では、3次元情報が得られなかったグリッドは空白、すなわち白の塗りつぶしで表している。2次元俯瞰地図では、3次元情報が得られなかったグリッドであって、何らかの3次元情報が得られたグリッドに隣接するグリッドは車線によるハッチングで表している。
あるグリッドの3次元情報が得られない理由として、(1)物体の陰、(2)算出対象外、(3)距離が遠いため情報が離散的、の3つが想定される。(1)物体の陰とは、手前に何らかの物体があるためにその後ろが撮影できず、3次元情報が算出できない状態である。(2)算出対象外とは、第1の実施の形態で述べたように、物体検出装置100は物体候補領域のみ3次元情報を算出するので、物体候補領域と判断されなかったために3次元情報が算出されない状態である。(3)距離が遠いため情報が離散的とは、光学系の特性から距離が離れるほど情報の分解能が粗くなるため、3次元情報が得られない状態である。
3次元情報が得られなかったグリッドのみに注目しても、前述の(1)〜(3)を判別できない。そこで本実施の形態では、「(1)物体の陰」であるグリッドを抽出するために、物体が存在すると判断されたグリッドに隣接するグリッドを抽出する。すなわち、図16における領域801を3次元情報が得られていない空間として特定する。
(視認位置の算出フローチャート)
図17は、3次元情報がない空間の視認位置の算出、すなわち図15に示すフローチャートのステップS635の詳細動作を示すフローチャートである。
ステップS651では、情報処理装置125は、予め設定された移動経路上のN個の経由点Pn(n=0、…、N−1)のそれぞれを対象として、経由点Pnと3次元情報がない空間のL個の頂点Uk(k=0、…、L−1)とを結ぶ直線Lnk(k=0、…L−1)を計算する。次にステップS652に進む。
ステップS652では、情報処理装置125は、ステップS651において計算された直線Lnkが物体領域Qと交わらず、経由点Pnでの視野内にある直線を抽出し、その直線に直線Ln_iの別名を付与する。直線Ln_iにおける「i」はゼロからの連番とする。次にステップS653に進む。
ステップS653では、情報処理装置125は、直線Ln_iの数が2以上の経由点Pnを対象として、任意の2直線に挟まれる領域を算出し、ステップS654に進む。
ステップS654では、情報処理装置125は、ステップS653において算出された領域のうち、最も面積の大きい領域と3次元情報のない空間が重複する部分の領域Anを経由点ごとに算出し、ステップS655に進む。
ステップS655では、情報処理装置125は、全ての経由点における領域Anの面積を比較し、最大の面積を有する経由点を3次元情報がない空間の視認位置とする。次に図7のステップS522に進む。
(視認位置の算出例)
図を用いて視認位置の算出例を説明する。図18は、予め設定された自律移動装置1の移動経路上の経由点P2、およびP3における、第1カメラ121および第2カメラ122の視野と、検出した物体Qとの位置関係を示す図である。ハッチングで示す領域701が、3次元情報が得られていない空間である。
情報処理装置125は、経由点P2,およびP3において、経由点と3次元情報がない空間の4個の頂点Uk(k=0〜3)とを結ぶ直線L20、L21、L22,L23、L30、L31、L32,L33を計算する(ステップS651)。情報処理装置125は、物体領域Qと交わらず、経由点Pnでの視野内にある直線として、L22,L23,L30,L32,L33を抽出する。情報処理装置125は、抽出した直線にL2_0、L2_1、L3_0、L3_1、L3_2の別名を付与する(ステップS652)。情報処理装置125は、経由点P2ではL2_0とL2_1に挟まれる領域A2を抽出し、経由点P3では、L3_0とL3_1に挟まれる領域A30、およびL3_1とL3_2に挟まれる領域A31とを抽出する(ステップS653)。情報処理装置125は、経由点P2では領域A2の面積を算出し、経由点P3では領域A31の面積を算出する(ステップS654)。情報処理装置125は、領域A30が最も面積が大きいため、経由点P3から所定の距離だけ離れた範囲Rを視認位置に設定する。
上述した第2の実施の形態によれば、次の作用効果が得られる。
(1)物体検出装置100は、物体候補領域を逐次追跡する領域追跡部213を備える。処理対象選択部214は、3次元情報算出部215が物体候補領域の3次元情報の算出を完了すると、領域追跡部213により追跡される当該物体候補領域の3次元情報を算出しないと判定するとともに、当該物体候補領域の3次元情報が追加で必要であると判断すると、所定のタイミングで当該物体候補領域の3次元情報を算出すると判定する。
そのため、ある物体候補領域の3次元情報を算出すると同一の物体候補領域の3次元情報を再度算出しないことにより、物体検出の処理時間を低減できる。さらに、物体の陰になった領域があり3次元情報が追加で必要であると判断すると、所定のタイミングで3次元情報を算出すると判断し、再度3次元情報を算出する。すなわち、必要に応じて再度3次元情報を算出できる。
(2)物体検出装置100は、第1カメラ121および第2カメラ122の位置を取得する位置取得部と、処理対象選択部214が物体候補領域の3次元情報が追加で必要であると判断すると、位置取得部から位置を取得し、当該物体候補領域に隣接する3次元情報が算出されなかった空間を第1カメラ121および第2カメラ122が撮影可能な位置に達すると、処理対象選択部214に当該物体候補領域の3次元情報を算出すると判定させる3次元情報管理部と、を備える。
すなわち、3次元情報が得られなかった空間が存在する場合に、その空間を撮影する経路上の範囲を算出し、移動体が前記算出された範囲に移動体が達したときに追跡された物体候補領域を対象として3次元情報を算出する。そのため、計算コストを抑えつつ、自律移動に必要な物体の3次元情報をより正確に取得できる。
(第3の実施の形態)
図19〜20を参照して、本発明に係る物体検出装置、および自律移動装置の第3の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、物体候補領域の抽出および追跡に使用する画像を撮影する1台のカメラと、3次元情報を算出するために使用する画像を撮影する2台のカメラを別々に備え、合計3台のカメラを備える点が第1の実施の形態と異なる。
第三の実施の形態に係る自律移動装置の構成は、第1の実施の形態の構成に加えて、第3カメラと、第3画像入力部と、対応領域算出部とをさらに備える。
図19は、本発明の第3の実施の形態に係る自律移動システム2の構成を示すブロック図である。第3カメラ1501は、第3画像入力部1501Aを介して自律移動装置1のバスに接続される。
第1カメラ121は、第2カメラ122および第3カメラ1501よりフレームレートが高い。第2カメラ122および第3カメラ1501は、第1カメラより解像度が高いカメラである。
図20は、第3の実施の形態に係る物体検出部201の機能構成を示すブロック図である。物体検出部201は、第1の実施の形態の構成に加えて、対応領域算出部1502を備える。
対応領域算出部1502の動作は以下のとおりである。対応領域算出部1502は、物体候補領域テーブル300からエントリを順次取り出し、3次元情報算出優先度の値が3次元算出対象を示す値(例えば正値)である場合に以下の処理を行う。対応領域算出部1502は、第1カメラ121から取得した画像において領域頂点座標によりあらわされる物体候補領域が、第2カメラ122または第3カメラ1501から取得した画像において対応する領域を算出する。対応領域算出部1502は、算出された領域の頂点座標を物体候補領域テーブル300の当該エントリにおける領域頂点座標として更新する。対応する領域を算出する方法は、例えば、第1カメラ121から取得した画像における物体候補領域の画像をテンプレートとして、第2カメラ122または第3カメラ1501から取得した画像全体を探索し、距離が最も近い位置を対応領域とする。
3次元情報算出部215は、物体候補領域テーブル300から物体候補領域のエントリを取り出し、3次元情報算出優先度の値が3次元算出対象を示す値(例えば正値)の場合、物体候補領域内の各画素に対応する3次元情報を、第3カメラ1501が取得した第1画像と第2カメラ122が取得した第2画像間の対応点探索処理によって算出する。処理を開始したら、物体候補領域テーブル300内の該当するエントリを対象として、3次元情報計算実行状態に実行状態を表す値を記録し、処理が完了したら、実行終了を表す値を記録する。
上述した第3の実施の形態によれば、次の作用効果が得られる。
(1)第3撮像部から複数の画像を連続的に取得する第3画像入力部をさらに備え、第1カメラ121は、第2カメラ122および第3撮像部のよりも高いフレームレートで撮影し、第2カメラ122および第3撮像部は、第1カメラ121よりも高い解像度で撮影し、3次元情報算出部215は、処理対象選択部214が3次元情報を算出すると判定した物体候補領域を対象として、第2画像入力部および第3画像入力部が取得する画像を用いて、第2カメラ122と第3撮像部の基線長に基づき、物体候補領域の3次元情報を算出する。
そのため、より高いフレームレートを有する第1カメラ121で撮影された時系列画像から2次元オプティカルフローを算出し、算出された2次元オプティカルフローから物体候補領域が抽出されることから、より高い精度で2次元オプティカルフローが算出可能であり、物体候補領域の抽出精度が高まる。また、より高い解像度を有する第2カメラ122で撮影された画像と第3カメラ1501で撮影された画像から3次元情報を算出することで、より密度の高い3次元情報が得られ、物体検出性能が向上する。
上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。上記実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることもできる。また、ある実施形態の構成に他の実施形態の構成を加えることもできる。また、各実施形態の構成の一部について、他の構成を追加・削除・置換することもできる。
(変形例)
上述した実施の形態では、物体検出部201は、処理対象選択部214と3次元情報算出部215とを備えたが、3次元情報算出部215が処理対象選択部214を含むように構成してもよい。すなわち、本発明には以下の構成も含まれる。
(1)物体検出装置100は、第1カメラ121から複数の画像を連続的に取得する第1画像入力部121Aと、第2カメラ122から複数の画像を連続的に取得する第2画像入力部122Aと、を備える。物体検出装置100はさらに、第1画像入力部121Aが異なる時間に取得した2以上の画像を用いて、物体が存在する物体候補領域を抽出する物体候補領域抽出部211と、抽出された物体候補領域の複数の画像上の位置に基づいて、第1撮像部の撮影範囲に対する物体候補領域の将来の位置を推定する領域将来推定部212と、を備える。物体検出装置100はさらに、領域将来推定部212の推定する将来の位置に基づき、3次元情報が必要である物体候補領域を対象として、第1画像入力部121Aおよび第2画像入力部122Aが取得する画像における当該物体候補領域の対応点に基づき3次元情報を算出する3次元情報算出部215と、を備える。
(2)3次元情報算出部215は、領域将来推定部212の推定する将来の位置に基づき物体候補領域ごとに3次元情報を算出するか否かを判定する処理対象選択部214を含み、3次元情報が必要である物体候補領域とは、処理対象選択部214により3次元情報を算出すると判断された物体候補領域である。
上記各構成、機能、処理部、処理手段等は、それらの一部や全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記録装置、ICカード、SDカード、DVD等の記録媒体に格納することができる。
1 … 自律移動装置
2 … 自律移動システム
100 … 物体検出装置
121 … 第1カメラ
121A … 第1画像入力部
122 … 第2カメラ
122A … 第2画像入力部
123 … 機構制御部
124 … 移動機構
125 … 情報処理装置
201 … 物体検出部
211 … 物体候補領域抽出部
212 … 領域将来推定部
213 … 領域追跡部
214 … 処理対象選択部
215 … 3次元情報算出部
216 … 物体位置特定部
300 … 物体候補領域テーブル
311 … 3次元情報管理部
1501 … 第3カメラ
1501A … 第3画像入力部

Claims (15)

  1. 第1撮像部から複数の画像を連続的に取得する第1画像入力部と、
    第2撮像部から複数の画像を連続的に取得する第2画像入力部と、
    前記第1画像入力部が異なる時間に取得した2以上の画像を用いて、物体が存在する物体候補領域を抽出する物体候補領域抽出部と、
    前記抽出された前記物体候補領域の複数の画像上の位置に基づいて、前記第1撮像部の撮影範囲に対する前記物体候補領域の将来の位置を推定する領域将来推定部と、
    前記領域将来推定部の推定する前記将来の位置に基づき、3次元情報が必要である前記物体候補領域を対象として、前記第1画像入力部および前記第2画像入力部が取得する画像における当該物体候補領域の対応点に基づき3次元情報を算出する3次元情報算出部と、
    を備える3次元情報算出装置。
  2. 請求項1に記載の3次元情報算出装置において、
    前記3次元情報算出部は、前記領域将来推定部の推定する将来の位置に基づき前記物体候補領域ごとに3次元情報を算出するか否かを判定する処理対象選択部を含み、
    3次元情報が必要である前記物体候補領域とは、前記処理対象選択部により3次元情報を算出すると判断された前記物体候補領域である、3次元情報算出装置。
  3. 請求項2に記載の3次元情報算出装置において、
    前記処理対象選択部は、前記領域将来推定部により推定される前記物体候補領域が前記第1撮像部の撮影範囲に含まれると判断すると3次元情報を算出すると判定し、前記領域将来推定部により推定される前記物体候補領域が前記第1撮像部の撮影範囲に含まれないと判断すると3次元情報を算出しないと判定する、3次元情報算出装置。
  4. 請求項2に記載の3次元情報算出装置において、
    前記3次元情報算出部は、前記物体候補領域の3次元情報を算出している最中に、当該物体候補領域が前記処理対象選択部により3次元情報を算出しないと判定されると、当該3次元情報の算出を中断する、3次元情報算出装置。
  5. 請求項2に記載の3次元情報算出装置において、
    前記3次元情報算出部は、前記物体候補領域が、前記処理対象選択部により3次元情報を算出しないと判定された後に3次元情報を算出すると判定されると、当該物体候補領域の3次元情報を算出する3次元情報算出装置。
  6. 請求項2に記載の3次元情報算出装置において、
    前記物体候補領域を逐次追跡する領域追跡部をさらに備え、
    前記処理対象選択部は、前記3次元情報算出部が前記物体候補領域の3次元情報の算出を完了すると、前記領域追跡部により追跡される当該物体候補領域の3次元情報を算出しないと判定するとともに、当該物体候補領域の3次元情報が追加で必要であると判断すると、所定のタイミングで当該物体候補領域の3次元情報を算出すると判定する、3次元情報算出装置。
  7. 請求項1に記載の3次元情報算出装置において、
    第3撮像部から複数の画像を連続的に取得する第3画像入力部をさらに備え、
    前記第1撮像部は、前記第2撮像部および前記第3撮像部よりも高いフレームレートで撮影し、
    前記第2撮像部および前記第3撮像部は、前記第1撮像部よりも高い解像度で撮影し、
    前記3次元情報算出部は、前記領域将来推定部の推定する前記将来の位置に基づき、3次元情報が必要である前記物体候補領域を対象として、前記第2画像入力部および前記第3画像入力部が取得する画像における当該物体候補領域の対応点に基づき3次元情報を算出する、3次元情報算出装置。
  8. 第1撮像部から複数の画像を連続的に取得し、
    第2撮像部から複数の画像を連続的に取得し、
    前記第1撮像部から異なる時間に取得した2以上の画像を用いて、物体が存在する物体候補領域を抽出し、
    前記抽出された前記物体候補領域の複数の画像上の位置に基づいて、前記第1撮像部の撮影範囲に対する前記物体候補領域の将来の位置を推定し、
    前記推定した前記将来の位置に基づき、3次元情報が必要である前記物体候補領域を対象として、前記第1撮像部および前記第2撮像部から取得する画像における当該物体候補領域の対応点に基づき3次元情報を算出する、3次元情報算出方法。
  9. 請求項8に記載の3次元情報算出方法において、
    前記領域将来推定部の推定する将来の位置に基づき前記物体候補領域ごとに3次元情報を算出するか否かを判定し、
    3次元情報が必要である前記物体候補領域とは、3次元情報を算出すると判断された前記物体候補領域である、3次元情報算出方法。
  10. 請求項9に記載の3次元情報算出方法において、
    前記物体候補領域ごとの3次元情報を算出するか否かの判定は、所定時間後において前記物体候補領域が前記第1撮像部の撮影範囲に含まれると判断すると当該物体候補領域を3次元情報の算出対象と判定し、所定時間後において前記物体候補領域が前記第1撮像部の撮影範囲に含まれないと判断すると当該物体候補領域を3次元情報の算出対象でないと判定する、3次元情報算出方法。
  11. 請求項9に記載の3次元情報算出方法において、
    前記物体候補領域の3次元情報を算出している最中に、当該物体候補領域が3次元情報の算出対象でないと判定されると、当該3次元情報の算出を中断する、3次元情報算出方法。
  12. 請求項9に記載の3次元情報算出方法において、
    前記物体候補領域が、3次元情報の算出対象でないと判定された後に3次元情報の算出対象であると判定されると、当該物体候補領域の3次元情報を算出する3次元情報算出方法。
  13. 請求項8に記載の3次元情報算出方法において、
    第3撮像部から複数の画像を連続的に取得し、
    前記第1撮像部は、前記第2撮像部および前記第3撮像部のよりも高いフレームレートで撮影し、
    前記第2撮像部および前記第3撮像部は、前記第1撮像部よりも高い解像度で撮影し、
    3次元情報の算出対象であると判定した前記物体候補領域を対象として、前記第2画像入力部および前記第3画像入力部が取得する画像を用いて、前記第2撮像部と前記第3撮像部の基線長に基づき、前記物体候補領域の3次元情報を算出する、3次元情報算出方法。
  14. 請求項1乃至7のいずれか1項に記載の3次元情報算出装置と、
    前記第1撮像部と、
    前記第2撮像部と、
    前記3次元情報算出装置、前記第1撮像部、および前記第2撮像部を搭載する移動機構と、
    前記3次元情報算出装置の出力に基づき前記移動機構を制御する機構制御部と、を備える自律移動装置。
  15. 請求項14に記載の自律移動装置において、
    前記3次元情報算出装置の出力に基づき物体の位置を検出する物体位置特定部をさらに備え、
    前記機構制御部は、前記物体位置特定部が検出する物体と当該自律移動装置との衝突を回避するように前記移動機構を制御する、自律移動装置。
JP2016569199A 2015-01-16 2015-01-16 3次元情報算出装置、3次元情報算出方法、および自律移動装置 Expired - Fee Related JP6456405B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/051076 WO2016113904A1 (ja) 2015-01-16 2015-01-16 3次元情報算出装置、3次元情報算出方法、および自律移動装置

Publications (2)

Publication Number Publication Date
JPWO2016113904A1 true JPWO2016113904A1 (ja) 2017-08-03
JP6456405B2 JP6456405B2 (ja) 2019-01-23

Family

ID=56405465

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016569199A Expired - Fee Related JP6456405B2 (ja) 2015-01-16 2015-01-16 3次元情報算出装置、3次元情報算出方法、および自律移動装置

Country Status (3)

Country Link
US (1) US10229331B2 (ja)
JP (1) JP6456405B2 (ja)
WO (1) WO2016113904A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6587435B2 (ja) * 2015-06-29 2019-10-09 キヤノン株式会社 画像処理装置、情報処理方法及びプログラム
JP6367166B2 (ja) 2015-09-01 2018-08-01 株式会社東芝 電子機器及び方法
EP4160150A1 (en) * 2016-08-26 2023-04-05 Panasonic Intellectual Property Corporation of America Three-dimensional information processing method and three-dimensional information processing apparatus
US10489639B2 (en) 2018-02-12 2019-11-26 Avodah Labs, Inc. Automated sign language translation and communication using multiple input and output modalities
US10289903B1 (en) 2018-02-12 2019-05-14 Avodah Labs, Inc. Visual sign language translation training device and method
US10346198B1 (en) 2018-02-12 2019-07-09 Avodah Labs, Inc. Data processing architecture for improved data flow
US10304208B1 (en) 2018-02-12 2019-05-28 Avodah Labs, Inc. Automated gesture identification using neural networks
WO2019157344A1 (en) * 2018-02-12 2019-08-15 Avodah Labs, Inc. Real-time gesture recognition method and apparatus
CN109543601A (zh) * 2018-11-21 2019-03-29 电子科技大学 一种基于多模态深度学习的无人车目标检测方法
USD912139S1 (en) 2019-01-28 2021-03-02 Avodah, Inc. Integrated dual display sensor
EP3742329A1 (en) * 2019-05-20 2020-11-25 Visteon Global Technologies, Inc. Lane tracking in three dimensions using digital terrain model
CN112017239B (zh) * 2019-05-31 2022-12-20 北京市商汤科技开发有限公司 确定目标对象朝向方法、智能驾驶控制方法和装置及设备
JP6697150B1 (ja) * 2019-10-30 2020-05-20 株式会社Qoncept 軌道算出装置、軌道算出方法、軌道算出プログラム
JP2021093037A (ja) * 2019-12-11 2021-06-17 株式会社東芝 算出システム、算出方法、プログラム、及び記憶媒体
WO2022221242A1 (en) * 2021-04-14 2022-10-20 Brain Corporation Systems and methods for robotic detection of escalators and moving walkways
KR20230018919A (ko) * 2021-07-30 2023-02-07 현대자동차주식회사 차량의 정차 제어 장치 및 그 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004061382A (ja) * 2002-07-30 2004-02-26 Sumitomo Osaka Cement Co Ltd 通過物体高さ測定装置
JP2008236642A (ja) * 2007-03-23 2008-10-02 Hitachi Ltd 物体追跡装置
JP2009294934A (ja) * 2008-06-05 2009-12-17 Ihi Corp 自律移動装置及び自律移動装置の制御方法
JP2010286926A (ja) * 2009-06-09 2010-12-24 Konica Minolta Holdings Inc 周辺監視装置
JP2012216946A (ja) * 2011-03-31 2012-11-08 Sony Computer Entertainment Inc 情報処理装置、情報処理方法、および位置情報のデータ構造
JP2013142668A (ja) * 2012-01-12 2013-07-22 Panasonic Corp 位置推定装置及び位置推定方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1094337B1 (en) * 1999-10-21 2004-03-17 Matsushita Electric Industrial Co., Ltd. Parking assistance system
WO2005036371A2 (en) * 2003-10-09 2005-04-21 Honda Motor Co., Ltd. Moving object detection using low illumination depth capable computer vision
US8625854B2 (en) * 2005-09-09 2014-01-07 Industrial Research Limited 3D scene scanner and a position and orientation system
US8050863B2 (en) * 2006-03-16 2011-11-01 Gray & Company, Inc. Navigation and control system for autonomous vehicles
JP2007316966A (ja) * 2006-05-26 2007-12-06 Fujitsu Ltd 移動ロボット、その制御方法及びプログラム
JP2009129001A (ja) * 2007-11-20 2009-06-11 Sanyo Electric Co Ltd 運転支援システム、車両、立体物領域推定方法
JP5089545B2 (ja) * 2008-09-17 2012-12-05 日立オートモティブシステムズ株式会社 道路境界検出判断装置
JP5827508B2 (ja) 2011-07-13 2015-12-02 ヤマハ発動機株式会社 車両用障害物検出装置及びそれを用いた車両
US20150070347A1 (en) * 2011-08-18 2015-03-12 Layar B.V. Computer-vision based augmented reality system
WO2013038818A1 (ja) * 2011-09-12 2013-03-21 日産自動車株式会社 立体物検出装置
JP5754470B2 (ja) * 2012-12-20 2015-07-29 株式会社デンソー 路面形状推定装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004061382A (ja) * 2002-07-30 2004-02-26 Sumitomo Osaka Cement Co Ltd 通過物体高さ測定装置
JP2008236642A (ja) * 2007-03-23 2008-10-02 Hitachi Ltd 物体追跡装置
JP2009294934A (ja) * 2008-06-05 2009-12-17 Ihi Corp 自律移動装置及び自律移動装置の制御方法
JP2010286926A (ja) * 2009-06-09 2010-12-24 Konica Minolta Holdings Inc 周辺監視装置
JP2012216946A (ja) * 2011-03-31 2012-11-08 Sony Computer Entertainment Inc 情報処理装置、情報処理方法、および位置情報のデータ構造
JP2013142668A (ja) * 2012-01-12 2013-07-22 Panasonic Corp 位置推定装置及び位置推定方法

Also Published As

Publication number Publication date
WO2016113904A1 (ja) 2016-07-21
US20180018529A1 (en) 2018-01-18
US10229331B2 (en) 2019-03-12
JP6456405B2 (ja) 2019-01-23

Similar Documents

Publication Publication Date Title
JP6456405B2 (ja) 3次元情報算出装置、3次元情報算出方法、および自律移動装置
EP3332218B1 (en) Methods and systems for generating and using localisation reference data
KR102425272B1 (ko) 디지털 지도에 대한 위치를 판별하기 위한 방법 및 시스템
KR101725060B1 (ko) 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
US11467001B2 (en) Adjustment value calculation method
US20200353914A1 (en) In-vehicle processing device and movement support system
CN109300143B (zh) 运动向量场的确定方法、装置、设备、存储介质和车辆
CN112805766B (zh) 用于更新详细地图的装置和方法
JP2019016188A (ja) 移動体遠隔操作システムおよび移動体遠隔操作方法
KR101319525B1 (ko) 이동 로봇을 이용하여 목표물의 위치 정보를 제공하기 위한 시스템
WO2022062480A1 (zh) 移动设备的定位方法和定位装置
JP2019078700A (ja) 情報処理装置および情報処理システム
US20210263533A1 (en) Mobile object and method for controlling mobile object
CN111353453A (zh) 用于车辆的障碍物检测方法和装置
US20190293444A1 (en) Lane level accuracy using vision of roadway lights and particle filter
WO2016157802A1 (ja) 情報処理装置、情報処理システム、情報処理方法、及び、記録媒体
EP3867725A1 (en) Obstacle detection
JP7179687B2 (ja) 障害物検知装置
US11662740B2 (en) Position estimating apparatus, method for determining position of movable apparatus, and non-transitory computer readable medium
JP7302966B2 (ja) 移動体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180719

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181218

R150 Certificate of patent or registration of utility model

Ref document number: 6456405

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees