(57)【要約】  前のフレームにおける物体の位置から、現在のフレームにおける物体の位置を予測して予測領域を特定する予測手段と、前のフレームにおける物体の距離に基づいて、物体が第１距離域に存在するか、第１距離域よりも遠い第２距離域に存在するかを判定する判定手段と、物体が第１距離域に存在すると判定された場合、予測領域において、前のフレームの物体についての第１テンプレートを用いたテンプレートマッチングを行い、物体を検出する第１マッチング処理手段と、物体が第２距離域に存在すると判定された場合、予測領域において、前のフレームの物体についての、第１テンプレートとは異なる第２テンプレートを用いたテンプレートマッチングを行い、物体を検出する第２マッチング処理手段と、を備える。
2017138245.tif 000002
【特許請求の範囲】
【請求項１】
現在のフレームに対する前のフレームにおける物体の位置から、前記現在のフレームにおける前記物体の位置を予測して予測領域を特定する予測手段と、
前記前のフレームにおける前記物体の距離に基づいて、該物体が第１距離域に存在するか、前記第１距離域よりも遠い第２距離域に存在するかを判定する判定手段と、
前記判定手段により前記物体が前記第１距離域に存在すると判定された場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての第１テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第１マッチング処理手段と、
前記判定手段により前記物体が前記第２距離域に存在すると判定された場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての、前記第１テンプレートとは異なる第２テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第２マッチング処理手段と、
を備えた画像処理装置。
【請求項２】
前記第１マッチング処理手段は、前記予測領域内における画素を間引いた間引き予測領域に対してテンプレートマッチングを行う
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１マッチング処理手段は、前記予測領域内における画素を間引いた間引き予測領域に対してテンプレートマッチングを行った後、前記画素の間引きによる検出誤差を補正することにより前記物体を検出する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記第２マッチング処理手段は、前記物体の部分的なテンプレートを用いて該物体を検出する
ことを特徴とする請求項１〜３のいずれか一項に記載の画像処理装置。
【請求項５】
前記第２マッチング処理手段は、前記予測領域内における画素を間引いた間引き予測領域に対してテンプレートマッチングを行い、前記画素の間引きによる検出誤差を前記物体の部分的なテンプレートを用いて補正することにより前記物体を検出する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記判定手段は、距離情報に基づく物体の距離に基づいて、前記物体が前記第１距離域に存在するか、前記第２距離域に存在するかを判定し、
前記第１マッチング処理手段は、前記判定手段により前記物体が前記第１距離域に存在すると判定された場合、前記現在のフレームに対する、前記前のフレームでの該物体の第１検出領域についての前記第１テンプレートを用いたテンプレートマッチングにより該物体を検出し、検出した該物体の第２検出領域の距離情報に基づいて前記第２検出領域を補正し、
前記第２マッチング処理手段は、前記判定手段により前記物体が前記第２距離域に存在すると判定された場合、前記現在のフレームに対する、前記前のフレームでの該物体の第３検出領域についての前記第２テンプレートを用いたテンプレートマッチングにより該物体を検出し、検出した該物体の第４検出領域の大きさを前記第３検出領域の部分画像に基づいて補正する請求項１に記載の画像処理装置。
【請求項７】
前記第１マッチング処理手段は、前記第２検出領域に対応する距離情報の頻度に基づいて該第２検出領域の大きさを補正する請求項６に記載の画像処理装置。
【請求項８】
前記第２マッチング処理手段は、前記第４検出領域内の前記部分画像に一致する部分の位置に基づいて、該第４検出領域の大きさを補正する請求項６または７に記載の画像処理装置。
【請求項９】
前記第１マッチング処理手段は、前記予測領域内で前記第１テンプレートを用いたテンプレートマッチングを行い、
前記第２マッチング処理手段は、前記予測領域内で前記第２テンプレートを用いたテンプレートマッチングを行う請求項６〜８のいずれか一項に記載の画像処理装置。
【請求項１０】
前記第１マッチング処理手段は、前記予測領域を第１間引き量で間引き、間引いた前記予測領域内で、前記第１検出領域が前記第１間引き量で間引かれた前記第１テンプレートを用いたテンプレートマッチングを行い、
前記第２マッチング処理手段は、前記予測領域を第２間引き量で間引き、間引いた前記予測領域内で、前記第３検出領域が前記第２間引き量で間引かれた前記第２テンプレートを用いたテンプレートマッチングを行う請求項９に記載の画像処理装置。
【請求項１１】
前記第１マッチング処理手段は、前記第２間引き量よりも大きい前記第１間引き量で前記予測領域を間引く請求項１０に記載の画像処理装置。
【請求項１２】
矩形状の前記第１検出領域を、高さ方向の長さまたは幅方向の長さのいずれかが固定長となるように前記第１間引き量で間引いて前記第１テンプレートを作成する第１間引き手段と、
矩形状の前記第３検出領域を、高さ方向の長さまたは幅方向の長さのいずれかが固定長となるように前記第２間引き量で間引いて前記第２テンプレートを作成する第２間引き手段と、
をさらに備えた請求項１０または１１に記載の画像処理装置。
【請求項１３】
前のフレームでの前記物体の前記第３検出領域において、該第３検出領域の端に仮枠を配置し、前記仮枠を該第３検出領域の内側にずらしながら、該仮枠に含まれる視差値が所定割合以上となった場合に、該仮枠を前記部分画像として選択する選択手段を、さらに備えた請求項６〜１２のいずれか一項に記載の画像処理装置。
【請求項１４】
被写体を撮像することにより第１撮像画像を得る第１撮像手段と、
前記第１撮像手段の位置とは異なる位置に配置され、前記被写体を撮像することにより第２撮像画像を得る第２撮像手段と、
前記第１撮像画像および前記第２撮像画像から前記被写体に対して求めた視差値に基づいて、前記距離情報を生成する生成手段と、
前記第１撮像画像または前記第２撮像画像、および前記距離情報に基づいて、新規に物体を検出する検出手段と、
請求項１〜１３のいずれか一項に記載の画像処理装置と、
を備えた物体認識装置。
【請求項１５】
請求項１４に記載の物体認識装置と、
前記物体認識装置により検出された前記物体の情報に基づいて、制御対象を制御する制御装置と、
を備えた機器制御システム。
【請求項１６】
現在のフレームに対する前のフレームにおける物体の位置から、前記現在のフレームにおける前記物体の位置を予測して予測領域を特定する予測ステップと、
前記前のフレームにおける前記物体の距離に基づいて、該物体が第１距離域に存在するか、前記第１距離域よりも遠い第２距離域に存在するかを判定する判定ステップと、
前記物体が前記第１距離域に存在すると判定した場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての第１テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第１マッチング処理ステップと、
前記物体が前記第２距離域に存在すると判定した場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての、前記第１テンプレートとは異なる第２テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第２マッチング処理ステップと、
を有する画像処理方法。
【請求項１７】
コンピュータを、
現在のフレームに対する前のフレームにおける物体の位置から、前記現在のフレームにおける前記物体の位置を予測して予測領域を特定する予測手段と、
前記前のフレームにおける前記物体の距離に基づいて、該物体が第１距離域に存在するか、前記第１距離域よりも遠い第２距離域に存在するかを判定する判定手段と、
前記判定手段により前記物体が前記第１距離域に存在すると判定された場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての第１テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第１マッチング処理手段と、
前記判定手段により前記物体が前記第２距離域に存在すると判定された場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての、前記第１テンプレートとは異なる第２テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第２マッチング処理手段と、
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラムに関する。
【背景技術】
【０００２】
従来、自動車の安全性において、歩行者と自動車とが衝突したときに、いかに歩行者を守れるか、および、乗員を保護できるかの観点から、自動車のボディー構造等の開発が行われてきた。しかしながら、近年、情報処理技術および画像処理技術の発達により、高速に人および自動車を検出する技術が開発されてきている。これらの技術を応用して、自動車が物体に衝突する前に自動的にブレーキをかけ、衝突を未然に防ぐという自動車もすでに開発されている。自動車の自動制御には、人または他車等の物体までの距離を正確に測定する必要があり、そのためには、ミリ波レーダおよびレーザーレーダによる測距、ならびに、ステレオカメラによる測距等が実用化されている。【０００３】
ステレオカメラによる物体認識処理では、大きくクラスタリング処理と、トラッキング処理とに分けることができる。クラスタリング処理は、特にリアルタイムに撮像された輝度画像、およびステレオカメラから導出された視差画像を用いて物体を新規に検出する処理である。また、トラッキング処理は、複数のフレームの情報を用いてクラスタリング処理で検出された物体を追従する処理である。トラッキング処理では、基本的に、二次元画像上の視差値または輝度値のパターンに基づいて、前フレームで検出された物体と類似している領域を、テンプレートマッチングにより現在のフレーム内から検出する。【０００４】
このようなトラッキング処理の技術として、歩行者をテンプレートマッチングにより認識する技術が提案されている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−１６４２７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、物体の認識においては、物体の距離に応じて変化量が異なるため、同一のアルゴリズムでは精度よく検出できない場合がある。特許文献１に記載された技術は、認識する物体として変化量が大きい物体（近距離の物体）、および、変化量が小さい物体（遠距離の物体）それぞれについて最適または好適なアルゴリズムを適用していないため、物体の距離によっては精度よく検出できない可能性があるという問題がある。【０００７】
本発明は、上記に鑑みてなされたものであって、物体の検出の精度を向上させる画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、現在のフレームに対する前のフレームにおける物体の位置から、現在のフレームにおける物体の位置を予測して予測領域を特定する予測手段と、前のフレームにおける物体の距離に基づいて、物体が第１距離域に存在するか、第１距離域よりも遠い第２距離域に存在するかを判定する判定手段と、判定手段により物体が第１距離域に存在すると判定された場合、現在のフレームの予測領域において、前のフレームの物体についての第１テンプレートを用いたテンプレートマッチングを行い、物体を検出する第１マッチング処理手段と、判定手段により物体が第２距離域に存在すると判定された場合、現在のフレームの予測領域において、前のフレームの物体についての、第１テンプレートとは異なる第２テンプレートを用いたテンプレートマッチングを行い、物体を検出する第２マッチング処理手段と、を備えたことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、物体の検出の精度を向上させることができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施の形態に係る機器制御システムを車両に搭載した例を示す図である。
【図２】図２は、実施の形態に係る物体認識装置の外観の一例を示す図である。
【図３】図３は、実施の形態に係る物体認識装置のハードウェア構成の一例を示す図である。
【図４】図４は、実施の形態に係る物体認識装置の機能ブロック構成の一例を示す図である。
【図５】図５は、実施の形態に係る物体認識装置の視差値演算処理部の機能ブロック構成の一例を示す図である。
【図６】図６は、撮像部から物体までの距離を導き出す原理を説明する図である。
【図７】図７は、基準画像における基準画素に対応する比較画像における対応画素を求める場合の説明図である。
【図８】図８は、ブロックマッチング処理の結果のグラフの一例を示す図である。
【図９】図９は、実施の形態に係る物体認識装置の認識処理部の機能ブロック構成の一例を示す図である。
【図１０】図１０は、視差画像から生成されるＶマップの例を示す図である。
【図１１】図１１は、視差画像から生成されるＵマップの例を示す図である。
【図１２】図１２は、Ｕマップから生成されるリアルＵマップの例を示す図である。
【図１３】図１３は、検出枠を作成する処理を説明する図である。
【図１４】図１４は、実施の形態に係る物体認識装置の認識処理部のトラッキング処理部の機能ブロック構成の一例を示す図である。
【図１５】図１５は、実施の形態に係る視差値導出部のブロックマッチング処理の動作の一例を示すフローチャートである。
【図１６】図１６は、実施の形態に係る認識処理部のトラッキング処理部のトラッキング処理の動作の一例を示すフローチャートである。
【図１７】図１７は、移動予測の動作を説明する図である。
【図１８】図１８は、実施の形態のトラッキング処理部のトラッキング処理のうちのマッチング処理の動作の一例を示すフローチャートである。
【図１９】図１９は、実施の形態のトラッキング処理部のトラッキング処理のうちラフマッチングを行う場合の特徴更新処理の動作の一例を示すフローチャートである。
【図２０】図２０は、実施の形態のトラッキング処理部のラフマッチングを行う場合の特徴更新処理における検出領域の画像に対する間引き処理を説明する図である。
【図２１】図２１は、実施の形態のトラッキング処理部のトラッキング処理におけるラフマッチング処理の動作の一例を示すフローチャートである。
【図２２】図２２は、実施の形態のトラッキング処理部のトラッキング処理におけるラフマッチング処理での予測領域の画像に対する間引き処理を説明する図である。
【図２３】図２３は、実施の形態のトラッキング処理部のトラッキング処理におけるラフマッチング処理での枠補正処理を説明する図である。
【図２４】図２４は、実施の形態のトラッキング処理部のトラッキング処理のうちパーツマッチングを行う場合の特徴更新処理の動作の一例を示すフローチャートである。
【図２５】図２５は、実施の形態のトラッキング処理部のパーツマッチングを行う場合の特徴更新処理におけるパーツテンプレートの選択処理の動作の一例を示すフローチャートである。
【図２６】図２６は、パーツテンプレートの選択処理を説明する図である。
【図２７】図２７は、実施の形態のトラッキング処理部のトラッキング処理におけるパーツマッチング処理の動作の一例を示すフローチャートである。
【図２８】図２８は、パーツマッチング処理を説明する図である。
【発明を実施するための形態】
【００１１】
以下に、図１〜２８を参照しながら、本発明に係る画像処理装置、物体認識装置、機器制御システム、画像処理方法およびプログラムの実施の形態を詳細に説明する。また、以下の実施の形態によって本発明が限定されるものではなく、以下の実施の形態における構成要素には、当業者が容易に想到できるもの、実質的に同一のもの、およびいわゆる均等の範囲のものが含まれる。さらに、以下の実施の形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換、変更および組み合わせを行うことができる。
【００１２】
［物体認識装置を備えた車両の概略構成］
図１は、実施の形態に係る機器制御システムを車両に搭載した例を示す図である。図１を参照しながら、本実施の形態の機器制御システム６０が車両７０に搭載される場合を例に説明する。
【００１３】
図１のうち、図１（ａ）は、機器制御システム６０を搭載した車両７０の側面図であり、図１（ｂ）は、車両７０の正面図である。
【００１４】
図１に示すように、自動車である車両７０は、機器制御システム６０を搭載している。機器制御システム６０は、車両７０の居室空間である車室に設置された物体認識装置１と、車両制御装置６（制御装置）と、ステアリングホイール７と、ブレーキペダル８と、を備えている。
【００１５】
物体認識装置１は、車両７０の進行方向を撮像する撮像機能を有し、例えば、車両７０のフロントウィンドウ内側のバックミラー近傍に設置される。物体認識装置１は、構成および動作の詳細は後述するが、本体部２と、本体部２に固定された撮像部１０ａと、撮像部１０ｂとを備えている。撮像部１０ａ、１０ｂは、車両７０の進行方向の被写体を撮像できるように本体部２に固定されている。
【００１６】
車両制御装置６は、物体認識装置１から受信した認識情報に基づいて、各種車両制御を実行するＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）である。車両制御装置６は、車両制御の例として、物体認識装置１から受信した認識情報に基づいて、ステアリングホイール７を含むステアリング系統（制御対象）を制御して障害物を回避するステアリング制御、または、ブレーキペダル８（制御対象）を制御して車両７０を減速および停止させるブレーキ制御等を実行する。
【００１７】
このような物体認識装置１および車両制御装置６を含む機器制御システム６０のように、ステアリング制御またはブレーキ制御等の車両制御が実行されることによって、車両７０の運転の安全性を向上することができる。
【００１８】
なお、上述のように、物体認識装置１は、車両７０の前方を撮像するものとしたが、これに限定されるものではない。すなわち、物体認識装置１は、車両７０の後方または側方を撮像するように設置されるものとしてもよい。この場合、物体認識装置１は、車両７０の後方の後続車および人、または側方の他の車両および人等の位置を検出することができる。そして、車両制御装置６は、車両７０の車線変更時または車線合流時等における危険を検知して、上述の車両制御を実行することができる。また、車両制御装置６は、車両７０の駐車時等におけるバック動作において、物体認識装置１によって出力された車両７０の後方の障害物についての認識情報に基づいて、衝突の危険があると判断した場合に、上述の車両制御を実行することができる。
【００１９】
［物体認識装置の構成］
図２は、実施の形態に係る物体認識装置の外観の一例を示す図である。図２に示すように、物体認識装置１は、上述のように、本体部２と、本体部２に固定された撮像部１０ａと、撮像部１０ｂとを備えている。撮像部１０ａ、１０ｂは、本体部２に対して平行等位に配置された一対の円筒形状のカメラで構成されている。また、説明の便宜上、図２に示す撮像部１０ａを右のカメラと称し、撮像部１０ｂを左のカメラと称する場合がある。
【００２０】
（物体認識装置のハードウェア構成）
図３は、実施の形態に係る物体認識装置のハードウェア構成の一例を示す図である。図３を参照しながら、物体認識装置１のハードウェア構成について説明する。
【００２１】
図３に示すように、物体認識装置１は、本体部２内に視差値導出部３および認識処理部５を備えている。
【００２２】
視差値導出部３は、物体を撮像して得られた複数の画像から、物体に対する視差を示す視差値ｄｐを導出し、各画素における視差値ｄｐを示す視差画像（視差情報の一例）を出力する装置である。認識処理部５は、視差値導出部３から出力された視差画像に基づいて、撮像画像に写り込んでいる人および車等の物体に対する物体認識処理等を行い、物体認識処理の結果を示す情報である認識情報を、車両制御装置６に出力する装置である。
【００２３】
図３に示すように、視差値導出部３は、撮像部１０ａと、撮像部１０ｂと、信号変換部２０ａと、信号変換部２０ｂと、画像処理部３０と、を備えている。
【００２４】
撮像部１０ａは、前方の被写体を撮像してアナログの画像信号を生成する処理部である。撮像部１０ａは、撮像レンズ１１ａと、絞り１２ａと、画像センサ１３ａと、を備えている。
【００２５】
撮像レンズ１１ａは、入射する光を屈折させて物体の像を画像センサ１３ａに結像させるための光学素子である。絞り１２ａは、撮像レンズ１１ａを通過した光の一部を遮ることによって、画像センサ１３ａに入力する光の量を調整する部材である。画像センサ１３ａは、撮像レンズ１１ａに入射し、絞り１２ａを通過した光を電気的なアナログの画像信号に変換する半導体素子である。画像センサ１３ａは、例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅｓ）またはＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）等の固体撮像素子によって実現される。
【００２６】
撮像部１０ｂは、前方の被写体を撮像してアナログの画像信号を生成する処理部である。撮像部１０ｂは、撮像レンズ１１ｂと、絞り１２ｂと、画像センサ１３ｂと、備えている。なお、撮像レンズ１１ｂ、絞り１２ｂおよび画像センサ１３ｂの機能は、それぞれ上述した撮像レンズ１１ａ、絞り１２ａおよび画像センサ１３ａの機能と同様である。また、撮像レンズ１１ａおよび撮像レンズ１１ｂは、左右のカメラが同一の条件で撮像されるように、それぞれのレンズ面が互いに同一平面上にあるように設置されている。
【００２７】
信号変換部２０ａは、撮像部１０ａにより生成されたアナログの画像信号を、デジタル形式の画像データに変換する処理部である。信号変換部２０ａは、ＣＤＳ（Ｃｏｒｒｅｌａｔｅｄ  Ｄｏｕｂｌｅ  Ｓａｍｐｌｉｎｇ）２１ａと、ＡＧＣ（Ａｕｔｏ  Ｇａｉｎ  Ｃｏｎｔｒｏｌ）２２ａと、ＡＤＣ（Ａｎａｌｏｇ  Ｄｉｇｉｔａｌ  Ｃｏｎｖｅｒｔｅｒ）２３ａと、フレームメモリ２４ａと、を備えている。
【００２８】
ＣＤＳ２１ａは、画像センサ１３ａにより生成されたアナログの画像信号に対して、相関二重サンプリング、横方向の微分フィルタ、または縦方向の平滑フィルタ等によりノイズを除去する。ＡＧＣ２２ａは、ＣＤＳ２１ａによってノイズが除去されたアナログの画像信号の強度を制御する利得制御を行う。ＡＤＣ２３ａは、ＡＧＣ２２ａによって利得制御されたアナログの画像信号をデジタル形式の画像データに変換する。フレームメモリ２４ａは、ＡＤＣ２３ａによって変換された画像データを記憶する。
【００２９】
信号変換部２０ｂは、撮像部１０ｂにより生成されたアナログの画像信号を、デジタル形式の画像データに変換する処理部である。信号変換部２０ｂは、ＣＤＳ２１ｂと、ＡＧＣ２２ｂと、ＡＤＣ２３ｂと、フレームメモリ２４ｂと、を備えている。なお、ＣＤＳ２１ｂ、ＡＧＣ２２ｂ、ＡＤＣ２３ｂおよびフレームメモリ２４ｂの機能は、それぞれ上述したＣＤＳ２１ａ、ＡＧＣ２２ａ、ＡＤＣ２３ａおよびフレームメモリ２４ａの機能と同様である。
【００３０】
画像処理部３０は、信号変換部２０ａおよび信号変換部２０ｂによって変換された画像データに対して画像処理をする装置である。画像処理部３０は、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）３１と、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３２と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３３と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３４と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３５と、バスライン３９と、を備えている。
【００３１】
ＦＰＧＡ３１は、集積回路であり、ここでは、画像データに基づく画像における視差値ｄｐを導出する処理を行う。ＣＰＵ３２は、視差値導出部３の各機能を制御する。ＲＯＭ３３は、ＣＰＵ３２が視差値導出部３の各機能を制御するために実行する画像処理用プログラムを記憶している。ＲＡＭ３４は、ＣＰＵ３２のワークエリアとして使用される。Ｉ／Ｆ３５は、認識処理部５におけるＩ／Ｆ５５と、通信線４とを介して通信するためのインターフェースである。バスライン３９は、図３に示すように、ＦＰＧＡ３１、ＣＰＵ３２、ＲＯＭ３３、ＲＡＭ３４およびＩ／Ｆ３５が互いに通信可能となるように接続するアドレスバスおよびデータバス等である。
【００３２】
なお、画像処理部３０は、視差値ｄｐを導出する集積回路としてＦＰＧＡ３１を備えるものとしているが、これに限定されるものではなく、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等の集積回路であってもよい。
【００３３】
図３に示すように、認識処理部５は、ＦＰＧＡ５１と、ＣＰＵ５２と、ＲＯＭ５３と、ＲＡＭ５４と、Ｉ／Ｆ５５と、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）Ｉ／Ｆ５８と、バスライン５９と、を備えている。
【００３４】
ＦＰＧＡ５１は、集積回路であり、ここでは、画像処理部３０から受信した視差画像に基づいて、物体に対する物体認識処理を行う。ＣＰＵ５２は、認識処理部５の各機能を制御する。ＲＯＭ５３は、ＣＰＵ５２が認識処理部５の物体認識処理を実行する物体認識処理用プログラムを記憶している。ＲＡＭ５４は、ＣＰＵ５２のワークエリアとして使用される。Ｉ／Ｆ５５は、画像処理部３０のＩ／Ｆ３５と、通信線４とを介してデータ通信するためのインターフェースである。ＣＡＮＩ／Ｆ５８は、外部コントローラ（例えば、図６に示す車両制御装置６）と通信するためのインターフェースであり、例えば、自動車のＣＡＮ等に接続されるバスライン５９は、図３に示すように、ＦＰＧＡ５１、ＣＰＵ５２、ＲＯＭ５３、ＲＡＭ５４、Ｉ／Ｆ５５およびＣＡＮＩ／Ｆ５８が互いに通信可能となるように接続するアドレスバスおよびデータバス等である。
【００３５】
このような構成により、画像処理部３０のＩ／Ｆ３５から通信線４を介して認識処理部５に視差画像が送信されると、認識処理部５におけるＣＰＵ５２の命令によって、ＦＰＧＡ５１が、視差画像に基づいて、撮像画像に写り込んでいる人および車等の物体の物体認識処理等を実行する。
【００３６】
なお、上述の各プログラムは、インストール可能な形式または実行可能な形式のファイルで、コンピュータで読み取り可能な記録媒体に記録して流通させてもよい。この記録媒体は、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）またはＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリカード等である。
【００３７】
また、図３に示すように、視差値導出部３の画像処理部３０と、認識処理部５とは別体の装置としているが、これに限定されるものではなく、例えば、画像処理部３０と認識処理部５とを同一の装置として、視差画像の生成、および物体認識処理を行うものとしてもよい。
【００３８】
（物体認識装置の機能ブロックの構成および動作）
図４は、実施の形態に係る物体認識装置の機能ブロック構成の一例を示す図である。まず、図４を参照しながら、物体認識装置１の要部の機能ブロックの構成および動作について説明する。
【００３９】
図３でも上述したが、図４に示すように、物体認識装置１は、視差値導出部３と、認識処理部５と、を備えている。このうち、視差値導出部３は、画像取得部１００ａ（第１撮像手段）と、画像取得部１００ｂ（第２撮像手段）と、変換部２００ａ、２００ｂと、視差値演算処理部３００（生成手段）と、を有する。
【００４０】
画像取得部１００ａは、右のカメラにより前方の被写体を撮像して、アナログの画像信号を生成し、画像信号に基づく画像である輝度画像を得る機能部である。画像取得部１００ａは、図３に示す撮像部１０ａによって実現される。
【００４１】
画像取得部１００ｂは、左のカメラにより前方の被写体を撮像して、アナログの画像信号を生成し、画像信号に基づく画像である輝度画像を得る機能部である。画像取得部１００ｂは、図３に示す撮像部１０ｂによって実現される。
【００４２】
変換部２００ａは、画像取得部１００ａにより得られた輝度画像の画像データに対して、ノイズを除去し、デジタル形式の画像データに変換して出力する機能部である。変換部２００ａは、図３に示す信号変換部２０ａによって実現される。
【００４３】
変換部２００ｂは、画像取得部１００ｂにより得られた輝度画像の画像データに対して、ノイズを除去し、デジタル形式の画像データに変換して出力する機能部である。変換部２００ｂは、図３に示す信号変換部２０ｂによって実現される。
【００４４】
ここで、変換部２００ａ、２００ｂが出力する２つの輝度画像の画像データ（以下、単に、輝度画像と称する）のうち、右のカメラ（撮像部１０ａ）である画像取得部１００ａにより撮像された輝度画像を基準画像Ｉａの画像データ（以下、単に、基準画像Ｉａと称する）（第１撮像画像）とし、左のカメラ（撮像部１０ｂ）である画像取得部１００ｂにより撮像された輝度画像を比較画像Ｉｂの画像データ（以下、単に、比較画像Ｉｂと称する）（第２撮像画像）とする。すなわち、変換部２００ａ、２００ｂは、画像取得部１００ａ、１００ｂそれぞれから出力された２つの輝度画像に基づいて、それぞれ基準画像Ｉａおよび比較画像Ｉｂを出力する。
【００４５】
視差値演算処理部３００は、変換部２００ａ、２００ｂそれぞれから受信した基準画像Ｉａおよび比較画像Ｉｂに基づいて、基準画像Ｉａの各画素についての視差値を導出し、基準画像Ｉａの各画素に視差値を対応させた視差画像を生成する機能部である。視差値演算処理部３００は、生成した視差画像を、認識処理部５に出力する。
【００４６】
認識処理部５は、視差値導出部３から受信した基準画像Ｉａおよび視差画像に基づいて、物体を認識（検出）し、かつ、認識した物体を追跡（トラッキング）する機能部である。
【００４７】
＜視差値演算処理部の機能ブロックの構成および動作＞
図５は、実施の形態に係る物体認識装置の視差値演算処理部の機能ブロック構成の一例を示す図である。図６は、撮像部から物体までの距離を導き出す原理を説明する図である。図７は、基準画像における基準画素に対応する比較画像における対応画素を求める場合の説明図である。図８は、ブロックマッチング処理の結果のグラフの一例を示す図である。
【００４８】
まず、図６〜８を用いて、ブロックマッチング処理による測距方法の概略について説明する。
【００４９】
＜＜測距の原理＞＞
図６を参照しながら、ステレオマッチング処理により、ステレオカメラから物体に対する視差を導出し、この視差を示す視差値によって、ステレオカメラから物体までの距離を測定する原理について説明する。
【００５０】
図６に示す撮像システムは、平行等位に配置された撮像部１０ａと撮像部１０ｂとを有するものとする。撮像部１０ａ、１０ｂは、それぞれ、入射する光を屈折させて物体の像を固体撮像素子である画像センサに結像させる撮像レンズ１１ａ、１１ｂを有する。撮像部１０ａおよび撮像部１０ｂによって撮像された各画像を、それぞれ基準画像Ｉａおよび比較画像Ｉｂとする。図６において、３次元空間内の物体Ｅ上の点Ｓは、基準画像Ｉａおよび比較画像Ｉｂそれぞれにおいて、撮像レンズ１１ａと撮像レンズ１１ｂとを結ぶ直線と平行な直線上の位置に写像される。ここで、各画像に写像された点Ｓを、基準画像Ｉａにおいて点Ｓａ（ｘ，ｙ）とし、比較画像Ｉｂにおいて点Ｓｂ（Ｘ，ｙ）とする。このとき、視差値ｄｐは、基準画像Ｉａ上の座標における点Ｓａ（ｘ，ｙ）と比較画像Ｉｂ上の座標における点Ｓｂ（Ｘ，ｙ）とを用いて、以下の（式１）のように表される。
【００５１】
ｄｐ＝Ｘ−ｘ                                      （式１）
【００５２】
また、図６において、基準画像Ｉａにおける点Ｓａ（ｘ，ｙ）と撮像レンズ１１ａから撮像面上におろした垂線の交点との距離をΔａとし、比較画像Ｉｂにおける点Ｓｂ（Ｘ，ｙ）と撮像レンズ１１ｂから撮像面上におろした垂線の交点との距離をΔｂにすると、視差値ｄｐは、ｄｐ＝Δａ＋Δｂと表すこともできる。
【００５３】
次に、視差値ｄｐを用いることにより、撮像部１０ａ、１０ｂと物体Ｅとの間の距離Ｚを導出する。ここで、距離Ｚは、撮像レンズ１１ａの焦点位置と撮像レンズ１１ｂの焦点位置とを結ぶ直線から物体Ｅ上の点Ｓまでの距離である。図６に示すように、撮像レンズ１１ａおよび撮像レンズ１１ｂの焦点距離ｆ、撮像レンズ１１ａと撮像レンズ１１ｂとの間の長さである基線長Ｂ、および視差値ｄｐを用いて、下記の（式２）により、距離Ｚを算出することができる。
【００５４】
Ｚ＝（Ｂ×ｆ）／ｄｐ                              （式２）
【００５５】
この（式２）により、視差値ｄｐが大きいほど距離Ｚは小さく、視差値ｄｐが小さいほど距離Ｚは大きくなることがわかる。
【００５６】
＜＜ブロックマッチング処理＞＞
次に、図７および８を用いて、ブロックマッチング処理による測距方法について説明する。
【００５７】
図７および８を参照しながら、コスト値Ｃ（ｐ，ｄ）の算出方法について説明する。なお、以降、Ｃ（ｐ，ｄ）は、Ｃ（ｘ，ｙ，ｄ）を表すものとして説明する。
【００５８】
図７のうち、図７（ａ）は、基準画像Ｉａにおける基準画素ｐおよび基準領域ｐｂを示す概念図を示し、図７（ｂ）は、図７（ａ）に示す基準画素ｐに対応する比較画像Ｉｂにおける対応画素の候補を順次シフトしながら（ずらしながら）、コスト値Ｃを算出する際の概念図である。ここで、対応画素とは、基準画像Ｉａにおける基準画素ｐに最も類似する比較画像Ｉｂにおける画素を示す。また、コスト値Ｃとは、基準画像Ｉａにおける基準画素ｐに対する、比較画像Ｉｂにおける各画素の類似度または非類似度を表す評価値（一致度）である。以下に示すコスト値Ｃは、値が小さいほど、比較画像Ｉｂにおける画素が基準画素ｐと類似していることを示す非類似度を表す評価値であるものとして説明する。
【００５９】
図７（ａ）に示すように、基準画像Ｉａにおける基準画素ｐ（ｘ，ｙ）、および、基準画素ｐ（ｘ，ｙ）に対する比較画像Ｉｂにおけるエピポーラ線ＥＬ上の対応画素の候補である候補画素ｑ（ｘ＋ｄ，ｙ）の各輝度値（画素値）に基づいて、基準画素ｐ（ｘ，ｙ）に対する対応画素の候補である候補画素ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）が算出される。ｄは、基準画素ｐと候補画素ｑとのシフト量（ずれ量）であり、シフト量ｄは、画素単位でシフトされる。すなわち、候補画素ｑ（ｘ＋ｄ，ｙ）を予め指定された範囲（例えば、０＜ｄ＜２５）において順次一画素分シフトしながら、候補画素ｑ（ｘ＋ｄ，ｙ）と基準画素ｐ（ｘ，ｙ）との輝度値の非類似度であるコスト値Ｃ（ｐ，ｄ）が算出される。また、基準画素ｐの対応画素を求めるためステレオマッチング処理として、本実施の形態ではブロックマッチング処理を行う。ブロックマッチング処理では、基準画像Ｉａの基準画素ｐを中心とする所定領域である基準領域ｐｂと、比較画像Ｉｂの候補画素ｑを中心とする候補領域ｑｂ（大きさは基準領域ｐｂと同一）との非類似度を求める。基準領域ｐｂと候補領域ｑｂとの非類似度を示すコスト値Ｃとしては、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）、ＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）、または、ＳＳＤの値から各ブロックの平均値を減算したＺＳＳＤ（Ｚｅｒｏ−ｍｅａｎ−Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）等が用いられる。これらの評価値は、相関が高い（類似の度合いが高い）ほど、値が小さくなるので非類似度を示す。
【００６０】
なお、上述のように、撮像部１０ａ、１０ｂは、それぞれ平行等位に配置されるため、基準画像Ｉａおよび比較画像Ｉｂも、それぞれ平行等位の関係にある。したがって、基準画像Ｉａにおける基準画素ｐに対応する比較画像Ｉｂにおける対応画素は、図７に紙面視横方向の線として示されるエピポーラ線ＥＬ上に存在することになり、比較画像Ｉｂにおける対応画素を求めるためには、比較画像Ｉｂのエピポーラ線ＥＬ上の画素を探索すればよい。
【００６１】
このようなブロックマッチング処理で算出されたコスト値Ｃ（ｐ，ｄ）は、シフト量ｄとの関係で、例えば、図８に示すグラフにより表される。図８の例では、コスト値Ｃは、シフト量ｄ＝７の場合が最小値となるため、視差値ｄｐ＝７として導出される。
【００６２】
＜＜視差値演算処理部の機能ブロックの具体的な構成および動作＞＞
図５を参照しながら、視差値演算処理部３００の機能ブロックの具体的な構成および動作について説明する。
【００６３】
図５に示すように、視差値演算処理部３００は、コスト算出部３０１と、決定部３０２と、第１生成部３０３と、を有する。
【００６４】
コスト算出部３０１は、基準画像Ｉａにおける基準画素ｐ（ｘ，ｙ）の輝度値、および、基準画素ｐ（ｘ，ｙ）に基づく比較画像Ｉｂにおけるエピポーラ線ＥＬ上で、基準画素ｐ（ｘ，ｙ）の位置に相当する画素からシフト量ｄでシフトすることにより特定される、対応画素の候補である候補画素ｑ（ｘ＋ｄ，ｙ）の各輝度値に基づいて、各候補画素ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）を算出する機能部である。具体的には、コスト算出部３０１は、ブロックマッチング処理により、基準画像Ｉａの基準画素ｐを中心とする所定領域である基準領域ｐｂと、比較画像Ｉｂの候補画素ｑを中心とする候補領域ｑｂ（大きさは基準領域ｐｂと同一）との非類似度をコスト値Ｃとして算出する。
【００６５】
決定部３０２は、コスト算出部３０１により算出されたコスト値Ｃの最小値に対応するシフト量ｄを、コスト値Ｃの算出の対象となった基準画像Ｉａの画素についての視差値ｄｐとして決定する機能部である。
【００６６】
第１生成部３０３は、決定部３０２により決定された視差値ｄｐに基づいて、基準画像Ｉａの各画素の画素値を、その画素に対応する視差値ｄｐで置き換えた画像である視差画像を生成する機能部である。
【００６７】
図５に示すコスト算出部３０１、決定部３０２および第１生成部３０３は、それぞれ図３に示すＦＰＧＡ３１によって実現される。なお、コスト算出部３０１、決定部３０２および第１生成部３０３の一部または全部は、ハードウェア回路であるＦＰＧＡ３１ではなく、ＲＯＭ３３に記憶されているプログラムがＣＰＵ３２によって実行されることによって実現されるものとしてもよい。
【００６８】
なお、図５に示す視差値演算処理部３００のコスト算出部３０１、決定部３０２および第１生成部３０３は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図５に示す視差値演算処理部３００で独立した機能部として図示した複数の機能部を、１つの機能部として構成してもよい。一方、図５に示す視差値演算処理部３００で１つの機能部が有する機能を複数に分割し、複数の機能部として構成するものとしてもよい。
【００６９】
＜認識処理部の機能ブロックの構成および動作＞
図９は、実施の形態に係る物体認識装置の認識処理部の機能ブロック構成の一例を示す図である。図１０は、視差画像から生成されるＶマップの例を示す図である。図１１は、視差画像から生成されるＵマップの例を示す図である。図１２は、Ｕマップから生成されるリアルＵマップの例を示す図である。図１３は、検出枠を作成する処理を説明する図である。図９〜１３を参照しながら、認識処理部５の機能ブロックの構成および動作について説明する。
【００７０】
図９に示すように、認識処理部５は、第２生成部５００と、クラスタリング処理部５１０（検出手段）と、トラッキング処理部５２０と、を有する。
【００７１】
第２生成部５００は、視差値演算処理部３００から視差画像を入力し、かつ、視差値導出部３から基準画像Ｉａを入力し、Ｖ−Ｄｉｓｐａｒｉｔｙマップ、Ｕ−Ｄｉｓｐａｒｉｔｙマップ、およびＲｅａｌ  Ｕ−Ｄｉｓｐａｒｉｔｙマップ等を生成する機能部である。具体的には、第２生成部５００は、視差値演算処理部３００から入力した視差画像から路面を検出するために、図１０（ｂ）に示すＶ−ＤｉｓｐａｒｉｔｙマップであるＶマップＶＭを生成する。ここで、Ｖ−Ｄｉｓｐａｒｉｔｙマップとは、縦軸を基準画像Ｉａのｙ軸とし、横軸を視差画像の視差値ｄｐ（または距離）とした、視差値ｄｐの頻度分布を示す二次元ヒストグラムである。図１０（ａ）に示す基準画像Ｉａには、例えば、路面７００と、電柱７０１と、車７０２とが写り込んでいる。この基準画像Ｉａの路面７００は、ＶマップＶＭにおいては路面部７００ａに対応し、電柱７０１は、電柱部７０１ａに対応し、車７０２は、車部７０２ａに対応する。
【００７２】
また、第２生成部５００は、生成したＶマップＶＭから、路面と推定される位置を直線近似する。路面が平坦な場合は、１本の直線で近似可能であるが、勾配が変わる路面の場合は、ＶマップＶＭの区間を分割して精度よく直線近似する必要がある。直線近似としては、公知技術であるハフ変換または最小二乗法等が利用できる。ＶマップＶＭにおいて、検出された路面部７００ａより上方に位置する塊である電柱部７０１ａおよび車部７０２ａは、それぞれ路面上の物体である電柱７０１および車７０２に相当する。後述する第２生成部５００によりＵ−Ｄｉｓｐａｒｉｔｙマップが生成される際に、ノイズ除去のため路面より上方の情報のみが用いられる。
【００７３】
また、第２生成部５００は、ＶマップＶＭで検出された路面より上方に位置する情報のみを利用、すなわち、図１１（ａ）に示す基準画像Ｉａでは左ガードレール７１１、右ガードレール７１２、車７１３および車７１４に対応する視差画像上の情報を利用して、物体を認識するために、図１１（ｂ）に示すＵ−ＤｉｓｐａｒｉｔｙマップであるＵマップＵＭを生成する。ここで、ＵマップＵＭは、横軸を基準画像Ｉａのｘ軸とし、縦軸を視差画像の視差値ｄｐ（または距離）とした、視差値ｄｐの頻度分布を示す二次元ヒストグラムである。図１１（ａ）に示す基準画像Ｉａの左ガードレール７１１は、ＵマップＵＭにおいては左ガードレール部７１１ａに対応し、右ガードレール７１２は、右ガードレール部７１２ａに対応し、車７１３は、車部７１３ａに対応し、車７１４は、車部７１４ａに対応する。
【００７４】
また、第２生成部５００は、生成した図１２（ａ）に示すＵマップＵＭから、横軸を実際の距離に変換した図１２（ｂ）に示すＲｅａｌ  Ｕ−ＤｉｓｐａｒｉｔｙマップであるリアルＵマップＲＭを生成する。ここで、リアルＵマップＲＭは、横軸を、撮像部１０ｂ（左のカメラ）から撮像部１０ａ（右のカメラ）向かう方向の実距離とし、縦軸を、視差画像の視差値ｄｐ（またはその視差値ｄｐから変換した奥行き方向の距離）とした二次元ヒストグラムである。図１２（ａ）に示すＵマップＵＭの左ガードレール部７１１ａは、リアルＵマップＲＭにおいては左ガードレール部７１１ｂに対応し、右ガードレール部７１２ａは、右ガードレール部７１２ｂに対応し、車部７１３ａは、車部７１３ｂに対応し、車部７１４ａは、車部７１４ｂに対応する。具体的には、第２生成部５００は、ＵマップＵＭでは、遠方（視差値ｄｐが小さい）では物体が小さいため、視差情報が少なく、距離の分解能も小さいので間引きせず、近距離の場合は物体が大きく写るため、視差情報が多く、距離の分解能も大きいので画素を大きく間引くことによって、リアルＵマップＲＭを生成する。後述するように、クラスタリング処理部５１０により、リアルＵマップＲＭから画素値の塊（物体）を抽出して物体を検出することができる。この場合、塊を囲む矩形の幅は、抽出した物体の幅に相当し、高さは、抽出した物体の奥行きに相当する。なお、第２生成部５００は、ＵマップＵＭからリアルＵマップＲＭを生成することに限定されるものではなく、視差画像から、直接、リアルＵマップＲＭを生成することも可能である。
【００７５】
なお、視差値導出部３から第２生成部５００に入力される画像は基準画像Ｉａに限定されるものではなく、比較画像Ｉｂを対象とするものとしてもよい。また、本実施形態においては、視差値が距離値と等価に扱えることから距離画像の一例として視差画像を用いる例を説明するが、これに限定されるものではない。例えば、レーザーレーダまたはミリ波レーダの距離情報と上述の視差値とを統合して、画像座標と対応付けて距離画像とし、この距離画像を用いてクラスタリング処理を行ってもよい。
【００７６】
クラスタリング処理部５１０は、第２生成部５００から入力された各マップに基づいて、視差画像に写っている物体を検出する機能部である。クラスタリング処理部５１０は、生成したＵマップＵＭまたはリアルＵマップＲＭから、物体の視差画像および基準画像Ｉａにおけるｘ軸方向の位置および幅（ｘｍｉｎ，ｘｍａｘ）を特定できる。また、クラスタリング処理部５１０は、生成したＵマップＵＭまたはリアルＵマップＲＭでの物体の高さの情報（ｄｍｉｎ，ｄｍａｘ）から物体の実際の奥行きを特定できる。また、クラスタリング処理部５１０は、生成したＶマップＶＭから、物体の視差画像および基準画像Ｉａにおけるｙ軸方向の位置および高さ（ｙｍｉｎ＝「最大視差値の路面からの最大高さに相当するｙ座標」，ｙｍａｘ＝「最大視差値から得られる路面の高さを示すｙ座標」）を特定できる。また、クラスタリング処理部５１０は、視差画像において特定した物体のｘ軸方向の幅（ｘｍｉｎ，ｘｍａｘ）、ｙ軸方向の高さ（ｙｍｉｎ，ｙｍａｘ）およびそれぞれに対応する視差値ｄｐから、物体の実際のｘ軸方向およびｙ軸方向のサイズが特定できる。以上のように、クラスタリング処理部５１０は、ＶマップＶＭ、ＵマップＵＭおよびリアルＵマップＲＭを利用して、基準画像Ｉａでの物体の位置、ならびに実際の幅、高さおよび奥行きを特定することができる。また、クラスタリング処理部５１０は、基準画像Ｉａでの物体の位置が特定されるので、視差画像における位置も定まり、物体までの距離も特定できる。
【００７７】
そして、クラスタリング処理部５１０は、最終的に、図１３（ａ）に示すように、リアルＵマップＲＭ上で特定（検出）した物体の検出領域７２１〜７２４にそれぞれ対応するように、図１３（ｂ）に示す基準画像Ｉａまたは視差画像Ｉｐ上で検出枠７２１ａ〜７２４ａを作成する。
【００７８】
また、クラスタリング処理部５１０は、物体について特定した実際のサイズ（幅、高さ、奥行き）から、下記の（表１）を用いて、物体が何であるかを特定することができる。例えば、物体の幅が１３００［ｍｍ］、高さが１８００［ｍｍ］、奥行きが２０００［ｍｍ］である場合、物体は「普通車」であると特定できる。なお、（表１）のような幅、高さおよび奥行きと、物体の種類（物体タイプ）とを関連付ける情報をテーブルとして、ＲＡＭ５４等に記憶させておくものとすればよい。
【００７９】
【表１】
2017138245.tif 000003
【００８０】
図９に示す認識処理部５の第２生成部５００およびクラスタリング処理部５１０は、それぞれ図３に示すＦＰＧＡ５１によって実現される。なお、第２生成部５００およびクラスタリング処理部５１０の一部または全部は、ハードウェア回路であるＦＰＧＡ５１ではなく、ＲＯＭ５３に記憶されているプログラムがＣＰＵ５２により実行されることによって実現されるものとしてもよい。
【００８１】
トラッキング処理部５２０は、クラスタリング処理部５１０により検出（認識）された物体に関する情報である認識領域情報に基づいて、その物体を棄却したり、追跡処理をしたりするトラッキング処理を実行する機能部である。トラッキング処理部５２０の具体的な構成は、後述する図１４で説明する。ここで、棄却とは、その物体を後段の処理（追跡処理等）の対象外とする処理を示す。また、認識領域情報とは、クラスタリング処理部５１０により検出された物体に関する情報を示し、例えば、検出した物体の基準画像Ｉａ、視差画像Ｉｐ、Ｖ−Ｄｉｓｐａｒｉｔｙマップ、Ｕ−Ｄｉｓｐａｒｉｔｙマップ、およびＲｅａｌ  Ｕ−Ｄｉｓｐａｒｉｔｙマップ等における位置および大きさ、検出した物体の種類ならびに、ｘ上述の棄却フラグ等の情報を含む。
【００８２】
なお、本発明に係る「画像処理装置」は、トラッキング処理部５２０であってもよく、トラッキング処理部５２０を含む認識処理部５であってもよい。
【００８３】
＜＜トラッキング処理部の機能ブロックの構成および動作＞＞
図１４は、実施の形態に係る物体認識装置の認識処理部のトラッキング処理部の機能ブロック構成の一例を示す図である。図１４を参照しながら、認識処理部５のトラッキング処理部５２０の機能ブロックの構成および動作について説明する。
【００８４】
図１４に示すように、トラッキング処理部５２０は、移動予測部６００（予測手段）と、マッチング部６１０と、チェック部６２０と、特徴更新部６３０と、状態遷移部６４０と、を有する。
【００８５】
移動予測部６００は、クラスタリング処理部５１０により新規検出された物体のこれまでの移動および動作状態の履歴、ならびに車両情報を用いて、これまで追従（トラッキング）してきた物体ごとに、現在の輝度画像（以下、単に「フレーム」という場合がある）上で物体が存在する確率が高い予測領域を予測する機能部である。移動予測部６００は、前回のフレーム（以下、単に「前フレーム」という場合がある）までの移動情報（例えば、重心の相対位置履歴および相対速度履歴等)、および車両情報を用いて、ｘｚ平面（ｘ：フレーム横位置、z：距離）で物体の動きを予測する。なお、移動予測部６００は、予測以上の動きを持つ物体に対応するために、前回予測した予測領域よりも拡大する処理を行ってもよい。また、上述の移動情報は、各検出された物体ごとの認識領域情報に含まれるものとしてもよい。以下の説明では、認識領域情報は上述の移動情報を含むものとして説明する。
【００８６】
マッチング部６１０は、移動予測部６００により予測された予測領域内における前フレームで求めた特徴量（テンプレート）との類似度に基づくテンプレートマッチングを行い、現在のフレーム（以下、単に「現在フレーム」という）における物体の位置を求める機能部である。マッチング部６１０は、判定部６１１（判定手段）と、第１間引き処理部６１２と、第１テンプレートマッチング部６１３と、補正処理部６１４と、第３間引き処理部６１５と、第２テンプレートマッチング部６１６と、第３テンプレートマッチング部６１７と、を有する。
【００８７】
判定部６１１は、前フレームまでの認識領域情報に基づいて、その認識領域情報に対応する物体の距離を推測し、推測した距離が所定距離以上であるか否かを判定する機能部である。ここで、以下の説明で、上述の所定距離以上の距離を「遠距離」（第２距離域）と、所定距離未満の距離を「近距離」（第１距離域）という場合があるものとする。
【００８８】
第１間引き処理部６１２は、移動予測部６００により予測された現在フレームでの予測領域の画像を所定の間引き量（第１間引き量）に基づいて間引き処理を行う機能部である。
【００８９】
第１テンプレートマッチング部６１３は、現在フレームにおいて、第１間引き処理部６１２により間引き処理が行われた予測領域内で、前フレームで求めたテンプレートに基づくテンプレートマッチングを行う機能部である。
【００９０】
補正処理部６１４は、第１テンプレートマッチング部６１３によるテンプレートマッチングにより検出された検出領域（第２検出領域）の枠（検出枠）について補正処理を行う機能部である。補正処理部６１４により特定の物体の検出枠について補正処理が行われた検出枠の画像が、現在フレームでのその物体の検出領域となる。
【００９１】
なお、第１間引き処理部６１２、第１テンプレートマッチング部６１３および補正処理部６１４は、本発明の「第１マッチング処理手段」に相当する。
【００９２】
第３間引き処理部６１５は、移動予測部６００により予測された現在フレームでの予測領域の画像を所定の間引き量（例えば、第１間引き処理部６１２の間引き量よりも小さい量とする）（第２間引き量）に基づいて間引き処理を行う機能部である。
【００９３】
第２テンプレートマッチング部６１６は、現在フレームにおいて、第３間引き処理部６１５により間引き処理が行われた予測領域内で、前フレームで求めたテンプレートに基づくテンプレートマッチングを行う機能部である。
【００９４】
第３テンプレートマッチング部６１７は、現在フレームで第２テンプレートマッチング部６１６によるテンプレートマッチングで検出された物体の検出領域（第４検出領域）内で、後述するパーツテンプレートに基づくテンプレートマッチングを行う機能である。第３テンプレートマッチング部６１７により検出されたパーツマッチングに類似する領域の位置に基づいて、現在フレームの物体の検出枠が補正される。
【００９５】
なお、第３間引き処理部６１５、第２テンプレートマッチング部６１６および第３テンプレートマッチング部６１７は、本発明の「第２マッチング処理手段」に相当する。
【００９６】
チェック部６２０は、マッチング部６１０により検出された物体の検出領域の大きさに基づいて、トラッキングの目的とする物体（例えば、車両）の大きさに対応するか否かをチェックする機能である。
【００９７】
特徴更新部６３０は、現在フレームで検出された物体の検出領域の画像から、次のフレームにおいて第１テンプレートマッチング部６１３または第２テンプレートマッチング部６１６のテンプレートマッチングで用いる特徴量（テンプレート）を作成して更新する機能部である。特徴更新部６３０は、第２間引き処理部６３１（第１間引き手段）と、第１更新部６３２と、第４間引き処理部６３３（第２間引き手段）と、第２更新部６３４と、パーツテンプレート選択部６３５（選択手段）と、第３更新部６３６と、を有する。
【００９８】
第２間引き処理部６３１は、現在フレームにおいて、補正処理部６１４により最終的に定まった物体の検出領域（第１検出領域）の画像を所定の間引き量（第１間引き量）に基づいて間引き処理を行って、次のフレームで用いるテンプレート（間引きテンプレート）（第１テンプレート）を作成する機能部である。
【００９９】
第１更新部６３２は、第２間引き処理部６３１により作成された間引きテンプレートを、前回使用された間引きテンプレートに代えて更新（例えば、ＲＡＭ５４に記憶）する機能部である。
【０１００】
第４間引き処理部６３３は、現在フレームにおいて、第３テンプレートマッチング部６１７により最終的に定まった物体の検出領域（第３検出領域）の画像を所定の間引き量に基づいて間引き処理を行って、次のフレームで用いるテンプレート（間引きテンプレート）（第２テンプレート）を作成する機能部である。
【０１０１】
第２更新部６３４は、第４間引き処理部６３３により作成された間引きテンプレートを、前回使用された間引きテンプレートに代えて更新（例えば、ＲＡＭ５４に記憶）する機能部である。
【０１０２】
パーツテンプレート選択部６３５は、現在フレームにおいて、第３テンプレートマッチング部６１７により最終的に定まった物体の検出領域の画像から、所定の条件を満たす部分画像（パーツテンプレート）を選択する機能部である。
【０１０３】
第３更新部６３６は、パーツテンプレート選択部６３５により選択されたパーツテンプレートを、前回使用されたパーツテンプレートに代えて更新（例えば、ＲＡＭ５４に記憶）する機能部である。
【０１０４】
状態遷移部６４０は、補正処理部６１４または第３テンプレートマッチング部６１７により最終的に定まった物体の検出領域の状態に応じて、物体の状態を遷移させる機能部である。状態遷移部６４０は、遷移させた物体の状態を反映させた認識領域情報を、車両制御装置６に出力する。例えば、状態遷移部６４０は、チェック部６２０によるチェックの結果、検出領域の大きさがトラッキングの目的とする物体の大きさに対応しないと判断した場合、追跡対象から外す（棄却する）旨のフラグを認識領域情報に含めて、トラッキングの対象外の状態に遷移させるものとしてもよい。
【０１０５】
図１４に示す移動予測部６００、マッチング部６１０の判定部６１１、第１間引き処理部６１２、第１テンプレートマッチング部６１３、補正処理部６１４、第３間引き処理部６１５、第２テンプレートマッチング部６１６および第３テンプレートマッチング部６１７、チェック部６２０、特徴更新部６３０の第２間引き処理部６３１、第１更新部６３２、第４間引き処理部６３３、第２更新部６３４、パーツテンプレート選択部６３５および第３更新部６３６、ならびに、状態遷移部６４０は、それぞれ図３に示すＦＰＧＡ５１によって実現される。なお、これらの機能部の一部または全部は、ハードウェア回路であるＦＰＧＡ５１ではなく、ＲＯＭ５３に記憶されているプログラムがＣＰＵ５２によって実行されることによって実現されるものとしてもよい。
【０１０６】
なお、図１４に示すトラッキング処理部５２０の各機能部は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図１４に示すトラッキング処理部５２０で独立した機能部として図示した複数の機能部を、１つの機能部として構成してもよい。一方、図１４に示すトラッキング処理部５２０で１つの機能部が有する機能を複数に分割し、複数の機能部として構成するものとしてもよい。
【０１０７】
［物体認識装置の動作］
次に、図１５〜２８を参照しながら、物体認識装置１の具体的な動作について説明する。
【０１０８】
（視差値導出部のブロックマッチング処理）
図１５は、実施の形態に係る視差値導出部のブロックマッチング処理の動作の一例を示すフローチャートである。図１５を参照しながら、物体認識装置１の視差値導出部３のブロックマッチング処理の動作の流れについて説明する。
【０１０９】
＜ステップＳ１−１＞
視差値導出部３の画像取得部１００ｂは、左のカメラ（撮像部１０ｂ）により前方の被写体を撮像して、それぞれアナログの画像信号を生成し、その画像信号に基づく画像である輝度画像を得る。これによって、後段の画像処理の対象となる画像信号が得られることになる。そして、ステップＳ２−１へ移行する。
【０１１０】
＜ステップＳ１−２＞
視差値導出部３の画像取得部１００ａは、右のカメラ（撮像部１０ａ）により前方の被写体を撮像して、それぞれアナログの画像信号を生成し、その画像信号に基づく画像である輝度画像を得る。これによって、後段の画像処理の対象となる画像信号が得られることになる。そして、ステップＳ２−２へ移行する。
【０１１１】
＜ステップＳ２−１＞
視差値導出部３の変換部２００ｂは、撮像部１０ｂにより撮像されて得られたアナログの画像信号に対して、ノイズを除去し、デジタル形式の画像データに変換する。このように、デジタル形式の画像データに変換することによって、その画像データに基づく画像に対して画素ごとの画像処理が可能となる。そして、ステップＳ３−１へ移行する。
【０１１２】
＜ステップＳ２−２＞
視差値導出部３の変換部２００ａは、撮像部１０ａにより撮像されて得られたアナログの画像信号に対して、ノイズを除去し、デジタル形式の画像データに変換する。このように、デジタル形式の画像データに変換することによって、その画像データに基づく画像に対して画素ごとの画像処理が可能となる。そして、ステップＳ３−２へ移行する。
【０１１３】
＜ステップＳ３−１＞
変換部２００ｂは、ステップＳ２−１において変換したデジタル形式の画像データに基づく画像をブロックマッチング処理における比較画像Ｉｂとして出力する。これによって、ブロックマッチング処理において視差値を求めるための比較対象となる画像を得る。そして、ステップＳ４へ移行する。
【０１１４】
＜ステップＳ３−２＞
変換部２００ａは、ステップＳ２−２において変換したデジタル形式の画像データに基づく画像をブロックマッチング処理における基準画像Ｉａとして出力する。これによって、ブロックマッチング処理において視差値を求めるための基準となる画像を得る。そして、ステップＳ４へ移行する。
【０１１５】
＜ステップＳ４＞
視差値導出部３の視差値演算処理部３００のコスト算出部３０１は、基準画像Ｉａにおける基準画素ｐ（ｘ，ｙ）の輝度値、および、基準画素ｐ（ｘ，ｙ）に基づく比較画像Ｉｂにおけるエピポーラ線ＥＬ上で、基準画素ｐ（ｘ，ｙ）の位置に相当する画素からシフト量ｄでシフトすることにより特定される、対応画素の候補画素ｑ（ｘ＋ｄ，ｙ）の各輝度値に基づいて、各候補画素ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）を算出することにより取得する。具体的には、コスト算出部３０１は、ブロックマッチング処理により、基準画像Ｉａの基準画素ｐを中心とする所定領域である基準領域ｐｂと、比較画像Ｉｂの候補画素ｑを中心とする候補領域ｑｂ（大きさは基準領域ｐｂと同一）との非類似度をコスト値Ｃとして算出する。そして、ステップＳ５へ進む。
【０１１６】
＜ステップＳ５＞
視差値導出部３の視差値演算処理部３００の決定部３０２は、コスト算出部３０１により算出されたコスト値Ｃの最小値に対応するシフト量ｄを、コスト値Ｃの算出の対象となった基準画像Ｉａの画素についての視差値ｄｐとして決定する。そして、視差値導出部３の視差値演算処理部３００の第１生成部３０３は、決定部３０２により決定された視差値ｄｐに基づいて、基準画像Ｉａの各画素の輝度値を、その画素に対応する視差値ｄｐで表した画像である視差画像を生成する。生成部３０３は、生成した視差画像を、認識処理部５に出力する。
【０１１７】
なお、上述のステレオマッチング処理は、ブロックマッチング処理を例として説明したが、これに限定されるものではなく、ＳＧＭ（Ｓｅｍｉ−Ｇｌｏｂａｌ  Ｍａｔｃｈｉｎｇ）法を用いた処理であってもよい。
【０１１８】
（認識処理部のトラッキング処理部のトラッキング処理）
図１６は、実施の形態に係る認識処理部のトラッキング処理部のトラッキング処理の動作の一例を示すフローチャートである。図１７は、移動予測の動作を説明する図である。図１６および１７を参照しながら、認識処理部５のトラッキング処理部５２０のトラッキング処理の動作の流れについて説明する。
【０１１９】
＜ステップＳ１１＞
トラッキング処理部５２０の移動予測部６００は、前段のクラスタリング処理部５１０により新規検出された物体のこれまでの移動および動作状態の履歴、ならびに車両情報を含む認識領域情報を用いて、これまで追従（トラッキング）してきた物体ごとに、図１７に示すように、現在フレーム（基準画像Ｉａ）上で物体が存在する確率が高い予測領域８００を特定する。そして、ステップＳ１２へ移行する。
【０１２０】
＜ステップＳ１２＞
トラッキング処理部５２０のマッチング部６１０は、予測領域８００内における前フレームで求めた特徴量（テンプレート）との類似度に基づくテンプレートマッチングを行い、現在フレーム上で物体を検出する。マッチング部６１０によるマッチング処理の詳細は、図１８、２１および２７で後述する。そして、ステップＳ１３へ移行する。
【０１２１】
＜ステップＳ１３＞
トラッキング処理部５２０のチェック部６２０は、マッチング部６１０により検出された物体の検出領域の大きさに基づいて、トラッキングの目的とする物体（例えば、車両）の大きさに対応するか否かをチェックする。そして、ステップＳ１４へ移行する。
【０１２２】
＜ステップＳ１４＞
トラッキング処理部５２０の特徴更新部６３０は、現在フレームで検出された物体の検出領域の画像から、次のフレームにおいて第１テンプレートマッチング部６１３、または第２テンプレートマッチング部６１６および第３テンプレートマッチング部６１７のテンプレートマッチングで用いる特徴量（テンプレート）を作成して更新する。特徴更新部６３０による特徴更新処理の詳細は、図１９および２４で後述する。そして、ステップＳ１５へ移行する。
【０１２３】
＜ステップＳ１５＞
トラッキング処理部５２０の状態遷移部６４０は、補正処理部６１４または第３テンプレートマッチング部６１７により最終的に定まった物体の検出領域の状態に応じて、物体の状態を遷移させる機能部である。状態遷移部６４０は、遷移させた物体の状態を反映させた認識領域情報を、車両制御装置６に出力する。
【０１２４】
以上のステップＳ１１〜Ｓ１５の処理により、トラッキング処理部５２０によるトラッキング処理が行われる。なお、ステップＳ１１〜Ｓ１５の処理は、クラスタリング処理部５１０により検出された物体の検出領域ごとに実行される。
【０１２５】
（トラッキング処理におけるマッチング処理）
図１８は、実施の形態のトラッキング処理部のトラッキング処理のうちのマッチング処理の動作の一例を示すフローチャートである。図１８を参照しながら、トラッキング処理部５２０のマッチング部６１０のマッチング処理の動作の流れについて説明する。
【０１２６】
＜ステップＳ１２１＞
マッチング部６１０の判定部６１１は、前フレームまでの認識領域情報に基づいて、その認識領域情報に対応する物体の距離を推測し、推測した距離が所定距離以上であるか否かを判定する。推測した距離が所定距離未満の近距離である場合（ステップＳ１２１：近距離）、ステップＳ１２２へ移行し、所定距離以上の遠距離である場合（ステップＳ１２１：遠距離）、ステップＳ１２３へ移行する。
【０１２７】
＜ステップＳ１２２＞
マッチング部６１０の第１間引き処理部６１２、第１テンプレートマッチング部６１３、および補正処理部６１４は、前フレームで検出された検出領域に基づくテンプレートを用いたラフマッチング処理を行う。ラフマッチング処理の詳細は、図２１〜２３で後述する。そして、マッチング処理を終了する。
【０１２８】
＜ステップＳ１２３＞
マッチング部６１０の第３間引き処理部６１５、第２テンプレートマッチング部６１６、および第３テンプレートマッチング部６１７は、前フレームで検出された検出領域に基づくテンプレートを用いたパーツマッチング処理を行う。パーツマッチング処理の詳細は、図２７および２８で後述する。そして、マッチング処理を終了する。
【０１２９】
以上のステップＳ１２１〜Ｓ１２３の処理により、トラッキング処理部５２０のマッチング部６１０によるマッチング処理（トラッキング処理のうちのマッチング処理）が行われる。また、上述のマッチング処理を含むトラッキング処理は繰り返し実行されるので、ラフマッチング処理およびパーツマッチング処理のうち、いずれかのマッチング処理で検出されていた物体は、次に推測される距離に応じて、マッチング処理の方法が切り替えられる場合もあり得る。例えば、推測された距離が近距離でラフマッチング処理が実行されていた物体が、時間経過により、推測された距離が遠距離となった場合、パーツマッチング処理に切り替えられる。
【０１３０】
（トラッキング処理のうちラフマッチング処理を行う場合の特徴更新処理）
図１９は、実施の形態のトラッキング処理部のトラッキング処理のうちラフマッチングを行う場合の特徴更新処理の動作の一例を示すフローチャートである。図２０は、実施の形態のトラッキング処理部のラフマッチングを行う場合の特徴更新処理における検出領域の画像に対する間引き処理を説明する図である。図１９および２０を参照しながら、マッチング部６１０においてラフマッチング処理を行う場合の特徴更新部６３０の特徴更新処理の動作の流れについて説明する。図１９に示す特徴更新処理は、図１６におけるステップＳ１２でラフマッチング処理を行う場合に、ステップＳ１４で実行される特徴更新処理である。
【０１３１】
＜ステップＳ１４１＞
特徴更新部６３０の第２間引き処理部６３１は、現在フレームにおいて、マッチング部６１０によるラフマッチング処理で検出された物体の検出領域から間引きテンプレートを作成するための間引き量を決定する。例えば、図２０（ａ）に示す検出領域８１０が、ラフマッチング処理で検出された物体（車両）の検出領域であるものとし、かつ、横方向に幅Ｗｄ［ピクセル］、縦方向に高さＨｄ［ピクセル］の大きさの領域であるものとする。そして、図２０（ｂ）に示す間引きテンプレート８１１が、第２間引き処理部６３１による間引き処理後の画像であり、かつ、横方向に幅Ｗｄ＿ｓ［ピクセル］、縦方向に高さＨｄ＿ｓ［ピクセル］の大きさのテンプレートであるものとする。この場合、第２間引き処理部６３１は、間引きテンプレート８１１の高さＨｄ＿ｓが固定値ｃ［ピクセル］（＜Ｈｄ）となるように、かつ、間引きテンプレート８１１の幅と高さとの割合が、検出領域８１０の幅と高さとの割合と一致するように、検出領域８１０に対して間引き処理を行う。すなわち、第２間引き処理部６３１による間引き処理の間引き量、すなわち、間引きテンプレート８１１の高さＨｄ＿ｓおよび幅Ｗｄ＿ｓは、以下の（式３）で算出される。
【０１３２】
Ｈｄ＿ｓ＝ｃ
Ｗｄ＿ｓ＝（Ｗｄ／Ｈｄ）×Ｈｄ＿ｓ
ＦＨ＝Ｈｄ＿ｓ／Ｈｄ
ＦＷ＝Ｗｄ＿ｓ／Ｗｄ                              （式３）
【０１３３】
また、（式３）中のＦＨは、高さＨｄに対する高さＨｄ＿ｓの割合であり、ＦＷは、幅Ｗｄに対する幅Ｗｄ＿ｓの割合である。
【０１３４】
このように、間引き処理後の間引きテンプレート８１１の高さＨｄ＿ｓを固定値となるように間引き量を決定することによって、現在フレームで検出された検出領域８１０の大きさに対して、次のフレームでのマッチング処理の処理速度が依存することを軽減することができる。なお、上述では間引きテンプレート８１１の高さＨｄ＿ｓが固定値となるように間引き量を決定するものとしているが、これに限定されるものではなく、幅Ｗｄ＿ｓが固定値となるように間引き量を決定するものとしてもよい。ただし、物体が車両である場合、幅よりも高さの方が車両によって変動しやすいので、変動が大きい高さ方向の幅を固定する方が、物体による処理速度の変動を抑制できる効果がある。そして、ステップＳ１４２へ移行する。
【０１３５】
＜ステップＳ１４２＞
第２間引き処理部６３１は、上述の（式３）で決定（算出）した間引き量に基づいて、検出領域８１０に対して間引き処理を行い、間引きテンプレート８１１を作成する。そして、ステップＳ１４３へ移行する。
【０１３６】
＜ステップＳ１４３＞
特徴更新部６３０の第１更新部６３２は、第２間引き処理部６３１により作成された間引きテンプレート８１１を、前回ラフマッチング処理に使用された間引きテンプレートに代えて更新（例えば、ＲＡＭ５４に記憶）する。作成された間引きテンプレート８１１は、次のフレームでのラフマッチング処理で使用される。また、第１更新部６３２は、ステップＳ１４１で算出された上述の（式３）の割合ＦＨおよびＦＷを、ＲＡＭ５４等に記憶させる。この割合ＦＨおよびＦＷは、次のフレームでの予測領域の画像の間引き処理（後述）で使用される。そして、特徴更新処理を終了する。
【０１３７】
以上のステップＳ１４１〜Ｓ１４３の処理により、マッチング部６１０においてラフマッチング処理を行う場合の特徴更新部６３０の特徴更新処理が行われる。
【０１３８】
（トラッキング処理において近距離の場合のラフマッチング処理）
図２１は、実施の形態のトラッキング処理部のトラッキング処理におけるラフマッチング処理の動作の一例を示すフローチャートである。図２２は、実施の形態のトラッキング処理部のトラッキング処理におけるラフマッチング処理での予測領域の画像に対する間引き処理を説明する図である。図２３は、実施の形態のトラッキング処理部のトラッキング処理におけるラフマッチング処理での枠補正処理を説明する図である。図２１〜２３を参照しながら、トラッキング処理のうち、マッチング部６１０のラフマッチング処理の動作の流れについて説明する。図２１に示すラフマッチング処理は、図１８においてステップＳ１２２で実行されるラフマッチング処理である。
【０１３９】
＜ステップＳ１２２１＞
マッチング部６１０の第１間引き処理部６１２は、移動予測部６００により予測された現在フレームでの予測領域８００（図２２（ａ）参照）の画像を所定の間引き量に基づいて間引き処理を行い、図２２（ｂ）に示す間引き予測領域８０１を得る。具体的には、第１間引き処理部６１２は、前フレームについて、第１更新部６３２によりＲＡＭ５４等に記憶された上述の（式３）に示す割合ＦＨおよびＦＷを用いて、高さＨｐおよび幅Ｗｐの予測領域８００に対し、下記の（式４）により算出した高さＨｐ＿ｓおよび幅Ｗｐ＿ｓの大きさの間引き予測領域８０１となるように間引き処理を行う。
【０１４０】
Ｈｐ＿ｓ＝ＦＨ×Ｈｐ
Ｗｐ＿ｓ＝ＦＷ×Ｈｐ＿ｓ                          （式４）
【０１４１】
このように、現在フレームにおける第１間引き処理部６１２による予測領域８００に対する間引きの割合は、上述した前フレームにおける第２間引き処理部６３１による検出領域８１０に対する間引きの割合と、同一にしている。異なる間引きの割合で予測領域８００を間引いた場合、本来の物体のサイズが同じ物体に対してテンプレートマッチングしても、間引き予測領域では物体のサイズが異なるサイズとなり、精度よく物体を検出できなくなるところ、同一の間引きの割合で予測領域８００を間引いて間引き予測領域８０１を作成しているので、精度よく物体を検出できる。そして、ステップＳ１２２２へ移行する。
【０１４２】
＜ステップＳ１２２２＞
マッチング部６１０の第１テンプレートマッチング部６１３は、現在フレームにおいて、第１間引き処理部６１２により間引き処理が行われた間引き予測領域８０１内で、前フレームについて第１更新部６３２により更新された間引きテンプレート８１１に基づくテンプレートマッチングを行う。すなわち、第１テンプレートマッチング部６１３は、間引き予測領域８０１内で、間引きテンプレート８１１と一致する、または、一致するとみなせる画像を検出する。ここで、間引き予測領域８０１内で、間引きテンプレート８１１との類似度を示す評価値としては、ＳＡＤ等を用いることができる。第１テンプレートマッチング部６１３は、間引き予測領域８０１内をラスタスキャンしながら、間引きテンプレート８１１に基づくＳＡＤを算出し、ＳＡＤが最も小さい画像の位置を求める。間引き予測領域８０１内で最もＳＡＤが小さい画像の位置としては、例えば、間引き予測領域８０１におけるその画像の左上端の位置（ｐｘ＿ｔｈｉｎ，ｐｙ＿ｔｈｉｎ）を求める。
【０１４３】
また、第１テンプレートマッチング部６１３は、間引き予測領域８０１内で検出した画像の位置（ｐｘ＿ｔｈｉｎ，ｐｙ＿ｔｈｉｎ）から、下記の（式５）を用いて、検出した画像の枠を、間引く前の大きさに戻した画像の枠について、予測領域８００内における位置（ｐｘ，ｐｙ）を算出する。
【０１４４】
ｐｘ＝ｐｘ＿ｔｈｉｎ×ＦＷ
ｐｙ＝ｐｙ＿ｔｈｉｎ×ＦＨ                        （式５）
【０１４５】
これによって、第１テンプレートマッチング部６１３は、現在フレームにおいて、予測領域８００で検出された物体の画像（検出領域）の枠（図２３に示す検出枠８２０）の位置を求めることができ、さらには、現在フレームにおける検出領域の位置を求めることができる。このように、第１テンプレートマッチング部６１３は、間引き処理が行われた間引き予測領域８０１に対して、同じ間引き量により間引き処理が行われた間引きテンプレート８１１についてのテンプレートマッチングを行うので、元々のフレームよりも画素数が少ない画像についての画像処理とすることができ、処理速度を向上させることができる。
【０１４６】
ただし、ここで求められた予測領域８００における検出領域の位置は、予測領域８００を間引き処理した間引き予測領域８０１におけるテンプレートマッチングにより検出した画像に対して、間引く前の大きさに戻したときの位置なので、量子化誤差を含んでいることになる。そして、ステップＳ１２２３へ移行する。
【０１４７】
＜ステップＳ１２２３＞
マッチング部６１０の補正処理部６１４は、現在フレームにおいて、第１テンプレートマッチング部６１３によるテンプレートマッチングにより検出された物体の画像（検出領域）の枠（図２３に示す検出枠８２０）について補正処理を行う。具体的には、補正処理部６１４は、まず、図２３に示すように、第１テンプレートマッチング部６１３により検出された検出枠８２０に対応する視差画像（現在フレームに対応る視差画像）上の画像について、Ｘ方向で視差値を含む画素の頻度を示すヒストグラム９００、および、Ｙ方向で視差値を含む画素の頻度を示すヒストグラム９０１を作成する。そして、補正処理部６１４は、図２３に示すように、ヒストグラム９００において閾値Ｔｈを超えるＸ方向の位置を、それぞれ、補正後の検出枠８２１の左端および右端の位置とし、ヒストグラム９０１において閾値Ｔｈを超えるＹ方向の位置を、それぞれ、補正後の検出枠８２１の上端および下端の位置とする。閾値Ｔｈは、例えば、ヒストグラムの最大値に対して１０〜２０［％］の値とすればよい。この場合、図２３ではＸ方向およびＹ方向の閾値を、閾値Ｔｈとしているが、同一の閾値である必要はない。このようにして、補正処理部６１４により補正処理が行われた検出枠８２１の画像が、マッチング部６１０によるラフマッチング処理によって最終的に検出された検出領域となる。そして、補正処理部６１４は、検出した物体の検出領域の情報（フレームに対する位置、および大きさ等）を、その物体の認識領域情報に含める。
【０１４８】
このように、補正処理部６１４によって検出領域の枠である検出枠８２０に対して補正処理が行われることによって、上述の量子化誤差を緩和することが可能になる。また、第１テンプレートマッチング部６１３によるテンプレートマッチングは、フレーム全体ではなく、予測領域８００に対して行っているので、処理速度を向上させることができる。そして、ラフマッチング処理を終了する。
【０１４９】
以上のステップＳ１２２１〜Ｓ１２２３の処理により、マッチング部６１０のラフマッチング処理が行われる。
【０１５０】
（トラッキング処理のうちパーツマッチング処理を行う場合の特徴更新処理）
図２４は、実施の形態のトラッキング処理部のトラッキング処理のうちパーツマッチングを行う場合の特徴更新処理の動作の一例を示すフローチャートである。図２５は、実施の形態のトラッキング処理部のパーツマッチングを行う場合の特徴更新処理におけるパーツテンプレートの選択処理の動作の一例を示すフローチャートである。図２６は、パーツテンプレートの選択処理を説明する図である。図２４〜２６を参照しながら、マッチング部６１０においてパーツマッチング処理を行う場合の特徴更新部６３０の特徴更新処理の動作の流れについて説明する。図２４に示す特徴更新処理は、図１６においてステップＳ１２でパーツマッチング処理を行う場合に、ステップＳ１４で実行される特徴更新処理である。
【０１５１】
＜ステップＳ１４５＞
特徴更新部６３０の第４間引き処理部６３３は、現在フレームにおいて、マッチング部６１０によるパーツマッチング処理で検出された物体の検出領域から間引きテンプレートを作成するための間引き量を決定する。第４間引き処理部６３３による間引き量の決定方法は、上述の図１９のステップＳ１４１の第２間引き処理部６３１による間引き量の決定方法と同様である。ただし、図２４に示す特徴更新処理は、判定部６１１により物体が遠距離にある場合に実行されるものであり、フレームに写っている物体は近距離に比べて小さいので、第２間引き処理部６３１による間引き量よりも小さい間引き量とする。例えば、間引きテンプレートの高さＨｄ＿ｓを、固定値ｃよりも値が小さい固定値とする。そして、ステップＳ１４６へ移行する。
【０１５２】
＜ステップＳ１４６＞
第４間引き処理部６３３は、ステップＳ１４５で決定（算出）した間引き量に基づいて、現在フレームで検出された検出領域に対して間引き処理を行い、間引きテンプレートを作成する。そして、ステップＳ１４７へ移行する。
【０１５３】
＜ステップＳ１４７＞
特徴更新部６３０の第２更新部６３４は、第４間引き処理部６３３により作成された間引きテンプレートを、前回パーツマッチング処理に使用された間引きテンプレートに代えて更新（例えば、ＲＡＭ５４に記憶）する。作成された間引きテンプレートは、次のフレームでのパーツマッチング処理で使用される。また、第２更新部６３４は、ステップＳ１４５で算出された、上述の図１９のステップＳ１４１の（式３）の割合ＦＨおよびＦＷにそれぞれ対応する割合を、ＲＡＭ５４等に記憶させる。この割合は、次のフレームでの予測領域の画像の間引き処理（後述）で使用される。そして、ステップＳ１４８へ移行する。
【０１５４】
＜ステップＳ１４８＞
特徴更新部６３０のパーツテンプレート選択部６３５は、現在フレームにおいて、第３テンプレートマッチング部６１７により最終的に定まった物体の検出領域の画像から、所定の条件を満たす部分画像（パーツテンプレート）を選択する。このパーツテンプレート選択部６３５による選択処理を、図２５のステップＳ１４８１〜Ｓ１４８８の処理、および図２６を参照しながら、詳述する。
【０１５５】
＜＜ステップＳ１４８１＞＞
パーツテンプレート選択部６３５は、現在フレームにおいて、パーツマッチング処理により検出された図２６（ａ）に示す検出領域８３０内の左上端および右下端に、それぞれ仮枠８４０、８４１を作成する。そして、ステップＳ１４８２へ移行する。
【０１５６】
＜＜ステップＳ１４８２＞＞
パーツテンプレート選択部６３５は、検出領域８３０の左上端の仮枠８４０内に対応する視差画像（現在フレームに対応する視差画像）上の画像において、有効な視差値を有する画素の数（以下、「視差点数」という場合がある）をカウントする。ここで、有効な視差値を有する画素とは、例えば、視差値を有さない画素、または、非常に遠方の距離を視差値、すなわち非常に値が小さい視差値を有する画素ではない画像を示す。そして、ステップＳ１４８３へ移行する。
【０１５７】
＜＜ステップＳ１４８３＞＞
パーツテンプレート選択部６３５は、仮枠８４０内の面積に対する、カウントした視差点数の画素が占める面積の割合が所定の閾値以上であるか否かを判定する。割合が所定の閾値以上（ステップＳ１４８３：Ｙｅｓ）である場合、ステップＳ１４８５へ移行し、割合が所定の閾値未満（ステップＳ１４８３：Ｎｏ）である場合、ステップＳ１４８４へ移行する。例えば、図２６（ａ）に示した状態の仮枠８４０内の画像である仮枠内画像８５０には、有効な視差値が少ない、すなわち、仮枠内画像８５０に含まれる物体（車両）の部分が少ないため、後述するパーツマッチング処理での効果的なテンプレートマッチングができない。そのため、後述のステップＳ１４８４の処理を行う必要がある。
【０１５８】
＜＜ステップＳ１４８４＞＞
パーツテンプレート選択部６３５は、検出領域８３０上で、仮枠８４０の位置を現在の位置から検出領域８３０の内側に向かって所定量ずらす。例えば、パーツテンプレート選択部６３５は、仮枠８４０の位置を現在の位置から、Ｎ画素分（Ｎは所定値）右にずらし、かつＮ画素分下にずらすものとしてもよく、または検出領域８３０の中心に向かって所定量だけずらすものとしてもよい。そして、ステップＳ１４８２へ戻る。
【０１５９】
＜＜ステップＳ１４８５＞＞
パーツテンプレート選択部６３５は、検出領域８３０の右下端の仮枠８４１内に対応する視差画像（現在フレームに対応する視差画像）上の画像において、有効な視差値を有する画素の数（視差点数）をカウントする。そして、ステップＳ１４８６へ移行する。
【０１６０】
＜＜ステップＳ１４８６＞＞
パーツテンプレート選択部６３５は、仮枠８４１内の面積に対する、カウントした視差点数の画素が占める面積の割合が所定の閾値以上であるか否かを判定する。割合が所定の閾値以上（ステップＳ１４８６：Ｙｅｓ）である場合、ステップＳ１４８８へ移行し、割合が所定の閾値未満（ステップＳ１４８６：Ｎｏ）である場合、ステップＳ１４８７へ移行する。例えば、図２６（ａ）に示した状態の仮枠８４１内の画像である仮枠内画像８５１には、有効な視差値が多く、すなわち、仮枠内画像８５１に含まれる物体（車両）の部分が多いため、後述するパーツマッチング処理での効果的なテンプレートマッチングができる。
【０１６１】
＜＜ステップＳ１４８７＞＞
パーツテンプレート選択部６３５は、検出領域８３０上で、仮枠８４１の位置を現在の位置から検出領域８３０の内側に向かって所定量ずらす。例えば、パーツテンプレート選択部６３５は、仮枠８４１の位置を現在の位置から、Ｎ画素分（Ｎは所定値）左にずらし、かつＮ画素分上にずらすものとしてもよく、または検出領域８３０の中心に向かって所定量だけずらすものとしてもよい。そして、ステップＳ１４８５へ戻る。
【０１６２】
＜＜ステップＳ１４８８＞＞
パーツテンプレート選択部６３５は、上述のステップＳ１４８１〜Ｓ１４８７の処理の結果、検出領域８３０における現在の位置の２つの仮枠の画像をパーツテンプレートとして選択する。図２６の例では、検出領域８３０上で最初に作成した左上端の仮枠８４０内の画像において視差点数の画素が占める面積の割合が所定の閾値未満であるので、ステップＳ１４８４の処理により、図２６（ｂ）に示すように検出領域８３０の内側にずらして所定の閾値以上となるようにした仮枠８４０ａの画像である仮枠内画像８５０ａをパーツテンプレートとして選択している。また、検出領域８３０上で最初に作成した右下端の仮枠８４１内の画像において視差点数の画素が占める面積の割合が所定の閾値以上であるので、仮枠８４１の画像である仮枠内画像８５１をパーツテンプレートとして選択している。
【０１６３】
以上のステップＳ１４８１〜Ｓ１４８８によって、パーツテンプレート選択部６３５による選択処理が実行される。そして、図２４のフローへ戻り、ステップＳ１４９へ移行する。
【０１６４】
＜ステップＳ１４９＞
特徴更新部６３０の第３更新部６３６は、パーツテンプレート選択部６３５により選択された２つのパーツテンプレートを、前回パーツマッチング処理に使用された２つのパーツテンプレートに代えて更新（例えば、ＲＡＭ５４に記憶）する。選択されたパーツテンプレートは、次のフレームでのパーツマッチング処理で使用される。そして、特徴更新処理を終了する。
【０１６５】
以上のステップＳ１４５〜Ｓ１４９の処理により、マッチング部６１０においてパーツマッチング処理を行う場合の特徴更新部６３０の特徴更新処理が行われる。
【０１６６】
（トラッキング処理において遠距離の場合のパーツマッチング処理）
図２７は、実施の形態のトラッキング処理部のトラッキング処理におけるパーツマッチング処理の動作の一例を示すフローチャートである。図２８は、パーツマッチング処理を説明する図である。図２７および２８を参照しながら、トラッキング処理のうち、マッチング部６１０のパーツマッチング処理の動作の流れについて説明する。図２７に示すパーツマッチング処理は、図１８においてステップＳ１２３で実行されるパーツマッチング処理である。
【０１６７】
＜ステップＳ１２３１＞
マッチング部６１０の第３間引き処理部６１５は、移動予測部６００により予測された現在フレーム（図２８（ａ）に示す基準画像Ｉａ）での予測領域８００（図２８（ｂ）参照）の画像を所定の間引き量（例えば、第１間引き処理部６１２の間引き量よりも小さい量とする）に基づいて間引き処理を行い、間引き予測領域を得る。具体的には、第３間引き処理部６１５は、前フレームについて、第２更新部６３４によりＲＡＭ５４等に記憶された割合（図２４のステップＳ１４７参照）を用いて、予測領域に対し、上述の図２１のステップＳ１２２１と同様の間引き処理を行う。
【０１６８】
このように、現在フレームにおける第３間引き処理部６１５による予測領域８００に対する間引きの割合は、上述した前フレームにおける第４間引き処理部６３３による検出領域に対する間引きの割合と、同一にしている。異なる間引きの割合で予測領域８００を間引いた場合、本来の物体のサイズが同じ物体に対してテンプレートマッチングしても、間引き予測領域では物体のサイズが異なるサイズとなり、精度よく物体を検出できなくなるところ、同一の間引きの割合で予測領域８００を間引いて間引き予測領域を作成しているので、精度よく物体を検出できる。そして、ステップＳ１２３２へ移行する。
【０１６９】
＜ステップＳ１２３２＞
マッチング部６１０の第２テンプレートマッチング部６１６は、現在フレームにおいて、第３間引き処理部６１５により間引き処理が行われた間引き予測領域内で、前フレームについて第２更新部６３４により更新された間引きテンプレートに基づくテンプレートマッチングを行う。すなわち、第２テンプレートマッチング部６１６は、間引き予測領域内で、間引きテンプレートと一致する、または、一致するとみなせる画像を検出する。ここで、間引き予測領域内で、間引きテンプレートとの類似度を示す評価値としては、ＳＡＤ等を用いることができる。第２テンプレートマッチング部６１６は、間引き予測領域内をラスタスキャンしながら、間引きテンプレートに基づくＳＡＤを算出し、ＳＡＤが最も小さい画像の位置を求める。間引き予測領域内で最もＳＡＤが小さい画像の位置としては、例えば、間引き予測領域におけるその画像の左上端の位置を求める。
【０１７０】
また、第２テンプレートマッチング部６１６は、間引き予測領域内で検出した画像の位置から、上述の（式５）を用いて、検出した画像の枠を、間引く前の大きさに戻した画像の枠について、予測領域８００内における位置を算出する。
【０１７１】
これによって、第２テンプレートマッチング部６１６は、現在フレームにおいて、予測領域８００で検出された物体の画像（図２８（ｃ）に示す検出領域８６０）の枠の位置を求めることができる。このように、第２テンプレートマッチング部６１６は、間引き処理が行われた間引き予測領域に対して、同じ間引き量により間引き処理が行われた間引きテンプレートについてのテンプレートマッチングを行うので、元々のフレームよりも画素数が少ない画像についての画像処理とすることができ、処理速度を向上させることができる。
【０１７２】
ただし、ここで求められた予測領域８００における検出領域の位置は、予測領域８００を間引き処理した間引き予測領域におけるテンプレートマッチングにより検出した画像に対して、間引く前の大きさ戻したときの位置なので、量子化誤差を含んでいることになる。そして、ステップＳ１２３３へ移行する。
【０１７３】
＜ステップＳ１２３３＞
マッチング部６１０の第３テンプレートマッチング部６１７は、現在フレームにおいて、第２テンプレートマッチング部６１６によるテンプレートマッチングにより検出された検出領域８６０内で、前フレームについて第３更新部６３６により更新された２つのパーツテンプレート（図２８（ｄ）に示すパーツテンプレート８７０、８７１）に基づくテンプレートマッチングを行う。すなわち、第３テンプレートマッチング部６１７は、検出領域８６０内で、パーツテンプレート８７０、８７１とそれぞれ一致する、または、一致するとみなせる（以下、単に「一致する」という）画像を検出する。ここで、パーツテンプレート８７０、８７１は、上述の図２６（ｂ）に示す仮枠内画像８５０ａ、８５１にそれぞれ対応する。検出領域８６０内で、パーツテンプレート８７０、８７１との類似度を示す評価値としては、ＳＡＤ等を用いることができる。第３テンプレートマッチング部６１７は、検出領域８６０内をラスタスキャンしながら、パーツテンプレート８７０、８７１に基づくＳＡＤをそれぞれ算出し、ＳＡＤが最も小さい画像の位置をそれぞれ求める。
【０１７４】
そして、第３テンプレートマッチング部６１７は、図２８（ｅ）に示すように、検出領域８６０上でパーツテンプレート８７０、８７１とそれぞれ一致する画像の位置（図２８（ｅ）では、一致した位置をパーツテンプレート８７０、８７１の位置で示している）に基づいて、検出領域８６０を補正する。具体的には、第３テンプレートマッチング部６１７は、図２８（ｅ）に示すように、検出領域８６０において、パーツテンプレート８７０と一致した画像の左上端の位置のＸ方向座標を補正後の検出領域の左端の位置とし、Ｙ方向座標を補正後の検出領域の上端とする。同様に、第３テンプレートマッチング部６１７は、図２８（ｅ）に示すように、検出領域８６０において、パーツテンプレート８７１と一致した画像の右下端の位置のＸ方向座標を補正後の検出領域の右端の位置とし、Ｙ方向座標を補正後の検出領域の下端とする。このように、第３テンプレートマッチング部６１７は、検出領域８６０に対し、パーツテンプレート８７０、８７１に基づいて求めた左端、上端、右端および下端によって定まる領域を、補正後の検出領域とする。このようにして、第３テンプレートマッチング部６１７によって検出領域８６０に対する補正後の検出領域が、マッチング部６１０によるパーツマッチング処理によって最終的に検出された検出領域となる。そして、第３テンプレートマッチング部６１７は、検出した物体の検出領域の情報（フレームに対する位置、および大きさ等）を、その物体の認識領域情報に含める。
【０１７５】
このように、第３テンプレートマッチング部６１７による検出領域８６０に対する補正処理により、最終的な検出領域の四隅を精度よく決定することができるので、上述の量子化誤差を緩和することが可能になる。これによって、遠距離の物体に対しても、安定してトラッキング（追従）することができる。また、第２テンプレートマッチング部６１６によるテンプレートマッチングは、フレーム全体ではなく、予測領域８００に対して行っているので、処理速度を向上させることができる。そして、パーツマッチング処理を終了する。
【０１７６】
以上のステップＳ１２３１〜Ｓ１２３３の処理により、マッチング部６１０のパーツマッチング処理が行われる。
【０１７７】
以上のように、本実施の形態に係る物体認識装置１のトラッキング処理では、物体の距離に応じて、マッチング処理の方式を切り替えるものとしている。すなわち、物体の距離が近距離の場合、検出領域の画素数が多いので大幅に画素を間引いた間引き予測領域および間引きテンプレートでテンプレートマッチングを行うラフマッチング処理を行う。また、物体の距離が遠距離の場合、ラフマッチング処理と同様に間引き予測領域および間引きテンプレートでテンプレートマッチングを行って物体の大まかな位置を特定し、パーツテンプレートによるテンプレートマッチングを行うパーツマッチング処理を行う。これは、近距離の場合は、遠距離の場合と比べて、物体の姿勢変化が大きいため、パーツマッチング処理を適用した場合、作成したパーツテンプレートが本来追従すべき物体の部分でないところに作成されてしまう可能性がある。そのため、近距離の場合は、パーツマッチング処理ではなく、枠の補正処理により検出領域の検出精度を高めるラフマッチング処理を採用するものとしている。一方、遠距離の場合は、近距離の場合と比べて、検出領域の視差値が不安定であることが多く、そのため検出領域の境界も不安定になる可能性がある。そのため、遠距離の場合は、ラフマッチング処理ではなく、パーツテンプレートを利用したテンプレートマッチングによる補正処理により検出領域の検出精度を高めるパーツマッチング処理を採用するものとしている。このように、物体の距離に応じて好適または最適なマッチング方式を選択した結果、物体の検出の精度を向上させることができる。特に、近距離の場合、検出領域の画素数が多いので大幅に画素を間引いた後にテンプレートマッチングを行うのでマッチング処理の処理速度を向上させることができ、中距離の場合、パーツテンプレートによるテンプレートマッチングを行うので検出領域を精度よく求めることができる。
【０１７８】
また、マッチング処理におけるラフマッチング処理およびパーツマッチング処理のいずれにおいても、間引き処理を用いたテンプレートマッチングを行っているので処理速度を向上させることができる。また、間引き処理後のテンプレートマッチングによる検出領域の検出後、その検出領域に対して、補正処理部６１４による枠の補正処理、および、第３テンプレートマッチング部６１７のパーツテンプレートを用いたテンプレートマッチングによる補正処理によって精度よく検出領域を求めることができるので、トラッキングの精度を向上させることができる。
【０１７９】
なお、上述の実施の形態では、トラッキング処理の対象となる物体として車両を例にして説明したが、これに限定されるものではなく、車両と同様に形状変化が小さい物体に対するトラッキング処理についても有効である。
【０１８０】
また、上述の実施の形態では、コスト値Ｃは非類似度を表す評価値としているが、類似度を表す評価値であってもよい。この場合、類似度であるコスト値Ｃが最大（極値）となるシフト量ｄが視差値ｄｐとなる。
【０１８１】
また、上述の実施の形態では、車両７０としての自動車に搭載される物体認識装置１について説明したが、これに限定されるものではない。例えば、他の車両の一例としてバイク、自転車、車椅子または農業用の耕運機等の車両に搭載されるものとしてもよい。また、移動体の一例としての車両だけでなく、ロボット等の移動体であってもよい。
【０１８２】
また、上述の実施の形態において、物体認識装置１の視差値導出部３および認識処理部５の各機能部の少なくともいずれかがプログラムの実行によって実現される場合、そのプログラムは、ＲＯＭ等に予め組み込まれて提供される。また、上述の実施の形態に係る物体認識装置１で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅｃｏｒｄａｂｌｅ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、上述の実施の形態の物体認識装置１で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述の実施の形態の物体認識装置１で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、上述の実施の形態の物体認識装置１で実行されるプログラムは、上述した各機能部のうち少なくともいずれかを含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ５２（ＣＰＵ３２）が上述のＲＯＭ５３（ＲＯＭ３３）からプログラムを読み出して実行することにより、上述の各機能部が主記憶装置（ＲＡＭ５４（ＲＡＭ３４）等）上にロードされて生成されるようになっている。
【符号の説明】
【０１８３】
１  物体認識装置
２  本体部
３  視差値導出部
４  通信線
５  認識処理部
６  車両制御装置
７  ステアリングホイール
８  ブレーキペダル
１０ａ、１０ｂ  撮像部
１１ａ、１１ｂ  撮像レンズ
１２ａ、１２ｂ  絞り
１３ａ、１３ｂ  画像センサ
２０ａ、２０ｂ  信号変換部
２１ａ、２１ｂ  ＣＤＳ
２２ａ、２２ｂ  ＡＧＣ
２３ａ、２３ｂ  ＡＤＣ
２４ａ、２４ｂ  フレームメモリ
３０  画像処理部
３１  ＦＰＧＡ
３２  ＣＰＵ
３３  ＲＯＭ
３４  ＲＡＭ
３５  Ｉ／Ｆ
３９  バスライン
５１  ＦＰＧＡ
５２  ＣＰＵ
５３  ＲＯＭ
５４  ＲＡＭ
５５  Ｉ／Ｆ
５８  ＣＡＮＩ／Ｆ
５９  バスライン
６０  機器制御システム
７０  車両
１００ａ、１００ｂ  画像取得部
２００ａ、２００ｂ  変換部
３００  視差値演算処理部
３０１  コスト算出部
３０２  決定部
３０３  第１生成部
５００  第２生成部
５１０  クラスタリング処理部
５２０  トラッキング処理部
６００  移動予測部
６１０  マッチング部
６１１  判定部
６１２  第１間引き処理部
６１３  第１テンプレートマッチング部
６１４  補正処理部
６１５  第３間引き処理部
６１６  第２テンプレートマッチング部
６１７  第３テンプレートマッチング部
６２０  チェック部
６３０  特徴更新部
６３１  第２間引き処理部
６３２  第１更新部
６３３  第４間引き処理部
６３４  第２更新部
６３５  パーツテンプレート選択部
６３６  第３更新部
６４０  状態遷移部
７００  路面
７００ａ  路面部
７０１  電柱
７０１ａ  電柱部
７０２  車
７０２ａ  車部
７１１  左ガードレール
７１１ａ、７１１ｂ  左ガードレール部
７１２  右ガードレール
７１２ａ、７１２ｂ  右ガードレール部
７１３  車
７１３ａ、７１３ｂ  車部
７１４  車
７１４ａ、７１４ｂ  車部
７２１〜７２４  検出領域
７２１ａ〜７２４ａ  検出枠
８００  予測領域
８０１  間引き予測領域
８１０  検出領域
８１１  間引きテンプレート
８２０、８２１  検出枠
８３０  検出領域
８４０、８４０ａ、８４１  仮枠
８５０、８５０ａ、８５１  仮枠内画像
８６０  検出領域
８７０、８７１  パーツテンプレート
９００、９０１  ヒストグラム
Ｂ  基線長
Ｃ  コスト値
ｄ  シフト量
ｄｐ  視差値
Ｅ  物体
ＥＬ  エピポーラ線
ｆ  焦点距離
Ｉａ  基準画像
Ｉｂ  比較画像
Ｉｐ  視差画像
ｐ  基準画素
ｐｂ  基準領域
ｑ  候補画素
ｑｂ  候補領域
ＲＭ  リアルＵマップ
Ｓ、Ｓａ、Ｓｂ  点
Ｔｈ  閾値
ＵＭ  Ｕマップ
ＶＭ  Ｖマップ
Ｚ  距離
【図１】
2017138245.tif 000004
【図２】
2017138245.tif 000005
【図３】
2017138245.tif 000006
【図４】
2017138245.tif 000007
【図５】
2017138245.tif 000008
【図６】
2017138245.tif 000009
【図７】
2017138245.tif 000010
【図８】
2017138245.tif 000011
【図９】
2017138245.tif 000012
【図１０】
2017138245.tif 000013
【図１１】
2017138245.tif 000014
【図１２】
2017138245.tif 000015
【図１３】
2017138245.tif 000016
【図１４】
2017138245.tif 000017
【図１５】
2017138245.tif 000018
【図１６】
2017138245.tif 000019
【図１７】
2017138245.tif 000020
【図１８】
2017138245.tif 000021
【図１９】
2017138245.tif 000022
【図２０】
2017138245.tif 000023
【図２１】
2017138245.tif 000024
【図２２】
2017138245.tif 000025
【図２３】
2017138245.tif 000026
【図２４】
2017138245.tif 000027
【図２５】
2017138245.tif 000028
【図２６】
2017138245.tif 000029
【図２７】
2017138245.tif 000030
【図２８】
2017138245.tif 000031
【手続補正書】
【提出日】平成29年3月28日(2017.3.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
現在のフレームに対する前のフレームにおける物体の位置から、前記現在のフレームにおける前記物体の位置を予測して予測領域を特定する予測手段と、
前記前のフレームにおける前記物体の距離に基づいて、該物体が第１距離域に存在するか、前記第１距離域よりも遠い第２距離域に存在するかを判定する判定手段と、
前記判定手段により前記物体が前記第１距離域に存在すると判定された場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての第１テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第１マッチング処理手段と、
前記判定手段により前記物体が前記第２距離域に存在すると判定された場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての、前記第１テンプレートとは異なる第２テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第２マッチング処理手段と、
を備えた画像処理装置。
【請求項２】
前記第１マッチング処理手段は、前記予測領域内における画素を間引いた間引き予測領域に対してテンプレートマッチングを行う
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１マッチング処理手段は、前記予測領域内における画素を間引いた間引き予測領域に対してテンプレートマッチングを行った後、前記画素の間引きによる検出誤差を補正することにより前記物体を検出する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記第１マッチング処理手段は、前記前のフレームにおける前記物体についての該物体の部分的でないテンプレートを用いたテンプレートマッチングによって該物体を検出し、
前記第２マッチング処理手段は、前記前のフレームにおける前記物体についての該物体の部分的なテンプレートを用いたテンプレートマッチングによって該物体を検出する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記第２マッチング処理手段は、前記前のフレームにおける前記物体についての該物体の隅の部分のテンプレートを用いたテンプレートマッチングによって該物体を検出する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記第２マッチング処理手段は、前記予測領域内における画素を間引いた間引き予測領域に対してテンプレートマッチングを行い、前記画素の間引きによる検出誤差を前記物体の部分的なテンプレートを用いて補正することにより前記物体を検出する
ことを特徴とする請求項１〜５のいずれか一項に記載の画像処理装置。
【請求項７】
前記判定手段は、距離情報に基づく物体の距離に基づいて、前記物体が前記第１距離域に存在するか、前記第２距離域に存在するかを判定し、
前記第１マッチング処理手段は、前記判定手段により前記物体が前記第１距離域に存在すると判定された場合、前記現在のフレームに対する、前記前のフレームでの該物体の第１検出領域についての前記第１テンプレートを用いたテンプレートマッチングにより該物体を検出し、検出した該物体の第２検出領域の距離情報に基づいて前記第２検出領域を補正し、
前記第２マッチング処理手段は、前記判定手段により前記物体が前記第２距離域に存在すると判定された場合、前記現在のフレームに対する、前記前のフレームでの該物体の第３検出領域についての前記第２テンプレートを用いたテンプレートマッチングにより該物体を検出し、検出した該物体の第４検出領域の大きさを前記第３検出領域の部分画像に基づいて補正する請求項１に記載の画像処理装置。
【請求項８】
前記第１マッチング処理手段は、前記第２検出領域に対応する距離情報の頻度に基づいて該第２検出領域の大きさを補正する請求項７に記載の画像処理装置。
【請求項９】
前記第２マッチング処理手段は、前記第４検出領域内の前記部分画像に一致する部分の位置に基づいて、該第４検出領域の大きさを補正する請求項７または８に記載の画像処理装置。
【請求項１０】
前記第１マッチング処理手段は、前記予測領域内で前記第１テンプレートを用いたテンプレートマッチングを行い、
前記第２マッチング処理手段は、前記予測領域内で前記第２テンプレートを用いたテンプレートマッチングを行う請求項７〜９のいずれか一項に記載の画像処理装置。
【請求項１１】
前記第１マッチング処理手段は、前記予測領域を第１間引き量で間引き、間引いた前記予測領域内で、前記第１検出領域が前記第１間引き量で間引かれた前記第１テンプレートを用いたテンプレートマッチングを行い、
前記第２マッチング処理手段は、前記予測領域を第２間引き量で間引き、間引いた前記予測領域内で、前記第３検出領域が前記第２間引き量で間引かれた前記第２テンプレートを用いたテンプレートマッチングを行う請求項１０に記載の画像処理装置。
【請求項１２】
前記第１マッチング処理手段は、前記第２間引き量よりも大きい前記第１間引き量で前記予測領域を間引く請求項１１に記載の画像処理装置。
【請求項１３】
矩形状の前記第１検出領域を、高さ方向の長さまたは幅方向の長さのいずれかが固定長となるように前記第１間引き量で間引いて前記第１テンプレートを作成する第１間引き手段と、
矩形状の前記第３検出領域を、高さ方向の長さまたは幅方向の長さのいずれかが固定長となるように前記第２間引き量で間引いて前記第２テンプレートを作成する第２間引き手段と、
をさらに備えた請求項１１または１２に記載の画像処理装置。
【請求項１４】
前のフレームでの前記物体の前記第３検出領域において、該第３検出領域の端に仮枠を配置し、前記仮枠を該第３検出領域の内側にずらしながら、該仮枠に含まれる視差値が所定割合以上となった場合に、該仮枠を前記部分画像として選択する選択手段を、さらに備えた請求項７〜１３のいずれか一項に記載の画像処理装置。
【請求項１５】
被写体を撮像することにより第１撮像画像を得る第１撮像手段と、
前記第１撮像手段の位置とは異なる位置に配置され、前記被写体を撮像することにより第２撮像画像を得る第２撮像手段と、
前記第１撮像画像および前記第２撮像画像から前記被写体に対して求めた視差値に基づいて、前記距離情報を生成する生成手段と、
前記第１撮像画像または前記第２撮像画像、および前記距離情報に基づいて、新規に物体を検出する検出手段と、
請求項１〜１４のいずれか一項に記載の画像処理装置と、
を備えた物体認識装置。
【請求項１６】
請求項１５に記載の物体認識装置と、
前記物体認識装置により検出された前記物体の情報に基づいて、制御対象を制御する制御装置と、
を備えた機器制御システム。
【請求項１７】
請求項１６に記載の機器制御システムを備え、
前記制御装置により制御される移動体。
【請求項１８】
現在のフレームに対する前のフレームにおける物体の位置から、前記現在のフレームにおける前記物体の位置を予測して予測領域を特定する予測ステップと、
前記前のフレームにおける前記物体の距離に基づいて、該物体が第１距離域に存在するか、前記第１距離域よりも遠い第２距離域に存在するかを判定する判定ステップと、
前記物体が前記第１距離域に存在すると判定した場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての第１テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第１マッチング処理ステップと、
前記物体が前記第２距離域に存在すると判定した場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての、前記第１テンプレートとは異なる第２テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第２マッチング処理ステップと、
を有する画像処理方法。
【請求項１９】
コンピュータを、
現在のフレームに対する前のフレームにおける物体の位置から、前記現在のフレームにおける前記物体の位置を予測して予測領域を特定する予測手段と、
前記前のフレームにおける前記物体の距離に基づいて、該物体が第１距離域に存在するか、前記第１距離域よりも遠い第２距離域に存在するかを判定する判定手段と、
前記判定手段により前記物体が前記第１距離域に存在すると判定された場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての第１テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第１マッチング処理手段と、
前記判定手段により前記物体が前記第２距離域に存在すると判定された場合、前記現在のフレームの前記予測領域において、前記前のフレームの該物体についての、前記第１テンプレートとは異なる第２テンプレートを用いたテンプレートマッチングを行い、該物体を検出する第２マッチング処理手段と、
して機能させるためのプログラム。
【国際調査報告】
2017138245.tif 000032
2017138245.tif 000033
2017138245.tif 000034
2017138245.tif 000035