(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-11
(45)【発行日】2024-11-19
(54)【発明の名称】配信制御システム、配信制御装置、配信制御方法、及びプログラム
(51)【国際特許分類】
H04N 21/234 20110101AFI20241112BHJP
G06T 17/00 20060101ALI20241112BHJP
【FI】
H04N21/234
G06T17/00
(21)【出願番号】P 2023517012
(86)(22)【出願日】2021-04-30
(86)【国際出願番号】 JP2021017244
(87)【国際公開番号】W WO2022230186
(87)【国際公開日】2022-11-03
【審査請求日】2023-08-01
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】110004381
【氏名又は名称】弁理士法人ITOH
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100124844
【氏名又は名称】石原 隆治
(72)【発明者】
【氏名】趙 笑添
(72)【発明者】
【氏名】奥山 隆文
(72)【発明者】
【氏名】北田 裕之
【審査官】山▲崎▼ 雄介
(56)【参考文献】
【文献】国際公開第2020/137876(WO,A1)
【文献】国際公開第2020/116154(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/10;7/14-7/173;
7/20-7/56;
21/00-21/858
G06T 11/00-11/40;
15/00-17/00;
17/10-17/30
(57)【特許請求の範囲】
【請求項1】
立体映像コンテンツを構成する立体データが表す対象物に対して、前記対象物を中心とする複数の仮想視点を配置する配置部と、
前記仮想視点毎に、前記対象物に関して前記仮想視点からは視認できない部分のデータ量を削減した
立体データである一面立体データを作成する第1の作成部と、
前記対象物が配置される仮想空間上におけるユーザの位置と視界に応じて、前記仮想視点毎の一面立体データのうちの1つの仮想視点の一面立体データを前記ユーザの端末に配信する配信部と、
を有する配信制御システム。
【請求項2】
前記第1の作成部は、
前記仮想視点からは視認できない部分を表すポリゴンメッシュに対してジオメトリー簡素化処理を行うことで、前記部分のデータ量を削減した
立体データである一面立体データを作成する、請求項1に記載の配信制御システム。
【請求項3】
前記仮想視点からは視認できない部分は、前記仮想視点から前記対象物を見たときに、前記対象物の背面に相当する部分である、請求項1又は2に記載の配信制御システム。
【請求項4】
前記仮想視点と、前記仮想視点から前記対象物を見たときに同一の体感品質を得られる範囲とを対応付けた対応表を作成する第2の作成部を有し、
前記配信部は、
前記視界の中に前記対象物の少なくとも一部の部分が含まれる場合に、前記対応表を参照して、前記位置が含まれる範囲に対応する仮想視点の一面立体データを特定し、
特定した一面立体データを前記端末に配信する、請求項1乃至3の何れか一項に記載の配信制御システム。
【請求項5】
立体映像コンテンツを構成する立体データが表す対象物に対して、前記対象物を中心とする複数の仮想視点を配置する配置部と、
前記仮想視点毎に、前記対象物に関して前記仮想視点からは視認できない部分のデータ量を削減した
立体データである一面立体データを作成する第1の作成部と、
前記対象物が配置される仮想空間上におけるユーザの位置と視界に応じて、前記仮想視点毎の一面立体データのうちの1つの仮想視点の一面立体データを前記ユーザの端末に配信する配信部と、
を有する配信制御装置。
【請求項6】
立体映像コンテンツを構成する立体データが表す対象物に対して、前記対象物を中心とする複数の仮想視点を配置する配置手順と、
前記仮想視点毎に、前記対象物に関して前記仮想視点からは視認できない部分のデータ量を削減した
立体データである一面立体データを作成する第1の作成手順と、
前記対象物が配置される仮想空間上におけるユーザの位置と視界に応じて、前記仮想視点毎の一面立体データのうちの1つの仮想視点の一面立体データを前記ユーザの端末に配信する配信手順と、
をコンピュータが実行する配信制御方法。
【請求項7】
コンピュータを、請求項1乃至4の何れか一項に記載の配信制御システムとして機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、配信制御システム、配信制御装置、配信制御方法、及びプログラムに関する。
【背景技術】
【0002】
ボリュメトリックビデオやホログラム等に代表される6自由度(6DoF:six degrees of freedom)を持つ立体映像コンテンツが知られている。このようなコンテンツを通信ネットワークにより高品質に配信するためには、高いデータ圧縮技術や通信ネットワーク/システムの負荷分散技術等の利用といったこと以外に、コンテンツ自体の配信を制御する仕組みが必要である。特に、クライアントとなるXR(VR/AR/MR/SR等)デバイスの視界情報や仮想空間におけるユーザの位置情報等に応じて、コンテンツの配信を動的に制御する仕組みが重要である。
【0003】
ボリュメトリックビデオはポリゴンメッシュ(以下、単に「メッシュ」ともいう。)とテクスチャとで構成されたアニメーションデータであり、クライアント側で仮想環境と合わせてレンダリングすることで、ディスプレイ上に表示され、視聴ができる。
【0004】
ボリュメトリックビデオ配信技術として、非特許文献1~3に記載されている技術が知られている。非特許文献1では、クライアントであるAR/VRデバイスで検出されたユーザの頭の動きに基づいて、ボリュメトリックビデオのレンダリングをサーバ側で行い、2Dデータとして当該クライアントに送信する手法が提案されている。また、非特許文献2では、リアルタイムで生成されたボリュメトリックビデオをクライアントに配信し、クライアント側でレンダリングする手法が提案されている。更に、非特許文献3では、通信ネットワークの帯域に応じてボリュメトリックビデオのLevel Of Detailを動的に変更させることで、再生に必要なデータ量を削減する手法が提案されている。
【先行技術文献】
【非特許文献】
【0005】
【文献】Serhan Gul, Dimitri Podborski, Thomas Buchholz, Thomas Schierl and Cornelius Hellge, "Low-latency cloud-based volumetric video streaming using head motion prediction", NOSSDAV '20: Proceedings of the 30th ACM Workshop on Network and Operating Systems Support for Digital Audio and Video, June 2020, Pages 27-33
【文献】Sergio Orts-Escolano, Christoph Rhemann, Sean Fanello, Wayne Chang, Adarsh Kowdle, Yury Degtyarev, et al. "Holoportation: Virtual 3D teleportation in real-time", UIST '16: Proceedings of the 29th Annual Symposium on User Interface Software and Technology, October 2016, Pages 741-754
【文献】Holostream/Arctrus, インターネット<URL:https://arcturus.studio/holostream>
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、ボリュメトリックビデオはデータ量が大きく、その配信に必要な通信ネットワークの帯域が大きいため、効率的に配信する手法が求められている。
【0007】
しかしながら、上記の非特許文献1で提案されている手法では、各ユーザのレンダリングをサーバ側で行う必要があるため、サーバの負荷が大きい。また、ユーザ数が増えた場合にはサーバリソースの分割によって、各ユーザが視聴する映像品質の劣化が発生し得る。更に、クライアントからサーバに対して位置情報を高頻度に低遅延で送信する必要があり、例えば、VR酔いが発生し始めるMotion to Photon遅延を20ms以下に抑えることは通信ネットワークとサーバの両方で負担が大きい。
【0008】
一方で、上記の非特許文献2で提案されている手法では、通信帯域に4Gbps必要であるが、4Gbpsの通信帯域をユーザが常に安定して確保することは難しい。また、通信ネットワークの負荷が大きいため、同一の通信ネットワークを使用する他のユーザの使用可能帯域が狭まり、他のユーザの体感品質を落としてしまう。
【0009】
更に、上記の非特許文献3で提案されている手法では、通信ネットワークの使用可能帯域が狭いときには、視聴中のボリュメトリックビデオでユーザから見える範囲の3Dデータ(つまり、ユーザに対して前面に相当する3Dデータ)も含めて画質とLevel Of Detailを落としてしまうため、大幅な体感品質の低下をもたらす。
【0010】
本発明の一実施形態は、上記の点に鑑みてなされたもので、ユーザの体感品質を維持しつつ、立体映像コンテンツの配信に要するデータ量を削減することを目的とする。
【課題を解決するための手段】
【0011】
上記目的を達成するため、一実施形態に係る配信システムは、立体映像コンテンツを構成する立体データが表す対象物に対して、前記対象物を中心とする複数の仮想視点を配置する配置部と、前記仮想視点毎に、前記対象物に関して前記仮想視点からは視認できない部分のデータ量を削減した一面立体データを作成する第1の作成部と、前記対象物が配置される仮想空間上におけるユーザの位置と視界に応じて、前記仮想視点毎の一面立体データのうちの1つの仮想視点の一面立体データを前記ユーザの端末に配信する配信部と、を有する。
【発明の効果】
【0012】
ユーザの体感品質を維持しつつ、立体映像コンテンツの配信に要するデータ量を削減することができる。
【図面の簡単な説明】
【0013】
【
図1】本実施形態に係る配信制御システムの全体構成の一例を示す図である。
【
図2】本実施形態に係る一面3Dデータ作成処理の一例を示すフローチャートである。
【
図4】本実施形態に係る対応表作成処理の一例を示すフローチャートである。
【
図7】本実施形態に係る配信処理の一例を示すフローチャートである。
【
図9】コンピュータのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0014】
以下、本発明の一実施形態について説明する。本実施形態では、立体映像コンテンツの一例としてボリュメトリックビデオを対象に、ユーザの体感品質を維持しつつ、その配信に要するデータ量を削減することができる配信制御システム1について説明する。ここで、ボリュメトリックビデオとは、メッシュとテクスチャとで表される3Dデータ(3次元データ又は立体データともいう。)で構成されたアニメーションデータのことである。すなわち、例えば、時刻tのフレームの3Dデータをdtとすれば、ボリュメトリックビデオは{dt|t∈[ts,te]}と表される。tsはボリュメトリックビデオの開始時刻、teは終了時刻である。
【0015】
なお、以下で説明する実施形態は、ボリュメトリックビデオに限られず、例えば、ホログラム等といった6自由度を持つ立体映像コンテンツに対しても同様に適用することができる。
【0016】
<全体構成>
まず、本実施形態に係る配信制御システム1の全体構成について、
図1を参照しながら説明する。
図1は、本実施形態に係る配信制御システム1の全体構成の一例を示す図である。
【0017】
図1に示すように、本実施形態に係る配信制御システム1には、配信制御サーバ10と、コンテンツサーバ20と、クライアント30と、サービスサイトサーバ40とが含まれる。また、配信制御サーバ10とクライアント30は、インターネット等の通信ネットワークNを介して通信可能に接続される。同様に、クライアント30とサービスサイトサーバ40は、通信ネットワークNを介して通信可能に接続される。
【0018】
なお、配信制御サーバ10とコンテンツサーバ20は同一のローカルネットワーク内に存在し、当該ローカルネットワーク内で通信可能に接続されているものとするが、これに限られず、例えば、通信ネットワークNを介して通信可能に接続されてもよい。
【0019】
配信制御サーバ10は、与えられたボリュメトリックビデオを構成する3Dデータから複数の一面3Dデータを作成し、これら複数の一面3Dデータをコンテンツサーバ20に保存する。ここで、一面3Dデータとは、ボリュメトリックビデオを構成する3Dデータが表す対象物を或る1つの視点から見たときの3次元データであり、ユーザの体感品質を維持しつつ元の3Dデータよりもデータ量を削減したものである。なお、対象物とは、ボリュメトリックビデオの被写体のことであり、例えば、人、動植物、構造物、建物、機械、天体、自然現象等といったメッシュとテクスチャで表現可能な任意の対象のことを意味する。
【0020】
また、配信制御サーバ10は、クライアント30からの視聴要求に応じて、ユーザの視点や空間位置、視界(視線方向及び視野範囲)等から適切な一面3Dデータを決定し、この一面3Dデータをクライアント30に配信する。なお、ユーザの視点、空間位置とは、対象物が配置されている仮想空間内におけるユーザの位置のことである。
【0021】
コンテンツサーバ20は、複数の一面3Dデータを保存する。また、コンテンツサーバ20は、配信制御サーバ10からのデータ要求に応じて、このデータ要求に対応する一面3Dデータを配信制御サーバ10に返信する。
【0022】
クライアント30は、ボリュメトリックビデオを視聴するユーザが利用する各種端末(例えば、XR(VR/AR/MR/SR等)デバイス等)であり、配信制御サーバ10から配信された一面3Dデータをレンダリングし、ボリュメトリックビデオを再生する。なお、XRデバイスには、HMD(Head Mount Display)の他、XRデバイスとして機能するアプリケーションプログラムが搭載されたスマーフォンやタブレット端末、ウェアラブルデバイス等が含まれる。
【0023】
ユーザがボリュメトリックビデオを視聴する際には、例えば、以下のような手順が行われる。まず、ユーザは、クライアント30でサービスサイトサーバ40にアクセスし、当該ユーザが視聴可能なコンテンツ(ボリュメトリックビデオ)の一覧を取得する。次に、ユーザは、この一覧の中から自身が視聴を所望するボリュメトリックビデオを選択し、選択したボリュメトリックビデオへのリンクを得る。そして、クライアント30が当該リンクにアクセスすることで、視聴要求が配信制御サーバ10に送信され、この要求に対して一面3Dデータが返信されることでボリュメトリックビデオの再生が開始される。
【0024】
また、クライアント30は、適宜、ユーザの視点や空間位置、視界等といった情報(以下、ユーザの視点又は空間位置と視界とを表す情報を「ユーザ視点情報」ともいう。)を配信制御サーバ10に送信する。これにより、ユーザの視点や空間位置、視界等に応じた一面3Dデータが配信制御サーバ10から返信され、クライアント30で再生されることになる。
【0025】
サービスサイトサーバ40は、ユーザが視聴可能なコンテンツ(ボリュメトリックビデオ)の一覧を提示し、この一覧の中から選択されたコンテンツへのリンクをクライアント30に提供する。
【0026】
ここで、本実施形態に係る配信制御サーバ10は、一面3Dデータ作成部101と、対応表作成部102と、配信制御部103と、配信部104とを有する。これら各部は、例えば、配信制御サーバ10にインストールされた1以上のプログラムが、CPU(Central Processing Unit)等のプロセッサに実行させる処理により実現される。
【0027】
また、本実施形態に係る配信制御サーバ10は、対応表記憶部105を有する。対応表記憶部105は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の補助記憶装置により実現される。
【0028】
一面3Dデータ作成部101は、配信制御サーバ10に与えられたボリュメトリックビデオを構成する3Dデータから複数の一面3Dデータを作成する。より具体的には、一面3Dデータ作成部101は、ボリュメトリックビデオを構成する3Dデータが表す対象物を中心に複数の仮想視点を等間隔(又は非等間隔)に配置した上で、仮想視点毎に、当該仮想視点から当該対象物を見たときに、当該対象物の背面に相当するメッシュに対してジオメトリー簡素化(Level Of Detail低下処理)を行うことで、一面3Dデータを作成する。このように、仮想視点毎に、3Dデータが表す対象物の背面(つまり、その仮想視点から見えない部分)のメッシュに対してジオメトリー簡素化を行うことで、仮想視点毎の一面3Dデータを作成する。
【0029】
そして、一面3Dデータ作成部101は、作成した複数の一面3Dデータをコンテンツサーバ20に保存する。
【0030】
対応表作成部102は、複数の一面3Dデータを作成する際に配置された各仮想視点と、その仮想視点の視聴角度範囲とを対応付けた対応表(以下、「視聴角度範囲対応表」ともいう。)を作成する。視聴角度範囲とは、対象物を見た際に、当該仮想視点で対象物を見た場合と同一の体感品質を得られる範囲のことである。言い換えれば、当該仮想視点と同様に、ジオメトリー簡素化された対象物の背面が見えない範囲のことである。
【0031】
配信制御部103は、クライアント30からユーザ視点情報を受信すると、視聴角度範囲対応表を参照して、このユーザ視点情報から適切な一面3Dデータを決定する。より具体的には、配信制御部103は、ユーザ視点情報に含まれる視点又は空間位置で視界内に対象物の少なくとも一部の部分を捉えた場合に、当該視点又は空間位置が含まれる視聴角度範囲に対応する仮想視点を特定し、特定した仮想視点に対応する一面3Dデータを適切なものとして決定する。
【0032】
配信部104は、配信制御部103によって決定された一面3Dデータをクライアント30に送信する。
【0033】
対応表記憶部105は、対応表作成部102によって作成された視聴角度範囲対応表を記憶する。
【0034】
また、本実施形態に係るコンテンツサーバ20は、一面3Dデータ記憶部201を有する。一面3Dデータ記憶部201は、例えば、HDDやSSD等の補助記憶装置により実現される。
【0035】
一面3Dデータ記憶部201は、一面3Dデータ作成部101によって作成された各一面3Dデータを記憶する。
【0036】
なお、
図1に示す配信制御システム1の構成は一例であって、他の構成であってもよい。例えば、配信制御サーバ10とコンテンツサーバ20が一体のサーバで構成されていてもよい。
【0037】
<各種処理の詳細>
以下、複数の一面3Dデータを作成するための一面3Dデータ作成処理と、視聴角度範囲対応表を作成するための対応表作成処理と、適切な一面3Dデータをクライアント30に配信するための配信処理との各処理について説明する。なお、一面3Dデータ作成処理と対応表作成処理は、配信処理よりも前に実行される事前処理である。
【0038】
≪一面3Dデータ作成処理≫
まず、一面3Dデータ作成処理について、
図2を参照しながら説明する。
図2は、本実施形態に係る一面3Dデータ作成処理の一例を示すフローチャートである。なお、以下では、ボリュメトリックビデオが配信制御サーバ10に与えられているものとする。
【0039】
一面3Dデータ作成部101は、ボリュメトリックビデオを構成する3Dデータの中から1フレーム分の3Dデータを取得する(ステップS101)。以下では、一面3Dデータ作成部101は、時刻tのフレームの3Dデータdtを取得したものとする。なお、tの初期値はt=tsとすればよい。
【0040】
なお、3Dデータはメッシュとテクスチャとで構成されるが、以下ではテクスチャに対しては特に処理を行わないため、上記のステップS101では、3Dデータのメッシュのみを取得してもよい。
【0041】
次に、一面3Dデータ作成部101は、上記のステップS102で取得した3Dデータdtが表す対象物を中心にN個の仮想視点を配置する(ステップS102)。ただし、各仮想視点の視線方向は対象物であるものとする。例えば、一面3Dデータ作成部101は、当該対象物を中心とする所定の半径の円の円周上に、等間隔(又は非等間隔でもよい。)に当該対象物を視線方向とするN個の仮想視点を配置する。なお、Nは予め決められた2以上の整数である。
【0042】
ここで、N=8である場合における仮想視点の配置例を
図3に示す。
図3に示す例では、対象物Oを中心として、半径Rの円の円周上に等間隔で、対象物Oを視線方向とする仮想視点V
1~V
8が配置されている。
【0043】
なお、円の円周上に仮想視点を配置することは一例であって、これに限られず、例えば、対象物を中心とする多角形の辺上や頂点上に仮想視点を配置してもよい。また、
図3に示す例では、簡単のため、対象物Oの中心を原点とするxyz空間のxy平面上に仮想視点V
1~V
8を配置したが、これに限られず、例えば、当該原点を中心とする球面上(又は多面体上)に仮想視点を配置してもよい。
【0044】
次に、一面3Dデータ作成部101は、上記のステップS102で配置したN個の仮想視点の中から1つの仮想視点を選択する(ステップS103)。
【0045】
次に、一面3Dデータ作成部101は、上記のステップS103で選択した仮想視点から当該対象物を見たときに、当該対象物の背面に相当するメッシュに対してジオメトリー簡素化(Level Of Detail低下処理)を行う(ステップS104)。言い換えれば、一面3Dデータ作成部101は、当該対象物を構成する各メッシュの中で、当該仮想視点からは視認できない(見えない)部分のメッシュに対してジオメトリー簡素化処理を行う。これにより、当該仮想視点から対象物を見た場合には元の3Dデータdtと同等の体感品質が得られ、かつ、元の3Dデータdtよりもデータ量が削減された一面3Dデータが作成される。
【0046】
次に、一面3Dデータ作成部101は、N個すべての仮想視点を選択したか否かを判定する(ステップS105)。
【0047】
上記のステップS105で未だ選択していない仮想視点があると判定された場合、一面3Dデータ作成部101は、上記のステップS103に戻り、未だ選択していない仮想視点の中から1つの仮想視点を選択し、ステップS104以降の処理を実行する。
【0048】
一方で、上記のステップS105でN個すべての仮想視点を選択したと判定された場合、一面3Dデータ作成部101は、与えられたボリュメトリックビデオに次のフレームがあるか否かを判定する(ステップS106)。
【0049】
上記のステップS106で次のフレームがあると判定された場合、一面3Dデータ作成部101は、上記のステップS101に戻り、次のフレームの3Dデータを取得し、ステップS102以降の処理を実行する。すなわち、この場合、一面3Dデータ作成部101は、t←t+1として、上記のステップS101に戻り、次の時刻tのフレームの3Dデータdtを取得する。
【0050】
一方で、上記のステップS106で次のフレームがないと判定された場合(つまり、時刻t=teである場合)、一面3Dデータ作成部101は、上記のステップS104で作成された各一面3Dデータを、コンテンツサーバ20の一面3Dデータ記憶部201に保存する(ステップS107)。これにより、例えば、時刻tにおける視点Vi(ただし、i∈[1,N])に対応する一面3Dデータをdtiとすれば、一面3Dデータの集合{dti|t∈[ts,te],i∈[1,N]}が一面3Dデータ記憶部201に保存されることになる。
【0051】
なお、本実施形態では、仮想視点の配置数Nは全フレームで共通としたが、フレーム毎に異なっていてもよい。また、本実施形態では、上記のステップS102~ステップS105をフレーム毎に繰り返し実行したが、例えば、或る時間幅(時間幅がte-tsである場合も含む)において、フレーム間で3Dデータdtが同一である場合は、当該時間幅に含まれる1つのフレームの3Dデータdtに関してのみ上記のステップS102~ステップS105を実行してもよい。
【0052】
≪対応表作成処理≫
次に、対応表作成処理について、
図4を参照しながら説明する。
図4は、本実施形態に係る対応表作成処理の一例を示すフローチャートである。以下では、3Dデータd
t(ただし、t∈[t
s,t
e])に関する視聴角度範囲対応表を作成する場合について説明する。なお、以下では、d=d
tと表す。
【0053】
対応表作成部102は、
図2のステップS102と同様に、3Dデータdが表す対象物を中心にN個の仮想視点を配置する(ステップS201)。なお、仮想視点の配置数、配置方法(等間隔又は非等間隔、円周上に配置又は多角形上に配置等)は
図2のステップS102と同様とする。
【0054】
次に、対応表作成部102は、上記のステップS201で配置したN個の仮想視点の中から1つの仮想視点を選択する(ステップS202)。
【0055】
次に、対応表作成部102は、上記のステップS202で選択した仮想視点と、それに隣接する仮想視点(以下、「隣接仮想視点」という。)との境界角度を算出する(ステップS203)。境界角度とは、当該仮想視点の視線と、当該仮想視点と隣接仮想視点の境界との間の角度のことである。
【0056】
ここで、一例として、
図3に示す仮想視点の配置に対して、仮想視点V
2の境界角度を算出する場合について説明する。
図5に示すように、仮想視点V
2は、対象物Oに対して角度θ
2の位置にあるものとする。なお、
図5に示す例では、対象物Oの中心を原点とするxy平面上におけるx軸の正の方向を角度の基準としている。
【0057】
このとき、仮想視点V2の隣接仮想視点はV1とV3であり、仮想視点V2の視線と隣接仮想視点V1の視線との間の角度をφ21、仮想視点V2の視線と隣接仮想視点V3の視線との間の角度をφ22とする。そして、角度φ21を2分する線を隣接仮想視点V1との境界、角度φ22を2分する線を隣接仮想視点V3との境界として、これらの境界までの角度を境界角度とする。
【0058】
すなわち、隣接仮想視点V1との境界角度をθ21、隣接仮想視点V3との境界角度をθ22とすれば、θ21=φ21/2、θ22=φ22/2となる。
【0059】
なお、他の仮想視点Vi(i=1,3,・・・,8)の境界角度θi1及びθi2に関しても同様に算出することができる。
【0060】
次に、対応表作成部102は、N個すべての仮想視点を選択したか否かを判定する(ステップS204)。
【0061】
上記のステップS204で未だ選択していない仮想視点があると判定された場合、対応表作成部102は、上記のステップS202に戻り、未だ選択していない仮想視点の中から1つの仮想視点を選択し、ステップS203以降の処理を実行する。
【0062】
一方で、上記のステップS204でN個すべての仮想視点を選択したと判定された場合、対応表作成部102は、上記のステップS203で算出した境界角度から各仮想視点の視聴角度範囲を算出することで視聴角度範囲対応表を作成し、作成した視聴角度範囲対応表を対応表記憶部105に保存する(ステップS205)。仮想視点V
i(ただし、i∈[1,N])は対象物に対して角度θ
iの位置にあり、仮想視点V
iの境界角度をθ
i1,θ
i2とすれば、仮想視点V
iの視聴角度範囲はθ
i-θ
i1≦θ
i<θ
i+θ
i2と算出される。これにより、仮想視点V
iと視聴角度範囲θ
i-θ
i1≦θ
i<θ
i+θ
i2とを対応付けることで視聴角度範囲対応表が作成される。このように作成された視聴角度範囲対応表の一例を
図6に示す。
【0063】
なお、本実施形態では、時刻t∈[ts,te]の3Dデータdtで共通の視聴角度範囲対応表を作成したが、例えば、フレームによって仮想視点の配置数が異なる場合等には、仮想視点の配置数毎に視聴角度範囲対応表を作成してもよい。
【0064】
≪配信処理≫
次に、配信処理について、
図7を参照しながら説明する。
図7は、本実施形態に係る配信処理の一例を示すフローチャートである。以下のステップS301~ステップS303はユーザ視点情報を受信する毎に実行され、ステップS304~ステップS305はフレーム間隔毎に実行される。ただし、以下では、ユーザの視界内に対象物の少なくとも一部の部分が含まれているものとする。
【0065】
配信制御部103は、クライアント30から受信したユーザ視点情報に含まれる視点又は空間位置を用いて、対象物に対するユーザ位置を算出する(ステップS301)。ここで、ユーザ位置は、対象物に対する視点又は空間位置の角度である。なお、角度の基準は、
図4のステップS203で対象物に対する仮想視点の位置を決定したときと同様とする。
【0066】
次に、配信制御部103は、対応表記憶部105に記憶されている視聴角度範囲対応表を参照して、上記のステップS301で算出したユーザ位置から仮想視点を特定する(ステップS302)。すなわち、配信制御部103は、各仮想視点のうち、ユーザ位置が含まれる視聴角度範囲に対応する仮想視点を特定する。
【0067】
例えば、
図8に示すように、或るユーザAのユーザ位置をθ
Aとして、θ
2-θ
21≦θ
A<θ
2+θ
22であったとする。この場合、上記のステップS302では仮想視点V
2が特定される。
【0068】
また、例えば、
図8に示すように、或るユーザBのユーザ位置をθ
Bとして、θ
3-θ
31≦θ
B<θ
3+θ
32であったとする。この場合、上記のステップS302では仮想視点V
3が特定される。
【0069】
なお、
図8に示す例のユーザAは視線方向に対象物Oが存在するケースであり、ユーザBは視線方向には対象物Oは存在しないものの視界内に対象物Oの少なくとも一部の部分が含まれているケースである。
【0070】
次に、配信制御部103は、上記のステップS302で特定した仮想視点に対応する一面3Dデータを配信対象に決定する(ステップS303)。すなわち、例えば、上記のステップS302で特定した仮想視点がViである場合、配信制御部103は、一面3Dデータ{dti}を配信対象に決定する。
【0071】
配信部104は、上記のステップS303で決定した配信対象の一面3Dデータのうち、該当の時刻のフレームの一面3Dデータをコンテンツサーバ20から取得する(ステップS304)。
【0072】
そして、配信部104は、上記のステップS304で取得した一面3Dデータをクライアント30に配信する(ステップS305)。これにより、クライアント30側で当該一面3Dデータがレンダリングされ、ディスプレイ上に対象物が表示される。
【0073】
<ハードウェア構成>
最後に、本実施形態に係る配信制御サーバ10及びコンテンツサーバ20のハードウェア構成について説明する。本実施形態に係る配信制御サーバ10及びコンテンツサーバ20は、例えば、
図9に示すコンピュータ500のハードウェア構成により実現される。なお、クライアント30及びサービスサイトサーバ40も同様のハードウェア構成で実現されていてもよい。
【0074】
図9に示すコンピュータ500は、入力装置501と、表示装置502と、外部I/F503と、通信I/F504と、プロセッサ505と、メモリ装置506とを有する。これらの各ハードウェアは、それぞれがバス507により通信可能に接続される。
【0075】
入力装置501は、例えば、キーボードやマウス、タッチパネル等である。表示装置502は、例えば、ディスプレイ等である。なお、コンピュータ500は、入力装置501及び表示装置502のうちの少なくとも一方を有していなくてもよい。
【0076】
外部I/F503は、記録媒体503a等の外部装置とのインタフェースである。なお、記録媒体503aとしては、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等が挙げられる。
【0077】
通信I/F504は、他の装置や機器、システム等との間でデータ通信を行うためのインタフェースである。プロセッサ505は、例えば、CPU等の各種演算装置である。メモリ装置506は、例えば、HDDやSSD、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ等の各種記憶装置である。
【0078】
本実施形態に係る配信制御サーバ10及びコンテンツサーバ20は、
図9に示すコンピュータ500のハードウェア構成を有することにより、上述した各種処理を実現することができる。なお、
図9に示すコンピュータ500のハードウェア構成は一例であって、コンピュータ500は、他のハードウェア構成を有していてもよい。例えば、コンピュータ500は、複数のプロセッサ505を有していてもよいし、複数のメモリ装置506を有していてもよい。
【0079】
<まとめ>
以上のように、本実施形態に係る配信制御システム1は、立体映像コンテンツを構成する3Dデータが表す対象物に対して複数の仮想視点を配置した上で、これらの仮想視点毎に、当該仮想視点から視認できない部分のポリゴンメッシュのジオメトリーを簡素化する。これにより、仮想視点毎に、元の3Dデータよりもデータ量を削減した一面3Dデータが作成される。
【0080】
したがって、クライアント30におけるユーザの位置や視界に応じて、適切な一面3Dデータを配信することで、ユーザの体感品質は維持したまま立体映像コンテンツの配信に要するデータ量を削減することが可能となる。また、これに加えて、クライアント30側のレンダリング負荷も削減されるため、クライアント30側の処理負荷の軽減も実現することが可能となる。
【0081】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、請求の範囲の記載から逸脱することなく、種々の変形や変更、既知の技術との組み合わせ等が可能である。
【符号の説明】
【0082】
1 配信制御システム
10 配信制御サーバ
20 コンテンツサーバ
30 クライアント
40 サービスサイトサーバ
50 通信ネットワーク
101 一面3Dデータ作成部
102 対応表作成部
103 配信制御部
104 配信部
105 対応表記憶部
201 一面3Dデータ記憶部
500 コンピュータ
501 入力装置
502 表示装置
503 外部I/F
503a 記録媒体
504 通信I/F
505 プロセッサ
506 メモリ装置
507 バス