TOP > 国内特許検索 > 奥行推定装置、奥行推定方法および奥行推定プログラム > 明細書

明細書 :奥行推定装置、奥行推定方法および奥行推定プログラム

発行国 日本国特許庁(JP)
公報種別 特許公報(B2)
特許番号 特許第5252642号 (P5252642)
公開番号 特開2010-251878 (P2010-251878A)
登録日 平成25年4月26日(2013.4.26)
発行日 平成25年7月31日(2013.7.31)
公開日 平成22年11月4日(2010.11.4)
発明の名称または考案の名称 奥行推定装置、奥行推定方法および奥行推定プログラム
国際特許分類 H04N   5/225       (2006.01)
G06T   1/00        (2006.01)
G01C   3/06        (2006.01)
H04N  13/02        (2006.01)
FI H04N 5/225 C
G06T 1/00 315
G01C 3/06 110V
G01C 3/06 140
H04N 13/02
請求項の数または発明の数 7
全頁数 22
出願番号 特願2009-096689 (P2009-096689)
出願日 平成21年4月13日(2009.4.13)
審査請求日 平成24年3月2日(2012.3.2)
特許権者または実用新案権者 【識別番号】301022471
【氏名又は名称】独立行政法人情報通信研究機構
発明者または考案者 【氏名】妹尾 孝憲
【氏名】山本 健詞
【氏名】大井 隆太朗
【氏名】三科 智之
【氏名】奥井 誠人
個別代理人の代理人 【識別番号】100064414、【弁理士】、【氏名又は名称】磯野 道造
【識別番号】100111545、【弁理士】、【氏名又は名称】多田 悦夫
審査官 【審査官】鈴木 明
参考文献・文献 特開2007-036800(JP,A)
特開2000-149017(JP,A)
特開2000-121319(JP,A)
特開2000-180121(JP,A)
特開平10-289315(JP,A)
特開2001-238230(JP,A)
特開2005-346393(JP,A)
特開2009-010557(JP,A)
調査した分野 H04N 5/222-5/257
H04N 13/02
G06T 1/00
G01C 3/06
特許請求の範囲 【請求項1】
予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定装置であって、
前記複数配列した前記カメラのいずれかにおいて、予め定めた基準カメラで前記被写体を撮影した基準映像と、前記基準カメラに隣接する複数の隣接カメラで前記被写体を撮影した複数の隣接映像とを入力する映像入力手段と、
複数設定した仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する画素である前記複数の隣接映像の各画素の画素値との差分絶対値である隣接映像差分値を演算する対応画素差分演算手段と、
この対応画素差分演算手段で演算した隣接映像差分値を、同一の仮定奥行値について前記基準映像の画素位置ごとに加算することで差分加算値を演算する隣接映像差分加算手段と、
この隣接映像差分加算手段で演算した差分加算値を、前記仮定奥行値と前記基準映像の画素位置とに対応付けて記憶する記憶手段と、
前記画素位置ごとに、前記差分加算値が最小となる前記仮定奥行値を前記記憶手段において探索し、当該画素位置の奥行値とする奥行値決定手段と、
を備えることを特徴とする奥行推定装置。
【請求項2】
前記映像入力手段は、前記隣接カメラとは異なり、前記複数配列した前記カメラのいずれかにおいて、予め定めた位置に配置した補助カメラで前記被写体を撮影した補助映像を入力し、
前記対応画素差分演算手段は、さらに、前記複数の仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する前記補助映像の各画素の画素値との差分絶対値である補助映像差分値を演算し、
前記補助映像差分値が予め定めた閾値よりも小さい場合に、当該画素に対応する前記差分加算値を減少させる補正係数を設定する補正係数設定手段と、
この補正係数設定手段で設定した補正係数と、当該画素に対応する前記差分加算値とを乗算することで前記差分加算値を補正する差分加算値補正手段と、
をさらに備えることを特徴とする請求項1に記載の奥行推定装置。
【請求項3】
前記画素位置ごとに、前記差分加算値に、前記差分加算値が最小となる前記仮定奥行値と、当該画素位置の隣接画素位置における前記差分加算値が最小となる前記仮定奥行値との差分を重み付け加算することで、当該画素位置における差分加算値を平滑化する平滑化手段をさらに備え、
前記奥行値決定手段は、前記平滑化手段で平滑化した差分加算値が最小となる前記仮定奥行値を探索し、当該画素位置の奥行値とすることを特徴とする請求項1または請求項2に記載の奥行推定装置。
【請求項4】
前記仮定奥行値は、前記カメラ映像の画素間隔よりも小さい仮想のサブ画素間隔を単位とする値であって、
前記対応画素差分演算手段は、前記仮定奥行値に対応する前記サブ画素を含む画素の画素値と、当該画素に隣接する画素の画素値とから補間して生成した画素値を用いて差分絶対値を演算することを特徴とする請求項1から請求項3のいずれか一項に記載の奥行推定装置。
【請求項5】
前記画素値は、輝度値および色差値、または、カラー値の複数の要素で構成される値であって、
前記対応画素差分演算手段は、前記差分絶対値を、前記要素ごとの値の差分絶対値和として演算することを特徴とする請求項1から請求項4のいずれか一項に記載の奥行推定装置。
【請求項6】
予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定方法であって、
前記複数配列した前記カメラのいずれかにおいて、予め定めた基準カメラで前記被写体を撮影した基準映像と、前記基準カメラに隣接する複数の隣接カメラで前記被写体を撮影した複数の隣接映像とを映像入力手段により入力する映像入力ステップと、
複数設定した仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する画素である前記複数の隣接映像の各画素の画素値との差分絶対値である隣接映像差分値を対応画素差分演算手段により演算する対応画素差分演算ステップと、
この対応画素差分演算ステップで演算した隣接映像差分値を、隣接映像差分加算手段により、同一の仮定奥行値について前記基準映像の画素位置ごとに加算することで差分加算値を演算する隣接映像差分加算ステップと、
この隣接映像差分加算ステップで演算した差分加算値を、前記仮定奥行値と前記基準映像の画素位置とに対応付けて記憶手段に記憶する記憶ステップと、
奥行値決定手段により、前記画素位置ごとに、前記差分加算値が最小となる前記仮定奥行値を前記記憶手段において探索し、当該画素位置の奥行値とする奥行値決定ステップと、
を含むことを特徴とする奥行推定方法。
【請求項7】
予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定するために、コンピュータを、
前記複数配列した前記カメラのいずれかにおいて、予め定めた基準カメラで前記被写体を撮影した基準映像と、前記基準カメラに隣接する複数の隣接カメラで前記被写体を撮影した複数の隣接映像とを入力する映像入力手段、
複数設定した仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する画素である前記複数の隣接映像の各画素の画素値との差分絶対値である隣接映像差分値を演算する対応画素差分演算手段、
この対応画素差分演算手段で演算した隣接映像差分値を、同一の仮定奥行値について前記基準映像の画素位置ごとに加算することで差分加算値を演算し、前記仮定奥行値と前記基準映像の画素位置とに対応付けて記憶手段に書き込む隣接映像差分加算手段、
前記画素位置ごとに、前記差分加算値が最小となる前記仮定奥行値を前記記憶手段において探索し、当該画素位置の奥行値とする奥行値決定手段、
として機能させることを特徴とする奥行推定プログラム。
発明の詳細な説明 【技術分野】
【0001】
本発明は、複数のカメラで被写体を撮影した映像から、多視点映像用の被写体の奥行値を推定する奥行推定装置、奥行推定方法および奥行推定プログラムに関する。
【背景技術】
【0002】
近年、複数のカメラで同一の被写体を撮影した複数の映像(多視点映像)を用いて、立体映像や自由視点映像を生成、符号化する研究が進められている。これらの立体映像や自由視点映像を生成、符号化する技術では、基本的に、複数のカメラで被写体を撮影したカメラ映像の視差量を利用することで、被写体までの奥行値を求めている(特許文献1等参照)。
この特許文献1には、図13に示すように、複数のカメラ(C,C,C)で撮影された視差方向に異なるカメラ映像を、時間方向に符号化する技術が開示されている。
この符号化の際に、特許文献1に記載されている発明は、複数のカメラ(C,C,C)で撮影されたカメラ映像(F,F,F)間で、映像内の被写体の奥行値を仮定し、基準となるカメラ(例えば、C)で撮影されたカメラ映像(F)内のブロックに含まれる画素値と、カメラの位置関係と奥行値とから定まる他のカメラ(例えば、C,C)で撮影されたカメラ映像(F,F)内の対応ブロックに含まれる画素値との差分絶対値が最小となる奥行値を求めている。
このように、従来は、複数のカメラ映像において、複数の仮定した奥行値に対応する画素値の差分絶対値が最小となる画素が、それぞれのカメラ映像の対応する画素であり、また、そのときの仮定した奥行値が当該画素の奥行値であると推定していた。
【先行技術文献】
【0003】

