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