JP7239029B2 - 画像処理装置およびファイル生成装置 - Google Patents

画像処理装置およびファイル生成装置 Download PDF

Info

Publication number
JP7239029B2
JP7239029B2 JP2022013129A JP2022013129A JP7239029B2 JP 7239029 B2 JP7239029 B2 JP 7239029B2 JP 2022013129 A JP2022013129 A JP 2022013129A JP 2022013129 A JP2022013129 A JP 2022013129A JP 7239029 B2 JP7239029 B2 JP 7239029B2
Authority
JP
Japan
Prior art keywords
stream
image
streams
depth
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022013129A
Other languages
English (en)
Other versions
JP2022044835A (ja
Inventor
遼平 高橋
光浩 平林
充 勝股
俊也 浜田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Sony Group Corp
Original Assignee
Sony Corp
Sony Group Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2017177382A external-priority patent/JP2019054417A/ja
Application filed by Sony Corp, Sony Group Corp filed Critical Sony Corp
Priority to JP2022013129A priority Critical patent/JP7239029B2/ja
Publication of JP2022044835A publication Critical patent/JP2022044835A/ja
Application granted granted Critical
Publication of JP7239029B2 publication Critical patent/JP7239029B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本技術は、画像処理装置およびファイル生成装置に関し、特に、より簡単にコンテンツを再生することができるようにした画像処理装置およびファイル生成装置に関する。
従来、バードビューコンテンツ(以下、BV(Birdview)コンテンツと称する)と呼ばれるコンテンツが知られている。
BVコンテンツは、空間を3次元的にキャプチャする技術であるVolumetric Capturingによって生成される3Dモデルである。この3Dモデルは、例えばヘッドマウンテッドディスプレイを使用して、周囲見回し視聴が可能である。
このようなBVコンテンツは複数のBVストリームから構成され、BVストリームはテクスチャ(texture)、メッシュ(mesh)、およびデプス(depth)の3種類の情報の組み合わせで符号化される。
ここで、メッシュやデプスは、何れも3D形状を構成するためのデータであり、その3D形状にテクスチャを貼り付けることで3Dモデルが構成される。特に、3Dモデルは、テクスチャとデプス、またはテクスチャとメッシュを用いることで構成することができる。さらにテクスチャ、メッシュ、およびデプスを用いても3Dモデルを構成可能である。
BVコンテンツを視聴する場合、3Dモデルの周囲をスムーズに見回すことができる視聴体験が最も重要である。
ことろで、ISOBMFF(ISO Base Media File Format)(例えば、非特許文献1参照)へのBVコンテンツ格納については、BVストリームを1つのtrack(トラック)、または複数のtrackに格納し、グルーピングを行う方法がISO/IEC 14496-15で規定済みである。
このとき、テクスチャやデプスはISO/IEC 14496-10で規定されたMVC(Multiview Video Coding) with depth,3D AVC(Advanced Video Coding)や、ISO/IEC 23008-2で規定されたMV(Multiview) HEVC(High Efficiency Video Coding),3D HEVCで符号化される。
ISO/IEC 14496-12 Information technology - Coding of audio-visual objects - P art12: ISO base media file format
しかしながら、現時点では市場にあるデコーダにおいてMVC with depthやMV HEVC等のサポートは一般的ではない。
そのため、HEVCやAVCといった一般的なコーデックでテクスチャやデプスを符号化して運用を行い、汎用的なデコーダでもBVストリームをデコード可能とすることで、BVコンテンツ再生が可能となるクライアントの裾野を拡大することが望まれている。
現状では、HEVCやAVCをテクスチャやデプスの符号化に用いる場合に、BVストリームをtrackに格納し、グルーピングする方法は定義されておらず、BVコンテンツ視聴に必要なBVストリームを格納するtrackをクライアントが選択することは難しい。
以上のように、一般的なデコーダでサポートされているHEVCやAVCでテクスチャやデプスを符号化しようとすると、BVコンテンツの再生に必要となるBVストリームが格納されたtrackを選択することが困難であった。換言すれば、簡単にBVコンテンツを再生することができなかった。
本技術は、このような状況に鑑みてなされたものであり、より簡単にコンテンツを再生することができるようにするものである。
本技術の第1の側面の画像処理装置は、コンテンツの再生に適切な1または複数のトラックのグループ情報であって、前記コンテンツが、空間を3次元的にキャプチャすることにより生成され、複数のストリームにより構成される3Dオブジェクトコンテンツであることを示す情報を含むグループ情報が格納されたセグメントファイルを取得するファイル取得部と、前記グループ情報に基づいて、前記コンテンツの再生に用いる複数の前記ストリームに対応する複数の前記トラックを選択し、選択した複数の各前記トラックについて、前記トラックに対応する1または複数の前記ストリームを含むデータを前記セグメントファイルから抽出するファイル処理部とを備える。
本技術の第1の側面においては、コンテンツの再生に適切な1または複数のトラックのグループ情報であって、前記コンテンツが、空間を3次元的にキャプチャすることにより生成され、複数のストリームにより構成される3Dオブジェクトコンテンツであることを示す情報を含むグループ情報が格納されたセグメントファイルが取得され、前記グループ情報に基づいて、前記コンテンツの再生に用いる複数の前記ストリームに対応する複数の前記トラックが選択され、選択された複数の各前記トラックについて、前記トラックに対応する1または複数の前記ストリームを含むデータが前記セグメントファイルから抽出される。
本技術の第2の側面のファイル生成装置は、コンテンツの再生に適切な1または複数のトラックのグループ情報であって、前記コンテンツが、空間を3次元的にキャプチャすることにより生成され、複数のストリームにより構成される3Dオブジェクトコンテンツであることを示す情報を含むグループ情報と、前記トラックに対応する1または複数の前記ストリームを含むデータとが格納されたセグメントファイルを生成するファイル生成部を備える。
本技術の第2の側面においては、コンテンツの再生に適切な1または複数のトラックのグループ情報であって、前記コンテンツが、空間を3次元的にキャプチャすることにより生成され、複数のストリームにより構成される3Dオブジェクトコンテンツであることを示す情報を含むグループ情報と、前記トラックに対応する1または複数の前記ストリームを含むデータとが格納されたセグメントファイルが生成される。
本技術の第1の側面および第2の側面によれば、より簡単にコンテンツを再生することができる。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載された何れかの効果であってもよい。
BVコンテンツについて説明する図である。 BVグループの例について説明する図である。 BVグループの例について説明する図である。 MPDファイルの例を示す図である。 表示可能領域について説明する図である。 表示可能領域について説明する図である。 表示可能領域情報のセマンティクスを示す図である。 表示可能領域情報のセマンティクスを示す図である。 ファイル生成装置の構成例を示す図である。 アップロード処理を説明するフローチャートである。 クライアント装置の構成例を示す図である。 BVコンテンツ再生処理を説明するフローチャートである。 BVグループと追加BVストリームの例について説明する図である。 BVグループと追加BVストリームの例について説明する図である。 MPDファイルの例を示す図である。 MPDファイルの例を示す図である。 birdview coverage descriptorのセマンティクスを示す図である。 MPDファイルの例を示す図である。 MPDファイルの例を示す図である。 quality ranking descriptorのセマンティクスを示す図である。 stream_typeのセマンティクスを示す図である。 シルエットの伝送について説明する図である。 デプスに紐付けられたシルエットについて説明する図である。 MPDファイルの例を示す図である。 MPDファイルの例を示す図である。 BVグループの例について説明する図である。 BVグループの例について説明する図である。 MPDファイルの例を示す図である。 MPDファイルの例を示す図である。 BVグループの例について説明する図である。 BVグループの例について説明する図である。 MPDファイルの例を示す図である。 MPDファイルの例を示す図である。 ファイルフォーマット例を示す図である。 Track Group Type Boxのシンタックスとセマンティクスを示す図である。 Birdview Group Boxのシンタックス例を示す図である。 Birdview Coverage Information Boxのシンタックスとセマンティクスの例を示す図である。 BVコンテンツ再生処理を説明するフローチャートである。 BVストリームのパッキングについて説明する図である。 Birdview Information Boxのシンタックス例を示す図である。 Birdview Information Boxのセマンティクス例を示す図である。 Birdview Information Boxのシグナル例を示す図である。 Birdview Quality Ranking Boxのシンタックス例を示す図である。 Birdview Quality Ranking Boxのセマンティクス例を示す図である。 Birdview Information Boxのセマンティクス例を示す図である。 第1のパッキング手法について説明する図である。 第2のパッキング手法について説明する図である。 第3のパッキング手法について説明する図である。 第4のパッキング手法について説明する図である。 領域再配置について説明する図である。 RegionWisePackingBoxの例を示す図である。 RegionWisePackingStructの例を示す図である。 RectRegionPacking(i)の例を示す図である。 RegionWisePackingStructとRectRegionPacking(i)のセマンティクス例を示す図である。 RegionWisePackingBoxのシグナル例を示す図である。 コンピュータの構成例を示す図である。
以下、図面を参照して、本技術を適用した実施の形態について説明する。
〈第1の実施の形態〉
〈本技術について〉
本技術は、BVコンテンツをグループ化することで、より簡単にBVコンテンツを再生することができるようにするものである。
特に、本技術はMPEG-DASHを用いたBVコンテンツ再生や、ISOBMFF(ISO Base Media File Format)のファイルでのBVコンテンツ再生などに適用可能である。
例えば本技術では、MPD(Media Presentation Description)ファイルを拡張することで、MPEG-DASHを用いてBVコンテンツを配信する場合に、BVコンテンツを構成するBVストリームを参照するAdaptation Setをグループ化できるようにした。これにより、MPEG-DASHを用いてBVコンテンツを配信する場合にも、より簡単にBVコンテンツを再生することができる。
また、本技術では、MPEG-DASHを用いてBVコンテンツを配信する場合に、MPDファイルでの新たなメタデータ定義、すなわち後述するdescriptor等により、伝送帯域やユーザの視野等に応じてBVコンテンツの高画質化を行うことができるようにした。
さらに、例えば本技術ではISOBMFFを拡張することで、BVコンテンツを構成するBVストリームをISOBMFFのtrack(トラック)に格納する際に、BVコンテンツを構成するtrackをグループ化することができるようにした。これにより、ISOBMFFのファイルでBVコンテンツを再生する場合にも、より簡単にBVコンテンツを再生することができる。
その他、本技術では、BVストリームをISOBMFFのtrackに格納する際に、複数のBVストリームを1つのtrackに格納することができるようにした。
それでは、以下、本技術について、より詳細に説明する。まず、第1の実施の形態ではMPEG-DASHを用いたBVコンテンツ配信に本技術を適用した場合を例として説明する。
上述したように、BVコンテンツは、空間を3次元的にキャプチャする技術であるVolumetric Capturingによって生成される周囲見回し可能な3Dモデルである。換言すればBVコンテンツは、所定の3Dオブジェクト、つまりオブジェクトの3Dモデルを、その3Dモデルの周囲から見回すことができるコンテンツである。
このようなBVコンテンツでは、例えば図1に示すようにテクスチャやメッシュ、デプスなどから3Dモデルが構成される。
図1に示す例では、矢印Q11に示すように複数の互いに異なる視点位置のテクスチャと、3Dモデルの形状を示すメッシュとを用いることで3DモデルMDL11を構成することができる。
同様に、矢印Q12に示すように複数の互いに異なる視点位置のテクスチャと、3Dモデルの形状を示す、複数の互いに異なる視点位置のデプスとを用いることでも3DモデルMDL11を構成することができる。
ここで、テクスチャ(テクスチャ情報)は、例えば空間上の所定の位置を視点位置としたときの前景となる3Dモデルに対応する被写体と、背景となる被写体とが被写体として含まれるカラー画像の画像情報(テクスチャ画像)である。つまり、テクスチャは3Dモデルの各部位の色を示す色情報であるということができる。BVコンテンツでは、例えば1つの視点位置についてのテクスチャが1つのBVストリームとされる。
また、メッシュは、例えば3Dモデル(オブジェクト)上のいくつかの部位を頂点とし、それらの頂点間のつながりにより3Dモデルの形状を表すポリゴンメッシュなどの形状情報(メッシュ情報)である。BVコンテンツでは、1つのメッシュが1つのBVストリームとされる。
さらに、デプスは、例えば空間上の所定の位置を視点位置としたときの、その視点位置から、前景となる3Dモデルに対応する被写体や、背景となる被写体までの距離を示すデプスマップと呼ばれるデプス画像(デプス情報)である。このデプスも3Dモデルの形状を表す形状情報となっている。BVコンテンツでは、例えば1つの視点位置についてのデプスが1つのBVストリームとされる。
このようにテクスチャと、メッシュまたはデプスとを用いれば、3DモデルMDL11を構成することができる。すなわち、メッシュやデプスから3DモデルMDL11の3D形状を構築することができるので、その3D形状の各領域にテクスチャにより色情報を付加すれば、カラーの3DモデルMDL11を得ることができる。
なお、テクスチャ、メッシュ、およびデプスを用いて3DモデルMDL11を構成(構築)することも可能である。
BVコンテンツでは、3DモデルMDL11が構成されると、視聴者であるユーザは、例えばヘッドマウンテッドディスプレイを使用して、自身の視点位置を変えながら、3DモデルMDL11をその周囲から見回すことができる。
BVコンテンツを視聴する場合、3Dモデルの周囲をスムーズに見回すことができる視聴体験が最も重要である。これをMPEG-DASH配信で実現するためには、例えばクライアントはBVコンテンツを構成する全てのBVストリームを予め選択して取得しておく必要がある。
本技術では、BVストリームを選択して取得する処理を容易にすべく、BVコンテンツを構成するBVストリームをグループ化(グルーピング)するようにした。
以下では、グループ化されたBVストリーム、つまり複数のBVストリームからなるBVストリームのグループをBVグループとも称することとする。
ここで、BVグループには、少なくともBVコンテンツの再生に必要なBVストリームが含まれているものとする。換言すれば、BVグループを構成するBVストリームを用いれば、少なくともBVコンテンツの再生が可能であるものとする。
複数のBVストリームをまとめて1つのBVグループとすることで、クライアントは、少なくともBVグループを構成するBVストリームを取得すれば、BVコンテンツの再生が可能となる。したがって、クライアントはスムーズな周囲見回し視聴を行うために必要なBVストリームを容易に選択したり取得したりすることができる。
なお、本技術では、Volumetric Capturingによって生成されたBVコンテンツの3Dモデルは、テクスチャ、メッシュ、デプス、シルエットとして符号化されるものとする。すなわち、BVストリームの種類として、少なくともテクスチャ、メッシュ、デプス、およびシルエットがあるものとする。ここで、シルエット(シルエット情報)とは、デプス画像における3Dモデルとなる被写体(オブジェクト)の領域を示すシルエット画像である。
また、以下では、デプスやシルエットが画像情報である場合を例として説明するが、これらのデプスやシルエットは、3Dモデルの形状や3Dモデルの領域を示す情報であればよく、必ずしも画像情報である必要はない。さらに、以下では、BVストリームの種類を明確にするために、テクスチャのBVストリームやデプスのBVストリームなどとも記すこととする。
〈BVグループのシグナルについて〉
次に、以上のようなBVグループのシグナルについて説明する。
ここでは、具体的な例としてテクスチャとメッシュから1つのBVグループが構成される場合について説明する。
テクスチャとメッシュから1つのBVグループが構成される場合のメリットおよびデメリットとして、以下の点が挙げられる。
(メリット1)
メッシュはデプスと比較して、クライアント側でのデコーダ処理負荷が低い
(メリット2)
3D形状を構成する場合、デプスでは複数のBVストリームが必要となるが、メッシュでは1つのBVストリームで構成可能であり、取得負荷が少ない
(デメリット1)
メッシュはデプスと比較して圧縮効率が悪い
また、テクスチャとメッシュからなるBVグループの例を図2に示す。
図2の例では、空間上の3Dモデル(オブジェクト)の位置に、その3DモデルのメッシュMS1があり、3Dモデルの周囲を囲むように90度ずつ視点位置がずれた4つのテクスチャTX1乃至テクスチャTX4がある。
そして、それらのメッシュMS1と、テクスチャTX1乃至テクスチャTX4とから1つのBVグループが構成されている。このBVグループを構成するBVストリームによりBVコンテンツを構成することが可能である。
なお、各テクスチャやメッシュは伝送路の帯域幅等に応じて高画質化が可能である。すなわち、同じテクスチャやメッシュでも、ビットレートアダプテーションにより、帯域幅に応じてより高いビットレートのテクスチャやメッシュを取得することで、より高品質なBVコンテンツを再生することができる。
また、BVコンテンツを視聴するユーザの視野に相当するテクスチャのみの高画質化も可能である。例えば3Dモデルにおけるユーザの視野内の領域を表示するのに必要なテクスチャをより高いビットレートのテクスチャとし、3Dモデルにおけるユーザの視野外の領域を表示するのに必要なテクスチャを低いビットレートのテクスチャとすることが可能である。このようにすることで、帯域幅があまり広くない場合でも、少なくとも現時点のユーザの視野については高品質なBVコンテンツを提示することができる。
MPEG-DASHを用いてBVコンテンツを配信する場合、以上のようなBVグループのシグナルには、BVコンテンツを管理するためのメディア表示管理ファイルであるMPDファイルを用いればよい。
例えば図3に示すように、メッシュMS11と、4つのテクスチャTX11乃至テクスチャTX14とから1つのBVグループが構成されているとする。そのような場合、そのBVグループに関する情報は図4に示すMPDファイルによりシグナルすればよい。
なお、ここでは、テクスチャやメッシュは、それぞれ個別にsingle track fileとして格納されているとする。すなわち、1つのAdaptation Setには、1つのテクスチャまたはメッシュに関する情報が記述されているとする。
図4に示すMPDファイルでは、矢印W11に示す部分がプリセレクション(Preselection)となっており、このPreselectionには、1または複数のAdaptation Setからなる1つのグループに関する情報が記述されている。すなわち、Preselectionは、BVコンテンツ(BVグループ)ごとの情報が格納される領域である。
矢印W12に示す部分や、矢印W13に示す部分、矢印W14に示す部分は、それぞれ1つのAdaptation Setとなっており、これらのAdaptation Setには、1つのテクスチャやメッシュに関する情報が記述されている。すなわち、ここではAdaptation SetはBVストリームに関する情報が格納される領域となっている。
また、この例では「schemeIdUri=“urn:mpeg:dash:birdview:2017”」とされたエッセンシャルプロパティ(EssentialProperty)またはサプリメンタルプロパティ(SupplementalProperty)がバードビューディスクリプタ(birdview descpriptor)として新たに定義されている。
このbirdview descpriptorは、そのbirdview descpriptorが含まれるPreselectionやAdaptation Setが、BVコンテンツに関するPreselectionやAdaptation Setであることを示す情報である。
換言すれば、birdview descpriptorはPreselectionやAdaptation Setに格納された情報がBVコンテンツに関する情報である、つまりPreselectionやAdaptation Setにより示されるコンテンツがBVコンテンツであることを示す情報であるといえる。
例えば矢印W11に示すPreselectionには、矢印A11に示すようにbirdview descpriptorとなる「schemeIdUri=“urn:mpeg:dash:birdview:2017”」とされたSupplementalPropertyが設けられている。これにより、クライアントは、矢印W11に示すPreselectionがBVコンテンツに関するPreselectionであることを把握することができる。
なお、以下、MPEG-DASHによりコンテンツの配信を受けるクライアントを、特にDASHクライアントとも称することとする。
また、「schemeIdUri=“urn:mpeg:dash:texture:2017”」とされたEssentialPropertyまたはSupplementalPropertyが、テクスチャに関するPreselectionやAdaptation Setであることを示す情報であるテクスチャディスクリプタ(texture descriptor)として新たに定義されている。
例えば矢印W12に示すAdaptation Setの矢印A12に示す部分や、矢印W13に示すAdaptation Setの矢印A13に示す部分には、texture descriptorとなる「schemeIdUri=“urn:mpeg:dash:texture:2017”」とされたSupplementalPropertyが設けられている。これにより、クライアントは、矢印W12に示すAdaptation Setや、矢印W13に示すAdaptation SetがBVコンテンツを構成するテクスチャに関するAdaptation Setであることを把握することができる。
さらに、「schemeIdUri=“urn:mpeg:dash:mesh:2017”」とされたEssentialPropertyまたはSupplementalPropertyが、メッシュに関するPreselectionやAdaptation Setであることを示す情報であるメッシュディスクリプタ(mesh descriptor)として新たに定義されている。
例えば矢印W14に示すAdaptation Setの矢印A14に示す部分には、mesh descriptorとなる「schemeIdUri=“urn:mpeg:dash:mesh:2017”」とされたEssentialPropertyが設けられている。これにより、クライアントは、矢印W14に示すAdaptation SetがBVコンテンツを構成するメッシュに関するAdaptation Setであることを把握することができる。
以下では、birdview descpriptorやtexture descriptor、mesh descriptor等を特に区別する必要のない場合には、単にdescriptorとも称することとする。また、以下、EssentialPropertyとSupplementalPropertyを特に区別する必要のない場合には、単にPropertyとも称することとする。
クライアントは、descriptorを参照することで、PreselectionやAdaptation Setが参照するコンテンツやBVストリームの種類を識別することができる。
特に、texture descriptorや、mesh descriptorは、Adaptation Setに対応するBVストリームの種類を示す情報であるということができる。
これらのbirdview descpriptorやtexture descriptor、mesh descriptorなどの各descriptorは、RepresentationやSubRepresentationにシグナルするようにしてもよい。すなわち、Representation内やSubRepresentation内にdescriptorが記述されてもよい。
なお、EssentialPropertyのschemeIdUriに対応していないDASHクライアントは、そのPropertyの書かれているPreselectionやAdaptation Set、Representationなどは無視しなければならない。
すなわち、EssentialPropertyに上述したbirdview descpriptor等のdescpriptorが記述されている場合、そのdescpriptorに対応していないDASHクライアントは、そのようなdescpriptorが記述されたEssentialPropertyを含むPreselectionやAdaptation Set等を無視しなければならない。
一方、SupplementalPropertyのschemeIdUriに対応していないDASHクライアントは、このProperty値を無視して、そのPreselectionやAdaptation Set、Representationなどを利用してもよい。つまり、上述のdescpriptorに対応していないDASHクライアントでも、そのようなdescpriptorが記述されたSupplementalPropertyを無視して、descpriptorが記述されたSupplementalPropertyを含むPreselectionやAdaptation Set等を利用することが可能である。
さらに、図4に示すMPDファイルでは、BVグループのグルーピングにはMPEG-DASHで規定されているPreselection要素が用いられている。
ここでは、矢印W11に示すPreselection要素のpreselectionComponents属性に、BVグループを構成するAdaptation Setのidを記載することでグルーピングが行われている。
すなわち、この例では、矢印W11に示すPreselectionのpreselectionComponentsの部分が「preselectionComponents=”mesh tex1 tex2 tex3 tex4”」とされている。
ここで、preselectionComponentsの部分における「mesh」、「tex1」、「tex2」、「tex3」、および「tex4」は、1つのBVグループを構成するBVストリームに関するAdaptation Setのidとなっている。
したがって、idがmeshであるAdaptation Set、idがtex1であるAdaptation Set、idがtex2であるAdaptation Set、idがtex3であるAdaptation Set、およびidがtex4であるAdaptation Setにより1つのBVグループが構成されていることが分かる。より詳細には、それらのAdaptation Setに対応するBVストリームから1つのBVグループが構成されている。
この例では、矢印W12に示すAdaptation Setや、矢印W13に示すAdaptation Set、矢印W14に示すAdaptation Setを含む5つのAdaptation Setが1つのBVグループを構成するBVストリームのAdaptation Setとなっている。
例えば矢印W14に示される、idがmeshであるAdaptation Setは、図3のメッシュMS11のBVストリームに関する情報が記述されたAdaptation Setとなっている。
また、矢印W12に示される、idがtex1であるAdaptation Setは、図3のテクスチャTX11のBVストリームに関する情報が記述されたAdaptation Setとなっている。
同様に、idがtex2乃至tex4であるAdaptation Setのそれぞれは、図3のテクスチャTX12乃至テクスチャTX14のBVストリームに関する情報が記述されたAdaptation Setのそれぞれとなっている。
このようにMPDファイルのPreselectionには、そのPreselectionに対応する1つのBVグループを構成するテクスチャやメッシュに関する情報が含まれているAdaptation Setを示す、それらのAdaptation Setのidが含まれている。
Preselectionは、BVグループに属すBVストリーム、すなわち同一の3Dモデルを構成するための複数のBVストリームを示すグループ情報となっている。
したがって、図4の例では、DASHクライアントはPreselectionを参照することで、図3に示したように1つのメッシュMS11と、4つのテクスチャTX11乃至テクスチャTX14とから1つのBVグループが構成されていることを特定することができる。
また、DASHクライアントはPreselectionと、各Adaptation Setのidとを参照することで、BVグループを構成するメッシュMS11やテクスチャTX11などに関する情報が記述されたAdaptation Setを特定することができる。
以上のことから、クライアントはBVコンテンツを取得する際に「schemeIdUri=“urn:mpeg:dash:birdview:2017”」となっているPropertyを持つPreselection要素のpreselectionComponents属性を参照することで、BVコンテンツの表示(再生)に必要なAdaptation Setを容易に選択して取得することができる。
また、テクスチャやメッシュの各Adaptation Setについて、伝送路の帯域幅に応じてそれぞれ画質の変更が可能となる。例えば帯域幅に余裕があるときは、より高画質なテクスチャやメッシュのBVストリームを取得することで、BVコンテンツを高画質化することができる。
すなわち、Adaptation Setには、複数のRepresentationが含まれている。そして、それらの複数のRepresentationのそれぞれには、同じテクスチャやメッシュであるが、複数の異なるビットレート、つまり複数の異なる画質のテクスチャやメッシュに関するBVストリームのそれぞれに関する情報が記述されている。
したがって、クライアントは1つのAdaptation Setに含まれる複数のRepresentationのなかから、伝送路の帯域幅等に応じて1つのRepresentationを選択し、その選択したRepresentationに対応するBVストリームを取得することで、任意の画質のBVストリームを得ることができる。
さらに図4に示す例では、「schemeIdUri=“urn:mpeg:dash:bvcoverage:2017”」とされたschemeIdUriのEssentialPropertyまたはSupplementalPropertyが、バードビューカバレッジディスクリプタ(birdview coverage descriptor)として新たに定義されている。
このbirdview coverage descriptorは、PreselectionやAdaptation Setに記述されている情報、つまりBVコンテンツやテクスチャ、メッシュなどの表示可能領域を示す表示可能領域情報である。図4では、矢印A15乃至矢印A18のそれぞれにより示されるSupplementalPropertyのそれぞれがbirdview coverage descriptorとなっている。
例えばbirdview coverage descriptorでは、3Dモデルの中心から見た球面上領域として表示可能領域がシグナルされる。
ここで、例えば1つのテクスチャについての表示可能領域の例を図5に示す。なお、図5において図3における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図5に示す例では、3Dモデルの中心位置を中心とする球SP11の表面の領域が球面上領域となっている。ここでは、球SP11の中心位置を中心Oと記すこととする。
いま、空間上に3DモデルについてのテクスチャTX12を配置したとする。なお、テクスチャTX12の配置位置は、例えばそのテクスチャTX12の視点位置から見たときに、テクスチャTX12上の3Dモデルに対応する被写体と、中心Oに配置される実際の3Dモデルとが重なる位置とされる。
このとき、中心OおよびテクスチャTX12の端部分を通る直線と、球SP11とが交わる点からなる線を境界とする領域が、テクスチャTX12の表示可能領域VR11となる。したがって、中心Oと、テクスチャTX12の任意の端部分の位置とを通る直線は、必ず表示可能領域VR11の端部分を通ることになる。
このような表示可能領域VR11は、空間上に配置されたテクスチャTX12を球SP11の球面上領域に投影したときの領域であり、テクスチャTX12によって被写体の画像を表示可能な領域となっている。
以上のような球面上領域における表示可能領域は、例えば図6の矢印E11に示すように球SP11の中心Oと、その中心Oと中心が一致する球SP11上の4つの円で囲まれた領域となる。なお、図6において図5における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図6の矢印E12に示す部分には、図5に示した表示可能領域VR11が示されている。ここでは、中心Oが3Dモデルの中心位置となっており、中心O’が表示可能領域VR11の中心位置となっている。
図4の説明に戻り、birdview coverage descriptorとされたPropertyのvalueには、そのPropertyが含まれるPreselectionやAdaptation Setに対応するBVコンテンツやテクスチャ、メッシュなどの表示可能領域を示す座標情報や角度情報が含まれている。
ここでは、例えば図7に示す各パラメータがbirdview coverage descriptorとなっているPropertyのvalueに記述されている。すなわち、表示可能領域情報のセマンティクスは図7に示す通りである。
具体的には、パラメータ「x」は、空間上における3Dモデルの中心位置のx座標を示している。なお、ここでは3Dモデルの中心位置は、x座標、y座標、およびz座標からなる3次元直交座標系の座標により表されるものとする。
また、パラメータ「y」は、空間上における3Dモデルの中心位置のy座標を示しており、パラメータ「z」は、空間上における3Dモデルの中心位置のz座標を示している。
これらのパラメータx、y、およびzにより定まる3Dモデルの中心位置が、図6に示した中心Oの位置となる。3Dモデルの中心位置の座標は、複数のBVコンテンツが存在する際には、それらのBVコンテンツの位置関係を決める上で有用である。
パラメータ「center_yaw」は、3Dモデルの中心位置から見たときの表示可能領域の中心位置を示すヨー角(yaw角)を示している。また、パラメータ「center_pitch」は、3Dモデルの中心位置から見たときの表示可能領域の中心位置を示すピッチ角(pitch角)を示しており、パラメータ「center_roll」は、3Dモデルの中心位置から見たときの表示可能領域の中心位置のロール角(roll角)を示している。
これらのヨー角、ピッチ角、およびロール角によって、球面上領域における表示可能領域の中心位置と、その表示可能領域の向き(回転角度)が定まる。
すなわち、例えばヨー角とピッチ角により図6に示した中心O’の位置が定まり、ロール角によって図6に示した表示可能領域VR11の回転角度が定まる。ここでいう回転角度とは、図6の中心Oと中心O’とを結ぶ直線を回転軸として表示可能領域VR11を回転させたときの回転角度である。
さらに、パラメータ「hor_range」は、3Dモデルの中心位置から見たときの表示可能領域の水平方向角度レンジを示しており、パラメータ「ver_range」は、3Dモデルの中心位置から見たときの表示可能領域の垂直方向角度レンジを示している。
したがって、これらのhor_rangeとver_rangeから、球面上領域における表示可能領域の水平方向の幅と垂直方向の幅(高さ)が定まる。例えば図6の例では、点線で描かれた図6中、横方向の矢印がのhor_rangeから定まる表示可能領域VR11の水平方向の幅を表しており、点線で描かれた図6中、縦方向の矢印がのver_rangeから定まる表示可能領域VR11の垂直方向の幅を表している。
birdview coverage descriptorとされたPropertyのvalueには表示可能領域を示す情報として、上述したパラメータであるx、y、z、center_yaw、center_pitch、center_roll、hor_range、およびver_rangeがコンマ区切りで記述されている。すなわち、「value=“x,y,z,center_yaw,center_pitch,center_roll,hor_range,ver_range”」とされる。
例えば図4の例では、Preselection要素にシグナルされる矢印A15に示すSupplementalPropertyがbirdview coverage descriptorとなっており、そのvalueの部分が「0,0,0,0,0,0,360,120」となっている。
このvalueの「0,0,0,0,0,0,360,120」の部分がBVコンテンツ自体の表示可能な領域である表示可能領域を示す情報となっている。
ここでは、「0,0,0,0,0,0,360,120」から、BVコンテンツの3Dモデルの中心位置の座標が(0,0,0)であり、その表示可能領域の中心位置および向きが、ヨー角「0度」、ピッチ角「0度」、およびロール角「0度」によって定まる位置および向きであることが分かる。また、その3Dモデルの表示可能領域の範囲は、球面上領域における水平方向に360度で垂直方向に120度の範囲となっていることが分かる。
この場合、BVコンテンツの表示可能領域は、球面上領域全体、つまり垂直方向と水平方向の全方位(全周囲)をカバーしていない。しかし、そのような場合においても、テクスチャが足りない部分、つまりテクスチャがない表示可能領域外の部分については、クライアントが実装依存で補完処理を行い、360度の全周囲から見回し可能なBVコンテンツ表示を行うようにしてもよい。
また、例えば図4の矢印A16に示すSupplementalPropertyではvalueの部分が「0,0,0,-90,0,0,90,120」となっている。このことから、そのSupplementalPropertyに対応するテクスチャの表示可能領域の範囲は、3Dモデルの中心位置の座標(0,0,0)から見て、ヨー角「-90度」およびピッチ角「0度」により定まる位置を中心とした、水平方向に90度で垂直方向に120度の範囲となっていることが分かる。さらに、表示可能領域の回転角度(ロール角)は0度となっていることも分かる。
このように、birdview coverage descriptorをシグナルすることで、クライアント側ではBVコンテンツ自体やBVストリームの表示可能領域を把握することができる。
これにより、クライアントは、例えば複数の異なる表示可能領域のBVコンテンツから適切なBVコンテンツを選択したり、ユーザの視点位置に応じて複数のテクスチャからユーザの視野をカバーするテクスチャのみを選択したりすることができるようになる。
また、birdview coverage descriptorをシグナルすることで、クライアント側では、例えば取得するテクスチャのうちのユーザの視野に相当する領域をカバーするテクスチャのみ、より高画質なものを選択することができる。これにより、ユーザの視野に適応したBVコンテンツの高画質化が可能となる。
なお、ここではPropertyのvalueの部分に表示可能領域を示す各パラメータをコンマ区切りで記述する例について説明したが、それぞれのパラメータごとに個別の属性値でシグナルしてもよい。この場合、各パラメータがvalueに記述されるのではなく、1つのエレメントのなかにx=0、y=0などと記述される。
また、図7に示した例では、3Dモデルの中心位置から見たときの各パラメータにより表示可能領域が表現される場合について説明した。しかし、3Dモデルの外側から見たときの各パラメータにより表示可能領域を表現し、それらのパラメータをシグナルするようにしてもよい。そのような場合、例えば表示可能領域情報のセマンティクスは図8に示すようになる。
具体的には、パラメータ「x」は、空間上におけるユーザの基準となる視点位置のx座標を示している。ここで、ユーザの基準となる視点位置は、予め定められた位置とされる。
また、パラメータ「y」は、空間上におけるユーザの基準となる視点位置のy座標を示しており、パラメータ「z」は、空間上におけるユーザの基準となる視点位置のz座標を示している。
パラメータ「center_yaw」は、ユーザの基準となる視点位置から3Dモデルを見たときの表示可能領域の中心位置を示すヨー角(yaw角)を示している。また、パラメータ「center_pitch」は、ユーザの基準となる視点位置から3Dモデルを見たときの表示可能領域の中心位置を示すピッチ角(pitch角)を示しており、パラメータ「center_roll」は、ユーザの基準となる視点位置から3Dモデルを見たときの表示可能領域の中心位置のロール角(roll角)、すなわち表示可能領域の回転角度を示している。
さらに、パラメータ「hor_range」は、ユーザの基準となる視点位置から3Dモデルを見たときの表示可能領域の水平方向角度レンジを示しており、パラメータ「ver_range」は、ユーザの基準となる視点位置から3Dモデルを見たときの表示可能領域の垂直方向角度レンジを示している。
〈ファイル生成装置の構成例〉
続いて、以上において説明したMPDファイルと、そのMPDファイルに対応するセグメントファイルを生成するファイル生成装置について説明する。
MPDファイルおよびセグメントファイルを生成するファイル生成装置は、例えば図9に示すように構成される。
図9に示すファイル生成装置11は、制御部21およびファイル生成部22を有している。このファイル生成装置11は、MPEG-DASH等により配信されるBVコンテンツのBVストリームのセグメントファイルとMPDファイルを生成してサーバにアップロードする。
制御部21は、ファイル生成装置11全体の動作を制御する。例えば制御部21は、ファイル生成部22を制御して、BVストリームが格納されたセグメントファイルや、BVコンテンツのメタデータが含まれるMPDファイルを生成させたり、それらのセグメントファイルやMPDファイルをアップロードさせたりする。
ファイル生成部22は、制御部21の制御に従ってセグメントファイルやMPDファイルを生成するとともに、それらのセグメントファイルやMPDファイルをネットワークを介してサーバにアップロード(送信)する。
ファイル生成部22は、データ入力部31、データ符号化・生成部32、MPDファイル生成部33、記録部34、およびアップロード部35を有している。
データ入力部31は、テクスチャやメッシュの生成に必要な画像等のデータ、表示可能領域情報などのMPDファイルの生成に必要なメタデータを取得してデータ符号化・生成部32およびMPDファイル生成部33に供給する。
データ符号化・生成部32は、データ入力部31から供給された画像等のデータに基づいて、テクスチャやメッシュのBVストリームを生成するとともに、それらのBVストリームが格納されたセグメントファイルを生成し、記録部34に供給する。
データ符号化・生成部32は、前処理部41、符号化部42、およびセグメントファイル生成部43を有している。
前処理部41は、データ入力部31から供給された画像等のデータに基づいて、テクスチャやメッシュのBVストリームを生成し、符号化部42に供給する。符号化部42は、前処理部41から供給されたBVストリームを符号化し、得られた符号化データをセグメントファイル生成部43に供給する。
セグメントファイル生成部43は、データ入力部31から供給されたメタデータ等に基づいて、符号化部42から供給された符号化データをセグメント単位でファイル化し、その結果得られたセグメントファイルを記録部34に供給する。
MPDファイル生成部33は、データ入力部31から供給されたメタデータ等に基づいて、BVコンテンツや、そのBVコンテンツを構成するテクスチャやメッシュのBVストリームに関する情報が含まれるMPDファイルを生成し、記録部34に供給する。なお、MPDファイル生成部33は、MPDファイルの生成に必要なメタデータ等をセグメントファイル生成部43から取得するようにしてもよい。
記録部34は、MPDファイル生成部33から供給されたMPDファイル、およびセグメントファイル生成部43から供給されたセグメントファイルを記録する。
アップロード部35は、記録部34からBVコンテンツのMPDファイルおよびセグメントファイルを読み出してサーバにアップロードする。すなわち、アップロード部35はMPDファイルおよびセグメントファイルをサーバに送信する通信部として機能する。
なお、ここではファイル生成装置11が、MPDファイルおよびセグメントファイルをサーバにアップロードする装置として機能する例について説明するが、ファイル生成装置11がサーバとして機能してもよい。そのような場合、ファイル生成装置11のアップロード部35は、ネットワークを介してMPDファイルおよびセグメントファイルをクライアント装置に送信する。
〈アップロード処理の説明〉
次に、ファイル生成装置11の動作について説明する。すなわち、以下、図10のフローチャートを参照して、ファイル生成装置11によるアップロード処理について説明する。
ステップS11において、データ入力部31は、BVストリームの生成に必要な画像等のデータと、表示可能領域情報などのMPDファイルの生成に必要なメタデータを取得してデータ符号化・生成部32およびMPDファイル生成部33に供給する。
ステップS12において、データ符号化・生成部32はセグメントファイルを生成する。
すなわち、前処理部41は、データ入力部31から供給された画像等のデータに基づいてテクスチャやメッシュのBVストリームを生成し、符号化部42に供給する。符号化部42は、前処理部41から供給されたBVストリームを符号化し、得られた符号化データをセグメントファイル生成部43に供給する。
セグメントファイル生成部43は、データ入力部31から供給されたメタデータ等に基づいて、符号化部42から供給された符号化データをファイル化し、その結果得られたセグメントファイルを記録部34に供給する。
ステップS13において、MPDファイル生成部33は、データ入力部31から供給されたメタデータに基づいてMPDファイルを生成し、記録部34に供給する。
ここで、MPDファイルにはbirdview descpriptorやtexture descriptor、mesh descriptor、BVグループを構成するBVストリームに関するAdaptation Setのid、birdview coverage descriptorなどが含まれている。具体的には、例えば図4に示したMPDファイルが生成される。
ステップS14において、記録部34は、MPDファイル生成部33から供給されたMPDファイル、およびセグメントファイル生成部43から供給されたセグメントファイルを記録する。
ステップS15において、アップロード部35は、任意のタイミングで記録部34からMPDファイルおよびセグメントファイルを読み出してサーバにアップロードし、アップロード処理は終了する。
なお、MPDファイルおよびセグメントファイルのアップロードのタイミングは、それらのMPDファイルおよびセグメントファイルが記録部34に記録された後であれば、どのようなタイミングであってもよい。
以上のようにしてファイル生成装置11は、MPDファイルおよびセグメントファイルを生成し、アップロードする。
特に、ファイル生成装置11では、PreselectionにBVグループを構成するAdaptation Setのidが含まれているMPDファイルが生成される。
これにより、MPDファイルの供給を受けたクライアントは、簡単にBVグループを構成するBVストリームのAdaptation Setを特定することができる。すなわち、簡単にBVコンテンツの再生に必要なBVストリームの組み合わせを特定することができる。
その結果、BVコンテンツがMPEG-DASH配信される場合であっても、クライアントにおいて、より簡単にBVコンテンツの再生に必要なBVストリームを取得し、BVコンテンツを再生することができるようになる。
〈クライアント装置の構成例〉
続いて、ファイル生成装置11によりアップロードされたMPDファイルやセグメントファイルをサーバから取得してBVコンテンツの再生を行うクライアント装置について説明する。本技術を適用したクライアント装置は、例えば図11に示すように構成される。
図11に示すクライアント装置71は、DASHクライアントであり、制御部81および再生処理部82を有している。
制御部81は、クライアント装置71全体の動作を制御する。例えば制御部81は、再生処理部82を制御して、サーバからMPDファイルやセグメントファイルを取得させるとともに、セグメントファイルに基づいてBVコンテンツを再生させる。
再生処理部82は制御部81の制御に従ってBVコンテンツを再生する。再生処理部82は計測部91、MPDファイル取得部92、MPDファイル処理部93、セグメントファイル取得部94、表示制御部95、データ解析・復号部96、および表示部97を有している。
計測部91は、クライアント装置71とサーバとの間のネットワークの伝送帯域を計測し、その計測結果をMPDファイル処理部93に供給する。MPDファイル取得部92は、サーバからMPDファイルを取得してMPDファイル処理部93に供給する。
MPDファイル処理部93は、MPDファイル取得部92から供給されたMPDファイルに基づいて、取得するBVストリームを選択し、その選択結果をセグメントファイル取得部94に供給する。なお、取得するBVストリームの選択にあたっては、計測部91から供給された計測結果や、表示制御部95から供給されたユーザの視点位置なども適宜利用される。
セグメントファイル取得部94は、MPDファイル処理部93から供給された選択結果に基づいて、BVコンテンツの再生に必要なBVストリームが格納されたセグメントファイルをサーバから取得し、データ解析・復号部96に供給する。
表示制御部95は、BVコンテンツの再生(表示)を制御する。例えば表示制御部95は、BVコンテンツを視聴するユーザの視点位置や視線方向の検出結果を取得し、MPDファイル処理部93およびデータ解析・復号部96に供給する。
データ解析・復号部96は、セグメントファイル取得部94から供給されたセグメントファイルに基づいて、BVコンテンツである3Dモデルの画像を生成し、表示部97に供給する。データ解析・復号部96はセグメントファイル処理部111、復号部112、および表示情報生成部113を有している。
セグメントファイル処理部111は、セグメントファイル取得部94から供給されたセグメントファイルからBVストリームの符号化データを抽出し、復号部112に供給する。復号部112は、セグメントファイル処理部111から供給された符号化データを復号し、その結果得られたBVストリームを表示情報生成部113に供給する。
表示情報生成部113は、表示制御部95から供給されたユーザの視点位置や視線方向の検出結果と、復号部112から供給されたBVストリームとに基づいて、ユーザの視点位置および視線方向に応じた3Dモデルの画像のデータを生成し、表示部97に供給する。
表示部97は、例えば液晶表示パネルなどからなり、表示情報生成部113から供給されたデータに基づいて3Dモデルの画像、すなわちBVコンテンツを表示(再生)する。
〈BVコンテンツ再生処理の説明〉
次に、クライアント装置71の動作について説明する。
すなわち、以下、図12のフローチャートを参照して、クライアント装置71により行われる、BVコンテンツ再生処理について説明する。
ステップS41において、MPDファイル取得部92は、サーバからMPDファイルを取得してMPDファイル処理部93に供給する。すなわち、サーバにより送信されたMPDファイルがMPDファイル取得部92により受信される。これにより、例えば図4に示したMPDファイルが取得される。
ステップS42において、MPDファイル処理部93は、表示制御部95からユーザの視点位置を取得する。
例えば表示制御部95は、図示せぬセンサ等から、ユーザの視点位置および視線方向の検出結果を取得して、MPDファイル処理部93および表示情報生成部113に供給する。MPDファイル処理部93は、このようにして表示制御部95から出力された情報を取得することで、ユーザの視点位置を得る。例えばユーザの視点位置は、3Dモデルが配置される3次元空間上におけるユーザの視点位置の座標情報などとされる。
ステップS43において、計測部91はクライアント装置71とサーバとの間の伝送帯域を計測し、その計測結果をMPDファイル処理部93に供給する。
ステップS44において、MPDファイル処理部93は、ステップS41において取得され、MPDファイル取得部92から供給されたMPDファイルに基づいて、BVグループを識別し、1または複数のBVグループのなかから1つのBVグループを選択する。
すなわち、MPDファイル処理部93は、MPDファイルからbirdview descpriptorがシグナルされているPreselection要素、つまりbirdview descpriptorが含まれているPreselection要素を特定することで、そのPreselection要素が1つのBVグループのものであると識別する。
また、MPDファイル処理部93は、識別された1または複数のBVグループのなかから1つのBVグループを再生対象のBVグループとして選択する。
このとき、例えばMPDファイル処理部93は、Preselectionに含まれているbirdview coverage descriptorを参照し、表示制御部95から供給されたユーザの視点位置に基づいて、ユーザの視野に相当する領域を表示可能なBVグループを選択してもよい。
ステップS45において、MPDファイル処理部93は、ステップS44で選択したBVグループを構成するBVストリームのAdaptation Setを識別する。
すなわち、MPDファイル処理部93は、選択したBVグループのPreselection要素において、preselectionComponents属性に記述されたAdaptation Setのidによりシグナルされている、BVストリームを参照するAdaptation Setを、BVグループを構成するBVストリームのAdaptation Setとして識別する。このとき、BVグループの各Adaptation Setの種類、つまりテクスチャのAdaptation Setであるか、メッシュのAdaptation Setであるかなどは、それらのAdaptation Setでシグナルされているtexture descriptorやmesh descriptorにより識別可能である。
ステップS46において、MPDファイル処理部93は、ステップS45で識別されたBVグループのAdaptation Setについて、BVコンテンツの再生に用いるBVストリームのAdaptation SetおよびRepresentationを選択する。
すなわち、MPDファイル処理部93は、ステップS42で得られたユーザの視点位置や、ステップS43で得られた伝送帯域(帯域幅)に基づいて、ステップS45で識別されたBVグループのAdaptation Setのなかから、取得するBVストリームのAdaptation Setを選択する。
このとき、例えばMPDファイル処理部93は伝送帯域を考慮し、BVグループの全てのAdaptation SetのBVストリームを取得可能であれば、それらの全てのAdaptation Setを選択し、各Adaptation Setについて適切なビットレートのRepresentationを選択する。
また、MPDファイル処理部93がbirdview coverage descriptorを参照し、ユーザの視点位置に基づいて、ユーザの視野領域に相当するBVストリームについては、より高画質(高ビットレート)なBVストリームが選択されるようにRepresentationを選択してもよい。
さらに、伝送帯域の制限からBVグループのBVストリームを全て取得できない場合もある。そのような場合には、MPDファイル処理部93がbirdview coverage descriptorを参照し、ユーザの視野領域のみのBVコンテンツ表示を行うために必要な最低限のBVストリームのAdaptation Setのみが選択および取得されるようにしてもよい。
MPDファイル処理部93は、BVグループのAdaptation SetおよびRepresentationを選択すると、その選択結果をセグメントファイル取得部94に供給し、セグメントファイルの取得を指示する。これにより、Adaptation SetおよびRepresentationにより参照されるBVストリームの取得が指示されたことになる。
ステップS47において、セグメントファイル取得部94は、MPDファイル処理部93から供給された選択結果に基づいて、その選択結果により示されるAdaptation SetおよびRepresentationのBVストリームが格納されたセグメントファイルを取得する。
すなわち、セグメントファイル取得部94は、MPDファイル処理部93から供給された選択結果に従って、セグメントファイルの送信をサーバに要求する。そして、セグメントファイル取得部94は、その要求に応じてサーバから送信されてきたセグメントファイルを受信してセグメントファイル処理部111に供給する。
ステップS48において、セグメントファイル処理部111は、セグメントファイル取得部94から供給されたセグメントファイルからBVストリームの符号化データを抽出し、復号部112に供給する。
ステップS49において、復号部112は、セグメントファイル処理部111から供給された符号化データを復号し、その結果得られたテクスチャやメッシュのBVストリームを表示情報生成部113に供給する。
ステップS50において、表示部97はBVコンテンツを再生し、BVコンテンツ再生処理は終了する。
すなわち、表示情報生成部113は、表示制御部95から供給されたユーザの視点位置や視線方向の検出結果と、復号部112から供給されたBVストリームとに基づいて、ユーザの視点位置および視線方向に応じた3Dモデルの画像を生成する。具体的には、表示情報生成部113はテクスチャとメッシュに基づいて3Dモデルを構築することで、ユーザの視野に応じた3Dモデルの画像を生成する。
そして、表示情報生成部113は、生成した3Dモデルの画像を表示部97に供給し、3Dモデルの画像を表示させることで、BVコンテンツを再生させる。
以上のようにして、クライアント装置71はMPDファイルを取得し、MPDファイルのPreselectionを参照してBVグループを識別するとともに、ユーザの視点位置や伝送帯域に応じてBVグループや、そのBVグループを構成する任意のBVストリームを選択する。
このようにBVグループを構成するAdaptation Setのidが含まれているPreselectionが記述されたMPDファイルを用いれば、簡単にBVグループやBVストリームを選択することができる。これにより、より簡単にBVコンテンツを再生することができる。
〈第1の実施の形態の変形例1〉
〈追加のBVストリームの取得について〉
ところで、以上においてはBVグループを構成するBVストリームのなかから必要なものを選択する例について説明した。
しかし、テクスチャやメッシュのBVストリームから構成されるBVグループに加えて、さらにBVグループに含まれない視点位置のテクスチャやデプスのBVストリームを追加で取得することができるようにしてもよい。つまり、BVグループのBVストリームの視点位置とは異なる視点位置のBVストリームを追加で取得できるようにしてもよい。
BVグループに加えて追加のBVストリームを取得すれば、より高画質なBVコンテンツを再生することが可能となる。
すなわち、取得可能なテクスチャの数を増やすことで、表示可能領域外の領域のテクスチャを補完により生成する必要がなくなるので、レンダリング時のBVコンテンツの品質を向上させることができる。また、メッシュだけでなく、さらにデプスを追加することで3Dモデルを構築する際により高精度な3D形状を得ることが可能となる。
追加でテクスチャやデプスのBVストリームを取得可能とする場合、例えば図13に示す例が考えられる。
図13の例では、図中、左側に示すように、空間上の3Dモデルの位置に、その3DモデルのメッシュMS21があり、3Dモデルの周囲を囲むように90度ずつ視点位置がずれた4つのテクスチャTX21乃至テクスチャTX24がある。
そして、それらのメッシュMS21と、テクスチャTX21乃至テクスチャTX24とから1つのBVグループが構成されている。
さらに、このBVグループのBVストリームに加えて、図中、中央に示すように3Dモデルの周囲を囲むように90度ずつ視点位置がずれた、テクスチャTX21乃至テクスチャTX24とは異なる視点位置の4つのテクスチャHTX21乃至テクスチャHTX24がある。さらに、それらのテクスチャHTX21乃至テクスチャHTX24のそれぞれと同じ視点位置に、デプスHDP21乃至デプスHDP24のそれぞれがある。
クライアント側では、これらのテクスチャHTX21乃至テクスチャHTX24のBVストリームや、デプスHDP21乃至デプスHDP24のBVストリームを追加で取得することが可能である。以下では、追加で取得可能なBVストリームを、特に追加BVストリームとも称することとする。
このような追加で取得可能なテクスチャがあると、例えば図中、右側に示すようにBVグループのテクスチャとは異なるカバレッジ(表示可能領域)を持つテクスチャを用いることができるようになり、より高画質なBVコンテンツを再生することができる。特に、この例では、3Dモデルの周囲を囲む、より多くの視点位置のテクスチャを利用できる。
MPEG-DASHを用いてBVコンテンツを配信する場合に、以上のような追加BVストリームも配信可能とするときには、MPDファイルを用いて追加BVストリームに関する情報のシグナルを行えばよい。
例えば図14に示すように、メッシュMS31と、4つのテクスチャTX31乃至テクスチャTX34とから1つのBVグループが構成されているとする。
また、テクスチャTX31乃至テクスチャTX34のそれぞれとは異なる視点位置の追加のテクスチャHTX31乃至テクスチャHTX34を追加で取得可能であるとする。さらに、テクスチャHTX31乃至テクスチャHTX34のそれぞれの視点位置と同じ視点位置の追加のデプスHDP31乃至デプスHDP34のそれぞれも取得可能であるとする。
なお、図14では、図中、左側に描かれている円は、各BVストリーム、すなわちテクスチャやメッシュ、デプスの視点位置を表している。
このようにメッシュMS31およびテクスチャTX31乃至テクスチャTX34の各BVストリームにより1つのBVグループが構成され、そのBVグループに対してテクスチャHTX31乃至テクスチャHTX34およびデプスHDP31乃至デプスHDP34の各BVストリームが追加で取得可能な場合、例えばMPDファイルは図15および図16に示すようになる。
なお、図16は、図15に示したMPDファイルの部分、すなわち図15の図中、下側に示す部分に続くMPDファイルの残りの部分を示している。図15および図16では、1つのMPDファイルがそれらの図により示されていることを明確にするため、図15中、下側には文字「図16に続く」が記されており、図16中、上側には文字「図15続き」が記されている。これらの文字「図16に続く」および「図15続き」は、実際にはMPDファイルには記述されていない。
また、図15および図16に示すMPDファイルにおいて、図4に示した例と同様の部分については、繰り返しになるのでその説明は適宜省略する。さらに、ここではテクスチャやメッシュ、デプスは、それぞれ個別にsingle track fileとして格納されているとする。
図15および図16に示すMPDファイルでは、矢印W21に示す部分が1つのBVグループに関するPreselectionとなっている。
また、矢印W22乃至矢印W24のそれぞれにより示されるAdaptation Setは、BVグループを構成するテクスチャまたはメッシュに関するAdaptation Setとなっている。そして、矢印W22乃至矢印W24のそれぞれにより示されるAdaptation Setを含む、1つのBVグループを構成する各BVストリームのAdaptation Setのidが矢印W21に示すPreselectionに記述されている。
すなわち、矢印W22乃至矢印W24により示されるAdaptation Setは、矢印W21に示すPreselectionにおけるpreselectionComponentsの部分により示される、BVグループを構成するBVストリームのAdaptation Setとなっている。
ここでは、tex1乃至tex4は、図14のテクスチャTX31乃至テクスチャTX34に関する情報が記述されたAdaptation Setのidとなっており、meshは図14のメッシュMS31に関する情報が記述されたAdaptation Setのidとなっている。
したがって、矢印W21に示すPreselectionから、テクスチャTX31乃至テクスチャTX34とメッシュMS31により1つのBVグループが構成されていることが分かる。
さらに、矢印W25乃至矢印W28のそれぞれにより示されるAdaptation Setは、BVグループを構成するBVストリームにより構成される3Dモデルと同一の3Dモデルを構成するための、BVグループを構成するBVストリームとは異なる、高画質化用の追加BVストリームに関する情報が記述されたAdaptation Setとなっている。
例えば図14に示したテクスチャHTX31乃至テクスチャHTX34に関する情報が記述されたAdaptation Setのidはhq_tex1乃至hq_tex4とされている。また、図14に示したデプスHDP31乃至デプスHDP34に関する情報が記述されたAdaptation Setのidはhq_dep1乃至hq_dep4とされている。
矢印W25や矢印W26により示される追加のテクスチャに関するAdaptation Setには、テクスチャに関するAdaptation Setであることを示すtexture descriptorが含まれている。
また、この例では「schemeIdUri=“urn:mpeg:dash:depth:2017”」とされたEssentialPropertyまたはSupplementalPropertyが、デプスに関するPreselectionやAdaptation Setであることを示す情報であるデプスディスクリプタ(depth descriptor)として新たに定義されている。
クライアントは、このdepth descriptorを参照することで、depth descriptorを含むPreselectionやAdaptation Setが参照するBVストリームがデプスであることを識別することができる。なお、depth descriptorは、RepresentationやSubRepresentationにシグナルしてもよい。
例えば矢印W27に示すAdaptation Setの矢印A21に示す部分や、矢印W28に示すAdaptation Setの矢印A22に示す部分には、depth descriptorとなる「schemeIdUri=“urn:mpeg:dash:depth:2017”」とされたEssentialPropertyが設けられている。
これにより、クライアントは、矢印W27や矢印W28に示すAdaptation SetがBVコンテンツを構成するデプスに関するAdaptation Setであることを把握することができる。
また、この例では、矢印W21に示すPreselectionおよび矢印W22乃至矢印W28に示すAdaptation Setには、それぞれ矢印A23乃至矢印A30に示すbirdview coverage descriptorが記述されている。
なお、birdview coverage descriptorは、テクスチャやメッシュと同様にデプスにも適用可能であり、ここではデプスのAdaptation Setにもbirdview coverage descriptorが記述されている。
これらのbirdview coverage descriptorは、上述した表示可能領域情報であるが、この表示可能領域情報には、BVストリームの表示可能領域を示す情報の他に、参照するBVストリームのソース(素材)を示すsource_idが含まれている。
換言すれば、birdview coverage descriptorには、表示可能領域情報に加えて、BVコンテンツのソースを示すソースID(source_id)が含まれている。このsource_idは、BVストリームを用いて再生可能なBVコンテンツ、つまりBVストリームを用いて構成可能な3Dモデルを示す情報であるといえる。
birdview coverage descriptorのvalueの部分の先頭には、source_idが配置され、そのsource_idに続いて表示可能領域に関する各パラメータが配置される。
したがって、図15および図16に示す例におけるbirdview coverage descriptorは、図4の例で示したbirdview coverage descriptorを拡張したものとなっている。
ここで、図15および図16に示す例におけるbirdview coverage descriptorのセマンティクスは図17に示す通りである。
図17に示す例では、パラメータ「source_id」は、BVコンテンツのソースのIDを示している。したがって、source_idが同じであれば、BVコンテンツのソースが同一であるから、同一のsource_idを有するBVストリームを組み合わせれば1つのBVコンテンツを構成することができる。
また、図17に示す例では、source_id以外の他のパラメータ、すなわちパラメータ「x」、「y」、「z」、「center_yaw」、「center_pitch」、「center_roll」、「hor_range」、および「ver_range」は図7における場合と同様となっている。
図15および図16の説明に戻り、図15および図16に示す例ではbirdview coverage descriptorとされたPropertyのvalueには、上述したパラメータであるsource_id、x、y、z、center_yaw、center_pitch、center_roll、hor_range、およびver_rangeがコンマ区切りで記述されている。すなわち、birdview coverage descriptorのvalueの部分は、「value=“source_id,x,y,z,center_yaw,center_pitch,center_roll,hor_range,ver_range”」とされている。
特に、この例ではAdaptation Setごと、つまりBVストリームごとにbirdview coverage descriptorが格納されており、矢印A23乃至矢印A30に示す各birdview coverage descriptorにおけるsource_idは全て「1」となっている。したがって、これらのbirdview coverage descriptorを含むPreselectionやAdaptation Setは、全て同じBVコンテンツに関するものであることを特定することができる。すなわち、これらのsource_id「1」を含むAdaptation Setに対応するテクスチャやメッシュ、追加のテクスチャ、追加のデプスから同一のBVコンテンツを構成できることが分かる。
以上のように追加のBVストリームも取得することができる場合、例えばファイル生成装置11は、図10を参照して説明したアップロード処理と同様の処理を行う。
但し、ステップS13では、図15および図16に示したようにMPDファイル生成部33は、追加のテクスチャや追加のデプスについてのAdaptation Setが含まれるMPDファイルを生成する。また、MPDファイル生成部33は、図15や図16に示したようにsource_idを含むbirdview coverage descriptorを生成し、PreselectionやAdaptation Setに記述する。
さらに、追加のBVストリームも取得することができる場合、クライアント装置71は、図12を参照して説明したBVコンテンツ再生処理と同様の処理を行ってBVコンテンツを再生する。
但し、ステップS45では、MPDファイル処理部93はBVグループのAdaptation SetやRepresentationだけでなく、birdview coverage descriptorのsource_idに基づいて、BVグループに対して追加可能なBVストリームのAdaptation SetやRepresentationも識別する。この場合、デプスのAdaptation SetやRepresentationについては、それらのAdaptation Setに含まれるdepth descritptorにより識別可能である。
また、ステップS46では、MPDファイル処理部93はBVグループを構成するAdaptation SetやRepresentation、および追加のBVストリームのAdaptation SetやRepresentationのなかから、取得するBVストリームのAdaptation SetやRepresentationを選択する。
このとき、MPDファイル処理部93は、ユーザの視点位置や伝送帯域、birdview coverage descriptorのvalueに含まれているsource_idや表示可能領域を示す情報(パラメータ)等に基づいて、取得するBVストリームのAdaptation SetやRepresentationを選択する。
具体的には、例えばMPDファイル処理部93は、ユーザの視野領域に相当するBVストリームを高画質化することができる。
また、MPDファイル処理部93は伝送帯域に余裕がある場合には、BVグループを構成するテクスチャとは異なる視点位置の追加のテクスチャのRepresentationや、ユーザの視野に応じた高画質化用の追加のデプスのRepresentationを選択することができる。これにより、より高画質なBVコンテンツ再生を行うことができる。
〈第1の実施の形態の変形例2〉
〈BVストリームのquality rankingについて〉
ところで、上述したデプスはISO/IEC 14496-10(MVC with depth, 3D AVC)やISO/IEC 23008-2(Multiview HEVC, 3D HEVC)といったAVC/HEVCベースのデプスマップの符号化により圧縮される。
一方で、メッシュの符号化では、ISO/IEC 14496-16(Animation Framework eXtension)によりメッシュの頂点座標および頂点の結合情報が符号化される。
このようにデプスとメッシュとでは、両者のコーデック(符号化方式)が異なるため、単純にデプスとメッシュのBVストリームのビットレートだけでは、デプスやメッシュのBVストリームから構成できる3D形状のクオリティ(品質)を比較することはできない。
そこで、メッシュやデプスにより構成される3D形状の品質を示す情報であるquality rankingをシグナルすれば、クライアント側において、伝送帯域等に応じて適切なクオリティ(品質)の3D形状を構成可能なメッシュやデプスを選択し、取得することができる。
以下では、メッシュやデプスのquality rankingをシグナルする例について説明する。なお、quality rankingは、メッシュやデプスのみではなく、テクスチャのクオリティのシグナルや、これらのテクスチャやメッシュ等を組み合わせて構成されるBVコンテンツのクオリティのシグナルにも使用可能である。
メッシュやデプスのquality rankingをシグナルする場合、MPDファイルは例えば図18および図19に示すようになる。なお、図19は、図18に示したMPDファイルの部分、すなわち図18の図中、下側に示す部分に続くMPDファイルの残りの部分を示している。図18および図19では、1つのMPDファイルがそれらの図により示されていることを明確にするため、図18中、下側には文字「図19に続く」が記されており、図19中、上側には文字「図18続き」が記されている。これらの文字「図19に続く」および「図18続き」は、実際にはMPDファイルには記述されていない。
また、図18および図19に示すMPDファイルにおいて、図15および図16に示した例と同様の部分については、繰り返しになるのでその説明は適宜省略する。さらに、ここではテクスチャやメッシュ、デプスは、それぞれ個別にsingle track fileとして格納されているとする。
図18および図19に示すMPDファイルでは、矢印W41乃至矢印W48のそれぞれに示されるPreselectionやAdaptation Setは、図15および図16の矢印W21乃至矢印W28のそれぞれに示されるPreselectionやAdaptation Setと同じとなっている。
すなわち、矢印W41に示す部分が1つのBVグループに関するPreselectionとなっており、矢印W42乃至矢印W44のそれぞれにより示されるAdaptation Setは、BVグループを構成するテクスチャやメッシュのAdaptation Setとなっている。
また、矢印W45乃至矢印W48のそれぞれにより示されるAdaptation Setは、BVグループと同じBVコンテンツについての追加のテクスチャやデプスのAdaptation Setとなっている。
さらに、この例では「schemeIdUri=“urn:mpeg:dash:bvqualityranking:2017”」とされたEssentialPropertyまたはSupplementalPropertyが、BVストリームのクオリティ(品質)を示す情報であるクオリティランキングディスクリプタ(quality ranking descriptor)として新たに定義されている。
この例ではquality ranking descriptorは、互いに異なるAdaptation Setに含まれているRepresentationに対応するメッシュやデプス間の相対的なクオリティ(quality ranking)を示す情報である。換言すれば、quality ranking descriptorは、同一のBVコンテンツを再生するための複数のBVストリーム間における、各BVストリームの相対的なクオリティ(品質)を示す品質情報であるといえる。特に、quality ranking descriptorでは、メッシュやデプスの表示可能領域内の1または複数の領域ごとにquality rankingがシグナルされる。
例えばquality ranking descriptorのセマンティクスは図20に示す通りである。
具体的には、パラメータ「id」はquality rankingのidを示しており、quality rankingは同じidのquality ranking descriptorの中での相対値でシグナルされる。
パラメータ「quality_ranking」は、quality rankingの値を示しており、quality_rankingの値が1以上である場合、その値が小さいほど高いクオリティであることを示している。また、quality_rankingの値が0である場合、quality ranking(ランキング)は未定義となっている。
パラメータ「remaining_area_flag」は、パラメータ「quality_ranking」により示されるquality rankingの値の適用範囲となる領域を特定するためのフラグ情報である。
ここでは、パラメータ「remaining_area_flag」の値が0であれば、quality ranking descriptorには、さらにパラメータ「center_yaw」、「center_pitch」、「center_roll」、「hor_range」、および「ver_range」が含まれており、それらのパラメータによってquality rankingがシグナルされる領域情報がシグナルされる。
換言すれば、パラメータ「quality_ranking」により示されるquality rankingは、パラメータ「center_yaw」、「center_pitch」、「center_roll」、「hor_range」、および「ver_range」により示される領域についてのquality rankingとなる。
これに対して、パラメータ「remaining_area_flag」の値が1であれば、パラメータ「quality_ranking」により示されるquality rankingは、同じRepresentationでquality rankingがシグナルされていない残りの領域に対するquality rankingであることを示す。
なお、以下では、メッシュやデプスの表示可能領域内における、quality rankingの対象となる領域を対象領域とも称することとする。パラメータ「remaining_area_flag」は、quality rankingが適用される対象領域を示す情報であるということができる。
パラメータ「center_yaw」は、3Dモデルの中心位置から見たときの対象領域の中心位置を示すヨー角(yaw角)を示している。また、パラメータ「center_pitch」は、3Dモデルの中心位置から見たときの対象領域の中心位置を示すピッチ角(pitch角)を示しており、パラメータ「center_roll」は、3Dモデルの中心位置から見たときの対象領域の中心位置のロール角(roll角)、すなわち対象領域の回転角度を示している。
さらにパラメータ「hor_range」は、3Dモデルの中心位置から見たときの対象領域の水平方向角度レンジを示しており、パラメータ「ver_range」は、3Dモデルの中心位置から見たときの対象領域の垂直方向角度レンジを示している。
これらのパラメータ「center_yaw」、「center_pitch」、「center_roll」、「hor_range」、および「ver_range」により対象領域が特定される。すなわち、対象領域は、図6を参照して説明した表示可能領域における場合と同様に、例えば球の中心と、その中心と中心が一致する球上の4つの円で囲まれた領域となり、特に対象領域は、表示可能領域と同じ領域となるか、または表示可能領域の一部の領域となる。
なお、ここでは3Dモデルの内側、つまり3Dモデルの中心から見たときの領域を対象領域としてシグナルしているが、3Dモデルの外側、つまり所定の基準となる視点位置から見たときの領域を対象領域としてシグナルしてもよい。
例えばパラメータ「remaining_area_flag」の値が0である場合、quality ranking descriptorとされたPropertyのvalueにはquality rankingに関する情報として、上述したパラメータであるid、quality_ranking、remaining_area_flag、center_yaw、center_pitch、center_roll、hor_range、およびver_rangeがコンマ区切りで記述されている。
すなわち、例えばquality ranking descriptorのvalueは「value=“id,quality_ranking, remaining_area_flag,center_yaw,center_pitch,center_roll,hor_range,ver_range”」などとされる。
これに対して、パラメータ「remaining_area_flag」の値が1である場合、quality ranking descriptorとされたPropertyのvalueにはquality rankingに関する情報として、上述したパラメータであるid、quality_ranking、およびremaining_area_flagがコンマ区切りで記述されている。
すなわち、例えばquality ranking descriptorのvalueは「value=“id,quality_ranking, remaining_area_flag”」などとされる。
図18および図19に示す例では、矢印A41乃至矢印A44のそれぞれにより示されるSupplementalPropertyがquality ranking descriptorとなっている。
例えば矢印A41により示されるSupplementalPropertyでは、そのvalueの部分が「1,5,1」となっている。
したがって、このSupplementalPropertyに対応する、Adaptation SetのidがmeshであるRepresentationのメッシュのquality rankingの値は「5」であることが分かる。
また、このSupplementalPropertyにおけるremaining_area_flagの値が「1」であることから、quality rankingの値「5」はメッシュの表示可能領域全体のquality rankingとなる。つまり、表示可能領域全体が対象領域となる。
また、例えば矢印A42により示されるSupplementalPropertyは、Adaptation Setのidがhq_dep1であるRepresentationのデプスのquality ranking descriptorとなっており、そのvalueの部分が「1,3,0,-90,0,0,90,120」となっている。
したがって、このSupplementalPropertyに対応する追加のデプスの対象領域は、3Dモデルの中心位置から見てヨー角「-90度」、およびピッチ角「0度」により定まる位置を中心とし、ロール角により示される回転が0度であり、水平方向に90度で垂直方向に120度の範囲の領域となることが分かる。また、その対象領域のquality rankingの値は「3」であることが分かる。
さらに、例えば矢印A43により示されるSupplementalProperty、および矢印A44により示されるSupplementalPropertyは、Adaptation Setのidがhq_dep4であるRepresentationのデプスのquality ranking descriptorとなっていることが分かる。
特に、矢印A43により示されるSupplementalPropertyに対応する追加のデプスの対象領域は、3Dモデルの中心位置から見てヨー角「180度」およびピッチ角「0度」により定まる位置を中心とし、ロール角により示される回転が0度であり、水平方向に90度で垂直方向に90度の範囲の領域となることが分かる。また、その対象領域のquality rankingの値は「1」であることが分かる。
また、矢印A44により示されるSupplementalPropertyに対応する追加のデプスの対象領域は、Adaptation Setのidがhq_dep4であるデプスの表示可能領域における、矢印A43により示されるSupplementalPropertyで示された対象領域以外の領域となっていることが分かる。そして、矢印A44により示されるSupplementalPropertyに対応する追加のデプスの対象領域のquality rankingの値は「5」であることが分かる。
これらのことから、この例ではAdaptation Setのidがhq_dep1であるRepresentationのデプスは、Adaptation SetのidがmeshであるRepresentationのメッシュよりも全ての領域においてクオリティが高いことが分かる。また、Adaptation Setのidがhq_dep4であるRepresentationのデプスは、ヨー角「180度」、ピッチ角「0度」、ロール角「0度」、水平方向角度レンジ「90度」、および垂直方向角度レンジ「90度」により定まる領域のみ、Adaptation SetのidがmeshであるRepresentationのメッシュよりもクオリティが高いことが分かる。
以上のようにquality ranking descriptorは、メッシュやデプス等のBVストリームについて、対象領域ごとの品質(quality ranking)を示す情報となっており、これによりメッシュとデプスの品質を比較することができる。クライアントでは、このようなquality ranking descriptorに基づいて、メッシュに追加して適切なクオリティ(quality ranking)のデプスを取得することができる。
なお、ここではPropertyのvalueの部分にquality rankingの値や対象領域を示す各パラメータをコンマ区切りで記述する例について説明したが、それぞれのパラメータごとに個別の属性値でシグナルするようにしてもよい。
また、quality rankingのidの代わりに、Representationを持つAdaptation SetのViewpoint elementを用いてquality rankingによるクオリティの比較対象となるBVストリームの紐付けを行うようにしてもよい。このとき、PropertyのshcemeIdUriとして「shcemeIdUri=“urn:mpeg:dash:bvqualityrankinggroup:2017”」を用いるようにされる。そしてPropertyのvalueが同一であれば、各Adaptation Setに含まれるRepresentationに対して、相対的なquality rankingがシグナルされることを示しているとされる。
さらに、図18および図19に示した例では、quality ranking descriptorがRepresentation下にシグナルされているが、quality ranking descriptor はAdaptation Set下やSub Representation下、Preselection下にシグナルされてもよい。
また、quality ranking descriptorにパラメータとしてstream_typeを追加してもよい。
例えば1つのAdaptation Setにテクスチャとメッシュ、またはテクスチャとデプスに関する情報が含まれており、その1つのAdaptation Setに対応するBVストリームによりBVコンテンツを構成可能であるとする。stream_typeは、そのような場合に、テクスチャ、メッシュ、デプス、およびBVコンテンツのそれぞれに対するquality rankingをシグナルするために使用される。
このようなstream_typeを用いれば、クライアントがBVコンテンツのクオリティを高めるために必要な追加BVストリームを選択する際に、適切なクオリティを有するBVストリーム(またはBVコンテンツ)に関する情報を含むAdaptation Setを識別可能となる。
ここで、quality ranking descriptorに追加されるstream_typeのセマンティクスを図21に示す。この例では、stream_typeはquality rankingがシグナルされるBVストリームの種類を示している。
具体的には、例えばstream_typeの値「0」は、quality rankingがシグナルされるBVストリームの種類がテクスチャであることを示している。また、stream_typeの値「1」はquality rankingがシグナルされるBVストリームの種類がデプスまたはメッシュであることを示しており、stream_typeの値「2」はquality rankingがシグナルされるBVストリームの種類がBVコンテンツであることを示している。
以上のようにMPDファイルによりquality rankingがシグナルされる場合、例えばファイル生成装置11は、図10を参照して説明したアップロード処理と同様の処理を行う。
但し、ステップS13では、図18および図19に示したようにMPDファイル生成部33は、追加のテクスチャやデプスのAdaptation Set、およびquality ranking descriptorが含まれるMPDファイルを生成する。
また、MPDファイルによりquality rankingがシグナルされる場合、クライアント装置71は、図12を参照して説明したBVコンテンツ再生処理と同様の処理を行ってBVコンテンツを再生する。
なお、ステップS44では、MPDファイル処理部93は、複数のBVコンテンツのquality ranking descriptorを参照し、各BVコンテンツのquality rankingに基づいて、それらのBVコンテンツのBVグループのなかから、ユーザの視野に相当する領域が高画質なBVコンテンツのBVグループを選択することも可能である。
また、ステップS45では、MPDファイル処理部93はBVグループのAdaptation SetやRepresentationだけでなく、追加のBVストリームのAdaptation SetやRepresentationも識別する。
さらに、ステップS46では、MPDファイル処理部93はBVグループを構成するAdaptation SetやRepresentation、および追加のBVストリームのAdaptation SetやRepresentationのなかから、取得するBVストリームのAdaptation SetやRepresentationを選択する。
このとき、MPDファイル処理部93は、ユーザの視点位置や伝送帯域、birdview coverage descriptor、quality ranking descriptor等に基づいて、取得するBVストリームのAdaptation SetやRepresentationを選択する。
例えばMPDファイル処理部93は、quality ranking descriptor等に基づいて、ユーザの視野の領域に相当するBVストリームを高画質化することができる。また、伝送帯域に余裕がある場合には、MPDファイル処理部93はユーザの視野に応じた追加のデプス等のRepresentationを選択し、より高画質なBVコンテンツ再生を行うことができる。
〈第1の実施の形態の変形例3〉
〈シルエット情報の伝送について〉
なお、デプスに基づいて3D形状を構成する際に前景、すなわち3Dモデルとなるオブジェクトと、背景とを分離して処理を行うのにシルエットを用いることができる。
シルエットとは、上述したようにデプス画像における3Dモデルとなる被写体(オブジェクト)の領域を示すシルエット画像等の情報である。ここでいうシルエット画像は、例えば画素値として1または0を有する画素からなる画像であるマスク情報などとされる。
なお、例えば所定の閾値以上の輝度値を有する画素からなるデプス上の領域が前景の領域とされる場合には、その閾値をシルエットとしてもよいが、以下ではシルエットはシルエット画像であるものとして説明を続ける。
このようなシルエットを用いる場合、シルエットとデプスを用いて前景のみの3D形状を構成することで、処理量を削減することができるというメリットがある。
シルエットのBVストリームを伝送する場合、例えば図22に示すようにシルエットは、シルエット画像として伝送される。なお、デプス画像内にシルエット情報が含まれるようにし、シルエット情報が含まれたデプスが伝送されるようにしてもよい。
図22に示す例では、互いに異なる視点位置のデプスDP41乃至デプスDP44と、それらのデプスDP41乃至デプスDP44と視点位置が同じであるシルエットSI41乃至シルエットSI44とが伝送される。
例えばデプスDP41とシルエットSI41とは、同じ視点位置の情報であり、シルエットSI41を用いれば、デプスDP41における前景部分の領域を特定(抽出)することができる。
クライアントでは、これらのデプスDP41乃至デプスDP44とシルエットSI41乃至シルエットSI44とを用いることで、矢印Q41に示すように背景のない、前景である3Dモデルのみの3D形状を少ない処理量で構成することができる。そして、このようにして得られた3D形状に対してテクスチャを貼り付けると、矢印Q42に示すように、3Dモデルを得ることができる。
ここで、例えば図14に示したようにメッシュMS31と、4つのテクスチャTX31乃至テクスチャTX34とから1つのBVグループが構成されており、追加のテクスチャHTX31乃至テクスチャHTX34と追加のデプスHDP31乃至デプスHDP34があるとする。
さらに、これらのメッシュMS31、テクスチャTX31乃至テクスチャTX34、テクスチャHTX31乃至テクスチャHTX34、およびデプスHDP31乃至デプスHDP34に加えて、図23に示すように追加のシルエットHSI41乃至シルエットHSI44があるとする。なお、図23において図14における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図23に示す例では、高画質化用の追加のシルエットHSI41乃至シルエットHSI44が追加のデプスHDP31乃至デプスHDP34に対応付けられている。ここで、シルエットHSI41乃至シルエットHSI44のそれぞれの視点位置は、デプスHDP31乃至デプスHDP34のそれぞれの視点位置と同じとなっている。
このようにメッシュMS31、テクスチャTX31乃至テクスチャTX34、テクスチャHTX31乃至テクスチャHTX34、デプスHDP31乃至デプスHDP34、およびシルエットHSI41乃至シルエットHSI44を取得可能な場合、例えばMPDファイルは図24および図25に示すようになる。
なお、図25は、図24に示したMPDファイルの部分、すなわち図24の図中、下側に示す部分に続くMPDファイルの残りの部分を示している。図24および図25では、1つのMPDファイルがそれらの図により示されていることを明確にするため、図24中、下側には文字「図25に続く」が記されており、図25中、上側には文字「図24続き」が記されている。これらの文字「図25に続く」および「図24続き」は、実際にはMPDファイルには記述されていない。
また、図24および図25に示すMPDファイルにおいて、図15および図16に示した例と同様の部分については、繰り返しになるのでその説明は適宜省略する。さらに、ここではテクスチャやメッシュ、デプス、シルエットは、それぞれ個別にsingle track fileとして格納されているとする。
図24および図25に示すMPDファイルでは、矢印W61に示す部分が1つのBVグループに関するPreselectionとなっており、このPreselectionは図15の矢印W21に示したPreselectionと全く同じものとなっている。
また、矢印W62乃至矢印W64のそれぞれにより示されるAdaptation Setは、BVグループを構成するテクスチャまたはメッシュに関するAdaptation Setとなっている。ここでは、矢印W62乃至矢印W64のそれぞれにより示されるAdaptation Setは、図15の矢印W22乃至矢印W24のそれぞれにより示されるAdaptation Setと全く同じものとなっている。
ここでは、tex1乃至tex4は、図14のテクスチャTX31乃至テクスチャTX34に関するAdaptation Setのidとなっており、meshは図14のメッシュMS31に関するAdaptation Setのidとなっている。そして、矢印W61に示すPreselection要素のpreselectionComponents属性に、meshおよびtex1乃至tex4が記述されている。
矢印W65乃至矢印W68のそれぞれにより示されるAdaptation Setは、図16の矢印W25乃至矢印W28のそれぞれにより示されるAdaptation Setに対応している。
すなわち、矢印W65乃至矢印W68により示されるAdaptation Setは、追加のテクスチャHTX31やテクスチャHTX34、デプスHDP31、デプスHDP34に関する情報が記述されたAdaptation Setとなっている。
なお、矢印W65および矢印W66により示されるAdaptation Setは、図16の矢印W25および矢印W26により示されるAdaptation Setと全く同じものとなっている。
矢印W69や矢印W70により示されるAdaptation Setは、追加のシルエットHSI41やシルエットHSI44に関する情報が記述されたAdaptation Setとなっている。
ここでは、テクスチャHTX31乃至テクスチャHTX34に関する情報が記述されたAdaptation Setのidはhq_tex1乃至hq_tex4とされており、デプスHDP31乃至デプスHDP34に関するAdaptation Setのidはhq_dep1乃至hq_dep4とされている。
また、デプスHDP31乃至デプスHDP34のそれぞれに紐付けられたシルエットHSI41乃至シルエットHSI44のそれぞれに関するAdaptation Setのidはsil1乃至sil4とされている。
さらに、この例では「schemeIdUri=“urn:mpeg:dash:silhouette:2017”」とされたEssentialPropertyまたはSupplementalPropertyが、シルエットに関するAdaptation Setであることを示す情報であるシルエットディスクリプタ(silhouette descriptor)として新たに定義されている。
クライアントは、このsilhouette descriptorを参照することで、silhouette descriptorを含むAdaptation Set内のRepresentationがシルエットに関する情報が記述されたものであることを識別することができる。なお、silhouette descriptorは、RepresentationやSubRepresentationにシグナルしてもよい。
例えば矢印W69に示すAdaptation Setには、Adaptation Setのid「sil1」が記述されており、このAdaptation SetにはシルエットHSI41に関する情報が記述されている。同様に、矢印W70に示すAdaptation Setにも、Adaptation Setのid「sil4」が記述されており、このAdaptation SetにはシルエットHSI44に関する情報が記述されている。
また、矢印W69に示すAdaptation Setの矢印A61に示す部分や、矢印W70に示すAdaptation Setの矢印A62に示す部分には、silhouette descriptorとなる、「schemeIdUri=“urn:mpeg:dash:silhouette:2017”」とされたEssentialPropertyが設けられている。
これにより、クライアントは、矢印W69や矢印W70に示すAdaptation SetがBVコンテンツを構成するシルエットに関するAdaptation Setであることを把握することができる。
なお、例示はしないがデプスにシルエット情報が含まれる場合、schemeIdUriが「schemeIdUri=“urn:mpeg:dash:depthwithsilhouette:2017”」であるEssentialPropertyやSupplementalPropertyをdepth with silhouette descriptorとして新規たに定義すればよい。この場合、depth with silhouette descriptorにより、そのdepth with silhouette descriptorが含まれるAdaptation Setがシルエット情報が含まれるデプスに関する情報が記述されたものであることをシグナルすることができる。
さらに、図25に示す例では、Representation内のassociationIdと、Representation内のassociationType=“silh”とが用いられて、シルエットのRepresentationと、そのRepresentationに対応するデプスのRepresentationとが紐付けられている。
ここで、associationIdは、対応するデプスとシルエット、つまりペアとなるデプスとシルエットとを対応付ける(紐付ける)ための情報(Id)となっている。
また、associationTypeは、そのassociationTypeを含むRepresentationと対応するRepresentationの紐付けの種類を示す情報となっている。特に、ここでは「associationType=“silh”」は、Representationの紐付けの種類がシルエットとデプスの関係であることを示している。
例えば、矢印W67に示すAdaptation Setの矢印A63に示すRepresentation内には、idとして「hq_dep1_1」が記述されている。
同様に、矢印W68に示すAdaptation Setの矢印A64に示すRepresentation内には、idとして「hq_dep4_1」が記述されている。
これに対して、矢印W69に示すAdaptation Setの矢印A65に示すRepresentation内には、associationId「hq_dep1_1」とassociationType「silh」とが記述されている。
また、矢印W70に示すAdaptation Setの矢印A66に示すRepresentation内には、associationId「hq_dep4_1」とassociationType「silh」とが記述されている。
したがって、クライアントではid「hq_dep1_1」が記述されている矢印A63に示すRepresentationは、デプスに関するものであると識別することができる。
また、クライアントではassociationId「hq_dep1_1」と「associationType=“silh”」が記述されている矢印A65に示すRepresentationは、矢印A63に示すRepresentation(デプス)に紐付けられたシルエットに関するものであると識別することができる。これは、矢印A65に示すRepresentationには、矢印A63に示すRepresentation内のidと同じものが記述されているからである。
同様に、クライアントでは、矢印A64に示すRepresentationは、デプスに関するものであると識別することができ、矢印A66に示すRepresentationは、矢印A64に示すRepresentation(デプス)に紐付けられたシルエットに関するものであると識別することができる。
以上のようにしてassociationIdとassociationTypeとを用いれば、クライアントでは、デプスと、そのデプスに紐付けられた(対応付けられた)シルエットとを識別し、それらのデプスやシルエットを取得することが可能となる。
このように追加のシルエットを取得することができる場合、例えばファイル生成装置11は、図10を参照して説明したアップロード処理と同様の処理を行う。
但し、ステップS13では、図24および図25に示したようにMPDファイル生成部33は、追加のテクスチャやデプス、シルエットについてのAdaptation Setが含まれるMPDファイルを生成する。
特に、この場合、MPDファイル生成部33は、図24や図25に示したようにシルエットに関するAdaptation Setにはsilhouette descriptorを記述し、シルエットのAdaptation Set内のRepresentationには、associationIdやassociationTypeを必要に応じて記述する。
また、追加のシルエットを取得することができる場合、クライアント装置71は、図12を参照して説明したBVコンテンツ再生処理と同様の処理を行ってBVコンテンツを再生する。
但し、ステップS45では、MPDファイル処理部93はBVグループのAdaptation SetやRepresentationだけでなく、birdview coverage descriptorのsource_idやsilhouette descriptor等に基づいて、BVグループに対して追加可能なBVストリームのAdaptation SetやRepresentationも識別する。
特に、MPDファイル処理部93はRepresentation内のassociationIdやassociationTypeを参照することで、追加のデプスのRepresentationと、そのデプスに紐付けられた追加のシルエットのRepresentationを識別することができる。
なお、シルエットのAdaptation SetやRepresentationについては、Adaptation Setに含まれるsilhouette descriptorにより識別可能である。さらに、デプスにシルエット情報が含まれている場合には、上述したdepth with silhouette descriptorにより、シルエット情報が含まれているデプス(シルエット付きデプス)のAdaptation SetやRepresentationを識別することが可能である。
また、ステップS46では、MPDファイル処理部93はBVグループを構成するAdaptation SetやRepresentation、および追加のBVストリームのAdaptation SetやRepresentationのなかから、取得するBVストリームのAdaptation SetやRepresentationを選択する。
このとき、MPDファイル処理部93は、ユーザの視点位置や伝送帯域、birdview coverage descriptor等に基づいて、取得するBVストリームのAdaptation SetやRepresentationを選択する。例えばMPDファイル処理部93は、ユーザの視野領域に相当するBVストリームを高画質化したり、伝送帯域に余裕がある場合には、ユーザの視野等に応じて追加のテクスチャやデプス、シルエットのRepresentationを選択したりすることができる。
〈第2の実施の形態〉
〈BVグループについて〉
なお、以上においては、テクスチャとメッシュにより1つのBVグループが構成される例について説明したが、テクスチャとデプスにより1つのBVグループが構成されるようにしてもよい。
例えばテクスチャとデプスにより1つのBVグループを構成する場合、以下のようなメリットおよびデメリットがある。
(メリット1)
デプスはメッシュと比較して圧縮率がよい
(デメリット1)
クライアント側でメッシュ化が必要であるため、クライアント側の処理負荷が高い
(デメリット2)
3D形状を構成するために複数のデプス画像が必要となる
また、テクスチャとデプスからなるBVグループの例を図26に示す。なお、図26において図2における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図26の例では、空間上の3Dモデル(オブジェクト)の周囲を囲むように90度ずつ視点位置がずれた4つのテクスチャTX1乃至テクスチャTX4と、それらのテクスチャと同じ視点位置の4つのデプスDP61乃至デプスDP64とがある。
すなわち、デプスDP61乃至デプスDP64のそれぞれは、テクスチャTX1乃至テクスチャTX4のそれぞれと同じ視点位置であり、テクスチャTX1乃至テクスチャTX4のそれぞれとデプスDP61乃至デプスDP64のそれぞれとがペアとなっている。
そして、それらのデプスDP61乃至デプスDP64と、テクスチャTX1乃至テクスチャTX4とから1つのBVグループが構成されており、このBVグループを構成するBVストリームによりBVコンテンツを構成することが可能である。
このようなテクスチャとデプスからなるBVグループのシグナルについても、上述した第1の実施の形態における場合と同様に、メディア表示管理ファイルであるMPDファイルを用いればよい。
例えば図27に示すように、4つのテクスチャTX11乃至テクスチャTX14と、4つのデプスDP71乃至デプスDP74とから1つのBVグループが構成されているとする。なお、図27において図3における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
ここで、デプスDP71乃至デプスDP74のそれぞれの視点位置は、テクスチャTX11乃至テクスチャTX14のそれぞれの視点位置と同じとなっている。
MPEG-DASHを用いてBVコンテンツを配信する場合、このようなBVグループに関する情報は、例えば図28および図29に示すMPDファイルによりシグナルすればよい。
なお、図29は、図28に示したMPDファイルの部分、すなわち図28の図中、下側に示す部分に続くMPDファイルの残りの部分を示している。図28および図29では、1つのMPDファイルがそれらの図により示されていることを明確にするため、図28中、下側には文字「図29に続く」が記されており、図29中、上側には文字「図28続き」が記されている。これらの文字「図29に続く」および「図28続き」は、実際にはMPDファイルには記述されていない。
また、図28および図29に示すMPDファイルにおいて、図15および図16に示した例と同様の部分については、繰り返しになるのでその説明は適宜省略する。さらに、ここではテクスチャやデプスは、それぞれ個別にsingle track fileとして格納されているとする。
図28および図29に示すMPDファイルでは、矢印W91に示す部分が1つのBVグループに関するPreselectionとなっている。
また、矢印W92乃至矢印W95のそれぞれにより示されるAdaptation Setは、BVグループを構成するテクスチャまたはデプスに関するAdaptation Setとなっている。そして、矢印W92乃至矢印W95のそれぞれにより示されるAdaptation Setを含む、1つのBVグループを構成する各BVストリームのAdaptation Setのidが矢印W91に示すPreselectionに記述されている。
ここでは、tex1乃至tex4は、図27のテクスチャTX11乃至テクスチャTX14に関する情報が記述されたAdaptation Setのidとなっている。また、dep1乃至dep4は図27のデプスDP71乃至デプスDP74に関する情報が記述されたAdaptation Setのidとなっている。
例えば矢印W92に示すAdaptation Setには、そのAdaptation Setのidとして「tex1」が記述されており、矢印W93に示すAdaptation Setには、そのAdaptation Setのidとして「tex4」が記述されている。
また、矢印W94に示すAdaptation Setには、そのAdaptation Setのidとして「dep1」が記述されており、矢印W95に示すAdaptation Setには、そのAdaptation Setのidとして「dep4」が記述されている。
したがって、矢印W91に示すPreselection要素のpreselectionComponents属性に記述された「dep1 dep2 dep3 dep4 tex1 tex2 tex3 tex4」から、テクスチャTX11乃至テクスチャTX14とデプスDP71乃至デプスDP74により1つのBVグループが構成されていることが分かる。換言すれば、それらのテクスチャやデプスに対応する8個のAdaptation Setが、基本となる1つのBVグループとしてグルーピングされていることが分かる。
また、矢印W91に示すPreselectionには、図15の矢印W21に示したPreselectionにおける場合と同様のbirdview descpriptorやbirdview coverage descriptorが含まれている。同様に、例えば矢印W92に示すAdaptation Setには、図15の矢印W22に示したAdaptation Setにおける場合と同様のtexture descriptorやbirdview coverage descriptorが含まれている。
さらに、矢印W94に示すAdaptation Setや矢印W95に示すAdaptation Setには、図16の矢印W27に示したAdaptation Setにおける場合と同様のdepth descritptorやbirdview coverage descriptorが含まれている。
例えば矢印W94に示すAdaptation Setでは、矢印A81に示すEssentialPropertyがdepth descritptorとなっており、矢印A82に示すSupplementalPropertyがbirdview coverage descriptorとなっている。
なお、birdview descpriptorやtexture descriptor、depth descritptorの定義は、上述した第1の実施の形態や第1の実施の形態の変形例1における場合と同様である。また、birdview coverage descriptorの定義は上述した第1の実施の形態の変形例1における場合と同様である。
この例においても、BVグループを構成する各テクスチャやデプスについて、クライアント側において伝送帯域に応じて、適切なビットレートのRepresentationを選択する等してテクスチャやデプスの高画質化が可能である。
また、クライアントでは、birdview coverage descriptorを参照することで、ユーザの視野に相当するテクスチャやデプスのみ高画質化することも可能である。
さらに、クライアントにおいて、BVグループを構成する全てのテクスチャおよびデプスを取得せずに、ユーザの視野範囲を表示する上で必要なテクスチャとデプスのみを選択し、それらの選択したテクスチャおよびデプスを取得してレンダリングすることも可能である。これは、特に伝送帯域(帯域幅)が制限され、BVコンテンツを構成する全てのBVストリームを取得できない場合に有用である。
以上のようにテクスチャとデプスによりBVグループが構成される場合、例えばファイル生成装置11は、図10を参照して説明したアップロード処理と同様の処理を行う。
但し、ステップS13では、図28および図29に示したようにMPDファイル生成部33は、テクスチャやデプスのAdaptation Setが含まれるMPDファイルを生成する。
また、このような場合、クライアント装置71は、図12を参照して説明したBVコンテンツ再生処理と同様の処理を行ってBVコンテンツを再生する。
なお、ステップS45では、MPDファイル処理部93は、texture descriptorやdepth descritptorに基づいて、BVグループを構成するテクスチャとデプスのAdaptation Setを識別する。
そして、ステップS46では、MPDファイル処理部93は、BVグループを構成するテクスチャとデプスのAdaptation SetやRepresentationのなかから、取得するBVストリームのAdaptation SetやRepresentationを選択する。このとき、MPDファイル処理部93は、ユーザの視点位置や伝送帯域、birdview coverage descriptor等に基づいて、Adaptation SetやRepresentationを選択する。
〈第2の実施の形態の変形例1〉
〈追加のBVストリームの取得について〉
なお、第2の実施の形態で説明したように、BVグループがテクスチャとデプスから構成される場合、さらにそのBVグループに加えて、BVグループに含まれない視点位置のテクスチャやデプスを追加で取得することができるようにしてもよい。
BVグループに加えて追加のBVストリームを取得すれば、より高画質なBVコンテンツを再生することが可能となる。
すなわち、取得可能なテクスチャの数を増やすことで、表示可能領域外の領域のテクスチャを補完により生成する必要がなくなるので、レンダリング時のBVコンテンツの品質を向上させることができる。また、デプスを追加することで3Dモデルを構築する際により高精度な3D形状を得ることが可能となる。
追加でテクスチャやデプスを取得可能とする場合、例えば図30に示す例が考えられる。なお、図30において図26における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図30の例では、図中、左側に示すように、空間上の3Dモデルの周囲を囲むように90度ずつ視点位置がずれた4つのテクスチャTX1乃至テクスチャTX4と4つのデプスDP61乃至デプスDP64とから1つのBVグループが構成されている。
さらに、このBVグループのBVストリームに加えて、図中、中央に示すように3Dモデルの周囲を囲むように90度ずつ視点位置がずれた、テクスチャTX1乃至テクスチャTX4とは異なる視点位置の4つのテクスチャTX51乃至テクスチャTX54がある。さらに、それらのテクスチャTX51乃至テクスチャTX54のそれぞれと同じ視点位置に、デプスDP81乃至デプスDP84のそれぞれがある。
クライアント側では、これらのテクスチャTX51乃至テクスチャTX54のBVストリームや、デプスDP81乃至デプスDP84のBVストリームを追加BVストリームとして取得することが可能である。
このような追加で取得可能なテクスチャがあると、例えば図中、右側に示すようにBVグループのテクスチャとは異なるカバレッジ(表示可能領域)を持つテクスチャを用いることができるようになり、より高画質なBVコンテンツを再生することができる。
特に、この例では、テクスチャTX1乃至テクスチャTX4に加えて、テクスチャTX51乃至テクスチャTX54が取得されており、これにより、3Dモデルの周囲を囲むより多くの視点位置のテクスチャを利用することができるようになる。
MPEG-DASHを用いてBVコンテンツを配信する場合に、以上のような追加BVストリームも配信可能とするときには、追加BVストリームに関する情報のシグナルにはMPDファイルを用いればよい。
例えば図31に示すように、4つのテクスチャTX91乃至テクスチャTX94と、デプスDP91乃至デプスDP94とから1つのBVグループが構成されているとする。
また、テクスチャTX91乃至テクスチャTX94のそれぞれとは異なる視点位置の追加のテクスチャHTX51乃至テクスチャHTX54のそれぞれのBVストリームを追加で取得可能であるとする。さらに、テクスチャHTX51乃至テクスチャHTX54のそれぞれの視点位置と同じ視点位置の追加のデプスHDP51乃至デプスHDP54のそれぞれのBVストリームも取得可能であるとする。
なお、図31では、図中、左側に描かれている円は、各BVストリーム、すなわちテクスチャやデプスの視点位置を表している。
このようにテクスチャTX91乃至テクスチャTX94とデプスDP91乃至デプスDP94により1つのBVグループが構成され、そのBVグループに対してテクスチャHTX51乃至テクスチャHTX54およびデプスHDP51乃至デプスHDP54が追加で取得可能な場合、例えばMPDファイルは図32および図33に示すようになる。
なお、図33は、図32に示したMPDファイルの部分、すなわち図32の図中、下側に示す部分に続くMPDファイルの残りの部分を示している。図32および図33では、1つのMPDファイルがそれらの図により示されていることを明確にするため、図32中、下側には文字「図33に続く」が記されており、図33中、上側には文字「図32続き」が記されている。これらの文字「図33に続く」および「図32続き」は、実際にはMPDファイルには記述されていない。
また、図32および図33に示すMPDファイルにおいて、図15および図16に示した例と同様の部分については、繰り返しになるのでその説明は適宜省略する。さらに、ここではテクスチャやデプスは、それぞれ個別にsingle track fileとして格納されているとする。
図32および図33に示すMPDファイルでは、矢印W111に示す部分が1つのBVグループに関するPreselectionとなっている。
また、矢印W112乃至矢印W115のそれぞれにより示されるAdaptation Setは、BVグループを構成するテクスチャまたはデプスに関するAdaptation Setとなっている。そして、矢印W112乃至矢印W114のそれぞれにより示されるAdaptation Setを含む、1つのBVグループを構成する各BVストリームのAdaptation Setのidが矢印W111に示すPreselectionに記述されている。
ここでは、tex1乃至tex4は、図31のテクスチャTX91乃至テクスチャTX94に関する情報が記述されたAdaptation Setのidとなっている。また、dep1乃至dep4は、図31のデプスDP91乃至デプスDP94に関する情報が記述されたAdaptation Setのidとなっている。
したがって、矢印W111に示すPreselection要素のpreselectionComponents属性に記述された「dep1 dep2 dep3 dep4 tex1 tex2 tex3 tex4」から、テクスチャTX91乃至テクスチャTX94とデプスDP91乃至デプスDP94により1つのBVグループが構成されていることが分かる。
さらに、矢印W116乃至矢印W119のそれぞれにより示されるAdaptation Setは、高画質化用の追加BVストリームに関する情報が記述されたAdaptation Setとなっている。
例えば図31に示したテクスチャHTX51乃至テクスチャHTX54に関する情報が記述されたAdaptation Setのidはhq_tex1乃至hq_tex4とされている。また、図31に示したデプスHDP51乃至デプスHDP54に関する情報が記述されたAdaptation Setのidはhq_dep1乃至hq_dep4とされている。
なお、図32および図33に示す例において、birdview descpriptorやtexture descriptor、depth descritptorの定義は、上述した第1の実施の形態や第1の実施の形態の変形例1における場合と同様である。また、birdview coverage descriptorの定義は、第1の実施の形態の変形例1、すなわち図15および図16における場合と同様である。
矢印W111に示すPreselectionには、図15の矢印W21に示したPreselectionにおける場合と同様のbirdview descpriptorやbirdview coverage descriptorが含まれている。特に、矢印W111に示すPreselectionの矢印A101に示す部分は、birdview coverage descriptorとなっており、このbirdview coverage descriptorには、参照するBVストリームのソース(素材)を示すsource_idとして「1」が含まれている。
また、テクスチャに関するAdaptation Setである、矢印W112や矢印W113、矢印W116、矢印W117に示すAdaptation Setには、texture descriptorが含まれている。同様に、デプスに関するAdaptation Setである、矢印W114や矢印W115、矢印W118、矢印W119に示すAdaptation Setには、depth descritptorが含まれている。
さらに、矢印W112乃至矢印W119のそれぞれに示されるAdaptation Setにおける、矢印A102乃至矢印A109のそれぞれに示される部分は、birdview coverage descriptorとなっており、これらのbirdview coverage descriptorには、source_idとして「1」が含まれている。
したがって、クライアント側では、矢印W112乃至矢印W119のそれぞれに示されるAdaptation Setに対応するテクスチャやデプスを組み合わせて1つのBVコンテンツを構成することが可能であることを識別(特定)することができる。このとき、例えばユーザの視野に応じてBVグループのBVストリームに加えて、source_idが同じである追加BVストリーム、つまり追加のテクスチャやデプスを選択および取得すれば、より高画質なBVコンテンツ再生を実現することができる。
以上のように追加のBVストリームを取得することができる場合、例えばファイル生成装置11は、図10を参照して説明したアップロード処理と同様の処理を行う。
但し、ステップS13では、図32および図33に示したようにMPDファイル生成部33は、追加のテクスチャやデプスについてのAdaptation Setが含まれるMPDファイルを生成する。また、MPDファイル生成部33は、図32や図33に示したようにsource_idを含むbirdview coverage descriptorを生成し、PreselectionやAdaptation Setに記述する。
さらに、追加のBVストリームを取得することができる場合、クライアント装置71は、図12を参照して説明したBVコンテンツ再生処理と同様の処理を行ってBVコンテンツを再生する。
但し、ステップS45では、MPDファイル処理部93はBVグループのAdaptation SetやRepresentationだけでなく、birdview coverage descriptorのsource_idに基づいて、BVグループに対して追加可能なBVストリームのAdaptation SetやRepresentationも識別する。
また、ステップS46では、MPDファイル処理部93はBVグループを構成するAdaptation SetやRepresentation、および追加のBVストリームのAdaptation SetやRepresentationのなかから、取得するBVストリームのAdaptation SetやRepresentationを選択する。
このとき、MPDファイル処理部93は、ユーザの視点位置や伝送帯域、birdview coverage descriptorのvalueに含まれているsource_idや表示可能領域を示す情報(パラメータ)等に基づいて、Adaptation SetやRepresentationを選択する。
なお、以上において説明した第2の実施の形態や第2の実施の形態の変形例1においても、第1の実施の形態の変形例3における場合と同様に、デプスに紐付けられたシルエットも取得できるようにしてもよい。そのような場合、MPDファイルにシルエットに関するAdaptation Setが記述される。
また、第1の実施の形態や第2の実施の形態において、BVグループのグルーピングをPreselectionではなくAdaptation SetのViewpoint要素を用いて行ってもよい。このとき、Viewpointにおいて「shcemeIdUri=“urn:mpeg:dash:bvgroup:2017”」を使用する。この場合、Viewpointのvalueが同一の値であるAdaptation Setは同一のBVコンテンツを構成可能なBVストリームであることを示すものとされる。
さらに、第1の実施の形態の変形例1や第2の実施の形態の変形1では、PreselectionでシグナルされたBVグループに対して追加可能なBVストリームをbirdview coverage descriptorのvalueにおけるsource_idで紐付けていた。しかし、source_idの代わりに、そのBVストリームが追加可能なBVグループのPreselectionのidを示すpreselection_idにより紐付けするようにしてもよい。
例えば図15に示した例では、Preselectionにおける「bv_base」がpreselection_idとなっており、このpreselection_idをbirdview coverage descriptorに含めることで、BVグループのBVストリームと、追加BVストリームとを紐付けることができる。
また、第1の実施の形態や第1の実施の形態の変形例1、第2の実施の形態、第2の実施の形態の変形例1において、birdview coverage descriptorと同等の情報を、SupplementalPropertyやEssentialPropertyではなく、PreselectionのViewpoint要素やAdaptation SetのViewpoint要素を用いてシグナルしてもよい。このとき、ViewpointのschemeIdUriとViewpointのvalueのセマンティクスは、上述したbirdview coverage descriptorにおける場合と同様である。
その他、BVコンテンツに関するファイルの1つのtrackにテクスチャとメッシュ、またはテクスチャとデプスが格納され、1つのAdaptation SetでBVコンテンツを構成可能な場合には、そのAdaptation Setにbirdview descriptorをシグナルしてもよい。
以上のように、第1の実施の形態乃至第2の実施の形態の変形例1において説明した本技術によれば、テクスチャやメッシュ、デプスなどの各種類のBVストリームをDASH MPDレイヤ、すなわちMPDファイルにおいてグループ化し、そのBVグループをシグナルすることができる。これにより、クライアントがBVコンテンツ視聴に必要なBVストリームを容易に選択したり取得したりすることができる。
しかも、BVグループのBVストリームは、伝送帯域に応じて適応的に画質変更が可能であり、伝送帯域(帯域幅)の有効活用が可能である。
また、BVストリームの表示可能領域情報を付加することで、ユーザの視野に応じて必要な追加BVストリームを取得することができ、BVグループのBVストリームと追加BVストリームから、一部分が高画質の3Dモデルを構築することができる。
〈第3の実施の形態〉
〈BVグループのシグナルについて〉
ところで、以上においてはBVコンテンツを構成するBVストリームを、DASH MPDレイヤでグルーピングする方法について説明した。しかし、このようなBVコンテンツのグルーピングは、ISOBMFFレイヤにおいても行うことができる。
以下では、BVコンテンツをISOBMFFへと格納し、ISOBMFFレイヤにおいてBVコンテンツのグルーピングを行う場合を例として説明する。
そのような場合、BVコンテンツが格納されるファイルは、例えば図34に示すフォーマットとされる。
図34では、ファイルFL11がBVコンテンツを再生するためのファイルとなっており、例えばファイルFL11はISOBMFFに基づくMP4ファイルなどとされる。
この例では、ファイルFL11には、矢印Q61に示すMovie Box(ムービーボックス)と、矢印Q62に示すMedia Data Box(メディアデータボックス)とが設けられている。
Media Data Boxは、BVコンテンツを再生するためのBVストリームが格納されるデータ領域となっており、Media Data Boxには1または複数のtrack(トラック)から参照されるBVストリームが格納されている。そして、1つのtrackから1または複数のBVストリームが参照される。以降、trackがMedia Data Boxに格納されたBVストリームを参照することを、trackがBVストリームを格納するとも称することとする。
なお、1つのtrackには、テクスチャやデプスなどの複数の種類のうちの1つの種類のBVストリームが格納されてもよいし、2以上の種類のBVストリームが格納されるようにしてもよい。
また、Movie Box(moov)は、Media Data Box内の各trackに関する情報、すなわちここではMedia Data Boxに格納されるBVコンテンツに関するメタ情報が格納される領域である。換言すれば、Movie BoxはBVコンテンツを管理するためのメディア表示管理情報が格納される管理領域である。
より詳細には、Movie Boxにはtrackに関する情報が格納されたTrack Box(trak)が格納されており、ここでは1つのtrackに対して1つのTrack Boxが設けられている。
そして、このTrack Boxには、例えば矢印Q63に示すTrack Group Box(trgr)と、矢印Q64に示すMedia Box(mdia)とが格納されている。
Track Group Boxは、1または複数のtrackからなるtrack group(トラックグループ)に関する情報が格納される領域であり、このTrack Group Boxによりtrackのグループ化が行われ、グループに共通の情報がシグナルされる。
Track Group BoxにはTrack Group Type Box(track_group_type)が格納されている。Track Group Type Boxは、ISOBMFFで規定されているものであり、同じ特性を有する複数のtrackをグルーピングするためのツールとして利用される。
また、矢印Q64に示すMedia Boxには、Media Information Box(minf)が格納されており、さらに、そのMedia Information Boxには、trackが参照するBVストリームの時間やアドレスなどの情報を管理するためのSample Table Box(stbl)が格納されている。
Sample Table Boxには、Sample Description Box(stsd)が格納されており、さらにそのSample Description BoxにはSample Entryが格納されている。
このSample Entryには、矢印Q65に示すRestricted Sample Entry(resv)と、矢印Q66に示すVisual Sample Entry(coding name)とがある。換言すれば、Sample Entryの種類として、Restricted Sample EntryやVisual Sample Entryが存在する。
Restricted Sample Entryには、Restricted Scheme Information Box(rinf)が格納されており、このRestricted Scheme Information BoxはBVストリームのデコード(復号)後のポストプロセスで用いられる情報が格納される領域である。
ここでは、Restricted Scheme Information BoxにはScheme Type Box(schm)とScheme Information Box(schi)が格納されており、特に、Scheme Information BoxにBVストリームのデコード後のポストプロセスで用いられる情報が格納される。
また、矢印Q66に示すVisual Sample Entry(coding name)は、ビデオコーデックごとに決まる情報であり、例えばHEVCであればhvc1などとされる。このVisual Sample Entryには、trackから格納されるビデオシーケンスの情報が格納される。
ここで、図34に示したフォーマットのファイルにおいて、BVグループを構成するBVストリームをシグナルすることを考える。
本技術では、図34に示したフォーマットのファイルのなかで、trackに格納されたテクスチャやデプスがBVコンテンツを構成することをシグナルするために、Track Group Type Boxを拡張したBirdview Group Boxを新規に定義する。
図34で示した例では、Track Group Type Boxを拡張したBirdview Group Boxは、Track Group Boxに格納されることになる。
すなわち、Birdview Group Boxは、BVコンテンツを構成するBVストリームが格納されたtrackに対応するTrack Boxにのみ格納されている。
したがって、クライアントではTrack Box内のBirdview Group Boxを参照することで、BVコンテンツのBVストリームがどのtrackに格納されているかを識別することができる。
なお、1つのtrackにはテクスチャまたはデプスのみが格納されるようにしてもよいし、テクスチャとデプスの両方が格納されるようにしてもよい。
ここで、Track Group Type Boxのシンタックスとセマンティクスを図35に示す。
図35において矢印Q81に示す部分はTrack Group Type Boxのシンタックスを示しており、矢印Q82に示す部分はTrack Group Type Boxのセマンティクスを示している。
Track Group Type Boxは、ISOBMFFで規定されているものであり、同じ特性を持った複数のtrackをグルーピングするためのツールである。ここで、trackの特性(particular characteristics)とは、例えば同時に再生する可能性のあるtrackからなる所定のグループ(track group)に属しているという特性などとされる。
Track Group Type Boxには、Track Group Type Box、より詳細にはそのTrack Group Type Boxが格納されているTrack Boxに対応するtrackが有する特性を示す情報であるtrack_group_idが含まれている。すなわち、track_group_idはtrackが属すtrack groupのidである。
したがって、track groupの種別(種類)を示すtrack_group_typeが同じであり、かつ同じtrack_group_idを持つtrackは、同一のtrack groupに属することを意味する。
上述したように、本技術では、このTrack Group Type Boxを拡張したBirdview Group BoxによりBVグループを構成するBVストリームのグルーピングを行う。
図35に示したTrack Group Type Boxを拡張して得られるBirdview Group Boxのシンタックスを図36に示す。
図36に示す例では、矢印Q91に示すようにtrack_group_typeが「“bvgp”」とされており、このtrack_group_typeは、track groupの種別がBVグループを構成するBVストリームが格納されたtrackからなるtrack groupであることを示している。
また、図36に示すBirdview Group Boxには、上述したtrack_group_idが格納されている。Birdview Group Boxに属し、同じtrack_group_idを有するtrackが格納するBVストリームは、同一のBVコンテンツを構成することを意味している。
したがって、クライアントは、Track Box内のBirdview Group Boxの有無と、Birdview Group Boxに含まれるtrack_group_idとから、同一のBVコンテンツを構成するBVストリームが格納されているtrackを識別することができる。
換言すれば、クライアントは、Track BoxにBirdview Group Boxが格納されているか否かと、Birdview Group Box内のtrack_group_idとから、同一のBVコンテンツのBVストリーム、すなわちBVグループを構成するBVストリームを識別することができる。このことから、Birdview Group Boxは、同一のBVコンテンツを再生するためのBVストリームが格納されているtrackを示す情報、つまり同一の3Dモデルを構成するための複数のBVストリームを示すグループ情報であるということができる。
このような構成のファイルとすることで、例えばHEVCやAVCといった一般的な、つまり汎用的なコーデックでのBVストリームの符号化および復号を可能とし、かつBVコンテンツを再生可能なBVストリームのグルーピングを実現することができる。すなわち、より簡単にBVコンテンツを再生することができる。
なお、図36に示すBirdview Group Boxには、任意のBoxを格納することができる。そこで、例えばBVコンテンツの表示可能領域情報として図37のようなBirdview Coverage Information Boxを新規に定義し、Birdview Group Boxに格納してもよい。
図37において矢印Q101に示す部分はBirdview Coverage Information Boxのシンタックスを示しており、矢印Q102に示す部分はBirdview Coverage Information Boxのセマンティクスを示している。
Birdview Coverage Information Boxは、BVコンテンツの表示可能領域を示す情報であり、上述したbirdview coverage descriptorに相当する。
ここでは、Birdview Coverage Information Boxには、表示可能領域を示す情報(パラメータ)として、「pos_x」、「pos_y」、「pos_z」、「center_yaw」、「center_pitch」、「center_roll」、「hor_range」、および「ver_range」が含まれている。
具体的には、パラメータ「pos_x」は、空間上における3Dモデルの中心位置のx座標を示している。また、パラメータ「pos_y」は、空間上における3Dモデルの中心位置のy座標を示しており、パラメータ「pos_z」は、空間上における3Dモデルの中心位置のz座標を示している。
これらのパラメータpos_x、pos_y、およびpos_zは、図7に示したbirdview coverage descriptorのパラメータx、y、およびzに対応する。
また、パラメータ「center_yaw」は、3Dモデルの中心位置から見たときの表示可能領域の中心位置を示すヨー角(yaw角)を示している。パラメータ「center_pitch」は、3Dモデルの中心位置から見たときの表示可能領域の中心位置を示すピッチ角(pitch角)を示しており、パラメータ「center_roll」は、3Dモデルの中心位置から見たときの表示可能領域の中心位置のロール角(roll角)、すなわち表示可能領域の回転角度を示している。
さらに、パラメータ「hor_range」は、3Dモデルの中心位置から見たときの表示可能領域の水平方向角度レンジを示しており、パラメータ「ver_range」は、3Dモデルの中心位置から見たときの表示可能領域の垂直方向角度レンジを示している。
これらのパラメータcenter_yaw、center_pitch、center_roll、hor_range、およびver_rangeは、図7に示したbirdview coverage descriptorにおける場合と同じである。
したがって、クライアントでは、Birdview Coverage Information Boxでシグナルされている各パラメータを参照することで、BVコンテンツの表示可能領域を特定(識別)することができる。
なお、Birdview Group BoxにBirdview Coverage Information Boxがシグナルされない場合、つまりBirdview Coverage Information Boxが格納されていない場合には、BVコンテンツが表示可能な領域として全周囲をカバーしていることを示しているとされてもよい。
また、例えばファイル内に互いに表示可能領域が異なる複数のBVコンテンツのBVストリームが格納されていることもある。そのような場合には、クライアントは、Birdview Coverage Information Boxを参照することで、複数のBVコンテンツのなかから、ユーザの視野に応じた適切なBVコンテンツ、つまりBVストリームのグループを選択して再生することができる。
〈ファイル生成装置とクライアント装置の動作について〉
以上のように、BVコンテンツのグルーピングがISOBMFFレイヤにおいて行われる場合、例えばファイル生成装置11は、図10を参照して説明したアップロード処理と同様の処理を行う。
但し、ステップS12では、セグメントファイル生成部43は、データ入力部31から供給されたメタデータ等に基づいて、符号化部42から供給されたBVストリームの符号化データをファイル化することで、図34に示したフォーマットのファイルを生成する。このとき、生成されたファイルには、図36に示したBirdview Group Boxや図37に示したBirdview Coverage Information Boxが格納されている。
セグメントファイル生成部43は、このようなファイルを生成すると、得られたファイルに基づいてセグメントファイルを生成し、記録部34に供給する。
また、ステップS13では、第1の実施の形態や第2の実施の形態等で説明したMPDファイルが生成されてもよいし、一般的なMPDファイルが生成されるようにしてもよい。
このようにしてセグメントファイルとMPDファイルが生成されると、その後は、ステップS14およびステップS15の処理が行われてセグメントファイルとMPDファイルがアップロードされ、アップロード処理は終了する。
なお、ここでは、BVコンテンツのファイルがMPEG-DASH配信される例について説明するが、生成されたBVコンテンツのファイルはリムーバブル記録媒体等に格納されるなどしてもよい。
また、BVコンテンツのグルーピングがISOBMFFレイヤにおいて行われる場合、例えばクライアント装置71は、図38に示すBVコンテンツ再生処理を行う。以下、図38のフローチャートを参照して、クライアント装置71により行われるBVコンテンツ再生処理について説明する。
なお、ステップS81乃至ステップS83の処理は、図12のステップS41乃至ステップS43の処理と同様であるので、その説明は省略する。
ステップS84において、セグメントファイル取得部94は、図12のステップS47と同様の処理を行って、サーバからBVストリームが格納されたセグメントファイルを取得し、セグメントファイル処理部111に供給する。
このとき、例えばMPDファイル処理部93は、MPDファイル取得部92から供給されたMPDファイルや伝送帯域の計測結果などに基づいて、取得するRepresentationを選択し、その選択結果をセグメントファイル取得部94に供給する。ここでは、例えば基本的には、全てのAdaptation Setが取得すべきAdaptation Setとして選択され、Adaptation Setごとに、伝送帯域の計測結果等に応じたビットレートのRepresentationが選択される。
そして、セグメントファイル取得部94は、MPDファイル処理部93から供給された選択結果に基づいて、その選択結果に応じてセグメントファイルを取得する。
これにより、例えば図34に示したフォーマットのファイルに基づいて生成されたセグメントファイルが取得される。
なお、ここではBVコンテンツのファイルがMPEG-DASH配信される例について説明する。しかし、BVコンテンツのファイルが、ストリーミング形式ではなく、サーバから一括でダウンロードされるようにしてもよいし、ハードディスクやリムーバブル記録媒体等から読み出されるようにしても勿論よい。
ステップS85において、セグメントファイル処理部111はセグメントファイル取得部94から供給されたセグメントファイル、すなわちBVコンテンツのファイルに基づいて、そのファイルに格納されたBVストリームにより構成されるBVグループを選択する。
例えばセグメントファイル処理部111は、BVコンテンツのファイルにおけるBirdview Group Boxを参照することで、そのファイルに格納されているBVストリームからなるBVコンテンツ、すなわちBVグループを識別する。
具体的にはセグメントファイル処理部111は、Birdview Group Boxがシグナルされているtrackであって、かつ同一のtrack_group_idとなっているtrackに格納されているBVストリームを、1つのBVグループを構成しているBVストリームであると識別する。
セグメントファイル処理部111は、識別されたBVコンテンツ(BVグループ)のなかから、再生対象とするBVコンテンツを選択する。
このとき、セグメントファイル処理部111は、例えばBirdview Group Boxに格納されるBirdview Coverage Information Boxを参照し、ユーザの視野に相当する領域を表示可能なBVグループ、つまり表示可能領域内にユーザの視野領域が含まれるBVグループを選択するようにしてもよい。
ステップS86において、セグメントファイル処理部111は、ステップS85において選択した同一のBVグループを構成するtrackを識別する。すなわち、上述したように同一のtrack_group_idとなっているtrackに格納されているBVストリームが、1つのBVグループを構成しているBVストリームであると識別される。このとき、各trackの種類、すなわちtrackに格納されているBVストリームの種類や各BVストリームが格納されている領域は、例えば後述するBirdview Information Boxから識別可能である。
ステップS87において、セグメントファイル処理部111は、BVコンテンツの再生に用いるtrackを選択し、ステップS84で取得されたBVコンテンツのファイルのなかの選択したtrackから、符号化されたBVストリームを抽出し、復号部112に供給する。このとき、例えばステップS85で選択されたBVグループを構成する1または複数のtrackが全て選択される。このようにtrackを選択することは、BVコンテンツの再生に用いるBVストリームを選択することであるといえる。
符号化されたBVストリームが抽出されると、その後、ステップS88およびステップS89の処理が行われてBVコンテンツ再生処理は終了するが、これらの処理は図12のステップS49およびステップS50の処理と同様であるので、その説明は省略する。
以上のようにして、クライアント装置71は、取得したファイルのBirdview Group Boxを参照して、ファイル内のtrack、すなわちBVストリームからなるBVグループ(BVコンテンツ)を識別する。
このようにすることで、ISOBMFFのファイルにおいても汎用的なコーデックで符号化されたBVストリームからなるBVグループを簡単に識別することができる。これにより、より簡単にBVコンテンツを再生することができる。
〈第3の実施の形態の変形例1〉
〈trackに格納されたBVストリーム情報のシグナルについて〉
ところで、第3の実施の形態で説明したフォーマット(形式)のファイルでは、テクスチャやデプスのBVストリームがtrackに格納されるが、その格納方法のバリエーションとして、例えば以下の3つの方法が考えられる。
まず、第1の方法としては、各テクスチャを個別にtrackに格納し、デプスについても個別にtrackに格納するという方法である。
また、第2の方法は、複数のテクスチャのみを1つの画像にパッキングし、trackに格納するとともに、同様にして複数のデプスのみを1つの画像にパッキングし、trackに格納する方法である。
第3の方法は、複数のテクスチャとデプスを1つの画像にパッキングし、1つのtrackに格納する方法である。
第2の方法および第3の方法は、基本的には画像情報である複数のBVストリームを並べて配置し、それらの並べられたBVストリームを合成することで1つの画像を構成し、得られた画像を1つのtrackに格納するという方法となっている。
ここで、第2の方法と第3の方法の具体例を図39に示す。
図39では、矢印Q81に示す部分では第2の方法が示されており、矢印Q82に示す部分では第3の方法が示されている。
すなわち、第2の方法では、矢印Q81に示すように8つのテクスチャTX111乃至テクスチャTX118が並べられて合成され、1つの画像PX11とされている。換言すれば、テクスチャTX111乃至テクスチャTX118が1つの画像PX11にパッキングされている。
そして、このようにして得られた画像PX11が1つのtrackに格納される。
また、4つのデプスDP111乃至デプスDP114が並べられて合成されて1つの画像PX12とされ、この画像PX12が1つのtrackに格納される。
これに対して第3の方法では、8つのテクスチャTX111乃至テクスチャTX118と、4つのデプスDP111乃至デプスDP114とが並べられて合成されて1つの画像PX13とされ、この画像PX13が1つのtrackに格納される。
なお、以下では、テクスチャやデプスをパッキングすることで得られた、trackに格納される1つの画像を格納画像とも称することとする。また、格納画像上における、1つのBVストリームの領域、つまりテクスチャやデプスなどの1つのBVストリームの画像の領域を画像領域とも称することとする。
以上のように、テクスチャやデプスを並べて合成することで、それらのテクスチャやデプスを1つの画像としてtrackに格納することができる。より詳細には、BVストリームの符号化時には、格納画像が所定の符号化方式により符号化されて、その結果得られた符号化データがtrackに格納される。また、BVストリームの復号時には、格納画像の符号化データが復号され、得られた格納画像からBVストリームが抽出される。これにより、サーバやクライアントでは、格納画像、つまり格納画像を構成するテクスチャやデプスをHEVCやAVCといった汎用の符号化方式(コーデック)により符号化および復号することが可能である。
例えば第2の方法や第3の方法のように、複数のテクスチャやデプスをまとめてtrackに格納した場合、ストリーム取得時のスケーラビリティは失われるが、ストリーム取得数を少なくし、ネットワーク処理オーバヘッドを削減することができるというメリットがある。すなわち、複数のBVストリームが1つのtrackに格納されているため、いくつかのBVストリームを選択的に取得することはできないが、1度の処理で複数のBVストリームを取得することが可能である。
本技術では、上述の第1の方法乃至第3の方法という3つのケースを考慮してtrack内に格納されるBVストリームの情報をシグナルするために、Birdview Information Boxが新規に定義されている。
このBirdview Information Boxは、BVストリームのデコード(復号)後のレンダリング時に使用される情報であって、trackに格納されるストリームにおいて、テクスチャやデプスがどのようにパッキングされているかを示す情報をシグナルする。
例えば、Birdview Information Boxは図34に示したファイルにおいて、ISOBMFFで定義されるRestricted Scheme Information Box(‘rinf’)や、Scheme Information Box(‘schi’)に格納される。
ここでBirdview Information Boxのシンタックス例を図40に示し、Birdview Information Boxのセマンティクスを図41に示す。
図40に示す例では、Birdview Information Boxにはパラメータとしてstream_num、streams_type、stream_left[i]、stream_top[i]、stream_width[i]、stream_height[i]、stream_type[i]、IntrinsicCameraParameters(i)、およびExtrinsicCameraParametersBox(i)が含まれている。
図41に示すように、stream_numはtrackに含まれるテクスチャやデプスの合計数、つまり格納画像に含まれるBVストリームの合計数を示している。
streams_typeはtrackに格納された格納画像の画像構成情報を示している。
すなわち、ここではstreams_typeの値が0である場合には、streams_typeはtrack内にはテクスチャとデプスの両方が存在することを示している。つまり、track内に格納された格納画像には、例えば図39の矢印Q82に示したようにテクスチャとデプスとが含まれている。
streams_typeの値が1である場合には、streams_typeはtrack内にはテクスチャのみが存在することを示しており、streams_typeの値が2である場合には、streams_typeはtrack内にはデプスのみが存在することを示している。なお、streams_typeの値「3」はリザーブとされている。
特にstreams_typeの値が1または2である場合、このstreams_typeは、格納画像内の各BVストリームの種類を示す情報となる。
stream_left[i]は、track内の格納画像にパッキングされたテクスチャやデプスの各画像領域の左上ピクセルの水平方向位置を示している。stream_top[i]は、track内の格納画像にパッキングされたテクスチャやデプスの各画像領域の左上ピクセルの垂直方向位置を示している。
stream_width[i]は、track内の格納画像にパッキングされたテクスチャやデプスの各画像領域の幅を示している。また、stream_height[i]は、track内の格納画像にパッキングされたテクスチャやデプスの各画像領域の高さを示している。
以上のstream_left[i]、stream_top[i]、stream_width[i]、およびstream_height[i]から、格納画像内のテクスチャやデプスの画像領域の位置と大きさ、つまりどの領域が画像領域であるかを特定することができる。したがって、これらのstream_left[i]、stream_top[i]、stream_width[i]、およびstream_height[i]は、格納画像上におけるBVストリームの画像領域を特定するための情報であるということができる。
stream_type[i]は、track内の格納画像にパッキングされた各画像領域のタイプ、すなわち画像領域に配置されるBVストリームの種類を示す情報である。例えばstream_type[i]の値が0である場合、その画像領域はテクスチャの画像領域であることを示しており、stream_type[i]の値が1である場合、その画像領域はデプスの画像領域であることを示している。また、0や1以外のstream_type[i]の値は、リザーブとなっている。
なお、stream_type[i]は、streams_typeの値が0である場合、すなわち格納画像上にテクスチャの画像領域とデプスの画像領域が混在している場合にのみBirdview Information Boxに格納されている。
IntrinsicCameraParameters(i)は、track内の格納画像にパッキングされたテクスチャやデプスについての焦点距離や主点情報といった内部カメラパラメータを示している。このIntrinsicCameraParameters(i)は、例えばMultiview acquisition information SEI(Supplemental Enhancement Information)の情報とされる。
ExtrinsicCameraParametersBox(i)は、track内の格納画像にパッキングされたテクスチャやデプスについての撮影時のカメラの回転や位置情報といった外部カメラパラメータを示している。このExtrinsicCameraParametersBox(i)は、例えばMultiview acquisition information SEIの情報などとされる。
これらのIntrinsicCameraParameters(i)とExtrinsicCameraParametersBox(i)から、対応するテクスチャやデプスの表示可能領域(カバレッジ)を特定することが可能である。換言すれば、IntrinsicCameraParameters(i)とExtrinsicCameraParametersBox(i)は、テクスチャやデプスの表示可能領域を示す表示可能領域情報であるといえる。
stream_left[i]、stream_top[i]、stream_width[i]、stream_height[i]、stream_type[i]、IntrinsicCameraParameters(i)、およびExtrinsicCameraParametersBox(i)は、格納画像内にある画像領域の数だけ格納される。つまり、これらのパラメータは画像領域ごとに格納される。
なお、stream_left[i]、stream_top[i]、stream_width[i]、およびstream_height[i]は、ピクセル単位でのシグナルでなく、track内に含まれる格納画像全体の画角に対する、各画像領域の位置や幅、高さ等を示す相対値とされてもよい。
ここで、具体的な例として、図39に示した画像PX13が格納画像として1つのtrackに格納される場合におけるBirdview Information Boxのシグナル例を図42に示す。なお、図42において、図39における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図42に示す画像PX13が格納画像として1つのtrackに格納される場合、画像PX13は、8個のテクスチャと4個のデプスから構成され、かつ画像PX13を構成するテクスチャやデプスの画像領域の数は12となる。したがって、Birdview Information Boxにおけるstream_numの値は12となり、streams_typeの値は0となる。
また、画像PX13の図42中、左上に位置するテクスチャTX111に注目するとし、そのテクスチャTX111の図42中、横方向の幅および高さが、それぞれ480ピクセルおよび960ピクセルであるとする。
この場合、テクスチャTX111については、stream_left[i]の値が0とされ、stream_top[i]の値が0とされ、stream_width[i]の値は480とされ、stream_height[i]の値は960とされ、stream_type[i]の値は0とされる。
クライアントでは、このようなBirdview Information Boxを参照することで、各track内の格納画像におけるテクスチャやデプスの画像領域や、その画像領域のBVストリームの種類を特定し、格納画像から正しくテクスチャやデプスを抽出することができる。
以上のように、1つのtrackにテクスチャやデプスをまとめて格納する場合、少なくとも特定の視点位置から見たときの3Dモデルを構築することができるようにtrackにBVストリームを格納することもできる。そうすることで、クライアントでは1つのtrackを選択し、その選択したtrackに格納されているBVストリームだけを用いてもBVコンテンツの再生が可能となる。
Birdview Information Boxがシグナルされる場合、ファイル生成装置11では、第3の実施の形態における場合と同様のアップロード処理が行われる。
但し、ステップS12では、例えば図40に示したBirdview Information Boxを含むファイルが生成され、そのファイルに基づいてセグメントファイルが生成される。
また、Birdview Information Boxがシグナルされる場合、クライアント装置71では、図38を参照して説明したBVコンテンツ再生処理が行われる。
この場合、例えばステップS86では、セグメントファイル処理部111はBirdview Information Boxを参照することで、trackに格納されているBVストリームの種類を識別することができる。
また、セグメントファイル処理部111では、Birdview Information Boxを参照することで各BVストリームの種類だけでなく、格納画像上におけるBVストリームの領域(画像領域)を識別することができる。したがって、セグメントファイル処理部111がそれらの識別結果を表示情報生成部113に供給することで、表示情報生成部113は、復号後の格納画像から、BVコンテンツの再生に必要となるBVストリームを抽出することができる。
〈quality rankingのシグナルについて〉
また、Birdview Quality Ranking Boxを新規に定義し、trackに格納されるBVストリームや、BVコンテンツのクオリティ(品質)を示す情報であるquality rankingをシグナルするようにしてもよい。
例えばBirdview Quality Ranking Boxがtrackに格納されるBVストリームのquality rankingをシグナルする場合には、Birdview Quality Ranking BoxはVisual Sample Entryに格納されるようにすればよい。
この場合、quality rankingは、同一のBVコンテンツを再生するためのBVストリームが格納されたtrack間、すなわち同一のBVコンテンツを再生するための複数のBVストリーム間における各BVストリームの相対的なクオリティ(品質)を示す品質情報となる。
また、例えばBirdview Quality Ranking BoxがBVコンテンツのquality rankingをシグナルする場合には、Birdview Quality Ranking BoxはBirdview Group Boxに格納されるようにすればよい。
この場合、quality rankingは、複数のBVコンテンツ間における各BVコンテンツの相対的なクオリティ(品質)を示す品質情報となる。
このようにすることでクライアントは、quality rankingに基づいて、例えばユーザの視野領域が高画質なBVコンテンツを構成するtrack(BVストリーム)を選択するなどすることができる。
ここで、Birdview Quality Ranking Boxのシンタックスおよびセマンティクスの例を図43および図44に示す。
図43は、Birdview Quality Ranking Boxのシンタックス例を示している。
この例では、Birdview Quality Ranking Boxには、パラメータとしてnum_regions、remaining_area_flag、stream_type、quality_ranking、center_yaw、center_pitch、center_roll、hor_range、およびver_rangeが含まれている。
ここでパラメータquality_rankingは、quality rankingの値を示しており、quality_rankingの値が1以上である場合、その値が小さいほど高いクオリティであることを示している。
また、他のパラメータのセマンティクスは図44に示す通りである。
すなわち、パラメータnum_regionsは、quality rankingがシグナルされる領域数を示す情報である。
パラメータremaining_area_flagは、quality_rankingにより示されるquality rankingの値の適用範囲となる領域を特定するためのフラグ情報である。
ここでは、パラメータremaining_area_flagの値が0であれば、quality rankingがシグナルされる各領域、つまりquality rankingの値の適用範囲となる各領域は、パラメータcenter_yaw、center_pitch、center_roll、hor_range、およびver_rangeにより定まる領域とされる。
これに対して、パラメータremaining_area_flagの値が1であれば、Birdview Quality Ranking Box内に記述された、quality rankingがシグナルされる最初の領域から、最後から2番目の領域までの各領域は、パラメータcenter_yaw、center_pitch、center_roll、hor_range、およびver_rangeにより定まる領域とされる。
そして、Birdview Quality Ranking Box内に記述された、quality rankingがシグナルされる最後の領域は、対応するBVストリームの表示可能領域のうちの、シグナルされたパラメータcenter_yaw、center_pitch、center_roll、hor_range、およびver_rangeにより定まる領域に含まれない残りの領域部分全てとなる。つまり、BVストリームの表示可能領域のうちの、quality rankingがシグナルされる最初の領域から、最後から2番目の領域までの各領域に含まれていない残りの領域が、quality rankingがシグナルされる最後の領域となる。
なお、以下では、テクスチャまたはデプスのBVストリームや、BVコンテンツなどの表示可能領域内における、quality rankingの対象となる領域を対象領域とも称することとする。パラメータremaining_area_flagは、対象領域を示す情報であるということができる。
stream_typeは、quality rankingがシグナルされる領域の画像情報、すなわち対象領域の種類を示す情報である。例えばstream_typeの値が0である場合、その対象領域はテクスチャの領域であることを示しており、stream_typeの値が1である場合、その対象領域はデプスの領域であることを示している。また、stream_typeの値が2である場合、その対象領域はBVコンテンツの領域であることを示しており、stream_typeの値「3」は、リザーブとなっている。
パラメータcenter_yawは、3Dモデルの中心位置から見たときの対象領域の中心位置を示すヨー角(yaw角)を示している。また、パラメータcenter_pitchは、3Dモデルの中心位置から見たときの対象領域の中心位置を示すピッチ角(pitch角)を示しており、パラメータcenter_rollは、3Dモデルの中心位置から見たときの対象領域の中心位置のロール角(roll角)、すなわち対象領域の回転角度を示している。
さらにパラメータhor_rangeは、3Dモデルの中心位置から見たときの対象領域の水平方向角度レンジを示しており、パラメータver_rangeは、3Dモデルの中心位置から見たときの対象領域の垂直方向角度レンジを示している。
これらのパラメータcenter_yaw、center_pitch、center_roll、hor_range、およびver_rangeにより対象領域が特定される。すなわち、対象領域は、図6を参照して説明した表示可能領域における場合と同様に、例えば球の中心と、その中心と中心が一致する球上の4つの円で囲まれた領域となり、特に対象領域は、表示可能領域と同じ領域となるか、または表示可能領域の一部の領域となる。
以上のことから、Birdview Quality Ranking Boxでは、BVコンテンツやBVストリームにおける表示可能領域内の1または複数の対象領域ごとにquality rankingがシグナルされることになる。
なお、ここでは3Dモデルの内側、つまり3Dモデルの中心から見たときの領域を対象領域としてシグナルしているが、3Dモデルの外側、つまり所定の基準となる視点位置から見たときの領域を対象領域としてシグナルしてもよい。
以上のようにBirdview Quality Ranking Boxがシグナルされる場合、ファイル生成装置11では、第3の実施の形態における場合と同様のアップロード処理が行われる。
但し、ステップS12では、例えば図43に示したBirdview Quality Ranking Boxを含むファイルが生成され、そのファイルに基づいてセグメントファイルが生成される。
また、Birdview Quality Ranking Boxがシグナルされる場合、クライアント装置71では、図38を参照して説明したBVコンテンツ再生処理が行われる。
この場合、ステップS85では、例えばセグメントファイル処理部111はBirdview Group Boxに格納されているBirdview Quality Ranking Boxを参照し、ユーザの視野に相当する領域が高画質なBVグループを選択することが可能である。
同様に、例えばステップS87においても、セグメントファイル処理部111はVisual Sample Entryに格納されているBirdview Quality Ranking Boxを参照し、ユーザの視野に相当する領域が高画質となるBVストリームを選択することが可能である。
なお、例えば図37に示したBirdview Coverage Information Boxを、図34に示したRestricted Scheme Information Box(‘rinf’)やScheme Information Box(‘schi’)にシグナルするようにしてもよい。
このようにすることで、例えば各trackに格納されるBVストリーム、すなわちテクスチャのみや、デプスのみなどの各BVストリームの表示可能領域をシグナルすることができる。また、1つのtrackにBVコンテンツを構成するテクスチャとデプスが格納されている場合には、BVコンテンツの表示可能領域をシグナルすることができる。さらに、track内の格納画像にパッキングされた、テクスチャやデプスの画像領域の単位で表示可能領域をシグナルしてもよい。
〈第3の実施の形態の変形例2〉
〈シルエットの格納について〉
また、上述したBirdview Information Boxを拡張することで、第1の実施の形態の変形例3で説明したシルエット、すなわちシルエット画像を図34を参照して説明したファイル(file format)に格納するようにしてもよい。なお、シルエットの有用性については第1の実施の形態の変形例3で説明した通りである。
テクスチャやデプスと同様に、シルエットも1つのtrackにまとめて格納することで、ストリーム取得時のスケーラビリティは失われるが、ストリーム取得数を少なくし、ネットワーク処理オーバヘッドを削減することができるというメリットがある。
trackにシルエットを格納する場合、Birdview Information Boxのシンタックスは、図40に示したものと同じであるが、そのセマンティクスは、例えば図45に示すものとされる。
図45に示す例では、stream_numはtrackに含まれるテクスチャやデプス、シルエットの合計数、つまり格納画像に含まれるBVストリームの合計数を示している。
なお、ここでは、BVストリームの種類として、シルエットのみのBVストリームの他、シルエットが含まれるデプスのBVストリームも存在しているものとする。以下では、シルエットが含まれているデプスを、特にシルエット付きデプスとも称することとする。
ここでは各trackには、テクスチャ、デプス、シルエット付きデプス、およびシルエットのうちの少なくとも何れか1つの種類のBVストリームが格納されることになる。
また、streams_typeはtrackに格納された格納画像の画像構成情報を示している。
ここでは、例えばstreams_typeの値が0である場合には、streams_typeはtrack内にはテクスチャ、デプス、シルエット付きデプス、およびシルエットのうちの少なくとも2以上のものが存在することを示している。
また、streams_typeの値が1である場合には、streams_typeはtrack内にはテクスチャのみが存在することを示しており、streams_typeの値が2である場合には、streams_typeはtrack内にはデプスのみが存在することを示している。
streams_typeの値が3である場合には、streams_typeはtrack内にはシルエット付きデプスのみが存在することを示しており、streams_typeの値が4である場合には、streams_typeはtrack内にはシルエットのみが存在することを示している。なお、streams_typeの他の値(0乃至4以外の値)はリザーブとされている。
また、図45に示す例では、stream_left[i]、stream_top[i]、stream_width[i]、およびstream_height[i]は図41に示した例と同じとなっている。
stream_type[i]は、track内の格納画像にパッキングされた各画像領域のタイプを示す情報である。例えばstream_type[i]の値が0である場合、その画像領域はテクスチャの画像領域であることを示しており、stream_type[i]の値が1である場合、その画像領域はデプスの画像領域であることを示している。
stream_type[i]の値が3である場合、その画像領域はシルエット付きデプスの画像領域であることを示しており、stream_type[i]の値が4である場合、その画像領域はシルエットの画像領域であることを示している。また、0乃至4以外のstream_type[i]の値は、リザーブとなっている。
さらに、IntrinsicCameraParameters(i)およびExtrinsicCameraParametersBox(i)は、図41に示した例と同じとなっている。
図45に示す例では、デプスとシルエットのExtrinsicCameraParametersBox(i)、つまり外部カメラパラメータが同一であれば、それらのデプスとシルエットは視点位置等が同じである、つまり表示可能領域が同じである、ペアとなるデプスとシルエットとなる。
換言すれば、所定デプスと同一の外部カメラパラメータを有するシルエットは、その所定デプスに対応するシルエットであり、そのようなシルエットを用いれば、所定デプスから3Dモデル(前景)部分の情報のみを抽出することができる。したがって、この場合、外部カメラパラメータはデプスとシルエットを紐付ける(対応付ける)情報であるともいうことができる。
なお、シルエットのみを含むtrackと、そのシルエットに紐付けられたデプスを含むtrackとの紐付け(対応付け)は、ISOBMFFで規定されているTrack Reference Boxを用いて行うことができる。この場合、Track Reference Boxに格納されるTrack Reference Type Boxにおいて、reference_type=“silh”が新規に定義され、シルエットのみを含むtrackとデプスを含むtrackとが紐付けられる。
以上のようにシルエット付きデプスや、シルエットもtrackに格納される場合、ファイル生成装置11では、第3の実施の形態における場合と同様のアップロード処理が行われる。
但し、ステップS12では、例えば図45に示したセマンティクスで図40に示したBirdview Information Boxが生成される。そして、得られたBirdview Information Boxの他、シルエットやシルエット付きデプスなどが格納されたtrack等を含むファイルが生成され、そのファイルに基づいてセグメントファイルが生成される。
また、シルエット付きデプスや、シルエットもtrackに格納される場合、クライアント装置71では、図38を参照して説明したBVコンテンツ再生処理が行われる。
この場合、ステップS89では、テクスチャやデプスの他、適宜、シルエットも用いられて、BVコンテンツを再生するための3Dモデルの画像が生成される。
〈第3の実施の形態の変形例3〉
〈BVストリームのパッキング方法について〉
ところで、第3の実施の形態の変形例1で説明したように、複数のBVストリームを1つのストリーム(格納画像)にパッキングしてtrackに格納する場合、特定のパッキングを行うことで符号化効率の向上や、クライアント(ユーザ)の視野に応じた処理を容易にするといった効果を得ることができる。
以下では、BVストリームの効果的な4つのパッキング手法とそのメリットについて説明する。なお、何れの手法においても、パッキング情報、つまり各BVストリームに関する情報等はBirdview Information Boxでシグナルすることができる。
具体的には、BVストリームの効果的なパッキング手法として、以下に示す第1のパッキング手法乃至第4のパッキング手法について説明する。
(第1のパッキング手法)
視点位置が近いテクスチャを隣接して配置し、パッキングする
(第2のパッキング手法)
テクスチャやデプスの重要な領域を高解像度化してパッキングする
(第3のパッキング手法)
対応するテクスチャとデプスが隣接するように画像領域を配置し、パッキングする
(第4のパッキング手法)
同じ向きのテクスチャ、デプス、シルエットが隣接するように画像領域を配置し、パッキングする
これらのパッキング手法のうち、まず、第1のパッキング手法について説明する。
例えば図46の矢印Q101に示すように、前景、つまり3DモデルとなるオブジェクトOBJ11の周囲を囲むようにカメラCMR11乃至カメラCMR18が配置されているとする。
そして、これらの互いに異なる位置にあるカメラCMR11乃至カメラCMR18により画像が撮影され、カメラCMR11乃至カメラCMR18のそれぞれの視点位置に対応するテクスチャTX131乃至テクスチャTX138のそれぞれが生成されたとする。ここでは、例えばカメラCMR11により撮影された画像が、そのままテクスチャTX131とされる。
この場合、第1のパッキング手法では、矢印Q102に示すように、視点位置が近いテクスチャを隣接して配置してパッキングを行い、1つの格納画像とする。
特に、ここでは格納画像上において、格納画像上に配置されるテクスチャのうち、最も視点位置が近いテクスチャ同士が隣接して配置されている。すなわち、図中、左側からテクスチャTX131乃至テクスチャTX138の順番で図中、右方向へとそれらのテクスチャが並べられて1つの格納画像とされている。
ここで、例えば互いに隣接して並べられたテクスチャTX131とテクスチャTX132は、テクスチャTX131乃至テクスチャTX138のなかで、互いに最も視点位置が近いテクスチャとなっている。
このように、視点位置が近いテクスチャ同士が隣接するようにパッキングを行えば、例えば互いに隣接するテクスチャ間に参照関係を持たせて符号化(エンコード)を行うようにすることで、符号化効率を向上させることができる。
具体的には、例えば上述したテクスチャTX131とテクスチャTX132は、視点位置が近いため、テクスチャTX131とテクスチャTX132との間の画素の画素値の差分は小さくなる。そこで、例えば格納画像のテクスチャTX132の画像領域の部分を符号化する際に、テクスチャTX131と参照関係を持たせて、つまりテクスチャTX131とテクスチャTX132の差分を用いて符号化を行うようにすることで、符号化で得られるデータの符号量を少なくすることができる。これにより、符号化効率を向上させることができる。
また、格納画像の符号化時には、例えば視点位置が近いテクスチャをまとめてHEVC tileとして符号化することで、クライアントの視野、すなわちユーザの視野に応じて、対応するテクスチャおよび視野周囲のテクスチャを独立して復号(デコード)し、レンダリングを行うことが可能となる。ここで、HEVC tileは、独立して符号化や復号を行うことができる処理単位である。
なお、ここではテクスチャを例として説明を行ったが、デプスやシルエットなどに対しても第1のパッキング手法を適用することが可能である。
なお、実際にカメラにより撮影された画像そのものがテクスチャとされてもよいが、カメラにより撮影された複数の画像などからテクスチャが生成されるなどしてもよい。例えば予め3Dモデルを構築しておき、その後、構築した3Dモデルに基づいて、仮想的なカメラ位置を視点位置としたテクスチャやデプス、シルエットを生成するなどしてもよい。
次に、第2のパッキング手法について説明する。
例えば図47に示すようにテクスチャTX131’、テクスチャTX132乃至テクスチャTX134、テクスチャTX135’およびテクスチャTX136乃至テクスチャTX138が1つの格納画像にパッキングされるとする。なお、図47において図46における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図47では、テクスチャTX131’およびテクスチャTX135’が、図46に示したテクスチャTX131およびテクスチャTX135と同じ視点位置のテクスチャとなっている。
ここでは、テクスチャTX131’およびテクスチャTX135’と、テクスチャTX131およびテクスチャTX135とは、互いにテクスチャ画像の大きさ、すなわち解像度のみが異なる画像となっている。
特に、テクスチャTX131’はオブジェクト(3Dモデル)の前面(正面)の画像となっており、テクスチャTX135’はオブジェクトの背面の画像となっている。
この例では、3Dモデルの正面および背面は、他の側面などよりも重要であるとする。
したがって、ここではテクスチャTX131’やテクスチャTX135’の表示可能領域は、他のテクスチャTX132乃至テクスチャTX134や、テクスチャTX136乃至テクスチャTX138の表示可能領域よりも重要度が高いとされている。
そのため、テクスチャTX131’やテクスチャTX135’の解像度は、他のテクスチャTX132乃至テクスチャTX134や、テクスチャTX136乃至テクスチャTX138の解像度よりも高い解像度となっている。すなわち、テクスチャTX131’やテクスチャTX135’は高解像度のテクスチャ画像となっており、テクスチャTX132乃至テクスチャTX134や、テクスチャTX136乃至テクスチャTX138は、低解像度のテクスチャ画像となっている。
そして、これらのテクスチャTX131’、テクスチャTX135’、テクスチャTX132乃至テクスチャTX134、およびテクスチャTX136乃至テクスチャTX138が並べられて1つの格納画像とされている。
このように第2のパッキング手法では、格納画像上には、互いに解像度(大きさ)が異なるテクスチャが配置されている。このようにすることで、重要な領域を高解像度としてユーザの視聴体験の品質を損なうことなく、BVストリームが格納されるファイルのサイズ削減を実現することができる。このことは、例えばネットワーク経由でのファイル伝送の際のメリットとなる。
なお、ここではテクスチャを例として説明を行ったが、デプスやシルエットなどに対しても第2のパッキング手法を適用することが可能である。
続いて、第3のパッキング手法について説明する。
第3のパッキング手法では、例えば図48に示すように、互いに対応するテクスチャとデプス、つまり視点位置(表示可能領域)が同じであるテクスチャとデプスが隣接して配置され、パッキングが行われる。なお、図48において図46における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図48に示す例では、テクスチャTX131、テクスチャTX133、テクスチャTX135、およびテクスチャTX137と、それらのテクスチャに対応するデプスDP131乃至デプスDP134とが並べられて1つの格納画像とされている。
ここでは、特に互いに対応するテクスチャTX131とデプスDP131、テクスチャTX133とデプスDP132、テクスチャTX135とデプスDP133、およびテクスチャTX137とデプスDP134がそれぞれ隣接するように配置されている。
この場合、例えばテクスチャTX131とデプスDP131など、対応するテクスチャとデプスの1つのペアをHEVC tileとして格納画像の符号化が行われる。
このようにすることで、例えばユーザの視野に応じてテクスチャとデプスの1つのペアを独立して復号したときに、復号で得られたテクスチャとデプスを、それらの表示可能領域のみステレオ表示するなど、BVコンテンツ再生以外の用途にも用いることができる。例えばBVコンテンツ再生に非対応なクライアントであっても、デプスを使用したステレオ表示に対応していれば、視野に応じたステレオ映像表示を容易に行うことができる。
さらに、第4のパッキング手法について説明する。
第4のパッキング手法では、例えば図49に示すように同じ向き、つまり表示可能領域が略同じであるテクスチャ、デプス、およびシルエットが隣接して並べられてパッキングされている。ここで、同じ向きとは、BVストリームの視点位置から見た3Dモデルの方向が略同じ方向であることをいう。
なお、図49において図46における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図49に示す例では、テクスチャTX131、テクスチャTX133、テクスチャTX135、およびテクスチャTX137と、それらのテクスチャに対応するデプスDP141乃至デプスDP144およびシルエットSI141乃至シルエットSI144とが並べられて1つの格納画像とされている。
特に、例えば互いに対応する、つまり向きが同じであるテクスチャTX131、デプスDP141、およびシルエットSI141が隣接するように配置されている。同様に、互いに対応するテクスチャTX133、デプスDP142、およびシルエットSI142と、テクスチャTX135、デプスDP143、およびシルエットSI143と、テクスチャTX137、デプスDP144、およびシルエットSI144とがそれぞれ隣接するように配置されている。
このように第4のパッキング手法では、格納画像上において、テクスチャと、そのテクスチャに対応する、つまり同じ向きであるデプスおよびシルエットとが隣接して配置されるようになされている。
また、ここでは、テクスチャよりもデプスやシルエットが相対的に低解像度のものとなっている。3Dモデル構成時において、3Dモデルの画質への寄与はテクスチャが支配的であるため、デプスやシルエットを相対的に低画質とすることで、ユーザ視聴体験の品質を損なわずに、BVストリームが格納されるファイルのサイズ削減を実現することができる。
さらに、符号化時に対応するデプスとシルエットに参照関係を持たせることで、符号化効率を向上させることができる。このことは、例えばネットワーク経由でのファイル伝送の際のメリットとなる。
〈画像領域の再配置について〉
さらに、例えば予めデフォルトのパッキング手法を決定しておき、それをもとに領域再配置を行って他のパッキングを実現することもできる。
具体的な例として、例えば上述した第1のパッキング手法を予め定められたパッキング手法、つまりデフォルトのパッキング手法とし、適宜、領域再配置が行われて第1のパッキング手法ではなく第2のパッキング手法でのパッキングが行われるようにすることもできる。
このような場合、各パッキング手法におけるBVストリームの画像領域の配置は、例えば図50に示すようになる。なお、図50において図46または図47における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図50に示す例では、通常は、図中、左側に示されるように同じ解像度のテクスチャTX131乃至テクスチャTX138が並べられて1つの格納画像とされる。つまり、上述した第1のパッキング手法によりパッキングが行われる。以下では、第1のパッキング手法により生成された1つの格納画像を、特にプロジェクテッドピクチャとも称することとする。
このように基本的には、第1のパッキング手法によりプロジェクテッドピクチャが生成されて、得られたプロジェクテッドピクチャがtrackに格納される。しかし、場合によっては一部のテクスチャを高解像度化したいことがある。
そのような場合には、各テクスチャの配置が変更されて、つまり領域再配置が行われて図50中、右側に示すように第2のパッキング手法によりパッキングが行われる。すなわち、テクスチャTX131およびテクスチャTX135が高解像度化されて、より解像度の高いテクスチャTX131’およびテクスチャTX135’とされる。
そして、テクスチャTX131’、テクスチャTX132乃至テクスチャTX134、テクスチャTX135’およびテクスチャTX136乃至テクスチャTX138が第1のパッキング手法における場合と異なる配置で並べられ、1つの格納画像とされる。以下では、第2のパッキング手法により生成された1つの格納画像を、特にパックドピクチャとも称することとする。
この例では、trackに格納される格納画像上におけるBVストリーム(テクスチャ)の配置は、予め定められたデフォルトの第1のパッキング手法により定まる配置、または第2のパッキング手法により定まる配置の何れかとされる。特に、領域再配置が行われた場合には、trackに格納される格納画像はパックドピクチャとなっており、そのパックドピクチャ上におけるテクスチャの配置は、第2のパッキング手法により定まる配置となる。
ところで、プロジェクテッドピクチャとパックドピクチャとでは各テクスチャの配置位置の関係、つまり画像領域の位置関係が異なる。
例えば、プロジェクテッドピクチャにおける配置がデフォルトとされているときには、クライアントではプロジェクテッドピクチャ上のテクスチャの配置は既知である。そのため、クライアントでは、プロジェクテッドピクチャから各テクスチャを正しく抽出してレンダリングを行うことができる。
しかし、領域再配置が行われてパックドピクチャがtrackに格納されているときには、クライアントでは、レンダリングを行なうときに格納画像上のどの領域がどのテクスチャに対応するかを特定できないと、正しくテクスチャを抽出することができない。
そこで、本技術では、領域再配置が行われるときには、再配置前後におけるテクスチャの配置位置の関係を示す情報を領域再配置情報としてシグナルするようにした。
具体的には、例えば領域再配置情報のシグナルには、図51に示すように拡張されたRegionWisePackingBoxを用いればよい。
図51に示すRegionWisePackingBoxは、例えばTrack Boxや、Track Box内の任意のBoxなどに格納される。RegionWisePackingBoxには、RegionWisePackingStructが含まれており、このRegionWisePackingStructのシンタックスは図52に示すようになる。
図52に示すRegionWisePackingStructには、パラメータとしてnum_regions、proj_picture_width、proj_picture_height、およびpacking_type[i]が格納されている。また、RegionWisePackingStructにはRectRegionPacking(i)も格納されている。
このRectRegionPacking(i)のシンタックスは、例えば図53に示すようになる。
図53に示すRectRegionPacking(i)には、パラメータとしてcontent_type、stream_type、IntrinsicCameraParameters(i)、ExtrinsicCameraParametersBox(i)、proj_reg_width[i]、proj_reg_height[i]、proj_reg_top[i]、proj_reg_left[i]、packed_reg_width[i]、packed_reg_height[i]、packed_reg_top[i]、およびpacked_reg_left[i]が格納されている。
RegionWisePackingBox、特にRegionWisePackingBox内のRegionWisePackingStructが領域再配置情報となっており、RegionWisePackingStructおよびRectRegionPacking(i)のセマンティクスは図54に示す通りである。
すなわち、パラメータnum_regionsは、格納画像内に含まれている画像領域の個数、つまりBVストリームの領域の個数を示している。
パラメータproj_picture_widthは再配置前のプロジェクテッドピクチャの幅を示しており、パラメータproj_picture_heightは再配置前のプロジェクテッドピクチャの高さを示している。
パラメータpacking_type[i]は、RegionWisePackingStructに含まれているi番目のリージョンのregion-wise packing、すなわちi番目のRectRegionPacking(i)に対応するBVストリームの画像領域の種類を示している。
具体的には、packing_type[i]の値が0である場合、画像領域が矩形領域であること、すなわち矩形領域のパッキングであることを示している。なお、0以外のpacking_type[i]の値はリザーブとなっている。
パラメータcontent_typeはコンテンツのタイプを示している。例えばcontent_typeの値が0である場合、コンテンツが全天球映像であることを示しており、content_typeの値が1である場合、コンテンツがBirdview映像、つまりBVコンテンツであることを示している。
パラメータstream_typeは、画像領域の画像タイプを示している。
具体的には、stream_typeの値が0である場合、画像領域はテクスチャ(テクスチャ画像)であることを示しており、stream_typeの値が1である場合、画像領域はデプス(デプス画像)であることを示している。
また、stream_typeの値が2である場合、画像領域はシルエット付きデプス(シルエットが含まれるデプス画像)であることを示しており、stream_typeの値が3である場合、画像領域はシルエット(シルエット画像)であることを示している。なお、0乃至3以外のstream_typeの値はリザーブとなっている。
クライアントでは、このstream_typeを参照することで、RegionWisePackingStructにシグナルされているi番目の画像領域がテクスチャやデプスなど、どのような種類のBVストリームの領域であるかを特定することができる。
パラメータIntrinsicCameraParameters(i)は、i番目の画像領域についての焦点距離や主点情報といった内部カメラパラメータを示している。
このIntrinsicCameraParameters(i)は、例えばMultiview acquisition information SEIの情報とされる。
パラメータExtrinsicCameraParametersBox(i)は、i番目の画像領域についての撮影時のカメラの回転や位置情報といった外部カメラパラメータを示している。
このExtrinsicCameraParametersBox(i)は、例えばMultiview acquisition information SEIの情報などとされる。
これらのIntrinsicCameraParameters(i)とExtrinsicCameraParametersBox(i)から、対応する画像領域に格納されたテクスチャやデプスの表示可能領域(カバレッジ)を特定することが可能である。
パラメータproj_reg_width[i]はプロジェクテッドピクチャのi番目の画像領域の幅を示しており、パラメータproj_reg_height[i]はプロジェクテッドピクチャのi番目の画像領域の高さを示している。
また、パラメータproj_reg_top[i]はプロジェクテッドピクチャのi番目の画像領域の左上ピクセルの垂直方向位置を示しており、パラメータproj_reg_left[i]はプロジェクテッドピクチャのi番目の画像領域の左上ピクセルの水平方向位置を示している。
これらのパラメータproj_reg_width[i]、proj_reg_height[i]、proj_reg_top[i]、およびproj_reg_left[i]から、i番目の画像領域のプロジェクテッドピクチャ上における位置および大きさを特定することができる。すなわち、i番目の画像領域の再配置前の位置および大きさを特定することができる。
したがって、これらのproj_reg_width[i]、proj_reg_height[i]、proj_reg_top[i]、およびproj_reg_left[i]は、デフォルトの第1のパッキング手法により定まる配置でBVストリームを配置したときの格納画像(プロジェクテッドピクチャ)上におけるBVストリームの画像領域を特定するための情報であるということができる。
パラメータpacked_reg_width[i]はパックドピクチャのi番目の画像領域の幅を示しており、パラメータpacked_reg_height[i]はパックドピクチャのi番目の画像領域の高さを示している。
また、パラメータpacked_reg_top[i]はパックドピクチャのi番目の画像領域の左上ピクセルの垂直方向位置を示しており、パラメータpacked_reg_left[i]はパックドピクチャのi番目の画像領域の左上ピクセルの水平方向位置を示している。
これらのパラメータpacked_reg_width[i]、packed_reg_height[i]、packed_reg_top[i]、およびpacked_reg_left[i]からi番目の画像領域のパックドピクチャ上における位置および大きさを特定することができる。すなわち、i番目の画像領域の再配置後の位置および大きさを特定することができる。
したがって、これらのpacked_reg_width[i]、packed_reg_height[i]、packed_reg_top[i]、およびpacked_reg_left[i]は、領域再配置時の第2のパッキング手法により定まる配置でBVストリームを配置したときの格納画像(パックドピクチャ)上におけるBVストリームの画像領域を特定するための情報であるということができる。
ここで、具体的な例として、図50に示したパックドピクチャが格納画像として1つのtrackに格納される場合におけるRegionWisePackingBoxのシグナル例を図55に示す。なお、図55において、図50における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図55に示す例では、通常であれば矢印Q131に示すようにテクスチャが並べられてプロジェクテッドピクチャとされるものが、テクスチャの画像領域の再配置によって、矢印Q132に示すようにテクスチャが並び替えられてパックドピクチャとされる。
この場合、テクスチャ等により構成されるコンテンツはBVコンテンツであるため、RegionWisePackingBoxに格納されるcontent_typeの値はBVコンテンツを示す「1」とされる。また、画像領域はテクスチャのBVストリームの領域とされるため、stream_typeの値は「0」とされる。
また、プロジェクテッドピクチャの図中、左端に位置するテクスチャTX131に注目するとし、そのテクスチャTX131の図中、横方向の幅および高さが、それぞれ480ピクセルおよび960ピクセルであるとする。さらにテクスチャTX131の左上ピクセルの垂直方向位置がプロジェクテッドピクチャの最上部を示す「0」であり、テクスチャTX131の左上ピクセルの水平方向位置がプロジェクテッドピクチャの最左部を示す「0」であるとする。
この場合、再配置前のテクスチャTX131の画像領域については、RectRegionPacking(i)におけるproj_reg_width[i]の値は480とされ、proj_reg_height[i]の値は960とされ、proj_reg_top[i]の値は0とされ、proj_reg_left[i]の値は0とされる。
また、テクスチャTX131の再配置後のテクスチャがテクスチャTX131’であり、そのテクスチャTX131’の図中、横方向の幅および高さが、それぞれ960ピクセルおよび1920ピクセルであるとする。さらにテクスチャTX131’の左上ピクセルの垂直方向位置がパックドピクチャの最上部を示す「0」であり、テクスチャTX131’の左上ピクセルの水平方向位置がパックドピクチャの最左部を示す「0」であるとする。
この場合、再配置後のテクスチャTX131’の画像領域については、RectRegionPacking(i)におけるpacked_reg_width[i]の値は960とされ、packed_reg_height[i]の値は1920とされ、packed_reg_top[i]の値は0とされ、packed_reg_left[i]の値は0とされる。
このようにクライアントでは、RegionWisePackingBoxを参照することで、再配置前のテクスチャTX131と、再配置後のテクスチャTX131’との対応関係や、再配置後のテクスチャTX131’のパックドピクチャ上の位置と大きさなどを特定することができる。
なお、ここではテクスチャを例として領域再配置について説明したが、デプスやシルエットの画像領域についてもテクスチャにおける場合と同様にして領域再配置が可能である。
本技術では、このようなRegionWisePackingBoxを利用することで、コンテンツの特徴等に応じて適切なパッキング手法を選択することができる。
以上のような第1のパッキング手法乃至第4のパッキング手法によるパッキングや、画像領域の領域再配置を行う場合、ファイル生成装置11では、第3の実施の形態における場合と同様のアップロード処理が行われる。
但し、ステップS12では、適宜、第1のパッキング手法乃至第4のパッキング手法や、画像領域の領域再配置時のパッキング手法に従ってBVストリームが格納画像にパッキングされ、trackに格納される。
また、領域再配置が行われる場合には、RegionWisePackingBoxが格納されたファイルが生成され、そのファイルに基づいてセグメントファイルが生成される。
さらに、第1のパッキング手法乃至第4のパッキング手法によるパッキングや、画像領域の領域再配置を行う場合、クライアント装置71では、図38を参照して説明したBVコンテンツ再生処理が行われる。
この場合、例えば画像領域の領域再配置が行われたときには、ステップS86においてセグメントファイル処理部111によりRegionWisePackingBoxが参照されて再配置前後の画像領域の配置関係が特定される。そして、その特定結果に基づいて表示情報生成部113によりtrackからテクスチャ等のBVストリームが抽出される。
また、第1のパッキング手法乃至第4のパッキング手法によるパッキングが行われている場合には、セグメントファイル処理部111は、Birdview Information Boxを参照して、各BVストリームの画像領域を識別する。
以上の第3の実施の形態乃至第3の実施の形態の変形例3で説明したように、BVストリームをISOBMFFのファイルのtrackに格納する際においてもtrackのグルーピングを行うことで、BVコンテンツ視聴に必要なBVストリームを格納するtrackを容易に選択することができる。
また、複数のBVストリームを1つのストリーム、つまり1つの格納画像にパッキングしてtrackに格納することで、ストリーム取得数を少なくし、ネットワーク処理オーバヘッドを削減することができる。さらに、第3の実施の形態の変形例3で説明したようなパッキング手法でパッキングを行うことで、符号化効率を向上させるとともにクライアント(ユーザ)の視野に応じた処理を容易に行うことができるようにすることができる。
〈コンピュータの構成例〉
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図56は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)501,ROM(Read Only Memory)502,RAM(Random Access Memory)503は、バス504により相互に接続されている。
バス504には、さらに、入出力インターフェース505が接続されている。入出力インターフェース505には、入力部506、出力部507、記録部508、通信部509、及びドライブ510が接続されている。
入力部506は、キーボード、マウス、マイクロフォン、撮像素子などよりなる。出力部507は、ディスプレイ、スピーカなどよりなる。記録部508は、ハードディスクや不揮発性のメモリなどよりなる。通信部509は、ネットワークインターフェースなどよりなる。ドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体511を駆動する。
以上のように構成されるコンピュータでは、CPU501が、例えば、記録部508に記録されているプログラムを、入出力インターフェース505及びバス504を介して、RAM503にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU501)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体511に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブル記録媒体511をドライブ510に装着することにより、入出力インターフェース505を介して、記録部508にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部509で受信し、記録部508にインストールすることができる。その他、プログラムは、ROM502や記録部508に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、本技術は、以下の構成とすることも可能である。
(1)
3Dオブジェクトを周囲から見回し可能なコンテンツを管理するための情報が格納される管理領域と、前記3Dオブジェクトを構成するためのストリームが格納されたトラックが格納されるデータ領域とを有し、前記管理領域に同一の前記3Dオブジェクトを構成するための複数の前記ストリームを示すグループ情報が格納されたファイルを取得するファイル取得部と、
前記グループ情報に基づいて、前記コンテンツの再生に用いる複数の前記ストリームを選択するファイル処理部と
を備える画像処理装置。
(2)
前記管理領域には、前記コンテンツの表示可能領域を示す情報が格納されている
(1)に記載の画像処理装置。
(3)
前記管理領域には、複数の前記コンテンツ間における前記コンテンツの相対的な品質を示す品質情報が格納されている
(1)または(2)に記載の画像処理装置。
(4)
前記トラックには、複数の前記ストリームを並べて配置することで得られた1つの画像が格納されている
(1)乃至(3)の何れか一項に記載の画像処理装置。
(5)
前記管理領域には、前記画像上における前記ストリームの領域を特定するための情報が格納されている
(4)に記載の画像処理装置。
(6)
前記管理領域には、前記ストリームの種類を示す情報が含まれている
(4)または(5)に記載の画像処理装置。
(7)
前記ストリームの種類は、テクスチャ、デプス、シルエットが含まれるデプス、またはシルエットである
(6)に記載の画像処理装置。
(8)
前記画像において、最も視点位置が近い前記ストリーム同士が隣接して配置されている
(4)乃至(7)の何れか一項に記載の画像処理装置。
(9)
前記画像には、互いに異なる解像度の前記ストリームが配置されている
(4)乃至(7)の何れか一項に記載の画像処理装置。
(10)
前記画像において、テクスチャの前記ストリームと、その前記テクスチャに対応するデプスの前記ストリームとが隣接して配置されている
(4)乃至(7)の何れか一項に記載の画像処理装置。
(11)
前記画像において、テクスチャの前記ストリームと、その前記テクスチャに対応するデプスの前記ストリームおよびシルエットの前記ストリームとが隣接して配置されている
(4)乃至(7)の何れか一項に記載の画像処理装置。
(12)
前記画像上における前記ストリームの配置が、予め定められた第1の配置、または第2の配置とされており、
前記画像上における前記ストリームの配置が前記第2の配置とされている場合、前記管理領域には、前記第1の配置で前記ストリームを配置したときの前記画像上における前記ストリームの領域を特定するための情報と、前記第2の配置で前記ストリームを配置したときの前記画像上における前記ストリームの領域を特定するための情報とが含まれている
(4)乃至(7)の何れか一項に記載の画像処理装置。
(13)
前記管理領域には、同一の前記コンテンツを再生するための複数の前記ストリーム間における前記ストリームの相対的な品質を示す品質情報が含まれている
(1)乃至(12)の何れか一項に記載の画像処理装置。
(14)
前記管理領域には、前記ストリームの表示可能領域内の1または複数の領域ごとに前記品質情報が含まれている
(13)に記載の画像処理装置。
(15)
画像処理装置が、
3Dオブジェクトを周囲から見回し可能なコンテンツを管理するための情報が格納される管理領域と、前記3Dオブジェクトを構成するためのストリームが格納されたトラックが格納されるデータ領域とを有し、前記管理領域に同一の前記3Dオブジェクトを構成するための複数の前記ストリームを示すグループ情報が格納されたファイルを取得し、
前記グループ情報に基づいて、前記コンテンツの再生に用いる複数の前記ストリームを選択する
画像処理方法。
(16)
3Dオブジェクトを周囲から見回し可能なコンテンツを管理するための情報が格納される管理領域と、前記3Dオブジェクトを構成するためのストリームが格納されたトラックが格納されるデータ領域とを有し、前記管理領域に同一の前記3Dオブジェクトを構成するための複数の前記ストリームを示すグループ情報が格納されたファイルを生成するファイル生成部を備える
ファイル生成装置。
(17)
前記ファイルを送信する通信部をさらに備える
(16)に記載のファイル生成装置。
(18)
前記管理領域には、前記コンテンツの表示可能領域を示す情報が格納されている
(16)または(17)に記載のファイル生成装置。
(19)
前記管理領域には、複数の前記コンテンツ間における前記コンテンツの相対的な品質を示す品質情報が格納されている
(16)乃至(18)の何れか一項に記載のファイル生成装置。
(20)
前記トラックには、複数の前記ストリームを並べて配置することで得られた1つの画像が格納されている
(16)乃至(19)の何れか一項に記載のファイル生成装置。
(21)
前記管理領域には、前記画像上における前記ストリームの領域を特定するための情報が格納されている
(20)に記載のファイル生成装置。
(22)
前記管理領域には、前記ストリームの種類を示す情報が含まれている
(20)または(21)に記載のファイル生成装置。
(23)
前記ストリームの種類は、テクスチャ、デプス、シルエットが含まれるデプス、またはシルエットである
(22)に記載のファイル生成装置。
(24)
前記画像において、最も視点位置が近い前記ストリーム同士が隣接して配置されている
(20)乃至(23)の何れか一項に記載のファイル生成装置。
(25)
前記画像には、互いに異なる解像度の前記ストリームが配置されている
(20)乃至(23)の何れか一項に記載のファイル生成装置。
(26)
前記画像において、テクスチャの前記ストリームと、その前記テクスチャに対応するデプスの前記ストリームとが隣接して配置されている
(20)乃至(23)の何れか一項に記載のファイル生成装置。
(27)
前記画像において、テクスチャの前記ストリームと、その前記テクスチャに対応するデプスの前記ストリームおよびシルエットの前記ストリームとが隣接して配置されている
(20)乃至(23)の何れか一項に記載のファイル生成装置。
(28)
前記画像上における前記ストリームの配置が、予め定められた第1の配置、または第2の配置とされており、
前記画像上における前記ストリームの配置が前記第2の配置とされている場合、前記管理領域には、前記第1の配置で前記ストリームを配置したときの前記画像上における前記ストリームの領域を特定するための情報と、前記第2の配置で前記ストリームを配置したときの前記画像上における前記ストリームの領域を特定するための情報とが含まれている
(20)乃至(23)の何れか一項に記載のファイル生成装置。
(29)
前記管理領域には、同一の前記コンテンツを再生するための複数の前記ストリーム間における前記ストリームの相対的な品質を示す品質情報が含まれている
(16)乃至(28)の何れか一項に記載のファイル生成装置。
(30)
前記管理領域には、前記ストリームの表示可能領域内の1または複数の領域ごとに前記品質情報が含まれている
(29)に記載のファイル生成装置。
(31)
ファイル生成装置が、
3Dオブジェクトを周囲から見回し可能なコンテンツを管理するための情報が格納される管理領域と、前記3Dオブジェクトを構成するためのストリームが格納されたトラックが格納されるデータ領域とを有し、前記管理領域に同一の前記3Dオブジェクトを構成するための複数の前記ストリームを示すグループ情報が格納されたファイルを生成する
ファイル生成方法。
11 ファイル生成装置, 33 MPDファイル生成部, 35 アップロード部, 43 セグメントファイル生成部, 71 クライアント装置, 93 MPDファイル処理部, 94 セグメントファイル取得部, 111 セグメントファイル処理部, 113 表示情報生成部

