JP2017167970A - 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム - Google Patents
画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム Download PDFInfo
- Publication number
- JP2017167970A JP2017167970A JP2016054453A JP2016054453A JP2017167970A JP 2017167970 A JP2017167970 A JP 2017167970A JP 2016054453 A JP2016054453 A JP 2016054453A JP 2016054453 A JP2016054453 A JP 2016054453A JP 2017167970 A JP2017167970 A JP 2017167970A
- Authority
- JP
- Japan
- Prior art keywords
- image
- unit
- matching
- template
- contour
- 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.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
- Traffic Control Systems (AREA)
- Image Analysis (AREA)
Abstract
【課題】物体に対して精度よく追従処理を行うことができる画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラムを提供する。【解決手段】現在のフレームに対応する距離画像において、物体の上側から下方向に向かって探索した場合に、物体の距離情報の画素に行き当たる各画素を結ぶことによって物体の輪郭を取得し、輪郭に対して、輪郭テンプレートを用いたテンプレートマッチングによって輪郭が検出対象の物体に相当する場合、物体の横方向の候補位置を特定する第1マッチング手段と、距離画像において、候補位置からの縦方向において画像テンプレートを用いたテンプレートマッチングを行い、物体の横方向の位置、および、縦方向の第1位置を決定する第2マッチング手段と、を備える。【選択図】図14
Description
本発明は、画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラムに関する。
従来、自動車の安全性において、歩行者と自動車とが衝突したときに、いかに歩行者を守れるか、および、乗員を保護できるかの観点から、自動車のボディー構造等の開発が行われてきた。しかしながら、近年、情報処理技術および画像処理技術の発達により、高速に人および自動車を検出する技術が開発されてきている。これらの技術を応用して、自動車が物体に衝突する前に自動的にブレーキをかけ、衝突を未然に防ぐという自動車もすでに開発されている。自動車の自動制御には、人または他車等の物体までの距離を正確に測定する必要があり、そのためには、ミリ波レーダおよびレーザレーダによる測距、ならびに、ステレオカメラによる測距等が実用化されている。
ステレオカメラによる物体認識処理では、大きくクラスタリング処理と、トラッキング処理とに分けることができる。クラスタリング処理は、特にリアルタイムに撮像された輝度画像、およびステレオカメラから導出された視差画像を用いて物体を新規に検出する処理である。また、トラッキング処理は、複数のフレームの情報を用いてクラスタリング処理で検出された物体を追従する処理である。トラッキング処理では、基本的に、二次元画像上の視差値または輝度値のパターンに基づいて、前フレームで検出された物体と類似している領域を、テンプレートマッチングにより現在のフレーム内から検出する。
このようなトラッキング処理の技術として、歩行者が存在すると認識された歩行者認識領域の特定および歩行者であることの確度を示す歩行者スコアを行い、歩行者スコアに基づいて、歩行者が存在するという認識結果の採否を決定する技術が提案されている(特許文献1参照)。
しかし、特許文献1には、フレーム間で刻々と異なっていく特徴量に対応する処理が記載されておらず、非剛体である歩行者のように、個体ごとに様々な特徴があり、時間経過により特徴量も異なっていく物体を、精度よく追従(トラッキング)する処理を実行するのが困難であるという問題がある。
本発明は、上記に鑑みてなされたものであって、物体に対して精度よく追従処理を行うことができる画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、現在のフレームに対応する距離画像において、物体の上側から下方向に向かって探索した場合に、物体の距離情報の画素に行き当たる各画素を結ぶことによって物体の輪郭を取得し、輪郭に対して、輪郭テンプレートを用いたテンプレートマッチングによって輪郭が検出対象の物体に相当する場合、物体の横方向の候補位置を特定する第1マッチング手段と、距離画像において、候補位置からの縦方向において画像テンプレートを用いたテンプレートマッチングを行い、物体の横方向の位置、および、縦方向の第1位置を決定する第2マッチング手段と、を備えたことを特徴とする。
本発明によれば、物体に対して精度よく追従処理を行うことができる。
以下に、図1〜27を参照しながら、本発明に係る画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラムの実施の形態を詳細に説明する。また、以下の実施の形態によって本発明が限定されるものではなく、以下の実施の形態における構成要素には、当業者が容易に想到できるもの、実質的に同一のもの、およびいわゆる均等の範囲のものが含まれる。さらに、以下の実施の形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換、変更および組み合わせを行うことができる。
[物体認識装置を備えた車両の概略構成]
図1は、実施の形態に係る機器制御システムを車両に搭載した例を示す図である。図1を参照しながら、本実施の形態の機器制御システム60が車両70に搭載される場合を例に説明する。
図1は、実施の形態に係る機器制御システムを車両に搭載した例を示す図である。図1を参照しながら、本実施の形態の機器制御システム60が車両70に搭載される場合を例に説明する。
図1のうち、図1(a)は、機器制御システム60を搭載した車両70の側面図であり、図1(b)は、車両70の正面図である。
図1に示すように、自動車である車両70は、機器制御システム60を搭載している。機器制御システム60は、車両70の居室空間である車室に設置された物体認識装置1と、車両制御装置6(制御装置)と、ステアリングホイール7と、ブレーキペダル8と、を備えている。
物体認識装置1は、車両70の進行方向を撮像する撮像機能を有し、例えば、車両70のフロントウィンドウ内側のバックミラー近傍に設置される。物体認識装置1は、構成および動作の詳細は後述するが、本体部2と、本体部2に固定された撮像部10aと、撮像部10bとを備えている。撮像部10a、10bは、車両70の進行方向の被写体を撮像できるように本体部2に固定されている。
車両制御装置6は、物体認識装置1から受信した認識情報に基づいて、各種車両制御を実行するECU(Electronic Control Unit)である。車両制御装置6は、車両制御の例として、物体認識装置1から受信した認識情報に基づいて、ステアリングホイール7を含むステアリング系統(制御対象の一例)を制御して障害物を回避するステアリング制御、または、ブレーキペダル8(制御対象の一例)を制御して車両70を減速および停止させるブレーキ制御等を実行する。
このような物体認識装置1および車両制御装置6を含む機器制御システム60のように、ステアリング制御またはブレーキ制御等の車両制御が実行されることによって、車両70の運転の安全性を向上することができる。
なお、上述のように、物体認識装置1は、車両70の前方を撮像するものとしたが、これに限定されるものではない。すなわち、物体認識装置1は、車両70の後方または側方を撮像するように設置されるものとしてもよい。この場合、物体認識装置1は、車両70の後方の後続車および人、または側方の他の車両および人等の位置を検出することができる。そして、車両制御装置6は、車両70の車線変更時または車線合流時等における危険を検知して、上述の車両制御を実行することができる。また、車両制御装置6は、車両70の駐車時等におけるバック動作において、物体認識装置1によって出力された車両70の後方の障害物についての認識情報に基づいて、衝突の危険があると判断した場合に、上述の車両制御を実行することができる。
[物体認識装置の構成]
図2は、実施の形態に係る物体認識装置の外観の一例を示す図である。図2に示すように、物体認識装置1は、上述のように、本体部2と、本体部2に固定された撮像部10aと、撮像部10bとを備えている。撮像部10a、10bは、本体部2に対して平行等位に配置された一対の円筒形状のカメラで構成されている。また、説明の便宜上、図2に示す撮像部10aを右のカメラと称し、撮像部10bを左のカメラと称する場合がある。
図2は、実施の形態に係る物体認識装置の外観の一例を示す図である。図2に示すように、物体認識装置1は、上述のように、本体部2と、本体部2に固定された撮像部10aと、撮像部10bとを備えている。撮像部10a、10bは、本体部2に対して平行等位に配置された一対の円筒形状のカメラで構成されている。また、説明の便宜上、図2に示す撮像部10aを右のカメラと称し、撮像部10bを左のカメラと称する場合がある。
(物体認識装置のハードウェア構成)
図3は、実施の形態に係る物体認識装置のハードウェア構成の一例を示す図である。図3を参照しながら、物体認識装置1のハードウェア構成について説明する。
図3は、実施の形態に係る物体認識装置のハードウェア構成の一例を示す図である。図3を参照しながら、物体認識装置1のハードウェア構成について説明する。
図3に示すように、物体認識装置1は、本体部2内に視差値導出部3および認識処理部5を備えている。
視差値導出部3は、物体を撮像して得られた複数の画像から、物体に対する視差を示す視差値dpを導出し、各画素における視差値dpを示す視差画像を出力する装置である。認識処理部5は、視差値導出部3から出力された視差画像に基づいて、撮像画像に写り込んでいる人および車等の物体に対する物体認識処理等を行い、物体認識処理の結果を示す情報である認識情報を、車両制御装置6に出力する装置である。
図3に示すように、視差値導出部3は、撮像部10aと、撮像部10bと、信号変換部20aと、信号変換部20bと、画像処理部30と、を備えている。
撮像部10aは、前方の被写体を撮像してアナログの画像信号を生成する処理部である。撮像部10aは、撮像レンズ11aと、絞り12aと、画像センサ13aと、を備えている。
撮像レンズ11aは、入射する光を屈折させて物体の像を画像センサ13aに結像させるための光学素子である。絞り12aは、撮像レンズ11aを通過した光の一部を遮ることによって、画像センサ13aに入力する光の量を調整する部材である。画像センサ13aは、撮像レンズ11aに入射し、絞り12aを通過した光を電気的なアナログの画像信号に変換する半導体素子である。画像センサ13aは、例えば、CCD(Charge Coupled Devices)またはCMOS(Complementary Metal Oxide Semiconductor)等の固体撮像素子によって実現される。
撮像部10bは、前方の被写体を撮像してアナログの画像信号を生成する処理部である。撮像部10bは、撮像レンズ11bと、絞り12bと、画像センサ13bと、を備えている。なお、撮像レンズ11b、絞り12bおよび画像センサ13bの機能は、それぞれ上述した撮像レンズ11a、絞り12aおよび画像センサ13aの機能と同様である。また、撮像レンズ11aおよび撮像レンズ11bは、左右のカメラが同一の条件で撮像されるように、それぞれのレンズ面が互いに同一平面上にあるように設置されている。
信号変換部20aは、撮像部10aにより生成されたアナログの画像信号を、デジタル形式の画像データに変換する処理部である。信号変換部20aは、CDS(Correlated Double Sampling)21aと、AGC(Auto Gain Control)22aと、ADC(Analog Digital Converter)23aと、フレームメモリ24aと、を備えている。
CDS21aは、画像センサ13aにより生成されたアナログの画像信号に対して、相関二重サンプリング、横方向の微分フィルタ、または縦方向の平滑フィルタ等によりノイズを除去する。AGC22aは、CDS21aによってノイズが除去されたアナログの画像信号の強度を制御する利得制御を行う。ADC23aは、AGC22aによって利得制御されたアナログの画像信号をデジタル形式の画像データに変換する。フレームメモリ24aは、ADC23aによって変換された画像データを記憶する。
信号変換部20bは、撮像部10bにより生成されたアナログの画像信号を、デジタル形式の画像データに変換する処理部である。信号変換部20bは、CDS21bと、AGC22bと、ADC23bと、フレームメモリ24bと、を備えている。なお、CDS21b、AGC22b、ADC23bおよびフレームメモリ24bの機能は、それぞれ上述したCDS21a、AGC22a、ADC23aおよびフレームメモリ24aの機能と同様である。
画像処理部30は、信号変換部20aおよび信号変換部20bによって変換された画像データに対して画像処理をする装置である。画像処理部30は、FPGA(Field Programmable Gate Array)31と、CPU(Central Processing Unit)32と、ROM(Read Only Memory)33と、RAM(Random Access Memory)34と、I/F(Interface)35と、バスライン39と、を備えている。
FPGA31は、集積回路であり、ここでは、画像データに基づく画像における視差値dpを導出する処理を行う。CPU32は、視差値導出部3の各機能を制御する。ROM33は、CPU32が視差値導出部3の各機能を制御するために実行する画像処理用プログラムを記憶している。RAM34は、CPU32のワークエリアとして使用される。I/F35は、認識処理部5におけるI/F55と、通信線4を介して通信するためのインターフェースである。バスライン39は、図3に示すように、FPGA31、CPU32、ROM33、RAM34およびI/F35が互いに通信可能となるように接続するアドレスバスおよびデータバス等である。
なお、画像処理部30は、視差値dpを導出する集積回路としてFPGA31を備えるものとしているが、これに限定されるものではなく、ASIC(Application Specific Integrated Circuit)等の集積回路であってもよい。
図3に示すように、認識処理部5は、FPGA51と、CPU52と、ROM53と、RAM54と、I/F55と、CAN(Controller Area Network)I/F58と、バスライン59と、を備えている。
FPGA51は、集積回路であり、ここでは、画像処理部30から受信した視差画像に基づいて、物体に対する物体認識処理を行う。CPU52は、認識処理部5の各機能を制御する。ROM53は、CPU52が認識処理部5の物体認識処理を実行する物体認識処理用プログラムを記憶している。RAM54は、CPU52のワークエリアとして使用される。I/F55は、画像処理部30のI/F35と、通信線4を介してデータ通信するためのインターフェースである。CANI/F58は、外部コントローラ(例えば、図6に示す車両制御装置6)と通信するためのインターフェースであり、例えば、自動車のCAN等に接続されるバスライン59は、図3に示すように、FPGA51、CPU52、ROM53、RAM54、I/F55およびCANI/F58が互いに通信可能となるように接続するアドレスバスおよびデータバス等である。
このような構成により、画像処理部30のI/F35から通信線4を介して認識処理部5に視差画像が送信されると、認識処理部5におけるCPU52の命令によって、FPGA51が、視差画像に基づいて、撮像画像に写り込んでいる人および車等の物体の物体認識処理等を実行する。
なお、上述の各プログラムは、インストール可能な形式または実行可能な形式のファイルで、コンピュータで読み取り可能な記録媒体に記録して流通させてもよい。この記録媒体は、CD−ROM(Compact Disc Read Only Memory)またはSD(Secure Digital)メモリカード等である。
また、図3に示すように、視差値導出部3の画像処理部30と、認識処理部5とは別体の装置としているが、これに限定されるものではなく、例えば、画像処理部30と認識処理部5とを同一の装置として、視差画像の生成、および物体認識処理を行うものとしてもよい。
(物体認識装置の機能ブロックの構成および動作)
図4は、実施の形態に係る物体認識装置の機能ブロック構成の一例を示す図である。まず、図4を参照しながら、物体認識装置1の要部の機能ブロックの構成および動作について説明する。
図4は、実施の形態に係る物体認識装置の機能ブロック構成の一例を示す図である。まず、図4を参照しながら、物体認識装置1の要部の機能ブロックの構成および動作について説明する。
図3でも上述したが、図4に示すように、物体認識装置1は、視差値導出部3と、認識処理部5と、を備えている。このうち、視差値導出部3は、画像取得部100a(第1撮像手段)と、画像取得部100b(第2撮像手段)と、変換部200a、200bと、視差値演算処理部300(生成手段)と、を有する。
画像取得部100aは、右のカメラにより前方の被写体を撮像して、アナログの画像信号を生成し、画像信号に基づく画像である輝度画像を得る機能部である。画像取得部100aは、図3に示す撮像部10aによって実現される。
画像取得部100bは、左のカメラにより前方の被写体を撮像して、アナログの画像信号を生成し、画像信号に基づく画像である輝度画像を得る機能部である。画像取得部100bは、図3に示す撮像部10bによって実現される。
変換部200aは、画像取得部100aにより得られた輝度画像の画像データに対して、ノイズを除去し、デジタル形式の画像データに変換して出力する機能部である。変換部200aは、図3に示す信号変換部20aによって実現される。
変換部200bは、画像取得部100bにより得られた輝度画像の画像データに対して、ノイズを除去し、デジタル形式の画像データに変換して出力する機能部である。変換部200bは、図3に示す信号変換部20bによって実現される。
ここで、変換部200a、200bが出力する2つの輝度画像の画像データ(以下、単に、輝度画像と称する)のうち、右のカメラ(撮像部10a)である画像取得部100aにより撮像された輝度画像を基準画像Iaの画像データ(以下、単に、基準画像Iaと称する)(第1撮像画像)とし、左のカメラ(撮像部10b)である画像取得部100bにより撮像された輝度画像を比較画像Ibの画像データ(以下、単に、比較画像Ibと称する)(第2撮像画像)とする。すなわち、変換部200a、200bは、画像取得部100a、100bそれぞれから出力された2つの輝度画像に基づいて、それぞれ基準画像Iaおよび比較画像Ibを出力する。
視差値演算処理部300は、変換部200a、200bそれぞれから受信した基準画像Iaおよび比較画像Ibに基づいて、基準画像Iaの各画素についての視差値を導出し、基準画像Iaの各画素に視差値を対応させた視差画像(距離画像の一例)を生成する機能部である。視差値演算処理部300は、生成した視差画像を、認識処理部5に出力する。なお、視差値演算処理部300が生成する画像は視差画像に限定されるものではなく、視差値と同様に物体までの距離を示す情報を画素値とする画像(距離画像)であればよい。
認識処理部5は、視差値導出部3から受信した基準画像Iaおよび視差画像に基づいて、物体を認識(検出)し、かつ、認識した物体を追跡(トラッキング)する物体認識処理を行う機能部である。
<視差値演算処理部の機能ブロックの構成および動作>
図5は、実施の形態に係る物体認識装置の視差値演算処理部の機能ブロック構成の一例を示す図である。図6は、撮像部から物体までの距離を導き出す原理を説明する図である。図7は、基準画像における基準画素に対応する比較画像における対応画素を求める場合の説明図である。図8は、ブロックマッチング処理の結果のグラフの一例を示す図である。
図5は、実施の形態に係る物体認識装置の視差値演算処理部の機能ブロック構成の一例を示す図である。図6は、撮像部から物体までの距離を導き出す原理を説明する図である。図7は、基準画像における基準画素に対応する比較画像における対応画素を求める場合の説明図である。図8は、ブロックマッチング処理の結果のグラフの一例を示す図である。
まず、図6〜8を用いて、ブロックマッチング処理による測距方法の概略について説明する。
<<測距の原理>>
図6を参照しながら、ステレオマッチング処理により、ステレオカメラから物体に対する視差を導出し、この視差を示す視差値によって、ステレオカメラから物体までの距離を測定する原理について説明する。
図6を参照しながら、ステレオマッチング処理により、ステレオカメラから物体に対する視差を導出し、この視差を示す視差値によって、ステレオカメラから物体までの距離を測定する原理について説明する。
図6に示す撮像システムは、平行等位に配置された撮像部10aと撮像部10bとを有するものとする。撮像部10a、10bは、それぞれ、入射する光を屈折させて物体の像を固体撮像素子である画像センサに結像させる撮像レンズ11a、11bを有する。撮像部10aおよび撮像部10bによって撮像された各画像を、それぞれ基準画像Iaおよび比較画像Ibとする。図6において、3次元空間内の物体E上の点Sは、基準画像Iaおよび比較画像Ibそれぞれにおいて、撮像レンズ11aと撮像レンズ11bとを結ぶ直線と平行な直線上の位置に写像される。ここで、各画像に写像された点Sを、基準画像Iaにおいて点Sa(x,y)とし、比較画像Ibにおいて点Sb(X,y)とする。このとき、視差値dpは、基準画像Ia上の座標における点Sa(x,y)と比較画像Ib上の座標における点Sb(X,y)とを用いて、以下の(式1)のように表される。
dp=X−x (式1)
また、図6において、基準画像Iaにおける点Sa(x,y)と撮像レンズ11aから撮像面上におろした垂線の交点との距離をΔaとし、比較画像Ibにおける点Sb(X,y)と撮像レンズ11bから撮像面上におろした垂線の交点との距離をΔbとすると、視差値dpは、dp=Δa+Δbと表すこともできる。
次に、視差値dpを用いることにより、撮像部10a、10bと物体Eとの間の距離Zを導出する。ここで、距離Zは、撮像レンズ11aの焦点位置と撮像レンズ11bの焦点位置とを結ぶ直線から物体E上の点Sまでの距離である。図6に示すように、撮像レンズ11aおよび撮像レンズ11bの焦点距離f、撮像レンズ11aと撮像レンズ11bとの間の長さである基線長B、および視差値dpを用いて、下記の(式2)により、距離Zを算出することができる。
Z=(B×f)/dp (式2)
この(式2)により、視差値dpが大きいほど距離Zは小さく、視差値dpが小さいほど距離Zは大きくなることがわかる。
<<ブロックマッチング処理>>
次に、図7および8を用いて、ブロックマッチング処理による測距方法について説明する。
次に、図7および8を用いて、ブロックマッチング処理による測距方法について説明する。
図7および8を参照しながら、コスト値C(p,d)の算出方法について説明する。なお、以降、C(p,d)は、C(x,y,d)を表すものとして説明する。
図7のうち、図7(a)は、基準画像Iaにおける基準画素pおよび基準領域pbを示す概念図を示し、図7(b)は、図7(a)に示す基準画素pに対応する比較画像Ibにおける対応画素の候補を順次シフトしながら(ずらしながら)、コスト値Cを算出する際の概念図である。ここで、対応画素とは、基準画像Iaにおける基準画素pに最も類似する比較画像Ibにおける画素を示す。また、コスト値Cとは、基準画像Iaにおける基準画素pに対する、比較画像Ibにおける各画素の類似度または非類似度を表す評価値(一致度)である。以下に示すコスト値Cは、値が小さいほど、比較画像Ibにおける画素が基準画素pと類似していることを示す非類似度を表す評価値であるものとして説明する。
図7(a)に示すように、基準画像Iaにおける基準画素p(x,y)、および、基準画素p(x,y)に対する比較画像Ibにおけるエピポーラ線EL上の対応画素の候補である候補画素q(x+d,y)の各輝度値(画素値)に基づいて、基準画素p(x,y)に対する対応画素の候補である候補画素q(x+d,y)のコスト値C(p,d)が算出される。dは、基準画素pと候補画素qとのシフト量(ずれ量)であり、シフト量dは、画素単位でシフトされる。すなわち、候補画素q(x+d,y)を予め指定された範囲(例えば、0<d<25)において順次一画素分シフトしながら、候補画素q(x+d,y)と基準画素p(x,y)との輝度値の非類似度であるコスト値C(p,d)が算出される。また、基準画素pの対応画素を求めるためステレオマッチング処理として、本実施の形態ではブロックマッチング処理を行う。ブロックマッチング処理では、基準画像Iaの基準画素pを中心とする所定領域である基準領域pbと、比較画像Ibの候補画素qを中心とする候補領域qb(大きさは基準領域pbと同一)との非類似度を求める。基準領域pbと候補領域qbとの非類似度を示すコスト値Cとしては、SAD(Sum of Absolute Difference)、SSD(Sum of Squared Difference)、または、SSDの値から各ブロックの平均値を減算したZSSD(Zero−mean−Sum of Squared Difference)等が用いられる。これらの評価値は、相関が高い(類似の度合いが高い)ほど、値が小さくなるので非類似度を示す。
なお、上述のように、撮像部10a、10bは、それぞれ平行等位に配置されるため、基準画像Iaおよび比較画像Ibも、それぞれ平行等位の関係にある。したがって、基準画像Iaにおける基準画素pに対応する比較画像Ibにおける対応画素は、図7に紙面視横方向の線として示されるエピポーラ線EL上に存在することになり、比較画像Ibにおける対応画素を求めるためには、比較画像Ibのエピポーラ線EL上の画素を探索すればよい。
このようなブロックマッチング処理で算出されたコスト値C(p,d)は、シフト量dとの関係で、例えば、図8に示すグラフにより表される。図8の例では、コスト値Cは、シフト量d=7の場合が最小値となるため、視差値dp=7として導出される。
<<視差値演算処理部の機能ブロックの具体的な構成および動作>>
図5を参照しながら、視差値演算処理部300の機能ブロックの具体的な構成および動作について説明する。
図5を参照しながら、視差値演算処理部300の機能ブロックの具体的な構成および動作について説明する。
図5に示すように、視差値演算処理部300は、コスト算出部301と、決定部302と、第1生成部303と、を有する。
コスト算出部301は、基準画像Iaにおける基準画素p(x,y)の輝度値、および、基準画素p(x,y)に基づく比較画像Ibにおけるエピポーラ線EL上で、基準画素p(x,y)の位置に相当する画素からシフト量dでシフトすることにより特定される、対応画素の候補である候補画素q(x+d,y)の各輝度値に基づいて、各候補画素q(x+d,y)のコスト値C(p,d)を算出する機能部である。具体的には、コスト算出部301は、ブロックマッチング処理により、基準画像Iaの基準画素pを中心とする所定領域である基準領域pbと、比較画像Ibの候補画素qを中心とする候補領域qb(大きさは基準領域pbと同一)との非類似度をコスト値Cとして算出する。
決定部302は、コスト算出部301により算出されたコスト値Cの最小値に対応するシフト量dを、コスト値Cの算出の対象となった基準画像Iaの画素についての視差値dpとして決定する機能部である。
第1生成部303は、決定部302により決定された視差値dpに基づいて、基準画像Iaの各画素の画素値を、その画素に対応する視差値dpで置き換えた画像である視差画像を生成する機能部である。
図5に示すコスト算出部301、決定部302および第1生成部303は、それぞれ図3に示すFPGA31によって実現される。なお、コスト算出部301、決定部302および第1生成部303の一部または全部は、ハードウェア回路であるFPGA31ではなく、ROM33に記憶されているプログラムがCPU32によって実行されることによって実現されるものとしてもよい。
なお、図5に示す視差値演算処理部300のコスト算出部301、決定部302および第1生成部303は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図5に示す視差値演算処理部300で独立した機能部として図示した複数の機能部を、1つの機能部として構成してもよい。一方、図5に示す視差値演算処理部300で1つの機能部が有する機能を複数に分割し、複数の機能部として構成するものとしてもよい。
<認識処理部の機能ブロックの構成および動作>
図9は、実施の形態に係る物体認識装置の認識処理部の機能ブロック構成の一例を示す図である。図10は、視差画像から生成されるVマップの例を示す図である。図11は、視差画像から生成されるUマップの例を示す図である。図12は、Uマップから生成されるリアルUマップの例を示す図である。図13は、検出枠を作成する処理を説明する図である。図9〜13を参照しながら、認識処理部5の機能ブロックの構成および動作について説明する。
図9は、実施の形態に係る物体認識装置の認識処理部の機能ブロック構成の一例を示す図である。図10は、視差画像から生成されるVマップの例を示す図である。図11は、視差画像から生成されるUマップの例を示す図である。図12は、Uマップから生成されるリアルUマップの例を示す図である。図13は、検出枠を作成する処理を説明する図である。図9〜13を参照しながら、認識処理部5の機能ブロックの構成および動作について説明する。
図9に示すように、認識処理部5は、第2生成部500と、クラスタリング処理部510(検出手段)と、トラッキング処理部520と、を有する。
第2生成部500は、視差値演算処理部300から視差画像を入力し、かつ、視差値導出部3から基準画像Iaを入力し、V−Disparityマップ、U−Disparityマップ、およびReal U−Disparityマップ等を生成する機能部である。具体的には、第2生成部500は、視差値演算処理部300から入力した視差画像から路面を検出するために、図10(b)に示すV−DisparityマップであるVマップVMを生成する。ここで、V−Disparityマップとは、縦軸を基準画像Iaのy軸とし、横軸を視差画像の視差値dp(または距離)とした、視差値dpの頻度分布を示す二次元ヒストグラムである。図10(a)に示す基準画像Iaには、例えば、路面700と、電柱701と、車702とが写り込んでいる。この基準画像Iaの路面700は、VマップVMにおいては路面部700aに対応し、電柱701は、電柱部701aに対応し、車702は、車部702aに対応する。
また、第2生成部500は、生成したVマップVMから、路面と推定される位置を直線近似する。路面が平坦な場合は、1本の直線で近似可能であるが、勾配が変わる路面の場合は、VマップVMの区間を分割して精度よく直線近似する必要がある。直線近似としては、公知技術であるハフ変換または最小二乗法等が利用できる。VマップVMにおいて、検出された路面部700aより上方に位置する塊である電柱部701aおよび車部702aは、それぞれ路面上の物体である電柱701および車702に相当する。後述する第2生成部500によりU−Disparityマップが生成される際に、ノイズ除去のため路面より上方の情報のみが用いられる。
また、第2生成部500は、VマップVMで検出された路面より上方に位置する情報のみを利用、すなわち、図11(a)に示す基準画像Iaでは左ガードレール711、右ガードレール712、車713および車714に対応する視差画像上の情報を利用して、物体を認識するために、図11(b)に示すU−DisparityマップであるUマップUMを生成する。ここで、UマップUMは、横軸を基準画像Iaのx軸とし、縦軸を視差画像の視差値dp(または距離)とした、視差値dpの頻度分布を示す二次元ヒストグラムである。図11(a)に示す基準画像Iaの左ガードレール711は、UマップUMにおいては左ガードレール部711aに対応し、右ガードレール712は、右ガードレール部712aに対応し、車713は、車部713aに対応し、車714は、車部714aに対応する。
また、第2生成部500は、VマップVMで検出された路面より上方に位置する情報のみを利用、すなわち、図11(a)に示す基準画像Iaでは左ガードレール711、右ガードレール712、車713および車714に対応する視差画像上の情報を利用して、図11(c)に示すU−Disparityマップの一例であるUマップUM_Hを生成する。ここで、U−Disparityマップの一例であるUマップUM_Hは、横軸を基準画像Iaのx軸とし、縦軸を視差画像の視差値dpとし、画素値を物体の高さとした画像である。図11(a)に示す基準画像Iaの左ガードレール711は、UマップUM_Hにおいては左ガードレール部711bに対応し、右ガードレール712は、右ガードレール部712bに対応し、車713は、車部713bに対応し、車714は、車部714bに対応する。
また、第2生成部500は、生成した図12(a)に示すUマップUMから、横軸を実際の距離に変換した図12(b)に示すReal U−DisparityマップであるリアルUマップRMを生成する。ここで、リアルUマップRMは、横軸を、撮像部10b(右のカメラ)から撮像部10a(左のカメラ)へ向かう方向の実距離とし、縦軸を、視差画像の視差値dp(またはその視差値dpから変換した奥行き方向の距離)とした二次元ヒストグラムである。図12(a)に示すUマップUMの左ガードレール部711aは、リアルUマップRMにおいては左ガードレール部711cに対応し、右ガードレール部712aは、右ガードレール部712cに対応し、車部713aは、車部713cに対応し、車部714aは、車部714cに対応する。具体的には、第2生成部500は、UマップUMでは、遠方(視差値dpが小さい)では物体が小さいため、視差情報が少なく、距離の分解能も小さいので間引きせず、近距離の場合は物体が大きく写るため、視差情報が多く、距離の分解能も大きいので画素を大きく間引くことによって、リアルUマップRMを生成する。後述するように、クラスタリング処理部510により、リアルUマップRMから画素値の塊(物体)を抽出して物体を検出することができる。なお、第2生成部500は、UマップUMからリアルUマップRMを生成することに限定されるものではなく、視差画像から、直接、リアルUマップRMを生成することも可能である。
なお、視差値導出部3から第2生成部500に入力される画像は基準画像Iaに限定されるものではなく、比較画像Ibを対象とするものとしてもよい。
クラスタリング処理部510は、第2生成部500から入力された各マップに基づいて、視差画像に写っている物体を検出する機能部である。クラスタリング処理部510は、生成したUマップUMまたはリアルUマップRMから、物体の視差画像および基準画像Iaにおけるx軸方向の位置および幅(xmin,xmax)を特定できる。また、クラスタリング処理部510は、生成したUマップUMまたはリアルUマップRMでの物体の高さの情報(dmin,dmax)から物体の実際の奥行きを特定できる。また、クラスタリング処理部510は、生成したVマップVMから、物体の視差画像および基準画像Iaにおけるy軸方向の位置および高さ(ymin=「最大視差値の路面からの最大高さに相当するy座標」,ymax=「最大視差値から得られる路面の高さを示すy座標」)を特定できる。また、クラスタリング処理部510は、視差画像において特定した物体のx軸方向の幅(xmin,xmax)、y軸方向の高さ(ymin,ymax)およびそれぞれに対応する視差値dpから、物体の実際のx軸方向およびy軸方向のサイズが特定できる。以上のように、クラスタリング処理部510は、VマップVM、UマップUMおよびリアルUマップRMを利用して、基準画像Iaでの物体の位置、ならびに実際の幅、高さおよび奥行きを特定することができる。また、クラスタリング処理部510は、基準画像Iaでの物体の位置が特定されるので、視差画像における位置も定まり、物体までの距離も特定できる。
そして、クラスタリング処理部510は、最終的に、図13(a)に示すように、リアルUマップRM上で特定(検出)した物体の検出領域721〜724にそれぞれ対応するように、図13(b)に示す基準画像Iaまたは視差画像Ip上の検出枠721a〜724aを作成する。
また、クラスタリング処理部510は、物体について特定した実際のサイズ(幅、高さ、奥行き)から、下記の(表1)を用いて、物体が何であるかを特定することができる。例えば、物体の幅が1300[mm]、高さが1800[mm]、奥行きが2000[mm]である場合、物体は「普通車」であると特定できる。なお、(表1)のような幅、高さおよび奥行きと、物体の種類(物体タイプ)とを関連付ける情報をテーブルとして、RAM54等に記憶させておくものとすればよい。
クラスタリング処理部510は、検出(認識)された物体に関する情報を認識領域情報として生成する。ここで、認識領域情報とは、クラスタリング処理部510により検出された物体に関する情報を示し、例えば、検出した物体の基準画像Ia、V−Disparityマップ、U−Disparityマップ、およびReal U−Disparityマップ等における位置および大きさ、検出した物体の種類ならびに、後述する棄却フラグ等の情報を含む。
図9に示す認識処理部5の第2生成部500およびクラスタリング処理部510は、それぞれ図3に示すFPGA51によって実現される。なお、第2生成部500およびクラスタリング処理部510の一部または全部は、ハードウェア回路であるFPGA51ではなく、ROM53に記憶されているプログラムがCPU52によって実行されることによって実現されるものとしてもよい。
トラッキング処理部520は、クラスタリング処理部510により検出(認識)された物体に関する情報である認識領域情報に基づいて、その物体を棄却したり、追跡処理をしたりするトラッキング処理を実行する機能部である。トラッキング処理部520の具体的な構成は、後述する図14で説明する。ここで、棄却とは、その物体を後段の処理(例えば、車両制御装置6における制御処理等)の対象外とすることを示す。
なお、本発明に係る「画像処理装置」は、トラッキング処理部520であってもよく、トラッキング処理部520を含む認識処理部5であってもよい。
<<トラッキング処理部の機能ブロックの構成および動作>>
図14は、実施の形態に係る物体認識装置の認識処理部のトラッキング処理部の機能ブロック構成の一例を示す図である。図14を参照しながら、認識処理部5のトラッキング処理部520の機能ブロックの構成および動作について説明する。
図14は、実施の形態に係る物体認識装置の認識処理部のトラッキング処理部の機能ブロック構成の一例を示す図である。図14を参照しながら、認識処理部5のトラッキング処理部520の機能ブロックの構成および動作について説明する。
図14に示すように、トラッキング処理部520は、移動予測部600(予測手段)と、マッチング部610と、チェック部620と、特徴更新部630(更新手段)と、状態遷移部640と、を有する。
移動予測部600は、クラスタリング処理部510により新規検出された物体のこれまでの移動および動作状態の履歴、ならびに車両情報を用いて、これまで追従(トラッキング)してきた物体ごとに、現在の輝度画像(以下、単に「フレーム」という場合がある)(または、それに対応する視差画像)上で物体が存在する確率が高い予測領域を予測する機能部である。移動予測部600は、前回のフレーム(以下、単に「前フレーム」という場合がある)までの移動情報(例えば、重心の相対位置履歴および相対速度履歴等)、および車両情報を用いて、xz平面(x:フレーム横位置、z:距離)で物体の動きを予測する。なお、移動予測部600は、予測以上の動きを持つ物体に対応するために、前回予測した予測領域よりも拡大する処理を行ってもよい。また、上述の移動情報は、各検出された物体ごとの認識領域情報に含まれるものとしてもよい。以下の説明では、認識領域情報は上述の移動情報を含むものとして説明する。
マッチング部610は、移動予測部600により予測された予測領域内における前フレームで求めた特徴量(テンプレート)との類似度に基づくテンプレートマッチングを行い、現在のフレーム(以下、単に「現在フレーム」という)における物体(特に、車両および歩行者)の位置を求めるマッチング処理を行う機能部である。ここで、歩行者とは、撮像手段等により撮像された撮像画像に含まれる人物を示すものとし、歩いている者、走っている者、および止まっている者等すべての者を示すものとする。マッチング部610は、判定部611と、形状マッチング部612(第1マッチング手段)と、画像マッチング部613(第2マッチング手段)と、境界決定部614(決定手段)と、補正処理部615と、を有する。
判定部611は、物体の認識領域情報に基づいて、その物体が車両であるか歩行者であるかを判定し、物体が車両である場合は、後段の処理で、車両を追跡するための車両用マッチング処理を実行させ、歩行者である場合は、後段の処理で、歩行者を追跡するための歩行者用マッチング処理を実行させる分岐処理を行う機能部である。
形状マッチング部612は、歩行者用マッチング処理において、視差画像において歩行者の頭部を主とする輪郭を検出し、前フレームに対応する視差画像で検出された歩行者の輪郭をテンプレート(輪郭テンプレート)としてテンプレートマッチングを行う形状マッチング処理を行う機能部である。
画像マッチング部613は、歩行者用マッチング処理において、現在フレームである輝度画像において、前フレームに対応する視差画像で検出された輪郭テンプレートに基づいた画像テンプレートによりテンプレートマッチングを行う画像マッチング処理を行う機能部である。
境界決定部614は、歩行者用マッチング処理において、現在フレームで複数の歩行者の輪郭が検出された場合、画像マッチング部613によって検出(位置が決定)された歩行者以外の歩行者との境界を決定する境界決定処理を行う機能部である。
補正処理部615は、画像マッチング部613により検出された歩行者の検出領域の枠(検出枠)について枠補正処理を行う機能部である。すなわち、補正処理部615により歩行者の検出枠について枠補正処理が行われた後の検出枠の画像が、現在フレーム(または現在フレームに対応する視差画像)でのその歩行者の検出領域となる。
チェック部620は、マッチング部610により検出された物体の検出領域の大きさに基づいて、トラッキングの目的とする物体(例えば、歩行者または車両)の大きさに対応するか否かを判断する機能である。
特徴更新部630は、現在フレームで検出された物体の検出領域の画像から、次のフレームにおいて、形状マッチング部612および画像マッチング部613のテンプレートマッチングで用いる特徴量(輪郭テンプレートおよび画像テンプレート)を更新する機能部である。
状態遷移部640は、補正処理部615により最終的に定まった物体の認識領域情報に基づいて、物体の状態を遷移させる機能部である。例えば、状態遷移部640は、チェック部620によりトラッキングの目的とする物体と判断されなかった物体、および、形状マッチング部612および画像マッチング部613によるマッチングにより物体を検出(追跡)できなかった物体を棄却する旨を示す棄却フラグを、その物体の認識領域情報に含めることによって物体の状態を遷移させる。状態遷移部640は、遷移させた物体の状態を反映させた認識領域情報を、認識情報として車両制御装置6(図4参照)に出力する。
図14に示す移動予測部600、マッチング部610の判定部611、形状マッチング部612、画像マッチング部613、境界決定部614および補正処理部615、チェック部620、特徴更新部630、ならびに状態遷移部640は、それぞれ図3に示すFPGA51によって実現される。なお、これらの機能部の一部または全部は、ハードウェア回路であるFPGA51ではなく、ROM53に記憶されているプログラムがCPU52によって実行されることによって実現されるものとしてもよい。
なお、図14に示すトラッキング処理部520の各機能部は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図14に示すトラッキング処理部520で独立した機能部として図示した複数の機能部を、1つの機能部として構成してもよい。一方、図14に示すトラッキング処理部520で1つの機能部が有する機能を複数に分割し、複数の機能部として構成するものとしてもよい。
[物体認識装置の動作]
次に、図15〜27を参照しながら、物体認識装置1の具体的な動作について説明する。
次に、図15〜27を参照しながら、物体認識装置1の具体的な動作について説明する。
(視差値導出部のブロックマッチング処理)
図15は、実施の形態に係る視差値導出部のブロックマッチング処理の動作の一例を示すフローチャートである。図15を参照しながら、物体認識装置1の視差値導出部3のブロックマッチング処理の動作の流れについて説明する。
図15は、実施の形態に係る視差値導出部のブロックマッチング処理の動作の一例を示すフローチャートである。図15を参照しながら、物体認識装置1の視差値導出部3のブロックマッチング処理の動作の流れについて説明する。
<ステップS1−1>
視差値導出部3の画像取得部100bは、左のカメラ(撮像部10b)により前方の被写体を撮像して、それぞれアナログの画像信号を生成し、その画像信号に基づく画像である輝度画像を得る。これによって、後段の画像処理の対象となる画像信号が得られることになる。そして、ステップS2−1へ移行する。
視差値導出部3の画像取得部100bは、左のカメラ(撮像部10b)により前方の被写体を撮像して、それぞれアナログの画像信号を生成し、その画像信号に基づく画像である輝度画像を得る。これによって、後段の画像処理の対象となる画像信号が得られることになる。そして、ステップS2−1へ移行する。
<ステップS1−2>
視差値導出部3の画像取得部100aは、右のカメラ(撮像部10a)により前方の被写体を撮像して、それぞれアナログの画像信号を生成し、その画像信号に基づく画像である輝度画像を得る。これによって、後段の画像処理の対象となる画像信号が得られることになる。そして、ステップS2−2へ移行する。
視差値導出部3の画像取得部100aは、右のカメラ(撮像部10a)により前方の被写体を撮像して、それぞれアナログの画像信号を生成し、その画像信号に基づく画像である輝度画像を得る。これによって、後段の画像処理の対象となる画像信号が得られることになる。そして、ステップS2−2へ移行する。
<ステップS2−1>
視差値導出部3の変換部200bは、撮像部10bにより撮像されて得られたアナログの画像信号に対して、ノイズを除去し、デジタル形式の画像データに変換する。このように、デジタル形式の画像データに変換することによって、その画像データに基づく画像に対して画素ごとの画像処理が可能となる。そして、ステップS3−1へ移行する。
視差値導出部3の変換部200bは、撮像部10bにより撮像されて得られたアナログの画像信号に対して、ノイズを除去し、デジタル形式の画像データに変換する。このように、デジタル形式の画像データに変換することによって、その画像データに基づく画像に対して画素ごとの画像処理が可能となる。そして、ステップS3−1へ移行する。
<ステップS2−2>
視差値導出部3の変換部200aは、撮像部10aにより撮像されて得られたアナログの画像信号に対して、ノイズを除去し、デジタル形式の画像データに変換する。このように、デジタル形式の画像データに変換することによって、その画像データに基づく画像に対して画素ごとの画像処理が可能となる。そして、ステップS3−2へ移行する。
視差値導出部3の変換部200aは、撮像部10aにより撮像されて得られたアナログの画像信号に対して、ノイズを除去し、デジタル形式の画像データに変換する。このように、デジタル形式の画像データに変換することによって、その画像データに基づく画像に対して画素ごとの画像処理が可能となる。そして、ステップS3−2へ移行する。
<ステップS3−1>
変換部200bは、ステップS2−1において変換したデジタル形式の画像データに基づく画像をブロックマッチング処理における比較画像Ibとして出力する。これによって、ブロックマッチング処理において視差値を求めるための比較対象となる画像を得る。そして、ステップS4へ移行する。
変換部200bは、ステップS2−1において変換したデジタル形式の画像データに基づく画像をブロックマッチング処理における比較画像Ibとして出力する。これによって、ブロックマッチング処理において視差値を求めるための比較対象となる画像を得る。そして、ステップS4へ移行する。
<ステップS3−2>
変換部200aは、ステップS2−2において変換したデジタル形式の画像データに基づく画像をブロックマッチング処理における基準画像Iaとして出力する。これによって、ブロックマッチング処理において視差値を求めるための基準となる画像を得る。そして、ステップS4へ移行する。
変換部200aは、ステップS2−2において変換したデジタル形式の画像データに基づく画像をブロックマッチング処理における基準画像Iaとして出力する。これによって、ブロックマッチング処理において視差値を求めるための基準となる画像を得る。そして、ステップS4へ移行する。
<ステップS4>
視差値導出部3の視差値演算処理部300のコスト算出部301は、基準画像Iaにおける基準画素p(x,y)の輝度値、および、基準画素p(x,y)に基づく比較画像Ibにおけるエピポーラ線EL上で、基準画素p(x,y)の位置に相当する画素からシフト量dでシフトすることにより特定される、対応画素の候補画素q(x+d,y)の各輝度値に基づいて、各候補画素q(x+d,y)のコスト値C(p,d)を算出する。具体的には、コスト算出部301は、ブロックマッチング処理により、基準画像Iaの基準画素pを中心とする所定領域である基準領域pbと、比較画像Ibの候補画素qを中心とする候補領域qb(大きさは基準領域pbと同一)との非類似度をコスト値Cとして算出する。そして、ステップS5へ進む。
視差値導出部3の視差値演算処理部300のコスト算出部301は、基準画像Iaにおける基準画素p(x,y)の輝度値、および、基準画素p(x,y)に基づく比較画像Ibにおけるエピポーラ線EL上で、基準画素p(x,y)の位置に相当する画素からシフト量dでシフトすることにより特定される、対応画素の候補画素q(x+d,y)の各輝度値に基づいて、各候補画素q(x+d,y)のコスト値C(p,d)を算出する。具体的には、コスト算出部301は、ブロックマッチング処理により、基準画像Iaの基準画素pを中心とする所定領域である基準領域pbと、比較画像Ibの候補画素qを中心とする候補領域qb(大きさは基準領域pbと同一)との非類似度をコスト値Cとして算出する。そして、ステップS5へ進む。
<ステップS5>
視差値導出部3の視差値演算処理部300の決定部302は、コスト算出部301により算出されたコスト値Cの最小値に対応するシフト量dを、コスト値Cの算出の対象となった基準画像Iaの画素についての視差値dpとして決定する。そして、視差値導出部3の視差値演算処理部300の第1生成部303は、決定部302により決定された視差値dpに基づいて、基準画像Iaの各画素の輝度値を、その画素に対応する視差値dpで表した画像である視差画像を生成する。第1生成部303は、生成した視差画像を、認識処理部5に出力する。
視差値導出部3の視差値演算処理部300の決定部302は、コスト算出部301により算出されたコスト値Cの最小値に対応するシフト量dを、コスト値Cの算出の対象となった基準画像Iaの画素についての視差値dpとして決定する。そして、視差値導出部3の視差値演算処理部300の第1生成部303は、決定部302により決定された視差値dpに基づいて、基準画像Iaの各画素の輝度値を、その画素に対応する視差値dpで表した画像である視差画像を生成する。第1生成部303は、生成した視差画像を、認識処理部5に出力する。
なお、上述のステレオマッチング処理は、ブロックマッチング処理を例として説明したが、これに限定されるものではなく、SGM(Semi−Global Matching)法を用いた処理であってもよい。
(認識処理部のトラッキング処理部のトラッキング処理)
図16は、実施の形態に係る認識処理部のトラッキング処理部のトラッキング処理の動作の一例を示すフローチャートである。図17は、移動予測の動作を説明する図である。図16および17を参照しながら、認識処理部5のトラッキング処理部520のトラッキング処理の動作の流れについて説明する。
図16は、実施の形態に係る認識処理部のトラッキング処理部のトラッキング処理の動作の一例を示すフローチャートである。図17は、移動予測の動作を説明する図である。図16および17を参照しながら、認識処理部5のトラッキング処理部520のトラッキング処理の動作の流れについて説明する。
<ステップS11>
トラッキング処理部520の移動予測部600は、前段のクラスタリング処理部510により新規検出された物体のこれまでの移動および動作状態の履歴、ならびに車両情報を含む認識領域情報を用いて、これまで追従(トラッキング)してきた物体ごとに、図17に示すように、現在フレーム(基準画像Ia)(またはそれに対応する視差画像)上で物体が存在する確率が高い予測領域800を予測する。そして、ステップS12へ移行する。
トラッキング処理部520の移動予測部600は、前段のクラスタリング処理部510により新規検出された物体のこれまでの移動および動作状態の履歴、ならびに車両情報を含む認識領域情報を用いて、これまで追従(トラッキング)してきた物体ごとに、図17に示すように、現在フレーム(基準画像Ia)(またはそれに対応する視差画像)上で物体が存在する確率が高い予測領域800を予測する。そして、ステップS12へ移行する。
<ステップS12>
トラッキング処理部520のマッチング部610は、予測領域800内における前フレームで求めた特徴量(テンプレート)との類似度に基づくテンプレートマッチングを行い、現在フレームにおける物体(特に、車両および歩行者)の位置を求める。マッチング部610によるマッチング処理の詳細は、図18および19で後述する。そして、ステップS13へ移行する。
トラッキング処理部520のマッチング部610は、予測領域800内における前フレームで求めた特徴量(テンプレート)との類似度に基づくテンプレートマッチングを行い、現在フレームにおける物体(特に、車両および歩行者)の位置を求める。マッチング部610によるマッチング処理の詳細は、図18および19で後述する。そして、ステップS13へ移行する。
<ステップS13>
トラッキング処理部520のチェック部620は、マッチング部610により検出された物体の検出領域の大きさに基づいて、トラッキングの目的とする物体(例えば、歩行者または車両)の大きさに対応するか否かを判断する。そして、ステップS14へ移行する。
トラッキング処理部520のチェック部620は、マッチング部610により検出された物体の検出領域の大きさに基づいて、トラッキングの目的とする物体(例えば、歩行者または車両)の大きさに対応するか否かを判断する。そして、ステップS14へ移行する。
<ステップS14>
トラッキング処理部520の特徴更新部630は、現在フレームで検出された物体の検出領域の画像から、次のフレームにおいて、形状マッチング部612および画像マッチング部613のテンプレートマッチングで用いる特徴量(輪郭テンプレートおよび画像テンプレート)を更新する。そして、ステップS15へ移行する。
トラッキング処理部520の特徴更新部630は、現在フレームで検出された物体の検出領域の画像から、次のフレームにおいて、形状マッチング部612および画像マッチング部613のテンプレートマッチングで用いる特徴量(輪郭テンプレートおよび画像テンプレート)を更新する。そして、ステップS15へ移行する。
<ステップS15>
トラッキング処理部520の状態遷移部640は、補正処理部615により最終的に定まった物体の認識領域情報に基づいて、物体の状態を遷移させる。状態遷移部640は、遷移させた物体の状態を反映させた認識領域情報を、認識情報として車両制御装置6に出力する。
トラッキング処理部520の状態遷移部640は、補正処理部615により最終的に定まった物体の認識領域情報に基づいて、物体の状態を遷移させる。状態遷移部640は、遷移させた物体の状態を反映させた認識領域情報を、認識情報として車両制御装置6に出力する。
以上のステップS11〜S15の処理により、トラッキング処理部520によるトラッキング処理が行われる。なお、ステップS11〜S15の処理は、クラスタリング処理部510により新規検出された物体の検出領域ごとに実行される。
(トラッキング処理における分岐処理)
図18は、実施の形態のトラッキング処理部の判定部の分岐処理の動作の一例を示すフローチャートである。図18を参照しながら、トラッキング処理部520のマッチング部610の分岐処理の動作の流れについて説明する。
図18は、実施の形態のトラッキング処理部の判定部の分岐処理の動作の一例を示すフローチャートである。図18を参照しながら、トラッキング処理部520のマッチング部610の分岐処理の動作の流れについて説明する。
<ステップS121>
マッチング部610の判定部611は、物体の認識領域情報に基づいて、追跡対象となる物体(追跡物体)の種類を判定する。物体が車両である場合(ステップS121:車両)、ステップS122へ移行し、物体が歩行者である場合(ステップS121:歩行者)、ステップS123へ移行する。なお、トラッキング処理の対象となる物体が車両および歩行者に限られる場合、判定部611は、物体の種類の判定の結果、車両および歩行者でないと判定した場合、その物体の認識領域情報に、その物体を棄却する旨を示す棄却フラグを含めるものとしてもよい。
マッチング部610の判定部611は、物体の認識領域情報に基づいて、追跡対象となる物体(追跡物体)の種類を判定する。物体が車両である場合(ステップS121:車両)、ステップS122へ移行し、物体が歩行者である場合(ステップS121:歩行者)、ステップS123へ移行する。なお、トラッキング処理の対象となる物体が車両および歩行者に限られる場合、判定部611は、物体の種類の判定の結果、車両および歩行者でないと判定した場合、その物体の認識領域情報に、その物体を棄却する旨を示す棄却フラグを含めるものとしてもよい。
<ステップS122>
判定部611は、物体が車両であると判定した場合、車両を追跡するための車両用マッチング処理を実行させる。そして、分岐処理を終了する。
判定部611は、物体が車両であると判定した場合、車両を追跡するための車両用マッチング処理を実行させる。そして、分岐処理を終了する。
<ステップS123>
判定部611は、物体が歩行者であると判定した場合、歩行者を追跡するための歩行者用マッチング処理を実行させる。歩行者用マッチング処理の詳細は、図19で後述する。そして、分岐処理を終了する。
判定部611は、物体が歩行者であると判定した場合、歩行者を追跡するための歩行者用マッチング処理を実行させる。歩行者用マッチング処理の詳細は、図19で後述する。そして、分岐処理を終了する。
以上のステップS121〜S123の処理により、トラッキング処理部520のマッチング部610による分岐処理が行われる。
(トラッキング処理における歩行者用マッチング処理)
図19は、実施の形態のトラッキング処理部のマッチング部の歩行者用マッチング処理の動作の一例を示すフローチャートである。図20は、歩行者用マッチング処理における形状マッチング処理のうち輪郭を検出する動作を説明する図である。図21は、形状マッチング処理において検出された輪郭の一例を示す図である。図22は、前フレームに対応する視差画像で検出された輪郭テンプレートの一例を示す図である。図23は、実施の形態のマッチング部の歩行者用マッチング処理における形状マッチング処理の動作を説明する図である。図24は、歩行者用マッチング処理における画像マッチング処理で使用する画像テンプレートの一例を示す図である。図25は、実施の形態のマッチング部の歩行者用マッチング処理における画像マッチング処理の動作を説明する図である。図26は、実施の形態のマッチング部の歩行者用マッチング処理における境界決定処理の動作を説明する図である。図27は、実施の形態のマッチング部の歩行者用マッチング処理における枠補正処理の動作を説明する図である。図19〜27を参照しながら、トラッキング処理部520のマッチング部610の歩行者用マッチング処理の動作の流れについて説明する。
図19は、実施の形態のトラッキング処理部のマッチング部の歩行者用マッチング処理の動作の一例を示すフローチャートである。図20は、歩行者用マッチング処理における形状マッチング処理のうち輪郭を検出する動作を説明する図である。図21は、形状マッチング処理において検出された輪郭の一例を示す図である。図22は、前フレームに対応する視差画像で検出された輪郭テンプレートの一例を示す図である。図23は、実施の形態のマッチング部の歩行者用マッチング処理における形状マッチング処理の動作を説明する図である。図24は、歩行者用マッチング処理における画像マッチング処理で使用する画像テンプレートの一例を示す図である。図25は、実施の形態のマッチング部の歩行者用マッチング処理における画像マッチング処理の動作を説明する図である。図26は、実施の形態のマッチング部の歩行者用マッチング処理における境界決定処理の動作を説明する図である。図27は、実施の形態のマッチング部の歩行者用マッチング処理における枠補正処理の動作を説明する図である。図19〜27を参照しながら、トラッキング処理部520のマッチング部610の歩行者用マッチング処理の動作の流れについて説明する。
<ステップS1231>
マッチング部610の形状マッチング部612は、視差画像において歩行者の頭部を主とする輪郭を検出し、前フレームに対応する視差画像で検出された歩行者の輪郭をテンプレート(輪郭テンプレート)としてテンプレートマッチングを行う形状マッチング処理を行う。具体的には、形状マッチング部612は、まず、図20に示すように、現フレームに対応する視差画像における、移動予測部600により予測された予測領域801において、各x座標で上端から下方向へ向かって探索し、歩行者の視差値に行き当たる位置(Y座標)を特定していく。次に、形状マッチング部612は、特定した位置を結ぶことによって、図21に示すように、予測領域801において、歩行者の頭部から肩近傍にかけての輪郭である輪郭901を取得する。ただし、取得された輪郭は、本来この時点では歩行者の輪郭か、歩行者以外の物体の輪郭かについては判別されていないが、ここでは、図20に示す歩行者を例にして説明するものとする。図21の例では、2人の歩行者の輪郭が抽出された場合の例を示している。次に、形状マッチング部612は、前フレームに対応する視差画像の予測領域802で検出された歩行者の輪郭をテンプレート(図22に示す輪郭テンプレート902)を、予測領域801において横方向(X方向)にずらしながら、輪郭901に対するテンプレートマッチングを行う。なお、テンプレートマッチングに用いる類似度を示すコスト値としては、例えば、SAD、SSDまたはZSSD等を用いるものとすればよい。図23に示す例では、SADを用いた場合を示す。
マッチング部610の形状マッチング部612は、視差画像において歩行者の頭部を主とする輪郭を検出し、前フレームに対応する視差画像で検出された歩行者の輪郭をテンプレート(輪郭テンプレート)としてテンプレートマッチングを行う形状マッチング処理を行う。具体的には、形状マッチング部612は、まず、図20に示すように、現フレームに対応する視差画像における、移動予測部600により予測された予測領域801において、各x座標で上端から下方向へ向かって探索し、歩行者の視差値に行き当たる位置(Y座標)を特定していく。次に、形状マッチング部612は、特定した位置を結ぶことによって、図21に示すように、予測領域801において、歩行者の頭部から肩近傍にかけての輪郭である輪郭901を取得する。ただし、取得された輪郭は、本来この時点では歩行者の輪郭か、歩行者以外の物体の輪郭かについては判別されていないが、ここでは、図20に示す歩行者を例にして説明するものとする。図21の例では、2人の歩行者の輪郭が抽出された場合の例を示している。次に、形状マッチング部612は、前フレームに対応する視差画像の予測領域802で検出された歩行者の輪郭をテンプレート(図22に示す輪郭テンプレート902)を、予測領域801において横方向(X方向)にずらしながら、輪郭901に対するテンプレートマッチングを行う。なお、テンプレートマッチングに用いる類似度を示すコスト値としては、例えば、SAD、SSDまたはZSSD等を用いるものとすればよい。図23に示す例では、SADを用いた場合を示す。
形状マッチング部612は、予測領域801において、輪郭テンプレート902を横方向にずらしながらSADを算出し、SADの値が極小となるX方向の位置(すなわち、類似度が高い位置)を特定する。図23の例では、形状マッチング部612は、SADの値が極小となるX方向の位置、すなわち、追跡対象の歩行者が存在する候補となるX方向の位置である候補位置P1、P2を特定する。ここで、形状マッチング部612は、追跡対象となる歩行者のX方向の位置として判定した位置は、例えば、SADが最も小さくなった場合に位置する輪郭テンプレート902の最も上側に存在する画素のX方向の位置とすればよい。形状マッチング部612は、特定した候補位置P1、P2の情報を、画像マッチング部613に送る。そして、ステップS1232へ移行する。
<ステップS1232>
マッチング部610の画像マッチング部613は、現在フレームである輝度画像(基準画像Ia)において、前フレームに対応する視差画像で検出された輪郭テンプレートに基づいた画像テンプレートによりテンプレートマッチングを行う画像マッチング処理を行う。具体的には、図24(a)に示すように、前フレームに対応する視差画像で検出されている輪郭テンプレート902の位置に対応する輝度画像(基準画像Ia)上の位置において、輪郭を構成する各画素から下方向のN画素分で構成される画像テンプレート902aが、予め、前フレームに対する特徴更新部630の処理により作成されている。画像マッチング部613は、まず、図25に示すように、視差画像上の予測領域801に対応する輝度画像(基準画像Ia)上の予測領域811において、形状マッチング部612により特定されたX方向の候補の位置である候補位置P1、P2のそれぞれにおいて、画像テンプレート902aを予測領域811の上端から下方向にずらしながら、テンプレートマッチングを行う。なお、テンプレートマッチングに用いる類似度を示すコスト値としては、例えば、SAD、SSDまたはZSSD等を用いるものとすればよい。図25に示す例では、SADを用いた場合を示す。
マッチング部610の画像マッチング部613は、現在フレームである輝度画像(基準画像Ia)において、前フレームに対応する視差画像で検出された輪郭テンプレートに基づいた画像テンプレートによりテンプレートマッチングを行う画像マッチング処理を行う。具体的には、図24(a)に示すように、前フレームに対応する視差画像で検出されている輪郭テンプレート902の位置に対応する輝度画像(基準画像Ia)上の位置において、輪郭を構成する各画素から下方向のN画素分で構成される画像テンプレート902aが、予め、前フレームに対する特徴更新部630の処理により作成されている。画像マッチング部613は、まず、図25に示すように、視差画像上の予測領域801に対応する輝度画像(基準画像Ia)上の予測領域811において、形状マッチング部612により特定されたX方向の候補の位置である候補位置P1、P2のそれぞれにおいて、画像テンプレート902aを予測領域811の上端から下方向にずらしながら、テンプレートマッチングを行う。なお、テンプレートマッチングに用いる類似度を示すコスト値としては、例えば、SAD、SSDまたはZSSD等を用いるものとすればよい。図25に示す例では、SADを用いた場合を示す。
画像マッチング部613は、予測領域811において、画像テンプレート902aをY方向にずらしながらSADを算出し、SADの値が最も小さくなるY方向の位置(すなわち、最も類似度が高い位置)を特定する。図25の例では、画像テンプレート902aによるテンプレートマッチングを候補位置P1、P2双方で行うので、画像マッチング部613は、それぞれの候補位置で最も値が小さいSADのうち小さい方の候補位置を、歩行者のX方向の位置であると決定する。また、画像マッチング部613は、決定した歩行者のX方向の位置に対応する候補位置でSADが最も小さくなるY方向の位置を、歩行者のY方向の位置(第1位置)であると決定する。ここで、画像マッチング部613は、追跡対象となる歩行者のY方向の位置として決定した位置は、例えば、SADが最も小さくなった場合に位置する画像テンプレート902aの最も上側に存在する画素のY方向の位置とすればよい。これによって、追跡対象となる歩行者の視差画像(または輝度画像)の位置が検出される。
ここで、例えば、現在フレームで位置が検出された歩行者の検出領域を示す検出枠は、例えば、検出領域の面積、すなわち検出枠内の面積が同一であるものとし、かつ、前フレームにおける歩行者の位置に対する、その歩行者を囲む検出枠の相対位置が同一となるように、現在フレームにおける検出枠の位置を決定するものとすればよい。なお、このように決定された検出枠の位置および大きさは、後述の補正処理部615による枠補正処理によって補正される。
なお、画像マッチング部613による画像マッチング処理は、上述のように画像テンプレート902aを候補位置(例えば、図25に示す候補位置P1、P2)において上端から下方向にずらしながらSADを求めるという方法に限定されるものではない。図24(b)に示す矩形テンプレート902bは、特徴更新部630により作成された図24(a)に示す画像テンプレート902aにおける各X座標においてY方向に延びる各N画素を、Y方向(高さ方向)でそろえて矩形状にしたものである。画像マッチング部613は、形状マッチング部612により特定された候補位置P1、P2において、矩形テンプレート902bを構成する各X座標のN画素を、輪郭901に向かって下ろし、N画素の各列を、その列の最上の画素が、輪郭901の各画素に重なるように配置させる。画像マッチング部613は、この場合に、矩形テンプレート902bの各画素値と、予測領域811において、N画素の各列が重なった部分の各画素値とを用いてSAD等を算出し、算出したSAD等の値が所定の閾値未満である場合、算出したSAD等に対応する輪郭901における輪郭部分で定まる位置を、追跡対象となる歩行者の視差画像(または輝度画像)の位置として検出するものとしてもよい。これによって、画像テンプレート902aをY方向にずらしながら各位置でSAD等を算出する必要がないため、追跡対象となる歩行者の位置を検出するための処理速度を向上させることができる。
画像マッチング部613は、決定した歩行者の位置、ならびに検出枠の位置および大きさの情報を境界決定部614に送る。そして、ステップS1233へ移行する。
<ステップS1233>
マッチング部610の境界決定部614は、現在フレームで複数の歩行者の輪郭が検出された場合、画像マッチング部613によって検出(位置が決定)された歩行者以外の歩行者との境界を決定する境界決定処理を行う。具体的には、境界決定部614は、まず、図26に示すように、現フレームに対する視差画像における予測領域801において、上端から下方向に向かって、X方向に延びる基準線BLを下ろしていく。そして、境界決定部614は、画像マッチング部613により位置が決定された物体(歩行者)の視差値の塊(孤立領域)と基準線BLとが重なり始めてから、さらに基準線BLを下ろしていき、基準線BLと重なり始めた位置から基準線BLの現位置までの領域について、Y方向に視差値が連続する領域であり、かつ、その領域のY方向の長さが所定の長さ(例えば、20[cm])以上となったか否かを判定する。
マッチング部610の境界決定部614は、現在フレームで複数の歩行者の輪郭が検出された場合、画像マッチング部613によって検出(位置が決定)された歩行者以外の歩行者との境界を決定する境界決定処理を行う。具体的には、境界決定部614は、まず、図26に示すように、現フレームに対する視差画像における予測領域801において、上端から下方向に向かって、X方向に延びる基準線BLを下ろしていく。そして、境界決定部614は、画像マッチング部613により位置が決定された物体(歩行者)の視差値の塊(孤立領域)と基準線BLとが重なり始めてから、さらに基準線BLを下ろしていき、基準線BLと重なり始めた位置から基準線BLの現位置までの領域について、Y方向に視差値が連続する領域であり、かつ、その領域のY方向の長さが所定の長さ(例えば、20[cm])以上となったか否かを判定する。
また、同時に、境界決定部614は、図21に示した輪郭901のように、複数の歩行者の輪郭が抽出された場合、画像マッチング部613により位置が決定された追跡対象となる歩行者とは別の歩行者に対しても、上述の処理と同様に、別の歩行者の孤立領域と基準線BLとが重なり始めた位置から基準線BLの現位置までの領域について、Y方向に視差値が連続する領域であり、かつ、その領域のY方向の長さが所定の長さ(例えば、20[cm])となったか否かを判定する。この場合、別の歩行者について、基準線BLと重なり始めた位置から基準線BLの現位置までの領域について、Y方向に視差値が連続する領域であり、かつ、その領域のY方向の長さが所定の長さ(例えば、20[cm])以上となる領域が検出されなかった場合、境界決定部614は、これ以降の境界決定処理は行わない。
そして、境界決定部614は、画像マッチング部613により位置が決定された歩行者が、別の歩行者の右側にいる場合、歩行者および別の歩行者それぞれの孤立領域について、基準線BLと重なり始めた位置から基準線BLの現位置までの領域が、それぞれ、Y方向に視差値が連続する領域であり、かつ、その領域のY方向の長さが所定の長さ(例えば、20[cm])以上となった時点における基準線BLのY方向の位置(第2位置)での歩行者の領域の左端と、別の歩行者の領域の右端との中点を、X方向における歩行者と別の歩行者との境界位置とする。一方、境界決定部614は、画像マッチング部613により位置が決定された歩行者が、別の歩行者の左側にいる場合、歩行者および別の歩行者それぞれの孤立領域について、基準線BLと重なり始めた位置から基準線BLの現位置までの領域が、それぞれ、Y方向に視差値が連続する領域であり、かつ、その領域のY方向の長さが所定の長さ(例えば、20[cm])以上となった時点における基準線BLのY方向の位置(第2位置)での歩行者の領域の右端と、別の歩行者の左端との中点を、X方向における歩行者と別の歩行者との境界位置とする。例えば、図26において、紙面視右側の歩行者が画像マッチング部613により位置が決定された歩行者であるものとした場合、境界決定部614は、歩行者および別の歩行者それぞれの孤立領域について、基準線BLと重なり始めた位置から基準線BLの現位置までの領域が、それぞれ、Y方向に視差値が連続する領域であり、かつ、その領域のY方向の長さが所定の長さ(例えば、20[cm])以上となった時点における基準線BLのY方向の位置での歩行者の領域の左端を検出位置P3とし、別の歩行者の領域の右端を検出位置P4として検出する。そして、境界決定部614は、検出位置P3と検出位置P4との中点を境界位置Pbとして検出する。
境界決定部614は、歩行者の位置、歩行者の検出枠の位置および大きさ、ならびに境界位置の情報を補正処理部615に送る。そして、ステップS1234へ移行する。
<ステップS1234>
マッチング部610の補正処理部615は、現在フレームにおいて、位置が検出された歩行者の検出領域の枠(検出枠)について枠補正処理を行う。具体的には、補正処理部615は、まず、図27に示すように、現フレームに対応する視差画像上の歩行者の検出枠820内の画像について、X方向で視差値を含む画素の頻度を示すヒストグラム910、および、Y方向で視差値を含む画素の頻度を示すヒストグラム911を作成する。そして、補正処理部615は、図27に示すように、ヒストグラム910において閾値Thを超えるX方向の位置を、それぞれ、補正後の検出枠821の左端および右端の位置とし、ヒストグラム911において閾値Thを超えるY方向の位置を、それぞれ、補正後の検出枠821の上端および下端の位置とする。閾値Thは、例えば、ヒストグラムの最大値に対して10〜20[%]の値とすればよい。この場合、図27ではX方向およびY方向の閾値を、閾値Thとしているが、同一の閾値である必要はない。このようにして、補正処理部615により枠補正処理が行われた検出枠821の画像が、マッチング部610による歩行者用マッチング処理によって最終的に検出された検出領域となる。そして、補正処理部615は、検出した歩行者の検出領域の情報(位置および大きさ等)を、その歩行者の認識領域情報に含める。そして、歩行者用マッチング処理を終了する。
マッチング部610の補正処理部615は、現在フレームにおいて、位置が検出された歩行者の検出領域の枠(検出枠)について枠補正処理を行う。具体的には、補正処理部615は、まず、図27に示すように、現フレームに対応する視差画像上の歩行者の検出枠820内の画像について、X方向で視差値を含む画素の頻度を示すヒストグラム910、および、Y方向で視差値を含む画素の頻度を示すヒストグラム911を作成する。そして、補正処理部615は、図27に示すように、ヒストグラム910において閾値Thを超えるX方向の位置を、それぞれ、補正後の検出枠821の左端および右端の位置とし、ヒストグラム911において閾値Thを超えるY方向の位置を、それぞれ、補正後の検出枠821の上端および下端の位置とする。閾値Thは、例えば、ヒストグラムの最大値に対して10〜20[%]の値とすればよい。この場合、図27ではX方向およびY方向の閾値を、閾値Thとしているが、同一の閾値である必要はない。このようにして、補正処理部615により枠補正処理が行われた検出枠821の画像が、マッチング部610による歩行者用マッチング処理によって最終的に検出された検出領域となる。そして、補正処理部615は、検出した歩行者の検出領域の情報(位置および大きさ等)を、その歩行者の認識領域情報に含める。そして、歩行者用マッチング処理を終了する。
以上のステップS1231〜S1234の処理により、マッチング部610の歩行者用マッチング処理が行われる。また、マッチング部610の歩行者用マッチング処理の終了後、上述したように、特徴更新部630は、現フレームに対応する予測領域801において、画像マッチング部613により歩行者の位置が決定されることによって確定したその歩行者の輪郭を、次のフレームに対応する視差画像で使用する輪郭テンプレートとして、現在記憶している輪郭テンプレート902に代えて更新する。さらに、特徴更新部630は、現フレームの予測領域811において、画像マッチング部613により歩行者の位置が決定されることによって確定したその歩行者についての画像テンプレートを作成し、現在記憶している画像テンプレート902aに代えて更新する。この場合、例えば、特徴更新部630は、現フレームにおいて、確定した歩行者の輪郭の各画素の位置から下方向のN画素分で構成される画像を、次のフレームで使用する画像テンプレートとすればよい。
以上のように、本実施の形態に係る物体認識装置1のトラッキング処理における歩行者用マッチング処理では、形状マッチング処理により、歩行者の頭部から肩近傍にかけての輪郭を検出して、輪郭についてのテンプレートマッチングにより、歩行者のX方向の位置の候補を特定し、画像マッチング処理により、頭部から肩近傍にかけての画像テンプレートを用いて、X方向の候補位置におけるY方向において、画像についてのテンプレートマッチングにより、歩行者のY方向の位置を特定することによって、最終的に歩行者の位置を特定するものとしている。このように、追跡対象とする歩行者の頭部から肩近傍にかけての輪郭を用いて、歩行者の位置を検出しているので、歩行者の手足等の姿勢変化が生じても、または、異なる服装を着用している等の別の歩行者が近傍にいたとしても、歩行者を個々に精度よく検出することができる。また、形状マッチング処理により、X方向における歩行者の位置の候補を先に特定しておき、そのX方向の候補位置においてY方向に画像テンプレートによるテンプレートマッチングをすればよいので、歩行者の検出の処理速度を向上させることができる。
また、歩行者の視差値の塊(孤立領域)に対して、頭部と想定される位置を決定して、別の歩行者との境界を求める境界決定処理により、視差値のヒストグラムまたは輪郭の形状をも用いて局所的な谷を見つける処理等に比べて、精度よく別の歩行者との境界を特定することができる。これによって、複数の歩行者の位置が接近していることにより、1つの物体として検出されやすい状態においても、個々の歩行者として検出することが可能となる。
また、形状マッチング処理、画像マッチングし処理、および境界決定処理はいずれも、画像(輝度画像または視差画像)全体に対してではなく、移動予測部600により歩行者が存在すると予測された予測領域に対して行われるので、画像全体に対して処理するよりも処理速度を向上させることができる。
なお、上述の実施の形態では、コスト値Cは非類似度を表す評価値としているが、類似度を表す評価値であってもよい。この場合、類似度であるコスト値Cが最大(極値)となるシフト量dが視差値dpとなる。
また、上述の実施の形態では、車両70としての自動車に搭載される物体認識装置について説明したが、これに限定されるものではない。例えば、他の車両の一例としてバイク、自転車、車椅子または農業用の耕運機等の車両に搭載されるものとしてもよい。また、移動体の一例としての車両だけでなく、ロボット等の移動体であってもよい。
また、上述の実施の形態において、物体認識装置1の視差値導出部3および認識処理部5の各機能部の少なくともいずれかがプログラムの実行によって実現される場合、そのプログラムは、ROM等に予め組み込まれて提供される。また、上述の実施の形態に係る物体認識装置1で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、上述の実施の形態の物体認識装置1で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述の実施の形態の物体認識装置1で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、上述の実施の形態の物体認識装置1で実行されるプログラムは、上述した各機能部のうち少なくともいずれかを含むモジュール構成となっており、実際のハードウェアとしてはCPU52(CPU32)が上述のROM53(ROM33)からプログラムを読み出して実行することにより、上述の各機能部が主記憶装置(RAM54(RAM34)等)上にロードされて生成されるようになっている。
1 物体認識装置
2 本体部
3 視差値導出部
4 通信線
5 認識処理部
6 車両制御装置
7 ステアリングホイール
8 ブレーキペダル
10a、10b 撮像部
11a、11b 撮像レンズ
12a、12b 絞り
13a、13b 画像センサ
20a、20b 信号変換部
21a、21b CDS
22a、22b AGC
23a、23b ADC
24a、24b フレームメモリ
30 画像処理部
31 FPGA
32 CPU
33 ROM
34 RAM
35 I/F
39 バスライン
51 FPGA
52 CPU
53 ROM
54 RAM
55 I/F
58 CANI/F
59 バスライン
60 機器制御システム
70 車両
100a、100b 画像取得部
200a、200b 変換部
300 視差値演算処理部
301 コスト算出部
302 決定部
303 第1生成部
500 第2生成部
510 クラスタリング処理部
520 トラッキング処理部
600 移動予測部
610 マッチング部
611 判定部
612 形状マッチング部
613 画像マッチング部
614 境界決定部
615 補正処理部
620 チェック部
630 特徴更新部
640 状態遷移部
700 路面
700a 路面部
701 電柱
701a 電柱部
702 車
702a 車部
711 左ガードレール
711a〜711c 左ガードレール部
712 右ガードレール
712a〜712c 右ガードレール部
713 車
713a〜713c 車部
714 車
714a〜714c 車部
721〜724 検出領域
721a〜724a 検出枠
800〜802 予測領域
811 予測領域
820、821 検出枠
901 輪郭
902 輪郭テンプレート
902a 画像テンプレート
902b 矩形テンプレート
910、911 ヒストグラム
B 基線長
BL 基準線
C コスト値
d シフト量
dp 視差値
E 物体
EL エピポーラ線
f 焦点距離
Ia 基準画像
Ib 比較画像
Ip 視差画像
p 基準画素
P1、P2 候補位置
P3、P4 検出位置
pb 基準領域
Pb 境界位置
q 候補画素
qb 候補領域
RM リアルUマップ
S、Sa、Sb 点
Th 閾値
UM、UM_H Uマップ
VM Vマップ
Z 距離
2 本体部
3 視差値導出部
4 通信線
5 認識処理部
6 車両制御装置
7 ステアリングホイール
8 ブレーキペダル
10a、10b 撮像部
11a、11b 撮像レンズ
12a、12b 絞り
13a、13b 画像センサ
20a、20b 信号変換部
21a、21b CDS
22a、22b AGC
23a、23b ADC
24a、24b フレームメモリ
30 画像処理部
31 FPGA
32 CPU
33 ROM
34 RAM
35 I/F
39 バスライン
51 FPGA
52 CPU
53 ROM
54 RAM
55 I/F
58 CANI/F
59 バスライン
60 機器制御システム
70 車両
100a、100b 画像取得部
200a、200b 変換部
300 視差値演算処理部
301 コスト算出部
302 決定部
303 第1生成部
500 第2生成部
510 クラスタリング処理部
520 トラッキング処理部
600 移動予測部
610 マッチング部
611 判定部
612 形状マッチング部
613 画像マッチング部
614 境界決定部
615 補正処理部
620 チェック部
630 特徴更新部
640 状態遷移部
700 路面
700a 路面部
701 電柱
701a 電柱部
702 車
702a 車部
711 左ガードレール
711a〜711c 左ガードレール部
712 右ガードレール
712a〜712c 右ガードレール部
713 車
713a〜713c 車部
714 車
714a〜714c 車部
721〜724 検出領域
721a〜724a 検出枠
800〜802 予測領域
811 予測領域
820、821 検出枠
901 輪郭
902 輪郭テンプレート
902a 画像テンプレート
902b 矩形テンプレート
910、911 ヒストグラム
B 基線長
BL 基準線
C コスト値
d シフト量
dp 視差値
E 物体
EL エピポーラ線
f 焦点距離
Ia 基準画像
Ib 比較画像
Ip 視差画像
p 基準画素
P1、P2 候補位置
P3、P4 検出位置
pb 基準領域
Pb 境界位置
q 候補画素
qb 候補領域
RM リアルUマップ
S、Sa、Sb 点
Th 閾値
UM、UM_H Uマップ
VM Vマップ
Z 距離
Claims (10)
- 現在のフレームに対応する距離画像において、物体の上側から下方向に向かって探索した場合に、前記物体の距離情報の画素に行き当たった該各画素を結ぶことによって該物体の輪郭を取得し、前記輪郭に対して、輪郭テンプレートを用いたテンプレートマッチングによって前記輪郭が検出対象の物体に相当する場合、前記物体の横方向の候補位置を特定する第1マッチング手段と、
前記距離画像において、前記候補位置からの縦方向において画像テンプレートを用いたテンプレートマッチングを行い、前記物体の横方向の位置、および、縦方向の第1位置を決定する第2マッチング手段と、
を備えた画像処理装置。 - 前記第1マッチング手段は、人の少なくとも頭部の一部を含む前記輪郭テンプレートを用いて、前記輪郭に対してテンプレートマッチングを行う請求項1に記載の画像処理装置。
- 前記第1マッチング手段により、前記検出対象の物体に相当する前記輪郭が複数特定された場合、前記距離画像において、前記各物体の上側から下方向に向かって探索した場合に、該各物体の縦方向の前記距離情報の画素が連続する長さが、それぞれ所定の長さに達したときの縦方向の第2位置を特定し、該第2位置に基づいて、該各物体の横方向の境界を決定する決定手段を、さらに備えた請求項1または2に記載の画像処理装置。
- 前記決定手段は、前記各物体の前記第2位置の横方向の前記距離情報の画素列において、別の物体に近い方の端部の横方向の各位置の中点を前記境界として決定する請求項3に記載の画像処理装置。
- 前記現在のフレームの前のフレームに対応する距離画像おいて、前記第2マッチング手段により位置が決定された物体の輪郭を前記輪郭テンプレートとして更新し、かつ、前記前のフレームにおける該輪郭に対応する各画素の位置から下方向の所定数の画素群により構成される画像を前記画像テンプレートとして更新する更新手段を、さらに備えた請求項1〜4のいずれか一項に記載の画像処理装置。
- 前記現在のフレームに対応する距離画像内において前記物体が存在する予測領域を求める予測手段を、さらに備え、
前記第1マッチング処理手段は、前記予測領域内で前記輪郭テンプレートを用いたテンプレートマッチングを行い、
前記第2マッチング処理手段は、前記予測領域に対応する前記現在のフレームの領域で前記画像テンプレートを用いたテンプレートマッチングを行う請求項1〜5のいずれか一項に記載の画像処理装置。 - 被写体を撮像することにより第1撮像画像を得る第1撮像手段と、
前記第1撮像手段の位置とは異なる位置に配置され、前記被写体を撮像することにより第2撮像画像を得る第2撮像手段と、
前記第1撮像画像および前記第2撮像画像から前記被写体に対して求めた距離情報に基づいて、前記距離画像を生成する生成手段と、
前記第1撮像画像または前記第2撮像画像、および前記距離画像に基づいて、新規に物体を検出する検出手段と、
請求項1〜6のいずれか一項に記載の画像処理装置と、
を備えた物体認識装置。 - 請求項7に記載の物体認識装置と、
前記物体認識装置により検出された前記物体の情報に基づいて、制御対象を制御する制御装置と、
を備えた機器制御システム。 - 現在のフレームに対応する距離画像において、物体の上側から下方向に向かって探索した場合に、前記物体の距離情報の画素に行き当たった該各画素を結ぶことによって該物体の輪郭を取得する取得ステップと、
前記輪郭に対して、輪郭テンプレートを用いたテンプレートマッチングによって前記輪郭が検出対象の物体に相当する場合、前記物体の横方向の候補位置を特定する第1マッチングステップと、
前記距離画像において、前記候補位置からの縦方向において画像テンプレートを用いたテンプレートマッチングを行い、前記物体の横方向の位置、および、縦方向の第1位置を決定する第2マッチングステップと、
を有する画像処理方法。 - コンピュータを、
現在のフレームに対応する距離画像において、物体の上側から下方向に向かって探索した場合に、前記物体の距離情報の画素に行き当たった該各画素を結ぶことによって該物体の輪郭を取得し、前記輪郭に対して、輪郭テンプレートを用いたテンプレートマッチングによって前記輪郭が検出対象の物体に相当する場合、前記物体の横方向の候補位置を特定する第1マッチング手段と、
前記距離画像において、前記候補位置からの縦方向において画像テンプレートを用いたテンプレートマッチングを行い、前記物体の横方向の位置、および、縦方向の第1位置を決定する第2マッチング手段と、
して機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016054453A JP2017167970A (ja) | 2016-03-17 | 2016-03-17 | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016054453A JP2017167970A (ja) | 2016-03-17 | 2016-03-17 | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017167970A true JP2017167970A (ja) | 2017-09-21 |
Family
ID=59913386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016054453A Pending JP2017167970A (ja) | 2016-03-17 | 2016-03-17 | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017167970A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020525901A (ja) * | 2018-02-12 | 2020-08-27 | ベイジン センスタイム テクノロジー デベロップメント カンパニー, リミテッド | 歩行者再認識方法、装置、電子機器および記憶媒体 |
JP2022014135A (ja) * | 2020-07-06 | 2022-01-19 | 株式会社ハイシンク創研 | 物体認識装置及びこれを用いた物体搬送システム |
CN114762019A (zh) * | 2019-12-17 | 2022-07-15 | 日立安斯泰莫株式会社 | 摄像机系统 |
-
2016
- 2016-03-17 JP JP2016054453A patent/JP2017167970A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020525901A (ja) * | 2018-02-12 | 2020-08-27 | ベイジン センスタイム テクノロジー デベロップメント カンパニー, リミテッド | 歩行者再認識方法、装置、電子機器および記憶媒体 |
US11301687B2 (en) | 2018-02-12 | 2022-04-12 | Beijing Sensetime Technology Development Co., Ltd. | Pedestrian re-identification methods and apparatuses, electronic devices, and storage media |
CN114762019A (zh) * | 2019-12-17 | 2022-07-15 | 日立安斯泰莫株式会社 | 摄像机系统 |
JP2022014135A (ja) * | 2020-07-06 | 2022-01-19 | 株式会社ハイシンク創研 | 物体認識装置及びこれを用いた物体搬送システム |
JP7333546B2 (ja) | 2020-07-06 | 2023-08-25 | 株式会社ハイシンク創研 | 物体認識装置及びこれを用いた物体搬送システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6614247B2 (ja) | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム | |
US10937181B2 (en) | Information processing apparatus, object recognition apparatus, device control system, movable body, image processing method, and computer-readable recording medium | |
US11093763B2 (en) | Onboard environment recognition device | |
JP6597792B2 (ja) | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム | |
JP6597795B2 (ja) | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム | |
US20200074212A1 (en) | Information processing device, imaging device, equipment control system, mobile object, information processing method, and computer-readable recording medium | |
JP2007508624A (ja) | 低照度の深度に適応可能なコンピュータ視覚を用いた移動物体検出 | |
JP6743882B2 (ja) | 画像処理装置、機器制御システム、撮像装置、画像処理方法及びプログラム | |
JP6516012B2 (ja) | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム | |
JP2017151535A (ja) | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム | |
JP6547841B2 (ja) | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム | |
JP6572696B2 (ja) | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム | |
JP2016152027A (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP2010079582A (ja) | 物体を検出する装置、方法及びプログラム | |
JP2017167970A (ja) | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム | |
JP2018045680A (ja) | 画像処理装置、物体認識装置、機器制御システム、移動体、画像処理方法およびプログラム | |
JP6701905B2 (ja) | 検出装置、視差値導出装置、物体認識装置、機器制御システム、およびプログラム | |
EP3540643A1 (en) | Image processing apparatus and image processing method | |
WO2018097269A1 (en) | Information processing device, imaging device, equipment control system, mobile object, information processing method, and computer-readable recording medium | |
JP6701738B2 (ja) | 視差値導出装置、視差値導出方法及びプログラム | |
JP2018045328A (ja) | 画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラム |