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