(57)【特許請求の範囲】
【請求項１】
物体を異なる視点から撮像した複数の画像を取得する画像取得部と、
前記複数の画像間の視差値を算出し、算出した前記視差値を用いて前記画像取得部から前記物体までの距離を演算する測距部と、
当該カメラシステムを搭載する動作体の状況および前記動作体の周辺の状況の少なくとも一方を示す状況情報を取得する状況情報取得部と、
前記複数の画像のうちの前記測距部が前記視差値を算出する際に用いる画素の方向数を、前記状況情報に応じて変更制御する制御部と、
を備えたことを特徴とするカメラシステム。
【請求項２】
前記状況情報取得部は、前記動作体である自車両または自車両周辺の状況を示す前記状況情報を取得し、
前記制御部は、前記自車両または前記自車両周辺の状況に応じて前記測距部の演算負荷を制御することを特徴とする請求項１に記載のカメラシステム。
【請求項３】
前記状況情報取得部は、前記自車両の状況として前記自車両の走行状況を示す前記状況情報を取得することを特徴とする請求項２に記載のカメラシステム。
【請求項４】
前記状況情報取得部は、前記自車両周辺の状況として前記自車両から前記自車両周辺の他車両までの距離を示す前記状況情報を取得することを特徴とする請求項２または３に記載のカメラシステム。
【請求項５】
物体を異なる視点から撮像した複数の画像を画像取得部によって取得する画像取得ステップと、
前記複数の画像間の視差値を算出し、算出した前記視差値を用いて前記画像取得部から前記物体までの距離を演算する測距ステップと、
前記画像取得部を備えるカメラシステムを搭載する動作体の状況および前記動作体の周辺の状況の少なくとも一方を示す状況情報を取得する状況情報取得ステップと、
前記複数の画像のうちの前記測距ステップが前記視差値を算出する際に用いる画素の方向数を、前記状況情報に応じて変更制御する制御ステップと、
を含むことを特徴とする測距方法。
【請求項６】
カメラシステムが備えるコンピュータに、
物体を異なる視点から撮像した複数の画像を画像取得部によって取得する画像取得ステップと、
前記複数の画像間の視差値を算出し、算出した前記視差値を用いて前記画像取得部から前記物体までの距離を演算する測距ステップと、
前記カメラシステムを搭載する動作体の状況および前記動作体の周辺の状況の少なくとも一方を示す状況情報を取得する状況情報取得ステップと、
前記複数の画像のうちの前記測距ステップが前記視差値を算出する際に用いる画素の方向数を、前記状況情報に応じて変更制御する制御ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラシステム、測距方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、自動車の運転支援を目的として、自動車間の距離、または自動車と障害物との間の距離を測定することにより自動車の衝突防止を図るカメラシステムが、自動車に搭載されてきている。このような車載のカメラシステムは、一般に、２つの異なる視点から同一の物体の画像を撮像する２つのカメラを有するステレオカメラと、このステレオカメラによる各画像をもとにステレオマッチング処理を行って上記の各種距離を測定する測距装置とを備える。
【０００３】
ステレオマッチング処理とは、ステレオカメラによって撮像された測距対象の物体の各画像をもとに、このステレオカメラと測距対象の物体との距離を演算する処理である。すなわち、ステレオマッチング処理では、ステレオカメラのうちの一方のカメラによって撮像された基準画像と、他方のカメラによって撮像された比較画像との間で対応する画素領域をマッチングすることにより、これら両画像間の視差を示す視差値が導出される。ついで、この得られた視差値を用い、三角測量の原理に基づいて、ステレオカメラと、このステレオカメラによる各画像（基準画像および比較画像）に含まれる測距対象の物体（同一の被写体）との距離が算出される。
【０００４】
このようなステレオマッチング処理によるステレオカメラと物体との距離は、このステレオカメラ等を備えたカメラシステムを搭載する自動車と物体との距離として用いられる。これにより、自動車周辺の物体の認識処理、並びに、自動車の衝突防止のためのブレーキ制御および操舵制御等の自動車の運転支援が可能となる。
【０００５】
ところで、上述したステレオマッチング処理としては、ブロックマッチング法およびＳＧＭ（Ｓｅｍｉ−Ｇｌｏｂａｌ  Ｍａｔｃｈｉｎｇ）法がある。ブロックマッチング法は、比較画像から画素領域を切り出し、切り出した画素領域の基準画像に対する輝度差の総和、輝度差の２乗和、および正規化相互相関等を求めて、基準画像と比較画像との間の類似性を評価するものである。しかし、ブロックマッチング法では、画像に写された物体のテクスチャが弱い場合、抽出すべき画像中の物体の特徴が乏しい画素領域において、十分な視差値を得ることができない。
【０００６】
一方、ＳＧＭ法は、基準画像内の注目する基準画素に対する比較画像内の比較画素のコスト値だけではなく、この比較画素の周囲に位置する各画素の基準画素に対するコスト値を集約して、テクスチャが弱い物体に対する視差値を導出する。このため、ＳＧＭ法では、テクスチャが弱い物体の画素領域のみでは基準画像と比較画像との間の十分なコスト値が得られない画像の領域（座標）においても、視差検出を行うことができる。なお、比較画像内の比較画素は、基準画像内の基準画素と比較する比較対象の画素である。コスト値は、基準画像内の基準画素と比較画像内の比較画素との一致する度合い（一致度）を示す値であり、例えば、類似度または非類似度である。
【０００７】
上述したようなステレオカメラに関する従来技術として、例えば、自車両に搭載した左右２つのカメラにより、自車両前方の遠方に位置する計測対象物の画像を撮像し、自車両の走行環境情報に基づいて、これら２つのカメラによる各画像内の遠方領域となる一部領域の解像度を高める処理を行い、この高解像度化した各画像の一部領域の視差をもとに、自車両から計測対象物までの距離を計算するものがある（特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した従来技術では、ステレオカメラと同ステレオカメラによって撮像された物体との距離を測定する際、この距離をステレオマッチング処理によって算出するカメラシステム内の演算回路に多大な負荷がかかってしまう。これに起因して、演算回路から高い熱が発生し、この発生した熱がステレオカメラに伝わってステレオカメラ自体の動作に悪影響を及ぼす虞がある。また、社会全般の省エネルギー指向の観点から、ステレオカメラを用いた測距処理時の省電力化が要望されている。
【０００９】
本発明は、上記に鑑みてなされたものであって、測距処理時の熱の発生を抑制するとともに省電力化を実現することができるカメラシステム、測距方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明は、物体を異なる視点から撮像した複数の画像を取得する画像取得部と、前記複数の画像間の視差値を算出し、算出した前記視差値を用いて前記画像取得部から前記物体までの距離を演算する測距部と、当該カメラシステムを搭載する動作体の状況および前記動作体の周辺の状況の少なくとも一方を示す状況情報を取得する状況情報取得部と、前記複数の画像のうちの前記測距部が前記視差値を算出する際に用いる画素の方向数を、前記状況情報に応じて変更制御する制御部と、を備えたことを特徴とする。
【発明の効果】
【００１１】
本発明によれば、測距処理時の熱の発生を抑制するとともに省電力化を実現することができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、本実施の形態にかかるカメラシステムの一構成例を示すブロック図である。
【図２】図２は、本実施の形態にかかるカメラシステムを搭載した動作体を側面から見た図である。
【図３】図３は、本実施の形態にかかるカメラシステムを搭載した動作体を正面から見た図である。
【図４】図４は、画像を用いて物体までの距離を測定する測距処理の概要を示す図である。
【図５】図５は、撮像装置から物体までの距離を導き出す測距処理の原理を説明する図である。
【図６】図６は、基準画像内の基準画素に対応する比較画像内の対応画素を求める処理を説明する図である。
【図７】図７は、画素のシフト量毎のコスト値の一例を示す図である。
【図８】図８は、合成コスト値を導出するための概念図である。
【図９】図９は、画素のシフト量毎の合成コスト値の一例を示す図である。
【図１０】図１０は、本実施の形態における測距部の一構成例を示すブロック図である。
【図１１】図１１は、本実施の形態にかかるカメラシステムによる測距方法の一例を示すフローチャートである。
【図１２】図１２は、本実施の形態にかかる測距方法の演算負荷制御処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下に添付図面を参照して、カメラシステム、測距方法、およびプログラムの実施の形態を詳細に説明する。なお、図面は模式的なものであり、各要素の寸法の関係、各要素の比率等は、現実のものとは異なる場合があることに留意する必要がある。図面の相互間においても、互いの寸法の関係や比率が異なる部分が含まれている場合がある。また、各図面において、同一構成部分には同一符号が付されている。
【００１４】
（カメラシステムの構成）
まず、本実施の形態にかかるカメラシステムの構成について説明する。図１は、本実施の形態にかかるカメラシステムの一構成例を示すブロック図である。図２は、本実施の形態にかかるカメラシステムを搭載した動作体を側面から見た図である。図３は、本実施の形態にかかるカメラシステムを搭載した動作体を正面から見た図である。以下では、動作体の一例として車両（具体的には自動車）を例示し、本実施の形態にかかるカメラシステムの構成を説明する。
【００１５】
図１〜３に示すように、本実施の形態にかかるカメラシステム１は、画像取得部１０と、処理制御装置２０とを備え、車両１００に搭載される。また、処理制御装置２０には、車両１００を構成する装置である外部装置３０がケーブル等を介して接続される。
【００１６】
画像取得部１０は、被写体である物体を互いに異なる視点から撮像した複数の画像を取得するものであり、図１に示すように、ステレオカメラ１１と信号変換部１５ａ，１５ｂとを備える。ステレオカメラ１１は、平行等位に配置される２つの撮像装置１１ａ，１１ｂを備える。また、本実施の形態において、画像取得部１０は、図２，３に示すように、これら２つの撮像装置１１ａ，１１ｂの各撮像視野が車両１００の前方を向くよう、車両１００内、例えば、車両１００のフロントウィンドウ内側のバックミラー近傍に設置される。
【００１７】
撮像装置１１ａは、車両１００の前方の光景を撮像して画像を表すアナログ信号を生成するものであり、撮像レンズ１２ａ、絞り１３ａ、および画像センサ１４ａを備える。撮像レンズ１２ａは、撮像装置１１ａの撮像視野内から入射して撮像レンズ１２ａを通過する光を屈折させて、この撮像視野内の被写体である物体の像を結像させるための光学素子である。絞り１３ａは、撮像レンズ１２ａを通過した光の一部を遮ることによって、画像センサ１４ａに入射する光の量を調整する。画像センサ１４ａは、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅｓ）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）等の半導体素子を用いて実現される。画像センサ１４ａは、撮像装置１１ａの撮像視野から撮像レンズ１２ａおよび絞り１３ａを介して入射した光を受光し、受光した光を電気的なアナログの画像信号に変換する。
【００１８】
撮像装置１１ｂは、上述した撮像装置１１ａと異なる視点から車両１００の前方の光景を撮像して画像を表すアナログ信号を生成するものであり、図１に示すように、撮像レンズ１２ｂ、絞り１３ｂ、および画像センサ１４ｂを備える。これらの撮像レンズ１２ｂ、絞り１３ｂ、および画像センサ１４ｂは、処理対象の光が撮像装置１１ｂの撮像視野内から入射した光であること以外、上述した撮像装置１１ａの撮像レンズ１２ａ、絞り１３ａ、および画像センサ１４ａと各々同様に機能する。
【００１９】
これら２つの撮像装置１１ａ，１１ｂは、車両１００の前方（進行方向）に位置する同一の被写体を異なる視点から撮像できるように、平行等位の状態にして画像取得部１０の筐体に固定配置されている。すなわち、一方の撮像装置１１ａの撮像レンズ１２ａおよび他方の撮像装置１１ｂの撮像レンズ１２ｂは、左右に並ぶ２つのカメラである撮像装置１１ａ，１１ｂが同一の条件で被写体の画像を撮像し得るように、平行等位に設置されている。
【００２０】
信号変換部１５ａは、ステレオカメラ１１の一方の撮像装置１１ａによって撮像された画像を表すアナログ信号をデジタル形式の画像データに変換するものである。信号変換部１５ａは、特に図１に図示しないが、ＣＤＳ（Ｃｏｒｒｅｌａｔｅｄ  Ｄｏｕｂｌｅ  Ｓａｍｐｌｉｎｇ）部、ＡＧＣ（Ａｕｔｏ  Ｇａｉｎ  Ｃｏｎｔｒｏｌ）部、ＡＤＣ（Ａｎａｌｏｇ  Ｄｉｇｉｔａｌ  Ｃｏｎｖｅｒｔｅｒ）部等を用いて構成される。信号変換部１５ａは、まず、撮像装置１１ａの画像センサ１４ａによって変換されたアナログの画像信号を受信し、受信したアナログの画像信号から相関二重サンプリングによってノイズを除去する。つぎに、信号変換部１５ａは、このノイズが除去されたアナログの画像信号の強度を制御する利得制御を行う。その後、信号変換部１５ａは、この利得制御されたアナログの画像信号をデジタル形式の画像データに変換する。信号変換部１５ａは、上述したように画像信号の変換処理を行う都度、得られたデジタル形式の画像データを表すデジタル画像信号を処理制御装置２０に送信する。
【００２１】
信号変換部１５ｂは、ステレオカメラ１１の他方の撮像装置１１ｂによって撮像された画像を表すアナログ信号をデジタル形式の画像データに変換するものである。信号変換部１５ｂは、上述した信号変換部１５ａと同様に構成され、処理対象の画像信号が撮像装置１１ｂの画像センサ１４ｂからのアナログの画像信号であること以外、上述した信号変換部１５ａと同様に機能する。このような信号変換部１５ｂは、画像センサ１４ｂによるアナログの画像信号をデジタル形式の画像データに変換する都度、得られたデジタル形式の画像データを表すデジタル画像信号を処理制御装置２０に送信する。
【００２２】
処理制御装置２０は、画像取得部１０による複数の画像（デジタル形式の画像データ）を用いて測距処理を行う画像処理機能と、カメラシステム１全体の制御を行い且つ測距処理の結果に基づいて外部装置３０の制御を行う制御機能とを兼ね備える。具体的には、図１に示すように、処理制御装置２０は、測距部２１と、状況情報取得部２２と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２３と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２４と、通信Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）２５と、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２６とを備える。また、測距部２１、状況情報取得部２２、ＲＯＭ２３、ＲＡＭ２４、通信Ｉ／Ｆ２５、およびＣＰＵ２６は、アドレスバスやデータバス等のバスライン２９によって電気的に接続されている。このような処理制御装置２０は、例えば図２に示すように、上述した画像取得部１０とともにカメラシステム１の筐体内に設けられる。
【００２３】
測距部２１は、画像取得部１０による複数の画像を用い、画像取得部１０から、これら複数の画像において同じ被写体である物体までの距離を演算して測定するものである。例えば、測距部２１は、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の集積回路を用いて構成され、画像取得部１０から物体（被写体）までの距離を演算する演算回路としての機能を有する。
【００２４】
図４は、画像を用いて物体までの距離を測定する測距処理の概要を示す図である。図２，３に示したようにカメラシステム１を搭載した車両１００の前方には、図４に示すように、物体１１０が位置する。このカメラシステム１のステレオカメラ１１を構成する撮像装置１１ａ，１１ｂ（図１参照）は、互いに異なる視点から物体１１０の画像（具体的には左右各視点からの輝度画像）を各々撮像する。
【００２５】
測距部２１は、図１に示すバスライン２９等を介して、画像取得部１０の信号変換部１５ａ，１５ｂからデジタル画像信号を受信する。測距部２１は、信号変換部１５ａからのデジタル画像信号によって表されるデジタル形式の画像データを、ステレオカメラ１１の一方の撮像装置１１ａによって撮像された物体１１０の基準画像Ｉａとして取得する。また、測距部２１は、信号変換部１５ｂからのデジタル画像信号によって表されるデジタル形式の画像データを、ステレオカメラ１１の他方の撮像装置１１ｂによって撮像された物体１１０の比較画像Ｉｂとして取得する。測距部２１は、これら複数の画像（基準画像Ｉａおよび比較画像Ｉｂ）を用いてＳＧＭ法によるステレオマッチング処理を行い、これにより、これら複数の画像間の視差を示す視差値、すなわち、図４に示す基準画像Ｉａと比較画像Ｉｂとの視差値Δを算出する。つぎに、測距部２１は、この算出した視差値Δを用いて、画像取得部１０(詳細には撮像装置１１ａ，１１ｂ)から物体１１０までの距離Ｚを演算する。
【００２６】
なお、基準画像Ｉａは、撮像装置１１ａ，１１ｂによって撮像された複数の画像のうちの基準とする画像である。比較画像Ｉｂは、この基準画像Ｉａと比較する画像である。また、物体１１０は、基準画像Ｉａおよび比較画像Ｉｂの双方に写されている同一の被写体である。このような物体１１０として、例えば、車両１００（自車両）に先行または対向する他車両、人、障害物等の立体物が挙げられる。
【００２７】
状況情報取得部２２は、図２，３に示すようにカメラシステム１を搭載する動作体（本実施の形態では車両１００）の状況およびこの動作体の周辺の状況の少なくとも一方を示す状況情報を取得するものである。具体的には、状況情報取得部２２は、車両１００の状況情報として、自車両の状況を示す状況情報と、自車両の周辺の状況を示す状況情報との少なくとも一方を取得する。より具体的には、状況情報取得部２２は、自車両の状況情報として、車両１００の加速度および速度等の走行状況を示す状況情報を取得する。この際、状況情報取得部２２は、例えば、通信Ｉ／Ｆ２５等を介して、外部装置３０から車両１００の加速度および速度の各情報を取得する。
【００２８】
一方、状況情報取得部２２は、自車両周辺の状況情報として、車両１００から車両１００の周辺に位置する立体物（例えば図４に示す物体１１０）までの距離を示す状況情報を取得する。このような自車両周辺の立体物までの距離の一例として、車両１００（自車両）から先行または対向の他車両までの距離が挙げられる。状況情報取得部２２は、例えば、上述した測距部２１から、このような自車両周辺の立体物までの距離を取得する。
【００２９】
ＲＯＭ２３は、プログラムやデータの格納用メモリとして用いる読み出し専用のメモリである。ＲＯＭ２３には、ＣＰＵ２６が実行するプログラムと、その他の固定データとが格納されている。ＲＡＭ２４は、プログラムやデータの展開用メモリ等として用いる書き込みおよび読み出し可能なメモリである。通信Ｉ／Ｆ２５は、外部装置３０等と通信するための信号入出力のインターフェースである。この通信Ｉ／Ｆ２５は、自動車のＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等に接続することができる。
【００３０】
ＣＰＵ２６は、カメラシステム１の全体制御と外部装置３０の制御とを行うものである。ＣＰＵ２６は、バスライン２９等を介して、画像取得部１０、測距部２１、状況情報取得部２２、ＲＯＭ２３、ＲＡＭ２４、および通信Ｉ／Ｆ２５と接続され、通信Ｉ／Ｆ２５等を介して外部装置３０と接続される。ＣＰＵ２６は、ＲＯＭ２３に格納されたプログラムを実行して、例えば、撮像装置１１ａ，１１ｂが同一の被写体である物体１１０の画像を同期して撮像するように撮像装置１１ａ，１１ｂの各動作タイミングを制御する。また、ＣＰＵ２６は、ＲＯＭ２３内のプログラムを実行して、バスライン２９等を介した信号変換部１５ａ，１５ｂと測距部２１と状況情報取得部との間の信号入出力、並びに、通信Ｉ／Ｆ２５等を介した状況情報取得部２２と外部装置３０との間の信号入出力を制御する。さらに、ＣＰＵ２６は、ＲＯＭ２３内のプログラムを実行して、測距部２１および状況情報取得部２２の各動作を制御し、測距部２１による測距処理の結果に基づいて外部装置３０の動作を制御する。
【００３１】
また、ＣＰＵ２６は、演算負荷制御部２６ａを有する。演算負荷制御部２６ａは、画像取得部１０から物体１１０までの距離Ｚ（図４参照）を測定する際の測距部２１の演算負荷を、状況情報取得部２２によって取得される車両１００またはその周囲の状況情報に基づいて制御する。具体的には、演算負荷制御部２６ａは、撮像装置１１ａ，１１ｂによる複数の画像（基準画像Ｉａおよび比較画像Ｉｂ）のうちの測距部２１が視差値Δを算出する際に用いる画素の方向数を、状況情報取得部２２による状況情報に応じて変更する。例えば、演算負荷制御部２６ａは、この視差値Δの算出時における画素の方向数を、車両１００（自車両）の状況または車両１００の周辺（自車両周辺）の状況を示す状況情報に応じて増減変化させる。これにより、演算負荷制御部２６ａは、車両１００と物体１１０との間の距離Ｚが短い等、車両１００の動作制御に緊急を要する場合、測距部２１の演算負荷を増大する制御を行って測距部２１による演算処理の精度を高める。または、演算負荷制御部２６ａは、上述した距離Ｚが長く、車両１００に接近した立体物がない等、車両の動作制御に緊急を要しない場合、測距部２１の演算負荷を低減する制御を行って測距部２１による演算処理の精度を必要最小限に下げる。これにより、演算負荷制御部２６ａは、測距部２１の測距処理時の負荷を軽減する。
【００３２】
一方、外部装置３０は、カメラシステム１を搭載する動作体を動作（走行等）させる駆動系として機能するものである。本実施の形態において、外部装置３０は、図２，３に示すようにカメラシステム１を搭載する車両１００の駆動系であり、例えば、エンジンや車軸等の動力部、ステアリングホイール、およびブレーキペダル等によって構成される。外部装置３０は、カメラシステム１の処理制御装置２０（詳細にはＣＰＵ２６）により、測距部２１の測距処理の結果に応じて制御され、これにより、車両１００の各種動作制御を実行する。例えば、外部装置３０は、通信Ｉ／Ｆ２５等を介して、測距部２１の測距処理の結果に応じた制御信号をＣＰＵ２６から受信する。外部装置３０は、このＣＰＵ２６からの制御信号に基づき、ステアリングホイールを含むステアリング系統を制御して物体１１０（他車両、人、または障害物等）を回避するステアリング制御を実行する。あるいは、外部装置３０は、このＣＰＵ２６からの制御信号に基づき、ブレーキペダルを制御して車両１００を減速および停止させるブレーキ制御等を実行する。
【００３３】
カメラシステム１は、上述したように測距部２１の測距処理の結果（図４に示す物体１１０までの距離Ｚの測定結果）に応じて、ステアリング制御またはブレーキ制御等の車両制御を外部装置３０に実行させる。この結果、カメラシステム１は、車両１００の運転支援を行って、車両１００の安全性能を向上することができる。
【００３４】
（ＳＧＭ法を用いた測距処理の概略）
つぎに、本実施の形態にかかるカメラシステム１の測距部２１（図１参照）が実行する、ＳＧＭ法を用いた測距処理の概略について説明する。測距部２１が測距処理の際に用いるステレオマッチング処理には、撮像した物体１１０（図４参照）のエッジ部分のみの視差値を算出するエッジ（ｅｄｇｅ）ステレオマッチング処理と、物体１１０を表す画像の画素毎に視差値を算出するＳＧＭ視差演算法とが知られている。本実施の形態において、測距部２１は、測距処理の際、ＳＧＭ視差演算を実行する。この際、測距部２１は、ＳＧＭ視差演算法のアルゴリズムとして、ＳＧＭ法を用いる。
【００３５】
（測距処理の原理）
図５は、撮像装置から物体までの距離を導き出す測距処理の原理を説明する図である。図５を参照しながら、ＳＧＭ視差演算により、ステレオカメラ１１から物体１１０に対する視差値Δを導き出し、この視差値Δによって、ステレオカメラ１１から物体１１０までの距離Ｚを測定する測距処理の原理について説明する。なお、以下では、説明を簡略化するため、複数の画素からなる所定の画素領域のマッチングではなく、１画素単位のマッチングの例について説明する。
【００３６】
（視差値の算出）
図５に示す撮像装置１１ａ，１１ｂは、本実施の形態にかかるカメラシステム１のステレオカメラ１１を構成する左右２つのカメラ（図１参照）であり、図５に示すように、互いに異なる視点から、物体１１０を同一被写体とする複数の画像を各々撮像する。本実施の形態では、撮像装置１１ａによって撮像された物体１１０の画像が基準画像Ｉａであり、撮像装置１１ｂによって撮像された物体１１０の画像が比較画像Ｉｂである。なお、これら２つの撮像装置１１ａ，１１ｂは、図５に示すように平行等位に設置されている。
【００３７】
図５において、３次元空間内の物体１１０上の点Ｓは、撮像装置１１ａ，１１ｂの同一水平線上の位置に写像される。すなわち、撮像装置１１ａ，１１ｂによる各画像中の点Ｓは、基準画像Ｉａにおいて点Ｓａ（ｘ，ｙ）に写像され、比較画像Ｉｂにおいて点Ｓｂ（Ｘ，ｙ）に写像される。このとき、視差値Δは、基準画像Ｉａ上の座標における点Ｓａ（ｘ，ｙ）の座標成分と比較画像Ｉｂ上の座標における点Ｓｂ（Ｘ，ｙ）の座標成分とを用いて、次式（１）のように表される。
【００３８】
Δ＝Ｘ−ｘ                                              ・・・（１）
【００３９】
また、図５に示すように、基準画像Ｉａにおける点Ｓａ（ｘ，ｙ）と撮像レンズ１２ａから撮像面上におろした垂線の交点との距離をΔａとし、比較画像Ｉｂにおける点Ｓｂ（Ｘ，ｙ）と撮像レンズ１２ｂから撮像面上におろした垂線の交点との距離をΔｂとした場合、視差値Δは、Δ＝Δａ＋Δｂの式によって表すことができる。
【００４０】
（距離の算出）
上述したように算出される視差値Δを用いることにより、図５に示す撮像装置１１ａ，１１ｂと物体１１０との間の距離Ｚを導出することができる。具体的には、図５に示すように、距離Ｚは、撮像レンズ１２ａの焦点位置と撮像レンズ１２ｂの焦点位置とを含む面から物体１１０上の点Ｓまでの距離である。このような距離Ｚは、撮像レンズ１２ａ，１２ｂの焦点距離ｆ、撮像レンズ１２ａと撮像レンズ１２ｂとの間の長さである基線長Ｂ、および視差値Δを用いて、次式（２）により、算出することができる。なお、式（２）は、距離Ｚと、焦点距離ｆと、基線長Ｂと、視差値Δとの関係式Ｚ：Ｂ＝（Ｚ＋ｆ）：（Ｂ＋Δ）から導出される。
【００４１】
Ｚ＝（Ｂ×ｆ）／Δ                                      ・・・（２）
【００４２】
この式（２）により、視差値Δが大きいほど距離Ｚは小さく、視差値Δが小さいほど距離Ｚは大きくなることがわかる。
【００４３】
（ＳＧＭ法）
続いて、上述した測距処理に用いるＳＧＭ法について説明する。ＳＧＭ法は、画像におけるテクスチャが弱い物体部分に対しても適切に視差値Δを導出する方法であり、テクスチャが弱い物体部分等においても詳細な視差値Δに基づく距離Ｚを表すことができる。このため、ＳＧＭ法によれば、より詳細な測距処理を行うことができる。
【００４４】
このＳＧＭ法は、基準画像内の基準画素と比較画像内の比較画素との一致度（本実施の形態では非類似度）であるコスト値Ｃを算出して、直ちに視差値Δを導出せず、コスト値Ｃを算出後、さらに、合成非類似度である合成コスト値を算出して視差値Δを導出する。そして、ＳＧＭ法は、最終的に、ほぼ全ての画素における視差値Δを示す視差画像を導出する。
【００４５】
（コスト値の算出）
図６は、基準画像内の基準画素に対応する比較画像内の対応画素を求める処理を説明する図である。図６には、基準画像Ｉａ内の基準画素ｐ（ｘ，ｙ）を示す概念図と、基準画素ｐ（ｘ，ｙ）に対応する比較画像Ｉｂ内の候補画素ｑ（ｘ＋ｄ，ｙ）を順次シフトしながら（ずらしながら）、コスト値Ｃ（ｐ，ｄ）を算出する際の概念図とが示されている。図７は、画素のシフト量毎のコスト値の一例を示す図である。
【００４６】
図６において、候補画素ｑ（ｘ＋ｄ，ｙ）は、比較画像Ｉｂ内の比較画素のうち、基準画像Ｉａ内の基準画素ｐ（ｘ，ｙ）に対応する対応画素の候補となる画素である。対応画素は、基準画像Ｉａ内の基準画素ｐ（ｘ，ｙ）に最も類似する比較画像Ｉｂ内の画素である。コスト値Ｃ（ｐ，ｄ）は、基準画素ｐ（ｘ，ｙ）の座標からシフト量ｄだけシフトした比較画像Ｉｂ内の候補画素ｑ（ｘ＋ｄ，ｙ）の基準画素ｐ（ｘ，ｙ）に対する一致度（本実施の形態では非類似度）を示す評価値である。以下、コスト値Ｃ（ｐ，ｄ）は、Ｃ（ｘ，ｙ，ｄ）を表すものとして説明する。また、本実施の形態において、コスト値Ｃ（ｐ，ｄ）、基準画素ｐ（ｘ，ｙ）、および候補画素ｑ（ｘ＋ｄ，ｙ）は、各々、コスト値Ｃ、基準画素ｐ、および候補画素ｑと適宜略記する。
【００４７】
図６に示すように、基準画像Ｉａ内の所定の基準画素ｐ（ｘ，ｙ）と、この基準画素ｐ（ｘ，ｙ）に対応する比較画像Ｉｂ内のエピポーラ線ＥＬ上に位置する複数の候補画素ｑ（ｘ＋ｄ，ｙ）との各輝度値に基づいて、基準画素ｐ（ｘ，ｙ）に対する各候補画素ｑ（ｘ＋ｄ，ｙ）のコスト値Ｃ（ｐ，ｄ）が算出される。ここで、シフト量ｄは、基準画素ｐと候補画素ｑとのずれ量である。本実施の形態において、シフト量ｄは、画素単位のずれ量として表されている。すなわち、図６では、候補画素ｑ（ｘ＋ｄ，ｙ）を予め指定された範囲（例えば、０＜ｄ＜２５）において順次１画素分シフトしながら、候補画素ｑ（ｘ＋ｄ，ｙ）と基準画素ｐ（ｘ，ｙ）との輝度値の非類似度であるコスト値Ｃ（ｐ，ｄ）が算出される。
【００４８】
このように算出したコスト値Ｃ（ｐ，ｄ）は、図７に示すように、シフト量ｄ毎にグラフによって表すことができる。図７に示す例では、コスト値Ｃは、シフト量ｄ＝５，１２，１９の場合に「０」（零値）となる。このため、コスト値Ｃの最小値を求めることができない。例えば、画像におけるテクスチャが弱い物体部分がある場合には、このようにコスト値Ｃの最小値を求めることは困難になる。
【００４９】
本実施の形態において、コスト値Ｃは、基準画像Ｉａ内の基準画素ｐに対する比較画像Ｉｂ内の比較画素（候補画素ｑ）の非類似度を示している。すなわち、コスト値Ｃは、後述する合成コスト値と同様に、その値が小さいほど比較画素が基準画素に類似していることを示す。上述したようにコスト値Ｃの最小値が得られない場合、基準画素ｐに対応する比較画像Ｉｂ内の対応画素を見出すことが困難となる。この結果、基準画像Ｉａと比較画像Ｉｂとの視差値Δを算出することが困難となることから、図５に示した撮像装置１１ａ，１１ｂから物体１１０までの距離Ｚを測定（算出）することが困難となる。
【００５０】
（合成コスト値の算出）
図８は、合成コスト値を導出するための概念図である。図９は、画素のシフト量毎の合成コスト値の一例を示す図である。以下、図８，９を参照しながら、比較画像Ｉｂ内の候補画素ｑ（ｘ＋ｄ，ｙ）の基準画素ｐ（ｘ，ｙ）に対する一致度の合成値（本実施の形態では合成非類似度）である合成コスト値Ｌｓ（ｐ，ｄ）の算出方法について説明する。なお、本実施の形態において、合成コスト値Ｌｓ（ｐ，ｄ）は、合成コスト値Ｌｓと適宜略記する。
【００５１】
本実施の形態における合成コスト値の算出は、ＳＧＭ法に特有の方法であり、コスト値Ｃ（ｐ，ｄ）の算出だけでなく、所定の基準画素ｐ（ｘ，ｙ）の周辺の画素を基準画素とした場合のコスト値を、基準画素ｐ（ｘ，ｙ）におけるコスト値Ｃ（ｐ，ｄ）に集約させて、合成コスト値Ｌｓ（ｐ，ｄ）を算出するものである。合成コスト値Ｌｓ（ｐ，ｄ）を算出するためには、まず、経路コスト値Ｌｒ（ｐ，ｄ）を算出する必要がある。経路コスト値Ｌｒ（ｐ，ｄ）は、次式（３）によって算出することができる。
【００５２】
Ｌｒ（ｐ，ｄ）＝Ｃ（ｐ，ｄ）＋ｍｉｎ｛（Ｌｒ（ｐ−ｒ，ｄ），
Ｌｒ（ｐ−ｒ，ｄ−１）＋Ｐ１，Ｌｒ（ｐ−ｒ，ｄ＋１）＋Ｐ１，
Ｌｒｍｉｎ（ｐ−ｒ）＋Ｐ２）｝                  ・・・（３）
【００５３】
式（３）において、方向ベクトルｒは、コスト値Ｃの集約方向を示すベクトルであり、ｘｙ座標系の２方向（ｘ方向およびｙ方向）の座標成分を有する。関数ｍｉｎ｛｝は、最小値を求める関数である。経路コスト値Ｌｒは、式（３）に示すように再帰的に適用される。経路コスト最小値Ｌｒｍｉｎ（ｐ−ｒ）は、基準画素ｐを方向ベクトルｒの方向（以下、ｒ方向と適宜いう）に１画素シフトした座標において、シフト量ｄを変化させた際の経路コスト値Ｌｒ（ｐ−ｒ，ｄ）の最小値を示す。
【００５４】
また、数値Ｐ１，Ｐ２は、予め実験によって定められた固定パラメータであり、画素の経路上において隣接する基準画素ｐの視差値Δが連続になりやすいようなパラメータになっている。例えば、数値Ｐ１は、経路上において隣接する画素の異なるシフト量（ｄ−１，ｄ＋１）のコスト値Ｃを、基準画素ｐの経路コスト値Ｌｒに合成することを抑制するように作用する。数値Ｐ２は、さらに１以上離れたシフト量ｄのコスト値Ｃを、基準画素ｐの経路コスト値Ｌｒに合成することを抑制するように作用する。
【００５５】
経路コスト値Ｌｒ（ｐ，ｄ）は、式（３）に示すように、基準画素ｐ（ｘ，ｙ）におけるコスト値Ｃに、図８に示す複数の方向ベクトルｒによる方向（すなわち複数のｒ方向）の各画素における経路コスト値Ｌｒの最小値を加算することによって求められる。このように、複数のｒ方向の各画素における経路コスト値Ｌｒを求めるため、最初は、基準画素ｐ（ｘ，ｙ）のｒ方向における一番端の画素から経路コスト値Ｌｒを求め、ｒ方向に沿って経路コスト値Ｌｒが求められる。例えば、図８に示す方向ベクトルｒ135の方向においては、各画素のコスト値Ｃ（ｐ−ｒ，ｄ）、Ｃ（ｐ−２ｒ，ｄ）を用いて経路コスト値Ｌｒが求められる。
【００５６】
そして、図８に示すように、例えば８つの方向ベクトルｒ0，ｒ45，ｒ90，ｒ135，ｒ180，ｒ225，ｒ270，ｒ315による８方向の経路コスト値Ｌｒ、すなわち、経路コスト値Ｌｒ0，Ｌｒ45，Ｌｒ90，Ｌｒ135，Ｌｒ180，Ｌｒ225，Ｌｒ270，Ｌｒ315が求められる。最終的には、これらの経路コスト値Ｌｒを用い、次式（４）に基づいて、合成コスト値Ｌｓ（ｐ，ｄ）が求められる。
【００５７】
Ｌｓ（ｐ，ｄ）＝ΣＬｒ                                      ・・・（４）
【００５８】
以上のようにして算出された合成コスト値Ｌｓ（ｐ，ｄ）は、図９に示すように、シフト量ｄ毎にグラフによって表すことができる。図９に示す例では、合成コスト値Ｌｓは、シフト量ｄ＝３の場合に最小値となる。このため、基準画像Ｉａと比較画像Ｉｂとの視差値Δは、「３」（視差値Δ＝３）として算出される。図５に示した撮像装置１１ａ，１１ｂと物体１１０との距離Ｚは、このような視差値Δを用い、上述した式（２）に基づいて算出される。
【００５９】
なお、上記の説明では、視差値Δを算出する際に用いる画素の方向を示す方向ベクトルｒの数、すなわち、この画素の方向数を８つにして、合成コスト値Ｌｓの算出方法を説明したが、これに限定されることはない。例えば、８方向を更に２つに分割して１６方向、３つに分割して２４方向等にしてもよい。本実施の形態において、図１に示した測距部２１が視差値Δの算出の際に用いる画素の方向数は、上述した演算負荷制御部２６ａによって制御される。
【００６０】
（測距部の構成）
つぎに、本実施の形態にかかるカメラシステム１の測距部２１の構成について詳細に説明する。図１０は、本実施の形態における測距部の一構成例を示すブロック図である。図１０に示すように、本実施の形態における測距部２１は、コスト値算出部２１１と、経路コスト値算出部２１２と、合成コスト値算出部２１３と、視差値導出部２１４と、距離導出部２１５とを備える。
【００６１】
コスト値算出部２１１は、カメラシステム１のステレオカメラ１１における一方の撮像装置１１ａによって撮像された基準画像Ｉａを信号変換部１５ａから受け付け、他方の撮像装置１１ｂによって撮像された比較画像Ｉｂを信号変換部１５ｂから受け付ける。コスト値算出部２１１は、基準画像Ｉａを構成する複数の画素のうちの基準画素ｐ（ｘ，ｙ）の輝度値を導出する。また、コスト値算出部２１１は、比較画像Ｉｂを構成する複数の画素のうち、基準画素ｐ（ｘ，ｙ）と比較する比較画素である候補画素ｑ（ｘ＋ｄ，ｙ）の輝度値を導出する。コスト値算出部２１１は、基準画素ｐの輝度値と候補画素ｑの輝度値との非類似度を示すコスト値Ｃを、図６に示した比較画像Ｉｂ内のエピポーラ線ＥＬ上の比較画素（例えば、シフト量ｄが０＜ｄ＜２５の条件を満たす候補画素ｑ（ｘ＋ｄ，ｙ））毎に算出する。コスト値算出部２１１は、得られたコスト値Ｃを経路コスト値算出部２１２に入力する。
【００６２】
なお、コスト値算出部２１１によるコスト値Ｃの具体的な算出方法は任意でよい。例えば、コスト値算出部２１１は、基準画素ｐ（ｘ，ｙ）の輝度値と候補画素ｑ（ｘ＋ｄ，ｙ）の輝度値との差の絶対値により、コスト値Ｃを算出する。
【００６３】
経路コスト値算出部２１２は、コスト値算出部２１１からコスト値Ｃを受け付ける。経路コスト値算出部２１２は、基準画素ｐ（ｘ，ｙ）の周辺の画素から基準画素ｐ（ｘ，ｙ）までの経路（以下、画素経路と適宜いう）の本数、すなわち、この画素経路の方向数を、図１に示した演算負荷制御部２６ａによって指示される。この方向数は、視差値Δの算出の際に用いられる画素の方向数であり、画素経路の方向を示す方向ベクトルｒの数と同数である。方向ベクトルｒとしては、例えば、図８に示した８つの方向ベクトルｒ0，ｒ45，ｒ90，ｒ135，ｒ180，ｒ225，ｒ270，ｒ315が挙げられる。経路コスト値算出部２１２は、演算負荷制御部２６ａによって指示された方向数の画素経路毎に、各画素における経路コスト値Ｌｒの最小値を算出し、得られた値を用い、上述した式（３）に基づいて、経路コスト値Ｌｒ（ｐ，ｄ）を算出する。経路コスト値算出部２１２は、算出した経路コスト値Ｌｒ（ｐ，ｄ）を合成コスト値算出部２１３に入力する。
【００６４】
合成コスト値算出部２１３は、経路コスト値算出部２１２から、各画素経路の経路コスト値Ｌｒを受け付ける。合成コスト値算出部２１３は、経路コスト値算出部２１２から取得した各画素経路の経路コスト値Ｌｒを用い、上述した式（４）に基づき、基準画素ｐ（ｘ，ｙ）における合成コスト値Ｌｓ（ｐ，ｄ）を算出する。合成コスト値算出部２１３は、算出した合成コスト値Ｌｓ（ｐ，ｄ）を視差値導出部２１４に入力する。
【００６５】
視差値導出部２１４は、合成コスト値算出部２１３から合成コスト値Ｌｓ（ｐ，ｄ）を受け付ける。視差値導出部２１４は、合成コスト値算出部２１３から取得した合成コスト値Ｌｓ（ｐ，ｄ）が最小となる比較画像Ｉｂ内の候補画素ｑ（ｘ＋ｄ，ｙ）と基準画像Ｉａ内の基準画素ｐ（ｘ，ｙ）との座標成分の差により、視差値Δを導出する。視差値導出部２１４は、このような視差値Δの導出処理を基準画像Ｉａの画素毎に実行し、これにより、基準画像Ｉａの各画素における視差値Δを導出する。視差値導出部２１４は、基準画像Ｉａの各画素の視差値Δを示す視差画像を生成し、得られた視差画像を表す画像信号を距離導出部２１５に入力する。
【００６６】
距離導出部２１５は、視差値導出部２１４から画像信号を受け付け、この画像信号によって表される視差画像を取得する。距離導出部２１５は、取得した視差画像によって示される視差値Δを用い、上述した式（２）に基づいて、撮像装置１１ａ，１１ｂと物体１１０との間の距離Ｚ（図４，５参照）を算出する。距離導出部２１５は、算出した距離Ｚを示す電気信号を、図１に示した処理制御装置２０の状況情報取得部２２およびＣＰＵ２６に送信する。この電気信号に示される距離Ｚは、カメラシステム１を搭載する車両１００の周辺の状況情報の１つとして状況情報取得部２２に入力され、この車両１００から物体１１０までの距離を示す情報（測距部２１による測距処理の結果）としてＣＰＵ２６に入力される。
【００６７】
ここで、本実施の形態にかかるカメラシステム１において実行されるプログラムは、図１に示したＲＯＭ２３に予め組み込まれて提供される。ＣＰＵ２６は、ＲＯＭ２３から読み出したプログラムを実行する。これにより、処理制御装置２０は、画像取得部１０、測距部２１、状況情報取得部２２の各機能を実現して、これらの機能をＣＰＵ２６（コンピュータ）に実行させる。この際、処理制御装置２０は、図１０に示すコスト値算出部２１１、経路コスト値算出部２１２、合成コスト値算出部２１３、視差値導出部２１４、および距離導出部２１５の各機能を実現し、これらの各機能をＣＰＵ２６に実行させる。特に、ＣＰＵ２６は、経路コスト値算出部２１２による演算処理の負荷（演算負荷）の制御を演算負荷制御部２６ａに実行させる。
【００６８】
なお、演算負荷制御部２６ａは、本実施の形態において、ＣＰＵ２６のハードウェア構成の一部であるが、これに限定されず、ＣＰＵ２６のプログラム実行に基づくソフトウェア構成よって実現されてもよい。また、演算負荷制御部２６ａは、ＣＰＵ２６以外のハードウェア構成によって実現されてもよい。
【００６９】
（測距方法）
つぎに、本実施の形態にかかるカメラシステム１による測距方法について説明する。図１１は、本実施の形態にかかるカメラシステムによる測距方法の一例を示すフローチャートである。本実施の形態にかかるカメラシステム１による測距方法は、図１に示したＣＰＵ２６がＲＯＭ２３内のプログラムを実行して、図１１に示すステップＳ１０１〜Ｓ１０４の各処理ステップを行うことにより、実現される。
【００７０】
すなわち、本実施の形態にかかる測距方法において、カメラシステム１は、図１１に示すように、測距対象の物体１１０を異なる視点から撮像した複数の画像を画像取得部１０によって取得する（ステップＳ１０１）。
【００７１】
このステップＳ１０１において、ＣＰＵ２６は、カメラシステム１を搭載した車両１００（図２，３等参照）の前方に位置する物体１１０を捉えた複数の画像を、ステレオカメラ１１における２つの撮像装置１１ａ，１１ｂに同時に撮像させる。これにより、一方の撮像装置１１ａは、物体１１０に向かって左側の視点から物体１１０の画像を撮像する。これに同期して、他方の撮像装置１１ｂは、物体１１０に向かって右側の視点から物体１１０の画像を撮像する。その後、一方の撮像装置１１ａによる物体１１０の画像は、信号変換部１５ａによって、デジタル形式の基準画像Ｉａに変換処理される。これに並行して、他方の撮像装置１１ｂによる物体１１０の画像は、信号変換部１５ｂによって、デジタル形式の比較画像Ｉｂに変換処理される。画像取得部１０は、信号変換部１５ａ，１５ｂから処理制御装置２０の測距部２１に対して、これらの基準画像Ｉａおよび比較画像Ｉｂの各デジタル画像信号を送信する。
【００７２】
続いて、カメラシステム１は、上述した画像取得部１０等を備えるカメラシステム１を搭載する車両１００の状況および車両１００周辺の状況の少なくとも一方を示す状況情報を取得する（ステップＳ１０２）。このステップＳ１０２において、ＣＰＵ２６は、自車両としての車両１００の状況情報および車両１００の周辺の状況情報を適宜取得するように、状況情報取得部２２を制御する。これに基づき、状況情報取得部２２は、通信Ｉ／Ｆ２５等を介して外部装置３０から車両１００の加速度および速度の各情報を取得し、これらの各情報を、車両１００の走行状況を示す状況情報として記憶する。また、状況情報取得部２２は、車両１００の周辺に位置する立体物（例えば物体１１０等）と車両１００との間の距離の情報を、測距部２１またはカーナビゲーション装置（図示せず）等から取得する。状況情報取得部２２は、この取得した距離の情報を、車両１００の周辺の状況情報として記憶する。
【００７３】
つぎに、カメラシステム１は、画像取得部１０から物体１１０までの距離Ｚを測定する際の測距部２１の演算負荷を、車両１００またはその周辺の状況情報に基づいて制御する（ステップＳ１０３）。このステップＳ１０３において、演算負荷制御部２６ａは、撮像装置１１ａ，１１ｂによって撮像された基準画像Ｉａおよび比較画像Ｉｂのうちの測距部２１が視差値Δの算出の際に用いる画素の方向数Ｎｒを、状況情報取得部２２から入手した状況情報に応じて変更する。
【００７４】
ここで、方向数Ｎｒは、測距部２１が距離Ｚを演算して測定する際に必要な視差値Δの演算処理の負荷を決定するパラメータである。具体的には、方向数Ｎｒの増加に伴い、測距部２１による測距処理時の演算負荷が増大し、且つ、この測距処理時の演算精度が高まる。一方、方向数Ｎｒの減少に伴い、測距部２１による測距処理時の演算負荷が低減し、且つ、この測距処理時の演算精度が下がる。
【００７５】
演算負荷制御部２６ａは、車両１００（自車両）の状況または車両１００の周辺（自車両周辺）の状況情報に応じて、方向数Ｎｒを制御する。詳細には、演算負荷制御部２６ａは、車両１００の加速度または速度が大きい状況や車両１００と物体１１０との距離Ｚが短い状況等、車両１００の動作制御に緊急を要する場合、方向数Ｎｒを増やして、測距部２１に測距処理時の演算処理を実行させる。これにより、演算負荷制御部２６ａは、測距部２１の演算負荷を増やすとともに、測距部２１による視差値Δの算出精度、すなわち、距離Ｚの測定精度を高める。一方、演算負荷制御部２６ａは、車両１００の加速度または速度が小さい状況や距離Ｚが長くて車両１００に接近した立体物がない状況等、車両１００の動作制御に緊急を要しない場合、方向数Ｎｒを減らして、測距部２１に測距処理時の演算処理を実行させる。これにより、演算負荷制御部２６ａは、測距部２１の演算負荷を減らすとともに、測距部２１による視差値Δの算出精度（距離Ｚの測定精度）を必要最小限に下げる。
【００７６】
上述したステップＳ１０３を実行後、カメラシステム１は、画像取得部１０から物体１１０までの距離Ｚ（図４，５参照）を測定する（ステップＳ１０４）。このステップＳ１０４において、測距部２１は、演算負荷制御部２６ａによって制御された演算負荷の下、撮像装置１１ａ，１１ｂによる複数の画像（基準画像Ｉａおよび比較画像Ｉｂ）を用い、物体１１０までの距離Ｚを演算して測定する。
【００７７】
詳細には、測距処理を実行する際の測距部２１において、コスト値算出部２１１は、物体１１０の基準画像Ｉａおよび比較画像Ｉｂを取得し、これらの基準画像Ｉａおよび比較画像Ｉｂにおけるコスト値Ｃを、比較画像Ｉｂ内のエピポーラ線ＥＬ上の画素毎に算出する。ついで、経路コスト値算出部２１２は、コスト値算出部２１１からコスト値Ｃを取得する。また、経路コスト値算出部２１２は、経路コスト値Ｌｒを算出する際の画素経路の方向数Ｎｒの指示を演算負荷制御部２６ａから受ける。経路コスト値算出部２１２は、指示された方向数Ｎｒと同じ経路本数の画素経路毎に、各画素における経路コスト値Ｌｒの最小値を算出し、上述した式（３）に基づき、経路コスト値Ｌｒの最小値をコスト値Ｃに集約して、経路コスト値Ｌｒを算出する。
【００７８】
続いて、合成コスト値算出部２１３は、経路コスト値算出部２１２から、各画素経路の経路コスト値Ｌｒを取得し、取得した各画素経路の経路コスト値Ｌｒを用い、上述した式（４）に基づいて、基準画素ｐにおける合成コスト値Ｌｓを算出する。つぎに、視差値導出部２１４は、合成コスト値算出部２１３から合成コスト値Ｌｓを取得し、取得した合成コスト値Ｌｓが最小となる比較画像Ｉｂ内の候補画素ｑと基準画像Ｉａ内の基準画素ｐとの座標成分の差により、視差値Δを導出する。視差値導出部２１４は、導出した視差値Δを示す視差画像を生成する。その後、距離導出部２１５は、視差値導出部２１４からの視差画像によって表される各画素の視差値Δを取得し、取得した視差値Δを用い、上述した式（２）に基づいて、撮像装置１１ａ，１１ｂと物体１１０との間の距離Ｚを算出する。距離導出部２１５は、算出した距離Ｚの情報を状況情報取得部２２およびＣＰＵ２６に送信する。
【００７９】
ステップＳ１０４を実行後、カメラシステム１は、上述したステップＳ１０１に戻り、このステップＳ１０１以降の処理ステップを繰り返し実行する。これにより、カメラシステム１は、測距対象の物体１１０までの距離Ｚの測定結果を時系列に沿って順次取得する。ＣＰＵ２６は、得られた距離Ｚの測定結果に応じて、ステアリング制御またはブレーキ制御等の車両１００の動作制御を実行するように外部装置３０を制御し、これにより、車両１００の安全性能を向上すべく、車両１００の運転支援を行う。
【００８０】
（演算負荷制御処理）
つぎに、本実施の形態にかかる測距方法におけるステップＳ１０３の演算負荷制御処理について詳細に説明する。図１２は、本実施の形態にかかる測距方法の演算負荷制御処理の一例を示すフローチャートである。カメラシステム１は、図１１に示した測距方法のステップＳ１０２を実行した後、演算負荷制御処理を実行する。この演算負荷制御処理において、カメラシステム１の処理制御装置２０における演算負荷制御部２６ａは、図１２に示すステップＳ２０１〜Ｓ２１０の各処理ステップを適宜実行して、測距部２１の測距処理時の演算負荷を制御する。以下では、この測距部２１の演算負荷を制御する際に用いる状況情報として、車両１００の走行状況を示す加速度および速度の各情報を例示して、演算負荷制御処理を説明する。
【００８１】
演算負荷制御処理において、演算負荷制御部２６ａは、図１２に示すように、まず、車両１００の加速度の状況を判断する（ステップＳ２０１）。このステップＳ２０１において、演算負荷制御部２６ａは、通信Ｉ／Ｆ２５等を介して、外部装置３０から、車両１００の加速度の情報を取得する。演算負荷制御部２６ａは、取得した加速度の程度（数値）をもとに、車両１００の現在の加速度が「低加速」、「中程度加速」、「急加速（高加速）」のいずれの状況であるかを判断する。この際、演算負荷制御部２６ａは、例えば、予め設定した上下限の閾値範囲と車両１００の加速度とを比較する。演算負荷制御部２６ａは、加速度が閾値範囲未満である場合、低加速の状況と判断し、加速度が閾値範囲内である場合、中程度加速の状況と判断し、加速度が閾値範囲を超過する場合、急加速の状況と判断する。
【００８２】
車両１００の加速度が急加速の状況であると判断された場合（ステップＳ２０１，急加速）、演算負荷制御部２６ａは、測距部２１の経路コスト値算出部２１２における画素の方向数Ｎｒを、他の加速度（中程度加速および低加速）の状況に比べて大きく設定する（ステップＳ２０２）。このステップＳ２０２において、演算負荷制御部２６ａは、画素の方向数Ｎｒを、例えば「８」（Ｎｒ＝８）に設定する。その後、演算負荷制御部２６ａは、後述するステップＳ２１０に進む。
【００８３】
一方、車両１００の加速度が中程度加速の状況であると判断された場合（ステップＳ２０１，中程度加速）、演算負荷制御部２６ａは、経路コスト値算出部２１２における画素の方向数Ｎｒを中程度に設定する（ステップＳ２０３）。このステップＳ２０３において、演算負荷制御部２６ａは、画素の方向数Ｎｒを、急加速の状況に比べて小さい値、例えば「６」（Ｎｒ＝６）に設定する。その後、演算負荷制御部２６ａは、後述するステップＳ２１０に進む。
【００８４】
他方、車両１００の加速度が低加速の状況であると判断された場合（ステップＳ２０１，低加速）、演算負荷制御部２６ａは、車両１００の加速度の状況に応じた方向数Ｎｒの設定を行わず、車両１００の速度の状況に応じて方向数Ｎｒを設定する。すなわち、演算負荷制御部２６ａは、ステップＳ２０４に進む。
【００８５】
演算負荷制御部２６ａは、ステップＳ２０１において車両１００の加速度が低加速の状況である場合、車両１００の速度の状況を判断する（ステップＳ２０４）。このステップＳ２０４において、演算負荷制御部２６ａは、通信Ｉ／Ｆ２５等を介して、外部装置３０から、車両１００の速度の情報を取得する。演算負荷制御部２６ａは、取得した速度の程度（数値）をもとに、車両１００の現在の速度が「低速」、「中速」、「高速」のいずれの状況であるかを判断する。この際、演算負荷制御部２６ａは、例えば、予め設定した上下限の閾値範囲と車両１００の速度とを比較する。演算負荷制御部２６ａは、速度が閾値範囲未満である場合、低速の状況と判断し、速度が閾値範囲内である場合、中速の状況と判断し、速度が閾値範囲を超過する場合、高速の状況と判断する。なお、車両１００の速度の状況として、例えば、「低速」は３０［ｋｍ／ｈ］未満であり、「中速」は３０［ｋｍ／ｈ］以上、６０［ｋｍ／ｈ］未満であり、「高速」は６０［ｋｍ／ｈ］超過である。
【００８６】
車両１００の速度が高速の状況であると判断された場合（ステップＳ２０４，高速）、演算負荷制御部２６ａは、経路コスト値算出部２１２における画素の方向数Ｎｒを、他の速度（中速および低速）の状況に比べて大きく設定する（ステップＳ２０５）。このステップＳ２０５において、演算負荷制御部２６ａは、画素の方向数Ｎｒを、例えば「６」（Ｎｒ＝６）に設定する。その後、演算負荷制御部２６ａは、後述するステップＳ２１０に進む。
【００８７】
一方、車両１００の速度が中速の状況であると判断された場合（ステップＳ２０４，中速）、演算負荷制御部２６ａは、経路コスト値算出部２１２における画素の方向数Ｎｒを中程度に設定する（ステップＳ２０６）。このステップＳ２０６において、演算負荷制御部２６ａは、画素の方向数Ｎｒを、高速の状況に比べて小さい値、例えば「５」（Ｎｒ＝５）に設定する。その後、演算負荷制御部２６ａは、後述するステップＳ２１０に進む。
【００８８】
他方、車両１００の速度が低速の状況であると判断された場合（ステップＳ２０４，低速）、演算負荷制御部２６ａは、車両１００の速度が０［ｋｍ／ｈ］の状態、すなわち、車両１００が停止状態であるか否かを判断する（ステップＳ２０７）。
【００８９】
ステップＳ２０７において、車両の速度が０［ｋｍ／ｈ］ではない場合（例えば、０［ｋｍ／ｈ］超過、３０［ｋｍ／ｈ］未満である場合）、演算負荷制御部２６ａは、車両１００が停止状態ではないと判断する（ステップＳ２０７，Ｎｏ）。この場合、演算負荷制御部２６ａは、画素の方向数Ｎｒを、上述した中速の状況に比べて小さい値、例えば「４」（Ｎｒ＝４）に設定する（ステップＳ２０８）。その後、演算負荷制御部２６ａは、後述するステップＳ２１０に進む。
【００９０】
一方、ステップＳ２０７において、車両の速度が０［ｋｍ／ｈ］である場合、演算負荷制御部２６ａは、車両１００が停止状態であると判断する（ステップＳ２０７，Ｙｅｓ）。この場合、演算負荷制御部２６ａは、画素の方向数Ｎｒを零値（Ｎｒ＝０）に設定する（ステップＳ２０９）。その後、演算負荷制御部２６ａは、後述するステップＳ２１０に進む。
【００９１】
上述したステップＳ２０２、Ｓ２０３、Ｓ２０５、Ｓ２０６、Ｓ２０８、Ｓ２０９のいずれかを実行後、演算負荷制御部２６ａは、経路コスト値算出部２１２における画素の方向数Ｎｒの設定を更新する（ステップＳ２１０）。このステップＳ２１０において、演算負荷制御部２６ａは、上述したステップＳ２０２、Ｓ２０３、Ｓ２０５、Ｓ２０６、Ｓ２０８、Ｓ２０９のうちの実行した処理ステップによる方向数Ｎｒを指示する制御信号を測距部２１に送信する。これにより、演算負荷制御部２６ａは、経路コスト値算出部２１２に設定の方向数Ｎｒを、この制御信号に基づく方向数Ｎｒに更新する。
【００９２】
ステップＳ２１０を実行後、カメラシステム１は、図１１に示したステップＳ１０３にリターンし、ステップＳ１０４に進む。このステップＳ１０４において、経路コスト値算出部２１２は、上述したように演算負荷制御部２６ａによって更新された方向数Ｎｒと同数の画素経路毎に、各画素の経路コスト値Ｌｒの最小値を算出し、上述した式（３）に基づいて、経路コスト値Ｌｒを算出する。このような経路コスト値Ｌｒは、上述したように、合成コスト値Ｌｓの算出に用いられる。合成コスト値Ｌｓは、測距部２１が距離Ｚを測定（算出）する際に必要な視差値Δの算出に用いられる。
【００９３】
ここで、演算負荷制御部２６ａは、車両１００の加速度または速度が大きいほど、車両１００が前方の物体１１０（図４参照）と衝突する危険性が高まるので、上述したように方向数Ｎｒを大きく設定して測距部２１による測距処理の演算精度を高める。これにより、演算負荷制御部２６ａは、ステレオカメラ１１によって前方の物体１１０を検出し易いようにする。
【００９４】
また、演算負荷制御部２６ａは、車両１００の加速度または速度が小さいほど、車両１００が前方の物体１１０と衝突する危険性が下がるので、上述したように方向数Ｎｒを小さく設定して測距部２１による測距処理の演算精度を必要最小限に下げる。これとともに、演算負荷制御部２６ａは、この測距部２１の測距処理時における消費電力を低減し、さらには、測距部２１からの熱の発生を抑制する。特に、車両１００が停止状態である場合、車両１００が前方の物体１１０と衝突する危険性がないに等しいので、演算負荷制御部２６ａは、経路コスト値算出部２１２における画素の方向数Ｎｒを零値に変更する。これにより、演算負荷制御部２６ａは、測距部２１の測距の演算処理自体を停止させ、この結果、測距部２１の消費電力および熱の発生を可能な限り低減する。
【００９５】
以上、説明したように、本実施の形態では、カメラシステムを搭載した車両等の動作体に対して所定の方向に位置する物体を異なる視点から撮像して、この物体を同一被写体とする複数の画像を取得し、且つ、この動作体の状況およびこの動作体周辺の状況の少なくとも一方を示す状況情報を取得し、これら複数の画像を用い、カメラシステムの画像取得部から測距対象の物体までの距離（以下、対象距離と適宜いう）を演算して測定する測距処理の演算負荷を、この動作体の状況情報に基づいて制御している。
【００９６】
このため、カメラシステム搭載の動作体の動作制御に緊急を要する状況において、上述の測距処理の演算負荷を増やし、これにより、この測距処理時の演算処理の精度を高めて、動作体の動作制御に必要な対象距離を高精度に演算することができる。また、カメラシステム搭載の動作体の動作制御に緊急を要しない状況において、上述の測距処理の演算負荷を減らし、これにより、この測距処理時の演算処理の精度を必要最小限に下げて、動作体の動作制御に必要な対象距離を演算することができる。このように動作体の状況情報に応じて測距処理時の演算負荷を増減変化させることにより、必要に応じた精度の対象距離の演算（測定）を確保するとともに、測距処理時の演算負荷および消費電力を時系列に沿って総合的に低減することができる。この結果、測距処理時の演算負荷に起因する熱の発生を抑制して、熱によるカメラシステム（特にステレオカメラ）の動作不具合の発生を防止するとともに、カメラシステムの省電力化を実現することができる。
【００９７】
また、本実施の形態では、動作体の走行状況または動作体周辺の状況（例えば動作体と物体との距離等）に応じて、上述の測距処理時の演算負荷を増減変化させている。このため、動作体の加速度または速度が大きい状況、あるいは、動作体周辺に障害物等の物体が接近している状況等、動作体が物体と衝突する危険性が高い状況において、上述の測距処理の演算負荷を増やすことにより、この測距処理時の演算処理の精度を高めて、動作体と物体との衝突の回避に必要な対象距離を高精度に演算することができる。また、動作体の加速度または速度が小さい状況、動作体が停止している状況、あるいは、動作体に接近した物体（立体物）がない状況等、動作体が物体と衝突する危険性が低い状況において、上述の測距処理の演算負荷を減らすことにより、この測距処理時の演算処理の精度を必要最小限に下げて、動作体と物体との衝突の回避に必要な対象距離を演算することができる。特に、動作体が停止した状況において、上述の測距処理の演算負荷を零とし、これにより、測距処理のための演算処理自体を停止して、必要性の低い対象距離の演算を省くことができる。
【００９８】
前述のことにより、測距処理時の演算負荷および消費電力を可能な限り低減できることから、測距処理時の演算負荷に起因する熱の発生を一層抑制して、熱によるカメラシステムの動作不具合の防止を促進するとともに、カメラシステムのより一層の省電力化を図ることができる。
【００９９】
なお、上述した実施の形態では、基準画像内の基準画素と比較画像内の比較画素との一致度であるコスト値Ｃは、基準画素と比較画素との非類似度を示すものとして算出されていたが、これに限定されることはない。上述したコスト値Ｃは、基準画素と比較画素との一致度として類似度を示すものであってもよい。この場合、基準画像と比較画像との視差値Δは、合成コスト値Ｌｓが最大となる画素のシフト量ｄに基づいて導出される。
【０１００】
また、上述した実施の形態では、説明の簡略化のために、１画素単位のマッチングを例示して測距処理を説明していたが、これに限らず、複数の画素からなる所定の画素領域をマッチングの単位領域として測距処理が実行されてもよい。この場合、基準画素を含む所定の画素領域は基準領域として示され、対応画素を含む所定の画素領域は対応領域として表される。なお、この基準領域には基準画素のみの場合も含まれ、対応領域には対応画素のみの場合も含まれる。
【０１０１】
さらに、上述した実施の形態では、カメラシステム１を搭載する動作体の一例として車両１００を示したが、これに限定されることはない。例えば、カメラシステム１を搭載する動作体は、車両１００の一例としての自動車に限らず、モーターバイク（自動二輪車または原動機付き自転車）、自転車、車椅子、農業用の耕運機等の車両等に例示される移動体であってもよい。また、この動作体は、車両に限らず、走行および停止するロボット等の移動体であってもよい。あるいは、この動作体は、上述した移動体に限らず、ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）において固定設置される工業用ロボットや防犯用の監視カメラ装置等の据え付け型の装置であってもよい。
【０１０２】
また、上述した実施の形態において、測距部２１は、各画素の座標において合成コスト値Ｌｓの最小値を求めて視差値Δを導出していたが、これに限らず、多項式でのフィッティングや等角直線法等の方法を用い、サブピクセル単位で視差値Δを算出してもよい。
【０１０３】
さらに、上述した実施の形態では、測距処理時の演算負荷を制御する際、車両１００の走行状況（加速度および速度）を示す状況情報に応じて画素の方向数Ｎｒを変更していたが、これに限定されることはない。測距処理時の演算負荷を制御する際、車両１００の周辺の状況（例えば車両１００とその周辺の立体物との距離等）を示す状況情報に応じて、画素の方向数Ｎｒが変更されてもよい。
【０１０４】
また、上述した実施の形態において、演算負荷制御部２６ａは、車両１００の走行状況に応じて画素の方向数Ｎｒを変更する際、車両１００の加速度の状況を判断し、その後、車両１００の速度の状況を判断していたが、これに限定されることはない。演算負荷制御部２６ａは、車両１００の速度の状況を判断し、その後、車両１００の加速度の状況を判断してもよい。
【０１０５】
さらに、上述した実施の形態において、カメラシステム１のステレオカメラ１１は、車両１００の前方を撮像するものとしたが、これに限定されることはない。すなわち、カメラシステム１は、ステレオカメラ１１によって車両１００の後方または側方を撮像するように、車両１００に設置されるものとしてもよい。この場合、カメラシステム１は、車両１００の後方の後続車、または側方を並進する他の車両等の位置を検出することができる。そして、カメラシステム１は、車両１００の車線変更時または車線合流時等における危険を検知して、上述の車両制御を外部装置３０に実行させることができる。また、カメラシステム１は、車両１００の駐車時等におけるバック動作において、処理制御装置２０によって検出された車両１００の後方の障害物の視差画像に基づき、衝突の危険があると判断した場合に、上述の車両制御を外部装置３０に実行させることができる。
【０１０６】
また、上述した実施の形態では、ＣＰＵ２６が実行するプログラムを予めＲＯＭ２３に格納していたが、これに限らず、本実施の形態にかかるカメラシステム１で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、ＳＤカード、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【０１０７】
さらに、本実施の形態にかかるカメラシステム１で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。さらに、本実施の形態にかかるカメラシステム１で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【０１０８】
また、上述した実施の形態により本発明が限定されるものではなく、上述した各構成要素を適宜組み合わせて構成したものも本発明に含まれる。その他、上述した実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例および運用技術等は全て本発明に含まれる。
【符号の説明】
【０１０９】
１  カメラシステム
１０  画像取得部
１１  ステレオカメラ
１１ａ，１１ｂ  撮像装置
１２ａ，１２ｂ  撮像レンズ
１３ａ，１３ｂ  絞り
１４ａ，１４ｂ  画像センサ
１５ａ，１５ｂ  信号変換部
２０  処理制御装置
２１  測距部
２２  状況情報取得部
２３  ＲＯＭ
２４  ＲＡＭ
２５  通信Ｉ／Ｆ
２６  ＣＰＵ
２６ａ  演算負荷制御部
３０  外部装置
１００  車両
１１０  物体
２１１  コスト値算出部
２１２  経路コスト値算出部
２１３  合成コスト値算出部
２１４  視差値導出部
２１５  距離導出部
ＥＬ  エピポーラ線
Ｉａ  基準画像
Ｉｂ  比較画像
Ｓ，Ｓａ（ｘ，ｙ），Ｓｂ（Ｘ，ｙ）  点
ｐ（ｘ，ｙ）  基準画素
ｑ（ｘ＋ｄ，ｙ）  候補画素
【先行技術文献】
【特許文献】
【０１１０】
【特許文献１】特開２０１１−１９１９０５号公報
【図１】
0006387710.tif 000002
【図２】
0006387710.tif 000003
【図３】
0006387710.tif 000004
【図４】
0006387710.tif 000005
【図５】
0006387710.tif 000006
【図６】
0006387710.tif 000007
【図７】
0006387710.tif 000008
【図８】
0006387710.tif 000009
【図９】
0006387710.tif 000010
【図１０】
0006387710.tif 000011
【図１１】
0006387710.tif 000012
【図１２】
0006387710.tif 000013