【特許文献1】特開2007-36800号公報(段落〔0118〕~〔0112〕)
【発明の概要】
【発明が解決しようとする課題】
【0004】
前記したように、複数のカメラ映像において、複数の仮定した奥行値に対応する画素値の差分絶対値が最小となる画素を探索し、当該画素の奥行値を推定する手法では、以下に示す問題がある。
例えば、画素値の変化が少ない一様な被写体においては、複数のカメラ映像間に、画素値が近似する複数の誤った対応点が存在する場合がある。この場合、従来の手法では、単に、画素値の差分絶対値が最小となる画素を探索するため、誤った対応点を探索(偽マッチング)してしまう場合がある。すなわち、従来の手法では、誤った対応点を探索した結果、誤った奥行値が推定されてしまうという問題がある。
【0005】
本発明は、このような問題を解決するためになされたものであり、一様な被写体で複数のカメラ映像間における対応点が複数存在する場合であっても、奥行値の誤推定を軽減することが可能な奥行推定装置、奥行推定方法および奥行推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明は、前記目的を達成するために創案されたものであり、まず、請求項1に記載の奥行推定装置は、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定装置であって、映像入力手段と、対応画素差分演算手段と、隣接映像差分加算手段と、記憶手段と、奥行値決定手段と、を備える構成とした。
【0007】
かかる構成において、奥行推定装置は、映像入力手段によって、複数配列したカメラのいずれかにおいて、予め定めた基準カメラで被写体を撮影した基準映像と、基準カメラに隣接する複数の隣接カメラで被写体を撮影した複数の隣接映像とを入力する。この隣接映像は、基準映像からの視差を計測するための映像である。
【0008】
そして、奥行推定装置は、対応画素差分演算手段によって、複数設定した仮定奥行値ごとに、基準映像の各画素の画素値と、当該画素の仮定奥行値の視差に対応する画素である複数の隣接映像の各画素の画素値との差分絶対値である隣接映像差分値を演算する。この仮定奥行値は、基準映像の画素に対応する被写体の奥行値を仮定した値であって、例えば、最小視差(“0”)から最大視差までの値とする。この対応画素差分演算手段によって、基準映像の各画素の画素値と、隣接映像の各画素の画素値との仮定奥行値に対応した対応点同士の画素値の差分絶対値が算出される。なお、この差分絶対値(隣接映像差分値)は、その値が小さいほど、仮定奥行値が実際の被写体において同一の対応点を指し示している可能性が高いといえる。
【0009】
さらに、奥行推定装置は、隣接映像差分加算手段によって、対応画素差分演算手段で演算した隣接映像差分値を、同一の仮定奥行値について基準映像の画素位置ごとに加算することで差分加算値を演算する。そして、奥行推定装置は、記憶手段に隣接映像差分加算手段で演算した差分加算値を、仮定奥行値と基準映像の画素位置とに対応付けて記憶する。
【0010】
なお、正しい奥行値に対する差分加算値であれば、その値は小さくなり、ノイズ等によって1つの隣接映像差分値が誤った値をとった場合であっても、複数の隣接映像差分値を加算することで、全体として差分加算値が小さくなる。これによって、差分加算値は、仮定奥行値の中で正しい奥行値を判定するための指標となる。
そして、奥行推定装置は、奥行値決定手段によって、画素位置ごとに、差分加算値が最小となる仮定奥行値を記憶手段において探索し、当該画素位置の奥行値と決定する。
【0011】
また、請求項2に記載の奥行推定装置は、請求項1に記載の奥行推定装置において、前記映像入力手段が、前記隣接カメラとは異なり、複数配列したカメラのいずれかにおいて、予め定めた位置に配置した補助カメラで前記被写体を撮影した補助映像を入力するものであり、前記対応画素差分演算手段が、さらに、前記複数の仮定奥行値ごとに、前記基準映像の各画素の画素値と、当該画素の前記仮定奥行値の視差に対応する前記補助映像の各画素の画素値との差分絶対値である補助映像差分値を演算するものであって、補正係数設定手段と、差分加算値補正手段と、をさらに備える構成とした。
【0012】
かかる構成において、奥行推定装置は、補正係数設定手段によって、補助映像差分値が予め定めた閾値よりも小さい場合に、当該画素に対応する差分加算値を減少させる補正係数を設定する。これは、補助映像が隣接カメラとは異なる他の視点からの映像であり、補助映像差分値が小さければ、同一の対応点の画素であり、その差分加算値が正しい奥行値に対するものである可能性が高いためである。なお、差分加算値を減少させる補正係数は、例えば、“1”より小さい定数であってもよいし、補助映像差分値と閾値との比に比例する値であってもよい。あるいは、その比の線形関数で与えられる値であってもよい。
【0013】
そして、奥行推定装置は、差分加算値補正手段によって、補正係数設定手段で設定した補正係数と、当該画素に対応する差分加算値とを乗算することで差分加算値を補正する。これによって、基準映像と、隣接映像および補助映像とで同一の対応点に対応した画素の差分加算値を小さくし、奥行値決定手段において奥行値が決定される度合いを高めることができる。
【0014】
さらに、請求項3に記載の奥行推定装置は、請求項1または請求項2に記載の奥行推定装置において、平滑化手段をさらに備える構成とした。
【0015】
かかる構成において、奥行推定装置は、平滑化手段によって、基準映像の画素位置ごとに、差分加算値に、差分加算値が最小となる仮定奥行値と、当該画素位置の隣接画素位置における差分加算値が最小となる仮定奥行値との差分を重み付け加算することで、当該画素位置における差分加算値を平滑化する。これによって、奥行値決定手段によって、平滑化された差分加算値が最小となる仮定奥行値が探索されることになり、当該画素位置の奥行値とするため、奥行値そのものが隣接画素間で平滑化されることになる。
【0016】
また、請求項4に記載の奥行推定装置は、請求項1から請求項3のいずれか一項に記載の奥行推定装置において、仮定奥行値が、前記カメラ映像の画素間隔よりも小さい仮想のサブ画素間隔を単位とする値であって、前記対応画素差分演算手段が、前記仮定奥行値に対応する前記サブ画素を含む画素の画素値と、当該画素に隣接する画素の画素値とから補間して生成した画素値を用いて差分絶対値を演算する構成とした。
かかる構成において、奥行推定装置は、対応画素差分演算手段によって、サブ画素単位で差分値が演算され、サブ画素単位で奥行値が決定されることになる。
【0017】
さらに、請求項5に記載の奥行推定装置は、請求項1から請求項4のいずれか一項に記載の奥行推定装置において、前記画素値が、輝度値および色差値、または、カラー値の複数の要素で構成される値であって、前記対応画素差分演算手段が、前記差分絶対値を、前記要素ごとの値の差分絶対値和として演算する構成とした。
かかる構成において、奥行推定装置は、画素値として、輝度値および色差値、または、カラー値の複数の要素で構成される値であっても、差分絶対値を単一の値で処理することができる。
【0018】
また、請求項6に記載の奥行推定方法は、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定する奥行推定方法であって、映像入力ステップと、対応画素差分演算ステップと、隣接映像差分加算ステップと、記憶ステップと、奥行値決定ステップと、を含む手順とした。
【0019】
かかる手順において、奥行推定方法は、映像入力ステップで、複数配列したカメラのいずれかにおいて、予め定めた基準カメラで被写体を撮影した基準映像と、基準カメラに隣接する複数の隣接カメラで被写体を撮影した複数の隣接映像とを映像入力手段により入力する。
そして、奥行推定方法は、対応画素差分演算ステップで、複数設定した仮定奥行値ごとに、基準映像の各画素の画素値と、当該画素の仮定奥行値の視差に対応する画素である複数の隣接映像の各画素の画素値との差分絶対値である隣接映像差分値を対応画素差分演算手段により演算する。
【0020】
さらに、奥行推定方法は、隣接映像差分加算ステップで、対応画素差分演算ステップで演算した隣接映像差分値を、隣接映像差分加算手段により、同一の仮定奥行値について基準映像の画素位置ごとに加算することで差分加算値を演算する。
そして、奥行推定方法は、記憶ステップで、隣接映像差分加算ステップで演算した差分加算値を、仮定奥行値と基準映像の画素位置とに対応付けて記憶手段に記憶する。
その後、奥行推定方法は、奥行値決定ステップで、奥行値決定手段により、画素位置ごとに、差分加算値が最小となる仮定奥行値を記憶手段において探索し、当該画素位置の奥行値とする。
【0021】
さらに、請求項7に記載の奥行推定プログラムは、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、前記被写体の奥行きを示す奥行値を推定するために、コンピュータを、映像入力手段、対応画素差分演算手段、隣接映像差分加算手段、奥行値決定手段、として機能させる構成とした。
【0022】
かかる構成において、奥行推定プログラムは、映像入力手段によって、複数配列したカメラのいずれかにおいて、予め定めた基準カメラで被写体を撮影した基準映像と、基準カメラに隣接する複数の隣接カメラで被写体を撮影した複数の隣接映像とを入力する。
そして、奥行推定プログラムは、対応画素差分演算手段によって、複数設定した仮定奥行値ごとに、基準映像の各画素の画素値と、当該画素の仮定奥行値の視差に対応する画素である複数の隣接映像の各画素の画素値との差分絶対値である隣接映像差分値を演算する。
【0023】
さらに、奥行推定プログラムは、隣接映像差分加算手段によって、対応画素差分演算手段で演算した隣接映像差分値を、同一の仮定奥行値について基準映像の画素位置ごとに加算することで差分加算値を演算し、仮定奥行値と基準映像の画素位置とに対応付けて記憶手段に書き込む。
そして、奥行推定プログラムは、奥行値決定手段によって、画素位置ごとに、差分加算値が最小となる仮定奥行値を記憶手段において探索し、当該画素位置の奥行値と決定する。
【発明の効果】
【0024】
本発明は、以下に示す優れた効果を奏するものである。
請求項1,6,7に記載の発明によれば、一様な被写体で対応点を誤る偽マッチングが生じている場合、少なくともいずれかの隣接映像による差分絶対値が大きくなるため、それらを加算した差分加算値は大きくなる。これによって、単に対応点の差分絶対値が最小となる奥行値を推定するよりも、奥行値の誤推定を軽減することができる。
【0025】
請求項2に記載の発明によれば、被写体の重なり等によって、隣接カメラが撮影した隣接映像ではオクルージョンが発生している場合であっても、隣接カメラとは異なる位置に配置した補助カメラが撮影した補助映像によって、オクルージョンが発生していなければ、差分加算値を小さくすることができるため、その奥行値が決定される度合いを高めることができる。これによって、オクルージョンが発生する環境においても、精度よく奥行値を推定することができる。
【0026】
請求項3に記載の発明によれば、画素の奥行値を隣接画素の奥行値によって平滑化することができるため、ノイズ等によって、奥行値が誤推定された場合であっても、隣接画素の奥行値によって平滑化されるため、滑らかな奥行値を得ることができる。
【0027】
請求項4に記載の発明によれば、仮定する奥行値の刻み幅を、映像の画素間隔よりも小さくすることができるため、カメラ間の間隔を狭くとった場合であっても、奥行値の分解能を高めることができる。これによって、カメラ間隔を狭くすることができ、カメラを含めたシステム構成の小型化を実現することができるとともに、オクルージョンの発生を低減することができ、奥行値の誤推定を軽減することができる。
【0028】
請求項5に記載の発明によれば、輝度値のみ等の単一の差分のみではなく、複数の要素ごとの値の差分絶対値和を差分絶対値とすることで、画素の対応精度を高めることができ、偽マッチングによる誤った奥行値の推定を防止することができる。
【図面の簡単な説明】
【0029】
【図1】本発明の第1、第2実施形態に係る奥行推定システムの構成を示すブロック図である。
【図2】本発明の第1実施形態に係る奥行推定装置の構成を示すブロック図である。
【図3】記憶手段に記憶される記憶内容を説明するための説明図である。
【図4】本発明の第1実施形態に係る奥行推定装置の全体動作を示すフローチャートである。
【図5】本発明の第1実施形態に係る奥行推定装置の差分加算値演算動作を示すフローチャートである。
【図6】本発明の第1実施形態に係る奥行推定装置の差分加算値平滑化動作を示すフローチャートである。
【図7】本発明の第1実施形態に係る奥行推定装置の奥行値決定動作を示すフローチャートである。
【図8】本発明の奥行推定装置において、仮定奥行値がサブ画素単位である場合のサブ画素の画素値を補間により生成する手法を説明するための説明図である。
【図9】本発明の第2実施形態に係る奥行推定装置の構成を示すブロック図である。
【図10】本発明の第3、第4実施形態に係る奥行推定システムの構成を示すブロック図である。
【図11】本発明の第3実施形態に係る奥行推定装置の構成を示すブロック図である。
【図12】本発明の第4実施形態に係る奥行推定装置の構成を示すブロック図である。
【図13】従来の奥行推定手法を説明するための説明図である。
【発明を実施するための形態】
【0030】
以下、本発明の実施形態について図面を参照して説明する。
[第1実施形態]
〔奥行推定システムの全体構成〕
最初に、図1を参照して、本発明の第1実施形態に係る奥行推定装置を含んだ奥行推定システムの全体構成について説明する。奥行推定システムSは、複数配列したカメラで被写体を撮影した多視点映像から、被写体の奥行値を推定した奥行映像を生成するものである。図1に示した奥行推定システムSは、カメラC(C,C,C,C)と、奥行推定装置1とを備えている。

