(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024070970
(43)【公開日】2024-05-24
(54)【発明の名称】3次元映像表示用データ生成装置およびそのプログラム
(51)【国際特許分類】
H04N 13/293 20180101AFI20240517BHJP
H04N 13/282 20180101ALI20240517BHJP
G03B 35/18 20210101ALI20240517BHJP
G02B 30/10 20200101ALN20240517BHJP
【FI】
H04N13/293
H04N13/282
G03B35/18
G02B30/10
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022181635
(22)【出願日】2022-11-14
(71)【出願人】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】渡邉 隼人
(72)【発明者】
【氏名】岡市 直人
(72)【発明者】
【氏名】加納 正規
(72)【発明者】
【氏名】佐々木 久幸
(72)【発明者】
【氏名】洗井 淳
(72)【発明者】
【氏名】藤井 俊彰
【テーマコード(参考)】
2H059
2H199
5C061
【Fターム(参考)】
2H059AB13
2H199BA19
2H199BB03
2H199BB18
2H199BB52
2H199BB63
5C061AA06
5C061AB16
(57)【要約】
【課題】3次元映像表示用データ生成装置を提供する。
【解決手段】3次元映像表示用データ生成装置1は、3Dシーンデータから原映像を生成する原映像生成部11と、3Dシーンデータから、インテグラル3次元映像の表示面から遠いほど重みが小さくなるような重みマップを生成する重みマップ生成部13と、原映像と2次元映像との差分からインテグラル3次元映像を生成する3D映像輝度算出部140と、原映像とインテグラル3次元映像との差分に重みマップを乗算して2次元映像を生成する2D映像輝度算出部141と、3D映像輝度算出部140と2D映像輝度算出部141とを繰り返して実行させる繰り返し実行部142と、インテグラル3次元映像から要素画像群を生成する要素画像群生成部15と、要素画像群と2次元映像とを表示用データとして出力するデータ出力部16と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
インテグラル3次元映像と2次元映像とを合成した合成3次元映像を表示する3次元映像表示装置で使用する表示用データを生成する3次元映像表示用データ生成装置であって、
3Dシーンデータから、視点ごとの映像を原映像として生成する原映像生成部と、
前記3Dシーンデータから、前記視点ごとに、前記インテグラル3次元映像の表示面から遠いほど重みが小さくなるような重みマップを生成する重みマップ生成部と、
前記視点ごとに、2次元映像の画素位置に対応する前記原映像の輝度値と前記2次元映像の輝度値との差分から、前記インテグラル3次元映像の画素ごとの輝度値を算出する3D映像輝度算出部と、
前記視点ごとに、前記2次元映像の画素位置に対応する前記原映像の輝度値と前記インテグラル3次元映像の輝度値との差分に前記重みマップを乗算して算出値をすべての視点で加算平均することで、前記2次元映像の画素ごとの輝度値を算出する2D映像輝度算出部と、
前記3D映像輝度算出部と前記2D映像輝度算出部とに、予め定めた条件で繰り返して実行させる繰り返し実行部と、
前記予め定めた条件で繰り返した後の前記3D映像輝度算出部が算出した前記視点ごとのインテグラル3次元映像の輝度値から、要素画像群を生成する要素画像群生成部と、
前記要素画像群生成部が生成した要素画像群と、前記予め定めた条件で繰り返した後の前記2D映像輝度算出部が算出した2次元映像とを、前記表示用データとして出力するデータ出力部と、
を備えることを特徴とする3次元映像表示用データ生成装置。
【請求項2】
前記重みマップ生成部は、前記合成3次元映像を前記インテグラル3次元映像の表示面に近い位置に表示するほど重みを大きくし、前記合成3次元映像を前記インテグラル3次元映像の表示面から遠い位置に表示するほど重みを小さくして、前記重みマップを生成することを特徴とする請求項1に記載の3次元映像表示用データ生成装置。
【請求項3】
前記重みマップ生成部は、前記重みマップに対して膨張処理を適用することを特徴とする請求項1に記載の3次元映像表示用データ生成装置。
【請求項4】
前記原映像生成部が生成する前記原映像はカラー映像であって、
前記原映像のカラーの画素値を、予め画素値と輝度値とを対応付けた対応表を参照して輝度値に変換する輝度値変換部をさらに備え、
前記データ出力部は、
前記要素画像群の輝度値を、前記対応表を参照してカラーの画素値に変換する要素画像群画素値変換部と、
前記2次元映像の輝度値を、前記対応表を参照してカラーの画素値に変換する2次元映像画素値変換部と、
をさらに備えることを特徴とする請求項1に記載の3次元映像表示用データ生成装置。
【請求項5】
前記繰り返し実行部は、予め定めた回数だけ繰り返しを実行させることを特徴とする請求項1に記載の3次元映像表示用データ生成装置。
【請求項6】
前記繰り返し実行部は、前記2次元映像と前記インテグラル3次元映像との輝度値の和と、前記原映像の輝度値との誤差が予め定めた値よりも小さくなるまで、前記3D映像輝度算出部と前記2D映像輝度算出部とを繰り返して実行させることを特徴とする請求項1に記載の3次元映像表示用データ生成装置。
【請求項7】
コンピュータを、請求項1から請求項6のいずれか一項に記載の3次元映像表示用データ生成装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3次元映像表示用データ生成装置およびそのプログラムに関する。
【背景技術】
【0002】
近年、3Dメガネを用いた2眼方式をはじめとして、多種多様な3次元映像表示装置が提案されている。なかでも、インテグラル3次元(3D)表示方式は、物体からの光線情報を忠実に再現することで、水平と垂直の両方向に視差がある自然な3次元映像を特殊なメガネを用いることなく観察者に提示することができる(非特許文献1参照)。このインテグラル3D表示方式では、表示デバイスの前面に多数の微小なレンズで構成されるレンズアレイを配置し、表示デバイスに要素画像群を表示することでインテグラル3D映像を表示する。
しかし、インテグラル3D映像の最大画素数はレンズアレイを構成するレンズの個数に制約され、一般的な表示デバイスの画素数の数百分の一になる。そのため、インテグラル3D映像の解像度特性は低く、文字などの細かな形状の表示が難しいという問題がある。
【0003】
そこで、インテグラル3D映像の解像度特性を向上させるために、インテグラル3D映像に高精細な2次元(2D)映像を合成する方法が提案されている(特許文献1参照)。この方法では、インテグラル3D映像と2D映像とを合成したときの光線の輝度値と、再生したい所望の3D映像の輝度値との差が最小化されるように要素画像群と2D映像とを生成する。
そして、この方法は、2D映像の合成により、インテグラル3D映像の画素内に細かな輝度変化を生じさせることで、最大画素密度が高い3D映像を表示することができる。
【先行技術文献】
【特許文献】
【0004】
【非特許文献】
【0005】
【非特許文献1】F. Okano, H. Hoshino, J. Arai, and I. Yuyama, “Real-time pickup method for a three-dimensional image based on integral photography,”Appl. Opt., vol. 36, no. 7, pp. 1598-1603 (1997).
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、特許文献1に記載された方法によって表示される3D映像の輝度値は、再生したい所望の3D映像の輝度値と比べて必ず誤差を含む。特に、3D映像を表示面(レンズアレイ面)に対して前方または後方の奥行き方向の位置をより離して表示したときには、解像度特性の向上効果が小さいうえ、この輝度値の誤差が表示画面中のノイズとして目立って観察される場合があり、改善の余地がある。
そこで、本発明は、インテグラル3D映像と2D映像とを合成する際に、3D映像を表示面に対して奥行き方向の位置を離して表示しても、ノイズを抑えて3D映像を表示することが可能な3次元映像表示用データを生成する3次元映像表示用データ生成装置およびそのプログラムを提供することを課題とする。
【課題を解決するための手段】
【0007】
前記課題を解決するため、本発明に係る3次元映像表示用データ生成装置は、インテグラル3次元映像と2次元映像とを合成した合成3次元映像を表示する3次元映像表示装置で使用する表示用データを生成する3次元映像表示用データ生成装置であって、原映像生成部と、重みマップ生成部と、3D映像輝度算出部と、2D映像輝度算出部と、繰り返し実行部と、要素画像群生成部と、データ出力部と、を備える構成とした。
【0008】
かかる構成において、3次元映像表示用データ生成装置は、原映像生成部によって、3Dシーンデータから、視点ごとの映像を原映像として生成する。
また、3次元映像表示用データ生成装置は、重みマップ生成部によって、3Dシーンデータから、視点ごとに、インテグラル3次元映像の表示面から遠いほど重みが小さくなるような重みマップを生成する。
【0009】
そして、3次元映像表示用データ生成装置は、3D映像輝度算出部によって、視点ごとに、2次元映像の画素位置に対応する原映像の輝度値と2次元映像の輝度値との差分から、インテグラル3次元映像の画素ごとの輝度値を算出する。
さらに、3次元映像表示用データ生成装置は、2D映像輝度算出部によって、視点ごとに、2次元映像の画素位置に対応する原映像の輝度値とインテグラル3次元映像の輝度値との差分に重みマップを乗算して算出値をすべての視点で加算平均することで、2次元映像の画素ごとの輝度値を算出する。これによって、重みが小さいほど、2次元映像の輝度値が小さくなる。重みマップは、インテグラル3次元映像の表示面から遠いほど重みが小さくなるため、表示面から遠いほど、インテグラル3次元映像と合成する2次元映像の輝度値が小さく、インテグラル3次元映像への影響が小さくなるため、ノイズを抑えることが可能になる。
【0010】
そして、3次元映像表示用データ生成装置は、繰り返し実行部によって、3D映像輝度算出部と2D映像輝度算出部とに、予め定めた条件で繰り返して実行させる。
これによって、2次元映像とインテグラル3次元映像との輝度値の和と、原映像の輝度値との差が小さくなる方向に作用することになる。
【0011】
そして、3次元映像表示用データ生成装置は、要素画像群生成部によって、予め定めた条件で繰り返した後の前記3D映像輝度算出部が算出した視点ごとのインテグラル3次元映像の輝度値から要素画像群を生成する。
【0012】
そして、3次元映像表示用データ生成装置は、データ出力部によって、要素画像群生成部が生成した要素画像群と、予め定めた条件で繰り返した後の2D映像輝度算出部が算出した2次元映像とを、表示用データとして出力する。
なお、3次元映像表示用データ生成装置は、コンピュータを、前記した各部として機能させるためのプログラムで動作させることができる。
【発明の効果】
【0013】
本発明によれば、重みマップを用いることで、3次元映像の表示面から近い位置では解像度特性が向上し、表示面から遠い位置ではノイズを低減した3次元映像を3次元映像表示装置で表示することが可能な表示用データを生成することができる。
【図面の簡単な説明】
【0014】
【
図1】本発明の実施形態に係る3次元映像表示用データ生成装置の構成を示すブロック図である。
【
図2】インテグラル3D映像と2D映像とを合成して3次元映像を表示する3次元映像表示装置の構成を示す構成図である。
【
図3】
図2の3次元映像表示装置と光学的に等価な構成であって、3次元映像表示装置の基本原理を説明するための説明図である。
【
図4】xyz軸の3次元空間における3Dシーンの一例を示す図である。
【
図5】xyz軸と
図2の3次元映像表示装置との光学的に等価な位置関係を示す図である。
【
図7】重みマップの重み分布の設定例を示す図であって、横軸は奥行き、縦軸は重みを示す。
【
図8】
図6の原映像に対応する正面視点の重みマップを示す図である。
【
図9】
図8の重みマップに膨張処理を適用した重みマップを示す図である。
【
図10】本発明の実施形態に係る3次元映像表示用データ生成装置の動作を示すフローチャートである。
【発明を実施するための形態】
【0015】
以下、本発明の実施形態について図面を参照して説明する。
図1に、本発明の実施形態に係る3次元映像表示用データ生成装置1の構成を示す。
3次元映像表示用データ生成装置1は、3Dシーンデータから、インテグラル3D映像と2D映像とを合成した合成3次元映像を表示する3次元映像表示装置2(
図2参照)で使用する表示用データ(要素画像群および2D映像)を生成するものである。
【0016】
3Dシーンデータは、3Dモデルのデータである。3Dモデルは、3次元空間内における物体等の立体的な形状データである。
なお、3Dモデルは、3DCG制作ソフト、ボリュメトリックキャプチャ技術等で生成された一般的な3DCGモデルを使用することができる。
【0017】
ここでは、3次元映像表示用データ生成装置1が生成する表示用データである要素画像群と2D映像との関係を分かり易くするため、先に、3次元映像表示装置2について説明し、その後に、3次元映像表示用データ生成装置1について説明する。
まず、
図2,
図3を参照して、3次元映像表示装置2の基本原理について説明する。
【0018】
<3次元映像表示装置の基本原理>
3次元映像表示装置2は、インテグラル3次元映像(以下、インテグラル3D映像)と2次元映像(以下、2D映像)とを合成表示して3次元映像(以下、合成3D映像)として表示するものである。
図2に示すように、3次元映像表示装置2は、インテグラル3次元映像表示装置20と、2次元映像表示装置21と、ハーフミラー22とを備える。なお、3次元映像表示装置2は、特許文献1に記載の3次元映像表示装置を用いることができる。
【0019】
インテグラル3次元映像表示装置20は、外部から要素画像群を入力されて、インテグラル3D映像として表示するものである。インテグラル3次元映像表示装置20は、表示デバイス200と、レンズアレイ201とを備える。
【0020】
表示デバイス200は、要素画像群を表示する一般的な表示デバイスである。例えば、表示デバイス200として、液晶ディスプレイ、有機EL(Organic Electro Luminescence)ディスプレイなどの直視型表示デバイスを使用することができる。
【0021】
レンズアレイ201は、要素画像群を構成する個々の要素画像に対応した1mm程度の微小な要素レンズ201aが2次元状に配列されたものである。例えば、レンズアレイ201として、凸レンズが縦横に配列された、インテグラル方式で一般的なものを使用することができる。
レンズアレイ201は、表示デバイス200の表示面からレンズアレイ201(要素レンズ201a)の焦点距離fだけ離間して配置される。
【0022】
2次元映像表示装置21は、外部から入力される2D映像を表示するものである。例えば、2次元映像表示装置21として、表示デバイス200と同様の直視型表示デバイスを使用することができる。なお、2次元映像表示装置21と、インテグラル3次元映像表示装置20の表示デバイス200とは、表示サイズおよび画素密度がそれぞれ同程度とする。
【0023】
ハーフミラー22は、インテグラル3次元映像表示装置20が表示したインテグラル3D映像と、2次元映像表示装置21が表示した2D映像と、を合成するものである。例えば、ハーフミラー22は、インテグラル3D映像と2D映像とを光学合成するビームスプリッタを使用することができる。
インテグラル3次元映像表示装置20および2次元映像表示装置21は、表示面がそれぞれハーフミラー22の面と45度の角度となるように設置される。
【0024】
また、インテグラル3次元映像表示装置20からハーフミラー22の中心位置までの距離はDとする。Dはインテグラル3次元映像表示装置20とハーフミラー22とが重ならない距離である。
2次元映像表示装置21からハーフミラー22の中心位置までの距離はD+dとする。Dは、インテグラル3次元映像表示装置20からハーフミラー22までの距離と同じで、2次元映像表示装置21とハーフミラー22とが重ならない距離である。dは合成するインテグラル3D映像と2D映像との距離を表す実数であり、正の値だけでなく負の値や“0”でもよい。
なお、インテグラル3D映像の最大画素数は、レンズアレイ201を構成する要素レンズ201aの個数と同一であり、表示デバイス200や2次元映像表示装置21の画素数の数百分の一程度である。
【0025】
3次元映像表示装置2は、2D映像の光学合成によりインテグラル3D映像の画素内に細かな輝度変化を生じさせることで、解像度特性を向上させた合成3D映像を観察者Hに視認させることができる。
なお、3次元映像表示装置2は、ハーフミラー22によってインテグラル3D映像と2D映像とを光学合成する構成であるが、インテグラル3D映像と2D映像とを時分割多重により合成する構成であっても構わない。
このように、インテグラル3D映像と2D映像とを合成する場合、3次元映像表示装置2に入力する要素画像群と2D映像とを最適化計算により事前に生成する必要がある。
この場合、従来手法として、合成3D映像と再生したい所望の3D映像(以下、原映像)との輝度値の二乗誤差を最小化するように要素画像群と2D映像とを生成する手法が特許文献1に記載されている。
【0026】
ここで、
図3を参照(適宜
図2参照)して、合成3D映像と原映像との輝度値の二乗誤差の最小化について説明する。
図3は、
図2の3次元映像表示装置2と光学的に等価な構成を示した上面図である。なお、ここでは、説明を簡単にするため、ハーフミラー22による輝度の減衰は無視している。また、インテグラル3D映像の表示面と2D映像の表示面との距離dは正の値とした。
【0027】
図3において、s,tは、それぞれ、水平方向と垂直方向の各視点の番号である。視点数は有限個に設定する必要がある。例えば、視点数は、1個の要素レンズ201aに対応する要素画像の画素数とし、視点方向は、要素画像の画素の中心位置と対面する要素レンズ201aの中心位置とを結んだ方向とする。
視点の番号s,tは整数または小数である。例えば、水平方向と垂直方向のそれぞれの視点数をN
S,N
Tとする。
ここで、N
Sが奇数のときは、sは、以下の式(1)を満たす1刻みの整数とすればよい。
【0028】
【0029】
また、NSが偶数のときは、sは、以下の式(2)を満たす1刻みの小数とすればよい。
【0030】
【0031】
なお、tもsと同様である。
図3に示すように、インテグラル3D映像Iの表示面(奥行き位置0mmの面)は、レンズアレイ201(
図2)の面と同一であり、1個の要素レンズ201aがインテグラル3D映像の1画素である。
要素画像群Eの表示面は、レンズアレイ201からレンズアレイ201の焦点距離fだけ離間している。また、インテグラル3D映像Iの画素開口率は100%であり、光線は要素レンズ201aの全面から出射される。
【0032】
ここで、視点s,tのインテグラル3D映像I
s,tの輝度値は、要素レンズ201aの中心位置cから視点s,tの方向に引いた直線と交わる要素画像群Eの画素Epの輝度値によって決まる。なお、
図3の例では、一方向(水平方向または垂直方向)において、1個の要素レンズ201aに対応する要素画像群Eの画素数を7画素としている。
原映像(再生したい所望の3D映像)Vの表示面(奥行き位置0mmの面)は、インテグラル3D映像Iの表示面と位置が同じである。なお、原映像Vは、例えば、視点s,tと同じ視点数分の多視点映像を使用することができる。
また、2D映像L、要素画像群Eおよび原映像Vの画素ピッチは説明を簡単にするため同一(p)とする。
【0033】
図3において、2D映像L上の位置(i,j)から出射され、視点s,tの方向に進行する光線を考える。i,jは、それぞれ、水平方向と垂直方向における位置を示す実数である。位置(i,j)は有限個に設定する必要がある。例えば、位置(i,j)は、2D映像Lの各画素の中心位置とすればよい。
位置(i,j)から出射され、視点s,tの方向に進行する光線は、インテグラル3D映像Iおよび原映像Vの表示面(奥行き位置0mmの面)と位置(i-δs,j-δt)において交わる。ただし、δは2D映像Lとインテグラル3D映像Iとの距離dに比例した視差量である。ここでは、視点方向を要素画像の画素の中心位置と対面する要素レンズ201aの中心位置とを結んだ方向としているため、δは、δ=(pd)/fとなる。
【0034】
ここで、2D映像Lの位置(i,j)の輝度値をL(i,j)と表すこととする。L(i,j)は、位置情報であるi,jを入力したときに輝度値を出力するスカラー関数である。
また、原映像Vの位置(i-δs,j-δt)の輝度値をVs,t(i-δs,j-δt)と表すこととする。Vs,t(i-δs,j-δt)は、位置情報であるi,jと、視点情報であるs,tと、を入力したときに輝度値を出力するスカラー関数である。
また、位置(i-δs,j-δt)に対応するインテグラル3D映像Iの画素番号を座標(m,n)と表したうえで、そのインテグラル3D映像Iの画素の輝度値をIs,t(m,n)と表すこととする。Is,t(m,n)は、位置(i-δs,j-δt)に対応した画素番号であるm,nと、視点情報であるs,tと、を入力したときに輝度値を出力するスカラー関数である。
【0035】
このとき、以下の式(3)に従って、合成3D映像(2D映像Lとインテグラル3D映像Iとの合成映像)と、原映像Vとの輝度値の二乗誤差が最小化されるよう生成した2D映像と要素画像群とを入力することで、3次元映像表示装置2は、観察者Hに、原映像Vに近似した合成3D映像を視認させることができる。
【0036】
【0037】
以上が、3次元映像表示用データ生成装置1が生成する要素画像群と2D映像とを入力して、3D映像(合成3D映像)を表示する3次元映像表示装置2の基本原理である。
このような合成3D映像は、全体として原映像Vに近似した映像であるが、原映像Vの輝度値に対して誤差を含んでいる。また、要素画像群から生成されるインテグラル3D映像は視差を持つが、2D映像は視差を持たない映像である。そのため、この輝度値の誤差は、合成3D映像の奥行きがインテグラル3D映像の表示面(レンズアレイ面)から前方または後方に遠いほど大きくなり、ノイズとして視認されることになる。
【0038】
発明者らによる表示実験では、以下のような評価結果を得ている。実験では、レンズアレイ201のレンズピッチを1mm、焦点距離を5mm、要素画像群と2D映像の画素ピッチをともに50μmとしている。
合成3D映像をインテグラル3D映像Iの表示面に近い位置(奥行き距離0~2cm程度)に表示したとき、合成3D映像と原映像Vとの輝度値の誤差は小さくなり、解像度特性の向上効果は最も大きくなる。このとき、表示画面内に目立つノイズは生じない。
【0039】
合成3D映像をインテグラル3D映像Iの表示面から遠い位置(奥行き距離2~5cm程度)に表示したとき、合成3D映像と原映像Vとの輝度値の誤差は大きくなり、解像度特性の向上効果は小さくなる。加えて、2D映像Lの合成により、合成3D映像の画素内で生じる細かな輝度変化が、却って表示画面内にノイズとして目立って観察される場合がある。
【0040】
合成3D映像をインテグラル3D映像Iの表示面からさらに遠い位置(奥行き距離5cm以上)に表示したとき、合成3D映像と原映像Vとの輝度値の誤差はさらに大きくなり、解像度特性の向上効果はほとんど得られなくなり、合成3D映像の解像度特性は一般的なインテグラル3D映像と同等となる。ただし、2D映像Lの輝度値が低くなり、2D映像Lを合成しても合成3D映像の画素内の細かな輝度変化は生じなくなるため、表示画面内にノイズは目立たなくなる。
このように、3次元映像表示装置2は、合成3D映像をインテグラル3D映像Iの表示面に対してある程度距離を離した位置(奥行き距離2~5cm程度)に表示したとき、表示画面内にノイズが目立って観察される傾向がある。
【0041】
以下では、この3次元映像表示装置2に対して、合成3D映像をインテグラル3D映像Iの表示面から離して表示してもノイズを抑え、解像度特性を向上させた合成3D映像を表示するための表示用データ(要素画像群および2D映像)を生成する3次元映像表示用データ生成装置1の構成および動作について説明する。
【0042】
<3次元映像表示用データ生成装置の構成>
図1に戻って、本発明の実施形態に係る3次元映像表示用データ生成装置1の構成について説明する。
図1に示すように、3次元映像表示用データ生成装置1は、記憶部MEと制御部CLとを備える。
【0043】
記憶部MEは、3次元映像表示用データ生成装置1で使用する各種情報を記憶するものであって、半導体メモリ等の一般的な記憶媒体で構成することができる。
ここでは、記憶部MEは、仕様値記憶部10を備える。
【0044】
仕様値記憶部10は、表示用データを生成する対象である3次元映像表示装置2(
図2参照)を構成する各部の仕様値を記憶するものである。
仕様値記憶部10には、3次元映像表示装置2のインテグラル3次元映像表示装置20および2次元映像表示装置21を構成している表示デバイスの水平方向および垂直方向の画素数、レンズアレイ201の水平方向および垂直方向の要素レンズ201aの個数と焦点距離、2D映像の表示面とインテグラル3D映像の表示面との距離d等を予め記憶しておく。
【0045】
さらに、仕様値記憶部10には、予め画素値と輝度値とを対応付けた対応表を記憶しておく。
画素値と輝度値との対応表は、例えば、RGBの各8ビット256階調の値(画素値)と、光学的な輝度(輝度値)とを予め対応付けたものである。この対応表は、画素値が256階調の場合、RGB合計で256×3=768パターンの対応関係を予め測定して求めておく。なお、必ずしもすべてのパターンを測定する必要はなく、何点か測定し、その間を補間により生成しても構わない。
また、ここでは、対応表は、インテグラル3次元映像表示装置20および2次元映像表示装置21についてそれぞれ測定し、装置ごとに画素値と輝度値と対応付けておく。
【0046】
制御部CLは、3次元映像表示用データ生成装置1の各種制御・演算動作を行うものである。
制御部CLは、原映像生成部11と、輝度値変換部12と、重みマップ生成部13と、輝度誤差最小化部14と、要素画像群生成部15と、データ出力部16と、を備える。
【0047】
原映像生成部11は、3Dシーンデータから、視点ごとの映像(多視点映像)を原映像として生成するものである。ここでは、原映像生成部11は、3Dシーンデータから、視点ごとの映像を、一般的なRGBカラー映像として生成するものとする。
原映像生成部11は、3Dシーンデータで表される3Dモデルを仮想空間内に配置し、予め定めた有限個の視点数分の映像を原映像として生成する。すなわち、原映像生成部11は、水平方向と垂直方向の各視点の番号をs,tとして、視点s,tのすべての方向における映像を多視点映像として生成する。
原映像生成部11は、生成した原映像を輝度値変換部12に出力する。
【0048】
ここで、
図4~
図6を参照して、原映像生成部11の原映像の生成手法について説明する。
図4は、3D映像として表示したい3Dシーンの例を示したもので、xyz座標の仮想空間内に3Dモデルが配置された例を示している。ここでは、中央に円柱M1の3Dモデルが配置され、チェッカーパターンのテクスチャがマッピングされた平面M2が背景として円柱M1の後方に配置されている。円柱M1の中心はxyz軸の原点位置と同一であり、円柱M1の最も手前側(z軸が正の方向側)の奥行き位置はz
cである。また、背景の平面M2は、xy平面に平行で、3次元映像表示装置2で表示したときにノイズが目立ちやすい奥行き位置z
p(例えば、奥行き距離2~5cmの範囲の任意の位置)に配置されているものとする。
【0049】
図5は、3Dシーンのxyz軸と3次元映像表示装置2との位置関係を示している。xy平面は、インテグラル3D映像Iと原映像Vの表示面(奥行き位置0mmの面)と同一である。また、ここでは、インテグラル3D映像Iと2D映像Lの距離d(
図3参照)を“0”としている。そのため、2D映像Lの表示面もxy平面と同一である。
また、xy軸の原点位置とインテグラル3D映像I、原映像Vおよび2D映像Lの表示面の中心位置は同一とする。加えて、要素画像群E、原映像Vおよび2D映像Lの画素サイズと画素ピッチも同一とする。
図6は、正面視点の原映像Vを示したものである。
【0050】
原映像生成部11は、
図6に示す正面視点の原映像を生成する場合、
図4に示した3Dシーンを正面から正射影によりレンダリングすることで生成する。また、原映像生成部11は、斜め方向の視点の原映像を生成する場合、3Dシーンを斜投影によりレンダリングして生成する。なお、レンダリングを行う際のクリッピング領域は、インテグラル3D映像の表示領域(奥行き位置0mmにおける表示領域)と同じとする。
このように、原映像生成部11は、すべての視点s,tの方向における原映像V
s,tを多視点映像として生成する。
図1に戻って、3次元映像表示用データ生成装置1の構成について説明を続ける。
【0051】
輝度値変換部12は、原映像生成部11が生成した原映像(多視点映像)の画素値を輝度値に変換するものである。
輝度値変換部12は、仕様値記憶部10に記憶されているインテグラル3次元映像表示装置20の画素値と輝度値との対応表を参照して、カラー映像である原映像のRGBごとに画素値を輝度値に変換する。
輝度値変換部12は、画素値を輝度値に変換した原映像を輝度誤差最小化部14に出力する。
【0052】
重みマップ生成部13は、3Dシーンデータから、視点ごとに、インテグラル3D映像Iに合成する2D映像Lの重みの分布を重みマップとして生成するものである。
この重みマップの重みは、基本的にはインテグラル3次元映像Iの表示面から近いほど重みが大きく、表示面から遠いほど重みが小さくなるようにする。なお、この重みは、3次元映像表示装置2の仕様や3Dシーンの構成に応じて柔軟に設定してもよい。
重みマップ生成部13は、生成した視点ごとの重みマップを輝度誤差最小化部14に出力する。
【0053】
ここで、
図7~
図9を参照して、重みマップの生成方法について説明する。
図7は、
図4で示した3Dシーンに対する重みマップの設定例を示す。
図7のグラフは、横軸が奥行き位置、縦軸が重みである。重みの範囲は0~1である。
図7の例では、奥行き位置zが“0”のとき、重みwが“1”であり、奥行き位置zが“0”の位置から離れるに従って重みが線形的に低下するように設定している。なお、重みの設定は、3Dシーンデータに応じて予め設定されるものとする。
ここでは、z
cの重みwが“0”よりも大きいのに対し、z
pの重みwは“0”になるように設定している。
【0054】
重みマップ生成部13は、重みマップの設定に応じて、3Dシーンデータから重みマップを生成する。重みマップのクリッピング領域は、インテグラル3D映像の表示領域(奥行き位置0mmにおける表示領域)と同一とする。
【0055】
図7の重みマップの設定例で、
図4に示した3Dシーンデータから、重みマップ生成部13が生成した正面視点の重みマップWを
図8に示す。なお、重みマップを可視化するため、
図8では重み0~1が画素値0~255となるようにスケーリングしている。
円柱M1の水平方向の両端は、奥行き位置zが“0”であるため、重みは“1”であり、画素値が“255”(図中、白色)となる。水平方向においては、画素値は円柱の中央へ向かうほど連続的に低下し、中央が最も画素値が小さくなる。ただし、円柱の中央の奥行き位置はz
cであり、重みは“0”よりも大きい値となる。一方、背景の平面M2は、奥行き位置はz
pであり、重みは“0”であるため、画素値は“0”(図中、黒色)となる。
【0056】
重みマップ生成部13は、この重みマップを視点s,tの数だけ生成する。なお、重みマップは、視点s,tの方向に進行する光線と3Dモデルとの交差判定の結果から計算により求めることができる。例えば、特にUnity等のゲームエンジンを用いて、3Dシーンの中に3Dモデルを配置して、視点ごとにデプスバッファを取得することで、容易に重みマップを生成することができる。
【0057】
なお、
図8に示した重みマップを用いて、インテグラル3D映像Iと2D映像Lとを合成した場合、円柱の輪郭を跨ぐインテグラル3D映像Iの画素では、重みが“0”の領域を含むため、解像度特性の向上効果が小さくなってしまう。
そこで、重みマップ生成部13は、重みマップに対して、重みが高い領域を、要素レンズ数個分程度拡げる膨張処理を行うことが好ましい。
図9に、
図8の重みマップに対して膨張処理を行った重みマップW
Eを示す。
この膨張処理には、例えば、以下の式(4)に示す空間フィルタを使用することができる。
【0058】
【0059】
ただし、Win(X,Y)は膨張処理適用前の重みマップ、Wout(X,Y)は膨張処理適用後の重みマップ、sはフィルタサイズ、vWは重みの上限値、σ1およびσ2は膨張処理を調整するためのパラメータである。
ここで、X,Yは水平・垂直方向(xy方向)の重みの配列番号であり、Winは配列番号を入力して重みを出力するスカラー関数である。フィルタサイズsは、要素レンズ数個分の大きさに対応する値に設定すればよい。例えば、重みマップのサンプリング位置の間隔が要素画像群の画素間隔と同一のとき、フィルタサイズsは1個の要素レンズに対する要素画像の画素数の数倍程度の値とすればよい。
【0060】
また、G(a,b)はガウシアンフィルタと同等のフィルタであり、膨張処理後の重みマップをぼかして重みの濃淡変動を滑らかにする働きがある。G(a,b)のパラメータであるσ
1は、一般的なガウシアンフィルタと同様にσ
1=s/2程度に設定すればよい。
D(X,Y,a,b)は、重みが“0”の領域は広げずに重みが高い領域のみを広げる働きがある。D(X,Y,a,b)のパラメータであるσ
2は、実験で得られた知見によればσ
2=0.25程度に設定すればよい。
図1に戻って、3次元映像表示用データ生成装置1の構成について説明を続ける。
【0061】
輝度誤差最小化部14は、輝度値変換部12が変換した視点ごとの原映像の輝度値と、重みマップ生成部13が生成した視点ごとの重みマップとに基づいて、合成3D映像と原映像との輝度値の差を予め定めた範囲内で最小化するための視点別のインテグラル3D映像(多視点映像)と2D映像とを生成するものである。
ここでは、輝度誤差最小化部14は、3D映像輝度算出部140と、2D映像輝度算出部141と、繰り返し実行部142と、を備える。
【0062】
3D映像輝度算出部140は、視点ごとに、2D映像の画素位置に対応する原映像の輝度値と2D映像の輝度値との差分から、インテグラル3D映像の画素ごとの輝度値を算出するものである。
3D映像輝度算出部140は、2D映像の初期輝度値を“0”として、視点ごとのインテグラル3D映像の輝度値を算出して2D映像輝度算出部141に出力する。そして、3D映像輝度算出部140は、視点ごとのインテグラル3D映像の輝度値に対応する2D映像の輝度値を2D映像輝度算出部141から入力されるたびにインテグラル3D映像の輝度値を算出する動作を繰り返す。
3D映像輝度算出部140は、繰り返し実行部142からの繰り返しの終了指示を入力した段階で、算出した最新の視点ごとのインテグラル3D映像の輝度値を要素画像群生成部15に出力する。
【0063】
具体的には、3D映像輝度算出部140は、2D映像が既知という条件で、以下の式(5)により、要素画像群の画素番号m,nごとに、視点s,tの輝度値Is,t(m,n)を算出する。なお、各関数は、前記式(3)で説明した関数と同じである。
【0064】
【0065】
ただし、Nは視点数、vIはIs,t(m,n)の上限値である。輝度値を0~255の256階調とした場合、vIは“255”となる。3D映像輝度算出部140は、Is,t(m,n)を算出するたびに、Is,t(m,n)が0~vIの範囲内に収まるように制約する処理(Clamp処理)を実施する。
【0066】
2D映像輝度算出部141は、視点ごとに、2D映像の画素位置に対応する原映像の輝度値とインテグラル3D映像の輝度値との差分に重みマップを乗算して算出値を加算平均することで、2D映像の画素ごとの輝度値を算出するものである。
2D映像輝度算出部141は、算出した2D映像の輝度値を3D映像輝度算出部140に出力するとともに、算出した旨を繰り返し実行部142に通知する。
2D映像輝度算出部141は、繰り返し実行部142からの繰り返しの終了指示を入力されるまで、3D映像輝度算出部140から新たに入力される視点ごとのインテグラル3D映像の輝度値を用いて、2D映像の輝度値の算出を繰り返す。
2D映像輝度算出部141は、繰り返し実行部142からの繰り返しの終了指示を入力された段階で、算出した最新の2D映像の輝度値をデータ出力部16に出力する。
【0067】
具体的には、2D映像輝度算出部141は、視点ごとのインテグラル3D映像(多視点映像)が既知という条件で、以下の式(6)により2D映像の輝度値L(i,j)を算出する。なお、W以外の各関数は、前記式(3)で説明した関数と同じである。
【0068】
【0069】
ただし、vLはL(i,j)の上限値である。輝度値を0~255の256階調とした場合、vLは“255”となる。2D映像輝度算出部141は、L(i,j)を算出するたびに、L(i,j)が0~vLの範囲内に収まるように制約する処理(Clamp処理)を実施する。
Ws,tは重みマップである。Ws,t(i-δs,j-δt)は、位置情報であるi,jと、視点情報であるs,tと、を入力したときに重みを出力するスカラー関数である。重みの取り得る範囲は0~1である。
【0070】
この式(6)から分かるように、重みが小さいほど2D映像の輝度値L(i,j)が低くなる。重みが“0”のときはL(i,j)=0、すなわち、2D映像は黒映像になる。
2D映像が黒映像の場合、式(5)により、一般的なインテグラル3D映像が表示されるような要素画像群が生成されることになる。
このように、3D映像輝度算出部140と2D映像輝度算出部141とで処理を繰り返すことで、合成3D映像と原映像との誤差を徐々に低下させることができる。
【0071】
繰り返し実行部142は、3D映像輝度算出部140と2D映像輝度算出部141とに、予め定めた条件で繰り返して実行させるものである。
ここでは、繰り返し実行部142は、3D映像輝度算出部140および2D映像輝度算出部141の繰り返し回数が、予め定めた回数に達したか否かにより、合成3D映像と原映像との誤差の収束判定を行う。
【0072】
なお、この繰り返し回数は、3次元映像表示装置2の仕様や3Dシーンの構成に依存するが、実験で得られた知見では、15回程度でおおむね誤差が収束する傾向がある。そのため、繰り返し回数は、15回やその2倍の30回などに予め設定すればよい。
繰り返し実行部142は、予め定めた回数繰り返した段階で、繰り返しの終了指示を3D映像輝度算出部140と2D映像輝度算出部141とに出力する。
これによって、輝度誤差最小化部14は、合成3D映像と原映像との輝度値の誤差を予め定めた条件で最小化する視点ごとのインテグラル3D映像(多視点映像)と2D映像とを生成することができる。
【0073】
要素画像群生成部15は、輝度誤差最小化部14で収束した視点ごとのインテグラル3D映像(多視点映像)の輝度値から、要素画像群を生成するものである。
要素画像群生成部15は、インテグラル3D映像の画素番号m,nおよび視点s,tごとに対応する多視点映像の輝度値を幾何光学的に対応する要素画像群の画素位置に投影して要素画像群を生成する。
要素画像群生成部15は、生成した要素画像群をデータ出力部16に出力する。
【0074】
なお、多視点映像から要素画像群を生成する手法は一般的であるため、ここでは、詳細な説明を省略する。
例えば、多視点映像から要素画像群を生成する手法は、以下の参考文献1~3等に記載されている。
【0075】
(参考文献1)
Y. Iwadate and M. Katayama, “Generating Integral Image from 3D Object by Using Oblique Projection,”Proc. of IDW, 3Dp-1, pp. 269-272 (2011).
(参考文献2)
M. Katayama and Y. Iwadate,“A method for converting three-dimensional models into auto-stereoscopic images based on integral photography,”Proc. of SPIE, 68050Z (2008).
(参考文献3)
池谷,久富,片山,岩舘,“多視点映像からのインテグラル立体像の生成”,日本放送協会放送技術研究所,NHK技研R&D,No.144,pp47-59,2014年3月15日発行
【0076】
データ出力部16は、要素画像群生成部15が生成した要素画像群と、2D映像輝度算出部141が算出した2D映像とを、表示用データとして出力するものである。
なお、ここでは、要素画像群および2D映像は輝度値で表されているため、データ出力部16は、要素画像群および2D映像を画素値に変換する。
ここでは、データ出力部16は、要素画像群画素値変換部160と、2D映像画素値変換部161と、を備える。
【0077】
要素画像群画素値変換部160は、要素画像群生成部15が生成した要素画像群の輝度値を、RGBごとのカラーの画素値に変換するものである。
要素画像群画素値変換部160は、仕様値記憶部10に記憶されているインテグラル3次元映像表示装置20の画素値と輝度値との対応表を参照して、表示デバイス200の画素ごとのRGBに対応する位置の輝度値を、RGBの画素値に変換する。
これによって、一般的なRGBのカラー映像のインテグラル3D映像を表示するための要素画像群が生成されることなる。
この要素画像群は、3次元映像表示装置2のインテグラル3次元映像表示装置20で使用するデータである。
【0078】
2D映像画素値変換部161は、輝度誤差最小化部14が生成した2D映像の輝度値を、RGBごとのカラーの画素値に変換するものである。
要素画像群画素値変換部160は、仕様値記憶部10に記憶されている2次元映像表示装置21の画素値と輝度値との対応表を参照して、2次元映像表示装置21の画素ごとのRGBに対応する位置の輝度値を、RGBの画素値に変換する。
これによって、一般的なRGBのカラー映像の2D映像が生成されることなる。
この2D映像は、3次元映像表示装置2の2次元映像表示装置21で使用するデータである。
【0079】
以上説明した構成によって、3次元映像表示用データ生成装置1は、3Dシーンデータから、インテグラル3D映像と2D映像とを表示して3次元映像を表示する3次元映像表示装置2で使用する表示用データ(要素画像群および2D映像)を生成することができる。
なお、3次元映像表示用データ生成装置1は、図示を省略したコンピュータを前記した制御部CLの各部として機能させるためのプログラム(3次元映像表示用データ生成プログラム)で動作させることができる。
【0080】
このように生成された表示用データを用いることで、3次元映像表示装置2は、インテグラル3D映像Iの表示面に近い位置では、重みマップにより、2D映像の重みを大きくし、合成3D映像の解像度特性を向上させることができる。また、3次元映像表示装置2は、インテグラル3D映像Iの表示面から遠い位置では、重みマップにより、2D映像の重みを小さく、合成3D映像のノイズを目立たなくすることができる。
【0081】
<3次元映像表示用データ生成装置の動作>
次に、
図10を参照(構成については適宜
図1参照)して、本発明の実施形態に係る3次元映像表示用データ生成装置1の動作について説明する。なお、記憶部MEには、表示用データを生成する対象である3次元映像表示装置2を構成する各部の仕様値が予め記憶されているものとする。
【0082】
ステップS1において、原映像生成部11は、3Dシーンデータから、視点ごとの映像(多視点映像)を原映像として生成する。
ステップS2において、輝度値変換部12は、ステップS1で生成された原映像(多視点映像)の画素値を輝度値に変換する。ここでは、輝度値変換部12は、仕様値記憶部10に記憶されている対応表を参照して、原映像のRGBごとに画素値を輝度値に変換する。
【0083】
ステップS3において、重みマップ生成部13は、3Dシーンデータから、視点ごとに、インテグラル3D映像に合成する2D映像の重みマップを生成する。この重みマップは、インテグラル3次元映像の表示面からの距離が遠いほど重みが小さくなるように生成される。
なお、ステップS1,S2とステップS3とは、動作順を入れ替えても、並列で動作させても構わない。
【0084】
ステップS4において、3D映像輝度算出部140は、2D映像の初期輝度値を“0”に設定する。
ステップS5において、3D映像輝度算出部140は、2D映像が既知という条件で、前記式(5)により、インテグラル3D映像の画素番号m,nごとに、視点s,tの輝度値Is,t(m,n)を算出することで、視点ごとのインテグラル3D映像(多視点映像)を生成する。
【0085】
ステップS6において、2D映像輝度算出部141は、視点ごとのインテグラル3D映像(多視点映像)が既知という条件で、前記式(6)により2D映像(輝度値L(i,j))を生成する。
ステップS7において、繰り返し実行部142は、合成3D映像と原映像との輝度値の誤差が収束したか否かを判定する。ここでは、繰り返し実行部142は、ステップS5,S6の処理を所定回数繰り返したか否かにより、収束を判定する。
【0086】
ここで、ステップS5,S6を所定回数繰り返した場合、すなわち、繰り返し実行部142が、誤差が収束と判定した場合(ステップS7でYes)、3次元映像表示用データ生成装置1は、ステップS8に動作を進める。
一方、ステップS5,S6を所定回数繰り返していない場合、すなわち、繰り返し実行部142が、誤差が収束していないと判定した場合(ステップS7でNo)、3次元映像表示用データ生成装置1は、ステップS5に動作を戻す。
【0087】
ステップS8において、要素画像群生成部15は、ステップS5で生成された視点ごとのインテグラル3D映像(多視点映像)から、要素画像群を生成する。
ステップS9において、要素画像群画素値変換部160は、仕様値記憶部10に記憶されている対応表を参照して、ステップS8で生成された要素画像群の輝度値をRGBごとの画素値に変換することで、表示用データである要素画像群を生成する。
ステップS10において、2D映像画素値変換部161は、仕様値記憶部10に記憶されている対応表を参照して、ステップS6で生成された2D映像の輝度値をRGBごとの画素値に変換することで、表示用データである2D映像を生成する。
なお、ステップS9とステップS10とは、動作順を入れ替えても、並列で動作させても構わない。
【0088】
以上の動作によって、3次元映像表示用データ生成装置1は、3Dシーンデータから、インテグラル3D映像と2D映像とを表示して合成3D映像を表示する3次元映像表示装置2で使用する表示用データを生成することができる。
【0089】
以上、本発明の実施形態について説明したが、本発明は、この実施形態に限定されるものではない。
例えば、ここでは、原映像をRGB各色の画素値で表されるカラー映像として説明したが、RGB各色の輝度値で表される輝度データとしてもよい。その場合、画素値を輝度値に変換する必要はなく、3次元映像表示用データ生成装置1の構成から、輝度値変換部12を省略すればよい。
【0090】
また、ここでは、繰り返し実行部142が、3D映像輝度算出部140および2D映像輝度算出部141の繰り返し回数によって、誤差の収束を判定した。
しかし、繰り返し実行部142は、2D映像とインテグラル3D映像との輝度値の和と、原映像の輝度値との誤差を算出し、その誤差が予め定めた値よりも小さくなった、あるいは、誤差の変動が予め定めた値よりも小さくなった段階で、誤差が収束したと判定してもよい。
すなわち、繰り返し実行部142は、前記式(3)により誤差を算出し、誤差の収束を判定することとしてもよい。
【符号の説明】
【0091】
1 3次元映像表示用データ生成装置
10 仕様値記憶部
11 原映像生成部
12 輝度値変換部
13 重みマップ生成部
14 輝度誤差最小化部
140 3D映像輝度算出部
141 2D映像輝度算出部
142 繰り返し実行部
15 要素画像群生成部
16 データ出力部
160 要素画像群画素値変換部
161 2D映像画素値変換部