JP6844223B2 - 情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラム - Google Patents

情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラム Download PDF

Info

Publication number
JP6844223B2
JP6844223B2 JP2016232143A JP2016232143A JP6844223B2 JP 6844223 B2 JP6844223 B2 JP 6844223B2 JP 2016232143 A JP2016232143 A JP 2016232143A JP 2016232143 A JP2016232143 A JP 2016232143A JP 6844223 B2 JP6844223 B2 JP 6844223B2
Authority
JP
Japan
Prior art keywords
information
height
unit
area
time
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
JP2016232143A
Other languages
English (en)
Other versions
JP2018088217A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2016232143A priority Critical patent/JP6844223B2/ja
Publication of JP2018088217A publication Critical patent/JP2018088217A/ja
Application granted granted Critical
Publication of JP6844223B2 publication Critical patent/JP6844223B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Traffic Control Systems (AREA)
  • Image Analysis (AREA)

Description

本発明は、情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラムに関する。
従来、自動車の安全性において、歩行者と自動車とが衝突したときに、いかに歩行者を守れるか、および、乗員を保護できるかの観点から、自動車のボディー構造等の開発が行われてきた。しかしながら、近年、情報処理技術および画像処理技術の発達により、高速に人および自動車を検出する技術が開発されてきている。これらの技術を応用して、自動車が物体に衝突する前に自動的にブレーキをかけ、衝突を未然に防ぐという自動車もすでに開発されている。車両の自動制御には、人または他車等の物体までの距離を正確に測定する必要があり、そのためには、ミリ波レーダおよびレーザレーダによる測距、ならびに、ステレオカメラによる測距等が実用化されている。例えばステレオカメラで測距する場合、左右のカメラで撮影された局所領域のズレ量(視差)に基づいて視差画像を生成し、前方物体と自車との距離を測定することができる。そして、同程度の距離に存在する(同程度の視差値を有する)視差画素の群を1つの物体として検出するクラスタリング処理を行う。
ここで、全ての視差画素(視差点)をクラスタリングしてしまうと、検出対象となる物体とは別に、路面上の白線の視差点も拾得し、平坦であるはずの路面の一部分を誤認識物体として検出してしまう問題が発生する。この場合、システムは前方に物体が存在するものであると判定して、急ブレーキをかけてしまう問題を生じる。この問題を解決するために、各視差点(視差画像のx座標値、視差画像のy座標値、視差値d)を、横軸を視差値d、縦軸を視差画像のx座標値、奥行方向の軸を頻度値とした2次元ヒストグラム(以下、「Vマップ」と称する場合がある)に投票する。そして、このVマップ上の投票点群から最小二乗法などの統計手法を用いて路面形状を推定し、推定路面よりも所定の高さ以上の位置に存在する視差点を、横軸を視差画像のx座標値、縦軸を視差値d、奥行き方向の軸を高さとした2次元ヒストグラム(以下、「高さUマップ」と称する場合がある)、および、横軸を視差画像のx座標値、縦軸を視差値d、奥行き方向の軸を頻度値とした2次元ヒストグラム(以下、「頻度Umap」と称する場合がある)に投票し、Uマップ上において所定値以上の高さの視差点が高密度で集まる領域(視差塊)を物体として検出する技術が知られている(例えば特許文献1参照)。
ここで、上述したような三次元物体認識処理を車両に搭載したモジュールで行う場合、リアルタイムに、かつ、高い認識精度で実行する必要があるので、全ての視差値がメモリに完全に書き込まれた後にクラスタリング処理を開始するのではなく、所定量の視差値が書き込まれるたびに逐次的にクラスタリング処理を実行することが知られている。
しかしながら、逐次的にクラスタリング処理を実行する場合、高さUマップに投票する視差点の高さ(路面からの高さ)は作成途中の路面情報(推定された路面の形状を示す情報)を元に算出されるものであり、作成途中の路面情報と最終結果の路面情報とで差異が大きい場合に、高さUマップに投票する視差点の高さを正確に算出できない。これにより、物体の検出精度を十分に確保することが困難であるという問題がある。
本発明は、上記に鑑みてなされたものであって、物体の検出精度を十分に確保可能な情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、画素毎に距離情報を有する距離画像を分割して得られる複数の分割領域を順番に取得する取得部と、前記取得部により前記分割領域が取得されるたびに、該取得された前記分割領域に含まれる複数の画素に基づいて、縦方向の位置と、奥行方向の位置とが対応付けられた第1の情報を生成する第1の生成部と、前記第1の情報が生成されるたびに、前記第1の情報を分割して得られる複数のセグメントのうち、該生成時に投票された前記分割領域に対応するセグメントについて、オブジェクトの高さの基準となる基準オブジェクトの形状を推定する推定部と、前記推定部による推定が行われるたびに、該推定結果を用いて、前記距離情報と、前記基準オブジェクトの高さとが対応付けられた第2の情報を生成する第2の生成部と、前記取得部により前記分割領域が取得されるたびに、その取得タイミングで生成された前記第2の情報を用いて、その取得された前記分割領域に含まれる複数の画素のうち前記基準オブジェクトよりも高い位置に対応する複数の画素に基づいて、横方向の位置と、奥行方向の位置と、が対応付けられた第3の情報を生成する第3の生成部と、各前記分割領域の取得が完了するタイミングで最終的に生成される前記第3の情報のうち、各前記分割領域と対応する複数の対応領域ごとに、該対応領域への画素の投票に用いられた前記第2の情報を示す途中段階の第2の情報と、前記第2の生成部により最終的に生成された前記第2の情報を示す最終段階の第2の情報との差に応じた補正を行う補正部と、を備え、前記第3の情報は、前記横方向の位置と前記奥行方向の位置の組み合わせごとに、高さを示す情報であり、前記補正部は、前記対応領域ごとに、該対応領域に含まれる複数の投票点の各々の高さを、前記途中段階の第2の情報と、前記最終段階の第2の情報との差に応じて補正する、情報処理装置である。
本発明によれば、物体の検出精度を十分に確保することができる。
図1は、実施形態の機器制御システムの概略構成を示す模式図である。 図2は、撮像ユニット及び解析ユニットの概略的なブロック図である。 図3は、被写体と各カメラ部の撮像レンズとの位置関係を示す図である。 図4は、解析ユニットが有する機能を概略的に説明するための図である。 図5は、物体検出処理部が有する機能の一例を示す図である。 図6は、路面検出処理部が有する機能の一例を示す図である。 図7は、視差画像の分割領域と、Vマップのセグメントとの対応を説明するための図である。 図8は、処理対象セグメントの推定路面を延長した延長路面を説明するための図である。 図9は、高さテーブルの一例を示す図である。 図10は、クラスタリング処理部が有する機能の一例を示す図である。 図11は、ステレオ視における視差値と実距離の関係を説明するための図である。 図12は、ステレオカメラと対象物までの実距離との関係を示す図である。 図13は、高さUマップおよび頻度Uマップの生成方法を説明するための図である。 図14は、経時推定路面が正解路面に比べて低い場合を示す図である。 図15は、撮像画像の一例を示す図である。 図16は、孤立領域の一例を示す図である。 図17は、孤立領域に対応する視差画像上の領域を示す図である。 図18は、オブジェクトタイプごとに定められたサイズ範囲を示す図である。 図19は、棄却処理を説明するための図である。 図20は、物体検出処理部による処理の一例を示すフローチャートである。
以下、添付図面を参照しながら、本発明に係る情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラムの実施形態を詳細に説明する。
(第1の実施形態)
図1は、実施形態の機器制御システム100の概略構成を示す模式図である。図1に示すように、機器制御システム100は、機器の一例である自動車等の車両101に設けられる。機器制御システム100は、撮像ユニット102、解析ユニット103、制御ユニット104及び表示部105を有している。
撮像ユニット102は、車両101のフロントガラス106のルームミラー付近に設けられ、車両101の例えば進行方向等の画像を撮像する。撮像ユニット102の撮像動作で得られる画像データを含む各種データは、解析ユニット103に供給される。解析ユニット103は、撮像ユニット102から供給される各種データに基づいて、車両101が走行中の路面、車両1の前方車両、歩行者、障害物等の認識対象物を解析する。制御ユニット104は、解析ユニット103の解析結果に基づいて、表示部105を介して、車両101の運転者へ警告等を行う。また、制御ユニット104は、解析結果に基づいて、各種車載機器の制御、車両101のハンドル制御又はブレーキ制御等の走行支援を行う。
図2は、撮像ユニット102及び解析ユニット103の概略的なブロック図である。この例では、解析ユニット103は「情報処理装置」として機能し、撮像ユニット102および解析ユニット103の組は「撮像装置」として機能する。なお、上述の制御ユニット104は、「制御部」として機能し、撮像装置の出力結果に基づいて機器(この例では車両101)を制御する。撮像ユニット102は、左目用となる第1のカメラ部1Aと、右目用となる第2のカメラ部1Bとの、2台のカメラ部が平行に組み付けられて構成されている。つまり、撮像ユニット102は、ステレオ画像を撮像するステレオカメラとして構成されている。ステレオ画像とは、複数の視点ごとの撮像で得られる複数の撮像画像(複数の視点と1対1に対応する複数の撮像画像)を含む画像であり、撮像ユニット102は、このステレオ画像を撮像するための装置である(「撮像部」として機能する)。各カメラ部1Aおよび1Bは、それぞれレンズ5、画像センサ6、センサコントローラ7を備えている。画像センサ6は、例えばCCDイメージセンサまたはCMOSイメージセンサとなっている。CCDは、「Charge Coupled Device」の略記である。また、CMOSは、「Complementary Metal-Oxide Semiconductor」の略記である。センサコントローラ7は、画像センサ6の露光制御、画像読み出し制御、外部回路との通信、および画像データの送信制御等を行う。
解析ユニット103は、データバスライン10、シリアルバスライン11、CPU15、FPGA16、ROM17、RAM18、シリアルIF19、およびデータIF20を有している。CPUは、「Central Processing Unit」の略記である。FPGAは、「Field-Programmable Gate Array」の略記である。ROMは、「Read Only Memory」の略記である。RAMは、「Random Access Memory」の略記である。IFは、「interface」の略記である。
上述の撮像ユニット102は、データバスライン10およびシリアルバスライン11を介して解析ユニット103と接続されている。CPU15は、解析ユニット103全体の動作、画像処理、および画像認識処理を実行制御する。第1のカメラ部1Aおよび第2のカメラ部1Bの画像センサ6で撮像された撮像画像の輝度画像データは、データバスライン10を介して解析ユニット103のRAM18に書き込まれる。CPU15またはFPGA16からのセンサ露光値の変更制御データ、画像読み出しパラメータの変更制御データ、および各種設定データ等は、シリアルバスライン11を介して送受信される。
FPGA16は、RAM18に保存された画像データに対してリアルタイム性が要求される処理である。FPGA16は、第1のカメラ部1Aおよび第2のカメラ部1Bでそれぞれ撮像された輝度画像データ(撮像画像)のうち、一方を基準画像とすると共に他方を比較画像とする。そして、FPGA16は、撮像領域内の同一地点に対応する基準画像上の対応画像部分と比較画像上の対応画像部分との位置ズレ量を、対応画像部分の視差値(視差画像データ)として算出する。
図3に、XZ平面上における被写体30と、第1のカメラ部1Aの撮像レンズ5Aと、第2のカメラ部1Bの撮像レンズ5Bとの位置関係を示す。この図3において、各撮像レンズ5A、5Bの間の距離b及び各撮像レンズ5A、5Bの焦点距離fは、それぞれ固定値である。また、被写体30の注視点Pに対する撮像レンズ5AのX座標のズレ量をΔ1とする。また、被写体30の注視点Pに対する撮像レンズ5BのX座標のズレ量をΔ2とする。この場合において、FPGA16は、被写体30の注視点Pに対する各撮像レンズ5A、5BのX座標の差である視差値dを、以下の式1で算出する。
Figure 0006844223
解析ユニット103のFPGA16は、撮像ユニット102から供給される輝度画像データに対して、例えばガンマ補正処理及び歪み補正処理(左右の撮像画像の平行化)等のリアルタイム性が要求される処理を施す。また、FPGA16は、このようなリアルタイム性が要求される処理を施した輝度画像データを用いて上述の式1の演算を行うことで、視差画像データを生成し、RAM15に書き込む。
図2に戻って説明を続ける。CPU15は、撮像ユニット102の各センサコントローラ7の制御、および解析ユニット103の全体的な制御を行う。また、ROM17には、後述する状況認識、予測、立体物認識等を実行するための立体物認識プログラムが記憶されている。立体物認識プログラムは、画像処理プログラムの一例である。CPU15は、データIF20を介して、例えば自車両のCAN情報(車速、加速度、舵角、ヨーレート等)をパラメータとして取得する。そして、CPU15は、ROM17に記憶されている立体物認識プログラムに従って、RAM18に記憶されている輝度画像および視差画像を用いて、状況認識等の各種処理を実行制御することで、例えば先行車両等の認識対象の認識を行う。CANは、「Controller Area Network」の略記である。
認識対象の認識データは、シリアルIF19を介して、制御ユニット104へ供給される。制御ユニット104は、認識対象の認識データを用いて自車両のブレーキ制御や自車両の速度制御等の走行支援を行う。
図4は、解析ユニット103が有する機能を概略的に説明するための図である。ステレオカメラを構成する撮像ユニット102で撮像されるステレオ画像は解析ユニット103へ供給される。例えば第1のカメラ部1Aおよび第2のカメラ部1Bがカラー仕様の場合、第1のカメラ部1Aおよび第2のカメラ部1Bの各々は、以下の式2の演算を行うことで、RGB(赤緑青)の各信号から輝度(Y)信号を生成するカラー輝度変換処理を行う。第1のカメラ部1Aおよび第2のカメラ部1Bの各々は、カラー輝度変換処理により生成した輝度画像データ(撮像画像)を、解析ユニット103が有する前処理部111へ供給する。第1のカメラ部1Aで撮像された輝度画像データ(撮像画像)と、第2のカメラ部1Bで撮像された輝度画像データ(撮像画像)との組がステレオ画像であると考えることができる。この例では、前処理部111は、FPGA16により実現される。
Figure 0006844223
前処理部111は、第1のカメラ部1Aおよび第2のカメラ部1Bから受け取った輝度画像データの前処理を行う。この例では、前処理としてガンマ補正処理を行う。そして、前処理部111は、前処理を行った後の輝度画像データを平行化画像生成部112へ供給する。
平行化画像生成部112は、前処理部111から供給された輝度画像データに対して、平行化処理(歪み補正処理)を施す。この平行化処理は、第1のカメラ部1A、第2のカメラ部1Bから出力される輝度画像データを、2つのピンホールカメラが平行に取り付けられたときに得られる理想的な平行化ステレオ画像に変換する処理である。具体的には、各画素の歪み量を、Δx=f(x、y)、Δy=g(x、y)という多項式を用いて計算した計算結果を用いて、第1のカメラ部1A、第2のカメラ部1Bから出力される輝度画像データの各画素を変換する。多項式は、例えば、x(画像の横方向位置)、y(画像の縦方向位置)に関する5次多項式に基づく。これにより、第1のカメラ部1A、第2のカメラ部1Bの光学系の歪みを補正した平行な輝度画像を得ることができる。この例では、平行化画像生成部112は、FPGA16により実現される。
視差画像生成部113は、「距離画像生成部」の一例であり、撮像ユニット102により撮像されたステレオ画像から、画素毎に距離情報を備えた距離画像の一例である、画素毎に視差値dを備えた視差画像を生成する。ここでは、視差画像生成部113は、第1のカメラ部1Aの輝度画像データを基準画像データとし、第2のカメラ部1Bの輝度画像データを比較画像データとし、上述の式1に示す演算を行うことで、基準画像データと比較画像データの視差を示す視差画像データを生成する。具体的には、視差画像生成部113は、基準画像データの所定の「行」について、一つの注目画素を中心とした複数画素(例えば16画素×1画素)からなるブロックを定義する。一方、比較画像データにおける同じ「行」において、定義した基準画像データのブロックと同じサイズのブロックを1画素ずつ横ライン方向(X方向)へズラす。そして、視差画像生成部113は、基準画像データにおいて定義したブロックの画素値の特徴を示す特徴量と比較画像データにおける各ブロックの画素値の特徴を示す特徴量との相関を示す相関値を、それぞれ算出する。
また、視差画像生成部113は、算出した相関値に基づき、比較画像データにおける各ブロックの中で最も基準画像データのブロックと相関があった比較画像データのブロックを選定するマッチング処理を行う。その後、基準画像データのブロックの注目画素と、マッチング処理で選定された比較画像データのブロックの対応画素との位置ズレ量を視差値dとして算出する。このような視差値dを算出する処理を基準画像データの全域又は特定の一領域について行うことで、視差画像データを得る。なお、視差画像の生成方法としては、公知の様々な技術を利用可能である。要するに、視差画像生成部113は、ステレオカメラで撮像されるステレオ画像から、画素毎に距離情報を有する距離画像(この例では視差画像)を算出(生成)していると考えることができる。
マッチング処理に用いるブロックの特徴量としては、例えばブロック内の各画素の値(輝度値)を用いることができる。また、相関値としては、例えば基準画像データのブロック内の各画素の値(輝度値)と、これらの画素にそれぞれ対応する比較画像データのブロック内の各画素の値(輝度値)との差分の絶対値の総和を用いることができる。この場合、当該総和が最も小さくなるブロックが、最も相関があるブロックとして検出される。
このような視差画像生成部113のマッチング処理としては、例えばSSD(Sum of Squared Difference)、ZSSD(Zero-mean Sum of Squared Difference)、SAD(Sum of Absolute Difference)、又は、ZSAD(Zero-mean Sum of Absolute Difference)等の手法を用いることができる。なお、マッチング処理において、1画素未満のサブピクセルレベルの視差値が必要な場合は、推定値を用いる。推定値の推定手法としては、例えば等角直線方式又は二次曲線方式等を用いることができる。ただし、推定したサブピクセルレベルの視差値には誤差が発生する。このため、推定誤差を減少させるEEC(推定誤差補正)等の手法を用いてもよい。
この例では、視差画像生成部113は、FPGA16により実現され、視差画像生成部113は、一ライン分の視差値dの集合(視差画像の一ライン分のデータ)を生成するたびに、メモリに書き込んでいく。メモリは任意であり、ROM17やRAM18であってもよいし、これらとは別の記憶装置であってもよい。
図5は、物体検出処理部114が有する機能の一例を示す図である。図5に示すように、物体検出処理部114は、取得部121、路面検出処理部122、クラスタリング処理部123、トラッキング処理部124を有する。物体検出処理部114の機能は、CPU15が立体物認識プログラムを実行することにより実現される。
取得部121は、距離画像の一例である視差画像を分割して得られる複数の分割領域を順番に取得する。この例では、取得部121は、視差画像生成部113により所定ライン数分の視差値dの集合のメモリへの書き込みが完了するたびに、該所定ライン数分の視差値dの集合(1つの「分割領域」であると考えることができる)を取得する。以下の説明では、所定ライン数分の視差値dの集合を、「分割領域」と称する場合がある。
路面検出処理部122は、取得部121により分割領域が取得されるたびに、その取得された分割領域を用いて、オブジェクトの高さの基準となる基準オブジェクトの一例である路面を検出する。図6に示すように、路面検出処理部122は、第1の生成部126と、路面推定部127と、第2の生成部128と、を有する。
第1の生成部126は、取得部121により分割領域が取得されるたびに、該取得された分割領域に含まれる複数の画素に基づいて、縦方向の位置と、奥行方向の位置とが対応付けられた第1の情報を生成する。本実施形態では、第1の生成部126は、取得部121により分割領域が取得されるたびに、その取得された分割領域に含まれる複数の画素(視差値dを有する視差画素)を、画像の垂直方向の座標(y)を縦軸、視差値dを横軸とする2次元ヒストグラム上に投票して、第1の対応情報を生成する。以下の説明では、この第1の対応情報を「Vマップ(V−Disparityマップ)」と称する。Vマップは、視差画像の(x座標値、y座標値、視差値d)の組のうち、横軸を視差値d、縦軸をy座標値、奥行方向の軸を頻度値とした2次元ヒストグラムである。要するに、Vマップは、縦方向の位置と視差値d(奥行方向の位置に相当)との組み合わせごとに、視差値dの頻度値を記録した情報であると考えることもできる。以下の説明では、Vマップ内の座標点のうち視差画素が投票された座標を視差点と称する場合がある。第1の生成部126は、分割領域の投票を順番に行って、Vマップを逐次的に生成していると考えることができる。
なお、Vマップの生成において、視差画像のy座標とVマップのy座標とは対応関係にあり、視差画像の特定のy座標の水平ライン上の視差値dは、Vマップの対応するy座標の水平ラインのうち、該視差値dに対応する点(Vマップ上の座標点)に投票される。したがって、視差画像の同じ水平ラインに含まれる視差値dは同値となるものも存在するため、Vマップの任意の座標点には、同値の視差値dの数を示す頻度値が格納されることになる。視差画像の特定の水平ラインにおいては、同じ路面であれば、視差値dは互いに類似する値となるため、Vマップにおける路面に対応する視差画素は密集して投票されることになる。
路面推定部127は、「推定部」の一例であり、第1の生成部126によりVマップが生成されるたびに、Vマップを分割して得られる複数のセグメントのうち、該生成時に投票された分割領域に対応するセグメントについて、オブジェクトの高さの基準となる路面(「基準オブジェクト」の一例)の形状を推定する。ここでは、路面推定部127は、第1の生成部126から入力されるVマップを、Vマップの横軸の方向(視差値dの方向)に連続する複数のセグメントに分割する。ただし、これに限らず、例えば視差画像のy方向(Vマップの縦軸方向)に分割してもよい。また、セグメントの位置は任意の位置に設定することが可能である。通常、セグメント間は連続させることが望ましいが、不連続となっても構わない(例えば、所定距離範囲(d値)での推定をあえて実行しない場合など)。本実施形態では、セグメントは2つ以上設定する。セグメントは、等間隔に設定せずに所定の幅で設定することもできる。例えば、遠方領域は解像度が低い(路面分解能が低い)ことがわかっているため、遠方に行くに連れて、セグメントを細かく分割する方法が考えられる。従って、上記に合わせてセグメント数を決定すれば良い。
例えば図7に示す視差画像の分割領域Aが投票されてVマップが生成(更新)される場合を想定する。この場合、分割領域A内の画素(視差画素)は、Vマップ上の対象領域A’に投票される。また、この例では、Vマップを分割して得られる複数のセグメントは、右から順番に、第1セグメントseg1、第2セグメントseg2、第3セグメントseg3、第4セグメントseg4、第5セグメントseg5、第6セグメントseg6、第7セグメントseg7の7つであり、分割領域A内の画素は、主に第4セグメントseg4に投票される。つまり、分割領域Aは第4セグメントseg4に対応する。また、このとき、Vマップのうち対象領域A’よりも上の領域は未投票領域となり、第4セグメントseg4よりも遠方(視差値dが小さい方向)のセグメント(第5〜第7セグメント)には殆ど視差画素が投票されていない。この例では、視差画像の分割領域Aが投票されてVマップが生成されたタイミングで、路面推定部127は、該分割領域Aに対応する第4セグメントseg4について、路面推定を行う。
より具体的には、路面推定部127は、セグメントごとに以下の処理を行う。まず路面推定部127は、処理対象のセグメント(以下、「対象セグメント」と称する場合がある)における視差値dの方向(Vマップの横軸方向)の各座標(以下、「d座標」と称する場合がある)の位置から、所定の個数(例えば1つ)の代表点(以下、「標本点」と称する)を選択する。標本点の選択方法としては、例えば、各d座標に対して、その垂直(縦)方向に存在する視差点(投票点)のうち、単純に頻度の最も多い視差点(最頻点)を選択してもよく、または、着目するd座標とその左右の複数の画素を併せてVマップの下方向から上方向に上げていき、路面の視差点が含まれ得る領域を制限した上で、その中から最頻点を選択するといったように、より正確に路面の視差点を捉える方法を用いてもよい。または、視差点がない位置(座標)を標本点として選択してもよい。例えば、着目している座標(d,y)には視差点は存在していないが、周囲に頻度が多い視差点が集中している場合、偶発的に座標(d,y)の視差点が欠落している可能性があるため、この抜けている位置を標本点として選択することも可能である。
また、路面推定部127は、以上のようにして選択した標本点のうち、不適切な標本点を除去してもよい。これによって、後述の標本点群に対する直線近似の際に、不適切な標本点(外れ点)の影響を受けて、路面の推定結果が不適切になってしまうことを抑制することができる。外れ点の除去方法としては、例えば、一旦、対象セグメント内の全ての標本点を使って最小二乗法で直線近似し、近似直線から所定の距離離れた標本点を除去するものとしてもよい。この場合、外れ点を除去した状態で、再度、最小二乗法により推定した結果が最終的な推定結果となる。
路面推定部127は、残った標本点を使って、路面の形状を推定する。路面の形状を推定する方法としては、例えば、最小二乗法等によって標本点群に対して直線近似を行う方法、または、多項式近似等を用いて曲線形状を推定する方法等がある。同時に、後段の成否判定(路面の形状を推定した結果に対する成否判定)に使用するために、これらの手法に基づいた相関係数などの数値尺度を算出しておいても良い。以降の説明では、特に断らない限り、路面の形状推定は直線近似によるものとして説明する。また、路面の形状の推定結果(推定された路面情報)を推定路面と称する場合がある。
ここでは、視差画像の下から上へ向かって分割領域の投票(Vマップを生成するための投票)が行われていくことを前提とする。つまり、Vマップの第1セグメントseg1から左へ向かう方向に順番に、セグメントごとの路面推定が行われる。図7の例では、対象セグメントである第4セグメントseg4よりも近方(視差値dが大きい方向)のセグメント(第1〜第3セグメント)については既に路面推定が行われているので、路面推定部127は、第1〜第4セグメント間の推定路面が滑らかに連続するように修正するスムージング処理を行う。一方、第4セグメントseg4よりも遠方のセグメント(第5〜第7セグメント)については路面推定が行われていないため、例えば図8に示すように、路面推定部127は、第4セグメントseg4の推定路面を延長した延長路面を、第5〜第7セグメントの路面として設定してもよい。このようにして、路面全体の形状を推定することができる(路面推定結果を得ることができる)。なお、延長路面に限らず、例えば未推定のセグメントに対応する路面の形状として、所定の路面(以下、「補間路面」と称する場合がある)を設定(補間)してもよい。所定の路面としては、平坦な形状と仮定したデフォルト路面(デフォルト形状)、または、過去のフレームで推定した形状を示す履歴路面(履歴形状)などを用いることができる。デフォルト路面は予めカメラの取付高さとピッチング角度から算出することが可能である。また、履歴路面とは、1フレーム以上前のフレームで推定された過去の推定路面を示し、過去の所定数のフレームで推定された路面を平均した路面であってもよい。
第2の生成部128は、路面推定部127による推定が行われるたびに、該推定結果を用いて、距離情報と、基準オブジェクトの高さと、が対応付けられた第2の情報を生成する。ここでは、第2の生成部128は、第2の情報として、視差値dと、路面の高さとが対応付けられた高さテーブルを生成する。図9は、高さテーブルの一例を示す図である。図9に示すように、高さテーブルはVマップの横軸(視差値d)の要素数分確保されており、各要素には視差値dに対する路面の高さが格納されている。従って、任意の視差値dを入力値として、高さテーブルを参照すると、その視差値dに対応する路面の高さを取得することができる。また、路面の高さは、例えば、以下の式3に基づいて算出することができる。ここで、Hは路面の高さを、Kは推定した路面の傾きを、Bは推定した路面の切片を、dは視差値を表している。この場合、式3が第2の情報に対応することになる。なお、式3は一例であり、路面からの高さを算出することができれば任意の式を使用することが可能である。なお、Vマップを複数のセグメントに分割している場合は、セグメントごとに路面推定を実行するため複数の推定路面が存在する。言い換えれば、セグメントごとに、対応する高さテーブルや式3が設定される。従って、参照する視差値dが含まれるセグメントに対応する高さテーブルや、式3の傾きと切片を使用して高さを計算することになる。以下の説明では、高さテーブルを使用する場合を例に挙げて説明することとする。
Figure 0006844223
第2の生成部128は、路面推定部127による推定が行われたセグメントについては、その推定された路面(推定結果)を用いて高さテーブルを作成し、路面推定部127による推定が行われていないセグメントについては、それまでの推定結果を補間して得られる補間路面(延長路面、デフォルト路面、履歴路面等)を用いて高さテーブルを作成する。以上のようにして、全セグメントにわたる高さテーブルを作成することができる。つまり、第2の生成部128は、路面推定部127による推定が行われるたびに、該推定結果を含む今までの推定結果と、該今までの推定結果を補間して得られる補間結果とを用いて、Vマップの横軸の要素分の視差値dと、路面の高さとを対応付けた高さテーブルを生成する。第2の生成部128は、高さテーブルを生成するたびに、その生成した高さテーブルをクラスタリング処理部123へ入力する。
図5に示すクラスタリング処理部123は、路面検出処理部122により生成された高さテーブルを用いて、視差画像上の物***置を検出する。図10は、クラスタリング処理部123の詳細な構成の一例を示す図である。図10に示すように、クラスタリング処理部123は、第3の生成部131と、補正部132と、孤立領域検出処理部140と、視差画処理部150と、棄却処理部160と、を有する。
第3の生成部131は、取得部121により分割領域が取得されるたびに、その取得タイミングで生成された高さテーブル(より具体的には、その取得された分割領域を投票して生成されるVマップのうち該分割領域に対応するセグメントにおける路面推定結果を用いて生成された高さテーブル)を用いて、その取得された分割領域に含まれる複数の画素のうち路面よりも高い位置に対応する複数の画素に基づいて(複数の画素を投票して)、横方向の位置と、奥行方向の位置とが対応付けられた第3の情報を生成する。この例では、第3の生成部131は、第3の情報として、横軸を視差画像のx、縦軸を視差値dとし、対応する点ごとに高さが記録された高さUマップを生成する。高さUマップは、視差画像の横軸方向の値と視差値dとの組み合わせごとに高さを記録した情報であると考えてもよい。また、第3の生成部131は、高さUマップと併せて、路面よりも高い位置に対応する複数の画素を投票して、横方向の位置と奥行方向の位置との組み合わせごとに、視差値dの頻度値を示す頻度Uマップ(「第4の情報」の一例)を生成する。以下の説明では、高さUマップと頻度Uマップを区別しない場合は、単に「Uマップ」と称する場合がある。本実施形態では、分割領域が取得されるタイミングに同期して、Vマップの生成、高さテーブルの生成、高さUマップの生成、頻度Uマップの生成が並列的に実行され、これらの情報が逐次的に生成されていく。
ここで、路面の高さテーブルを参照する例について説明する。視差画像中において、同じライン上の視差であれば、カメラからの距離は同等(誤差があるとしても近値)になるはずである。しかし、物体視差が同ライン上に存在すると、物体は路面よりも距離が近くなるため、視差値dは大きな値となる。従って、視差画像中の同じy座標(同ライン上)における視差の差異を利用することで、路面からの高さを計算することができる。例えば、視差値d1に対応する路面の高さは、高さテーブルの視差値d1に対応する路面の高さ(ここではh1とする)を参照することで得られる。ここでは視差値d1は路面上の視差であるため、Vマップ上の推定路面の高さと一致する。ここで、視差画像のy座標とVマップのy座標を統一している場合、路面の高さは視差画像のy座標と一致する(なお、必ずしも統一している必要はなく、路面の高さ=この高さに視差を投票した視差画像中のy座標と考えることができる)。また、視差画像中の同ラインの視差であれば、本来、視差値dは互いに近い値となる。従って、同ライン上の視差値に対応する路面の高さは全てh1となるはずである。しかし、例えば物体視差(視差値d2とする)が同ライン上に含まれる場合、路面視差と物体視差は互いに異なる値を持つ。例えば視差値d2は視差値d1よりも大きな値となる場合、視差値d2に対応する路面の高さh2は、高さh1よりも高くなる。従って、以下の式4に示すように、本来得られるはずの高さh1よりも大きな高さとして算出されたh2から、本来得られるはずの路面からの高さh1(y座標値に相当)を差し引くことで、路面から物体視差がどの程度浮いているのか、つまり、路面からの高さHを算出することができる。なお、高さテーブルに格納されている値は、単位がピクセルであるが、後段処理で実距離として扱いたい場合には、後述の式5、6で実距離に変換して格納しておくことも可能である。なお、ここでは、処理を高速化させるために、高さテーブルを作成するが、上記式3から高さを算出することもできるため、高さテーブルの代わりに上記式3に基づいて高さを算出しても構わない。
Figure 0006844223
ここで、ステレオ視における視差値dと実距離(奥行き方向の実距離)の関係を説明する。図11に示すように、ステレオカメラでは第1のカメラ部1A(左目用のカメラ)と第2のカメラ部1B(右目用のカメラ)の二眼で対象物を撮影し、左右のカメラで捉えた同一物体の撮像面でのズレ量が視差値dに相当し、視差値dは対象物までの実距離D、カメラの基線長b、及び、焦点距離fを用いて、以下の式5で算出することができる。b、fはカメラに固有の値であり既知であるので、視差値dが分かれば、以下の式5により実距離を算出することができる。
Figure 0006844223
また、所定の実距離において、所定サイズを画素数に変換する方法について補足説明する。図12は、ステレオカメラと対象物までの実距離との関係を示す図である。ここで、所定の距離Dにおける所定サイズsは、カメラの焦点距離fと、その時の画素数pとセンサ間隔cを使って、以下の式6で算出することができる。
Figure 0006844223
いま、図13に示す視差画像の分割領域Aが取得される場合を想定する。この場合、第3の生成部131は、分割領域A内の視差画素(x、y、d)ごとに、分割領域Aの取得タイミングで生成された高さテーブル(分割領域Aを投票して生成されるVマップのうち該分割領域Aに対応する第4セグメントseg4までの各セグメントで推定された路面情報を用いて生成された路面推定結果を用いて生成された高さテーブル)を使って、路面からの高さHを算出することができる。そして、路面からの高さHが0より大きい画素(路面の高さよりも高い位置に対応する画素)を、高さUマップのうち分割領域Aに対応する被投票領域(「対応領域」の一例)Cに投票し、その高さを記録することで、高さUマップを作成する。なおUマップ上の座標(x,d)に投票される視差画素は一つとは限らないため、複数の視差画素が投票される場合、全ての視差画素ごとの高さを保持するように高さUマップを二次元で構成しても良いし、投票された高さの内、最大となる高さのみを記憶するようにしても良い。同様に、第3の生成部131は、分割領域A内の視差画素のうち路面の高さよりも高い位置に対応する視差画素を、頻度Uマップのうち分割領域Aに対応する被投票領域Dに投票し、投票した座標(x、d)の頻度値を1つだけインクリメントすることで、頻度Uマップを作成する。
ここでは、高さUマップおよび頻度Uマップの各々は、視差画像を分割して得られる複数の分割領域と1対1に対応する複数の被投票領域を有しており、被投票領域ごとに、該被投票領域の投票に用いられた高さテーブルを紐付けた管理情報がメモリに記憶されている。メモリはROM17やRAM18であってもよいし、これらとは異なる記憶装置であってもよい。以下の説明では、このメモリを「高さテーブルメモリ」と称する。なお、分割領域内の視差画素が投票される高さUマップや頻度Uマップ上の領域(被投票領域)は大まかに特定することができるが、はるか遠方、または近方の視差画素が含まれている場合、必ずしも該大まかに特定した領域に入るとは限らないので、被投票領域はある程度の裕度を持たせて設定されてもよい。
図10に戻って、クラスタリング処理部123が有する機能の説明を続ける。補正部132は、各分割領域の取得が完了するタイミングで最終的に生成される高さUマップのうち、各分割領域と対応する複数の被投票領域(「対応領域」の一例)ごとに、該被投票領域への画素の投票に用いられた高さテーブルを示す途中段階の高さテーブル(「途中段階の第2の情報」の一例)と、第2の生成部128により最終的に生成された高さテーブルを示す最終段階の高さテーブル(「最終段階の第2の情報の一例」)との差に応じた補正を行う。最終段階の高さテーブルとは、各分割領域の取得が完了するタイミングで最終的に生成される高さテーブル、つまり、最後の分割領域に対応する被投票領域への画素の投票に用いられた高さテーブルであると考えることができる。
例えば図14に示すように、第4セグメントseg4における路面推定時に推定された路面が正解路面よりも低い路面になる場合、第4セグメントseg4における路面推定時に推定された路面を延長した延長路面は正解路面よりも低くなる。したがって、第4セグメントseg4における路面推定時に推定された路面(経時推定路面)が正解路面に比べて低い場合に、路面視差が路面よりも高い視差だと誤判定されてしまい、Uマップ内の被投票領域に投票されてしまうリスクが発生する。なお、延長路面が正解路面よりも高くなる場合には、物体視差の路面からの高さが正解値に比べて低くなるというリスクが発生する。
そこで、本実施形態では、最終的に生成された高さUマップのうち、各分割領域と対応する複数の被投票領域ごとに、該被投票領域への画素の投票に用いられた途中段階の高さテーブルと、最終段階の高さテーブルとの差に応じた補正を行う。これにより、高さUマップ上の投票点(Uマップ上の視差画素が投票された座標点)の高さを正確に算出することができるので、上記リスクの発生を抑制できる。
補正部132は、複数の被投票領域ごとに、該被投票領域に含まれる複数の投票点の各々の高さを、途中段階の高さテーブルと、最終段階の高さテーブルとの差に応じて補正する。より具体的には、補正部132は、複数の被投票領域ごとに、該被投票領域に含まれる複数の投票点の各々の高さに対して、途中段階の高さテーブルにおいて該投票点に対応する路面の高さと、最終段階の高さテーブルにおいて該投票点に対応する路面の高さとの差を加減算する。なお、この例では、補正部132は、上述の高さテーブルメモリに記憶された管理情報を参照して、処理対象の被投票領域に対応する途中段階の高さテーブルを特定しているが、これに限られるものではない。例えば上述の管理情報の代わりに、セグメントごとに、該セグメントにおける路面推定結果を用いて作成した高さテーブルを紐付けた第2の管理情報を管理し、補正部132は、処理対象の被投票領域の視差値dの範囲から、対応するセグメントを特定し、第2の管理情報を参照して、その特定したセグメントに対応する高さテーブルを途中段階の高さテーブルとして特定してもよい。
図13において、被投票領域Cの補正を例に挙げて説明する。補正部132は、被投票領域Cに含まれる複数の投票点(被投票領域C内の視差画素が投票された座標点)ごとに、該投票点の高さに対して、被投票領域Cへの投票に用いられた途中段階の高さテーブル(被投票領域Cに対応する分割領域Aを投票するタイミングに同期して生成された高さテーブル)において該投票点に対応する(より具体的には、該投票点の縦軸方向の値(視差値d)に対応する)路面の高さと、最終段階の高さテーブルにおいて該投票点に対応する路面の高さとの差を加減算する。
なお、高さUマップ上において、被投票領域同士が重なる可能性もあるが(裕度を持たせて各被投票領域を設定する場合)、重なった位置(視差値dの方向の座標)における差(途中段階の高さテーブルと最終段階の高さテーブルとの差)のうち、いずれかを選択しても良いし、単純平均、加重平均するなどして加減算するオフセット量を算出しても良い。加重平均する場合、視差値dの方向の座標が被投票領域の中心から離れるほど、重みを小さくするなどの方法が考えられる。また、視差値dの方向(Uマップの縦軸方向)の座標ごとに、視差画像のx方向(Uマップの横軸方向)の各座標の高さに対して補正する方法が考えられるが、視差画像のx方向の全ての座標に対して実行する必要はない。後段のクラスタリング処理でUマップ上の部分領域のみを使用するのであれば、該部分領域の高さのみを補正してもかまわない。
また、補正部132は、被投票領域に含まれる複数の投票点のうち、途中段階の高さテーブルにおいて該投票点に対応する路面の高さと、最終段階の高さテーブルにおいて該投票点に対応する路面の高さとの差が閾値よりも大きい投票点のみを選択し、該選択した投票点の高さに対して、途中段階の高さテーブルにおいて該投票点に対応する路面の高さと、最終段階の高さテーブルにおいて該投票点に対応する路面の高さとの差を加減算する。このように閾値を設けることで、微小なズレの影響は無視することができる。
以上に説明した補正処理は、後述のクラスタリング処理の開始前にUマップ上の全ての画素(投票点)に対して実施しても良いし、クラスタリング処理実施中の各画素へアクセスする際に全て処理してもよいし、一部を処理してもよい。また、補正部132は、補正後の高さUマップに基づいて、頻度Uマップを補正する。より具体的には、補正部132は、補正後の高さUマップの投票点のうち、閾値を超える高さを示す投票点を選択し、頻度Uマップのうち、高さUマップから選択した投票点と同じ位置の投票点の頻度値を0に設定する補正を行う。すなわち、頻度Uマップのうち、最終的に推定された路面(正解路面)とは乖離した推定路面に基づく投票点を除外する。
図10に戻って、クラスタリング処理部123が有する機能の説明を続ける。孤立領域検出処理部140は、高さUマップと頻度Uマップを用いて、Uマップ上の視差値dの塊の領域である孤立領域(集合領域)を検出するクラスタリング処理を行う。より具体的には、孤立領域検出処理部140は、高さUマップのうち所定値以上の高さを持つ投票点群(Uマップの画素群)を決定し、頻度Uマップのうち、高さUマップ上で決定した投票点群と同じ位置の投票点をクラスタリング処理に使用する。このときの所定値は、路面推定に失敗して路面が低くなることを想定して、任意の誤差量を使用しても良いし、所定値を使わなくても良い(例えば所定値=0)。所定値は実際に採用した路面推定や視差誤差の影響から考慮して決めれば良い。また、頻度Uマップのうち、上記のクラスタリング処理に使用するために決定された投票点群以外の投票点(Uマップの画素)は除去しても良いし、マーキングしておきクラスタリング処理に使用しないようにしても良い。以上より、路面から高い位置に存在する視差画素を決定することができるため、該視差画素の視差値dをクラスタリング処理で使用することができる。
例えば図15に示す撮像画像の場合、左右にガードレール81、82があり、車両77及び車両79がセンターラインを挟んで対面通行をしている。各走行車線には、それぞれ1台の車両77又は車両79が走行している。車両79とガードレール82との間には2本のポール80A,80Bが存在している。図16は、図15に示す撮像画像に基づいて得られたUマップであり、枠で囲まれた領域が孤立領域に相当する。
視差画処理部150は、孤立領域検出処理部140により検出された孤立領域に対応する視差画像上の領域や実空間での物体情報を検出する視差画処理を行う。図17は、図16に示す孤立領域に対応する視差画像上の領域(視差画処理部150による処理の結果)を示す図であり、図17の領域91はガードレール81に対応する領域であり、領域92は車両77に対応する領域であり、領域93は車両79に対応する領域であり、領域94はポール80Aに対応する領域であり、領域95はポール80Bに対応する領域であり、領域96はガードレール82に対応する領域である。
図10に示す棄却処理部160は、視差画処理部150により検出された視差画上の領域や実空間での物体情報に基づき、出力すべきオブジェクトを選別する棄却処理を行う。棄却処理部160は、物体のサイズに着目したサイズ棄却と、物体同士の位置関係に着目したオーバラップ棄却とを実行する。例えばサイズ棄却では、図18に示すオブジェクトタイプごとに定められたサイズ範囲に当てはまらないサイズの検出結果を棄却する。例えば図19の例では、領域91および領域96は棄却されている。また、オーバラップ棄却では、視差画処理により検出された、視差画上の孤立領域に対応する領域同士に対し、重なりを持つ結果の取捨選択を行う。
クラスタリング処理部123からの出力情報(検出結果)は図5に示すトラッキング処理部124に入力される。トラッキング処理部124は、クラスタリング処理部123による検出結果(検出された物体)が複数のフレームにわたって連続して出現する場合に追跡対象であると判定し、追跡対象である場合には、その検出結果を物体検出結果として制御ユニット104へ出力する。制御ユニット104は、物体検出結果に基づいて、実際に車両101を制御する。
図20は、本実施形態の物体検出処理部114による処理の一例を示すフローチャートである。各ステップの具体的な内容は上述したとおりであるので適宜に説明を省略する。ステップS1〜ステップS6の処理は、分割領域の数(視差画像の分割数)だけ繰り返し実行される。
まず、視差画像生成部113は、一ライン分の視差値dの集合をメモリに書き込む(ステップS1)。所定ライン数分の書き込みが完了すると(ステップS2:Yes)、取得部121は、該所定ライン数分の視差値dの集合を取得し(1つの分割領域を取得し)、第1の生成部126は、その取得された分割領域に含まれる視差画素を投票してVマップを生成する(ステップS3)。次に、路面推定部127は、Vマップを分割して得られる複数のセグメントのうち、ステップS3での投票が行われた分割領域に対応するセグメントの路面推定を行う(ステップS4)。次に、第2の生成部128は、ステップS4の推定結果を用いて高さテーブルを生成し、その時点での高さテーブル(途中段階の高さテーブル)として上述の高さテーブルメモリに保存する(ステップS5)。このとき、既に推定された路面情報と本処理(ステップS4)で生成された路面情報を用いる。ただし、Vマップ上の未処理領域(例えば、より遠方のセグメント)に関しては、推定された路面情報がないため、最後に生成した路面情報を延長するなりして補間する必要がある。この内容は上述したとおりである。次に、第3の生成部131は、ステップS5で保存された高さテーブルを用いて、ステップS3での投票が行われた分割領域に含まれる複数の画素のうち路面よりも高い位置に対応する複数の画素を投票して、Uマップ(高さUマップおよび頻度Uマップ)を生成する(ステップS6)。
図20の例では、分割領域の数分、上述のステップS1〜ステップS6の処理が繰り返された後、補正部132は、最終的に生成された高さUマップのうち、各分割領域と対応する複数の被投票領域ごとに、該被投票領域への画素の投票に用いられた途中段階の高さテーブルと、最終段階の高さテーブルとをそれぞれ高さテーブルメモリから読み出し、両者の差に応じた補正を行う(ステップS7)。
以上に説明したように、本実施形態では、視差画像を分割して得られる複数の分割領域が順番に取得されるタイミングに同期して、Vマップの生成、高さテーブルの生成、高さUマップの生成、頻度Uマップの生成が並列的に実行され、これらの情報が逐次的に生成されていく。そして、最終的に生成された高さUマップのうち、各分割領域と対応する複数の被投票領域ごとに、該被投票領域への画素の投票に用いられた途中段階の高さテーブルと、最終段階の高さテーブルとの差に応じた補正を行う。これにより、高さUマップ上の投票点の高さを正確に算出することができるので、結果として、物体の検出精度を十分に確保することが可能になる。
以上、本発明に係る実施形態について説明したが、本発明は、上述の各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
また、上述した実施形態の機器制御システム100で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、各種プログラムを、ROM等に予め組み込んで提供するように構成してもよい。
1A 第1のカメラ部
1B 第2のカメラ部
5 レンズ
6 画像センサ
7 センサコントローラ
10 データバスライン
11 シリアルバスライン
15 CPU
16 FPGA
17 ROM
18 RAM
19 シリアルIF
20 データIF
100 機器制御システム
101 車両
102 撮像ユニット
103 解析ユニット
104 制御ユニット
105 表示部
106 フロントガラス
111 前処理部
112 平行化画像生成部
113 視差画像生成部
114 物体検出処理部
121 取得部
122 路面検出処理部
123 クラスタリング処理部
124 トラッキング処理部
126 第1の生成部
127 路面推定部
128 第2の生成部
131 第3の生成部
132 補正部
140 孤立領域検出処理部
150 視差画処理部
160 棄却処理部
特開2015−075800号公報