【0031】
カメラCは、被写体Tを撮影する一般的な撮影装置である。ここでは、水平方向の視差に応じて奥行値を生成することとし、視差の基準となるカメラ(基準カメラ)Cに対し、水平方向に予め定めた距離Lだけ等間隔に離間して、カメラ(隣接カメラ)C,Cを平行に配置している。また、ここでは、隣接カメラC,Cとは異なる位置(基準カメラCからより離した位置)に、補助カメラとしてカメラCを、カメラCからさらに水平方向に距離Lだけ離間して平行に配置している。なお、この距離Lは、奥行値と視差量とが対応可能な範囲であれば、その距離は任意である。

【0032】
カメラCは、視差の基準となる映像(基準映像F)を撮影するものである。また、カメラC,Cは、それぞれカメラCの左右に配置されたカメラであって、基準映像Fとの視差を求めるための映像(隣接映像F,F)を撮影するものである。また、カメラCは、被写体Tの重なりによって発生するオクルージョンの影響を低減させるため、隣接カメラC,Cが撮影する映像とは異なる映像(補助映像F)を撮影するものである。このカメラC(C,C,C,C)で撮影された映像(F,F,F,F)は、奥行推定装置1に入力される。

【0033】
なお、垂直方向の視差に応じて奥行値を生成する場合であれば、カメラCの配置は、垂直方向に離間させて配置すればよい。
また、カメラCが撮影する映像(F,F,F,F)は、静止画であっても動画であっても構わない。動画である場合、カメラCはそれぞれフレーム同期を行うことで、順次、静止画のフレーム画像として奥行推定装置1に入力されることとする。あるいは、フレーム画像ごとにタイムコードを付加し、奥行推定装置1で同期をとることとしてもよい。