Claims (18)

  1. コンテンツの再生に適切な1または複数のトラックのグループ情報であって、前記コンテンツが、空間を3次元的にキャプチャすることにより生成され、複数のストリームにより構成される3Dオブジェクトコンテンツであることを示す情報を含むグループ情報が格納されたセグメントファイルを取得するファイル取得部と、
    前記グループ情報に基づいて、前記コンテンツの再生に用いる複数の前記ストリームに対応する複数の前記トラックを選択し、選択した複数の各前記トラックについて、前記トラックに対応する1または複数の前記ストリームを含むデータを前記セグメントファイルから抽出するファイル処理部と
    を備える画像処理装置。
  2. 前記トラックに対応する前記データは、複数の前記ストリームを並べて配置することで得られた1つの画像である
    請求項1に記載の画像処理装置。
  3. 前記グループ情報には、前記画像上における前記ストリームの領域を特定するための情報が格納されている
    請求項2に記載の画像処理装置。
  4. 前記セグメントファイルには、前記ストリームの種類を示す情報が含まれている
    請求項1乃至請求項3の何れか一項に記載の画像処理装置。
  5. 前記ストリームの種類は、テクスチャ、デプス、シルエットが含まれるデプス、またはシルエットである
    請求項4に記載の画像処理装置。
  6. 前記画像において、最も視点位置が近い前記ストリーム同士が隣接して配置されている
    請求項2または請求項3に記載の画像処理装置。
  7. 前記画像には、互いに異なる解像度の前記ストリームが配置されている
    請求項2または請求項3に記載の画像処理装置。
  8. 前記画像上における前記ストリームの配置が、予め定められた第1の配置、または第2の配置とされており、
    前記画像上における前記ストリームの配置が前記第2の配置とされている場合、前記セグメントファイルには、前記第1の配置で前記ストリームを配置したときの前記画像上における前記ストリームの領域を特定するための情報と、前記第2の配置で前記ストリームを配置したときの前記画像上における前記ストリームの領域を特定するための情報とが含まれている
    請求項2に記載の画像処理装置。
  9. 前記セグメントファイルには、同一の前記コンテンツを再生するための複数の前記ストリーム間における前記ストリームの相対的な品質を示す品質情報が含まれている
    請求項1乃至請求項8の何れか一項に記載の画像処理装置。
  10. コンテンツの再生に適切な1または複数のトラックのグループ情報であって、前記コンテンツが、空間を3次元的にキャプチャすることにより生成され、複数のストリームにより構成される3Dオブジェクトコンテンツであることを示す情報を含むグループ情報と、前記トラックに対応する1または複数の前記ストリームを含むデータとが格納されたセグメントファイルを生成するファイル生成部を備える
    ファイル生成装置。
  11. 前記トラックに対応する前記データは、複数の前記ストリームを並べて配置することで得られた1つの画像である
    請求項10に記載のファイル生成装置。
  12. 前記グループ情報には、前記画像上における前記ストリームの領域を特定するための情報が格納されている
    請求項11に記載のファイル生成装置。
  13. 前記セグメントファイルには、前記ストリームの種類を示す情報が含まれている
    請求項10乃至請求項12の何れか一項に記載のファイル生成装置。
  14. 前記ストリームの種類は、テクスチャ、デプス、シルエットが含まれるデプス、またはシルエットである
    請求項13に記載のファイル生成装置。
  15. 前記画像において、最も視点位置が近い前記ストリーム同士が隣接して配置されている
    請求項11または請求項12に記載のファイル生成装置。
  16. 前記画像には、互いに異なる解像度の前記ストリームが配置されている
    請求項11または請求項12に記載のファイル生成装置。
  17. 前記画像上における前記ストリームの配置が、予め定められた第1の配置、または第2の配置とされており、
    前記画像上における前記ストリームの配置が前記第2の配置とされている場合、前記セグメントファイルには、前記第1の配置で前記ストリームを配置したときの前記画像上における前記ストリームの領域を特定するための情報と、前記第2の配置で前記ストリームを配置したときの前記画像上における前記ストリームの領域を特定するための情報とが含まれている
    請求項11に記載のファイル生成装置。
  18. 前記セグメントファイルには、同一の前記コンテンツを再生するための複数の前記ストリーム間における前記ストリームの相対的な品質を示す品質情報が含まれている
    請求項10乃至請求項17の何れか一項に記載のファイル生成装置。
