IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本放送協会の特許一覧

<>
  • 特許-奥行推定装置およびそのプログラム 図1
  • 特許-奥行推定装置およびそのプログラム 図2
  • 特許-奥行推定装置およびそのプログラム 図3
  • 特許-奥行推定装置およびそのプログラム 図4
  • 特許-奥行推定装置およびそのプログラム 図5
  • 特許-奥行推定装置およびそのプログラム 図6
  • 特許-奥行推定装置およびそのプログラム 図7
  • 特許-奥行推定装置およびそのプログラム 図8
  • 特許-奥行推定装置およびそのプログラム 図9
  • 特許-奥行推定装置およびそのプログラム 図10
  • 特許-奥行推定装置およびそのプログラム 図11
  • 特許-奥行推定装置およびそのプログラム 図12
  • 特許-奥行推定装置およびそのプログラム 図13
  • 特許-奥行推定装置およびそのプログラム 図14
  • 特許-奥行推定装置およびそのプログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-24
(45)【発行日】2023-03-06
(54)【発明の名称】奥行推定装置およびそのプログラム
(51)【国際特許分類】
   H04N 13/268 20180101AFI20230227BHJP
   G06T 7/593 20170101ALI20230227BHJP
   H04N 13/117 20180101ALI20230227BHJP
   H04N 13/243 20180101ALI20230227BHJP
   G01C 3/06 20060101ALI20230227BHJP