【0034】
奥行推定装置1は、予め定めた位置に複数配列したカメラで同一の被写体を撮影した複数のカメラ映像から、被写体Tの奥行きを示す奥行値を推定するものである。ここでは、奥行推定装置1は、水平方向に配列したカメラC(C,C,C,C)で被写体Tを撮影したカメラ映像(F,F,F,F)から、被写体Tの奥行きを示す奥行値を推定する。なお、ここでは、奥行推定装置1は、奥行値を、映像の各画素値に対応付けることで奥行映像Fを生成することとする。

【0035】
〔奥行推定装置の構成〕
次に、図2を参照(適宜図1参照)して、本発明の第1実施形態に係る奥行推定装置の構成について説明する。図2に示すように、奥行推定装置1は、映像入力手段10と、対応画素差分演算手段20と、差分加算値演算手段30と、記憶手段40と、平滑化手段50と、奥行値決定手段60と、を備えている。

【0036】
映像入力手段10は、カメラCで撮影された複数のカメラ映像を入力するものである。ここでは、映像入力手段10は、予め定めた基準カメラCで撮影した基準映像Fと、基準カメラCに隣接する複数の隣接カメラC,Cで撮影した隣接映像F,Fと、補助カメラCで撮影した補助映像Fと、を入力する。
この映像入力手段10で入力した各映像(F,F,F,F)は、図示を省略したメモリに記憶され、後記する対応画素差分演算手段20によって参照されるものとする。

【0037】
対応画素差分演算手段20は、複数設定した仮定奥行値ごとに、基準映像Fの各画素の画素値と、当該画素の仮定奥行値の視差に対応する隣接映像F,Fの各画素の画素値との差分絶対値である隣接映像差分値eCL,eCRを演算するものである。ここで、隣接映像差分値eCLは、基準映像Fと隣接映像Fとの間で演算された差分絶対値であり、隣接映像差分値eCRは、基準映像Fと隣接映像Fとの間で演算された差分絶対値である。

【0038】
なお、画素値の差分絶対値は、カメラ映像(F,F,F,F)が、輝度(輝度値)と色差信号(色差値)との各要素で構成される場合、当該画素の輝度値の差分絶対値と、色差値の差分絶対値とを加算した値とする。このとき、色差値の差分絶対値に任意の係数を掛けて、色成分の重みを調整することとしてもよい。
また、画素値の差分絶対値は、カメラ映像(F,F,F,F)が、RGBのカラー信号で構成される場合、カラー信号の要素であるR値の差分絶対値と、G値の差分絶対値と、B値の差分絶対値とを加算した値とする。

【0039】
また、仮定奥行値は、被写体Tの奥行値を仮に設定する値であって、“0”から予め定めた最大視差量に対応する奥行値までの値をとる。ここでは、対応画素差分演算手段20は、“0”から最大視差量に対応する奥行値まで、順次、仮定奥行値を設定し、当該仮定奥行値の視差に対応する画素間の画素値の差分を隣接映像差分値として演算する。また、ここでは、奥行値の単位と画素間の視差の単位とを同一とし、奥行値が“1”増加することで、1画素ずつ視差が増加することとする。

【0040】
なお、対応画素差分演算手段20は、さらに、複数の仮定奥行値ごとに、基準映像Fの各画素の画素値と、当該画素の仮定奥行値の視差に対応する補助映像Fの各画素の画素値との差分絶対値である補助映像差分値eCTを演算するものでもある。

【0041】
すなわち、対応画素差分演算手段20は、基準映像Fの(x,y)座標の画素値をF(x,y)、基準映像Fの(x,y)座標の仮定奥行値dに対応する隣接映像Fの(x+d,y)座標の画素値をF(x+d,y)、隣接映像Fの(x-d,y)座標の画素値をF(x-d,y)、補助映像Fの(x-2d,y)座標の画素値をF(x-2d,y)としたとき、以下の(1)式の演算により、隣接映像差分値eCL(d,x,y),eCR(d,x,y)および補助映像差分値eCT(d,x,y)を算出する。なお、||は、絶対値を示す。
CL(d,x,y)=|F(x+d,y)-F(x,y)|
CR(d,x,y)=|F(x-d,y)-F(x,y)|
CT(d,x,y)=|F(x-2d,y)-F(x,y)| …(1)式