Claims (8)

  1. 画素毎に距離情報を有する距離画像を分割して得られる複数の分割領域を順番に取得する取得部と、
    前記取得部により前記分割領域が取得されるたびに、該取得された前記分割領域に含まれる複数の画素に基づいて、縦方向の位置と、奥行方向の位置とが対応付けられた第1の情報を生成する第1の生成部と、
    前記第1の情報が生成されるたびに、前記第1の情報を分割して得られる複数のセグメントのうち、該生成時に投票された前記分割領域に対応するセグメントについて、オブジェクトの高さの基準となる基準オブジェクトの形状を推定する推定部と、
    前記推定部による推定が行われるたびに、推定結果を用いて、前記距離情報と、前記基準オブジェクトの高さとが対応付けられた第2の情報を生成する第2の生成部と、
    前記取得部により前記分割領域が取得されるたびに、その取得タイミングで生成された前記第2の情報を用いて、その取得された前記分割領域に含まれる複数の画素のうち前記基準オブジェクトよりも高い位置に対応する複数の画素に基づいて、横方向の位置と、奥行方向の位置と、が対応付けられた第3の情報を生成する第3の生成部と、
    各前記分割領域の取得が完了するタイミングで最終的に生成される前記第3の情報のうち、各前記分割領域と対応する複数の対応領域ごとに、該対応領域への画素の投票に用いられた前記第2の情報を示す途中段階の第2の情報と、前記第2の生成部により最終的に生成された前記第2の情報を示す最終段階の第2の情報との差に応じた補正を行う補正部と、を備え、
    前記第3の情報は、前記横方向の位置と前記奥行方向の位置の組み合わせごとに、高さを示す情報であり、
    前記補正部は、前記対応領域ごとに、該対応領域に含まれる複数の投票点の各々の高さを、前記途中段階の第2の情報と、前記最終段階の第2の情報との差に応じて補正する、
    情報処理装置。
  2. 前記補正部は、前記対応領域ごとに、該対応領域に含まれる複数の投票点の各々の高さに対して、前記途中段階の第2の情報において該投票点に対応する前記基準オブジェクトの高さと、前記最終段階の第2の情報において該投票点に対応する前記基準オブジェクトの高さとの差を加減算する、
    請求項に記載の情報処理装置。
  3. 前記補正部は、前記対応領域に含まれる複数の投票点のうち、前記途中段階の第2の情報において該投票点に対応する前記基準オブジェクトの高さと、前記最終段階の第2の情報において該投票点に対応する前記基準オブジェクトの高さとの差が閾値よりも大きい投票点のみを選択し、該選択した投票点の高さに対して、前記途中段階の第2の情報において該投票点に対応する前記基準オブジェクトの高さと、前記最終段階の第2の情報において該投票点に対応する前記基準オブジェクトの高さとの差を加減算する、
    請求項に記載の情報処理装置。
  4. 前記補正部は、補正後の前記第3の情報に基づいて、前記横方向の位置と前記奥行方向の位置の組み合わせごとに、前記距離情報の頻度値を示す第4の情報を補正する、
    請求項1乃至のうちの何れか1項に記載の情報処理装置。
  5. ステレオ画像を撮像する撮像部と、
    前記撮像部により撮像された前記ステレオ画像から、画素毎に距離情報を有する距離画像を生成する距離画像生成部と、
    前記距離画像を分割して得られる複数の分割領域を順番に取得する取得部と、
    前記取得部により前記分割領域が取得されるたびに、該取得された前記分割領域に含まれる複数の画素に基づいて、縦方向の位置と、奥行方向の位置とが対応付けられた第1の情報を生成する第1の生成部と、
    前記第1の情報が生成されるたびに、前記第1の情報を分割して得られる複数のセグメントのうち、該生成時に投票された前記分割領域に対応するセグメントについて、オブジェクトの高さの基準となる基準オブジェクトの形状を推定する推定部と、
    前記推定部による推定が行われるたびに、推定結果を用いて、前記距離情報と、前記基準オブジェクトの高さとが対応付けられた第2の情報を生成する第2の生成部と、
    前記取得部により前記分割領域が取得されるたびに、その取得タイミングで生成された前記第2の情報を用いて、その取得された前記分割領域に含まれる複数の画素のうち前記基準オブジェクトよりも高い位置に対応する複数の画素に基づいて、横方向の位置と、奥 行方向の位置とが対応付けられた第3の情報を生成する第3の生成部と、
    各前記分割領域の取得が完了するタイミングで最終的に生成される前記第3の情報のうち、各前記分割領域と対応する複数の対応領域ごとに、該対応領域への画素の投票に用いられた前記第2の情報を示す途中段階の第2の情報と、前記第2の生成部により最終的に生成された前記第2の情報を示す最終段階の第2の情報との差に応じた補正を行う補正部と、を備え、
    前記第3の情報は、前記横方向の位置と前記奥行方向の位置の組み合わせごとに、高さを示す情報であり、
    前記補正部は、前記対応領域ごとに、該対応領域に含まれる複数の投票点の各々の高さを、前記途中段階の第2の情報と、前記最終段階の第2の情報との差に応じて補正する、
    撮像装置。
  6. 撮像装置と、前記撮像装置の出力結果に基づいて機器を制御する制御部と、を含む機器制御システムであって、
    前記撮像装置は、
    ステレオ画像を撮像する撮像部と、
    前記撮像部により撮像された前記ステレオ画像から、画素毎に距離情報を有する距離画像を生成する距離画像生成部と、
    前記距離画像を分割して得られる複数の分割領域を順番に取得する取得部と、
    前記取得部により前記分割領域が取得されるたびに、該取得された前記分割領域に含まれる複数の画素に基づいて、縦方向の位置と、奥行方向の位置とが対応付けられた第1の情報を生成する第1の生成部と、
    前記第1の情報が生成されるたびに、前記第1の情報を分割して得られる複数のセグメントのうち、該生成時に投票された前記分割領域に対応するセグメントについて、オブジェクトの高さの基準となる基準オブジェクトの形状を推定する推定部と、
    前記推定部による推定が行われるたびに、推定結果を用いて、前記距離情報と、前記基準オブジェクトの高さとが対応付けられた第2の情報を生成する第2の生成部と、
    前記取得部により前記分割領域が取得されるたびに、その取得タイミングで生成された前記第2の情報を用いて、その取得された前記分割領域に含まれる複数の画素のうち前記基準オブジェクトよりも高い位置に対応する複数の画素に基づいて、横方向の位置と、奥行方向の位置とが対応付けられた第3の情報を生成する第3の生成部と、
    各前記分割領域の取得が完了するタイミングで最終的に生成される前記第3の情報のうち、各前記分割領域と対応する複数の対応領域ごとに、該対応領域への画素の投票に用いられた前記第2の情報を示す途中段階の第2の情報と、前記第2の生成部により最終的に生成された前記第2の情報を示す最終段階の第2の情報との差に応じた補正を行う補正部と、を備え、
    前記第3の情報は、前記横方向の位置と前記奥行方向の位置の組み合わせごとに、高さを示す情報であり、
    前記補正部は、前記対応領域ごとに、該対応領域に含まれる複数の投票点の各々の高さを、前記途中段階の第2の情報と、前記最終段階の第2の情報との差に応じて補正する、
    機器制御システム。
  7. 画素毎に距離情報を有する距離画像を分割して得られる複数の分割領域を順番に取得する取得ステップと、
    前記取得ステップにより前記分割領域が取得されるたびに、該取得された前記分割領域に含まれる複数の画素に基づいて、縦方向の位置と、奥行方向の位置とが対応付けられた第1の情報を生成する第1の生成ステップと、
    前記第1の情報が生成されるたびに、前記第1の情報を分割して得られる複数のセグメントのうち、該生成時に投票された前記分割領域に対応するセグメントについて、オブジェクトの高さの基準となる基準オブジェクトの形状を推定する推定ステップと、
    前記推定ステップによる推定が行われるたびに、推定結果を用いて、前記距離情報と、前記基準オブジェクトの高さとが対応付けられた第2の情報を生成する第2の生成ステップと、
    前記取得ステップにより前記分割領域が取得されるたびに、その取得タイミングで生成された前記第2の情報を用いて、その取得された前記分割領域に含まれる複数の画素のうち前記基準オブジェクトよりも高い位置に対応する複数の画素に基づいて、横方向の位置と、奥行方向の位置とが対応付けられた第3の情報を生成する第3の生成ステップと、
    各前記分割領域の取得が完了するタイミングで最終的に生成される前記第3の情報のうち、各前記分割領域と対応する複数の対応領域ごとに、該対応領域への画素の投票に用いられた前記第2の情報を示す途中段階の第2の情報と、前記第2の生成ステップにより最終的に生成された前記第2の情報を示す最終段階の第2の情報との差に応じた補正を行う補正ステップと、を含み、
    前記第3の情報は、前記横方向の位置と前記奥行方向の位置の組み合わせごとに、高さを示す情報であり、
    前記補正ステップは、前記対応領域ごとに、該対応領域に含まれる複数の投票点の各々の高さを、前記途中段階の第2の情報と、前記最終段階の第2の情報との差に応じて補正する、
    情報処理方法。
  8. コンピュータに、
    画素毎に距離情報を有する距離画像を分割して得られる複数の分割領域を順番に取得する取得ステップと、
    前記取得ステップにより前記分割領域が取得されるたびに、該取得された前記分割領域に含まれる複数の画素に基づいて、縦方向の位置と、奥行方向の位置とが対応付けられた第1の情報を生成する第1の生成ステップと、
    前記第1の情報が生成されるたびに、前記第1の情報を分割して得られる複数のセグメントのうち、該生成時に投票された前記分割領域に対応するセグメントについて、オブジェクトの高さの基準となる基準オブジェクトの形状を推定する推定ステップと、
    前記推定ステップによる推定が行われるたびに、推定結果を用いて、前記距離情報と、前記基準オブジェクトの高さとが対応付けられた第2の情報を生成する第2の生成ステップと、
    前記取得ステップにより前記分割領域が取得されるたびに、その取得タイミングで生成された前記第2の情報を用いて、その取得された前記分割領域に含まれる複数の画素のうち前記基準オブジェクトよりも高い位置に対応する複数の画素に基づいて、横方向の位置と、奥行方向の位置とが対応付けられた第3の情報を生成する第3の生成ステップと、
    各前記分割領域の取得が完了するタイミングで最終的に生成される前記第3の情報のうち、各前記分割領域と対応する複数の対応領域ごとに、該対応領域への画素の投票に用いられた前記第2の情報を示す途中段階の第2の情報と、前記第2の生成ステップにより最終的に生成された前記第2の情報を示す最終段階の第2の情報との差に応じた補正を行う補正ステップと、を実行させるためのプログラムであって、
    前記第3の情報は、前記横方向の位置と前記奥行方向の位置の組み合わせごとに、高さを示す情報であり、
    前記補正ステップは、前記対応領域ごとに、該対応領域に含まれる複数の投票点の各々の高さを、前記途中段階の第2の情報と、前記最終段階の第2の情報との差に応じて補正する、プログラム
