(57)【要約】【課題】複数のカメラ映像間でオクルージョンが発生し対応点が存在しない場合や、一様な被写体で対応点が複数存在する場合でも、奥行値の誤推定を軽減することが可能な奥行推定装置を提供する。【解決手段】奥行推定装置１は、基準映像と複数の隣接映像とを入力する映像入力手段１０と、仮定奥行値ごとに、基準映像の画素の画素値と、当該画素の仮定奥行値の視差に対応する隣接映像の画素の画素値との差分絶対値である隣接映像画素差分値を演算する対応画素差分演算手段２０と、閾値により隣接映像画素差分値の平均値または最小値を選択差分値として決定する差分値決定手段３０と、選択差分値を仮定奥行値と基準映像の画素位置とに対応付けて記憶する記憶手段４０と、画素位置ごとに選択差分値が最小となる仮定奥行値を記憶手段４０において探索して奥行値を決定する奥行値決定手段６０と、を備えることを特徴とする。【選択図】図２
2011141710.tif 000002
【特許請求の範囲】
【請求項１】
予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定装置であって、
前記複数配列した前記カメラのいずれかにおいて、予め定めた基準カメラで前記被写体を撮影した基準映像と、前記基準カメラに隣接する複数の隣接カメラで前記被写体を撮影した複数の隣接映像とを入力する映像入力手段と、
複数の仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する画素である前記複数の隣接映像の各画素の画素値との差分絶対値である隣接映像画素差分値を演算する対応画素差分演算手段と、
前記複数の仮定奥行値および前記基準映像の画素位置ごとに、前記隣接映像画素差分値の最大差分値と最小差分値との差が、予め定めた閾値よりも小さい場合は、前記隣接映像画素差分値の平均値である平均差分値を選択し、前記閾値よりも大きい場合は、前記隣接映像画素差分値の最小差分値を選択して、選択差分値として決定する差分値決定手段と、
この差分値決定手段で決定した選択差分値を前記仮定奥行値と前記基準映像の画素位置とに対応付けて記憶する記憶手段と、
前記画素位置ごとに、前記選択差分値が最小となる前記仮定奥行値を前記記憶手段において探索し、当該画素位置の奥行値とする奥行値決定手段と、
を備えることを特徴とする奥行推定装置。
【請求項２】
予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定装置であって、
前記複数配列した前記カメラのいずれかにおいて、予め定めた基準カメラで前記被写体を撮影した基準映像と、前記基準カメラに隣接する複数の隣接カメラで前記被写体を撮影した複数の隣接映像とを入力する映像入力手段と、
複数の仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する画素である前記複数の隣接映像の各画素の画素値との差分絶対値である隣接映像画素差分値を演算する対応画素差分演算手段と、
前記複数の仮定奥行値および前記基準映像の画素位置ごとに、前記隣接映像画素差分値の最大差分値と最小差分値との比が、予め定めた閾値の範囲内の場合は、前記隣接映像画素差分値の平均値である平均差分値を選択し、前記範囲外の場合は、前記隣接映像画素差分値の最小差分値を選択して、選択差分値として決定する差分値決定手段と、
この差分値決定手段で決定した選択差分値を前記仮定奥行値と前記基準映像の画素位置とに対応付けて記憶する記憶手段と、
前記画素位置ごとに、前記選択差分値が最小となる前記仮定奥行値を前記記憶手段において探索し、当該画素位置の奥行値とする奥行値決定手段と、
を備えることを特徴とする奥行推定装置。
【請求項３】
前記差分値決定手段は、前記隣接映像画素差分値の中に、予め定めた第２閾値より小さい差分絶対値が存在する場合、当該差分絶対値を前記選択差分値として決定することを特徴とする請求項１または請求項２に記載の奥行推定装置。
【請求項４】
前記画素位置ごとに、前記選択差分値に、前記選択差分値が最小となる前記仮定奥行値と、当該画素位置の隣接画素位置における前記選択差分値が最小となる前記仮定奥行値との差分を重み付け加算することで、当該画素位置における選択差分値を平滑化する平滑化手段をさらに備え、
前記奥行値決定手段は、前記平滑化手段で平滑化した選択差分値が最小となる前記仮定奥行値を探索し、当該画素位置の奥行値とすることを特徴とする請求項１から請求項３のいずれか一項に記載の奥行推定装置。
【請求項５】
前記仮定奥行値は、前記カメラ映像の画素間隔よりも小さい仮想のサブ画素間隔を単位とする値であって、
前記対応画素差分演算手段は、前記仮定奥行値に対応する前記サブ画素を含む画素の画素値と、当該画素に隣接する画素の画素値とから補間して生成した画素値を用いて差分絶対値を演算することを特徴とする請求項１から請求項４のいずれか一項に記載の奥行推定装置。
【請求項６】
前記画素値は、輝度値および色差値、または、カラー値の複数の要素で構成される値であって、
前記対応画素差分演算手段は、前記差分絶対値を、前記要素ごとの値の差分絶対値和として演算することを特徴とする請求項１から請求項５のいずれか一項に記載の奥行推定装置。
【請求項７】
予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定方法であって、
前記複数配列した前記カメラのいずれかにおいて、予め定めた基準カメラで前記被写体を撮影した基準映像と、前記基準カメラに隣接する複数の隣接カメラで前記被写体を撮影した複数の隣接映像とを映像入力手段により入力する映像入力ステップと、
複数の仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する画素である前記複数の隣接映像の各画素の画素値との差分絶対値である隣接映像画素差分値を対応画素差分演算手段により演算する対応画素差分演算ステップと、
差分値決定手段により、前記複数の仮定奥行値および前記基準映像の画素位置ごとに、前記隣接映像画素差分値の最大差分値と最小差分値との差が、予め定めた閾値よりも小さい場合は、前記隣接映像画素差分値の平均値である平均差分値を選択し、前記閾値よりも大きい場合は、前記隣接映像画素差分値の最小差分値を選択して、選択差分値として決定する差分値決定ステップと、
この差分値決定ステップで決定した選択差分値を、前記仮定奥行値と前記基準映像の画素位置とに対応付けて記憶手段に記憶する記憶ステップと、
奥行値決定手段により、前記画素位置ごとに、前記選択差分値が最小となる前記仮定奥行値を前記記憶手段において探索し、当該画素位置の奥行値とする奥行値決定ステップと、
を含むことを特徴とする奥行推定方法。
【請求項８】
予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定方法であって、
前記複数配列した前記カメラのいずれかにおいて、予め定めた基準カメラで前記被写体を撮影した基準映像と、前記基準カメラに隣接する複数の隣接カメラで前記被写体を撮影した複数の隣接映像とを映像入力手段により入力する映像入力ステップと、
複数の仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する画素である前記複数の隣接映像の各画素の画素値との差分絶対値である隣接映像画素差分値を対応画素差分演算手段により演算する対応画素差分演算ステップと、
差分値決定手段により、前記複数の仮定奥行値および前記基準映像の画素位置ごとに、前記隣接映像画素差分値の最大差分値と最小差分値との比が、予め定めた閾値の範囲内の場合は、前記隣接映像画素差分値の平均値である平均差分値を選択し、前記範囲外の場合は、前記隣接映像画素差分値の最小差分値を選択して、選択差分値として決定する差分値決定ステップと、
この差分値決定ステップで決定した選択差分値を、前記仮定奥行値と前記基準映像の画素位置とに対応付けて記憶手段に記憶する記憶ステップと、
奥行値決定手段により、前記画素位置ごとに、前記選択差分値が最小となる前記仮定奥行値を前記記憶手段において探索し、当該画素位置の奥行値とする奥行値決定ステップと、
を含むことを特徴とする奥行推定方法。
【請求項９】
予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定するために、コンピュータを、
前記複数配列した前記カメラのいずれかにおいて、予め定めた基準カメラで前記被写体を撮影した基準映像と、前記基準カメラに隣接する複数の隣接カメラで前記被写体を撮影した複数の隣接映像とを入力する映像入力手段、
複数の仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する画素である前記複数の隣接映像の各画素の画素値との差分絶対値である隣接映像画素差分値を演算する対応画素差分演算手段、
前記複数の仮定奥行値および前記基準映像の画素位置ごとに、前記隣接映像画素差分値の最大差分値と最小差分値との差が、予め定めた閾値よりも小さい場合は、前記隣接映像画素差分値の平均値である平均差分値を選択し、前記閾値よりも大きい場合は、前記隣接映像画素差分値の最小差分値を選択して、選択差分値として決定し、前記仮定奥行値と前記基準映像の画素位置とに対応付けて記憶手段に書き込む差分値決定手段、
前記画素位置ごとに、前記選択差分値が最小となる前記仮定奥行値を前記記憶手段において探索し、当該画素位置の奥行値とする奥行値決定手段、
として機能させることを特徴とする奥行推定プログラム。
【請求項１０】
予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定するために、コンピュータを、
前記複数配列した前記カメラのいずれかにおいて、予め定めた基準カメラで前記被写体を撮影した基準映像と、前記基準カメラに隣接する複数の隣接カメラで前記被写体を撮影した複数の隣接映像とを入力する映像入力手段、
複数の仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する画素である前記複数の隣接映像の各画素の画素値との差分絶対値である隣接映像画素差分値を演算する対応画素差分演算手段、
前記複数の仮定奥行値および前記基準映像の画素位置ごとに、前記隣接映像画素差分値の最大差分値と最小差分値との比が、予め定めた閾値の範囲内の場合は、前記隣接映像画素差分値の平均値である平均差分値を選択し、前記範囲外の場合は、前記隣接映像画素差分値の最小差分値を選択して、選択差分値として決定し、前記仮定奥行値と前記基準映像の画素位置とに対応付けて記憶手段に書き込む差分値決定手段、
前記画素位置ごとに、前記選択差分値が最小となる前記仮定奥行値を前記記憶手段において探索し、当該画素位置の奥行値とする奥行値決定手段、
として機能させることを特徴とする奥行推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のカメラで被写体を撮影した映像から、多視点映像用の被写体の奥行値を推定する奥行推定装置、奥行推定方法および奥行推定プログラムに関する。
【背景技術】
【０００２】
近年、複数のカメラで同一の被写体を撮影した複数の映像（多視点映像）を用いて、立体映像や自由視点映像を生成、符号化する研究が進められている。これらの立体映像や自由視点映像を生成、符号化する技術では、基本的に、複数のカメラで被写体を撮影したカメラ映像の視差量を利用することで、被写体までの奥行値を求めている（特許文献１等参照）。
【０００３】
この特許文献１には、図１３に示すように、複数のカメラ（Ｃ１，Ｃ２，Ｃ３）で撮影された視差方向に異なるカメラ映像を、時間方向に符号化する技術が開示されている。
この符号化の際に、特許文献１に記載されている発明は、複数のカメラ（Ｃ１，Ｃ２，Ｃ３）で撮影されたカメラ映像（Ｆ１，Ｆ２，Ｆ３）間で、映像内の被写体の奥行値を仮定し、基準となるカメラ（例えば、Ｃ２）で撮影されたカメラ映像（Ｆ２）内のブロックに含まれる画素値と、カメラの位置関係と奥行値とから定まる他のカメラ（例えば、Ｃ１，Ｃ３）で撮影されたカメラ映像（Ｆ１，Ｆ３）内の対応ブロックに含まれる画素値との差分絶対値が最小となる奥行値を求めている。
【０００４】
このように、従来は、複数のカメラ映像において、複数の仮定した奥行値に対応する画素値の差分絶対値が最小となる画素が、それぞれのカメラ映像の対応する画素であり、また、そのときの仮定した奥行値が当該画素の奥行値であると推定していた。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−３６８００号公報（段落〔０１１８〕〜〔０１１２〕）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前記したように、複数のカメラ映像において、複数の仮定した奥行値に対応する画素値の差分絶対値が最小となる画素を探索し、当該画素の奥行値を推定する手法では、以下に示す問題がある。
例えば、被写体の重なりによって、複数のカメラ映像間で対応点が存在しない場合や、画素値の変化が少ない一様な被写体において、複数のカメラ映像間に、画素値が近似する複数の誤った対応点が存在する場合がある。これらの場合、従来の手法では、単に、画素値の差分絶対値が最小となる画素を探索するため、誤った対応点を探索（偽マッチング）してしまう場合がある。すなわち、従来の手法では、誤った対応点を探索した結果、誤った奥行値が推定されてしまうという問題がある。
【０００７】
本発明は、このような問題点に鑑みてなされたものであり、複数のカメラ映像間で対応点が存在しない場合や、一様な被写体で複数のカメラ映像間における対応点が複数存在する場合であっても、奥行値の誤推定を軽減することが可能な奥行推定装置、奥行推定方法および奥行推定プログラムを提供することを課題とする。
【課題を解決するための手段】
【０００８】
本発明は、前記課題を解決するために創案されたものであり、まず、請求項１に記載の奥行推定装置は、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定装置であって、映像入力手段と、対応画素差分演算手段と、差分値決定手段と、記憶手段と、奥行値決定手段と、を備える構成とした。
【０００９】
かかる構成において、奥行推定装置は、映像入力手段によって、複数配列したカメラのいずれかにおいて、予め定めた基準カメラで被写体を撮影した基準映像と、基準カメラに隣接する複数の隣接カメラで被写体を撮影した複数の隣接映像とを入力する。この隣接映像は、基準映像からの視差を計測するための映像である。
【００１０】
そして、奥行推定装置は、対応画素差分演算手段によって、複数の仮定奥行値ごとに、基準映像の各画素の画素値と、当該画素の仮定奥行値の視差に対応する画素である複数の隣接映像の各画素の画素値との差分絶対値である隣接映像画素差分値を演算する。この仮定奥行値は、基準映像の画素に対応する被写体の奥行値を仮定した値であって、例えば、最小視差（“０”）から最大視差までの値とする。この対応画素差分演算手段によって、基準映像の各画素の画素値と、隣接映像の各画素の画素値との仮定奥行値に対応した対応点同士の画素値の差分絶対値が算出される。なお、この差分絶対値（隣接映像画素差分値）は、その値が小さいほど、仮定奥行値が実際の被写体において同一の対応点を指し示している可能性が高いといえる。
【００１１】
さらに、奥行推定装置は、差分値決定手段によって、複数の仮定奥行値および基準映像の画素位置ごとに、隣接映像画素差分値の最大差分値と最小差分値との差が、予め定めた閾値よりも小さい場合は、隣接映像画素差分値の平均値である平均差分値を選択し、閾値よりも大きい場合は、隣接映像画素差分値の最小差分値を選択して、選択差分値として決定する。なお、平均差分値は、隣接映像画素差分値の相加平均としてもよいし、相乗平均としてもよい。
そして、奥行推定装置は、記憶手段に差分値決定手段で決定した選択差分値を、仮定奥行値と基準映像の画素位置とに対応付けて記憶する。
【００１２】
なお、正しい奥行値に対する選択差分値であれば、その値は小さくなり、ノイズ等によって、ある隣接映像画素差分値が誤った値をとった場合であっても、複数の隣接映像画素差分値を平均化することで、全体として選択差分値が小さくなる。
また、オクルージョンが発生することで、ある隣接映像画素差分値が大きな値となった場合であっても、閾値判定により、他の隣接映像における最小差分値が選択されるため、選択差分値は、より正しい値として選択されることになる。
これによって、選択差分値は、仮定奥行値の中で正しい奥行値を判定するための指標となる。
そして、奥行推定装置は、奥行値決定手段によって、画素位置ごとに、選択差分値が最小となる仮定奥行値を記憶手段において探索し、当該画素位置の奥行値と決定する。
【００１３】
また、請求項２に記載の奥行推定装置は、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定装置であって、映像入力手段と、対応画素差分演算手段と、差分値決定手段と、記憶手段と、奥行値決定手段と、を備える構成とした。
なお、請求項１に記載の奥行推定装置の差分値決定手段は、隣接映像画素差分値の最大差分値と最小差分値との差に基づいて選択差分値を決定したが、請求項２に記載の奥行推定装置の差分値決定手段は、隣接映像画素差分値の最大差分値と最小差分値との比に基づいて選択差分値を決定するものとした。
【００１４】
すなわち、かかる構成において、奥行推定装置は、差分値決定手段によって、複数の仮定奥行値および基準映像の画素位置ごとに、隣接映像画素差分値の最大差分値と最小差分値との比が、予め定めた閾値の範囲内の場合は、隣接映像画素差分値の平均値である平均差分値を選択し、範囲外の場合は、隣接映像画素差分値の最小差分値を選択して、選択差分値として決定する。
【００１５】
なお、正しい奥行値に対する選択差分値であれば、その値は小さくなり、ノイズ等によって、ある隣接映像画素差分値が誤った値をとった場合であっても、隣接映像画素差分値の比が予め定めた範囲内であれば、それらを平均化することで、全体として選択差分値が小さくなる。これによって、選択差分値は、仮定奥行値の中で正しい奥行値を判定するための指標となる。
また、オクルージョンが発生することで、ある隣接映像画素差分値が大きな値となり、比が大きく、または小さくなった場合であっても、閾値判定により、他の隣接映像における最小差分値が選択されるため、選択差分値は、より正しい値として選択されることになる。
【００１６】
また、請求項３に記載の奥行推定装置は、請求項１または請求項２に記載の奥行推定装置において、差分値決定手段が、前記隣接映像画素差分値の中に、予め定めた第２閾値より小さい差分絶対値が存在する場合、当該差分絶対値を前記選択差分値として決定することを特徴とする。
【００１７】
かかる構成において、奥行推定装置は、差分値決定手段によって、隣接映像画素差分値が第２閾値より小さければ、平均差分値や最小差分値の選択のための判定を行わず、隣接映像画素差分値そのものを選択する。この第２閾値は、例えば、画素の取りうる値を“０”〜“２５５”の間のレベルとしたとき、数レベル程度とする。数レベル程度であれば、差分値決定手段が選択する差分値が、正しい奥行値に対応する差分値である可能性が高いからである。
【００１８】
さらに、請求項４に記載の奥行推定装置は、請求項１から請求項３のいずれか一項に記載の奥行推定装置において、平滑化手段をさらに備える構成とした。
【００１９】
かかる構成において、奥行推定装置は、平滑化手段によって、基準映像の画素位置ごとに、選択差分値に、選択差分値が最小となる仮定奥行値と、当該画素位置の隣接画素位置における選択差分値が最小となる仮定奥行値との差分を重み付け加算することで、当該画素位置における選択差分値を平滑化する。これによって、奥行値決定手段によって、平滑化された選択差分値が最小となる仮定奥行値が探索されることになり、当該画素位置の奥行値とするため、奥行値そのものが隣接画素間で平滑化されることになる。
【００２０】
また、請求項５に記載の奥行推定装置は、請求項１から請求項４のいずれか一項に記載の奥行推定装置において、仮定奥行値が、前記カメラ映像の画素間隔よりも小さい仮想のサブ画素間隔を単位とする値であって、前記対応画素差分演算手段が、前記仮定奥行値に対応する前記サブ画素を含む画素の画素値と、当該画素に隣接する画素の画素値とから補間して生成した画素値を用いて差分絶対値を演算する構成とした。
かかる構成において、奥行推定装置は、対応画素差分演算手段によって、サブ画素単位で差分値が演算され、サブ画素単位で奥行値が決定されることになる。
【００２１】
さらに、請求項６に記載の奥行推定装置は、請求項１から請求項５のいずれか一項に記載の奥行推定装置において、前記画素値が、輝度値および色差値、または、カラー値の複数の要素で構成される値であって、前記対応画素差分演算手段が、前記差分絶対値を、前記要素ごとの値の差分絶対値和として演算する構成とした。
【００２２】
かかる構成において、奥行推定装置は、画素値として、輝度値および色差値、または、カラー値（例えば、ＲＧＢ値）といった複数の要素で構成される値であっても、輝度値および色差値の差分絶対値の和、または、ＲＧＢ値それぞれの差分絶対値の和として差分絶対値を単一の値で処理することができる。
【００２３】
また、請求項７に記載の奥行推定方法は、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定方法であって、映像入力ステップと、対応画素差分演算ステップと、差分値決定ステップと、記憶ステップと、奥行値決定ステップと、を含む手順とした。
【００２４】
かかる手順において、奥行推定方法は、映像入力ステップで、複数配列したカメラのいずれかにおいて、予め定めた基準カメラで被写体を撮影した基準映像と、基準カメラに隣接する複数の隣接カメラで被写体を撮影した複数の隣接映像とを映像入力手段により入力する。
そして、奥行推定方法は、対応画素差分演算ステップで、複数の仮定奥行値ごとに、基準映像の各画素の画素値と、当該画素の仮定奥行値の視差に対応する画素である複数の隣接映像の各画素の画素値との差分絶対値である隣接映像画素差分値を対応画素差分演算手段により演算する。
【００２５】
さらに、奥行推定方法は、差分値決定ステップで、対応画素差分演算ステップで演算した隣接映像画素差分値を、差分値決定手段により、複数の仮定奥行値および基準映像の画素位置ごとに、対応画素差分演算ステップで演算した隣接映像画素差分値の最大差分値と最小差分値との差が、予め定めた閾値よりも小さい場合は、隣接映像画素差分値の平均値である平均差分値を選択し、閾値よりも大きい場合は、隣接映像画素差分値の最小差分値を選択して、選択差分値として決定する。
そして、奥行推定方法は、記憶ステップで、差分値決定ステップで決定した選択差分値を、仮定奥行値と基準映像の画素位置とに対応付けて記憶手段に記憶する。
その後、奥行推定方法は、奥行値決定ステップで、奥行値決定手段により、画素位置ごとに、選択差分値が最小となる仮定奥行値を記憶手段において探索し、当該画素位置の奥行値とする。
【００２６】
また、請求項８に記載の奥行推定方法は、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定方法であって、映像入力ステップと、対応画素差分演算ステップと、差分値決定ステップと、記憶ステップと、奥行値決定ステップと、を含む手順とした。
なお、請求項７に記載の奥行推定方法の差分値決定ステップは、隣接映像画素差分値の最大差分値と最小差分値との差に基づいて選択差分値を決定したが、請求項８に記載の奥行推定方法の差分値決定ステップは、隣接映像画素差分値の最大差分値と最小差分値との比に基づいて選択差分値を決定することとした。
【００２７】
すなわち、かかる手順において、奥行推定方法は、差分値決定手段によって、複数の仮定奥行値および基準映像の画素位置ごとに、隣接映像画素差分値の最大差分値と最小差分値との比が、予め定めた閾値の範囲内の場合は、隣接映像画素差分値の平均値である平均差分値を選択し、範囲外の場合は、隣接映像画素差分値の最小差分値を選択して、選択差分値として決定する。
【００２８】
さらに、請求項９に記載の奥行推定プログラムは、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定するために、コンピュータを、映像入力手段、対応画素差分演算手段、差分値決定手段、奥行値決定手段、として機能させる構成とした。
【００２９】
かかる構成において、奥行推定プログラムは、映像入力手段によって、複数配列したカメラのいずれかにおいて、予め定めた基準カメラで被写体を撮影した基準映像と、基準カメラに隣接する複数の隣接カメラで被写体を撮影した複数の隣接映像とを入力する。
そして、奥行推定プログラムは、対応画素差分演算手段によって、複数の仮定奥行値ごとに、基準映像の各画素の画素値と、当該画素の仮定奥行値の視差に対応する画素である複数の隣接映像の各画素の画素値との差分絶対値である隣接映像画素差分値を演算する。
【００３０】
さらに、奥行推定プログラムは、差分値決定手段によって、複数の仮定奥行値および基準映像の画素位置ごとに、隣接映像画素差分値の最大差分値と最小差分値との差が、予め定めた閾値よりも小さい場合は、隣接映像画素差分値の平均値である平均差分値を選択し、閾値よりも大きい場合は、隣接映像画素差分値の最小差分値を選択して、選択差分値として決定し、仮定奥行値と基準映像の画素位置とに対応付けて記憶手段に書き込む。そして、奥行推定プログラムは、奥行値決定手段によって、画素位置ごとに、選択差分値が最小となる仮定奥行値を記憶手段において探索し、当該画素位置の奥行値と決定する。
【００３１】
また、請求項１０に記載の奥行推定プログラムは、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定するために、コンピュータを、映像入力手段、対応画素差分演算手段、差分値決定手段、奥行値決定手段、として機能させる構成とした。
なお、請求項９に記載の奥行推定プログラムの差分値決定手段は、隣接映像画素差分値の最大差分値と最小差分値との差に基づいて選択差分値を決定したが、請求項１０に記載の奥行推定プログラムの差分値決定手段は、隣接映像画素差分値の最大差分値と最小差分値との比に基づいて選択差分値を決定するものとした。
【００３２】
すなわち、かかる構成において、奥行推定プログラムは、差分値決定手段によって、複数の仮定奥行値および基準映像の画素位置ごとに、隣接映像画素差分値の最大差分値と最小差分値との比が、予め定めた閾値の範囲内の場合は、隣接映像画素差分値の平均値である平均差分値を選択し、範囲外の場合は、隣接映像画素差分値の最小差分値を選択して、選択差分値として決定する。
【発明の効果】
【００３３】
本発明は、以下に示す優れた効果を奏するものである。
請求項１，２，７〜１０に記載の発明によれば、被写体の一部が手前の被写体の陰に隠れて対応点がないオクルージョンが発生した場合であっても、閾値に応じて、最小の差分値、すなわち、より正しい差分値が選択されるため、誤った奥行値を推定することを防止することができる。また、本発明によれば、一様な被写体で対応点を誤る偽マッチングが生じている場合であっても、閾値に応じて、差分値の平均値を選択するため、正しい差分値のように小さな値とはならず、正しい差分値として選択される度合いを低くすることができ、誤った奥行値を推定することを防止することができる。
【００３４】
請求項３に記載の発明によれば、奥行値が正しい場合の隣接映像画素差分値を直接選択することができるため、奥行値の推定精度を高めることができる。
請求項４に記載の発明によれば、画素の奥行値を隣接画素の奥行値によって平滑化することができるため、ノイズ等によって、奥行値が誤推定された場合であっても、隣接画素の奥行値によって平滑化されるため、滑らかな奥行値を得ることができる。
【００３５】
請求項５に記載の発明によれば、仮定する奥行値の刻み幅を、映像の画素間隔よりも小さくすることができるため、カメラ間の間隔を狭くとった場合であっても、奥行値の分解能を高めることができる。これによって、カメラ間隔を狭くすることができ、カメラを含めたシステム構成の小型化を実現することができると共に、オクルージョンの発生を低減することができ、奥行値の誤推定を軽減することができる。
【００３６】
請求項６に記載の発明によれば、輝度値のみ等の単一の差分のみではなく、複数の要素ごとの値の差分絶対値和を差分絶対値とすることで、画素の対応精度を高めることができ、偽マッチングによる誤った奥行値の推定を防止することができる。
【図面の簡単な説明】
【００３７】
【図１】本発明の実施形態に係る奥行推定システムの構成を示すブロック図である。
【図２】本発明の実施形態に係る奥行推定装置の構成を示すブロック図である。
【図３】正マッチングにおける差分値決定手段の処理内容を説明するための説明図である。
【図４】偽マッチングにおける差分値決定手段の処理内容を説明するための説明図である。
【図５】オクルージョン発生時における差分値決定手段の処理内容を説明するための説明図である。
【図６】記憶手段に記憶される記憶内容を説明するための説明図である。
【図７】本発明の実施形態に係る奥行推定装置の全体動作を示すフローチャートである。
【図８】本発明の実施形態に係る奥行推定装置の差分値決定動作を示すフローチャートである。
【図９】本発明の実施形態に係る奥行推定装置の差分値平滑化動作を示すフローチャートである。
【図１０】本発明の実施形態に係る奥行推定装置の奥行値決定動作を示すフローチャートである。
【図１１】本発明の実施形態の変形例に係る奥行推定装置の構成を示すブロック図である。
【図１２】仮定奥行値がサブ画素単位である場合のサブ画素の画素値を補間により生成する手法を説明するための説明図である。
【図１３】従来の奥行推定手法を説明するための説明図である。
【発明を実施するための形態】
【００３８】
以下、本発明の実施形態について図面を参照して説明する。
〔奥行推定システムの全体構成〕
最初に、図１を参照して、本発明の実施形態に係る奥行推定装置を含んだ奥行推定システムの全体構成について説明する。奥行推定システムＳは、複数配列したカメラで被写体を撮影した多視点映像から、被写体の奥行値を推定した奥行映像を生成するものである。図１に示した奥行推定システムＳは、カメラＣ（ＣＬ，ＣＣ，ＣＲ）と、奥行推定装置１とを備えている。
【００３９】
カメラＣは、被写体Ｔを撮影する一般的な撮影装置である。ここでは、水平方向の視差に応じて奥行値を生成することとし、視差の基準となるカメラ（基準カメラ）ＣＣに対し、水平方向に予め定めた距離Ｌだけ等間隔に離間して、カメラ（隣接カメラ）ＣＬ，ＣＲを平行に配置している。なお、この距離Ｌは、奥行値と視差量とが対応可能な範囲であれば、その距離は任意である。
【００４０】
カメラＣＣは、視差の基準となる映像（基準映像ＦＣ）を撮影するものである。また、カメラＣＬ，ＣＲは、それぞれカメラＣＣの左右に配置されたカメラであって、基準映像ＦＣとの視差を求めるための映像（隣接映像ＦＬ，ＦＲ）を撮影するものである。このカメラＣ（ＣＬ，ＣＣ，ＣＲ）で撮影された映像（ＦＬ，ＦＣ，ＦＲ）は、奥行推定装置１に入力される。
【００４１】
なお、垂直方向の視差に応じて奥行値を生成する場合であれば、カメラＣの配置は、垂直方向に離間させて配置すればよい。
また、カメラＣが撮影する映像（ＦＬ，ＦＣ，ＦＲ）は、静止画であっても動画であっても構わない。動画である場合、カメラＣはそれぞれフレーム同期を行うことで、順次、静止画のフレーム画像として奥行推定装置１に入力されることとする。あるいは、フレーム画像ごとにタイムコードを付加し、奥行推定装置１で同期をとることとしてもよい。
【００４２】
奥行推定装置１は、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、被写体Ｔの奥行きを示す奥行値を推定するものである。ここでは、奥行推定装置１は、水平方向に配列したカメラＣ（ＣＬ，ＣＣ，ＣＲ）で被写体Ｔを撮影したカメラ映像（ＦＬ，ＦＣ，ＦＲ）から、被写体Ｔの奥行きを示す奥行値を推定する。なお、ここでは、奥行推定装置１は、奥行値を、映像の各画素値に対応付けることで奥行映像ＦＺを生成することとする。
【００４３】
〔奥行推定装置の構成〕
次に、図２を参照（適宜図１参照）して、本発明の実施形態に係る奥行推定装置の構成について説明する。図２に示すように、奥行推定装置１は、映像入力手段１０と、対応画素差分演算手段２０と、差分値決定手段３０と、記憶手段４０と、平滑化手段５０と、奥行値決定手段６０と、を備えている。
【００４４】
映像入力手段１０は、カメラＣで撮影された複数のカメラ映像を入力するものである。ここでは、映像入力手段１０は、予め定めた基準カメラＣＣで撮影した基準映像ＦＣと、基準カメラＣＣに隣接する複数の隣接カメラＣＬ，ＣＲで撮影した隣接映像ＦＬ，ＦＲと、を入力する。
この映像入力手段１０で入力した各映像（ＦＬ，ＦＣ，ＦＲ）は、図示を省略したメモリに記憶され、後記する対応画素差分演算手段２０によって参照されるものとする。
【００４５】
対応画素差分演算手段２０は、複数の仮定奥行値ごとに、基準映像ＦＣの各画素の画素値と、当該画素の仮定奥行値の視差に対応する隣接映像ＦＬ，ＦＲの各画素の画素値との差分絶対値である隣接映像画素差分値ｅＣＬ，ｅＣＲを演算するものである。ここで、隣接映像画素差分値ｅＣＬは、基準映像ＦＣと隣接映像ＦＬとの間で演算された差分絶対値であり、隣接映像画素差分値ｅＣＲは、基準映像ＦＣと隣接映像ＦＲとの間で演算された差分絶対値である。
【００４６】
なお、画素値の差分絶対値は、カメラ映像（ＦＬ，ＦＣ，ＦＲ）が、輝度（輝度値）と色差信号（色差値）との各要素で構成される場合、当該画素の輝度値の差分絶対値と、色差値の差分絶対値とを加算した値とする。このとき、色差値の差分絶対値に任意の係数を掛けて、色成分の重みを調整することとしてもよい。
また、画素値の差分絶対値は、カメラ映像（ＦＬ，ＦＣ，ＦＲ）が、ＲＧＢのカラー信号で構成される場合、カラー信号の要素であるＲ値の差分絶対値と、Ｇ値の差分絶対値と、Ｂ値の差分絶対値とを加算した値とする。
【００４７】
また、仮定奥行値は、被写体Ｔの奥行値を仮に設定する値であって、“０”から予め定めた最大視差量に対応する奥行値までの値をとる。例えば、奥行値を８ビットのデータで表す場合、仮想奥行値は、“０”〜“２５５”の範囲の値をとる。また、ここでは、対応画素差分演算手段２０は、“０”から最大視差量に対応する奥行値（例えば、“２５５”）まで、順次、仮定奥行値を設定し、当該仮定奥行値の視差に対応する画素間の画素値の差分を隣接映像画素差分値として演算する。また、ここでは、奥行値の単位と画素間の視差の単位とを同一とし、奥行値が“１”増加することで、１画素ずつ視差が増加することとする。
【００４８】
ここでは、対応画素差分演算手段２０は、基準映像ＦＣの（ｘ，ｙ）座標の画素値をＦＣ（ｘ，ｙ）、基準映像ＦＣの（ｘ，ｙ）座標の仮定奥行値ｄに対応する隣接映像ＦＬの（ｘ＋ｄ，ｙ）座標の画素値をＦＬ（ｘ＋ｄ，ｙ）、隣接映像ＦＲの（ｘ−ｄ，ｙ）座標の画素値をＦＲ（ｘ−ｄ，ｙ）としたとき、以下の（１）式の演算により、隣接映像画素差分値ｅＣＬ（ｄ，ｘ，ｙ），ｅＣＲ（ｄ，ｘ，ｙ）を算出する。なお、「｜｜」は、絶対値を示す。
ｅＣＬ（ｄ，ｘ，ｙ）＝｜ＦＬ（ｘ＋ｄ，ｙ）−ＦＣ（ｘ，ｙ）｜
ｅＣＲ（ｄ，ｘ，ｙ）＝｜ＦＲ（ｘ−ｄ，ｙ）−ＦＣ（ｘ，ｙ）｜        …（１）式
【００４９】
この対応画素差分演算手段２０は、演算により求めた仮定奥行値ｄ（“０”〜最大視差量）ごとの隣接映像画素差分値ｅＣＬ，ｅＣＲを、差分値決定手段３０に出力する。なお、対応画素差分演算手段２０は、差分値決定手段３０から、差分値を記憶手段４０に書き込んだ旨（書き込み完了）を通知されることで、演算対象とする画素の画素位置および仮定奥行値を順次更新し、隣接映像画素差分値ｅＣＬ，ｅＣＲを演算する。
【００５０】
差分値決定手段３０は、複数の仮定奥行値および基準映像ＦＣの画素位置ごとに、対応画素差分演算手段２０で演算された隣接映像画素差分値ｅＣＬ，ｅＣＲに基づいて、当該仮定奥行値における当該画素位置の隣接映像画素差分値を決定するものである。
【００５１】
ここでは、差分値決定手段３０は、平均差分値演算手段３０ａと、最小差分値選択手段３０ｂと、差分値選択手段３０ｃと、を備えている。
【００５２】
平均差分値演算手段３０ａは、複数の仮定奥行値および基準映像ＦＣの画素位置ごとに、対応画素差分演算手段２０で演算された隣接映像画素差分値ｅＣＬ，ｅＣＲの平均値（平均差分値ｅａ）を演算するものである。
すなわち、平均差分値演算手段３０ａは、基準映像ＦＣの（ｘ，ｙ）座標の仮定奥行値ｄに対応する平均差分値ｅａ（ｄ，ｘ，ｙ）を、以下の（２）式の演算により算出する。
ｅａ（ｄ，ｘ，ｙ）＝｛ｅＣＬ（ｄ，ｘ，ｙ）＋ｅＣＲ（ｄ，ｘ，ｙ）｝／２
…（２）式
【００５３】
この平均差分値演算手段３０ａは、演算により求めた仮定奥行値ｄ（“０”〜最大視差量）ごとの平均差分値ｅａを、差分値選択手段３０ｃに出力する。
【００５４】
最小差分値選択手段３０ｂは、複数の仮定奥行値および基準映像ＦＣの画素位置ごとに、対応画素差分演算手段２０で演算された隣接映像画素差分値ｅＣＬ，ｅＣＲのうちで、値が小さい方（最小差分値ｅｍ）を選択するものである。
すなわち、最小差分値選択手段３０ｂは、基準映像ＦＣの（ｘ，ｙ）座標の仮定奥行値ｄに対応する隣接映像画素差分値ｅＣＬ（ｄ，ｘ，ｙ）と、隣接映像画素差分値ｅＣＲ（ｄ，ｘ，ｙ）とを比較し、以下の（３）式に示すように、値が小さい方を最小差分値ｅｍとして選択する。
ｅｍ（ｄ，ｘ，ｙ）＝ｍｉｎ｛ｅＣＬ（ｄ，ｘ，ｙ），ｅＣＲ（ｄ，ｘ，ｙ）｝
…（３）式
【００５５】
この最小差分値選択手段３０ｂは、選択した仮定奥行値ｄ（“０”〜最大視差量）ごとの最小差分値ｅｍを、差分値選択手段３０ｃに出力する。
【００５６】
差分値選択手段３０ｃは、複数の仮定奥行値および基準映像ＦＣの画素位置ごとに、対応画素差分演算手段２０で演算された隣接映像画素差分値ｅＣＬ，ｅＣＲの差の大きさに基づいて、平均差分値演算手段３０ａで演算された平均差分値ｅａと、最小差分値選択手段３０ｂで選択された最小差分値ｅｍとのいずれかを、当該仮定奥行値における当該画素位置の差分値（隣接映像画素差分値）の候補として選択するものである。
【００５７】
すなわち、差分値選択手段３０ｃは、以下の（４）式に示すように、対応画素差分演算手段２０で演算された隣接映像画素差分値ｅＣＬ，ｅＣＲの差と、予め定めた閾値ｔｈとを比較し、差の絶対値が閾値ｔｈよりも小さい場合、平均差分値演算手段３０ａで演算された平均差分値ｅａを選択し、それ以外の場合、最小差分値選択手段３０ｂで選択された最小差分値ｅｍを選択する。
｜ｅＣＬ（ｄ，ｘ，ｙ）−ｅＣＲ（ｄ，ｘ，ｙ）｜＜ｔｈ                …（４）式
【００５８】
この閾値ｔｈは、任意に定めることができるが、画素値の変化範囲の１／６程度の値とすることが好ましい。この閾値ｔｈが大きすぎると、基準映像ＦＣの画素と、隣接映像ＦＬまたは隣接映像ＦＲの画素間で偽マッチングが生じていない場合でも、偽マッチングが生じていると判定し、閾値ｔｈが小さすぎると、基準映像ＦＣの画素と、隣接映像ＦＬまたは隣接映像ＦＲの画素間でオクルージョンが生じていない場合でも、オクルージョンが生じていると判定してしまうことになり、以降の処理において誤った奥行値が決定されるからである。したがって、例えば、画素値の変化範囲が“０”〜“２５５”である場合、閾値ｔｈを“３０”〜“６０”程度とすることが好ましい。
【００５９】
なお、差分値選択手段３０ｃは、対応画素差分演算手段２０で演算された隣接映像画素差分値ｅＣＬ，ｅＣＲのいずれかが予め定めた閾値（第２閾値）よりも小さい場合は、その差分値を当該仮定奥行値における当該画素位置の差分値（隣接映像画素差分値）の候補として選択することとしてもよい。この第２閾値は、閾値ｔｈよりも小さい値であって、例えば、“１”〜“３”である。隣接映像画素差分値ｅＣＬ，ｅＣＲのいずれかが、第２閾値以下の差しかなければ、その差分値そのものが正しい奥行値における差分値を示している可能性が高いからである。
以下、差分値選択手段３０ｃで選択された差分値を、特に、選択差分値と呼ぶこととする。
【００６０】
この差分値選択手段３０ｃは、選択差分値（隣接映像画素差分値）を、仮定奥行値と基準映像の画素位置とに対応付けて記憶手段４０に書き込む。なお、差分値決定手段３０は、選択差分値を記憶手段４０に書き込むごとに、書き込み完了を対応画素差分演算手段２０に通知する。また、差分値決定手段３０は、基準映像のすべての画素位置において、仮定奥行値ごとの選択差分値を記憶手段４０書き込んだ後に、書き込み完了を平滑化手段５０に通知する。
【００６１】
ここで、図３〜図５を参照して、差分値決定手段３０の処理内容およびその作用について、模式的に説明する。
まず、図３を参照（適宜図２参照）して、ある仮定奥行値において、基準映像ＦＣの画素（注目画素ＰＣ）と、隣接映像ＦＬ，ＦＲの画素（対応画素ＰＬ，ＰＲ）とが正しくマッチングしている場合（正マッチング）の処理について説明する。
【００６２】
図３に示すように、画素同士が正しくマッチングしている場合、対応画素差分演算手段２０で演算された隣接映像画素差分値（差分絶対値）ｅＣＬ，ｅＣＲは、いずれも数レベル未満の十分小さな値となる。このとき、隣接映像画素差分値（差分絶対値）ｅＣＬ，ｅＣＲの差が、閾値ｔｈよりも小さければ、差分値選択手段３０ｃは、平均差分値演算手段３０ａで演算された平均差分値ｅａを当該仮想奥行値および当該画素位置における差分値（選択差分値）ｅとして選択する。
【００６３】
この場合、差分値（選択差分値）ｅは、差分絶対値ｅＣＬ，ｅＣＲの平均であるため、カメラのばらつきが吸収され、より正しい値といえる。また、差分絶対値ｅＣＬ，ｅＣＲの値は、正しいマッチングであるため、共に数レベル未満の十分小さな値となり、その平均値である差分値（選択差分値）ｅも数レベル未満の小さな値となる。
このように、差分値決定手段３０は、ある仮定奥行値において、マッチングが正しければ、平均差分値ｅａを選択することで、差分値は小さな値のまま、さらに、カメラのばらつきを吸収し、より精度の高い差分値を決定することができる。
【００６４】
次に、図４を参照（適宜図２参照）して、ある仮定奥行値において、基準映像ＦＣの画素（注目画素ＰＣ）と、隣接映像ＦＬまたは隣接映像ＦＲの画素（対応画素ＰＬ，ＰＲ）とで偽マッチングが発生している場合の処理について説明する。
【００６５】
図４に示すように、注目画素ＰＣを持つ被写体が一様な（画素値の変化が少ない）場合、仮定奥行値が正しくなくても、どちらかの隣接映像、例えば、隣接映像ＦＲの対応画素ＰＲとの間で隣接映像画素差分値（差分絶対値）ｅＣＲが小さくなるため、偽マッチングが生じる場合がある。
【００６６】
このとき、完全なマッチングではないため、差分絶対値ｅＣＲは、数レベル程度の小さな値とはならず（図中、“中”）、差分絶対値ｅＣＲと差分絶対値ｅＣＬとの差が、閾値ｔｈよりも小さくなることが多い。そこで、差分値選択手段３０ｃは、平均差分値演算手段３０ａで演算された平均差分値ｅａを当該仮想奥行値および当該画素位置における差分値（選択差分値）ｅとして選択する。
【００６７】
この場合、差分値（選択差分値）ｅは、差分絶対値ｅＣＬ，ｅＣＲの平均であるため、差分絶対値ｅＣＲより大きい値になる。
このように、差分値決定手段３０は、ある仮定奥行値において、偽マッチングが生じている場合、平均差分値ｅａを選択することで、偽マッチングが生じている差分値よりも大きな値に差分値を変換し、当該差分値が誤りである度合いを高めることができる。
【００６８】
次に、図５を参照（適宜図２参照）して、ある仮定奥行値において、基準映像ＦＣの画素（注目画素ＰＣ）と、隣接映像ＦＬまたは隣接映像ＦＲの画素（対応画素ＰＬ，ＰＲ）とでオクルージョンが発生している場合の処理について説明する。
【００６９】
図５に示すように、注目画素ＰＣに対応する被写体の位置が、一方のカメラが撮影した隣接映像（ここでは、隣接映像ＦＲ）の中で、前景の被写体の陰に隠れた場合、他方のカメラが撮影した隣接映像（ここでは、隣接映像ＦＬ）では隠れていないことが多く、仮定奥行値が正しい場合には、差分絶対値ｅＣＬは十分小さな値となり、差分絶対値ｅＣＲは大きな値となる。
【００７０】
このとき、差分絶対値ｅＣＲと差分絶対値ｅＣＬとの差は、閾値ｔｈよりも大きくなる。そこで、差分値選択手段３０ｃは、最小差分値選択手段３０ｂで選択された最小差分値ｅｍを当該仮想奥行値および当該画素位置における差分値（選択差分値）ｅとして選択する。この場合、差分絶対値ｅＣＲと差分絶対値ｅＣＬとの平均ではなく、小さい方を選択するため、正しい差分値ｅが、選択されることになる。
【００７１】
以上説明したように、差分値決定手段３０は、仮定した奥行値（仮定奥行値）が正しい場合、その奥行値に対応する差分値（選択差分値）ｅは、より小さな値となり、後記する奥行値決定手段６０において、正しい奥行値が選択される度合いを高くすることができる。
【００７２】
また、隣接映像ＦＬ，ＦＲのいずれかで偽マッチングが生じている場合、選択した差分値（選択差分値）ｅである差分絶対値ｅＣＬ，ｅＣＲの平均値が大きくなる。よって、この場合、差分値決定手段３０は、後記する奥行値決定手段６０において、仮定奥行値が選択される度合いを低くすることができる。
【００７３】
さらに、隣接映像ＦＬ，ＦＲのいずれかでオクルージョンが発生している場合、仮想奥行値が正しければ、選択した差分値（選択差分値）ｅである最小差分値ｅｍが十分小さくなる。よって、この場合、差分値決定手段３０は、後記する奥行値決定手段６０において、仮定奥行値が選択される度合いを高くすることができる。
このように、差分値決定手段３０が決定（選択）する差分値（選択差分値）は、仮定奥行値が正しいことを示す指標として用いることができる。
図２に戻って、奥行推定装置１の構成について説明を続ける。
【００７４】
記憶手段４０は、差分値決定手段３０で決定（選択）された差分値（選択差分値）を、仮定奥行値と基準映像の画素位置とに対応付けて記憶するものである。例えば、記憶手段４０は、メモリ等の一般的な記憶媒体である。
【００７５】
ここで、図６を参照して、記憶手段４０に記憶される選択差分値の内容について説明する。図６に示すように、記憶手段４０は、基準映像の画素位置である（ｘ，ｙ）座標ごとに、選択差分値を記憶する。このｘ座標値は、“０”から基準映像の映像幅（水平画素数）Ｘまでの値をとり、ｙ座標値は、“０”から基準映像の映像高（垂直画素数）Ｙまでの値をとる。
また、記憶手段４０は、基準映像の画素位置である（ｘ，ｙ）座標ごとの選択差分値を、さらに、仮定奥行値ｄごとに記憶する。この仮定奥行値ｄは、“０”から最大視差量に対応する値（最大視差量Ｄ）までの値をとる。
図２に戻って、奥行推定装置１の構成について説明を続ける。
【００７６】
平滑化手段５０は、基準映像の画素位置ごとに、当該画素位置における選択差分値を平滑化するものである。この平滑化手段５０は、まず、基準映像の画素位置ごとに、選択差分値が最小となる仮定奥行値を奥行値候補とする。次に、平滑化手段５０は、基準映像の画素位置ごとに、当該画素位置の奥行値候補での選択差分値に、隣接画素位置における奥行値候補と自身の奥行値候補との差分を重み付け加算することで、当該画素位置における選択差分値を平滑化する。なお、平滑化手段５０は、差分値決定手段３０から、基準映像のすべての画素位置において、仮定奥行値ごとの選択差分値を書き込んだ旨（書き込み完了）を通知されることで動作を開始する。
【００７７】
ここでは、平滑化手段５０は、基準映像の画素位置に対応付けて記憶されているすべての奥行値候補とその選択差分値について、重み付け加算を行う。
すなわち、平滑化手段５０は、記憶手段４０に記憶されている基準映像ＦＣの（ｘ，ｙ）座標の奥行値候補ｄに対応する選択差分値ｅ（ｄ，ｘ，ｙ）に、以下の（５）式により、隣接画素間の奥行値候補の差を重み付け加算することで、平滑化された選択差分値ｅｖ（ｄ，ｘ，ｙ）を演算する。
ｅｖ（ｄ，ｘ，ｙ）＝ｅ（ｄ，ｘ，ｙ）
＋ｗ｛｜ｄ（ｘ＋１，ｙ）−ｄ（ｘ，ｙ）｜＋｜ｄ（ｘ，ｙ＋１）−ｄ（ｘ，ｙ）｜｝
…（５）式
【００７８】
なお、ｄ（ｘ，ｙ）は、対象となる基準映像ＦＣの（ｘ，ｙ）座標の選択差分値が最小となる奥行値候補、ｄ（ｘ＋１，ｙ）は、（ｘ＋１，ｙ）座標の選択差分値が最小となる奥行値候補、ｄ（ｘ，ｙ＋１）は、（ｘ，ｙ＋１）座標の選択差分値が最小となる奥行値候補をそれぞれ示している。また、ｗは重み係数であって、この係数ｗは、任意の値とすることができる。なお、この係数ｗは、図示を省略した入力手段を介して、外部から調整可能としてもよい。
【００７９】
このように、選択差分値に、隣接する画素間の奥行値候補の差分を重み付け加算することで、隣接する各画素の奥行値が平滑化されることになる。これによって、隣接画素間において、選択差分値が最小となる奥行値がノイズ等で互いに異なる場合であっても、滑らかな奥行値を得ることができる。
【００８０】
この平滑化手段５０は、演算により求めた平滑化した選択差分値が最小となる奥行値を奥行値候補として、記憶手段４０に書き込む。その後、平滑化手段５０は、奥行値決定手段６０に平滑化完了を通知する。
【００８１】
奥行値決定手段６０は、仮定奥行値と基準映像の画素位置とに対応付けて記憶手段４０に記憶されている選択差分値について、画素位置ごとに、奥行値候補の値を用いて平滑化した選択差分値が最小となる仮定奥行値を新たな奥行値候補として探索するものである。ここでは、奥行値決定手段６０は、平滑化手段５０によって平滑化された選択差分値が最小となる仮定奥行値を探索し、当該画素位置における奥行値とする。
【００８２】
このように、奥行値決定手段６０は、すべての画素位置における奥行値候補を再度決定することで、被写体の奥行値を推定した奥行映像ＦＺを生成する。
なお、この奥行値決定手段６０は、平滑化手段５０から、選択差分値の平滑化が完了した旨（平滑化完了）を通知されることで動作を開始するものとする。
【００８３】
以上説明したように、奥行推定装置１は、隣接映像における視差の差分値を指標として、被写体の奥行値を推定することができる。
【００８４】
〔奥行推定装置の動作〕
次に、図７〜図１０を参照して、本発明の実施形態に係る奥行推定装置の動作について説明する。ここでは、図７を参照して、奥行推定装置１の全体動作について説明し、詳細な説明については、図８〜図１０を参照して説明を行うことにする。
【００８５】
（全体動作）
最初に、図７を参照（構成については適宜図１，２参照）して、奥行推定装置１の全体動作について説明する。
まず、奥行推定装置１は、映像入力手段１０によって、一直線上に等間隔で平行に配置したカメラ（基準カメラＣＣ、隣接カメラＣＬ，ＣＲ）で、同一の被写体Ｔを撮影したカメラ映像（基準映像ＦＣ，隣接映像ＦＬ，ＦＲ）を入力する（ステップＳ１）。
【００８６】
そして、奥行推定装置１は、対応画素差分演算手段２０および差分値決定手段３０によって、仮定奥行値ごとに、基準映像ＦＣの各画素の画素値と、当該画素の仮定奥行値の視差に対応する隣接映像ＦＬ，ＦＲの各画素の画素値との差分絶対値である隣接映像画素差分値ｅＣＬ，ｅＣＲを求め、平均値または最小値のいずれかを差分値として決定（選択）する（ステップＳ２；差分値決定動作）。このステップＳ２の動作については、図８を参照して後で説明を行う。
【００８７】
そして、奥行推定装置１は、平滑化手段５０によって、基準映像ＦＣの（ｘ，ｙ）座標の仮定奥行値ｄに対応してステップＳ２で選択された選択差分値に、隣接画素間の奥行値の差を重み付け加算することで、選択差分値を平滑化する（ステップＳ３；差分値平滑化動作）。このステップＳ３の動作については、図９を参照して後で説明を行う。
【００８８】
その後、奥行推定装置１は、奥行値決定手段６０によって、画素位置（ｘ，ｙ）ごとに、平滑化された選択差分値が最小となる奥行値候補を探索し、当該画素位置の奥行値に決定する（ステップＳ４；奥行値決定動作）。このステップＳ４の動作については、図１０を参照して後で説明を行う。
以上の動作によって、奥行推定装置１は、複数のカメラ映像から、被写体の奥行きを示す奥行値を推定する。
【００８９】
（差分値決定動作）
次に、図８を参照（構成については適宜図１，２参照）して、図７のステップＳ２の動作である差分値決定動作について詳細に説明する。
【００９０】
まず、奥行推定装置１は、変数として、仮定奥行値ｄ、カメラ映像のｘ座標値、ｙ座標値をそれぞれ初期化（ｄ＝０、ｘ＝０、ｙ＝０）する（ステップＳ１０）。
その後、奥行推定装置１は、対応画素差分演算手段２０によって、基準映像ＦＣの（ｘ，ｙ）座標の画素の画素値と、当該画素の仮定奥行値ｄの視差に対応する隣接映像ＦＬ，ＦＲの画素の画素値との差分絶対値である隣接映像画素差分値ｅＣＬ，ｅＣＲを前記（１）式により演算する（ステップＳ１１）。
【００９１】
すなわち、対応画素差分演算手段２０は、基準映像ＦＣの中の画素値ＦＣ（ｘ，ｙ）に対し、隣接映像ＦＬの画素位置を右にｄ画素移動した位置の画素値ＦＬ（ｘ＋ｄ，ｙ）との差分絶対値である隣接映像画素差分値ｅＣＬ（ｄ，ｘ，ｙ）を演算する。
また、対応画素差分演算手段２０は、基準映像ＦＣの中の画素値ＦＣ（ｘ，ｙ）に対し、隣接映像ＦＲの画素位置をｄ画素左に移動した位置の画素値ＦＲ（ｘ−ｄ，ｙ）との差分絶対値である隣接映像画素差分値ｅＣＲ（ｄ，ｘ，ｙ）を演算する。
【００９２】
そして、奥行推定装置１は、差分値決定手段３０の平均差分値演算手段３０ａによって、前記（２）式により、ステップＳ１１で求めた隣接映像画素差分値ｅＣＬと隣接映像画素差分値ｅＣＲとの平均値を演算し、平均差分値ｅａを求める。さらに、奥行推定装置１は、差分値決定手段３０の最小差分値選択手段３０ｂによって、前記（３）式により、隣接映像画素差分値ｅＣＬと隣接映像画素差分値ｅＣＲとの最小値を最小差分値ｅｍとして選択する（ステップＳ１２）。なお、この平均差分値ｅａの演算と、最小差分値ｅｍの選択とは、いずれを先に行っても構わない。
その後、奥行推定装置１は、差分値決定手段３０の差分値選択手段３０ｃによって、ステップＳ１１で求めた隣接映像画素差分値ｅＣＬと隣接映像画素差分値ｅＣＲとの差を演算し、その差が、予め定めた閾値ｔｈよりも小さいか否かを判定する（ステップＳ１３）。
【００９３】
そして、隣接映像画素差分値ｅＣＬと隣接映像画素差分値ｅＣＲとの差が閾値ｔｈよりも小さい場合（ステップＳ１３でＹｅｓ）、差分値選択手段３０ｃは、差分値として、ステップＳ１２で求めた平均差分値ｅａを選択し、仮定奥行値ｄと基準映像の画素位置（ｘ，ｙ）とに対応付けて記憶手段４０に書き込む（ステップＳ１４）。
一方、隣接映像画素差分値ｅＣＬと隣接映像画素差分値ｅＣＲとの差が閾値ｔｈ以上の場合（ステップＳ１３でＮｏ）、差分値選択手段３０ｃは、差分値として、ステップＳ１２で求めた最小差分値ｅｍを選択し、仮定奥行値ｄと基準映像の画素位置（ｘ，ｙ）とに対応付けて記憶手段４０に書き込む（ステップＳ１５）。
【００９４】
なお、ステップＳ１２の後、差分値選択手段３０ｃは、隣接映像画素差分値ｅＣＬまたは隣接映像画素差分値ｅＣＲのいずれかが第２閾値（例えば、数画素）以下であれば、その第２閾値以下の隣接映像画素差分値ｅＣＬまたは隣接映像画素差分値ｅＣＲのいずれかを、仮定奥行値ｄと基準映像の画素位置（ｘ，ｙ）とに対応付けて記憶手段４０に書き込むこととする（ステップとして図示せず）。この場合、差分値選択手段３０ｃは、ステップＳ１３の判定をスキップする。これによって、仮定奥行値ｄにおける正しい差分値が記憶手段４０に書き込まれることになる。
【００９５】
その後、奥行推定装置１は、変数である仮定奥行値ｄ、カメラ映像のｘ座標値、ｙ座標値を順次加算（インクリメント）し、仮定奥行値ｄについては最大視差量になるまで（ステップＳ１６，Ｓ１７）、ｘ座標値についてはカメラ映像の幅になるまで（ステップＳ１８，Ｓ１９）、ｙ座標値についてはカメラ映像の高さになるまで（ステップＳ２０，Ｓ２１）、ステップＳ１１からステップＳ１５までの動作を繰り返す。
この差分値決定動作によって、記憶手段４０には、基準映像の画素位置（ｘ，ｙ）ごとに、複数の仮定奥行値ｄ（“０”〜最大視差量）に対応した差分値（選択差分値）ｅが記憶される。
【００９６】
（差分値平滑化動作）
次に、図９を参照（構成については適宜図１，２参照）して、図７のステップＳ３の動作である差分値平滑化動作について詳細に説明する。
まず、奥行推定装置１は、変数であるカメラ映像のｘ座標値、ｙ座標値をそれぞれ初期化（ｘ＝０、ｙ＝０）し直す（ステップＳ３０）。
そして、奥行推定装置１は、平滑化手段５０によって、記憶手段４０に記憶されている基準映像ＦＣの（ｘ，ｙ）座標と、この座標と隣接する座標とにおいて、仮定奥行値の中で選択差分値が最小の仮定奥行値を奥行値候補ｄとして探索する（ステップＳ３１）。
【００９７】
すなわち、平滑化手段５０は、基準映像ＦＣの（ｘ，ｙ）座標の選択差分値が最小となる仮定奥行値ｄ（ｘ，ｙ）、（ｘ＋１，ｙ）座標の選択差分値が最小となる仮定奥行値ｄ（ｘ＋１，ｙ）、（ｘ，ｙ＋１）座標の選択差分値が最小となる仮定奥行値ｄ（ｘ，ｙ＋１）を探索し、最初の奥行値候補ｄとする。
【００９８】
そして、奥行推定装置１は、平滑化手段５０によって、記憶手段４０に記憶されている基準映像ＦＣの（ｘ，ｙ）座標の奥行値候補ｄに対応する選択差分値ｅ（ｄ，ｘ，ｙ）に、前記（５）式により、隣接画素間の奥行値候補の差を重み付け加算することで、平滑化した選択差分値ｅｖ（ｄ，ｘ，ｙ）を演算する（ステップＳ３２）。
そして、奥行推定装置１は、ステップＳ３２で演算した平滑化した選択差分値ｅｖが最小になる奥行値候補を、基準映像の画素位置（ｘ，ｙ）に対応付けて記憶手段４０に書き込む（ステップＳ３３）。
【００９９】
その後、奥行推定装置１は、変数であるカメラ映像のｘ座標値、ｙ座標値を順次加算（インクリメント）し、ｘ座標値についてはカメラ映像の幅になるまで（ステップＳ３４，Ｓ３５）、ｙ座標値についてはカメラ映像の高さになるまで（ステップＳ３６，Ｓ３７）、ステップＳ３１からステップＳ３３までの動作を繰り返す。
この差分値平滑化動作によって、記憶手段４０には、基準映像の画素位置（ｘ，ｙ）ごとに、平滑化した選択差分値ｅｖが最小となる奥行値候補が記憶される。
【０１００】
（奥行値決定動作）
次に、図１０を参照（構成については適宜図１，２参照）して、図７のステップＳ４の動作である奥行値決定動作について詳細に説明する。
【０１０１】
まず、奥行推定装置１は、変数であるカメラ映像のｘ座標値、ｙ座標値をそれぞれ初期化（ｘ＝０、ｙ＝０）する（ステップＳ５０）。
そして、奥行推定装置１は、奥行値決定手段６０によって、記憶手段４０に記憶されている奥行値候補の選択差分値ｅについて、画素位置（ｘ，ｙ）ごとに、平滑化された選択差分値ｅｖが最小となる仮定奥行値ｄを探索する（ステップＳ５１）。このステップＳ５１で探索された仮定奥行値ｄが、画素位置（ｘ，ｙ）における被写体の新たな奥行値候補として決定（出力）される（ステップＳ５２）。
【０１０２】
その後、奥行推定装置１は、変数であるカメラ映像のｘ座標値、ｙ座標値を順次加算（インクリメント）し、ｘ座標値についてはカメラ映像の幅になるまで（ステップＳ５３，Ｓ５４）、ｙ座標値についてはカメラ映像の高さになるまで（ステップＳ５５，Ｓ５６）、ステップＳ５１，Ｓ５２の動作を繰り返す。これによって、すべての画素位置（ｘ，ｙ）における被写体の奥行値候補が決定されることになる。
なお、この奥行値決定動作は、新たに決定された奥行値候補を用いて任意回数繰り返してもよい。その結果、より平滑化された奥行値候補を得ることができる。
【０１０３】
以上、本発明の実施形態に係る奥行推定装置１の構成および動作について説明したが、本発明は、この実施形態に限定されるものではない。
以下、本発明の種々の変形例について説明する。
【０１０４】
〔奥行推定装置の実施形態の変形例〕
（変形例１：平滑化手段を省略した変形例）
まず、第１の変形例として、図２に示した奥行推定装置１は、平滑化手段５０を省略して構成してもよい。
ここで、図１１を参照して、平滑化手段を省略した奥行推定装置の構成について説明する。図１１に示した奥行推定装置１Ｂは、奥行推定装置１（図２参照）から平滑化手段５０を省き、差分値決定手段３０および奥行値決定手段６０を、それぞれ差分値決定手段３０Ｂおよび奥行値決定手段６０Ｂとして構成している。奥行推定装置１と同一の構成については、同一の符号を付して説明を省略する。
【０１０５】
差分値決定手段３０Ｂは、その内部構成および内部動作については、図２で説明した差分値決定手段３０と同様であるが、基準映像のすべての画素位置において、仮定奥行値ごとの選択差分値を記憶手段４０に書き込んだ後に、書き込み完了を通知する先が、奥行値決定手段６０Ｂである点が異なっている。
【０１０６】
奥行値決定手段６０Ｂは、図２で説明した奥行値決定手段６０と基本的な機能は同じであるが、差分値決定手段３０Ｂから書き込み完了を通知されることで動作する点のみが異なっている。
また、奥行推定装置１Ｂの動作は、図７で説明した奥行推定装置１の動作のうち、ステップＳ３を除いた動作となる。
【０１０７】
このように奥行推定装置１Ｂを構成し、動作させることで、奥行推定装置１Ｂは、図２で説明した奥行推定装置１に比べ、隣接画素間において、選択差分値が最小となる奥行値がノイズ等で互いに異なる場合、奥行推定を誤ることがある。しかし、奥行推定装置１Ｂは、ノイズ劣化の少ない映像において、奥行推定装置１と同様の効果を高速に得ることができる。
【０１０８】
すなわち、奥行推定装置１Ｂは、一様な被写体で対応点が複数存在する場合であっても、複数の仮定した奥行値に対応する画素値の差分絶対値が最小となる画素の奥行値を推定する従来の手法に比べ、閾値によって差分絶対値の平均値を選択するか、最小の差分絶対値を選択するかを切り替えることで、ある隣接映像で偽マッチングが発生している場合、その奥行値を推定対象から除くことができ、また、オクルージョンが発生している場合、正しい差分値から奥行値を推定することができ、精度よく奥行値を推定することができる。
【０１０９】
（変形例２：画素をサブ画素化した変形例）
また、本実施形態では、仮定する奥行値の単位（刻み幅）と画素間の視差の単位（画素間隔）とを同一としたが、奥行値の単位を、画素間隔よりも小さい仮想のサブ画素間隔（例えば、半画素単位、１／４画素単位）としてもよい。この場合、例えば、半画素の画素値は、当該半画素を含む画素値と、隣接する画素の画素値とから補間して求めることができる。
【０１１０】
例えば、図１２に示したように画素が配列されている場合、（ｘ，ｙ）座標の画素Ｐ１の画素値をｐｖ１、（ｘ，ｙ−１）座標の画素Ｐ２の画素値をｐｖ２、（ｘ−１，ｙ）座標の画素Ｐ３の画素値をｐｖ３、（ｘ−１，ｙ−１）座標の画素Ｐ４の画素値をｐｖ４としたとき、仮想の（ｘ−１／２，ｙ−１／２）座標のサブ画素ＰＳの画素値ｐｓｖは、以下の（６）式で求めることができる。
ｐｓｖ＝（ｐｖ１＋ｐｖ２＋ｐｖ３＋ｐｖ４）／４      …（６）式
なお、ここでは、サブ画素ＰＳに隣接する画素Ｐ１，Ｐ２，Ｐ３，Ｐ４を用いて補間により画素値を求めたが、サブ画素ＰＳがＰ１とＰ３のみに隣接する場合は、画素Ｐ１とＰ３のみを用いて補間を行ってもよい。
【０１１１】
この場合、奥行推定装置１（図２）の対応画素差分演算手段２０が、サブ画素単位で隣接映像画素差分値ｅＣＬ，ｅＣＲを算出することとする。なお、差分値決定手段３０、平滑化手段５０、記憶手段４０、奥行値決定手段６０においては、それぞれ画素単位で行う処理を、サブ画素単位で行えばよい。
このように、奥行値の単位を仮想のサブ画素間隔で行うことで、基準カメラＣＣと、隣接カメラＣＬ，ＣＲとのカメラ間隔が狭い場合であっても奥行値の分解能を高めることができる。
【０１１２】
（変形例３：カメラ台数の変形例）
また、本実施形態では、３台のカメラを用いて被写体の奥行を推定するものとして説明したが、４台以上のカメラを用いて奥行を推定することとしてもよい。
この場合、奥行値を求めたいカメラ映像を基準映像とし、対応画素差分演算手段２０が、基準映像と、当該カメラの両隣に複数配置したカメラで撮影したカメラ映像との対応画素の差分絶対値をそれぞれ演算する。そして、差分値決定手段３０の平均差分値演算手段３０ａが、複数の差分絶対値の平均値（平均差分値）を計算し、最小差分値選択手段３０ｂが、複数の差分絶対値の最小値（最小差分値）を選択する。そして、差分値選択手段３０ｃが、平均差分値または最小差分値のいずれかを選択する。なお、この差分値選択手段３０ｃにおける選択は、複数の差分絶対値の最大値（最大差分値）と最小値（最小差分値）との差が、予め定めた閾値よりも小さい場合は、平均差分値を選択し、それ以外の場合は、最小差分値を選択すればよい。
このように、カメラ台数を増やすことで、奥行値の推定精度を高めることができる。
【０１１３】
（変形例４：カメラ配置間隔の変形例）
また、本実施形態では、被写体を撮影するカメラの設置間隔を等間隔としたが、異なるカメラ間隔としてもよい。
この場合、対応画素差分演算手段２０は、それぞれの隣接映像ＦＬ，ＦＲについて、基準カメラＣＣからのカメラ間隔ごとに、基準映像ＦＣの画素から、視差に対応する画素の位置をそれぞれ求め、当該画素の画素値と、基準映像ＦＣの画素の画素値との差分絶対値を演算すればよい。例えば、本実施形態では、奥行値の単位と画素間の視差の単位とを同一とし、奥行値が“１”増加することで、１画素ずつ視差が増加することとしたが、この場合、図１に示したカメラＣＣ，ＣＲ間の距離が、カメラＣＣ，ＣＬ間の距離の２倍であったとすると、対応画素差分演算手段２０は、前記（１）式の代わりに、以下の（７）式により差分絶対値を算出すればよい。
ｅＣＬ（ｄ，ｘ，ｙ）＝｜ＦＬ（ｘ＋ｄ，ｙ）−ＦＣ（ｘ，ｙ）｜
ｅＣＲ（ｄ，ｘ，ｙ）＝｜ＦＲ（ｘ−２ｄ，ｙ）−ＦＣ（ｘ，ｙ）｜      …（７）式
これによって、奥行推定システム（図１）のカメラ配置の自由度を高めることができる。
【０１１４】
（変形例５：対応画素差分演算手段の変形例）
また、本実施形態では、対応画素差分演算手段２０が、基準映像ＦＣの各画素の画素値と、当該画素の仮定奥行値の視差に対応する隣接映像ＦＬ，ＦＲの各画素の画素値との差分絶対値を演算することとしたが、この差分絶対値は、対応する画素のみでなく、対応画素を中心とするブロック内の画素値の差分絶対値の重み付け平均値を用いることとしてもよい。例えば、対応画素差分演算手段２０は、前記（１）式の隣接映像画素差分値ｅＣＬ（ｄ，ｘ，ｙ）を、以下の（８）式により算出する。
ｅＣＬ（ｄ，ｘ，ｙ）＝｜ＦＬ（ｘ＋ｄ，ｙ）−ＦＣ（ｘ，ｙ）｜×１／２
＋｜ＦＬ（ｘ＋ｄ＋１，ｙ）−ＦＣ（ｘ＋１，ｙ）｜×１／８
＋｜ＦＬ（ｘ＋ｄ−１，ｙ）−ＦＣ（ｘ−１，ｙ）｜×１／８
＋｜ＦＬ（ｘ＋ｄ，ｙ＋１）−ＦＣ（ｘ，ｙ＋１）｜×１／８
＋｜ＦＬ（ｘ＋ｄ，ｙ−１）−ＦＣ（ｘ，ｙ−１）｜×１／８
…（８）式
これによって、ノイズ等によって発生する差分絶対値の誤差を軽減することができる。
【０１１５】
（変形例６：平均差分値演算手段の変形例）
また、本実施形態では、平均差分値演算手段３０ａが、対応画素差分演算手段２０で演算された隣接映像画素差分値ｅＣＬ，ｅＣＲの平均値を相加平均により求めたが、相乗平均によって求めても、本実施形態と同様の作用効果を奏することができる。
すなわち、平均差分値演算手段３０ａは、前記（２）式の代わりに、以下の（９）式により平均差分値ｅａを求めることとしてもよい。
ｅａ（ｄ，ｘ，ｙ）＝√｛ｅＣＬ（ｄ，ｘ，ｙ）×ｅＣＲ（ｄ，ｘ，ｙ）｝
…（９）式
【０１１６】
なお、平均差分値演算手段３０ａは、変形例３に示したように、４台以上のカメラでカメラ映像を入力する場合、対応画素差分演算手段２０によって、隣接映像画素差分値（差分絶対値）は３個以上演算される。この場合、平均差分値演算手段３０ａは、隣接映像画素差分値の数をｎ個としたとき、隣接映像画素差分値の積のｎ乗根を平均差分値ｅａとすればよい。
【０１１７】
（変形例７：差分値選択手段の変形例）
また、本実施形態では、差分値選択手段３０ｃが、対応画素差分演算手段２０で演算された隣接映像画素差分値ｅＣＬ，ｅＣＲの差によって、平均差分値ｅａか最小差分値ｅｍかのいずれかを選択することとしたが、隣接映像画素差分値ｅＣＬ，ｅＣＲの比によって選択することとしても、本実施形態と同様の作用効果を奏することができる。
【０１１８】
すなわち、差分値選択手段３０ｃは、前記（４）式の判定に代えて、以下の（１０）式に示すように、隣接映像画素差分値ｅＣＬ，ｅＣＲの比が予め定めた比の範囲に存在する場合に平均差分値ｅａを選択し、それ以外の場合は、図５で説明したオクルージョンが発生している可能性が高いと判定し、最小差分値ｅｍを選択することとしてもよい。
【０１１９】
１／ｔｈＲ＜ｅＣＬ（ｄ，ｘ，ｙ）／ｅＣＲ（ｄ，ｘ，ｙ）＜ｔｈＲ      …（１０）式
この閾値ｔｈＲは、“１”より大きい値であって、例えば、“５”程度とする。この閾値ｔｈＲが大きすぎると、基準映像ＦＣの画素と、隣接映像ＦＬまたは隣接映像ＦＲの画素間で偽マッチングが生じていない場合でも、偽マッチングが生じていると判定し、閾値ｔｈＲが小さすぎると、基準映像ＦＣの画素と、隣接映像ＦＬまたは隣接映像ＦＲの画素間でオクルージョンが生じていない場合でも、オクルージョンが生じていると判定してしまうことになるからである。
【０１２０】
なお、差分値選択手段３０ｃは、変形例３に示したように、４台以上のカメラでカメラ映像を入力する場合、対応画素差分演算手段２０によって、隣接映像画素差分値（差分絶対値）は３個以上演算される。この場合、差分値選択手段３０ｃは、隣接映像画素差分値の最大値（最大差分値）と最小値（最小差分値）との比を用いることとすればよい。
【０１２１】
（変形例８：平滑化手段の変形例）
また、本実施形態では、平滑化手段５０が、前記（５）式に示すように、基準映像ＦＣの（ｘ，ｙ）座標の仮定奥行値ｄに対応する選択差分値ｅ（ｄ，ｘ，ｙ）に、隣接する２画素間の奥行値の差分絶対値を重み付け加算したが、以下の（１１）式に示すように、隣接する４画素間の奥行値の差分絶対値を重み付け加算してもよい。
ｅｖ（ｄ，ｘ，ｙ）＝ｅ（ｄ，ｘ，ｙ）
＋ｗ｛｜ｄ（ｘ＋１，ｙ）−ｄ（ｘ，ｙ）｜＋｜ｄ（ｘ，ｙ＋１）−ｄ（ｘ，ｙ）｜
＋｜ｄ（ｘ−１，ｙ）−ｄ（ｘ，ｙ）｜＋｜ｄ（ｘ，ｙ−１）−ｄ（ｘ，ｙ）｜｝
…（１１）式
【０１２２】
以上、本発明の実施形態である奥行推定装置１並びに奥行推定装置１Ｂ等の変形例について説明したが、奥行推定装置１並びに奥行推定装置１Ｂ等の変形例は、一般的なコンピュータを、前記した各手段として機能させる奥行推定プログラムによって動作させることができる。また、この奥行推定プログラムは、通信回線を介して配布したり、ＣＤ−ＲＯＭ等の記録媒体に記録して配布したりすることも可能である。
【０１２３】
以上説明したように、奥行推定装置１，１Ｂは、一様な被写体で対応点が複数存在する場合であっても、複数の仮定した奥行値に対応する画素値の差分絶対値が最小となる画素の奥行値を推定する従来の手法に比べ、閾値によって差分絶対値の平均値を選択するか、最小の差分絶対値を選択するかを切り替えることで、ある隣接映像で偽マッチングが発生している場合、その奥行値を推定対象から除くことができ、また、オクルージョンが発生している場合、正しい差分値から奥行値を推定することができ、精度よく奥行値を推定することができる。
【符号の説明】
【０１２４】
１      奥行推定装置
１０    映像入力手段
２０    対応画素差分演算手段
３０    差分値決定手段
３０ａ  平均差分値演算手段
３０ｂ  最小差分値選択手段
３０ｃ  差分値選択手段
４０    記憶手段
５０    平滑化手段
６０    奥行値決定手段
【図１】
2011141710.tif 000003
【図２】
2011141710.tif 000004
【図３】
2011141710.tif 000005
【図４】
2011141710.tif 000006
【図５】
2011141710.tif 000007
【図６】
2011141710.tif 000008
【図７】
2011141710.tif 000009
【図８】
2011141710.tif 000010
【図９】
2011141710.tif 000011
【図１０】
2011141710.tif 000012
【図１１】
2011141710.tif 000013
【図１２】
2011141710.tif 000014
【図１３】
2011141710.tif 000015