【0042】
この対応画素差分演算手段20は、演算により求めた仮定奥行値d(“0”~最大視差量)ごとの隣接映像差分値eCL,eCR、および、補助映像差分値eCTを、差分加算値演算手段30に出力する。なお、対応画素差分演算手段20は、差分加算値演算手段30から、差分加算値を記憶手段40に書き込んだ旨(書き込み完了)を通知されることで、演算対象とする画素の画素位置および仮定奥行値を順次更新し、隣接映像差分値eCL,eCR、および、補助映像差分値eCTを演算する。

【0043】
差分加算値演算手段30は、複数設定した仮定奥行値および基準映像Fの画素位置ごとに、対応画素差分演算手段20で演算された隣接映像差分値eCL,eCRを加算することで差分加算値を演算するものである。さらに、差分加算値演算手段30は、対応画素差分演算手段20で演算された補助映像差分値eCTに応じて、差分加算値を補正するものでもある。なお、この差分加算値は、後記する奥行値決定手段60において、基準映像Fの画素位置ごとの奥行値を決定するための評価値として用いられる。

【0044】
ここでは、差分加算値演算手段30は、隣接映像差分加算手段30aと、補正係数設定手段30bと、差分加算値補正手段30cと、を備えている。

【0045】
隣接映像差分加算手段30aは、複数設定した仮定奥行値ごとに、対応画素差分演算手段20で演算された隣接映像差分値eCL,eCRを、同一の仮定奥行値について基準映像の画素位置ごとに加算することで差分加算値eを演算するものである。
すなわち、隣接映像差分加算手段30aは、基準映像Fの(x,y)座標の仮定奥行値dに対応する差分加算値e(d,x,y)を、以下の(2)式の演算により算出する。
e(d,x,y)=eCL(d,x,y)+eCR(d,x,y) …(2)式

【0046】
この隣接映像差分加算手段30aは、演算により求めた仮定奥行値d(“0”~最大視差量)ごとの差分加算値eを、差分加算値補正手段30cに出力する。

【0047】
補正係数設定手段30bは、複数設定した仮定奥行値ごとに、対応画素差分演算手段20で演算された補助映像差分値eCTが、予め定めた閾値よりも小さい場合に、当該画素に対応する差分加算値eを減少させる値を補正係数として設定するものである。
すなわち、補正係数設定手段30bは、基準映像Fの(x,y)座標の仮定奥行値dに対応する補助映像差分値eCT(d,x,y)が、閾値thよりも小さい場合、補正係数kに“1”より小さい値(例えば、“0.5”)を設定し、閾値th以上の場合、補正係数kに“1”を設定する。このように設定された補正係数kは、差分加算値補正手段30cに出力される。
なお、閾値は、予め定めた定数である。ただし、図示を省略した入力手段を介して、外部から調整可能としてもよい。

【0048】
また、補正係数は、定数であってもよいが、補助映像差分値eCTと閾値thとの比(eCT/th)に比例する値であってもよい。あるいは、補助係数は、補助映像差分値eCTと閾値thとの比の線形関数(例えば、一次式:a×eCT/th+b,a,bは任意)でもよい。このように、補正係数を比により設定することで、基準映像Fと補助映像Fとの間で偽マッチングが生じた場合であっても、差分加算値が急に小さくなることを防止することができる。

【0049】
差分加算値補正手段30cは、複数設定した仮定奥行値ごとに、補正係数設定手段30bで設定した補正係数kと、当該補正係数kを設定した画素に対応する隣接映像差分加算手段30aで加算された差分加算値eとを乗算することで差分加算値eを補正するものである。
すなわち、差分加算値補正手段30cは、隣接映像差分加算手段30aで演算された差分加算値e(d,x,y)を、補正係数設定手段30bで設定した補正係数kを用いて、以下の(3)式の演算により補正する。
e(d,x,y)=k×e(d,x,y) …(3)式

【0050】
この差分加算値補正手段30cは、演算により求めた差分加算値を、仮定奥行値と基準映像の画素位置とに対応付けて記憶手段40に書き込む。なお、差分加算値演算手段30は、差分加算値を記憶手段40に書き込むごとに、書き込み完了を対応画素差分演算手段20に通知する。また、差分加算値演算手段30は、基準映像のすべての画素位置において、仮定奥行値ごとの差分加算値を記憶手段40書き込んだ後に、書き込み完了を平滑化手段50に通知する。

【0051】
このように差分加算値演算手段30を構成することで、仮定した奥行値(仮定奥行値)が正しい場合、その奥行値に対応する差分加算値は、より小さな値となり、後記する奥行値決定手段60において、正しい奥行値が選択される度合いを高くすることができる。

【0052】
なお、隣接映像F,F共に偽マッチングが生じている場合、基準カメラCから隣接カメラC,Cより離れた位置に配置されている補助カメラCで撮影された補助映像Fでは、対応点が大きく移動している。このため、補助映像差分値eCTは、閾値thより小さくなることが少なく、補正係数設定手段30bにおいて、補正係数に“1”が設定されるため、差分加算値を小さくすることがない。よって、この場合、後記する奥行値決定手段60において、仮定奥行値が選択される度合いが低くなる。

【0053】
また、隣接映像F,Fのいずれかで偽マッチングが生じている場合、隣接映像差分値eCL,eCRのいずれかが大きくなるため、差分加算値も大きくなる。よって、この場合も、後記する奥行値決定手段60において、仮定奥行値が選択される度合いが低くなる。

【0054】
さらに、隣接映像F,Fのいずれかでオクルージョンが発生している場合、補助映像Fでオクルージョンが発生していなければ、補助映像差分値eCTは、閾値thより小さくなり、補正係数設定手段30bにおいて、補正係数に“1”より小さい値が設定されるため、差分加算値が小さくなる。よって、この場合、後記する奥行値決定手段60において、仮定奥行値が選択される度合いが高くなる。
このように、差分加算値演算手段30が演算する差分加算値は、仮定奥行値が正しいことを示す指標として用いることができる。

【0055】
記憶手段40は、差分加算値演算手段30で演算された差分加算値を、仮定奥行値と基準映像の画素位置とに対応付けて記憶するものであって、メモリ等の一般的な記憶媒体である。

【0056】
ここで、図3を参照して、記憶手段40に記憶される差分加算値の内容について説明する。図3に示すように、記憶手段40は、基準映像の画素位置である(x,y)座標ごとに、差分加算値を記憶する。このx座標値は、“0”から基準映像の映像幅(水平画素数)Xまでの値をとり、y座標値は、“0”から基準映像の映像高(垂直画素数)Yまでの値をとる。
また、記憶手段40は、基準映像の画素位置である(x,y)座標ごとの差分加算値を、さらに、仮定奥行値dごとに記憶する。この仮定奥行値dは、“0”から最大視差量に対応する値(最大視差量D)までの値をとる。
図2に戻って、奥行推定装置1の構成について説明を続ける。

【0057】
平滑化手段50は、基準映像の画素位置ごとに、差分加算値に、差分加算値が最小となる仮定奥行値と、当該画素位置の隣接画素位置における差分加算値が最小となる仮定奥行値との差分を重み付け加算することで、当該画素位置における差分加算値を平滑化するものである。なお、この平滑化手段50は、差分加算値演算手段30から、基準映像のすべての画素位置において、仮定奥行値ごとの差分加算値を書き込んだ旨(書き込み完了)を通知されることで動作を開始する。

