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