JP2016232143A 2016-11-30 2016-11-30 情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラム Active JP6844223B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016232143A JP6844223B2 (ja) 2016-11-30 2016-11-30 情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016232143A JP6844223B2 (ja) 2016-11-30 2016-11-30 情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2018088217A JP2018088217A (ja) 2018-06-07
JP6844223B2 true JP6844223B2 (ja) 2021-03-17

Family

ID=62494618

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016232143A Active JP6844223B2 (ja) 2016-11-30 2016-11-30 情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラム

Country Status (1)

Country Link
JP (1) JP6844223B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7306139B2 (ja) * 2019-07-30 2023-07-11 株式会社リコー 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム
JP7322576B2 (ja) * 2019-07-31 2023-08-08 株式会社リコー 情報処理装置、撮像装置および移動体
KR102079057B1 (ko) * 2019-10-17 2020-04-07 아하방수텍 주식회사 재활용 고점착 씰 및 이의 제조방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6519262B2 (ja) * 2014-04-10 2019-05-29 株式会社リコー 立体物検出装置、立体物検出方法、立体物検出プログラム、及び移動体機器制御システム

Also Published As

Publication number Publication date
JP2018088217A (ja) 2018-06-07

Similar Documents

Publication Publication Date Title
CN110023951B (zh) 信息处理设备、成像设备、装置控制***、信息处理方法和计算机可读记录介质
US20180308282A1 (en) Shape measuring apparatus and method
JP7038345B2 (ja) カメラパラメタセット算出方法、カメラパラメタセット算出プログラム及びカメラパラメタセット算出装置
JP4876080B2 (ja) 環境認識装置
JP6805534B2 (ja) 視差画像生成装置、視差画像生成方法及び視差画像生成プログラム、物体認識装置、機器制御システム
JP7206583B2 (ja) 情報処理装置、撮像装置、機器制御システム、移動体、情報処理方法およびプログラム
JP6907513B2 (ja) 情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラム
US20100283845A1 (en) Vehicle periphery monitoring device, vehicle, vehicle periphery monitoring program, and vehicle periphery monitoring method
JP6561512B2 (ja) 視差値導出装置、移動体、ロボット、視差値導出方法、視差値生産方法及びプログラム
JP6743882B2 (ja) 画像処理装置、機器制御システム、撮像装置、画像処理方法及びプログラム
WO2017138245A1 (ja) 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム
US10719949B2 (en) Method and apparatus for monitoring region around vehicle
JP6592991B2 (ja) 物体検出装置、物体検出方法及びプログラム
JP6844223B2 (ja) 情報処理装置、撮像装置、機器制御システム、情報処理方法およびプログラム
JP6589313B2 (ja) 視差値導出装置、機器制御システム、移動体、ロボット、視差値導出方法、およびプログラム
US11908148B2 (en) Information processing device to determine object distance
EP2913999A1 (en) Disparity value deriving device, equipment control system, movable apparatus, robot, disparity value deriving method, and computer-readable storage medium
JP6992356B2 (ja) 情報処理装置、撮像装置、機器制御システム、移動体、情報処理方法およびプログラム
JP7062904B2 (ja) 情報処理装置、撮像装置、機器制御システム、移動体、情報処理方法およびプログラム
JP7052265B2 (ja) 情報処理装置、撮像装置、機器制御システム、移動体、情報処理方法、及び、情報処理プログラム
JP2018146495A (ja) 物体検出装置、物体検出方法、物体検出プログラム、撮像装置、及び、機器制御システム
JP6969245B2 (ja) 情報処理装置、撮像装置、機器制御システム、移動体、情報処理方法、及び、情報処理プログラム
WO2018097269A1 (en) Information processing device, imaging device, equipment control system, mobile object, information processing method, and computer-readable recording medium
JP2019160251A (ja) 画像処理装置、物体認識装置、機器制御システム、移動体、画像処理方法およびプログラム
EP2919191B1 (en) Disparity value deriving device, equipment control system, movable apparatus, robot, and disparity value producing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190903

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201023

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201223

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210208

R151 Written notification of patent or utility model registration

Ref document number: 6844223

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151