【0058】
ここでは、平滑化手段50は、仮定奥行値と基準映像の画素位置とに対応付けて記憶されているすべての差分加算値について、重み付け加算を行う。
すなわち、平滑化手段50は、記憶手段40に記憶されている基準映像Fの(x,y)座標の仮定奥行値dに対応する差分加算値e(d,x,y)に、以下の(4)式により、隣接画素間の奥行値の差を重み付け加算することで、差分加算値ev(d,x,y)を演算する。
ev(d,x,y)=e(d,x,y)
+w(|d(x+1,y)-d(x,y)|+|d(x,y+1)-d(x,y)|)
…(4)式

【0059】
なお、d(x,y)は、対象となる基準映像Fの(x,y)座標の差分加算値が最小となる仮定奥行値、d(x+1,y)は、(x+1,y)座標の差分加算値が最小となる仮定奥行値、d(x,y+1)は、(x,y+1)座標の差分加算値が最小となる仮定奥行値をそれぞれ示している。また、wは重み係数であって、この係数wは、任意の値とすることができる。なお、この係数wは、図示を省略した入力手段を介して、外部から調整可能としてもよい。
このように、差分加算値に、隣接する画素間の奥行値の差分を重み付け加算することで、隣接する各画素の奥行値が平滑化されることになる。これによって、隣接画素間において、差分加算値が最小となる奥行値がノイズ等で互いに異なる場合であっても、滑らかな奥行値を得ることができる。

【0060】
この平滑化手段50は、演算により求めた平滑化した差分加算値を、記憶手段40に書き込む。その後、平滑化手段50は、奥行値決定手段60に平滑化完了を通知する。なお、記憶手段40には、図3に示したものと同様の構成で、平滑化した差分加算値が別途記憶されることになる。

【0061】
奥行値決定手段60は、仮定奥行値と基準映像の画素位置とに対応付けて記憶手段40に記憶されている差分加算値について、画素位置ごとに、差分加算値が最小となる仮定奥行値を探索するものである。ここでは、奥行値決定手段60は、平滑化手段50によって平滑化され差分加算値が最小となる仮定奥行値を探索し、当該画素位置における奥行値とする。

【0062】
このように、奥行値決定手段60は、すべての画素位置における奥行値を決定することで、被写体の奥行値を推定した奥行映像Fを生成する。
なお、この奥行値決定手段60は、平滑化手段50から、差分加算値の平滑化が完了した旨(平滑化完了)を通知されることで動作を開始するものとする。

【0063】
以上説明したように、奥行推定装置1は、隣接映像における視差の差分絶対値を加算した差分加算値を指標として、被写体の奥行値を推定することができる。これによって、奥行推定装置1は、一様な被写体で対応点が複数存在する場合であっても、複数の仮定した奥行値に対応する画素値の差分絶対値が最小となる画素の奥行値を推定する従来の手法に比べ、複数の隣接映像の差分絶対値を加算することで、ある隣接映像で偽マッチングが発生している場合、その奥行値を推定対象から除くことができ、精度よく奥行値を推定することができる。

【0064】
また、複数の隣接映像のうちで、オクルージョンが発生している場合であっても、補助映像にオクルージョンが発生していなければ、差分加算値を低くするため、奥行値を推定する度合いを高めることができる。

【0065】
なお、ここでは、4つのカメラ映像から、1つの基準映像に対する奥行値を推定しているが、5つ以上のカメラ映像から、予め定めた2つの基準映像に対する奥行値を推定することとしてもよい。すなわち、奥行推定装置1の内部構成を二重化し、予め定めた2つの基準映像に対する奥行値を推定する。この場合、2つの基準映像をそれぞれ他の系統の補助映像とする。これによって、2つの基準映像に対する奥行値が、同一の基準で整合することになり、例えば、これら2つの基準映像に対する奥行値により生成される奥行映像を合成して自由視点映像を生成した場合であっても二重像にならないという利点がある。

【0066】
〔奥行推定装置の動作〕
次に、図4~図7を参照して、本発明の第1実施形態に係る奥行推定装置の動作について説明する。ここでは、図4を参照して、奥行推定装置1の全体動作について説明し、詳細な説明については、図5~図7を参照して説明を行うことにする。

【0067】
(全体動作)
最初に、図4を参照(構成については適宜図1,2参照)して、奥行推定装置1の全体動作について説明する。
まず、奥行推定装置1は、映像入力手段10によって、一直線上に等間隔で平行に配置したカメラ(基準カメラC、隣接カメラC,C、補助カメラC)で、同一の被写体Tを撮影したカメラ映像(基準映像F,隣接映像F,F,補助映像F)を入力する(ステップS1)。

【0068】
そして、奥行推定装置1は、対応画素差分演算手段20および差分加算値演算手段30によって、仮定奥行値ごとに、基準映像Fの各画素の画素値と、当該画素の仮定奥行値の視差に対応する隣接映像F,Fの各画素の画素値との差分絶対値である隣接映像差分値eCL,eCRを求めて互いに加算することで、差分加算値を演算する(ステップS2;差分加算値演算動作)。

【0069】
なお、このステップS2には、仮定奥行値ごとに、基準映像Fの各画素の画素値と、当該画素の仮定奥行値の視差に対応する補助映像Fの各画素の画素値との差分絶対値である補助映像差分値eCTを演算し、その大きさに応じて、差分加算値を補正する動作も含まれている。このステップS2の動作については、図5を参照して後で説明を行う。

【0070】
そして、奥行推定装置1は、平滑化手段50によって、基準映像Fの(x,y)座標の仮定奥行値dに対応する差分加算値に、隣接画素間の奥行値の差を重み付け加算することで、差分加算値を平滑化する(ステップS3;差分加算値平滑化動作)。このステップS3の動作については、図6を参照して後で説明を行う。

【0071】
その後、奥行推定装置1は、奥行値決定手段60によって、画素位置(x,y)ごとに、差分加算値が最小となる仮定奥行値を探索し、当該画素位置の奥行値に決定する(ステップS4;奥行値決定動作)。このステップS4の動作については、図7を参照して後で説明を行う。
以上の動作によって、奥行推定装置1は、複数のカメラ映像から、被写体の奥行きを示す奥行値を推定する。

【0072】
(差分加算値演算動作)
次に、図5を参照(構成については適宜図1,2参照)して、図4のステップS2の動作である差分加算値演算動作について詳細に説明する。

【0073】
まず、奥行推定装置1は、変数として、仮定奥行値d、カメラ映像のx座標値、y座標値をそれぞれ初期化(d=0、x=0、y=0)する(ステップS10)。
その後、奥行推定装置1は、対応画素差分演算手段20によって、基準映像Fの(x,y)座標の画素の画素値と、当該画素の仮定奥行値dの視差に対応する隣接映像F,Fの画素の画素値との差分絶対値である隣接映像差分値eCL,eCRと、基準映像Fの(x,y)座標の画素値と、当該画素の仮定奥行値dの視差に対応する補助映像Fの画素の画素値との差分絶対値である補助映像差分値eCTを前記(1)式により演算する(ステップS11)。

