(57)【要約】【課題】画像処理の負荷を低減し、視差値を導出する時間を短縮することができる視差値導出装置、機器制御システム、移動体、ロボット、視差値導出方法、およびプログラムを提供する。【解決手段】コスト算出部３１０は、基準画像における所定の基準画素、および、基準画素に対する比較画像におけるエピポーラ線上の対応画素の候補である候補画素の各輝度値に基づいて、基準画素に対する対応画素の各候補画素のコスト値Ｃを算出する。コスト算出部３１０は、比較画像における候補画素のコスト値Ｃを算出するために用いるシフト量として、所定のシフト量の範囲から、所定の方式によって値を間引くことによって得られた飛び飛びのシフト量を含むシフト量間引き特徴量に含まれるシフト量を用いてコスト値Ｃを算出する。【選択図】図１０
2015179063.tif 000002
【特許請求の範囲】
【請求項１】
第１の撮像位置から撮像された基準画像における基準領域と、第２の撮像位置から撮像された比較画像における、前記基準領域に対応する対応領域を含む指定の範囲内の複数の領域各々と、の一致度を取得する取得手段と、
前記取得手段により取得された、前記基準画像における所定の基準領域の周辺の基準領域の一致度と、前記基準画像における前記所定の基準領域の一致度と、を合成する合成手段と、
前記合成手段により合成された一致度に基づいて、前記所定の基準領域および前記所定の基準領域に対応する対応領域において撮像されている対象の視差値を導出する導出手段と、を備え、
前記指定の範囲内の複数の領域のうち少なくとも一部は、所定方向において最も近い領域は２画素以上ずれている視差値導出装置。
【請求項２】
第１撮像手段が被写体を撮像することにより得られた基準画像、および第２撮像手段が前記被写体を撮像することにより得られた比較画像に基づいて、前記被写体に対する視差を示す視差値を導出する視差値導出装置であって、
前記基準画像における第１基準領域の輝度値と、前記第１基準領域に基づく前記比較画像におけるエピポーラ線上で、前記第１基準領域の位置に相当する領域から、所定のシフト範囲から所定のシフト量を間引くことにより得られたシフト量を含む特徴量に含まれる前記各シフト量でシフトすることにより特定される、前記第１基準領域に対応する前記比較画像の対応領域の候補となる複数の候補領域の輝度値と、に基づいて前記複数の候補領域それぞれの一致度を算出することにより取得する取得手段と、
前記第１基準領域の周辺の第２基準領域についての前記比較画像における一致度を、前記特徴量に含まれる前記シフト量に基づいて前記候補領域の一致度に集約させて、前記各候補領域の合成された一致度を算出する合成手段と、
前記比較画像における前記各候補領域の前記合成された一致度のうち第１極値に対応する前記シフト量に基づいて、前記視差値を導出する導出手段と、
を備えた視差値導出装置。
【請求項３】
前記特徴量は、含まれる前記シフト量を昇順に並べた場合、前記シフト量の値が大きくなるほど、隣接する前記シフト量間の値の差が大きくなるように構成された請求項２に記載の視差値導出装置。
【請求項４】
前記特徴量は、前記視差値に基づいて定まる前記被写体までの距離についての所望の分解能に応じた前記シフト量によって構成された請求項３に記載の視差値導出装置。
【請求項５】
前記特徴量を予め記憶した記憶手段を、さらに備えた請求項２〜４のいずれか一項に記載の視差値導出装置。
【請求項６】
前記導出手段は、前記特徴量に含まれる前記シフト量のうち、前記第１極値に対応する前記シフト量を含む隣接した複数の前記シフト量に基づいて、サブピクセル推定により前記視差値を導出する請求項２〜５のいずれか一項に記載の視差値導出装置。
【請求項７】
前記導出手段は、前記特徴量に含まれる前記シフト量のうち、前記第１極値に対応する前記シフト量、および該シフト量に隣接する２つのシフト量と、前記シフト量に対応する前記合成された一致度とで定まる座標上の３点を通る２次曲線における第２極値に対応するサブピクセル単位のシフト量を前記視差値として導出する請求項６に記載の視差値導出装置。
【請求項８】
前記導出手段は、前記特徴量に含まれる前記シフト量のうち、前記第１極値に対応する前記シフト量を含む隣接した４つ以上のシフト量と、前記シフト量に対応する前記合成された一致度とで定まる座標上の４つ以上の点に対して、最小二乗法により定まる２次曲線における第３極値に対応するサブピクセル単位のシフト量を前記視差値として導出する請求項６に記載の視差値導出装置。
【請求項９】
請求項１〜８のいずれか一項に記載の視差値導出装置と、
前記視差値導出装置によって導出される前記視差値により求まる前記視差値導出装置から被写体までの距離情報によって、制御対象を制御する制御装置と、
を備えた機器制御システム。
【請求項１０】
請求項９に記載の機器制御システムを備えた移動体。
【請求項１１】
請求項９に記載の機器制御システムを備えたロボット。
【請求項１２】
第１の撮像位置から撮像された基準画像における基準領域と、第２の撮像位置から撮像された比較画像における、前記基準領域に対応する対応領域を含む指定の範囲内の複数の領域各々と、の一致度を取得する取得ステップと、
取得した、前記基準画像における所定の基準領域の周辺の基準領域の一致度と、前記基準画像における前記所定の基準領域の一致度と、を合成する合成ステップと、
合成した一致度に基づいて、前記所定の基準領域および前記所定の基準領域に対応する対応領域において撮像されている対象の視差値を導出する導出ステップと、を有し、
前記指定の範囲内の複数の領域のうち少なくとも一部は、所定方向において最も近い領域は２画素以上ずれている視差値導出方法。
【請求項１３】
第１の撮像位置から撮像された基準画像における基準領域と、第２の撮像位置から撮像された比較画像における、前記基準領域に対応する対応領域を含む指定の範囲内における、少なくとも一部において所定方向の最も近い領域が２画素以上ずれている複数の領域各々と、の一致度を取得する取得手段と、
前記取得手段により取得された、前記基準画像における所定の基準領域の周辺の基準領域の一致度と、前記基準画像における前記所定の基準領域の一致度と、を合成する合成手段と、
前記合成手段により合成された一致度に基づいて、前記所定の基準領域および前記所定の基準領域に対応する対応領域において撮像されている対象の視差値を導出する導出手段と、
をコンピュータに実現させるためのプログラム。
【請求項１４】
第１の撮像位置から撮像された基準画像における基準領域と、第２の撮像位置から撮像された比較位置における、前記基準領域に対応する対応領域を含む指定の範囲内であって不連続な複数の領域各々と、の一致度を取得する取得手段と、
前記取得手段により取得された、前記基準画像における所定の基準領域の周辺の基準領域の一致度と、前記基準領域における前記所定の基準領域の一致度と、を合成する合成手段と、
前記合成手段により合成された一致度に基づいて、前記所定の基準領域および前記所定の基準領域に対応する対応領域において撮像されている対象の視差値を導出する導出手段と、を備える視差値導出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、視差値導出装置、機器制御システム、移動体、ロボット、視差値導出方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、自動車間の距離、または自動車と障害物との間の距離を測定することにより自動車の衝突防止を図る車載システムが一般的に利用されてきている。そのような距離を測定する方法として、ステレオカメラを用い、三角測量の原理を用いたステレオマッチング処理が用いられている。ステレオマッチング処理とは、ステレオカメラの２つのカメラのうち、一方のカメラで撮像された基準画像と、他方のカメラで撮像された比較画像との間で対応する画素をマッチングすることにより視差を求め、視差からステレオカメラと、画像に含まれる物体との距離を算出する処理である。このようなステレオカメラを用いたステレオマッチング処理による物体との距離の算出により、各種認識処理、ならびに衝突防止のためのブレーキ制御および操舵制御が可能となる。
【０００３】
上述のようなステレオマッチング処理として、画像間の類似性を評価するために、比較する画像から領域を切り出し、その領域に対する輝度差の総和（ＳＡＤ：Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）、輝度差の２乗和（ＳＳＤ：Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）、および正規化相互相関（ＺＮＣＣ：Ｚｅｒｏ−ｍｅａｎ  Ｎｏｒｍａｌｉｚｅｄ  Ｃｒｏｓｓ−Ｃｏｒｒｅｌａｔｉｏｎ）等を求めるブロックマッチング法がある。しかし、画像における物体の輝度変化量を示すテクスチャが弱い部分では、画像としての特徴を抽出することが困難であり、ブロックマッチング法によっては、精度の高い視差を得ることができない場合がある。そこで、正確な視差を導出する方法として、基準画像上の基準画素に対する比較画像上の画素のコスト値だけではなく、比較画像上の画素の周囲の画素のコスト値を集約して、テクスチャが弱い物体に対する視差を導出する技術が提案されている（特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載された技術は、画像を構成する連続的に配置された画素ごとに、コスト値を集約した値を求めているので、メモリの消費量が高く、ステレオマッチング処理による画像処理の負荷が大きくなる。したがって、リアルタイムに視差値により構成された視差画像を得ることが困難であるという問題点があった。
【０００５】
本発明は、上記に鑑みてなされたものであって、画像処理の負荷を低減し、視差値を導出する時間を短縮することができる視差値導出装置、機器制御システム、移動体、ロボット、視差値導出方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、第１の撮像位置から撮像された基準画像における基準領域と、第２の撮像位置から撮像された比較画像における、前記基準領域に対応する対応領域を含む指定の範囲内の複数の領域各々と、の一致度を取得する取得手段と、前記取得手段により取得された、前記基準画像における所定の基準領域の周辺の基準領域の一致度と、前記基準画像における前記所定の基準領域の一致度と、を合成する合成手段と、前記合成手段により合成された一致度に基づいて、前記所定の基準領域および前記所定の基準領域に対応する対応領域において撮像されている対象の視差値を導出する導出手段と、を備え、前記指定の範囲内の複数の領域のうち少なくとも一部は、所定方向において最も近い領域は２画素以上ずれていることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、画像処理の負荷を低減し、視差値を導出する時間を短縮することができる。
【図面の簡単な説明】
【０００８】
【図１】撮像装置から物体までの距離を導き出す原理の説明図である。
【図２】（ａ）は基準画像、（ｂ）は（ａ）に対する高密度視差画像、（ｃ）は（ａ）に対するエッジ視差画像を示す概念図である。
【図３】（ａ）は基準画像における基準画素を示す概念図、（ｂ）は（ａ）の基準画素に対して比較画像における対応画素の候補を順次シフトしながらシフト量を算出する際の概念図である。
【図４】シフト量毎のコスト値を示すグラフである。
【図５】合成コスト値を導き出すための概念図である。
【図６】視差値毎の合成コスト値を示すグラフである。
【図７】（ａ）は本発明の一実施形態に係る物体認識システムを搭載した自動車の側面を表す概略図、（ｂ）は自動車の正面を示す概略図である。
【図８】物体認識システムの概観図である。
【図９】物体認識システムの全体のハードウェア構成図である。
【図１０】図１０は、本実施形態に係る視差値導出装置のブロック構成の一例を示す図である。
【図１１】図１１は、シフト量間引き特徴量を示す特徴量テーブルの一例を示す図である。
【図１２】図１２は、シフト量間引き特徴量のシフト量と、コスト値との関係を示すグラフである。
【図１３】図１３は、シフト量間引き特徴量のシフト量と、合成コスト値との関係を示すグラフである。
【図１４】図１４は、パラボラフィッティングによるサブピクセル推定を説明する図である。
【図１５】図１５は、最小二乗法によるサブピクセル推定を説明する図である。
【図１６】図１６は、サブピクセル推定を用いた高密度視差画像を示す概念図である。
【図１７】図１７は、本実施形態に係る視差値導出装置のステレオマッチング処理の動作フローの一例を示す図である。
【図１８】図１８は、本実施形態に係る機器制御システムを車両に搭載した例を示す図である。
【発明を実施するための形態】
【０００９】
以下、図面を用いて、本発明の一実施形態について説明する。
【００１０】
［ＳＧＭ法を用いた測距方法の概略］
まず、図１乃至図６を用いて、ＳＧＭ（Ｓｅｍｉ−Ｇｌｏｂａｌ  Ｍａｔｃｈｉｎｇ）法を用いた測距方法の概略について説明する。なお、ＳＧＭ法に関しては、非特許文献（Ａｃｃｕｒａｔｅ  ａｎｄ  Ｅｆｆｉｃｉｅｎｔ  Ｓｔｅｒｅｏ  Ｐｒｏｃｅｓｓｉｎｇ  ｂｙ  Ｓｅｍｉ−Ｇｌｏｂａｌ  Ｍａｔｃｈｉｎｇ  ａｎｄ  Ｍｕｔｕａｌ  Ｉｎｆｏｒｍａｔｉｏｎ）に開示されているため、以下では概略を説明する。
【００１１】
（測距の原理）
図１を用いて、ステレオ画像法により、ステレオカメラから物体に対する視差を導き出し、この視差を示す視差値によって、ステレオカメラから物体までの距離を測定する原理について説明する。なお、図１は、撮像装置から物体までの距離を導き出す原理の説明図である。また、以下では、説明を簡略化するため、複数の画素からなる所定領域ではなく、一画素単位で説明する。なお、一画素単位ではなく、複数の画素からなる所定領域単位で処理される場合、基準画素を含む所定領域は基準領域として示され、対応画素を含む所定領域は対応領域として示される。また、この基準領域には基準画素のみの場合も含まれ、対応領域には対応画素のみの場合も含まれる。
【００１２】
＜視差値算出＞
まず、図１で示される撮像装置１０ａおよび撮像装置１０ｂによって撮像された各画像を、それぞれ基準画像Ｉａおよび比較画像Ｉｂとする。なお、図１では、撮像装置１０ａおよび撮像装置１０ｂが平行等位に設置されているものとする。図１において、３次元空間内の物体Ｅ上の点Ｓは、撮像装置１０ａおよび撮像装置１０ｂの同一水平線上の位置に写像される。すなわち、各画像中の点Ｓは、基準画像Ｉａ中の点Ｓａ（ｘ，ｙ）および比較画像Ｉｂ中の点Ｓｂ（Ｘ，ｙ）において撮像される。このとき、視差値Δは、撮像装置１０ａ上の座標における点Ｓａ（ｘ，ｙ）と撮像装置１０ｂ上の座標における点Ｓｂ（Ｘ，ｙ）とを用いて、（式１）のように表される。
【００１３】
Δ＝Ｘ−ｘ                                                            （式１）
【００１４】
ここで、図１のような場合には、基準画像Ｉａ中の点Ｓａ（ｘ，ｙ）と撮像レンズ１１ａから撮像面上におろした垂線の交点との距離をΔａにし、比較画像Ｉｂ中の点Ｓｂ（Ｘ，ｙ）と撮像レンズ１１ｂから撮像面上におろした垂線の交点との距離をΔｂにすると、視差値Δ＝Δａ＋Δｂとなる。
【００１５】
＜距離算出＞
また、視差値Δを用いることで、撮像装置１０ａ、１０ｂと物体Ｅとの間の距離Ｚを導き出すことができる。具体的には、距離Ｚは、撮像レンズ１１ａの焦点位置と撮像レンズ１１ｂの焦点位置とを含む面から物体Ｅ上の特定点Ｓまでの距離である。図１に示されるように、撮像レンズ１１ａおよび撮像レンズ１１ｂの焦点距離ｆ、撮像レンズ１１ａと撮像レンズ１１ｂとの間の長さである基線長Ｂ、および視差値Δを用いて、（式２）により、距離Ｚを算出することができる。
【００１６】
Ｚ＝（Ｂ×ｆ）／Δ                                                    （式２）
【００１７】
この（式２）により、視差値Δが大きいほど距離Ｚは小さく、視差値Δが小さいほど距離Ｚは大きくなる。
【００１８】
（ＳＧＭ法）
続いて、図２乃至図６を用いて、ＳＧＭ法を用いた測距方法について説明する。なお、図２（ａ）は基準画像、図２（ｂ）は（ａ）に対する高密度視差画像、図２（ｃ）は（ａ）に対するエッジ視差画像を示す概念図である。ここで、基準画像は、物体が輝度によって示された画像である。高密度視差画像は、ＳＧＭ法によって、基準画像から導き出された画像であり、基準画像の各座標における視差値を示した画像である。エッジ視差画像は、従来から用いられているブロックマッチング法によって導き出された画像であり、基準画像のエッジ部のような比較的テクスチャの強い部分のみの視差値を示した画像である。
【００１９】
ＳＧＭ法は、テクスチャが弱い物体に対しても適切に上記視差値を導き出す方法であり、図２（ａ）に示されている基準画像に基づいて、図２（ｂ）に示されている高密度視差画像を導き出す方法である。なお、ブロックマッチング法を用いた場合には、図２（ａ）に示されている基準画像に基づいて、図２（ｃ）に示されているエッジ視差画像が導き出される。図２（ｂ）および図２（ｃ）における破線の楕円内を比べると分かるように、高密度視差画像は、エッジ視差画像に比べてテクスチャが弱い道路等の詳細な情報を表すことができるため、より詳細な測距を行うことができる。
【００２０】
このＳＧＭ法は、非類似度であるコスト値を算出して直ちに視差値を導出せず、コスト値を算出後、さらに、合成非類似度である合成コスト値（Ｓｙｎｔｈｅｓｉｓ  Ｃｏｓｔ）を算出することで視差値を導出し、最終的にほぼ全ての画素における視差値を示す視差画像（ここでは、高密度視差画像）を導き出す方法である。なお、ブロックマッチング法の場合は、コスト値を算出する点はＳＧＭ法と同じであるが、ＳＧＭ法のように、合成コスト値を算出せずに、エッジ部のような比較的テクスチャの強い部分の視差値のみを導出する。
【００２１】
＜コスト値の算出＞
まず、図３および図４を用いて、コスト値Ｃ（ｐ，ｄ）の算出方法について説明する。図３（ａ）は基準画像における基準画素を示す概念図、図３（ｂ）は（ａ）の基準画素に対して比較画像における対応画素の候補を順次シフトしながら（ずらしながら）コスト値を算出する際の概念図である。図４は、シフト量毎のコスト値を示すグラフである。ここで、対応画素は、基準画像内の基準画素に最も類似する比較画像内の画素である。なお、以降、Ｃ（ｐ，ｄ）は、Ｃ（ｘ，ｙ，ｄ）を表すものとして説明する。
【００２２】
図３（ａ）に示されているように、基準画像内の所定の基準画素ｐ（ｘ，ｙ）と、この基準画素ｐ（ｘ，ｙ）に対する比較画像内におけるエピポーラ線（Ｅｐｉｐｏｌａｒ  Ｌｉｎｅ）ＥＬ上の複数の対応画素の候補ｑ（ｘ＋ｄ，ｙ）との各輝度値に基づいて、基準画素ｐ（ｘ，ｙ）に対する各対応画素の候補ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）が算出される。ｄは、基準画素ｐと対応画素の候補ｑのシフト量（ずれ量）であり、本実施形態では、画素単位のシフト量が表されている。すなわち、図３では、対応画素の候補ｑ（ｘ＋ｄ，ｙ）を予め指定された範囲（例えば、０＜ｄ＜２５）において順次一画素分シフトしながら、対応画素の候補ｑ（ｘ＋ｄ，ｙ）と基準画素ｐ（ｘ，ｙ）との輝度値の非類似度であるコスト値Ｃ（ｐ，ｄ）が算出される。コスト値Ｃの算出方法としては、コスト値Ｃが非類似度を示す場合、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）等の公知の方法が適用される。
【００２３】
このようにして算出されたコスト値Ｃ（ｐ，ｄ）は、図４に示されているように、シフト量ｄ毎のコスト値Ｃの集まりであるコスト曲線のグラフによって表すことができる。図４では、コスト値Ｃは、シフト量ｄ＝５，１２，１９の場合が０（ゼロ）となるため、最小値を求めることができない。このように、テクスチャが弱い物体の場合には、コスト値Ｃの最小値を求めることは困難になる。
【００２４】
＜合成コスト値の算出＞
次に、図５および図６を用いて、合成コスト値Ｌｓ（ｐ，ｄ）の算出方法について説明する。図５は、合成コスト値を導き出すための概念図である。図６は、視差値毎の合成コスト値を示す合成コスト曲線のグラフである。
【００２５】
本実施形態における合成コスト値の算出方法は、コスト値Ｃ（ｐ，ｄ）の算出だけでなく、所定の基準画素ｐ（ｘ，ｙ）の周辺の画素を基準画素とした場合のコスト値を、基準画素ｐ（ｘ，ｙ）におけるコスト値Ｃ（ｐ，ｄ）に集約させて、合成コスト値Ｌｓ（ｐ，ｄ）を算出する。
【００２６】
次に、合成コスト値の算出方法について、より詳細に説明する。合成コスト値Ｌｓ（ｐ，ｄ）を算出するためには、まず、経路コスト値Ｌｒ（ｐ，ｄ）を算出する必要がある。（式３）は、経路コスト値Ｌｒ（ｐ，ｄ）を算出するための式であり、（式４）は、合成コスト値Ｌｓを算出するための式である。
【００２７】
Ｌｒ（ｐ，ｄ）＝Ｃ（ｐ，ｄ）＋ｍｉｎ｛（Ｌｒ（ｐ−ｒ，ｄ），Ｌｒ（ｐ−ｒ，ｄ−１）＋Ｐ１，Ｌｒ（ｐ−ｒ，ｄ＋１）＋Ｐ１，Ｌｒｍｉｎ（ｐ−ｒ）＋Ｐ２｝  （式３）
【００２８】
ここで、（式３）において、ｒは、集約方向の方向ベクトルを示し、ｘ方向およびｙ方向の２成分を有する。ｍｉｎ｛｝は、最小値を求める関数である。Ｌｒｍｉｎ（ｐ−ｒ）は、ｐをｒ方向に１画素シフトした座標において、シフト量ｄを変化させた際のＬｒ（ｐ−ｒ，ｄ）の最小値を示す。
【００２９】
なお、経路コスト値Ｌｒは、（式３）に示されているように再帰的に適用される。また、Ｐ１およびＰ２は、予め実験により定められた固定パラメータであり、経路上で隣接する基準画素の視差値Δが連続になりやすいようなパラメータになっている。例えば、Ｐ１＝４８、Ｐ２＝９６である。
【００３０】
また、（式３）に示されているように、経路コスト値Ｌｒ（ｐ，ｄ）は、基準画素ｐ（ｘ，ｙ）におけるコスト値Ｃに、図５に示されているｒ方向の各画素における各画素の経路コスト値Ｌｒの最小値を加算することで求められる。このように、ｒ方向の各画素における経路コスト値Ｌｒを求めるため、最初は、基準画素ｐ（ｘ，ｙ）のｒ方向の一番端の画素から経路コスト値Ｌｒが求められ、ｒ方向に沿って経路コスト値Ｌｒが求められる。そして、図５に示されているように、８方向のＬｒ０、Ｌｒ４５、Ｌｒ９０、Ｌｒ１３５、Ｌｒ１８０、Ｌｒ２２５、Ｌｒ２７０、Ｌｒ３１５が求められ、最終的に（式４）に基づいて、合成コスト値Ｌｓが求められる。
【数１】
2015179063.tif 000003
【００３１】
このようにして算出された合成コスト値Ｌｓ（ｐ，ｄ）は、図６に示されているように、シフト量ｄ毎に合成コスト値Ｌｓ（ｐ，ｄ）が示される合成コスト曲線のグラフによって表すことができる。図６では、合成コスト値Ｌｓは、シフト量ｄ＝３の場合が最小値となるため、視差値Δ＝３として算出される。なお、上記説明ではｒの数を８として説明しているが、これに限られることはない。例えば、８方向を更に２つに分割して１６方向、３つに分割して２４方向等にしてもよい。また、コスト値Ｃは「非類似度」として示されているが、非類似度の逆数としての「類似度」として表されてもよい。この場合、コスト値Ｃの算出方法としては、ＮＣＣ（Ｎｏｒｍａｌｉｚｅｄ  Ｃｒｏｓｓ  Ｃｏｒｒｅｌａｔｉｏｎ）等の公知の方法が適用される。また、この場合、合成コスト値Ｌｓが最小ではなく「最大」となる視差値Δが導出される。なお、非類似度と類似度の両者を含めて、「一致度」として表してもよい。
【００３２】
［本実施形態の具体的な説明］
以下、図面を用いて、本実施形態の具体的な説明を行う。ここでは、自動車に搭載される物体認識システム１について説明する。なお、物体認識システム１は、車両の一例としての自動車だけでなく、車両の他の例として、バイク、自転車、車椅子、農業用の耕運機等に搭載されることができてもよい。また、移動体の一例としての車両だけでなく、移動体の他の例として、ロボット等に搭載されることができてもよい。さらに、ロボットは、移動体だけでなく、ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）において固定設置される工業用ロボット等の装置であってもよい。また、固定設置される装置としては、ロボットだけでなく、防犯用の監視カメラであってもよい。
【００３３】
（実施形態の構成）
まず、図７乃至図９を用いて、本実施形態の全体構成について説明する。
【００３４】
＜外観構成＞
図７および図８を用いて、本実施形態の物体認識システム１の外観構成を説明する。なお、図７（ａ）は本発明の一実施形態に係る物体認識システムを搭載した自動車の側面を表す概略図、図７（ｂ）は自動車の正面を示す概略図である。図８は、物体認識システムの概観図である。
【００３５】
図７（ａ）、（ｂ）に示されているように、本実施形態の物体認識システム１は、撮像装置１０ａ（第１撮像手段）および撮像装置１０ｂ（第２撮像手段）を備えており、撮像装置１０ａおよび撮像装置１０ｂは、自動車の進行方向前方の光景を撮像することができるように設置（第１の撮像位置、第２の撮像位置）される。また、図８に示されているように、物体認識システム１は、本体部２と、本体部２に対して設けられた一対の円筒状の撮像装置１０ａおよび撮像装置１０ｂとによって構成されている。
【００３６】
＜全体のハードウェア構成＞
次に、図９を用いて、物体認識システム１の全体のハードウェア構成について説明する。なお、図９は、物体認識システムの全体のハードウェア構成図である。
【００３７】
図９に示されているように、物体認識システム１は、本体部２において、視差値導出装置３および物体認識装置５を備えている。
【００３８】
このうち、視差値導出装置３は、物体Ｅを撮像して得られた複数の画像から、物体Ｅに対する視差を示す視差値Δを導出し、各画素における視差値Δを示す高密度視差画像を出力する。物体認識装置５は、視差値導出装置３から出力された高密度視差画像に基づいて、撮像装置１０ａ、１０ｂから物体Ｅまでの距離を測定する等の処理を行なう。
【００３９】
ここで、まずは、視差値導出装置３のハードウェア構成について説明する。図９に示されているように、視差値導出装置３は、撮像装置１０ａ、撮像装置１０ｂ、信号変換装置２０ａ、信号変換装置２０ｂ、および画像処理装置３０を備えている。
【００４０】
撮像装置１０ａは、前方の光景を撮像して画像を表すアナログ信号を生成するものであり、撮像レンズ１１ａ、絞り１２ａ、および画像センサ１３ａを備えている。
【００４１】
撮像レンズ１１ａは、撮像レンズ１１ａを通過する光を屈折させて物体の像を結像させるための光学素子である。絞り１２ａは、撮像レンズ１１ａを通過した光の一部を遮ることによって、後述する画像センサ１３ａに入力される光の量を調整する。画像センサ１３ａは、撮像レンズ１１ａおよび絞り１２ａから入力された光を電気的なアナログの画像信号に変換する半導体の素子であり、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅｓ）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）等によって実現される。
【００４２】
なお、撮像装置１０ｂは、撮像装置１０ａと同じ構成を備えているため、撮像装置１０ｂについての説明は省略する。また、撮像レンズ１１ａおよび撮像レンズ１１ｂは、それぞれのレンズ面が互いに同一平面内になるように設置されている。
【００４３】
また、信号変換装置２０ａは、撮像された画像を表すアナログ信号をデジタル形式の画像データに変換するものであり、ＣＤＳ（Ｃｏｒｒｅｌａｔｅｄ  Ｄｏｕｂｌｅ  Ｓａｍｐｌｉｎｇ）２１ａ、ＡＧＣ（Ａｕｔｏ  Ｇａｉｎ  Ｃｏｎｔｒｏｌ）２２ａ、ＡＤＣ（Ａｎａｌｏｇ  Ｄｉｇｉｔａｌ  Ｃｏｎｖｅｒｔｅｒ）２３ａ、およびフレームメモリ２４ａを備えている。
【００４４】
ＣＤＳ２１ａは、画像センサ１３ａによって変換されたアナログの画像信号から相関二重サンプリングによってノイズを除去する。ＡＧＣ２２ａは、ＣＤＳ２１ａによってノイズが除去されたアナログの画像信号の強度を制御する利得制御を行う。ＡＤＣ２３ａは、ＡＧＣ２２ａによって利得制御されたアナログの画像信号をデジタル形式の画像データに変換する。フレームメモリ２４ａは、ＡＤＣ２３ａによって変換された画像データを記憶する。
【００４５】
同様に、信号変換装置２０ｂは、撮像装置１０ｂによって変換されたアナログの画像信号から画像データを取得するものであり、ＣＤＳ２１ｂ、ＡＧＣ２２ｂ、ＡＤＣ２３ｂ、およびフレームメモリ２４ｂを備えている。
【００４６】
なお、ＣＤＳ２１ｂ、ＡＧＣ２２ｂ、ＡＤＣ２３ｂ、およびフレームメモリ２４ｂは、それぞれＣＤＳ２１ａ、ＡＧＣ２２ａ、ＡＤＣ２３ａ、およびフレームメモリ２４ａと同じ構成であるため、それらについての説明は省略する。
【００４７】
さらに、画像処理装置３０は、信号変換装置２０ａおよび信号変換装置２０ｂによって変換された画像データを処理するための装置である。この画像処理装置３０は、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）３１、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３４、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３５および上記各構成要素３１〜３５を図９に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン３９を備えている。
【００４８】
このうち、ＦＰＧＡ３１は、集積回路であり、ここでは、ＣＰＵ３２の命令に従って、画像データが表す画像における視差値Δを算出する処理を行う。ＣＰＵ３２は、視差値導出装置３の各機能を制御する。ＲＯＭ３３は、ＣＰＵ３２が視差値導出装置３の各機能を制御するために実行される画像処理用プログラムを記憶している。ＲＡＭ３４はＣＰＵ３２のワークエリアとして使用される。Ｉ／Ｆ３５は、物体認識装置５における後述Ｉ／Ｆ５５とアドレスバスやデータバス等のバスライン４を介して通信するためのインターフェースである。
【００４９】
続いて、物体認識装置５のハードウェア構成について説明する。図９に示されているように、物体認識装置５は、ＦＰＧＡ５１、ＣＰＵ５２、ＲＯＭ５３、ＲＡＭ５４、Ｉ／Ｆ５５、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）  Ｉ／Ｆ５８および上記各構成要素５１〜５５、５８を図９に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン５９を備えている。
【００５０】
このうち、ＦＰＧＡ５１、ＣＰＵ５２、ＲＯＭ５３、ＲＡＭ５４、Ｉ／Ｆ５５、およびバスライン５９は、それぞれ画像処理装置３０におけるＦＰＧＡ３１、ＣＰＵ３２、ＲＯＭ３３、ＲＡＭ３４、Ｉ／Ｆ３５、およびバスライン３９と同様の構成であるため、説明を省略する。なお、Ｉ／Ｆ５５は、画像処理装置３０におけるＩ／Ｆ３５とバスライン４を介して通信するためのインターフェースである。また、ＲＯＭ５３は、ＣＰＵ５２が物体認識装置５の各機能を制御するために実行される物体認識用プログラムを記憶している。ＣＡＮ  Ｉ／Ｆ５８は、外部コントローラ等と通信するためのインターフェースであり、例えば、自動車のＣＡＮ等に接続されることができる。
【００５１】
このような構成により、画像処理装置３０のＩ／Ｆ３５からバスライン４を介して物体認識装置５に高密度視差画像が送信されると、物体認識装置５におけるＣＰＵ５２の命令によって、ＦＰＧＡ５１が、撮像装置１０ａ、１０ｂと物体Ｅとの間の距離Ｚを算出する。
【００５２】
なお、物体認識装置５におけるＣＰＵ５２の命令によってＦＰＧＡ５１が距離Ｚを算出せずに、画像処理装置３０のＣＰＵ３２の命令によってＦＰＧＡ３１が距離Ｚを算出してもよい。
【００５３】
また、上記各プログラムは、インストール可能な形式または実行可能な形式のファイルで、コンピュータで読み取り可能な記録媒体に記録して流通させてもよい。この記録媒体は、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＳＤメモリカード（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ  ｍｅｍｏｒｙ  ｃａｒｄ）等である。
【００５４】
＜視差値導出装置のブロック構成および各ブロックの動作＞
図１０は、本実施形態に係る視差値導出装置のブロック構成の一例を示す図である。図１１は、シフト量間引き特徴量を示す特徴量テーブルの一例を示す図である。図１２は、シフト量間引き特徴量のシフト量と、コスト値との関係を示すグラフである。図１３は、シフト量間引き特徴量のシフト量と、合成コスト値との関係を示すグラフである。図１４は、パラボラフィッティングによるサブピクセル推定を説明する図である。図１５は、最小二乗法によるサブピクセル推定を説明する図である。図１６は、サブピクセル推定を用いた高密度視差画像を示す概念図である。図１０乃至図１６を参照しながら、視差値導出装置３の要部のブロック構成および各ブロックの動作について説明する。なお、説明の便宜上、上述の図８に示す撮像装置１０ａを「右」のカメラと称し、撮像装置１０ｂを「左」のカメラと称するものとする。
【００５５】
図１０に示すように、視差値導出装置３は、画像取得部１１０と、フィルタ部２１０と、コスト算出部３１０（取得手段）と、コスト合成部３２０（合成手段）と、サブピクセル推定部３３０（導出手段）と、記憶部３４０（記憶手段）と、視差画像生成部３５０と、を備えている。
【００５６】
画像取得部１１０は、左右２台のカメラにより前方の被写体を撮像して、それぞれアナログの画像信号を生成し、各画像信号基づく画像である２つの輝度画像を得る処理部である。画像取得部１１０は、図９に示す撮像装置１０ａおよび撮像装置１０ｂによって実現される。
【００５７】
フィルタ部２１０は、画像取得部１１０により得られた２つの輝度画像の画像信号に対して、ノイズを除去し、デジタル形式の画像データに変換して出力する。ここで、フィルタ部２１０が出力する２つの輝度画像の画像データ（以下、単に「輝度画像」と称する）のうち、画像取得部１１０の右のカメラ（撮像装置１０ａ）により撮像された基準画像Ｉａの画像データ（以下、単に「基準画像Ｉａ」という）とし、左のカメラ（撮像装置１０ｂ）により撮像された比較画像Ｉｂの画像データ（以下、単に「比較画像Ｉｂ」という）とする。すなわち、フィルタ部２１０は、画像取得部１１０から出力された２つの輝度画像に基づいて、基準画像Ｉａおよび比較画像Ｉｂを出力する。フィルタ部２１０は、図９に示す信号変換装置２０ａ、２０ｂによって実現される。
【００５８】
記憶部３４０は、コスト算出部３１０により、比較画像Ｉｂにおいて、基準画素ｐ（ｘ，ｙ）に対する対応画素の候補ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）が算出される際に用いられるシフト量ｄの飛び飛びの値をテーブルとしてまとめた図１１に示す特徴量テーブルＴを記憶している。ここで、コスト値とは、基準画像Ｉａにおける基準画素ｐに対する、比較画像Ｉｂにおける各画素の非類似度を表す評価値である。すなわち、以下に示すコスト値（および合成コスト値）は、値が小さいほど、比較画像における画素が基準画素と類似していることを示す。記憶部３４０は、図９に示すＲＯＭ３３またはＲＡＭ３４によって実現される。ここで、特徴量テーブルＴに含まれるシフト量ｄの飛び飛びの値をシフト量間引き特徴量（特徴量）というものとする。シフト量間引き特徴量は、具体的には、比較画像Ｉｂにおける候補ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃを求める際に用いるシフト量ｄのうち、所定のシフト量ｄの範囲（例えば、０＜ｄ＜２５）から、所定の方式によって値を間引くことによって得られた飛び飛びのシフト量ｄを含むものである。すなわち、シフト量間引き特徴量は、所定のシフト量の範囲内の不連続なシフト量ｄを含むものである。
【００５９】
コスト算出部３１０は、基準画像Ｉａにおける基準画素ｐ（ｘ，ｙ）の輝度値、および、基準画素ｐ（ｘ，ｙ）に基づく比較画像Ｉｂにおけるエピポーラ線上で、基準画素ｐ（ｘ，ｙ）の位置に相当する画素からシフト量ｄでシフトすることにより特定される、対応画素の候補ｑ（ｘ＋ｄ，ｙ）（候補領域）の各輝度値に基づいて、各候補ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）を算出することにより取得する。このとき、コスト算出部３１０は、比較画像Ｉｂにおける候補ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）を算出するために用いるシフト量ｄとして、上述のシフト量間引き特徴量に含まれるシフト量ｄを用いてコスト値Ｃ（ｐ，ｄ）を算出する。すなわち、コスト算出部３１０は、画素単位でシフトするシフト量ｄに基づいてコスト値Ｃを算出するのではなく、シフト量間引き特徴量に含まれる飛び飛びのシフト量ｄに基づいてコスト値Ｃ（ｐ，ｄ）を算出する。その結果、コスト値Ｃを算出する対象である指定の範囲内の候補ｑ（ｘ＋ｄ，ｙ）は、部分的に、シフトする方向において最も近い領域が、２画素以上ずれることになる。コスト算出部３１０は、図９に示すＦＰＧＡ３１によって実現される。コスト算出部３１０が算出するコスト値Ｃとしては、例えば、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅｓ）、またはＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅｓ）等を用いることができる。そして、シフト量間引き特徴量に含まれる飛び飛びのシフト量ｄと、コスト算出部３１０により算出されたコスト値Ｃとの関係を示すグラフが、図１２に示すグラフである。このように、コスト算出部３１０は、画素単位でシフトするシフト量ｄではなく、シフト量間引き特徴量に含まれる飛び飛びのシフト量ｄに基づいてコスト値Ｃを算出するので、コスト値Ｃの算出のための演算処理の負荷を低減することができる。
【００６０】
ここで、シフト量間引き特徴量を求めるための所定の方式の一例を説明する。まず、上述の（式２）により、比較画像Ｉｂおよび基準画像Ｉａにおいて、視差値Δが小さい物体までの距離Ｚは大きく、視差値Δが大きい物体までの距離Ｚは小さくなることがわかる。したがって、比較画像Ｉｂおよび基準画像Ｉａにおいて、視差値Δが小さい領域（距離Ｚが大きい領域）での視差値Δの単位変化に対する距離Ｚの変化は、視差値Δが大きい領域（距離Ｚが小さい領域）での視差値Δの単位変化に対する距離Ｚの変化よりも大きい。例えば、上述の（式２）において、視差値導出装置３の仕様で定まるＢ×ｆの値を、Ｂ×ｆ＝３０とする。このとき、視差値Δが小さい領域において、例えば、視差値Δが「２」から「３」に単位変化した場合、距離Ｚの変化は「１５」から「１０」に変化し、この場合の距離Ｚの変化量は「−５」である。一方、視差値Δが大きい領域において、例えば、視差値Δが「１０」から「１１」に単位変化した場合、距離Ｚの変化は「３」から「２．７」に変化し、この場合の距離Ｚの変化量は「−０．３」となり、視差値Δが小さい領域における距離Ｚの変化量よりも小さくなる。
【００６１】
また、路面を走行する車両１００の運転支援を満たす必要最低限の距離情報には、求められる分解能がある。例えば、距離情報として求められる距離の範囲が１〜１００［ｍ］であって、求められる分解能が１［ｍ］である場合等である。このような場合、シフト量ｄが小さい領域ほど、シフト量ｄの変化に対して距離Ｚの変化が大きくなるので、距離Ｚの分解能を満たす視差値Δを導出するためには、コスト算出部３１０は、細かい間隔のシフト量ｄごとにコスト値Ｃを算出する必要がある。一方、シフト量ｄが大きい領域ほど、シフト量ｄの変化に対して距離Ｚの変化が小さくなるので、距離Ｚの分解能を満たす視差値Δを導出するためには、コスト算出部３１０は、粗い間隔のシフト量ｄごとにコスト値Ｃを算出すればよい。したがって、求められる距離の分解能に基づいてシフト量間引き特徴量を求める場合、シフト量間引き特徴量に含まれるシフト量ｄの値が小さい領域では、飛び飛びのシフト量ｄの間隔を小さく（細かく）し、シフト量ｄの値が大きい領域では、飛び飛びのシフト量ｄの間隔を大きく（粗く）して求めればよい。すなわち、シフト量間引き特徴量に含まれるシフト量ｄを昇順に並べた場合、シフト量ｄの値が大きくなるほど、隣接するシフト量ｄ間の値の差が大きくなる。このようにして求められたシフト量間引き特徴量は、特徴量テーブルＴとして、記憶部３４０に予め記憶しておく。
【００６２】
例えば、所定のシフト量ｄの範囲が上述のように０＜ｄ＜２５とした場合、上述の方法によって求められるシフト量間引き特徴量の一例として示したものが図１１に示す特徴量テーブルＴのシフト量間引き特徴量である。図１１に示す特徴量テーブルＴのシフト量間引き特徴量は、「１，２，３，５，７，９，１２，１５，１９，２３」というシフト量ｄで構成されている。この図１１に示すシフト量間引き特徴量に含まれるシフト量ｄの値の間隔は、「１，１，２，２，２，３，３，４，４」となっており、上述のように、シフト量ｄの値が小さい領域では、シフト量ｄの間隔が小さくなっており、シフト量ｄの値が大きい領域では、シフト量ｄの間隔が大きくなっている。以下の説明では、特徴量テーブルＴのシフト量間引き特徴量が、図１１に示すように、「１，２，３，５，７，９，１２，１５，１９，２３」というシフト量ｄで構成されているものとして説明する。なお、シフト量間引き特徴量が、その他のシフト量ｄの値で構成されていてもよいのは、言うまでもない。
【００６３】
上述のように、図１１に示すシフト量間引き特徴量に含まれるシフト量ｄと、コスト算出部３１０により算出されたコスト値Ｃと、の関係を示す図１２のグラフにおいては、シフト量ｄ＝３およびｄ＝１２において、コスト値Ｃの最小値として近似した値となっているため、コスト値Ｃの最小値を求めることによって、基準画像Ｉａにおける基準画素に対応する比較画像Ｉｂにおける対応画素を求めることは困難である。特に、画像におけるテクスチャが弱い部分がある場合には、このようにコスト値Ｃの最小値を求めることは困難になる。
【００６４】
コスト合成部３２０は、基準画像Ｉａにおける基準画素ｐ（ｘ，ｙ）（第１基準領域）の周辺の画素を基準画素（第２基準領域）とした場合のその基準画素についての比較画像Ｉｂにおける画素のコスト値Ｃを、コスト算出部３１０により算出された候補ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）に集約させて、候補ｑ（ｘ＋ｄ，ｙ）の合成コスト値Ｌｓ（ｐ，ｄ）を算出する。このとき、コスト合成部３２０は、合成コスト値Ｌｓ（ｐ，ｄ）を算出するために用いるシフト量ｄとして、上述のシフト量間引き特徴量に含まれるシフト量ｄを用いて合成コスト値Ｌｓ（ｐ，ｄ）を算出する。すなわち、コスト合成部３２０は、画素単位でシフトするシフト量ｄに基づいて合成コスト値Ｌｓを算出するのではなく、シフト量間引き特徴量に含まれる飛び飛びのシフト量ｄに基づいて合成コスト値Ｌｓ（ｐ，ｄ）を算出する。その結果、合成コスト値Ｌｓを算出する対象である指定の範囲内の候補ｑ（ｘ＋ｄ，ｙ）は、部分的に、シフトする方向において最も近い領域が、２画素以上ずれることになる。コスト合成部３２０は、図９に示すＦＰＧＡ３１によって実現される。コスト合成部３２０は、合成コスト値Ｌｓを算出するために、まず、上述の（式３）によって、所定のｒ方向の経路コスト値Ｌｒ（ｐ，ｄ）を算出する。この場合、（式３）におけるＬｒ（ｐ−ｒ，ｄ）は、基準画素ｐの座標からｒ方向に１画素シフトした座標の画素について、シフト量間引き特徴量に含まれるシフト量ｄにおいて変化させた場合のそれぞれの経路コスト値Ｌｒを示す。次に、コスト合成部３２０は、図５に示したように、８方向の経路コスト値ＬｒであるＬｒ０、Ｌｒ４５、Ｌｒ９０、Ｌｒ１３５、Ｌｒ１８０、Ｌｒ２２５、Ｌｒ２７０およびＬｒ３１５を算出し、最終的に上述の（式４）に基づいて、合成コスト値Ｌｓ（ｐ，ｄ）を算出する。そして、シフト量間引き特徴量に含まれる飛び飛びのシフト量ｄと、コスト合成部３２０により算出された合成コスト値Ｌｓとの関係を示すグラフが、図１３に示すグラフである。図１３に示すように、合成コスト値Ｌｓは、シフト量ｄ＝３のとき最小値となる。このように、コスト合成部３２０は、画素単位でシフトするシフト量ｄではなく、シフト量間引き特徴量に含まれる飛び飛びのシフト量ｄに基づいて合成コスト値Ｌｓを算出するので、合成コスト値Ｌｓの算出のための演算処理の負荷を低減することができる。
【００６５】
サブピクセル推定部３３０は、コスト合成部３２０により算出された、基準画像Ｉａにおける基準画素についての比較画像Ｉｂにおける画素の合成コスト値Ｌｓの最小値（第１極値）に対応するシフト量ｄ、およびそれに隣接するシフト量ｄにおける合成コスト値Ｌｓに基づいて、サブピクセル推定を実行する。サブピクセル推定部３３０は、図９に示すＦＰＧＡ３１によって実現される。図１３に示す合成コスト値Ｌｓのグラフは、飛び飛びではあるが画素単位で区切られたシフト量ｄに対する合成コスト値Ｌｓのグラフである。したがって、図１３に示すグラフの合成コスト値Ｌｓの最小値は、画素単位で区切られたシフト量ｄ＝３における合成コスト値Ｌｓということになる。すなわち、図１３に示すような画素単位で区切られたシフト量ｄに対する合成コスト値Ｌｓのグラフにおいては、視差値Δとして画素単位の値を導出することしかできないことになる。ここで、サブピクセル推定とは、視差値Δを画素単位の値ではなく、画素より小さい単位（以下、サブピクセル単位という）で視差値Δを推定して導出するものである。
【００６６】
まず、図１４を参照しながら、サブピクセル推定部３３０がパラボラフィッティングによるサブピクセル推定を実行する場合について説明する。サブピクセル推定部３３０は、コスト合成部３２０によって算出された合成コスト値Ｌｓのグラフ（図１３）において、合成コスト値Ｌｓが最小となるシフト量ｄの値を求める。図１３の例では、シフト量ｄ＝３の場合が、合成コスト値Ｌｓが最小となる。次に、サブピクセル推定部３３０は、シフト量間引き特徴量において、シフト量ｄ＝３に隣接するシフト量ｄを求める。具体的には、シフト量ｄ＝２，５である。次に、サブピクセル推定部３３０は、図１３に示すシフト量ｄと合成コスト値Ｌｓとのグラフにおいて、図１４に示すように、シフト量ｄ＝２，３，５である３点を通る下に凸の２次曲線を求める。そして、サブピクセル推定部３３０は、その２次曲線の極小値（第２極値）に対応するサブピクセル単位のシフト量ｄが視差値Δであると推定する。
【００６７】
次に、図１５を参照しながら、サブピクセル推定部３３０が最小二乗法によるサブピクセル推定を実行する場合について説明する。サブピクセル推定部３３０は、コスト合成部３２０によって算出された合成コスト値Ｌｓのグラフ（図１３）において、合成コスト値Ｌｓが最小となるシフト量ｄの値を求める。図１３の例では、シフト量ｄ＝３の場合が、合成コスト値Ｌｓが最小となる。次に、サブピクセル推定部３３０は、シフト量間引き特徴量において、シフト量ｄ＝３の近傍の４つのシフト量ｄを求める。具体的には、シフト量ｄ＝１，２，５，７である。次に、サブピクセル推定部３３０は、図１３に示すシフト量ｄと合成コスト値Ｌｓとのグラフにおいて、図１５に示すように、最小二乗法によってシフト量ｄ＝１，２，３，５，７である５点の近傍を通る下に凸の２次曲線を求める。そして、サブピクセル推定部３３０は、その２次曲線の極小値（第３極値）に対応するサブピクセル単位のシフト量ｄが視差値Δであると推定する。
【００６８】
サブピクセル推定部３３０は、図１４に示すパラボラフィッティングによるサブピクセル推定、または、図１５に示す最小二乗法によるサブピクセル推定のいずれかによって、視差値Δを推定して導出する。これによって、画素より小さい単位であるサブピクセル単位で視差値Δを導出することができるので、精度が高く、かつ密な視差値Δを導出することができる。
【００６９】
なお、サブピクセル推定は、上述のパラボラフィッティングによるもの、または、最小二乗法によるものに限定されるものではなく、その他の方法によってサブピクセル推定を行うものとしてもよい。例えば、サブピクセル推定部３３０は、図１４に示す３点を用いて、２次曲線ではなく、３点を通る等角直線を求めて視差値Δを推定する等角直線フィッティングによりサブピクセル推定を実行するものとしてもよい。
【００７０】
また、最小二乗法によるサブピクセル推定において、図１５に示すグラフ上の５点を用いて２次曲線を求めるものとしたが、これに限定されるものではなく、異なる数の点を用いて２次曲線を求めるものとしてもよい。
【００７１】
また、サブピクセル推定部３３０によるサブピクセル推定によってサブピクセル単位の視差値Δを算出することに限定されるものではなく、サブピクセル推定の実行はせずに、画素単位の視差値Δを算出するものとしてもよい。この場合、サブピクセル推定部３３０は、コスト合成部３２０により算出された、基準画像Ｉａにおける基準画素についての比較画像Ｉｂにおける画素の合成コスト値Ｌｓの最小値に対応するシフト量ｄを視差値Δとすればよい。
【００７２】
視差画像生成部３５０は、サブピクセル推定部３３０により導出されたサブピクセル単位の視差値Δに基づいて、基準画像Ｉａの各画素の輝度値を、その画素に対応する視差値Δで表した画像である視差画像Ｉｐ（高密度視差画像）を生成する。視差画像生成部３５０は、図９に示すＦＰＧＡ３１によって実現される。図１６のうち、図１６（ａ）は、比較画像Ｉｂの一例を示し、図１６（ｂ）は、基準画像Ｉａの一例を示し、図１６（ｃ）は、視差画像生成部３５０により生成された視差画像Ｉｐの模式図を示す。
【００７３】
なお、コスト算出部３１０、コスト合成部３２０、サブピクセル推定部３３０および視差画像生成部３５０は、ＦＰＧＡ３１によって実現、すなわちハードウェア回路によって実現されるものとしたが、これに限定されるものではない。すなわち、コスト算出部３１０、コスト合成部３２０、サブピクセル推定部３３０または視差画像生成部３５０の少なくともいずれかは、ソフトウェアであるプログラムがＣＰＵ３２によって実行されることにより、実現されてもよい。また、コスト算出部３１０、コスト合成部３２０、サブピクセル推定部３３０および視差画像生成部３５０は、機能を概念的にブロック構成したものであって、このような構成に限定されるものではない。
【００７４】
（視差値導出装置の画像処理動作）
図１７は、本実施形態に係る視差値導出装置のステレオマッチング処理の動作フローの一例を示す図である。図１７を参照しながら、視差値導出装置３のステレオマッチング処理（ＳＧＭ法）に基づく画像処理の動作の流れについて説明する。
【００７５】
＜ステップＳ１−１＞
視差値導出装置３の画像取得部１１０は、左のカメラ（撮像装置１０ｂ）により前方の被写体を撮像して、それぞれアナログの画像信号を生成し、その画像信号に基づく画像である輝度画像を得る。そして、ステップＳ２−１へ進む。
【００７６】
＜ステップＳ１−２＞
視差値導出装置３の画像取得部１１０は、右のカメラ（撮像装置１０ａ）により前方の被写体を撮像して、それぞれアナログの画像信号を生成し、その画像信号に基づく画像である輝度画像を得る。そして、ステップＳ２−２へ進む。
【００７７】
＜ステップＳ２−１＞
視差値導出装置３のフィルタ部２１０は、撮像装置１０ｂにより撮像されて得られたアナログの画像信号に対して、ノイズを除去し、デジタル形式の画像データに変換する。そして、ステップＳ３−１へ進む。
【００７８】
＜ステップＳ２−２＞
視差値導出装置３のフィルタ部２１０は、撮像装置１０ａにより撮像されて得られたアナログの画像信号に対して、ノイズを除去し、デジタル形式の画像データに変換する。そして、ステップＳ３−２へ進む。
【００７９】
＜ステップＳ３−１＞
フィルタ部２１０は、ステップＳ２−１において変換したデジタル形式の画像データに基づく画像をステレオマッチング処理における比較画像Ｉｂとして出力する。そして、ステップＳ４へ進む。
【００８０】
＜ステップＳ３−２＞
フィルタ部２１０は、ステップＳ２−２において変換したデジタル形式の画像データに基づく画像をステレオマッチング処理における基準画像Ｉａとして出力する。そして、ステップＳ４へ進む。
【００８１】
＜ステップＳ４＞
視差値導出装置３のコスト算出部３１０は、基準画像Ｉａにおける基準画素ｐ（ｘ，ｙ）の輝度値、および、基準画素ｐ（ｘ，ｙ）に基づく比較画像Ｉｂにおけるエピポーラ線上で、基準画素ｐ（ｘ，ｙ）の位置に相当する画素からシフト量ｄでシフトすることにより特定される、対応画素の候補ｑ（ｘ＋ｄ，ｙ）の各輝度値に基づいて、各候補ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）を算出することにより取得する。このとき、コスト算出部３１０は、比較画像Ｉｂにおける候補ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）を算出するために用いるシフト量ｄとして、記憶部３４０に記憶された特徴量テーブルＴのシフト量間引き特徴量に含まれるシフト量ｄを用いてコスト値Ｃ（ｐ，ｄ）を算出する。そして、ステップＳ５へ進む。
【００８２】
＜ステップＳ５＞
視差値導出装置３のコスト合成部３２０は、基準画像Ｉａにおける基準画素ｐ（ｘ，ｙ）の周辺の画素を基準画素とした場合のその基準画素についての比較画像Ｉｂにおける画素のコスト値Ｃを、コスト算出部３１０により算出された候補ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）に集約させて、候補ｑ（ｘ＋ｄ，ｙ）の合成コスト値Ｌｓ（ｐ，ｄ）を算出する。このとき、コスト合成部３２０は、合成コスト値Ｌｓ（ｐ，ｄ）を算出するために用いるシフト量ｄとして、上述のシフト量間引き特徴量に含まれるシフト量ｄを用いて合成コスト値Ｌｓ（ｐ，ｄ）を算出する。そして、ステップＳ６へ進む。
【００８３】
＜ステップＳ６＞
視差値導出装置３のサブピクセル推定部３３０は、コスト合成部３２０により算出された、基準画像Ｉａにおける基準画素についての比較画像Ｉｂにおける画素の合成コスト値Ｌｓの最小値に対応するシフト量ｄ、およびそれに隣接するシフト量ｄにおける合成コスト値Ｌｓに基づいて、サブピクセル推定を実行する。サブピクセル推定部３３０は、サブピクセル推定によって求めた近似曲線（図１４および図１５においては下に凸の２次曲線）の極小値に対応するサブピクセル単位のシフト量ｄが視差値Δであると推定する。そして、ステップＳ７へ進む。
【００８４】
＜ステップＳ７＞
視差値導出装置３の視差画像生成部３５０は、サブピクセル推定部３３０により導出されたサブピクセル単位の視差値Δに基づいて、基準画像Ｉａの各画素の輝度値を、その画素に対応する視差値Δで表した画像である視差画像Ｉｐ（高密度視差画像）を生成する。
【００８５】
その後、図９に示すＩ／Ｆ３５を介して、視差画像Ｉｐの画像データが出力され、物体認識装置５によって、撮像装置１０ａ、１０ｂから物体までの距離が算出される。
【００８６】
（車両に機器制御システムを搭載した場合の例）
図１８は、本実施形態に係る機器制御システムを車両に搭載した例を示す図である。以下、図１８を参照しながら、車両１００に機器制御システム６０を搭載した場合の例を説明する。
【００８７】
図１８に示す構成では、自動車である車両１００は、機器制御システム６０を備えている。機器制御システム６０は、居室空間である車室において設置された視差値導出装置３と、制御装置６と、ステアリングホイール７と、ブレーキペダル８と、を備えている。
【００８８】
視差値導出装置３は、車両１００の進行方向を撮像する撮像機能を有し、例えば、車両１００のフロントウィンドウの内側のバックミラー近傍に設置される。視差値導出装置３は、本体部２と、本体部２に固定された撮像装置１０ａと、撮像装置１０ｂとを備えている。撮像装置１０ａ、１０ｂは、車両１００の進行方向の被写体を撮像できるように本体部２に固定されている。
【００８９】
制御装置６は、上述の物体認識システム１における物体認識装置５の代わりに視差値導出装置３に接続された装置であり、視差値導出装置３から受信した視差画像の画像データに基づいて求まる視差値導出装置３から被写体までの距離情報により、各種車両制御を実行する。制御装置６は、車両制御の例として、視差値導出装置３から受信した視差画像の画像データに基づいて、ステアリングホイール７を含むステアリング系統（制御対象）を制御して障害物を回避するステアリング制御、または、ブレーキペダル８（制御対象）を制御して車両１００を減速および停止させるブレーキ制御等を実行する。
【００９０】
このような視差値導出装置３および制御装置６を含む機器制御システム６０のように、ステアリング制御またはブレーキ制御等の車両制御が実行されることによって、車両１００の運転の安全性を向上することができる。
【００９１】
なお、上述のように、視差値導出装置３は、車両１００の前方を撮像するものとしたが、これに限定されるものではない。すなわち、視差値導出装置３は、車両１００の後方または側方を撮像するように設置されるものとしてもよい。この場合、視差値導出装置３は、車両１００の後方の後続車、または側方を並進する他の車両等の位置を検出することができる。そして、制御装置６は、車両１００の車線変更時または車線合流時等における危険を検知して、上述の車両制御を実行することができる。また、制御装置６は、車両１００の駐車時等におけるバック動作において、視差値導出装置３によって検出された車両１００の後方の障害物の視差画像に基づいて、衝突の危険があると判断した場合に、上述の車両制御を実行することができる。
【００９２】
（本実施形態の主な効果）
以上のように、本実施形態に係る視差値導出装置３において、コスト算出部３１０およびコスト合成部３２０は、画素単位でシフトするシフト量ｄではなく、シフト量間引き特徴量に含まれる飛び飛びのシフト量ｄに基づいて、それぞれコスト値Ｃおよび合成コスト値Ｌｓを算出している。これによって、画素単位でシフトするシフト量ｄに基づいて算出する場合と比較して、コスト値Ｃおよび合成コスト値Ｌｓを算出するための演算処理の負荷を低減することができ、ステレオマッチング処理の処理速度を向上させ、視差値を導出する時間を短縮することができる。
【００９３】
また、視差値導出装置３において、サブピクセル推定部３３０は、画素より小さい単位であるサブピクセル単位で視差値Δを導出することができるので、精度が高く、かつ密な視差値Δを導出することができ、より正確な視差画像を得ることができる。
【００９４】
また、コスト算出部３１０およびコスト合成部３２０が、それぞれコスト値Ｃおよび合成コスト値Ｌｓの算出のために使用するシフト量間引き特徴量に含まれる飛び飛びのシフト量ｄは、シフト量ｄの値が小さい領域では、シフト量ｄの間隔を小さく（細かく）し、シフト量ｄの値が大きい領域では、シフト量ｄの間隔を大きく（粗く）している。これによって、路面を走行する車両の運転支援を満たす必要最低限の距離情報に求められる分解能を満たすことができる。
【００９５】
なお、一致度としてのコスト値Ｃを、類似度を表す評価値とした場合、合成コスト値Ｌｓがサブピクセル単位で最大となるシフト量ｄが視差値Δとなる。
【００９６】
また、上述の実施形態では、物体認識装置５が視差画像（視差値）に基づき、距離Ｚを算出しているが、これに限定されるものではなく、視差値導出装置３の画像処理装置３０のＣＰＵ３２が距離Ｚを算出するものとしてもよい。
【符号の説明】
【００９７】
１  物体認識システム
２  本体部
３  視差値導出装置
４  バスライン
５  物体認識装置
６  制御装置
７  ステアリングホイール
８  ブレーキペダル
１０ａ、１０ｂ  撮像装置
１１ａ、１１ｂ  撮像レンズ
１２ａ、１２ｂ  絞り
１３ａ、１３ｂ  画像センサ
２０ａ、２０ｂ  信号変換装置
２１ａ、２１ｂ  ＣＤＳ
２２ａ、２２ｂ  ＡＧＣ
２３ａ、２３ｂ  ＡＤＣ
２４ａ、２４ｂ  フレームメモリ
３０  画像処理装置
３１  ＦＰＧＡ
３２  ＣＰＵ
３３  ＲＯＭ
３４  ＲＡＭ
３５  Ｉ／Ｆ
３９  バスライン
５１  ＦＰＧＡ
５２  ＣＰＵ
５３  ＲＯＭ
５４  ＲＡＭ
５５  Ｉ／Ｆ
５８  ＣＡＮ  Ｉ／Ｆ
６０  機器制御システム
１００  車両
１１０  画像取得部
２１０  フィルタ部
３１０  コスト算出部
３２０  コスト合成部
３３０  サブピクセル推定部
３４０  記憶部
３５０  視差画像生成部
Ｂ  基線長
Ｃ  コスト値
ｄ  シフト量
Ｅ  物体
ＥＬ  エピポーラ線
ｆ  焦点距離
Ｉａ  基準画像
Ｉｂ  比較画像
Ｉｐ  視差画像
Ｌｒ  経路コスト値
Ｌｓ  合成コスト値
Ｓ、Ｓａ、Ｓｂ  点
Ｔ  特徴量テーブル
Ｚ  距離
Δ  視差値
【先行技術文献】
【特許文献】
【００９８】
【特許文献１】特開２０１２−１８１１４２号公報
【図１】
2015179063.tif 000004
【図３】
2015179063.tif 000005
【図４】
2015179063.tif 000006
【図５】
2015179063.tif 000007
【図６】
2015179063.tif 000008
【図７】
2015179063.tif 000009
【図８】
2015179063.tif 000010
【図９】
2015179063.tif 000011
【図１０】
2015179063.tif 000012
【図１１】
2015179063.tif 000013
【図１２】
2015179063.tif 000014
【図１３】
2015179063.tif 000015
【図１４】
2015179063.tif 000016
【図１５】
2015179063.tif 000017
【図１７】
2015179063.tif 000018
【図１８】
2015179063.tif 000019
【図２】
2015179063.tif 000020
【図１６】
2015179063.tif 000021