【FI】
H04N13/268
G06T7/593
H04N13/117
H04N13/243
G01C3/06 110V
【請求項の数】 5
(21)【出願番号】P 2018072424
(22)【出願日】2018-04-04
(65)【公開番号】P2019184308
(43)【公開日】2019-10-24
【審査請求日】2021-03-12
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】妹尾 孝憲
(72)【発明者】
【氏名】原 一宏
(72)【発明者】
【氏名】河北 真宏
【審査官】佐野 潤一
(56)【参考文献】
【文献】特開2010-251878(JP,A)
【文献】特開2001-175863(JP,A)
【文献】特開2016-145753(JP,A)
【文献】特開2011-221932(JP,A)
【文献】米国特許第05917937(US,A)
【文献】米国特許出願公開第2015/0049917(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 13/00
G06T 7/00
G01C 3/00
G01B 11/00
G06V 10/00
(57)【特許請求の範囲】
【請求項1】
多視点カメラで被写体を撮影した複数の視点映像から、前記視点映像における前記被写体の奥行マップを推定する奥行推定装置であって、
前記奥行マップを推定する対象となる対象視点映像を入力する対象視点映像入力手段と、
前記対象視点映像の視点位置の水平方向および垂直方向に近接する視点位置の映像を、前記対象視点映像に対する方向別の周辺視点映像として入力する周辺視点映像入力手段と、
複数の前記周辺視点映像を水平方向および垂直方向に予め定めたアップサンプル倍率でアップサンプルする周辺視点映像アップサンプル手段と、
アップサンプルしたサブ画素に対応する位置を順次ずらしたずれ量を仮定奥行値とし、前記仮定奥行値ごとに、前記アップサンプルされた方向別の周辺視点映像と、前記対象視点映像との対応する画素値の差を方向別のマッチング誤差として算出する奥行・方向別マッチング誤差算出手段と、
前記対象視点映像の画素ごとに、水平方向および垂直方向の画素値の変化が大きいほど値を小さくし、変化が小さいほど値を大きくした前記マッチング誤差の方向別の信頼度重みを算出する方向別信頼度重み算出手段と、
前記対象視点映像の画素ごとに、水平方向および垂直方向の画素値の変化に基づいて、前記マッチング誤差の方向別の信頼度重みを算出する方向別信頼度重み算出手段と、
水平方向の前記マッチング誤差には水平方向の前記信頼度重みを乗算し、垂直方向の前記マッチング誤差には垂直方向の前記信頼度重みを乗算した方向別の信頼度重み付きマッチング誤差の中で最小の信頼度重み付きマッチング誤差を、前記画素におけるマッチング誤差として選択するマッチング誤差選択手段と、
前記マッチング誤差選択手段で選択されたマッチング誤差を、前記対象視点映像の画素位置と前記仮定奥行値とに対応付けて記憶するマッチング誤差記憶手段と、
前記マッチング誤差記憶手段に記憶されている前記選択されたマッチング誤差と、対応する画素位置の仮定奥行値と隣接する画素位置の仮定奥行値との差に奥行きの連続性重みを乗算したものとの和を評価関数とし、前記評価関数の値が最も小さい仮定奥行値を画素ごとに選択することで、奥行マップを生成する奥行平滑化手段と、
を備えることを特徴とする奥行推定装置。
【請求項2】
前記周辺視点映像アップサンプル手段は、4倍のバイキュービックフィルタのアップサンプル係数を補間したアップサンプル係数を用いることで、前記アップサンプル倍率を8倍とすることを特徴とする請求項1に記載の奥行推定装置。
【請求項3】
前記方向別信頼度重み算出手段は、水平方向および垂直方向の画素値の変化が大きいほど小さい重みを前記信頼度重みとすることを特徴とする請求項1または請求項2に記載の奥行推定装置。
【請求項4】
前記奥行平滑化手段が用いる前記評価関数は、画素ごとの前記マッチング誤差に、水平方向および垂直方向にそれぞれ隣接する画素との奥行値の差に前記連続性重みを乗算した値を加算するものであって、前記連続性重みは、水平方向または垂直方向においてエッジが存在する場合に、前記エッジが存在しない場合と比べて小さい重みとすることを特徴とする請求項1から請求項3のいずれか一項に記載の奥行推定装置。
【請求項5】
コンピュータを、請求項1から請求項4のいずれか一項に記載の奥行推定装置として機能させるための奥行推定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、奥行推定装置およびそのプログラムに関する。
【背景技術】
【0002】
従来、眼鏡の要らない裸眼立体映像として、水平方向および垂直方向に視差のあるインテグラル映像方式の実用化が進められている。インテグラル映像は、水平方向および垂直方向に2次元配列されたカメラで撮影したカメラ映像から生成することができる。しかし、インテグラル映像は、それぞれのカメラ映像以外のカメラ間の視点位置における映像を生成しておく必要があるためデータ量が膨大となり、データ伝送において、実用化の妨げとなっている。
【0003】
そこで、生成したインテグラル映像をそのまま伝送するのではなく、カメラ映像の画素位置のずれ量を奥行マップとして、カメラ映像とともに伝送し、表示装置側でインテグラル映像を生成する手法が開示されている(特許文献1,2参照)。
例えば、特許文献1には、水平方向に配置された複数のカメラで撮影された多視点映像内で、対応する画素位置のずれ量を探索して、奥行マップとして出力する手法が開示されている。
また、特許文献2には、奥行マップを用いて、基準となる視点映像とオクルージョンホールとなる残差映像とを射影して、両映像の間の仮想視点映像を合成する手法が開示されている。
【先行技術文献】
【非特許文献】
【0004】
【文献】特開2012-073813号公報
【文献】国際公開第2013-073316号
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来の手法は、水平方向から推定される奥行マップしか生成しないため、この手法を水平方向および垂直方向に配列された多視点映像に適用すると、水平方向の対応点が前景の被写体に隠れて、どの水平視点からも見えないオクルージョン部の奥行きを正しく推定することができない。そのため、従来のように水平方向に並んだ視点映像からだけでは、オクルージョン部が多く発生し、仮想視点映像を正しく合成することができないという問題がある。
また、従来の手法は、画素単位で奥行きを推定するため、インテグラル映像用の多視点映像のように、視点間隔が狭い多視点映像では、対応画素のずれ量である視差量が小さくなり、奥行マップの分解能が不足してしまう。そのため、従来の手法では、生成したインテグラル映像の画質が悪いという問題がある。
【0006】
本発明は、このような問題に鑑みてなされたものであり、多視点映像から、従来よりもオクルージョン部を減らすとともに、分解能を高めた奥行マップを推定することが可能な奥行推定装置およびそのプログラムを提供することを課題とする。
【課題を解決するための手段】
【0007】
前記課題を解決するため、本発明に係る奥行推定装置は、多視点カメラで被写体を撮影した複数の視点映像から、前記視点映像における前記被写体の奥行マップを推定する奥行推定装置であって、対象視点映像入力手段と、周辺視点映像入力手段と、周辺視点映像アップサンプル手段と、奥行・方向別マッチング誤差算出手段と、方向別信頼度重み算出手段と、マッチング誤差選択手段と、マッチング誤差記憶手段と、奥行平滑化手段と、を備える構成とした。
【0008】
かかる構成において、奥行推定装置は、対象視点映像入力手段によって、奥行マップを推定する対象となる対象視点映像を入力する。また、奥行推定装置は、周辺視点映像入力手段によって、対象視点映像の視点位置の水平方向および垂直方向に近接する視点位置の映像を、対象視点映像に対する方向別の周辺視点映像として入力する。
【0009】
そして、奥行推定装置は、周辺視点映像アップサンプル手段によって、複数の周辺視点映像を水平方向および垂直方向に予め定めたアップサンプル倍率でアップサンプルする。これによって、周辺視点映像の画素ごとの画素値がサブ画素単位に割り当てられることになる。
【0010】
そして、奥行推定装置は、奥行・方向別マッチング誤差算出手段によって、アップサンプルしたサブ画素に対応する位置を順次ずらしたずれ量を仮定奥行値とし、仮定奥行値ごとに、アップサンプルされた方向別の周辺視点映像と、対象視点映像との対応する画素値の差を方向別のマッチング誤差として算出する。
また、奥行推定装置は、方向別信頼度重み算出手段によって、対象視点映像の画素ごとに、水平方向および垂直方向の画素値の変化が大きいほど値を小さくし、変化が小さいほど値を大きくしたマッチング誤差の方向別の信頼度重みを算出する。この信頼度重みは、テキスチャの変化が少なく画素値の差が小さい場合、正しくない奥行値であってもマッチング誤差が小さくなってしまうことを防止するための重みである。
【0011】
そして、奥行推定装置は、マッチング誤差選択手段によって、水平方向のマッチング誤差には水平方向の信頼度重みを乗算し、垂直方向のマッチング誤差には垂直方向の信頼度重みを乗算した方向別の信頼度重み付きマッチング誤差の中で最小の信頼度重み付きマッチング誤差を、当該画素におけるマッチング誤差として選択し、マッチング誤差記憶手段に記憶する。これによって、画素位置および仮定奥行値に対応したマッチング誤差が選定されることになる。
【0012】
そして、奥行推定装置は、奥行平滑化手段によって、マッチング誤差記憶手段に記憶されている選択されたマッチング誤差と、対応する画素位置の仮定奥行値と隣接する画素位置の仮定奥行値との差に奥行きの連続性重みを乗算したものとの和を評価関数とし、評価関数の値が最も小さくなる仮定奥行値を画素ごとに選択する。これによって、画素ごとに最適化された奥行値が選定されて、奥行マップが生成されることになる。
なお、奥行推定装置は、コンピュータを、前記した各手段として機能させるためのプログラムで動作させることができる。
【発明の効果】
【0017】
本発明は、以下に示す優れた効果を奏するものである。
本発明によれば、水平方向および垂直方向に視差を有するカメラ映像から奥行マップを生成するため、従来よりもオクルージョン部を減らすことができる。また、本発明によれば、視点映像に対してサブ画素単位で奥行きを推定することができる。
これによって、本発明は、分解能の高い奥行マップを推定することができる
【図面の簡単な説明】
【0018】
図1】本発明の実施形態に係る多視点映像生成システムの構成を説明するための構成図である。
図2】多視点映像生成システムの多視点カメラの配置を示すカメラ配置図である。
図3】本発明の実施形態に係る奥行推定装置の構成を示すブロック図である。
図4】対象視点映像と周辺視点映像との関係を説明するための説明図であって、(a)~(i)に対象視点映像と周辺視点映像との対応パターンを示す。
図5】アップサンプル係数を説明するため説明図である。
図6】8倍のアップサンプル係数を算出する手法を説明するための説明図であって、サブ画素位置と係数との関係を示す。
図7】テキスチャの傾きと信頼度重みとの関係を示すグラフ図である。
図8】奥行推定装置のマッチング誤差記憶手段に記憶されるデータの記憶内容を説明するための説明図である。
図9】エッジ検出の手法を説明するための説明図である。
図10】本発明の実施形態に係る奥行推定装置の動作を示すフローチャートである。
図11】本発明の実施形態に係る仮想視点映像生成装置の構成を示すブロック図である。
図12】仮想視点映像と参照視点映像との関係を説明するための説明図であって、(a)~(c)に仮想視点映像と参照視点映像との対応パターンを示す。
図13】本発明の実施形態に係る仮想視点映像生成装置の動作を示すフローチャートである。
図14】本発明の実施形態に係る奥行推定装置が、奥行マップを生成する対象となる視点映像として、多視点カメラの視点映像の一部を使用する例を説明するための説明図である。
図15】仮想視点を被写体に近づけたときに発生する画素サイズの拡大を説明するための説明図であって、(a)は多視点カメラと同じ視点位置の参照視点映像、(b)は被写体に近い視点位置の仮想視点映像、(c)は画素を拡大した様子を示す仮想視点映像を示す。
【発明を実施するための形態】
【0019】
以下、本発明の実施形態について図面を参照して説明する。
〔多視点映像生成システムの構成〕
図1を参照して、本発明の実施形態に係る多視点映像生成システムSの構成について説明する。
多視点映像生成システムSは、多視点カメラCで被写体Oを撮影した多視点映像から、仮想視点の映像(仮想視点映像)を生成するものである。
多視点映像生成システムSは、多視点カメラCと、奥行推定装置1と、仮想視点映像生成装置2と、を備える。
【0020】
多視点カメラCは、背景Oと前景Oとを含んだ被写体Oを撮影するものである。この多視点カメラCは、水平方向および垂直方向に予め定めた間隔で2次元配列した複数のカメラC11,C12,C13,…で構成される。
すなわち、多視点カメラCは、図2に示すように、水平n個(nは2以上の整数)、垂直m個(mは2以上の整数)のカメラC11~Cmnを、水平方向および垂直方向に配列したものである。
多視点カメラCは、それぞれのカメラC11~Cmnで撮影した映像を、カメラ位置における視点映像として、奥行推定装置1に出力する。
なお、多視点カメラCは、1台または2次元配列した複数台のライトフィールドカメラであってもよい。ライトフィールドカメラで撮影された映像は、複数の多視点映像に変換され、多視点カメラCのカメラC11~Cmnが撮影された映像と同様の多視点映像となる。
【0021】
多視点カメラCが撮影する視点映像は、静止画であっても動画であっても構わない。動画である場合、多視点カメラCは、互いにフレーム同期を行うことで、順次、静止画のフレーム画像として奥行推定装置1に映像を出力する。あるいは、フレーム画像ごとにタイムコードを付加し、奥行推定装置1で同期をとることとしてもよい。
【0022】
奥行推定装置1は、多視点カメラCで撮影されたそれぞれの視点映像について、周辺の視点映像から、奥行きを推定し奥行マップを生成するものである。
奥行推定装置1は、奥行きを推定する対象となる視点映像の各画素に、最大4方向の周辺の視点映像から推定したサブ画素単位の奥行値を対応付けた奥行マップを生成する。
奥行推定装置1は、視点映像と、当該視点映像に対応付けた奥行マップとを、仮想視点映像生成装置2に出力する。
【0023】
仮想視点映像生成装置2は、多視点カメラCで撮影された視点映像と、当該視点映像に対して奥行推定装置1で推定されたサブ画素単位の奥行マップとから、任意の仮想視点位置の映像(仮想視点映像)を生成するものである。
これによって、多視点映像生成システムSは、前景Oに隠れた背景Oの領域を水平方向および垂直方向に配列されたカメラで撮影するため、従来に比べてオクルージョン部を減らすことができる。また、多視点映像生成システムSは、サブ画素単位で奥行マップを生成するため、奥行きの精度を高めた高画質の仮想視点映像を生成することができる。
以下、奥行推定装置1および仮想視点映像生成装置2の構成および動作について、詳細に説明する。
【0024】
〔奥行推定装置の構成〕
まず、図3を参照して(適宜図1参照)、本発明の実施形態に係る奥行推定装置1の構成について説明する。
図3に示すように、奥行推定装置1は、対象視点映像入力手段10と、周辺視点映像入力手段11と、アップサンプル手段12と、マッチング誤差算出手段13と、マッチング誤差記憶手段14と、奥行平滑化手段15と、奥行マップ出力手段16と、を備える。
【0025】
対象視点映像入力手段10は、多視点カメラCから、奥行マップを推定する対象となる視点映像を対象視点映像として入力するものである。
対象視点映像入力手段10は、多視点カメラCの個々のカメラC11~Cmnから、順次、視点映像を入力し、マッチング誤差算出手段13および奥行マップ出力手段16に出力する。また、対象視点映像入力手段10は、入力した視点映像を特定する位置情報(例えば、カメラC11~Cmnの識別情報)を、周辺視点映像入力手段11に出力する。
【0026】
周辺視点映像入力手段11は、多視点カメラCから、対象視点映像入力手段10で入力した対象視点映像を撮影したカメラの水平方向および垂直方向に近接するカメラで撮影した周辺の視点映像(周辺視点映像)を入力するものである。周辺視点映像は、対象視点映像に対して、水平方向および垂直方向の最大4方向の周辺の視点映像である。
【0027】
ここで、図4を参照(適宜図2参照)して、周辺視点映像について説明する。
周辺視点映像は、図4に示すように、対象視点映像Iに対して、上下左右の最大で4方向の視点映像(上視点映像I、下視点映像I、左視点映像I、右視点映像I)である。
【0028】
例えば、カメラC11が撮影した視点映像を対象視点映像Iとする場合、図4(a)に示すように、周辺視点映像は、カメラC21が撮影した下視点映像IおよびカメラC12が撮影した右視点映像Iの2つとなる(以下、周辺視点映像の対応するカメラの記載は省略する)。
また、例えば、カメラC12が撮影した視点映像を対象視点映像Iとする場合、図4(b)に示すように、周辺視点映像は、下視点映像I、左視点映像Iおよび右視点映像Iの3つとなる。
また、例えば、カメラC1nが撮影した視点映像を対象視点映像Iとする場合、図4(c)に示すように、周辺視点映像は、下視点映像Iおよび左視点映像Iの2つとなる。
【0029】
また、例えば、カメラC21が撮影した視点映像を対象視点映像Iとする場合、図4(d)に示すように、周辺視点映像は、上視点映像I、下視点映像Iおよび右視点映像Iの3つとなる。
また、例えば、カメラC22が撮影した視点映像を対象視点映像Iとする場合、図4(e)に示すように、周辺視点映像は、上視点映像I、下視点映像I、左視点映像Iおよび右視点映像Iの4つとなる。
また、例えば、カメラC2nが撮影した視点映像を対象視点映像Iとする場合、図4(f)に示すように、周辺視点映像は、上視点映像I、下視点映像Iおよび左視点映像Iの3つとなる。
【0030】
また、例えば、カメラCm1が撮影した視点映像を対象視点映像Iとする場合、図4(g)に示すように、周辺視点映像は、上視点映像Iおよび右視点映像Iの2つとなる。
また、例えば、カメラCm2が撮影した視点映像を対象視点映像Iとする場合、図4(h)に示すように、周辺視点映像は、上視点映像I、左視点映像Iおよび右視点映像Iの3つとなる。
また、例えば、カメラCmnが撮影した視点映像を対象視点映像Iとする場合、図4(i)に示すように、周辺視点映像は、上視点映像Iおよび左視点映像Iの2つとなる。
以上のように、周辺視点映像入力手段11は、対象視点映像Iを撮影したカメラC11~Cmnの位置に応じて、入力する周辺視点映像の数が異なる。
図3に戻って、奥行推定装置1の構成について説明を続ける。
【0031】
周辺視点映像入力手段11は、対象視点映像入力手段10から通知される対象視点映像の位置情報に対応する最大4つの周辺視点映像を、対象視点映像に対する方向とともに、アップサンプル手段12に出力する。
【0032】
アップサンプル手段(周辺視点映像アップサンプル手段)12は、周辺視点映像入力手段11で入力した周辺視点画像をアップサンプルするものである。
アップサンプル手段12は、周辺視点映像の画素を水平方向および垂直方向にサブ画素化する。具体的には、アップサンプル手段12は、2倍、4倍、8倍等、予め定めたアップサンプル倍率のフィルタを用いて周辺視点映像をアップサンプルする。
【0033】
例えば、4倍にアップサンプルする場合、図5に示すように、水平方向の画素位置(x-1,x,x,x)の画素値を(P-1,P,P,P)としたとき、アップサンプル手段12は、画素位置x-x間を4等分した座標位置(サブ画素位置)に、画素値i,i,iを割り当てる。この画素値i,i,iは、以下の式(1)に示すように、バイキュービックフィルタのアップサンプル係数を用いて計算することができる。式(1)中、iは、画素位置xの画素値Pと同じである。
【0034】
【数1】
【0035】
なお、視点映像が、RGB、YCbCr等のカラー映像の場合、アップサンプル手段12は、RGB等の各チャンネルに対して、式(1)を適用する。
アップサンプル手段12は、垂直方向においても、前記式(1)と同様にアップサンプルを行う。
なお、アップサンプルの倍率を2倍とする場合、アップサンプル手段12は、前記式(1)のi(=P)とiのみを用いればよい。
【0036】
また、アップサンプルの倍率を8倍とする場合、図6に示すように、前記式(1)のi~iまでの係数をスプライン曲線等で滑らかにつなぎ、各係数の間の値を、補間した8倍のアップサンプル係数とすればよい。
具体的には、アップサンプル手段12は、以下の式(2)により、図5の画素位置x-x間を8等分した座標位置(サブ画素位置)の画素値i~iを割り当てる。式(2)中、iは、画素位置xの画素値Pと同じである。
【0037】
【数2】
【0038】
アップサンプル手段12は、サブ画素(例えば、1/8画素)精度にアップサンプルした周辺視点映像を、マッチング誤差算出手段13に出力する。同様にして、8倍以上のアップサンプルのフィルタも容易に求めることができるため、アップサンプル倍率は8倍以上であってもよい。
【0039】
マッチング誤差算出手段13は、対象視点映像と周辺視点映像との間の対応する画素のずれ(マッチング誤差)を仮想の奥行値ごとに算出するものである。なお、マッチング誤差算出手段13は、マッチング誤差を、1画素のマッチングではなく、3×3画素等のブロック単位で算出することで、より正確にマッチング誤差を算出する。ここでは、マッチング誤差算出手段13は、方向別信頼度重み算出手段130と、奥行・方向別マッチング誤差算出手段131と、マッチング誤差選択手段132と、を備える。
【0040】
方向別信頼度重み算出手段130は、対象視点映像の画素ごとに、水平方向および垂直方向別にマッチング誤差の信頼度重みを算出するものである。信頼度重みは、マッチング誤差の信頼度を上げるための重みである。
通常、テキスチャの変化が少なく、ブロック内の画素値の差が小さい場合、正しくない奥行値であってもマッチング誤差が小さくなる。そこで、奥行き推定の誤りを防ぐため、方向別信頼度重み算出手段130は、対象視点映像の画素ごとに、隣接する画素との画素値の変化(テクスチャの傾き)が大きいときには値を小さく、小さいときには値を大きくした信頼度重みを算出する。
【0041】
具体的には、方向別信頼度重み算出手段130は、対象視点映像入力手段10で入力された対象視点映像の画素位置(x,y)において、以下の式(3)に示すように、上下の画素値P(x,y-1),P(x,y+1)の差分の絶対値から、テキスチャの垂直方向の傾きSTBを算出する。
【0042】
【数3】
【0043】
また、方向別信頼度重み算出手段130は、対象視点映像の画素位置(x,y)において、以下の式(4)に示すように、左右の画素値P(x-1,y),P(x+1,y)の差分の絶対値から、テキスチャの水平方向の傾きSLRを算出する。
【0044】
【数4】
【0045】
そして、方向別信頼度重み算出手段130は、ブロック内の画素において、傾きSTB,SLRをそれぞれ算出し、中心位置ほど大きな重みを付加して、方向別に平均化することで、画素位置(x,y)における水平方向のテキスチャの傾きSおよび垂直方向のテキスチャの傾きSを算出する。重みは、例えば、ブロックが3×3画素の場合、中心位置の傾きの重みを2/4とし、両端位置の傾きの重みをそれぞれ1/4とする。
そして、方向別信頼度重み算出手段130は、方向別にテキスチャの傾きS(SおよびS)に対応した信頼度重みW(WおよびW)を以下の式(5)により算出する。
【0046】
【数5】
【0047】
ここで、minおよびthは予め定めた定数で、minは傾きの許容最小値を示し、thは信頼度重みを“1”とする最小の傾きの閾値(信頼度閾値)を示す。
この式(5)で計算される傾きSと信頼度重みWのグラフを図7に示す。なお、信頼度重みWは、テキスチャの傾きSが大きければ小さく、テキスチャの傾きSが小さければ大きいものであればよく、必ずしも式(5)で算出されたものに限らない。
方向別信頼度重み算出手段130は、算出した方向(水平方向および垂直方向)別の信頼度重みW(WおよびW)を、マッチング誤差選択手段132に出力する。
【0048】
奥行・方向別マッチング誤差算出手段131は、対象視点映像入力手段10で入力された対象視点映像と、アップサンプル手段12でアップサンプルされた周辺視点映像との間で、奥行(仮定奥行値)別、かつ、方向(上下左右)別に、画素のマッチング誤差を算出するものである。
仮定奥行値は、被写体Oの奥行値を仮に設定する値であって、最小視差量に対応する奥行値から最大視差量に対応する奥行値までの値をとる。例えば、奥行値を8ビットのデータで表す場合、仮定奥行値は、“0”(最小奥行値dmin)から“255” (最大奥行値dmax)の範囲の値をとる。
【0049】
対象視点映像に対応する方向別の周辺視点映像は、図4で説明したように、最大4方向(上下左右)となる。
例えば、図4(e)のように、対象視点映像Iに対して、4方向すべてに周辺視点映像が存在する場合、奥行・方向別マッチング誤差算出手段131は、以下の式(6)に示すように、すべての方向でマッチング誤差E(E,E,E,E)を算出する。
【0050】
【数6】
【0051】
ここで、E(x,y,d)は、対象視点映像Iの画素位置(x,y)の仮定奥行値をdとしたときの上視点映像Iの画素位置(x,y-d)との画素値の差(絶対値)である。仮定奥行値dは、上視点映像内の画素位置のずれ量を表している。E,E,Eについても、方向が異なるだけで、Eと同様の仮定奥行値dに対応する画素値の差である。
仮定奥行値dは、最小奥行値dminから最大奥行値dmaxまで、単位ずらし量Δだけ順次ずらした値である。
単位ずらし量Δは、アップサンプル手段12で用いた倍率の逆数であって、サブ画素に相当する。例えば、アップサンプル手段12で用いた倍率が“8”であれば、単位ずらし量Δは1/8とする。
【0052】
なお、前記式(6)は、すべての方向(上下左右)について、マッチング誤差を算出する式であるが、図4に示したように、存在しない方向の周辺視点映像については、奥行・方向別マッチング誤差算出手段131は、マッチング誤差の算出を行わないこととする。
これによって、奥行・方向別マッチング誤差算出手段131は、奥行別かつ方向別に、画素のマッチング誤差をサブ画素レベルで算出することができる。
奥行・方向別マッチング誤差算出手段131は、対象視点映像の画素および奥行きごとに、対応する最大4方向のマッチング誤差を、マッチング誤差選択手段132に出力する。
【0053】
マッチング誤差選択手段132は、方向別信頼度重み算出手段130で算出された方向別の信頼度重みを、奥行・方向別マッチング誤差算出手段131で算出された画素および奥行きごとの最大4方向のマッチング誤差E,E,E,Eに適宜掛けたものを新たなマッチング誤差として、その中から、最小のマッチング誤差を選択するものである。マッチング誤差選択手段132は、信頼度重み付きマッチング誤差の最小値を選択することで、周辺視点映像の画素の中で、最も対象視点映像の画素に類似する画素を選ぶことができ、精度の高い奥行きを推定することを可能にしている。
【0054】
具体的には、マッチング誤差選択手段132は、仮定奥行値dごとに、対象視点映像の画素位置(x,y)について、上方向のマッチング誤差Eおよび下方向のマッチング誤差Eについては垂直方向の信頼度重みWを乗算し、左方向のマッチング誤差Eおよび右方向のマッチング誤差Eについては水平方向の信頼度重みWを乗算する。そして、マッチング誤差選択手段132は、重みを付加(乗算)した最大4つのマッチング誤差(信頼度重み付きマッチング誤差)の最小値を、画素位置(x,y)の仮定奥行値dにおけるマッチング誤差とする。
これによって、テキスチャの変化が少なく、ブロック内の画素値の差が小さい場合に、誤ってマッチング誤差が小さくなることを防止することができる。
【0055】
マッチング誤差選択手段132は、仮定奥行値dごとに、対象視点映像の画素位置(x,y)について選択した最小の信頼度重み付きマッチング誤差E(x,y、d)をマッチング誤差記憶手段14に記憶する。
【0056】
マッチング誤差記憶手段14は、マッチング誤差算出手段13で算出された信頼度重み付きマッチング誤差E(x,y、d)を記憶するものである。マッチング誤差記憶手段14は、一般的な半導体メモリ等の記憶媒体で構成することができる。
このマッチング誤差記憶手段14には、マッチング誤差算出手段13によって、図8に示すように、対象視点映像の映像幅Xと映像高Yとに対応する各画素位置(0,0)~(X,Y)と仮定奥行値d(dmin~dmax)に対応付けて、マッチング誤差Eが記憶される。
【0057】
なお、マッチング誤差記憶手段14に記憶されている仮定奥行値ごとのマッチング誤差は、後記する奥行平滑化手段15によって、仮定奥行値を平滑化するために用いられ、画素ごとの最適な仮定奥行値、すなわち、画素ごとの視差量が設定された奥行マップが得られることになる。
【0058】
奥行平滑化手段15は、マッチング誤差記憶手段14に記憶されている仮定奥行値ごとのマッチング誤差により、仮定奥行値を平滑化し、対象視点映像に対する奥行マップを生成するものである。
奥行平滑化手段15は、マッチング誤差と隣接する画素間での画素値の奥行きの連続性重みとから、仮定奥行値の正しさを評価する予め定めた評価関数を用いて、評価値が最も小さい奥行値を画素ごとに選択することで、奥行マップを生成するものである。
具体的には、奥行平滑化手段15は、マッチング誤差記憶手段14に記憶されているすべてのマッチング誤差E(x,y,d)に対して、以下の式(7)に示す評価関数により、仮定奥行値dごとの評価値Gを算出する。
【0059】
【数7】
【0060】
ここで、dは画素位置(x,y)に隣接する右側の画素の仮定奥行値であり、dは画素位置(x,y)に隣接する下側の画素の仮定奥行値である。
λは水平方向の連続性重みであり、λは垂直方向の連続性重みである。
この評価値Gは、隣接する画素(右、下)との奥行値の差が大きければ、連続性が小さいため大きな値となり、奥行値の差が小さければ、連続性が高いため小さな値となる。
【0061】
奥行平滑化手段15は、すべての画素における前記式(7)で算出した評価値Gの和が最小となる画素ごとの仮定奥行値dを選択することで、対象視点映像に対する奥行マップを生成する。すなわち、奥行平滑化手段15は、仮定奥行値dごとに、すべての画素における前記式(7)で算出した評価値Gの和が最小となるように、画素ごとに与えられている仮定奥行値dを新たな仮定奥行値dで置き換えるか否かを決定していき、すべての仮定奥行値の評価が終了した段階で残った仮定奥行値を、画素に対応する奥行値として決定する。この評価値(エネルギー)を最小化する手法は、グラフカット手法として一般的であるため、ここでは、詳細な説明は省略する。
【0062】
なお、連続性重みλは、対象視点映像において、水平方向にテキスチャのエッジがある場合、エッジがない場合に比べて小さな値(例えば、エッジがない場合のλの1/2等)としてもよい。また、連続性重みλは、対象視点映像において、垂直方向にテキスチャのエッジがある場合、エッジがない場合に比べて小さな値(例えば、エッジがない場合のλの1/2等)としてもよい。その場合、奥行平滑化手段15は、対象視点映像入力手段10を介して、エッジ検出の対象となる対象視点映像を入力することとする。
【0063】
エッジがある場合に、連続性重みを小さくすることで、評価値Gの値は小さくなり、当該画素の仮定奥行値が隣接画素の奥行値から大きく異なっていても、選択される確率を高めることになる。これによって、背景Oと前景O図1参照)とが非連続である場合に、当該画素の仮定奥行値が、隣接する別の被写体の奥行値とは独立に選択されることで、前景Oと背景Oとの境界で同じ奥行値となってしまうことを防止することができる。
例えば、奥行平滑化手段15は、対象視点映像の画素位置(x,y)にテキスチャのエッジがある場合、外部から与えられる定数である平滑係数λに、外部から与えられる重みρ(0~1)を掛けた値を、連続性重みλ,λとする。また、奥行平滑化手段15は、画素位置(x,y)にテキスチャのエッジがない場合、平滑係数λをそのまま連続性重みλ,λとする。これによって、テキスチャのエッジがない、すなわち同じ被写体の中の画素は、隣接する画素の奥行値に近い奥行値が選択されることとなる。
【0064】
なお、テキスチャのエッジは、図9に示すように、画素位置(x,y)の水平方向および垂直方向のそれぞれ4画素の画素値で検出することができる。
例えば、画素位置(x,y)の水平方向におけるエッジを検出する場合、奥行平滑化手段15は、画素値P(x-3,y),P(x-1,y),P(x+1,y),P(x+3,y)から得られる3個の傾きS1,S2,S3を、以下の式(8)で算出する。
【0065】
【数8】
【0066】
そして、奥行平滑化手段15は、以下の式(9)の条件を満たす場合に、画素位置(x,y)の水平方向にエッジがある(Edge=1)と検出する。
【0067】
【数9】
【0068】
また、画素位置(x,y)の垂直方向におけるエッジを検出する場合、奥行平滑化手段15は、画素値P(x,y-3),P(x,y-1),P(x,y+1),P(x,y+3)からエッジを検出する。これは、xとyとを置き換えて、前記式(8),式(9)を適用すればよい。
奥行平滑化手段15は、対象視点映像に対して生成した奥行マップを、奥行マップ出力手段16に出力する。
【0069】
奥行マップ出力手段16は、奥行平滑化手段15で生成された奥行マップを視点映像(対象視点映像)と対応付けて外部に出力するものである。例えば、奥行マップ出力手段16は、対象視点映像と奥行マップとを、視点映像を特定する位置情報(例えば、カメラC11~Cmnの識別情報)で対応付けて出力する。
【0070】
以上説明したように奥行推定装置1を構成することで、奥行推定装置1は、水平方向および垂直方向の視差により奥行マップを推定するため、従来よりもオクルージョン部を減らすことができる。また、奥行推定装置1は、奥行マップを生成する対象となる視点映像の周辺の視点映像をアップサンプルすることで、サブ画素単位で奥行きを推定することができる。これによって、奥行推定装置1は、分解能を高めた高品質な奥行マップを生成することができる。なお、奥行推定装置1は、コンピュータを、前記した各手段として機能させるためのプログラム(奥行推定プログラム)で動作させることができる。
【0071】
〔奥行推定装置の動作〕
次に、図10を参照して(構成については適宜図3参照)、本発明の実施形態に係る奥行推定装置1の動作について説明する。
【0072】
ステップS1において、奥行推定装置1は、奥行きを推定する対象となる視点映像(対象視点映像)、および、その周辺の視点映像(周辺視点映像)を入力する。このとき、対象視点映像入力手段10は、多視点カメラCから、順次、対象視点映像を入力し、周辺視点映像入力手段11は、対象視点映像の最大4方向の周辺視点映像を入力する。
【0073】
ステップS2において、アップサンプル手段12は、ステップS1で入力された周辺視点映像を、アップサンプルする。このとき、アップサンプル手段12は、バイキュービックフィルタのアップサンプル係数を用いてアップサンプルすることで、サブ画素単位の画素値をより正確に表現することができる。
【0074】
ステップS3において、マッチング誤差算出手段13の方向別信頼度重み算出手段130は、ステップS1で入力した対象視点映像において、画素ごとに、水平方向および垂直方向別のテキスチャの傾きによりマッチング誤差の信頼度重みを算出する(式(3)~式(5)参照)。
【0075】
ステップS4において、奥行・方向別マッチング誤差算出手段131は、ステップS1で入力した対象視点映像の画素ごとに、ステップS2でアップサンプルされた周辺視点映像との間で、奥行(仮定奥行値)別、かつ、方向(上下左右)別に、画素のマッチング誤差を算出する(前記式(6)参照)。
【0076】
ステップS5において、マッチング誤差選択手段132は、奥行きごとに、ステップS3で算出された方向別の信頼度重みを、ステップS4で算出された方向別のマッチング誤差に乗算し、最小値となるマッチング誤差を選択し、マッチング誤差記憶手段14に記憶する。
【0077】
ステップS6において、マッチング誤差算出手段13は、対象視点映像のすべての画素において、奥行別のマッチング誤差をマッチング誤差記憶手段14に記憶したか否かを判定する。
ここで、対象視点映像のすべての画素において処理が完了していない場合(ステップS6でNo)、マッチング誤差算出手段13は、ステップS3に戻って、対象視点映像の画素ごとの処理を継続する。
【0078】
一方、対象視点映像のすべての画素において処理が完了した場合(ステップS6でYes)、ステップS7において、奥行平滑化手段15は、マッチング誤差記憶手段14に記憶されている仮定奥行値ごとのマッチング誤差を用いて、仮定奥行値を平滑化して、奥行マップを生成する。
【0079】
ステップS8において、奥行マップ出力手段16は、ステップS7で生成した奥行マップを、ステップS1で入力した視点映像(対象視点映像)と対応付けて、外部に出力する。
以上の動作によって、奥行推定装置1は、水平方向および垂直方向のサブ画素単位の視差により奥行マップを推定するため、分解能を高めた高品質な奥行きマップを生成することができる。
【0080】
〔仮想視点映像生成装置の構成〕
次に、図11を参照して(適宜図1参照)、本発明の実施形態に係る仮想視点映像生成装置2の構成について説明する。
図11に示すように、仮想視点映像生成装置2は、参照視点映像入力手段20と、奥行マップ入力手段21と、アップサンプル手段22と、映像合成手段23と、オクルージョン穴補填手段24と、仮想視点映像出力手段25と、を備える。
【0081】
参照視点映像入力手段20は、仮想視点位置を指定されることで、仮想視点位置の水平方向および垂直方向が近接する視点位置に対応する視点映像を参照視点映像として入力するものである。
仮想視点位置は、多視点カメラCのカメラC11~Cmnのカメラ間の任意の位置を仮想視点として指定する位置情報である。
参照視点映像は、仮想視点位置を囲む視点位置(参照視点位置)の視点映像である。
参照視点映像入力手段20は、仮想視点位置において、参照すべき参照視点映像として、最大4つの視点映像を入力する。
【0082】
ここで、図12を参照(適宜図2参照)して、参照視点映像について説明する。
参照視点映像は、図12(a)に示すように、仮想視点映像Iを生成するために、左上参照視点映像RTL、右上参照視点映像RTR、左下参照視点映像RBLおよび右下参照視点映像RBRの4つとする。
例えば、カメラC11,C12,C21,C22の間に仮想視点を設定する場合、カメラC11が撮影した視点映像を左上参照視点映像RTLとし、カメラC12が撮影した視点映像を右上参照視点映像RTRとし、カメラC21が撮影した視点映像を左下参照視点映像RBLとし、カメラC22が撮影した視点映像を右下参照視点映像RBRとする。
【0083】
なお、撮影された視点映像と同じ水平位置に仮想視点が設定された場合、例えば、カメラC11,C12の間に、カメラC11,C12と同じ水平位置に仮想視点が設定された場合、参照視点映像は、図12(b)に示すように、左参照視点映像Rおよび右参照視点映像Rの2つとする。この場合、カメラC11が撮影した視点映像を、左参照視点映像Rとし、カメラC12が撮影した視点映像を右参照視点映像Rとする。
また、撮影された視点映像と同じ垂直位置に仮想視点が設定された場合、例えば、カメラC11,C21の間に、カメラC11,C21と同じ垂直位置に仮想視点が設定された場合、参照視点映像は、図12(c)に示すように、上参照視点映像Rおよび下参照視点映像Rの2つとする。この場合、カメラC11が撮影した視点映像を、上参照視点映像Rとし、カメラC21が撮影した視点映像を下参照視点映像Rとする。
図11に戻って、仮想視点映像生成装置2の構成について説明を続ける。
【0084】
参照視点映像入力手段20は、入力した参照視点映像をアップサンプル手段22に出力する。また、参照視点映像入力手段20は、入力した参照視点映像を特定する位置情報(例えば、カメラC11~Cmnの識別情報)を、奥行マップ入力手段21に出力する。
【0085】
奥行マップ入力手段21は、参照視点映像入力手段20が入力した参照視点映像に対応する奥行マップを入力するものである。すなわち、奥行マップ入力手段21は、参照視点映像に対応した最大4つの奥行マップを入力する。
奥行マップ入力手段21は、入力した奥行マップを、対応する参照視点映像を特定する位置情報(例えば、カメラC11~Cmnの識別情報)とともに、映像合成手段23およびオクルージョン穴補填手段24に出力する。
【0086】
アップサンプル手段(参照視点映像アップサンプル手段)22は、参照視点映像入力手段20で入力した参照視点映像をアップサンプルするものである。なお、アップサンプル手段22は、奥行きマップの精度、すなわち、図3で説明した奥行推定装置1のアップサンプル手段12と同じ倍率のフィルタを用いて参照視点映像をアップサンプルする。例えば、奥行推定装置1のアップサンプル手段12において8倍のアップサンプルを行った場合、アップサンプル手段22も、8倍のアップサンプルを行う。なお、アップサンプル手段22におけるフィルタの係数は、アップサンプル手段12と同じであるため、説明を省略する。また、アップサンプル手段22は、奥行推定装置1で行った倍率以下のアップサンプルを行ってもよい。その場合、与えられた奥行値を、存在するサブ画素の分解能に合わせて丸めればよい。
アップサンプル手段22は、アップサンプルした参照視点映像を、映像合成手段23に出力する。
【0087】
映像合成手段23は、アップサンプル手段22でアップサンプルされた複数の参照視点映像と、参照視点映像に対応して奥行マップ入力手段21で入力した奥行マップとから、仮想視点位置の視点映像を合成するものである。
映像合成手段23は、まず、それぞれの参照視点映像において、対応する奥行マップで特定される奥行値の視差分だけ画素位置をシフトする。
例えば、図12(a)の左上参照視点映像RTLから仮想視点映像Iを生成する場合、左上参照視点映像RTLの画素を、当該画素に対応する奥行マップのサブ画素単位の奥行値に応じて、左上方向にシフトさせることで、仮想視点映像Iを生成する。
【0088】
シフト量は、水平方向(ここでは、左方向)については、左上参照視点映像RTLの視点位置と仮想視点映像Iの視点位置との水平距離を、奥行値を求めたときに使った参照視点位置までの距離の値で割った値で、奥行値を割った値とし、垂直方向(ここでは、上方向)については、左上参照視点映像RTLの視点位置と仮想視点映像Iの視点位置との垂直距離を、奥行値を求めたときに使った参照視点位置までの距離の値で割った値で、奥行値を割った値とする。
なお、他の参照視点映像から仮想視点映像Iを生成する場合、シフトする方向が異なるだけで、前記した左上参照視点映像RTLと同様にしてシフト量を算出することができる。
【0089】
そして、映像合成手段23は、それぞれの参照視点映像から生成した最大4つの仮想視点映像の各画素値に、元となる参照視点映像と仮想視点映像との距離の逆数、または、距離の2乗の逆数に比例する重みを付けて、当該画素を構成するサブ画素全体で加算平均化する。これによって、映像合成手段23は、最大4つの参照視点映像から、1つの仮想視点映像を生成する。
映像合成手段23は、生成した仮想視点映像をオクルージョン穴補填手段24に出力する。
【0090】
オクルージョン穴補填手段24は、映像合成手段23で生成された仮想視点映像において、どの参照視点映像からも画素値が得られなかった共通のオクルージョン穴の画素を補填するものである。
具体的には、オクルージョン穴補填手段24は、オクルージョン穴について、隣接する縦横斜めの最大16方向に存在する画素のうちで、仮想視点映像に対応する奥行マップの奥行値が最も小さい画素の画素値を使って補填する。仮想視点映像に対応する奥行マップは、参照視点映像の各画素の奥行値を、仮想視点映像内の対応する画素位置にコピーすることで得られる。参照視点映像が複数ある場合は、各参照視点位置の奥行マップから得られた仮想視点位置の奥行マップの重み付き加算平均とすればよい。
これによって、オクルージョン穴は、背景側の類似の画素で補填されることになり、画質の劣化を抑えることができる。
【0091】
さらに、オクルージョン穴補填手段24は、オクルージョン穴の境界について、低域フィルタをかけることとしてもよい。例えば、オクルージョン穴の境界が水平方向に隣接する画素の画素値をP(x,y)、P(x+1,y)としたとき、新たな画素値P(x,y)とその近傍の画素値P(x-1,y)、P(x+1,y)を、以下の式(10)に示す順番で求める。
【0092】
【数10】
【0093】
なお、オクルージョン穴の境界が垂直方向に隣接する画素については、xとyとを置き換えて、前記式(10)を適用すればよい。
これによって、オクルージョン穴補填手段24は、一部の参照視点映像からはオクルージョンとなるが、他の参照視点映像からはオクルージョンとならないオクルージョン穴の境界が、参照視点映像の対応する画素値の色の違いによって目立ってしまう症状を防止することができる。このように、オクルージョン穴補填手段24は、簡易な演算で、オクルージョン穴境界の画素値の変化を滑らかにして、境界を目立たなくすることができる。
【0094】
オクルージョン穴補填手段24は、各参照視点映像から得られた各仮想視点映像ごとのすべてのオクルージョン穴の境界に低域フィルタをかけることとしてもよい。ただし、この場合、見た目は滑らかになるが、生成された仮想視点映像の信号対雑音比が低下し、映像がぼけてしまうため、すべての参照視点映像に共通するオクルージョン穴の境界にのみフィルタをかけることが好ましい。
オクルージョン穴補填手段24は、オクルージョン穴を補填した仮想視点映像を、仮想視点映像出力手段25に出力する。
【0095】
仮想視点映像出力手段25は、オクルージョン穴補填手段24で生成された仮想視点映像を外部に出力するものである。
以上説明したように仮想視点映像生成装置2を構成することで、仮想視点映像生成装置2は、参照視点映像をアップサンプルして、奥行推定装置1で生成された分解能の高い高品質の奥行マップを用いるため、高解像度の仮想視点映像を生成することができる。なお、仮想視点映像生成装置2は、コンピュータを、前記した各手段として機能させるためのプログラム(仮想視点映像生成プログラム)で動作させることができる。
【0096】
〔仮想視点映像生成装置の動作〕
次に、図13を参照して(適宜図11参照)、本発明の実施形態に係る仮想視点映像生成装置2の動作について説明する。
【0097】
ステップS10において、仮想視点映像生成装置2の参照視点映像入力手段20は、仮想視点位置の指定を受け付ける。
ステップS11において、参照視点映像入力手段20は、ステップS10で指定された仮想視点位置において、参照すべき参照視点映像として、最大4つの視点映像を入力する。
ステップS12において、奥行マップ入力手段21は、ステップS11で入力した参照視点映像に対応する奥行マップを入力する。
【0098】
ステップS13において、アップサンプル手段22は、ステップS11で入力された参照視点映像を、アップサンプルする。このとき、アップサンプル手段22は、奥行推定装置1のアップサンプル手段12(図3参照)と同じバイキュービックフィルタのアップサンプル係数(前記式(1),式(2)参照)を用いてアップサンプルする。
ステップS14において、映像合成手段23は、ステップS13でアップサンプルされた複数の参照視点映像と、ステップS12で仮想視点位置に対応する参照視点映像として入力した奥行マップとから、仮想視点位置の視点映像を合成する。
【0099】
ステップS15において、オクルージョン穴補填手段24は、ステップS14で合成された仮想視点映像のオクルージョン穴を、当該穴に隣接する画素のうちで、仮想視点映像に対応する奥行マップの奥行値が最も小さい画素の画素値で補填する。
ステップS16において、仮想視点映像出力手段25は、ステップS15でオクルージョン穴が補填された仮想視点理想を外部に出力する。
【0100】
以上の動作によって、仮想視点映像生成装置2は、奥行推定装置1で推定された分解能の高い高品質な奥行きマップを用いて、任意の視点位置における高解像度の仮想視点映像を生成することができる。
【0101】
以上、本発明の実施形態について説明したが、本発明はこの実施形態に限定されるものではない。
ここでは、奥行推定装置1は、多視点カメラCのすべてのカメラC11~Cmnで撮影されたそれぞれの視点映像の奥行マップを推定することとした。しかし、奥行推定装置1は、アップサンプルされた高品質な奥行マップを推定し、仮想視点映像生成装置2では、任意の視点の仮想視点映像を生成することができるため、必ずしもすべてのカメラC11~Cmnの視点映像に対応する奥行マップを推定する必要はない。
【0102】
例えば、多視点カメラCを構成するカメラを水平方向9台×垂直方向9台としたときの81視点の視点映像を図14で示す。このとき、例えば、奥行推定装置1は、4視点おきに、視点映像I11,I15,I19,I51,I55,I59,I91,I95,I99の9つの視点映像について、奥行マップを推定する。
この場合でも、仮想視点映像生成装置2は、取得していない視点映像、例えば、視点映像I33については、視点映像I11,I15,I51,I55とその奥行マップとから生成することができる。
これによって、使用する多視点カメラのカメラ台数を削減することが可能である。また、奥行推定装置1から仮想視点映像生成装置2に伝送する視点映像および奥行マップのデータ量を大幅に削減することができる。
【0103】
また、ここでは、仮想視点映像生成装置2は、多視点カメラCの視点位置を含んだ仮想カメラ平面上での任意位置で仮想視点映像を生成することとした。しかし、仮想視点は、仮想カメラ平面よりも被写体に近い視点、あるいは、遠い視点を仮想視点としても構わない。
この場合、例えば、仮想視点映像生成装置2は、映像合成手段23において、参照視点映像内の各画素位置を、参照視点位置と仮想視点位置との間の水平方向と垂直方向の距離に加えて、奥行方向の距離に相当する視差量のシフトを行って、仮想視点映像内の画素位置を決めることで、仮想視点映像を合成すればよい。なお、仮想視点位置の奥行マップを合成する場合、参照視点位置の奥行マップの各画素を、上記と同じ視差量だけシフトした位置を、仮想視点位置の奥行マップの各画素位置とし、その画素位置の奥行値(視差量)は、上記視差量に対応する値だけ、増減させることとする。この視差量に対応する奥行値の増減量は、参照視点位置と仮想視点位置間の射影変換によって得られることが知られている。
【0104】
このように、多視点カメラCの仮想カメラ平面に対して視点位置を前後させる場合、仮想視点が被写体に近い位置に設定されると、参照視点映像では隣接していた画素が離れてしまう場合がある。
例えば、図15(a)の参照視点映像Iから、図15(b)の仮想視点映像Iを合成する場合、図15(a)で同じ奥行値dが設定されている隣接する画素が、図15(b)のように離れてしまう場合がある。その場合、映像合成手段23は、ある画素から水平方向に離れた距離D、垂直方向に離れた距離Dとしたとき、大きい方の距離をDとして、水平D/2画素の距離以内、垂直D/2画素の距離以内の画素について、中心画素と同じ画素値を割り当てることで画素のサイズを拡大する。これによって、仮想視点が被写体に近い場合でも、合成した仮想視点映像に小さな穴が開くことを防止することができる。
【0105】
また、この場合、仮想視点位置が参照視点位置より、被写体により近い場合、仮想視点位置の奥行マップの奥行値が、参照視点位置の奥行マップに与えられている奥行値の許容範囲よりも値が大きくなる(視差が広がる)ことがある。そこで、映像合成手段23においては、多視点カメラCの視点位置における被写体の予め想定される奥行値よりも大きい奥行値を演算可能な演算器を使用することとする。例えば、多視点カメラCの参照視点位置における被写体の奥行値の語長が8ビットである場合、映像合成手段23においては、例えば、16ビットの演算器を用いることとする。これによって、仮想視点位置が参照視点位置よりも被写体に近い場合であっても、正しく仮想視点映像を生成することができる。
【符号の説明】
【0106】
1 奥行推定装置
10 対象視点映像入力手段
11 周辺視点映像入力手段
12 アップサンプル手段(周辺視点映像アップサンプル手段)
13 マッチング誤差算出手段
130 方向別信頼度重み算出手段
131 奥行・方向別マッチング誤差算出手段
132 マッチング誤差選択手段
14 マッチング誤差記憶手段
15 奥行平滑化手段
16 奥行マップ出力手段
2 仮想視点映像生成装置
20 参照視点映像入力手段
21 奥行マップ入力手段
22 アップサンプル手段(参照視点映像アップサンプル手段)
23 映像合成手段
24 オクルージョン穴補填手段
25 仮想視点映像出力手段
S 多視点映像生成システム
C 多視点カメラ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15