【0074】
すなわち、対応画素差分演算手段20は、基準映像Fの中の画素値F(x,y)に対し、隣接映像Fの画素位置を右にd画素移動した位置の画素値F(x+d,y)との差分絶対値である隣接映像差分値eCL(d,x,y)を演算する。
また、対応画素差分演算手段20は、基準映像Fの中の画素値F(x,y)に対し、隣接映像Fの画素位置をd画素左に移動した位置の画素値F(x-d,y)との差分絶対値である隣接映像差分値eCR(d,x,y)を演算する。
さらに、対応画素差分演算手段20は、基準映像Fの中の画素値F(x,y)に対し、補助映像Fの画素位置を2d画素左に移動した位置の画素値F(x-2d,y)との差分絶対値である補助映像差分値eCT(d,x,y)を演算する。

【0075】
その後、奥行推定装置1は、差分加算値演算手段30の隣接映像差分加算手段30aによって、ステップS11で演算した隣接映像差分値eCLと、隣接映像差分値eCRとを、前記(2)式により加算することで、差分加算値eを演算する(ステップS12)。
さらに、奥行推定装置1は、差分加算値演算手段30の補正係数設定手段30bによって、ステップS11で演算した補助映像差分値eCTが予め定めた閾値thよりも小さいか否かを判定する(ステップS13)。

【0076】
そして、補正係数設定手段30bは、補助映像差分値eCTが閾値thよりも小さい場合(ステップS13でYes)、補正係数kに“1”より小さい値(例えば、“0.5”)を設定する(ステップS14)。一方、補助映像差分値eCTが閾値th以上の場合(ステップS13でNo)、補正係数設定手段30bは、補正係数kに“1”を設定する(ステップS15)。

【0077】
そして、奥行推定装置1は、差分加算値演算手段30の差分加算値補正手段30cによって、ステップS12で求めた差分加算値eと、ステップS14またはステップS15で設定した補正係数kとを、前記(3)式により演算することで、差分加算値eを補正する(ステップS16)。
そして、奥行推定装置1は、ステップS16で補正した差分加算値eを、仮定奥行値dと基準映像の画素位置(x,y)とに対応付けて記憶手段40に書き込む(ステップS17)。

【0078】
その後、奥行推定装置1は、変数である仮定奥行値d、カメラ映像のx座標値、y座標値を順次加算(インクリメント)し、仮定奥行値dについては最大視差量になるまで(ステップS18,S19)、x座標値についてはカメラ映像の幅になるまで(ステップS20,S21)、y座標値についてはカメラ映像の高さになるまで(ステップS22,S23)、ステップS11からステップS17までの動作を繰り返す。
この差分加算値演算動作によって、記憶手段40には、基準映像の画素位置(x,y)ごとに、複数の仮定奥行値d(“0”~最大視差量)に対応した差分加算値eが記憶される。

【0079】
(差分加算値平滑化動作)
次に、図6を参照(構成については適宜図1,2参照)して、図4のステップS3の動作である差分加算値平滑化動作について詳細に説明する。
まず、奥行推定装置1は、変数である仮定奥行値d、カメラ映像のx座標値、y座標値をそれぞれ初期化(d=0、x=0、y=0)し直す(ステップS30)。
そして、奥行推定装置1は、平滑化手段50によって、記憶手段40に記憶されている基準映像Fの(x,y)座標と、この座標と隣接する座標とにおいて、仮定奥行値の中で最小の仮定奥行値を探査する(ステップS31)。

【0080】
すなわち、平滑化手段50は、基準映像Fの(x,y)座標の差分加算値が最小となる仮定奥行値d(x,y)、(x+1,y)座標の差分加算値が最小となる仮定奥行値d(x+1,y)、(x,y+1)座標の差分加算値が最小となる仮定奥行値d(x,y+1)を探索する。

【0081】
そして、奥行推定装置1は、平滑化手段50によって、記憶手段40に記憶されている基準映像Fの(x,y)座標の仮定奥行値dに対応する差分加算値e(d,x,y)に、前記(4)式により、隣接画素間の奥行値の差を重み付け加算することで、平滑化した差分加算値ev(d,x,y)を演算する(ステップS32)。
そして、奥行推定装置1は、ステップS32で演算した平滑化した差分加算値evを、仮定奥行値dと基準映像の画素位置(x,y)とに対応付けて記憶手段40に書き込む(ステップS33)。

【0082】
その後、奥行推定装置1は、変数である仮定奥行値d、カメラ映像のx座標値、y座標値を順次加算(インクリメント)し、仮定奥行値dについては最大視差量になるまで(ステップS34,S35)、x座標値についてはカメラ映像の幅になるまで(ステップS36,S37)、y座標値についてはカメラ映像の高さになるまで(ステップS38,S39)、ステップS31からステップS33までの動作を繰り返す。
この差分加算値平滑化動作によって、記憶手段40には、基準映像の画素位置(x,y)ごとに、複数の仮定奥行値d(“0”~最大視差量)に対応した平滑化した差分加算値evが記憶される。

【0083】
(奥行値決定動作)
次に、図7を参照(構成については適宜図1,2参照)して、図4のステップS4の動作である奥行値決定動作について詳細に説明する。

【0084】
まず、奥行推定装置1は、変数であるカメラ映像のx座標値、y座標値をそれぞれ初期化(x=0、y=0)する(ステップS50)。
そして、奥行推定装置1は、奥行値決定手段60によって、記憶手段40に記憶されている差分加算値evについて、画素位置(x,y)ごとに、差分加算値evが最小となる仮定奥行値dを探索する(ステップS51)。このステップS51で探索された仮定奥行値dが、画素位置(x,y)における被写体の奥行値として決定(出力)される(ステップS52)。

【0085】
その後、奥行推定装置1は、変数であるカメラ映像のx座標値、y座標値を順次加算(インクリメント)し、x座標値についてはカメラ映像の幅になるまで(ステップS53,S54)、y座標値についてはカメラ映像の高さになるまで(ステップS55,S56)、ステップS51,S52の動作を繰り返す。これによって、すべての画素位置(x,y)における被写体の奥行値が決定されることになる。

【0086】
以上、本発明の実施形態における奥行推定装置1の構成および動作について説明したが、本発明は、この実施形態に限定されるものではない。
例えば、本実施形態では、補助映像Fとして、基準カメラCから隣接カメラCまでの距離の2倍の距離に配置した補助カメラCで撮影したカメラ映像を用いたが、この補助映像Fは、予め定めた任意の位置に配置した補助カメラCで撮影したカメラ映像であればよい。例えば、隣接カメラを水平方向に配置した場合、補助カメラを基準カメラの垂直方向に離れた位置に配置する。これによって、カメラ間距離を小さく保ったまま、オクルージョンや、偽マッチングによる奥行値の誤推定を低減させることができる。

【0087】
また、本実施形態では、仮定する奥行値の単位(刻み幅)と画素間の視差の単位(画素間隔)とを同一としたが、奥行値の単位を、画素間隔よりも小さい仮想のサブ画素間隔(例えば、半画素単位、1/4画素単位)としてもよい。この場合、例えば、半画素の画素値は、当該半画素を含む画素値と、隣接する画素の画素値とから補間して求めることができる。