JP2022013129A 2017-09-15 2022-01-31 画像処理装置およびファイル生成装置 Active JP7239029B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022013129A JP7239029B2 (ja) 2017-09-15 2022-01-31 画像処理装置およびファイル生成装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017177382A JP2019054417A (ja) 2017-09-15 2017-09-15 画像処理装置およびファイル生成装置
JP2022013129A JP7239029B2 (ja) 2017-09-15 2022-01-31 画像処理装置およびファイル生成装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2017177382A Division JP2019054417A (ja) 2017-09-15 2017-09-15 画像処理装置およびファイル生成装置

Publications (2)

Publication Number Publication Date
JP2022044835A JP2022044835A (ja) 2022-03-17
JP7239029B2 true JP7239029B2 (ja) 2023-03-14

Family

ID=87760988

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022013129A Active JP7239029B2 (ja) 2017-09-15 2022-01-31 画像処理装置およびファイル生成装置

Country Status (1)

Country Link
JP (1) JP7239029B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016509399A (ja) 2013-01-04 2016-03-24 クゥアルコム・インコーポレイテッドQualcomm Incorporated マルチビューコード化ファイルフォーマットでの深度ビューの空間解像度の信号伝達
WO2016128613A1 (en) 2015-02-10 2016-08-18 Nokia Technologies Oy A method, an apparatus and a computer program product for processing image sequence tracks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016509399A (ja) 2013-01-04 2016-03-24 クゥアルコム・インコーポレイテッドQualcomm Incorporated マルチビューコード化ファイルフォーマットでの深度ビューの空間解像度の信号伝達
WO2016128613A1 (en) 2015-02-10 2016-08-18 Nokia Technologies Oy A method, an apparatus and a computer program product for processing image sequence tracks

Also Published As

Publication number Publication date
JP2022044835A (ja) 2022-03-17

Similar Documents

Publication Publication Date Title
US11272159B2 (en) Method and device for transmitting stereo media content
JP7035401B2 (ja) 画像処理装置およびファイル生成装置
JP7399224B2 (ja) メディアコンテンツを送信するための方法、装置及びコンピュータプログラム
KR102543309B1 (ko) 화상 처리 장치 및 파일 생성 장치
JP7151486B2 (ja) 生成装置、生成方法、再生装置および再生方法
KR20210016530A (ko) 미디어 콘텐츠 전송을 위한 방법, 디바이스, 및 컴퓨터 프로그램
KR102243666B1 (ko) 360도 비디오를 전송하는 방법, 360도 비디오를 수신하는 방법, 360도 비디오 전송 장치, 360도 비디오 수신 장치
JP7239029B2 (ja) 画像処理装置およびファイル生成装置
KR20190136992A (ko) 영상 처리 방법 및 이를 이용한 영상 재생 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220131

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230131

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230213

R151 Written notification of patent or utility model registration

Ref document number: 7239029

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151