【0088】
例えば、図8に示したように画素が配列されている場合、(x,y)座標の画素Pの画素値をpv、(x,y-1)座標の画素Pの画素値をpv、(x-1,y)座標の画素Pの画素値をpv、(x-1,y-1)座標の画素Pの画素値をpvとしたとき、仮想の(x-1/2,y-1/2)座標のサブ画素Pの画素値psvは、以下の(5)式で求めることができる。
psv=(pv+pv+pv+pv)/4 …(5)式
なお、ここでは、サブ画素Pに隣接する画素P,P,P,Pを用いて補間により画素値を求めたが、サブ画素PがPとPのみに隣接する場合は、画素PとPのみを用いて補間を行ってもよい。

【0089】
このように、奥行値の単位を仮想のサブ画素間隔で行うことで、基準カメラCと、隣接カメラC,Cや補助カメラCとのカメラ間隔が狭い場合であっても奥行値の分解能を高めることができる。

【0090】
また、ここでは、最適な構成として奥行推定装置1の構成および動作について説明したが、本発明は、奥行推定装置1の構成を適宜省略した簡易な構成とすることも可能である。以下、構成を簡略化した奥行推定装置1B(第2実施形態),1C(第3実施形態),1D(第4実施形態)について説明する。

【0091】
[第2実施形態]
まず、図9を参照して、本発明の第2実施形態に係る奥行推定装置の構成について説明する。図9に示した奥行推定装置1Bは、奥行推定装置1(図2参照)から平滑化手段50を省き、差分加算値演算手段30および奥行値決定手段60を、それぞれ差分加算値演算手段30Bおよび奥行値決定手段60Bとして構成している。奥行推定装置1と同一の構成については、同一の符号を付して説明を省略する。

【0092】
差分加算値演算手段30Bは、その内部構成および内部動作については、図2で説明した差分加算値演算手段30と同様であるが、基準映像のすべての画素位置において、仮定奥行値ごとの差分加算値を記憶手段40に書き込んだ後に、書き込み完了を通知する先が、奥行値決定手段60Bである点が異なっている。
奥行値決定手段60Bは、図2で説明した奥行値決定手段60と基本的な機能は同じであるが、差分加算値演算手段30Bから書き込み完了を通知されることで動作する点のみが異なっている。
また、奥行推定装置1Bの動作は、図4で説明した奥行推定装置1の動作のうち、ステップS3を除いた動作となる。

【0093】
このように奥行推定装置1Bを構成し、動作させることで、奥行推定装置1Bは、図2で説明した奥行推定装置1に比べ、隣接画素間において、差分加算値が最小となる奥行値がノイズ等で互いに異なる場合、奥行推定を誤ることがある。しかし、奥行推定装置1Bは、ノイズ劣化の少ない映像において、奥行推定装置1と同様の効果を高速に得ることができる。

【0094】
すなわち、奥行推定装置1Bは、一様な被写体で対応点が複数存在する場合であっても、複数の仮定した奥行値に対応する画素値の差分絶対値が最小となる画素の奥行値を推定する従来の手法に比べ、複数の隣接映像の差分絶対値を加算することで、ある隣接映像で偽マッチングが発生している場合、その奥行値を推定対象から除くことができ、精度よく奥行値を推定することができる。
また、複数の隣接映像のうちで、オクルージョンが発生している場合であっても、補助映像にオクルージョンが発生していなければ、差分加算値を低くするため、奥行値を推定する度合いを高めることができる。

【0095】
[第3実施形態]
次に、図10および図11を参照して、本発明の第3実施形態に係る奥行推定装置について説明する。第3実施形態に係る奥行推定装置1Cを含んだ奥行推定システムSBは、図10に示すように、図1で説明した奥行推定システムSに比べ、補助映像を使用せずに奥行映像Fを生成する点が異なっている。

【0096】
また、図11に示すように、奥行推定装置1Cは、奥行推定装置1(図2参照)から補正係数設定手段30bおよび差分加算値補正手段30cを省き、対応画素差分演算手段20および隣接映像差分加算手段30aを、それぞれ対応画素差分演算手段20Bおよび隣接映像差分加算手段30Baとして構成している。奥行推定装置1と同一の構成については、同一の符号を付して説明を省略する。

【0097】
対応画素差分演算手段20Bは、図2で説明した対応画素差分演算手段20とは、補助映像から差分絶対値を演算する機能を省いている点が異なっている。それ以外の機能については、対応画素差分演算手段20と同様である。
隣接映像差分加算手段30Baは、図2で説明した隣接映像差分加算手段30aと基本的な機能は同じであるが、演算により求めた差分加算値を補正することなく記憶手段40に書き込む点が異なっている。
また、奥行推定装置1Cの動作は、図4で説明した奥行推定装置1の全体動作は同じであるが、図5で説明した差分加算値演算動作のステップS11において、補助映像差分値eCTを算出しない点、ならびに、ステップS13からステップS16までの動作を行わない点が異なっている。

【0098】
このように奥行推定装置1Cを構成し、動作させることで、奥行推定装置1Cは、図2で説明した奥行推定装置1に比べ、隣接映像間でオクルージョンが発生している場合、奥行推定を誤ることがある。しかし、奥行推定装置1Cは、被写体の重なりがない映像において、奥行推定装置1と同様の効果を少ないカメラ数の奥行推定システムにより得ることができる。
すなわち、奥行推定装置1Cは、一様な被写体で対応点が複数存在する場合であっても、複数の隣接映像の差分絶対値を加算することで、ある隣接映像で偽マッチングが発生している場合、その奥行値を推定対象から除くことができ、精度よく奥行値を推定することができる。

【0099】
[第4実施形態]
さらに、奥行推定装置1B(図9参照)や奥行推定装置1C(図11参照)で、奥行推定装置1(図2参照)から省略した構成を共に省いて、図12に示すように、奥行推定装置1Dとして構成してもよい。
この場合であっても、奥行推定装置1Dは、一様な被写体で対応点が複数存在する場合であっても、複数の隣接映像の差分絶対値を加算することで、ある隣接映像で偽マッチングが発生している場合、その奥行値を推定対象から除くことができ、精度よく奥行値を推定することができる。

【0100】
以上、複数の実施形態により奥行推定装置1(1B,1C,1D)の構成および動作について説明したが、この奥行推定装置1(1B,1C,1D)は、一般的なコンピュータを、前記した各手段として機能させる奥行推定プログラムによって動作させることができる。また、この奥行推定プログラムは、通信回線を介して配布したり、CD-ROM等の記録媒体に記録して配布したりすることも可能である。
【符号の説明】
【0101】
1 奥行推定装置
10 映像入力手段
20 対応画素差分演算手段
30 差分加算値演算手段
30a 隣接映像差分加算手段
30b 補正係数設定手段
30c 差分加算値補正手段
40 記憶手段
50 平滑化手段
60 奥行値決定手段
図面
【図1】
0
【図2】
1
【図3】
2
【図4】
3
【図5】
4
【図6】
5
【図7】
6
【図8】
7
【図9】
8
【図10】
9
【図11】
10
【図12】
11
【図13】
12