WO2022220278A1 - 情報処理装置および方法 - Google Patents

情報処理装置および方法 Download PDF

Info

Publication number
WO2022220278A1
WO2022220278A1 PCT/JP2022/017789 JP2022017789W WO2022220278A1 WO 2022220278 A1 WO2022220278 A1 WO 2022220278A1 JP 2022017789 W JP2022017789 W JP 2022017789W WO 2022220278 A1 WO2022220278 A1 WO 2022220278A1
Authority
WO
WIPO (PCT)
Prior art keywords
spatial region
information
data
scene description
file
Prior art date
Application number
PCT/JP2022/017789
Other languages
English (en)
French (fr)
Inventor
由佳 木山
遼平 高橋
光浩 平林
Original Assignee
ソニーグループ株式会社
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
Application filed by ソニーグループ株式会社 filed Critical ソニーグループ株式会社
Publication of WO2022220278A1 publication Critical patent/WO2022220278A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs

Definitions

  • the present disclosure has been made in view of such circumstances, and is intended to provide spatial region information to a playback control subject.
  • An information processing device generates a scene description file that stores an accessor that indicates a buffer area that stores spatial region information about a spatial region in 3D data that expresses a three-dimensional shape of a 3D object. It is an information processing device including a file generation unit that
  • FIG. 10 is a diagram showing a configuration example of objects in a scene description when 3D data is reconstructed by MAF;
  • FIG. 10 is a diagram showing a configuration example of objects in a scene description when 3D data is reconstructed by PE;
  • FIG. 10 is a diagram showing a configuration example of objects in a scene description when 3D data is reconstructed by PE;
  • FIG. 4 is a diagram for explaining a use case of playback control using partial access;
  • FIG. 4 is a diagram for explaining a use case of playback control using partial access;
  • FIG. 4 illustrates an example of a method for playback control using spatial region information;
  • FIG. 10 is a diagram showing an example object configuration of a scene description;
  • a JSON format file is a scene description file written in JSON (JavaScript (registered trademark) Object Notation).
  • a scene description is metadata that describes (a description of) a scene of 3D content. The description of this scene description defines what kind of scene it is.
  • a scene description file is a file that stores such scene descriptions.
  • a scene description file is also referred to as a scene description file in this disclosure.
  • zero or more values can be arrayed using [] (square brackets).
  • This array is also called a JSON array.
  • a JSON object for example, can also be applied as an element of this JSON array.
  • An example of the format is shown below.
  • FIG. 8 is a diagram showing a configuration example of objects in a scene description when the point cloud is static.
  • FIG. 9 is a diagram showing a description example of the scene description.
  • Each glTF2.0 object can store newly defined objects in an extension object.
  • FIG. 10 shows a description example when defining a newly defined object (ExtensionExample). As shown in FIG. 10, when using a newly defined extension, the extension object name (ExtensionExample in the example of FIG. 10) is described in "extensionUsed” and “extensionRequired”. This indicates that this extension is an extension that should not be used, or that it is an extension that is required for loading.
  • the media access function 52 acquires various media data requested by the presentation engine 51 from the cloud, local storage, or the like.
  • the media access function 52 supplies various data (encoded data) of the acquired media to the pipeline (Pipeline) 53 .
  • the presentation engine 51 performs rendering and the like using various media data held in the buffer 54 .
  • FIG. 12 is a diagram explaining extensions for handling timed media.
  • an MPEG media object (MPEG_media) is an extension of glTF, and is an object that specifies attributes of MPEG media such as video data, such as uri, track, renderingRate, and startTime.
  • step S22 the glTF analysis unit 63 confirms the media associated with the 3D object (texture), the buffer that stores the media after processing, and the accessor.
  • step S23 the glTF analysis unit 63 notifies the information to the media access function 52 as a file acquisition request.
  • the decoder can determine whether or not there is a patch in an area. 3D data can be restored to For example, even if the depth value changes due to encoding/decoding, the decoder can ignore the depth value in areas where no patch exists by referring to the occupancy map. In other words, the decoder can avoid processing as position information of 3D data by referring to the occupancy map.
  • the V-PCC unit 92 includes a V-PCC unit header 93 and a V-PCC unit payload 94.
  • the V-PCC unit header 93 contains information indicating the type of information stored in the V-PCC unit payload 94 .
  • the V-PCC unit payload 94 consists of V-PCC Parameter Set 95, Geometry Video Data 96, Geometry Video Data, depending on the type signaled in its V-PCC Unit Header 93.
  • An attribute video sub-bitstream 97 (Attribute Video Data), an occupancy map video sub-bitstream 98 (Occupancy Video Data), an atlas sub-bitstream 99 (Atlas Data), etc. may be stored.
  • a V-PCC Parameter Set 95 stores parameters relating to the V-PCC unit 92 .
  • 3D spatial information is stored, for example, in the following locations.
  • the bounding box information is, for example, the V3C bounding box in the sample entry of the V3C atlas track or a dynamic volumetric metadata track linked to the V3C atlas track, as shown in FIG. It may be stored in an information box (V3CBoundingInformationBox).
  • Description 131 in FIG. 25 shows a description example of the V3C bounding information box.
  • a client device that reproduces content (3D data) decodes the V3C bitstream and reconstructs 3D data (eg, point cloud) from the resulting 2D data.
  • the client device can reconstruct the 3D data in MAF or PE.
  • the data stored in the buffer differs in each case.
  • the spatial region information may be set based on arbitrary information.
  • the label may be set based on information stored in the Object label information SEI included in the V3CDecoderConfigurationRecord.
  • Anchors and cuboids may also be set based on information stored in 3DspatialRegionStruct() in V3CSpatialRegionsBox().
  • the file generation unit stores information obtained from Object label information SEI included in V3CDecoderConfigurationRecord and 3DspatialRegionStruct() in V3CSpatialRegionsBox() in the scene description as spatial region information. good too.
  • a description example 201 shown in FIG. 35 shows a description example of the scene description in this case.
  • an MPEG_spatial_region extension is defined within a node, and spatial region information such as labels, anchors, and cuboids are stored in the MPEG_spatial_region extension.
  • This spatial region information may include information for identifying the spatial region, such as the label shown in the rectangular frame 202, such as the Object label information SEI value included in the V3CDecoderConfigurationRecord.
  • This spatial region information may also include parameters stored in 3DspatialRegionStruct( ) in V3CSpatialRegionsBox( ), such as anchors and cuboids shown in rectangular frame 203 .
  • a client device executes a client process to reproduce the content.
  • An example of the flow of client processing when the spatial region information is stored in the scene description as described above will be described with reference to the flowchart of FIG.
  • the client device that reproduces content has MAF 52 (and pipeline 53), buffer 54, PE 51, and the like. Then, as shown in FIG. 36, the MAF 52 executes MAF processing. Also, the PE 51 executes PE processing. Then, the reproduction control entity executes control processing.
  • the MAF 52 that started the MAF process acquires the instruction in step S111. Then, in step S112, the MAF 52 acquires the V3C track that stores the V3C bitstream to be reproduced. As a result, the MAF 52 obtains the correspondence between spatial regions and tiles.
  • the PE 51 reads (obtains) the tile data from the buffer 54 at an appropriate timing. Then, in step S127, the PE 51 reconstructs 3D data using the acquired tile data. Then, in step S128, the PE 51 performs rendering by, for example, controlling the display information generation unit to generate a display image. Then, in step S129, the PE 51 displays the display image on the display unit.
  • the MAF 52 terminates the MAF processing
  • the PE 51 terminates the PE processing
  • the reproduction control entity terminates the control processing. That is, the client processing ends.
  • the client device can provide the spatial region information to the reproduction control subject. Therefore, the client device can perform content reproduction according to the intention of the reproduction control subject, such as reproducing a 3D object that the reproduction control subject wants to focus on with high image quality, as in the use case described above.
  • the file generation unit may store, in the scene description file, accessors for each parameter of spatial region information that indicate different buffer areas. Further, for example, in an information processing device (for example, a client device), the providing unit may acquire each parameter of spatial region information from different buffer areas.
  • spatial region information about a spatial region in 3D data representing the three-dimensional shape of a 3D object is acquired from a buffer area based on a scene description, and the 3D data is A providing unit for providing information to a playback controller who controls playback is provided.
  • the PE 51 that started the PE process parses (analyzes) the scene description (SD) in step S221. Then, in step S222, the PE 51 parses the MPEG_spatial_region extension defined in the scene description node.
  • the MAF 52 executes these processes for each time (each frame) by repeating each process from step S215 to step S218. Also, the PE 51 repeats the processes of steps S228 to S231, thereby executing these processes for each time (each frame).
  • the MAF 52 terminates the MAF processing
  • the PE 51 terminates the PE processing
  • the reproduction control entity terminates the control processing. That is, the client processing ends.
  • the file generation unit 314 may generate a scene description file that stores an accessor that indicates a buffer area that stores spatial region information related to a spatial region in 3D data that expresses the three-dimensional shape of a 3D object. good.
  • the client device that reproduces the content can provide the spatial region information to the reproduction control subject. Therefore, the client device can perform content reproduction according to the intention of the reproduction control subject, such as reproducing a 3D object that the reproduction control subject wants to focus on with high image quality, as in the use case described above.
  • the MAF 52 may then store the V3C content data (2D data) in the buffer 54 .
  • the PE 51 may retrieve the data from the buffer 54 based on the scene description and reconstruct the 3D data. Then, the PE 51 may control the display information generation unit 414 to perform rendering using the reconstructed 3D data and generate a display image. Note that the file processing unit 412 may supply the display control unit 416 with information useful for generating display information included in the scene description or the like.
  • the file processing unit 412 may acquire each parameter of the spatial region information from different buffer areas.
  • the client device 400 executes client processing according to the flow chart shown in FIG.
  • the present technology includes a processor (e.g., video processor) as a system LSI (Large Scale Integration), etc., a module (e.g., video module) using a plurality of processors, etc., a unit (e.g., video unit) using a plurality of modules, etc.
  • a processor e.g., video processor
  • LSI Large Scale Integration
  • module e.g., video module
  • a unit e.g., video unit
  • it can be implemented as a part of the configuration of the device, such as a set (for example, a video set) in which other functions are added to the unit.
  • the present technology can also be applied to a network system configured by a plurality of devices.
  • the present technology may be implemented as cloud computing in which a plurality of devices share and jointly process via a network.
  • this technology is implemented in cloud services that provide image (moving image) services to arbitrary terminals such as computers, AV (Audio Visual) equipment, portable information processing terminals, and IoT (Internet of Things) devices. You may make it
  • Systems, devices, processing units, etc. to which this technology is applied can be used in any field, such as transportation, medical care, crime prevention, agriculture, livestock industry, mining, beauty, factories, home appliances, weather, and nature monitoring. . Moreover, its use is arbitrary.
  • “flag” is information for identifying a plurality of states, not only information used for identifying two states of true (1) or false (0), Information that can identify the state is also included. Therefore, the value that this "flag” can take may be, for example, two values of 1/0, or three or more values. That is, the number of bits constituting this "flag” is arbitrary, and may be 1 bit or multiple bits.
  • the identification information (including the flag) is assumed not only to include the identification information in the bitstream, but also to include the difference information of the identification information with respect to certain reference information in the bitstream.
  • the "flag” and “identification information” include not only that information but also difference information with respect to reference information.
  • the information processing apparatus according to any one of (1) to (3), further comprising an acquisition unit that acquires the 3D data of the spatial region specified by the playback controller based on the spatial region information. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本開示は、再生制御主体にスペーシャルリージョン情報を提供することができるようにする情報処理装置および方法に関する。 3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、その3Dデータの再生を制御する再生制御者に提供する。また、そのスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成する。また、シーンディスクリプションに基づいてバッファ領域からそのスペーシャルリージョン情報を取得し、再生制御者に提供する。また、そのスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成する。本開示は、例えば、情報処理装置、または情報処理方法等に適用することができる。

Description

情報処理装置および方法
 本開示は、情報処理装置および方法に関し、特に、再生制御主体にスペーシャルリージョン情報を提供することができるようにした情報処理装置および方法に関する。
 従来、3D(3次元)オブジェクトを3次元空間内に配置し、レンダリングするためのシーンディスクリプション(Scene Description)のフォーマットであるglTF(The GL Transmission Format)(登録商標)2.0があった(例えば非特許文献1参照)。
 また、MPEG(Moving Picture Experts Group)-I Scene Descriptionにおいて、glTF2.0を拡張し、時間方向に動的なコンテンツを扱う方法が提案された(例えば非特許文献2参照)。
 ところで、ポイントクラウド(point cloud)の符号化方式として、ポイントクラウドをセグメンテーションして領域を形成し、その領域毎に平面投影して動画コーデックにより符号化するV-PCC(Video based Point Cloud Compression)が提案された(例えば、非特許文献3参照)。ポイントクラウドは、3次元空間上に位置情報と属性情報(色や反射等)を持つ点の集合によりオブジェクトの3次元構造を表現する3Dデータである。
 また、このV-PCCで符号化されたポイントクラウドの符号化データにより構成されるV3CビットストリームをISOBMFFに格納する方法が検討された(例えば、非特許文献4参照)。
 近年、シーン内に配置される3Dオブジェクトの実データとして、ISOBMFFに格納されたV3Cビットストリームを使用するための方法が検討された。その場合、クライアントにおいて、3Dデータの再構成をMAF(Media Access Function)で行う方法とPE(Presentation Engine)で行う方法が検討された。さらに、このV3Cビットストリームへのパーシャルアクセス(partial access)の機能のサポートも望まれた。
Saurabh Bhatia, Patrick Cozzi, Alexey Knyazev, Tony Parisi, "Khronos glTF2.0", https://github.com/KhronosGroup/glTF/tree/master/specification/2.0, June 9, 2017 "Text of ISO/IEC CD 23090-14 Scene Description for MPEG Media", ISO/IEC JTC 1/SC 29/WG 3 N00026, 2020-11-30 "ISO/IEC FDIS 23090-5 Visual Volumetric Video-based Coding and Video-based Point Cloud Compression", ISO/IEC JTC 1/SC 29/ WG 11 N19579, 2020-09-21 "Draft text of ISO/IEC FDIS 23090-10 Carriage of Visual Volumetric Video-based Coding Data",INTERNATIONAL ORGANIZATION FOR STANDARDIZATION ORGANISATION INTERNATIONALE DE NORMALISATION ISO/IEC JTC 1/SC 29/WG 03 MPEG SYSTEMS, ISO/IEC JTC 1/SC 29/WG 03 N0163, 19995, 2021-03-25
 例えば、このパーシャルアクセス機能を利用して、コンテンツを再生するクライアント装置において、コンテンツの再生を制御する再生制御主体(再生制御者とも称する)が3Dデータに含まれる所望のスペーシャルリージョンを選択し、そのスペーシャルリージョンを優先的に(例えば高画質に)再生することが望まれた。その場合、例えば、クライアント装置が、3Dデータに含まれるスペーシャルリージョンについての情報を再生制御主体に提供し、再生制御主体が、優先させるスペーシャルリージョンをその情報に基づいて選択する方法が考えられる。
 しかしながら、上述の非特許文献に記載の方法では、スペーシャルリージョンについての情報を再生制御主体に提供することが困難であった。
 本開示は、このような状況に鑑みてなされたものであり、再生制御主体にスペーシャルリージョン情報を提供することができるようにするものである。
 本技術の一側面の情報処理装置は、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、前記3Dデータの再生を制御する再生制御者に提供する提供部を備える情報処理装置である。
 本技術の一側面の情報処理方法は、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、前記3Dデータの再生を制御する再生制御者に提供する情報処理方法である。
 本技術の他の側面の情報処理装置は、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成するファイル生成部を備える情報処理装置である。
 本技術の他の側面の情報処理方法は、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成する情報処理方法である。
 本技術のさらに他の側面の情報処理装置は、シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を取得し、前記3Dデータの再生を制御する再生制御者に提供する提供部を備える情報処理装置である。
 本技術のさらに他の側面の情報処理方法は、シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を取得し、前記3Dデータの再生を制御する再生制御者に提供する情報処理方法である。
 本技術のさらに他の側面の情報処理装置は、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成するファイル生成部を備える情報処理装置である。
 本技術のさらに他の側面の情報処理方法は、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成する情報処理方法である。
 本技術の一側面の情報処理装置および方法においては、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報がシーンディスクリプションから取得され、その3Dデータの再生を制御する再生制御者に提供される。
 本技術の他の側面の情報処理装置および方法においては、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルが生成される。
 本技術のさらに他の側面の情報処理装置および方法においては、シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報が取得され、その3Dデータの再生を制御する再生制御者に提供される。
 本技術のさらに他の側面の情報処理装置および方法においては、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルが生成される。
glTF2.0の主な構成例を示す図である。 glTFオブジェクトと参照関係の例を示す図である。 シーンディスクリプションの記述例を示す図である。 バイナリデータへのアクセス方法について説明する図である。 シーンディスクリプションの記述例を示す図である。 buffer object、buffer view object、accessor objectの関係を説明する図である。 buffer object、buffer view object、accessor objectの記述例を示す図である。 シーンディスクリプションのオブジェクトの構成例を説明する図である。 シーンディスクリプションの記述例を示す図である。 オブジェクトの拡張方法について説明する図である。 クライアント処理の構成について説明する図である。 タイムドメタデータを扱うためのextensionの構成例を示す図である。 シーンディスクリプションの記述例を示す図である。 シーンディスクリプションの記述例を示す図である。 タイムドメタデータを扱うためのextensionの構成例を示す図である。 クライアントの主な構成例を示す図である。 クライアント処理の流れの例を説明するフローチャートである。 V-PCCの概要を説明する図である。 V-PCCビットストリームの主な構成例を示す図である。 マルチトラックストラクチャの場合のISOBMFFのトラックの構成例を示す図である。 マルチトラックストラクチャの場合のMPDの記述例を示す図である。 パーシャルアクセスのためのISOBMFFのトラックの構成例を示す図である。 3Dスペーシャルリージョンについて説明する図である。 バウンディングボックス情報とスペーシャルリージョン情報の格納場所について説明するための図である。 バウンディングボックス情報とスペーシャルリージョン情報を格納するためのシンタックスの例を示す図である。 スペーシャルリージョン情報を格納するためのシンタックスの例を示す図である。 クライアント処理の例を示す図である。 3Dデータの再構成をMAFで行う場合の、シーンディスクリプションにおけるオブジェクトの構成例を示す図である。 3Dデータの再構成をPEで行う場合の、シーンディスクリプションにおけるオブジェクトの構成例を示す図である。 3Dデータの再構成をPEで行う場合の、シーンディスクリプションにおけるオブジェクトの構成例を示す図である。 パーシャルアクセスを利用した再生制御のユースケースについて説明するための図である。 パーシャルアクセスを利用した再生制御のユースケースについて説明するための図である。 スペーシャルリージョン情報を用いた再生制御のための方法の例を示す図である。 シーンディスクリプションのオブジェクト構成例を示す図である。 シーンディスクリプションの記述例を示す図である。 クライアント処理の流れの例を示すフローチャートである。 シーンディスクリプションのオブジェクト構成例を示す図である。 シーンディスクリプションの記述例を示す図である。 クライアント処理の流れの例を示すフローチャートである。 ファイル生成装置の主な構成例を示すブロック図である。 ファイル生成処理の流れの例を示すフローチャートである。 ファイル生成処理の流れの例を示すフローチャートである。 クライアント装置の主な構成例を示すブロック図である。 コンピュータの主な構成例を示すブロック図である。
 以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
 1.技術内容・技術用語をサポートする文献等
 2.MPEG-Iシーンディスクリプション
 3.スペーシャルリージョン情報の利用
 4.第1の実施の形態(ファイル生成装置)
 5.第2の実施の形態(クライアント装置)
 6.付記
 <1.技術内容・技術用語をサポートする文献等>
 本技術で開示される範囲は、実施の形態に記載されている内容だけではなく、出願当時において公知となっている以下の非特許文献等に記載されている内容や以下の非特許文献において参照されている他の文献の内容等も含まれる。
 非特許文献1:(上述)
 非特許文献2:(上述)
 非特許文献3:(上述)
 非特許文献4:(上述)
 つまり、上述の非特許文献に記載されている内容や、上述の非特許文献において参照されている他の文献の内容等も、サポート要件を判断する際の根拠となる。例えば、非特許文献1乃至非特許文献3に記載されるglTF2.0やそのextensionなどのシンタックスや用語が本開示において直接的に定義されていない場合でも、本開示の範囲内であり、請求の範囲のサポート要件を満たすものとする。また、例えば、パース(Parsing)、シンタックス(Syntax)、セマンティクス(Semantics)等の技術用語についても同様に、本開示において直接的に定義されていない場合でも、本開示の範囲内であり、請求の範囲のサポート要件を満たすものとする。
 <2.MPEG-Iシーンディスクリプション>
  <gltf2.0>
 従来、例えば、非特許文献1に記載のように、3D(3次元)オブジェクトを3次元空間内に配置するためのフォーマットであるglTF(The GL Transmission Format)(登録商標)2.0があった。glTF2.0では、例えば図1に示されるように、JSONフォーマットファイル(.glTF)と、バイナリファイル(.bin)と、イメージファイル(.pngや.jpg等)とにより構成される。バイナリファイルは、ジオメトリやアニメーション等のバイナリデータを格納する。イメージファイルは、テクスチャ等のデータを格納する。
 JSONフォーマットファイルは、JSON(JavaScript(登録商標) Object Notation)で記述されたシーンディスクリプションファイル(scene description file)である。シーンディスクリプションとは、3Dコンテンツのシーン(の説明)を記述するメタデータである。このシーンディスクリプションの記述により、どのようなシーンであるかが定義される。シーンディスクリプションファイルは、そのようなシーンディスクリプションを格納するファイルである。本開示においては、シーンディスクリプションファイルのことをシーン記述ファイルとも称する。
 JSONフォーマットファイルの記述は、キー(KEY)とバリュー(VALUE)のペアの羅列により構成される。以下にその書式の例を示す。
 “KEY”:”VALUE”
 キーは文字列により構成される。バリューは数値、文字列、真偽値、配列、オブジェクト、またはnull等により構成される。
 また、複数のキーとバリューのペア(“KEY”:”VALUE”)を、{}(中かっこ)を用いてまとめることができる。この中かっこでまとめたものをJSONオブジェクトとも称する。以下にその書式の例を示す。
 “user”:{"id":1, "name":"tanaka”}
 この例の場合、キー(user)に対応するバリューとして、"id":1のペアと"name":"tanaka”のペアをまとめたJSONオブジェクトが定義されている。
 また、0個以上のバリューを、[](大かっこ)を用いて配列化することもできる。この配列をJSON配列とも称する。このJSON配列の要素として、例えば、JSONオブジェクトを適用することもできる。以下にその書式の例を示す。
 test":["hoge", "fuga", "bar"]
 "users":[{"id":1, "name":"tanaka"},{"id":2,"name":"yamada"},{"id":3, "name":"sato"}]
 JSONフォーマットファイルの最上位に記載できるglTFオブジェクト(glTF object)と、それらが持てる参照関係を図2に示す。図2に示されるツリー構造の長丸がオブジェクトを示し、そのオブジェクト間の矢印が参照関係を示している。図2に示されるように、"scene"、"node"、"mesh"、"camera"、"skin"、"material"、"texture"等のオブジェクトがJSONフォーマットファイルの最上位に記述される。
 このようなJSONフォーマットファイル(シーンディスクリプション)の記述例を図3に示す。図3のJSONフォーマットファイル20は、最上位の一部の記述例を示している。このJSONフォーマットファイル20において、使用されるトップレベルオブジェクト(top-level object)21は、全て最上位に記述される。このトップレベルオブジェクト21は、図2に示されるglTFオブジェクトである。また、JSONフォーマットファイル20においては、矢印22として示されるように、オブジェクト(object)間の参照関係が示される。より具体的には、上位オブジェクトのプロパティ(property)で、参照するオブジェクトの配列の要素のインデックス(index)を指定することによりその参照関係が示される。
 図4は、バイナリデータへのアクセス方法について説明する図である。図4に示されるように、バイナリデータは、バッファオブジェクト(buffer object)に格納される。つまり、バッファオブジェクトにおいてバイナリデータにアクセスするための情報(例えばURI(Uniform Resource Identifier)等)が示される。JSONフォーマットファイルにおいては、図4に示されるように、例えばメッシュ(mesh)、カメラ(camera)、スキン(skin)等のオブジェクトから、そのバッファオブジェクトに対して、アクセサオブジェクト(accessor object)とバッファビューオブジェクト(bufferView object)を介してアクセスすることができる。
 つまり、メッシュ(mesh)、カメラ(camera)、スキン(skin)等のオブジェクトにおいては、参照するアクセサオブジェクトが指定される。JSONフォーマットファイルにおけるメッシュオブジェクト(mesh)の記述例を図5に示す。例えば、図5のように、メッシュオブジェクトにおいては、NORMAL、POSITION、TANGENT、TEXCORD_0等の頂点の属性(アトリビュート(attribute))がキーとして定義され、その属性毎に、参照するアクセサオブジェクトがバリューとして指定されている。
 バッファオブジェクト、バッファビューオブジェクト、アクセサオブジェクトの関係を図6に示す。また、JSONフォーマットファイルにおけるそれらのオブジェクトの記述例を図7に示す。
 図6において、バッファオブジェクト41は、実データであるバイナリデータにアクセスするための情報(URI等)と、そのバイナリデータのデータ長(例えばバイト長)を示す情報とを格納するオブジェクトである。図7のAは、そのバッファオブジェクト41の記述例を示している。図7のAに示される「"bytelength":102040」は、図6に示されるように、バッファオブジェクト41のバイト長が102040バイト(bytes)であることを示している。また、図7のAに示される「"uri":"duck.bin"」は、図6に示されるように、バッファオブジェクト41のURIが"duck.bin"であることを示している。
 図6において、バッファビューオブジェクト42は、バッファオブジェクト41において指定されたバイナリデータのサブセット(subset)領域に関する情報(つまりバッファオブジェクト41の一部の領域に関する情報)を格納するオブジェクトである。図7のBは、そのバッファビューオブジェクト42の記述例を示している。図6や図7のBに示されるように、バッファビューオブジェクト42は、例えば、そのバッファビューオブジェクト42が属するバッファオブジェクト41の識別情報、そのバッファオブジェクト41内におけるそのバッファビューオブジェクト42の位置を示すオフセット(例えばバイトオフセット)、そのバッファビューオブジェクト42のデータ長(例えばバイト長)を示すレングス(例えばバイトレングス)等の情報を格納する。
 図7のBに示されるように、バッファビューオブジェクトが複数存在する場合、そのバッファビューオブジェクト毎(つまりサブセット領域毎)に情報が記述される。例えば、図7のBにおいて上側に示される、「"buffer":0」、「"bytelength":25272」、「"byteOffset":0」等の情報は、図6においてバッファオブジェクト41内に示される1つ目のバッファビューオブジェクト42(bufferView[0])の情報である。また、図7のBにおいて下側に示される、「"buffer":0」、「"bytelength":76768」、「"byteOffset":25272」等の情報は、図6においてバッファオブジェクト41内に示される2つ目のバッファビューオブジェクト42(bufferView[1])の情報である。
 図7のBに示される1つ目のバッファビューオブジェクト42(bufferView[0])の「"buffer":0」は、図6に示されるように、そのバッファビューオブジェクト42(bufferView[0])が属するバッファオブジェクト41の識別情報が「0」(Buffer[0])であることを示している。また、「"bytelength":25272」は、そのバッファビューオブジェクト42(bufferView[0])のバイト長が25272バイトであることを示している。さらに、「"byteOffset":0」は、そのバッファビューオブジェクト42(bufferView[0])のバイトオフセットが0バイトであることを示している。
 図7のBに示される2つ目のバッファビューオブジェクト42(bufferView[1])の「"buffer":0」は、図6に示されるように、そのバッファビューオブジェクト42(bufferView[0])が属するバッファオブジェクト41の識別情報が「0」(Buffer[0])であることを示している。また、「"bytelength":76768」は、そのバッファビューオブジェクト42(bufferView[0])のバイト長が76768バイトであることを示している。さらに、「"byteOffset":25272」は、そのバッファビューオブジェクト42(bufferView[0])のバイトオフセットが25272バイトであることを示している。
 図6において、アクセサオブジェクト43は、バッファビューオブジェクト42のデータの解釈方法に関する情報を格納するオブジェクトである。図7のCは、そのアクセサオブジェクト43の記述例を示している。図6や図7のCに示されるように、アクセサオブジェクト43は、例えば、そのアクセサオブジェクト43が属するバッファビューオブジェクト42の識別情報、そのバッファビューオブジェクト42の、バッファオブジェクト41内における位置を示すオフセット(例えばバイトオフセット)、そのバッファビューオブジェクト42のコンポーネントタイプ、そのバッファビューオブジェクト42に格納されるデータ数、そのバッファビューオブジェクト42に格納されるデータのタイプ等の情報を格納する。これらの情報は、バッファビューオブジェクト毎に記述される。
 図7のCの例では、「"bufferView":0」、「"byteOffset":0」、「"componentType":5126」、「"count":2106」、「"type":"VEC3"」等の情報が示されている。「"bufferView":0」は、図6に示されるように、そのアクセサオブジェクト43が属するバッファビューオブジェクト42の識別情報が「0」(bufferView[0])であることを示している。また、「"byteOffset":0」は、そのバッファビューオブジェクト42(bufferView[0])のバイトオフセットが0バイトであることを示している。さらに、「"componentType":5126」は、コンポーネントタイプが、FLOAT型(OpenGLマクロ定数)であることを示している。また、「"count":2106」は、そのバッファビューオブジェクト42(bufferView[0])に格納されるデータが2106個であることを示している。さらに、「"type":"VEC3"」は、そのバッファビューオブジェクト42(bufferView[0])に格納されるデータ(のタイプ)が3次元ベクトルであることを示している。
 イメージ(image)以外のデータへのアクセスは、全てこのアクセサオブジェクト43への参照により(アクセサのインデックスを指定することにより)定義される。
 次に、このようなglTF2.0に準拠するシーンディスクリプション(JSONフォーマットファイル)において、ポイントクラウドの3Dオブジェクトを指定する方法について説明する。ポイントクラウドは、立体構造物(3次元形状のオブジェクト)を多数の点の集合として表現する3Dコンテンツである。ポイントクラウドのデータは、各点の位置情報(ジオメトリ(geometry)とも称する)と属性情報(アトリビュート(attribute)とも称する)とにより構成される。アトリビュートは任意の情報を含むことができる。例えば、各ポイントの色情報、反射率情報、法線情報等がアトリビュートに含まれるようにしてもよい。このようにポイントクラウドは、データ構造が比較的単純であるとともに、十分に多くの点を用いることにより任意の立体構造物を十分な精度で表現することができる。
 ポイントクラウドが時間方向に変化しない(静的であるとも称する)場合、glTF2.0のmesh.primitives objectを用いて3Dオブジェクトを指定する。図8は、ポイントクラウドが静的な場合の、シーンディスクリプションにおけるオブジェクトの構成例を示す図である。図9は、そのシーンディスクリプションの記述例を示す図である。
 図9に示されるように、primitives objectのmodeは、データ(data)がポイントクラウドの点(point)として扱われることを示す0に指定される。図8や図9に示されるように、mesh.primitives内のattributesオブジェクトのポジションプロパティ(POSITION property)において、点(Point)の位置情報を格納するバッファ(buffer)へのアクセサ(accessor)が指定される。同様に、attributesオブジェクトのカラープロパティ(COLOR property)において、点(Point)の色情報を格納するバッファ(buffer)へのアクセサ(accessor)が指定される。バッファ(buffer)とバッファビュー(bufferView)は1つであってもよい(1つのファイル(file)にデータ(data)が格納されてもよい)。
 次に、このようなシーンディスクリプションのオブジェクトの拡張について説明する。glTF2.0の各オブジェクトは、拡張オブジェクト(extension object)内に新たに定義されたオブジェクトを格納することができる。図10は、新たに定義されたオブジェクト(ExtensionExample)を規定する場合の記述例を示す。図10に示されるように、新たに定義されたextensionを使用する場合、“extensionUsed”と”extensionRequired”にそのextension object名(図10の例の場合、ExtensionExample)が記述される。これにより、このextensionが、使用されるなextensionであること、または、ロード(load)に必要なextensionであることが示される。
  <クライアント処理>
 次に、MPEG-I Scene Descriptionにおけるクライアント装置の処理について説明する。クライアント装置は、シーンディスクリプションを取得し、そのシーンディスクリプションに基づいて3Dオブジェクトのデータを取得し、そのシーンディスクリプションや3Dオブジェクトのデータを用いて表示画像を生成する。
 非特許文献2に記載のように、クライアント装置では、プレゼンテーションエンジンやメディアアクセスファンクション等が処理を行う。例えば、図11に示されるように、クライアント装置50のプレゼンテーションエンジン(Presentation Engine)51が、シーンディスクリプションの初期値やそのシーンディスクリプションを更新するための情報(以下、更新情報とも称する)を取得し、処理対象時刻のシーンディスクリプションを生成する。そして、プレゼンテーションエンジン51は、そのシーンディスクリプションを解析し、再生するメディア(動画や音声等)を特定する。そして、プレゼンテーションエンジン51は、メディアアクセスAPI(Media Access API(Application Program Interface))経由で、メディアアクセスファンクション(Media Access Function)52に対してそのメディアの取得を要求する。また、プレゼンテーションエンジン51は、パイプライン処理の設定やバッファの指定等も行う。
 メディアアクセスファンクション52は、プレゼンテーションエンジン51から要求されたメディアの各種データをクラウド(Cloud)やローカルストレージ(Local Storage)等から取得する。メディアアクセスファンクション52は、取得したメディアの各種データ(符号化データ)をパイプライン(Pipeline)53に供給する。
 パイプライン53は、供給されたメディアの各種データ(符号化データ)を、パイプライン処理により復号し、その復号結果をバッファ(Buffer)54に供給する。バッファ54は、供給されたメディアの各種データを保持する。
 プレゼンテーションエンジン51は、バッファ54に保持されているメディアの各種データを用いてレンダリング(Rendering)等を行う。
  <Timed mediaの適用>
 近年、例えば、非特許文献2に示されるように、MPEG-I Scene Descriptionにおいて、glTF2.0を拡張し、3Dオブジェクトコンテンツとしてタイムドメディア(Timed media)を適用することが検討されている。タイムドメディアとは、2次元画像における動画像のように、時間軸方向に変化するメディアデータである。
 glTFは、メディアデータ(3Dオブジェクトコンテンツ)として、静止画データのみ適用可能であった。つまり、glTFは、動画像のメディアデータには対応していなかった。3Dオブジェクトを動かす場合は、アニメーション(時間軸に沿って静止画を切り替える方法)が適用されていた。
 MPEG-I Scene Descriptionでは、そのglTF2.0を適用し、シーンディスクリプションとしてJSONフォーマットファイルを適用し、さらに、メディアデータとして、タイムドメディア(例えばビデオデータ)を扱うことができるようにglTFを拡張することが検討されている。タイムドメディアを扱うために、例えば以下のような拡張が行われる。
 図12は、タイムドメディアを扱うための拡張について説明する図である。図12の例において、MPEGメディアオブジェクト(MPEG_media)は、glTFのextensionであり、例えば、uri, track, renderingRate, startTime等、ビデオデータ等のMPEGメディアの属性を指定するオブジェクトである。
 また、図12に示されるように、テクスチャオブジェクト(texture)の拡張オブジェクト(extensions)として、MPEGテクスチャビデオオブジェクト(MPEG_texture_video)が設けられる。そのMPEGテクスチャビデオオブジェクトには、アクセスするバッファオブジェクトに対応するアクセサの情報が格納される。すなわち、MPEGテクスチャビデオオブジェクトは、MPEGメディアオブジェクト(MPEG_media)で指定されたテクスチャメディア(texture media)が復号されて格納されるバッファ(buffer)に対応するアクセサ(accessor)のインデックスを指定するオブジェクトである。
 図13は、タイムドメディアを扱うための拡張について説明するための、シーンディスクリプションにおけるMPEGメディアオブジェクト(MPEG_media)およびMPEGテクスチャビデオオブジェクト(MPEG_texture_video)の記述例を示す図である。図13の例の場合、上から2行目において下記のように、テクスチャオブジェクト(texture)の拡張オブジェクト(extensions)として、MPEGテクスチャビデオオブジェクト(MPEG_texture_video)が設定されている。そして、そのMPEGビデオテクスチャオブジェクトのバリューとして、アクセサのインデックス(この例では「2」)が指定されている。
"texture":[{"sampler":0, "source":1, "extensions":{"MPEG_texture_video ":"accessor":2}}],
 また、図13の例の場合、上から7行目乃至16行目において下記のように、glTFの拡張オブジェクト(extensions)として、MPEGメディアオブジェクト(MPEG_media)が設定されている。そして、そのMPEGメディアオブジェクトのバリューとして、例えば、そのMPEGメディアオブジェクトの符号化やURI等といった、MPEGメディアオブジェクトに関する様々な情報が格納されている。
"MPEG_media":{
  "media":[
        {"name":"source_1", "renderingRate":30.0, "startTime":9.0, "timeOffset":0.0,
          "loop":"true", "controls":"false",
          "alternatives":[{"mimeType":"video/mp4;codecs=\"avc1.42E01E\"", "uri":"video1.mp4",
                                     "tracks":[{"track":""#track_ID=1"}]
                         }]
        }
  ]
}
 また、各フレームデータはデコードされ順次バッファに格納されるが、その位置などが変動するため、シーンディスクリプションには、その変動する情報を格納して、レンダラ(renderer)がデータを読みだせるようにする仕組みが設けられる。例えば、図12に示されるように、バッファオブジェクト(buffer)の拡張オブジェクト(extensions)として、MPEGバッファサーキュラオブジェクト(MPEG_buffer_circular)が設けられる。そのMPEGバッファサーキュラオブジェクトには、バッファオブジェクト内にデータを動的に格納するための情報が格納される。例えば、バッファヘッダ(bufferHeader)のデータ長を示す情報や、フレーム数を示す情報等といった情報がこのMPEGバッファサーキュラオブジェクトに格納される。なお、バッファヘッダは、例えば、インデックス(index)、格納されるフレームデータのタイムスタンプやデータ長等といった情報を格納する。
 また、図12に示されるように、アクセサオブジェクト(accessor)の拡張オブジェクト(extensions)として、MPEGアクセサタイムドオブジェクト(MPEG_timed_accessor)が設けられる。この場合、メディアデータは動画なので時間方向に参照するバッファビューオブジェクト(bufferView)が変化し得る(位置が変動し得る)。そこで、その参照するバッファビューオブジェクトを示す情報が、このMPEGアクセサタイムドオブジェクトに格納される。例えば、MPEGアクセサタイムドオブジェクトには、タイムドアクセサインフォメーションヘッダ(timedAccessor information header)が記述されるバッファビューオブジェクト(bufferView)への参照を示す情報が格納される。なお、タイムドアクセサインフォメーションヘッダは、例えば、動的に変化するアクセサオブジェクトとバッファビューオブジェクト内の情報を格納するヘッダ情報である。
 図14は、タイムドメディアを扱うための拡張について説明するための、シーンディスクリプションにおけるMPEGバッファサーキュラオブジェクト(MPEG_buffer_circular)およびMPEGアクセサタイムドオブジェクト(MPEG_accessor_timed)の記述例を示す図である。図14の例の場合、上から5行目において下記のように、アクセサオブジェクト(accessors)の拡張オブジェクト(extensions)として、MPEGアクセサタイムドオブジェクト(MPEG_accessor_timed)が設定されている。そして、そのMPEGアクセサタイムドオブジェクトのバリューとして、バッファビューオブジェクトのインデックス(この例では「1」)、アップデートレート(updateRate)、不変の情報(immutable)等のパラメータとその値が指定されている。
"MPEG_accessor_timed":{"bufferView":1, "updateRate":25.0, "immutable":1,"}
 また、図14の例の場合、上から13行目において下記のように、バッファオブジェクト(buffer)の拡張オブジェクト(extensions)として、MPEGバッファサーキュラオブジェクト(MPEG_buffer_circular)が設定されている。そして、そのMPEGバッファサーキュラオブジェクトのバリューとして、バッファフレームカウント(count)、ヘッダ長(headerLength)、アップデートレート(updateRate)等のパラメータとその値が指定されている。
"MPEG_buffer_circular":{"count":5, "headerLength":12, "updateRate":25.0}
 図15は、タイムドメディアを扱うための拡張について説明するための図である。図15において、MPEGアクセサタイムドオブジェクトやMPEGバッファサーキュラオブジェクトと、アクセサオブジェクト、バッファビューオブジェクト、およびバッファオブジェクトとの関係の例を示す。
 バッファオブジェクトのMPEGバッファサーキュラオブジェクトには、上述したように、バッファフレームカウント(count)、ヘッダ長(headerLength)、アップデートレート(updateRate)等といった、バッファオブジェクトによって示されるバッファ領域に時間変化するdataを格納するのに必要な情報が格納される。また、そのバッファ領域のヘッダであるバッファヘッダ(bufferHeader)には、インデックス(index)、タイムスタンプ(timestamp)、データ長(length)等のパラメータが格納される。
 アクセサオブジェクトのMPEGアクセサタイムドオブジェクトには、上述したように、バッファビューオブジェクトのインデックス(bufferView)、アップデートレート(updateRate)、不変の情報(immutable)等といった、参照するバッファビューオブジェクトに関する情報が格納される。また、このMPEGアクセサタイムドオブジェクトには、参照するタイムドアクセサインフォメーションヘッダが格納されるバッファビューオブジェクトに関する情報が格納される。タイムドアクセサインフォメーションヘッダには、タイムスタンプデルタ(timestamp_delta)、アクセサオブジェクトの更新データ、バッファビューオブジェクトの更新データ等が格納され得る。
  <MPEG_texture_video使用時のクライアント処理>
 シーンディスクリプションは、1つ以上の3Dオブジェクトを3D空間に配置するための空間配置情報である。このシーンディスクリプションは、時間軸に沿ってその内容を更新することができる。つまり、時間の経過とともに、3Dオブジェクトの配置を更新することができる。その際のクライアント装置において行われるクライアント処理について説明する。
 図16は、クライアント装置の、クライアント処理に関する主な構成例を示し、図17は、そのクライアント処理の流れの例を示すフローチャートである。図16に示されるように、クライアント装置は、プレゼンテーションエンジン(Presentation Engine(以下、PEとも称する))51、メディアアクセスファンクション(Media Access Function(以下、MAFとも称する))52、パイプライン(Pipeline)53、およびバッファ(Buffer)54を有する。プレゼンテーションエンジン(PE)51は、glTF解析部63およびレンダリング(Rendering)処理部64を有する。
 プレゼンテーションエンジン(PE)51は、メディアアクセスファンクション52にメディアを取得させ、バッファ54を介してそのデータを取得し、表示に関する処理等を行う。具体的には例えば以下のような流れで処理が行われる。
 クライアント処理が開始されると、プレゼンテーションエンジン(PE)51のglTF解析部63は、図17の例のようにPE処理を開始し、ステップS21において、シーンディスクリプションファイルであるSD(glTF)ファイル62を取得し、そのシーンディスクリプションを解析(parse)する。
 ステップS22において、glTF解析部63は、3Dオブジェクト(texture)に紐づくメディア(media)と、そのメディアを処理後に格納するバッファ(buffer)と、アクセサ(accessor)を確認する。ステップS23において、glTF解析部63は、ファイル取得要求として、メディアアクセスファンクション52にその情報を通知する。
 メディアアクセスファンクション(MAF)52は、図17の例のようにMAF処理を開始し、ステップS11において、その通知を取得する。ステップS12において、メディアアクセスファンクション52は、その通知に基づいてメディア(3Dオブジェクトファイル(mp4))を取得する。
 ステップS13において、メディアアクセスファンクション52は、取得したメディア(3Dオブジェクトファイル(mp4))を復号する。ステップS14において、メディアアクセスファンクション52は、復号して得られたメディアのデータを、プレゼンテーションエンジン(PE51)からの通知に基づいて、バッファ54に格納する。
 ステップS24において、プレゼンテーションエンジン51のレンダリング処理部64は、そのデータを適切なタイミングにおいてバッファ54から読み出す(取得する)。ステップS25において、レンダリング処理部64は、取得したデータを用いてレンダリングを行い、表示用画像を生成する。
 メディアアクセスファンクション52は、ステップS13およびステップS14の処理を繰り返すことにより、各時刻(各フレーム)についてこれらの処理を実行する。また、プレゼンテーションエンジン51のレンダリング処理部64は、ステップS24およびステップS25の処理を繰り返すことにより、各時刻(各フレーム)についてこれらの処理を実行する。全てのフレームについて処理が終了すると、メディアアクセスファンクション52はMAF処理を終了し、プレゼンテーションエンジン51はPE処理を終了する。つまり、クライアント処理が終了する。
  <V-PCCの概要>
 ところで、例えば非特許文献3に記載のように、3次元空間上に位置情報と属性情報(色や反射等)を同時に持つ点の集合であるポイントクラウド(point cloud)の符号化方式として、ポイントクラウドをセグメンテーションして領域を形成し、その領域毎に平面投影して動画コーデックにより符号化するV-PCC(Video based Point Cloud Compression)が提案された。
 V-PCCでは、ポイントクラウドのジオメトリやアトリビュートが、小領域毎に2次元平面に投影される。本開示において、この小領域を部分領域という場合がある。このジオメトリやアトリビュートが2次元平面に投影された画像を投影画像とも称する。また、この小領域(部分領域)毎の投影画像をパッチ(patch)と称する。例えば、図18のAのオブジェクト71(3Dデータ)が、図18のBに示されるようなパッチ72(2Dデータ)に分解される。ジオメトリのパッチの場合、各画素値は、ポイントの位置情報を示す。ただし、その場合、ポイントの位置情報は、その投影面に対して垂直方向(奥行方向)の位置情報(デプス値(Depth))として表現される。
 そして、このように生成された各パッチがビデオシーケンスのフレーム画像(ビデオフレームとも称する)内に配置される。ジオメトリのパッチが配置されたフレーム画像をジオメトリビデオフレーム(Geometry video frame)とも称する。また、アトリビュートのパッチが配置されたフレーム画像をアトリビュートビデオフレーム(Attribute video frame)とも称する。例えば、図18のAのオブジェクト71から、図18のCに示されるようなジオメトリのパッチ73が配置されたジオメトリビデオフレーム81と、図18のDに示されるようなアトリビュートのパッチ74が配置されたアトリビュートビデオフレーム82が生成される。例えば、ジオメトリビデオフレーム81の各画素値は、上述のデプス値を示す。
 そして、これらのビデオフレームが、例えばAVC(Advanced Video Coding)やHEVC(High Efficiency Video Coding)等といった2次元画像用の符号化方法で符号化される。つまり、3次元構造を表す3Dデータであるポイントクラウドデータを、2次元画像用のコーデックを用いて符号化することができる。
 なお、オキュパンシーマップ(オキュパンシー画像とも称する)を用いることもできる。オキュパンシーマップは、ジオメトリビデオフレームやアトリビュートビデオフレームのNxN画素毎に、投影画像(パッチ)の有無を示すマップ情報である。例えば、オキュパンシーマップは、ジオメトリビデオフレームやアトリビュートビデオフレームの、パッチが存在する領域(NxN画素)を値「1」で示し、パッチが存在しない領域(NxN画素)を値「0」で示す。
 デコーダは、このオキュパンシーマップを参照することにより、パッチが存在する領域であるか否かを把握することができるので、符号化・復号により生じるノイズ等の影響を抑制することができ、より正確に3Dデータを復元することができる。例えば、符号化・復号によりデプス値が変化しても、デコーダは、オキュパンシーマップを参照することにより、パッチが存在しない領域のデプス値を無視することができる。つまり、デコーダは、オキュパンシーマップを参照することにより、3Dデータの位置情報として処理しないようにすることができる。
 例えば、ジオメトリビデオフレーム11およびアトリビュートビデオフレーム12に対して、図18のEに示されるようなオキュパンシーマップ83を生成してもよい。オキュパンシーマップ83において、白の部分が値「1」を示し、黒の部分が値「0」を示している。
 このようなオキュパンシーマップが、ジオメトリビデオフレームやアトリビュートビデオフレームとは別のデータ(ビデオフレーム)として符号化され、復号側に伝送され得る。つまり、オキュパンシーマップも、ジオメトリビデオフレームやアトリビュートビデオフレームと同様に、AVCやHEVC等の2次元画像用の符号化方法で符号化することができる。
 ジオメトリビデオフレームを符号化して生成される符号化データ(ビットストリーム)をジオメトリビデオサブビットストリーム(geometry video sub-bitstream)とも称する。アトリビュートビデオフレームを符号化して生成される符号化データ(ビットストリーム)をアトリビュートビデオサブビットストリーム(attribute video sub-bitstream)とも称する。オキュパンシーマップを符号化して生成される符号化データ(ビットストリーム)をオキュパンシーマップビデオサブビットストリーム(occupancy map video sub-bitstream)とも称する。なお、ジオメトリビデオサブビットストリーム、アトリビュートビデオサブビットストリーム、オキュパンシーマップビデオサブビットストリームを互いに区別して説明する必要が無い場合、ビデオサブビットストリーム(video sub-bitstream)と称する。
 さらに、パッチ(2Dデータ)からポイントクラウド(3Dデータ)を再構成するための情報であるアトラス情報(atlas)が符号化され、復号側に伝送される。アトラス情報の符号化方法(および復号方法)は任意である。アトラス情報を符号化して生成される符号化データ(ビットストリーム)をアトラスサブビットストリーム(atlas sub-bitstream)とも称する。
 なお、以下において、ポイントクラウド(のオブジェクト)は、2次元画像の動画像のように、時間方向に変化し得る(動的であるとも称する)ものとする。つまり、ジオメトリデータやアトリビュートデータは、時間方向の概念を有し、2次元画像の動画像のように、所定の時間毎にサンプリングされたデータとする。なお、2次元画像のビデオフレームのように、各サンプリング時刻のデータをフレームと称する。つまり、ポイントクラウドデータ(ジオメトリデータやアトリビュートデータ)は、2次元画像の動画像のように、複数フレームにより構成されるものとする。本開示において、このポイントクラウドのフレームのことを、ポイントクラウドフレームとも称する。V-PCCの場合、このような動画像(複数フレーム)のポイントクラウドであっても、各ポイントクラウドフレームをビデオフレーム化してビデオシーケンスとすることで、動画像の符号化方式を用いて高効率に符号化することができる。
  <V-PCCビットストリームの構造>
 エンコーダは、上述したようなジオメトリビデオフレーム、アトリビュートビデオフレーム、オキュパンシーマップ、およびアトラス情報の符号化データを多重化し、1つのビットストリームを生成する。このビットストリームをV-PCCビットストリーム(V-PCC Bitstream)とも称する。
 図19は、V-PCCビットストリームの主な構成例を示す図である。図19に示されるようにV-PCCビットストリーム91は、複数のV-PCCユニット(V-PCC Unit)92を含む。
 V-PCCユニット92は、V-PCCユニットヘッダ(V-PCC unit header)93とV-PCCユニットペイロード(V-PCC unit payload)94を含む。V-PCCユニットヘッダ93は、V-PCCユニットペイロード94に格納される情報の種類(タイプ)を示す情報を含む。V-PCCユニットペイロード94は、そのV-PCCユニットヘッダ93でシグナルされるタイプに応じて、V-PCCパラメータセット(V-PCC Parameter Set)95、ジオメトリビデオサブビットストリーム96(Geometry Video Data)、アトリビュートビデオサブビットストリーム97(Attribute Video Data)、オキュパンシーマップビデオサブビットストリーム98(Occupancy Video Data)、アトラスサブビットストリーム99(Atlas Data)等が格納され得る。V-PCCパラメータセット(V-PCC Parameter Set)95には、V-PCCユニット92に関するパラメータが格納される。
  <ISOBMFFへの格納方法>
 また、例えば非特許文献4に記載のように、このV-PCCで符号化されたポイントクラウドの符号化データにより構成されるV-PCCビットストリーム(V3Cビットストリームとも称する)をISOBMFFに格納する方法が検討された。非特許文献4には、V3CビットストリームをISOBMFFに格納する方法として、シングルトラックストラクチャ(single track structure)とマルチトラックストラクチャ(multi-track structure)との2種類が規定されている。
 シングルトラックストラクチャは、V3Cビットストリームを1つのトラックに格納する方法である。つまりこの場合、ジオメトリビデオサブビットストリーム、アトリビュートビデオサブビットストリーム、オキュパンシーマップビデオサブビットストリーム、およびアトラスサブビットストリームが互いに同一のトラックに格納される。
 マルチトラックストラクチャは、ジオメトリビデオサブビットストリーム、アトリビュートビデオサブビットストリーム、オキュパンシービデオサブビットストリーム、およびアトラスサブビットストリームをそれぞれ個別のトラック(track)に格納する方法である。各ビデオサブビットストリームは、従来の2Dビデオストリームであるので、2Dの場合と同様の手法で格納(管理)することができる。マルチトラックストラクチャを適用する場合のファイルの構成例を図20に示す。図20に示されるように、マルチトラックストラクチャの場合、1つのトラック(V3Cアトラストラック(V3C atlas track))に、V3Cビットストリームを格納する他のトラック(V3Cビデオコンポーネントトラック(V3C video component track)とも称する)にアクセスするための情報であるトラックリファレンス(Track References)が格納される。つまり、各V3Cビデオコンポーネントトラックは、このトラックリファレンスによりV3Cアトラストラックに紐づけられている。
 なお、MPEG-DASH(Moving Picture Experts Group Dynamic Adaptive Streaming over HTTP(Hypertext Transfer Protocol))を適用して3Dオブジェクトコンテンツを配信する場合、その配信を制御するための制御ファイルであるMPD(Media Presentation Description)に、V-PCCを構成するAdaptationSetを取りまとめるための情報として、preselection elementやpreselection Descriptorを格納してもよい。図21にその記述例を示す。つまり、この場合、MPDのこれらの情報により、V3Cビットストリームを構成する各ビットストリームが互いに関連付けられる。
  <パーシャルアクセス>
 ところで非特許文献4には、ポイントクラウドのオブジェクトの一部分を取得したり、復号したりするためのパーシャルアクセス(partial access)情報が規定されている。例えば、このパーシャルアクセス情報を利用することにより、ストリーミング配信時にポイントクラウドのオブジェクトの表示部分の情報のみを取得するといった制御が可能になる。このような制御により、帯域幅を有効活用して高精細化する、といった効果を得ることができる。
 このような機能を実現するために、ポイントクラウドは、その領域(スペーシャルリージョン)毎に独立に復号することができるように符号化される。つまり、スペーシャルリージョン毎に独立にポイントクラウドが符号化され、スペーシャルリージョン毎の符号化データ(V3Cビットストリーム)が生成される。そして、そのスペーシャルリージョン毎のV3Cビットストリームは、ISOBMFFの互いに異なるV3Cビデオコンポーネントトラックに格納される。つまり、V3Cビットストリームがスペーシャルリージョン毎に分けてV3Cビデオコンポーネントトラックに格納される。
 例えば、図22の例のように、3Dオブジェクト100Aのバウンディングボックス100において、バウンディングボックス100を2分割したスペーシャルリージョン101とスペーシャルリージョン102が設けられるとする。図22に示されるように、スペーシャルリージョン101の各コンポーネントのV3Cビットストリームと、スペーシャルリージョン102の各コンポーネントV3Cビットストリームは、互いに異なるトラックに格納される。
 各スペーシャルリージョン(V-PCCタイル(V-PCC tile)とも称する)のV3Cアトラストラックには、そのスペーシャルリージョン(V-PCCタイル)の各コンポーネントのV3Cビデオコンポーネントトラックへのトラックリファレンスが格納される。全体のV3Cアトラストラックには、各スペーシャルリージョン(V-PCCタイル)のV3Cアトラストラックへのトラックリファレンスが格納される。また、全体のV3CアトラストラックのV3Cすぺーしょるリージョンボックス(V3CSpatialRegionsBox)には、各V-PCCタイル(各スペーシャルリージョン)の3D空間情報(位置や範囲(大きさ)等の情報)が格納される。
 3D空間情報は、以下のように記述される。例えば、図23のAに示されるように、ポイントクラウドのオブジェクトに対して、そのオブジェクトを内包する3次元領域であるバウンディングボックス(Bounding box)111が設定されているとする。この場合、ISOBMFFにおいて、図23のBに示されるように、バウンディングボックス111に関する情報であるバウンディングボックス情報(3DBoundingBoxStruct)が設定される。バウンディングボックス情報において、バウンディングボックス111の基準点(orgin)の座標は(0, 0, 0)とされ、バウンディングボックス111のサイズは(bb_dx, bb_dy, bb_dz)で指定される。
 図23のAに示されるように、このバウンディングボックス111内に、独立に復号可能な部分領域である3Dスペーシャルリージョン(3D spatial region)112を設定することができる。その場合、図23のBに示されるように、ISOBMFFにおいてパーシャルアクセス情報として、3Dスペーシャルリージョン112に関する情報である3Dスペーシャルリージョン情報(3dSpatialRegionStruct)を設定すればよい。3Dスペーシャルリージョン情報において、その領域は、その基準点の座標(x, y, z)とサイズ(cuboid_dx, cuboid_dy, cuboid_dz)で指定される。
 3Dスペーシャルリージョンは1つ以上のタイルで構成される。パーシャルアクセスは、3Dスペーシャルリージョン単位で行われるが、3Dスペーシャルリージョンとタイルが同一であるようにすることで、タイル単位でのパーシャルアクセスが可能となる。
 3D空間情報は例えば以下の場所に格納される。バウンディングボックス情報は、例えば、図24に示されるように、V3CアトラストラックまたはV3Cアトラストラックに紐づけられたダイナミックボリュメトリックメタデータトラック(dynamic volumetric metadata track)のサンプルエントリ(sample entry)内のV3Cバウンディングインフォメーションボックス(V3CBoundingInformationBox)に格納されてもよい。図25の記述131は、そのV3Cバウンディングインフォメーションボックスの記述例を示す。
 また、3Dスペーシャルリージョン情報は、例えば、V3CアトラストラックまたはV3Cアトラストラックに紐づけられたダイナミックボリュメトリックメタデータトラック(dynamic volumetric metadata track)のサンプルエントリ(sample entry)内のV3Cスペーシャルリージョンボックス(V3CSpatialRegionsBox)に格納されてもよい。図25の記述132は、そのV3Cスペーシャルリージョンボックスの記述例を示す。この記述132に示されるように、V3Cスペーシャルリージョンボックスにおいて、3Dスペーシャルリージョン情報(3dSpatialRegionStruct)とタイルの識別情報(tile_id)が設定され、スペーシャルリージョンとタイルが紐づけられている。
 なお、3Dスペーシャルリージョン情報は、例えば、ダイナミックボリュメトリックメタデータトラック(dynamic volumetric metadata track)のV3Cボリュメトリックメタデータサンプル(V3CVolumetricMetadataSample)に格納されてもよい。図26の記述133は、そのV3Cボリュメトリックメタデータサンプルの記述例を示す。
  <パーシャルアクセスに関するSEI>
 非特許文献3ではパーシャルアクセスに関わるSEI(Supplemental Enhancement Information)が規定されており、非特許文献4ではそれらの使用が規定されている。
 例えば、パーシャルアクセスに関わるアトラスサブビットストリーム(atlas sub-bitstream)のSEIとして、Scene object information SEI、Patch information SEI、Volumetric rectangle information SEI、およびObject label information SEIの4つが規定されている。
 Scene object information SEIでは、オブジェクト(object)が定義され、プロパティズ(properties)が付与される。Patch information SEIでは、オブジェクトとパッチ(patch)の関係性が定義される。Volumetric rectangle information SEIでは、オブジェクトとビデオコーデッドコンポーネント(video coded component)矩形領域の関係性が定義される。Object label information SEIでは、オブジェクトにラベル(label)が付与される。
 Scene object information SEIおよびObject label information SEIにより、プロパティズ(properties)がパッチ単位で付与される。そのプロパティズには、例えば、オブジェクトの識別子(object id)が含まれてもよい。また、オブジェクトを囲むcuboid領域(3Dスペーシャルリージョン)を示すbounding boxが含まれてもよい。また、オブジェクトを視聴できる3次元円錐領域を示すvisibility coneが含まれてもよい。また、優先度を示すpriorityが含まれてもよい。また、オブジェクトの表示・非表示を示すhiddenが含まれてもよい。また、オブジェクト間の依存関係を示すdependencyが含まれてもよい。また、ラベルを示すlabelが含まれてもよい。また、衝突判定用の形状を示すcollision shapeが含まれてもよい。また、ポイントクラウドの点の形やサイズを示すpoint styleが含まれてもよい。また、ポイントクラウドの点の素材を示すmaterialが含まれてもよい。
 パーシャルアクセスに関するアトラスサブビットストリーム(atlas sub-bitstream)の4つのSEIは、例えば、情報が時間方向に静的(static)な場合、V3Cアトラストラックサンプルエントリ(V3C atlas track sample entry)内のV3Cコンフィグレーションボックス(V3CConfigurationBox)に格納されてもよい。また、情報が時間方向に動的(更新頻度が少ないdynamic)な場合、その4つのSEIは、V3Cアトラストラック(V3C atlas track)のV3CAtlasParamSampleGroupDescriptionEntryに格納されてもよい。また、情報が時間方向に動的(更新頻度が多いdynamic)な場合、その4つのSEIは、V3Cアトラストラック(V3C atlas track)のV3Cサンプル(V3Csample)に格納されてもよい。更新の頻度に応じて適切な箇所が選択され格納される。
  <クライアント処理のパタン>
 コンテンツ(3Dデータ)を再生するクライアント装置は、V3Cビットストリームを復号し、得られた2Dデータから3Dデータ(例えばポイントクラウド)を再構成する。その場合、クライアント装置は、その3Dデータの再構成をMAFで行うこともできるし、PEで行うこともできる。それぞれの場合でバッファに格納されるデータが異なる。
 例えば、図27に示されるように、MAFが実行するMAF処理においては、3Dオブジェクトを構成するV-PCCファイルの取得処理と、そのV-PCCファイル(V3Cビットストリーム)の復号処理が行われる。MAFにおいて3Dデータが再構成される場合、復号処理の後、図27の上側の実線矢印のように、再構成処理が行われ、その処理結果、すなわち3Dデータがバッファに格納される。この場合、PEが実行するPE処理では、そのバッファに格納された3Dデータが読み出され、レンダリング処理が行われることにより表示用画像が生成される。
 これに対して、PEにおいて3Dデータが再構成される場合、MAF処理では、図27の下側の点線矢印のように、復号処理結果、すなわち2Dデータ等がバッファに格納される。この場合、PE処理では、そのバッファに格納された2Dデータ等が読み出され、再構成処理により3Dデータが再構成され、レンダリング処理が行われることにより表示用画像が生成される。
 したがって、MAFにおいて3Dデータ(ポイントクラウドデータ)が再構成される場合、シーンディスクリプションには、図28に示されるように、3Dデータ用のアトリビュート(attribute)が格納される。ただし、バッファに格納されるデータは再構成されたものである。これに対して、MPEG_mediaで指定されるデータは再構成される前のものである。つまり、属性がトラックと1対1では紐づかない。したがって各バッファから参照するMPEG_mediaは、全てのコンポーネントデータを取りまとめるV3Cアトラストラック(V3C atlas track)とされる。
 これに対して、PEにおいて3Dデータ(ポイントクラウドデータ)が再構成される場合、バッファにはV3C復号されたV3Cコンポーネントストリーム(V3C component stream)が格納される。つまり、2Dデータ等がバッファに格納される。したがって、シーンディスクリプションには、V3Cコンポーネント(2Dデータ)用のアトリビュート(attribute)が格納される。
 この場合、バッファに格納されるV3CコンポーネントデータとMPEG_mediaで示されるトラックとの紐づけ方法には、以下の2通りがある。すなわち、例えば、図29に示されるように、バッファとV3Cコンポーネントトラックとを1対1で紐づけてもよい。また、図30に示されるように、全てのコンポーネントデータを取りまとめるV3Cアトラストラック(V3C atlas track)を各バッファから参照してもよい。
  <パーシャルアクセス機能を利用した再生制御>
 上述したパーシャルアクセス機能を利用した再生方法として、例えば、コンテンツを再生するクライアント装置において、コンテンツの再生を制御する再生制御主体(再生制御者とも称する)が3Dデータに含まれる所望のスペーシャルリージョンを選択し、そのスペーシャルリージョンを優先的に(例えば高画質に)再生することが望まれた。
 その場合、例えば、クライアント装置が、3Dデータに含まれるスペーシャルリージョンについての情報を再生制御主体に提供し、再生制御主体が、優先させるスペーシャルリージョンをその情報に基づいて選択する方法が考えられる。
 例えば、図31に示されるように、3Dデータ全体を包含するバウンディングボックス180内に「人物A」の3Dオブジェクト181と、「人物B」の3Dオブジェクト182とが存在するとする。そして、その3Dオブジェクト181を包含するスペーシャルリージョン183と、3Dオブジェクト182を包含するスペーシャルリージョン184とが設定されているとする。
 クライアント装置は、このようなスペーシャルリージョンについての情報を、再生制御主体に提供する。ここで、再生制御主体(再生制御者)とは、コンテンツの再生を制御する存在である。再生制御主体は、具体的にはどのようなものであってもよい。例えば、再生制御主体は、クライアント装置のユーザ(例えば人物、動物、機械等)であってもよいし、クライアント装置におけるコンテンツの再生を制御するソフトウエアプログラムであってもよい。このソフトウエアプログラムは、クライアント装置において実行されてもよいし、クライアント装置との通信が可能な他の装置において実行されてもよい。
 例えば、図32に示されるように、モニタ191に選択画面(GUI(Graphical User Interface))192としてスペーシャルリージョンについての情報を、再生制御主体であるユーザに提示してもよい。
 そして、再生制御主体は、その提供されたスペーシャルリージョンについての情報に基づいて、再生を優先させるスペーシャルリージョンを選択する。クライアント装置は、その選択を受け付け、その選択にしたがって再生を制御する。
 例えば、図32のように選択画面192がユーザに提示された場合、ユーザがその選択画面に基づいて優先させる3Dオブジェクト(例えば、人物A、人物B等)を選択し、決定ボタンを押すと、クライアント装置は、その選択された3Dオブジェクトに対応するスペーシャルリージョンを優先再生対象として高画質に再生する。
 このようにすることにより、クライアント装置は、例えば、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。そのため、このようなユースケースは有用である。
 しかしながら、上述の非特許文献に記載の方法では、スペーシャルリージョンについての情報をMAFからPEに渡すことが困難であった。そのため、PEがスペーシャルリージョンについての情報を再生制御主体に提供することが困難であった。
 <3.スペーシャルリージョン情報の利用>
  <スペーシャルリージョン情報の格納>
 そこで、図33に示される表の最上段に示されるように、シーンディスクリプション(以下、SDとも称する)において、スペーシャルリージョンを識別するためのスペーシャルリージョン情報を格納するエクステンションが規定されるようにする(#1)。つまり、スペーシャルリージョン情報がシーンディスクリプションに格納されるようにする。シーンディスクリプションは、3Dコンテンツのシーン(の説明)を記述するメタデータである。このシーンディスクリプションの記述により、どのようなシーンであるかが定義される。
 例えば、情報処理装置(例えばファイル生成装置)において、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成するファイル生成部を備えるようにする。
 また、例えば、情報処理方法(例えばファイル生成処理)において、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成するようにする。
 シーンディスクリプションファイルは、シーンディスクリプションを格納するファイルである。このようにすることにより、クライアント装置において、PEが、シーンディスクリプションをパースすることによりスペーシャルリージョン情報を取得することができる。したがって、PEが、スペーシャルリージョンについての情報を再生制御主体に提供することができる。したがって、クライアント装置は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。もちろん、このユースケースは一例であり、クライアント装置が、スペーシャルリージョンについての情報を再生制御主体に提供することにより、どのような処理を行ってもよいし、どのような機能を実現してもよい。
 なお、その場合、スペーシャルリージョン情報にどのような情報が含まれてもよい。例えば、図33に示される表の上から2段目に示されるように、スペーシャルリージョン情報が、ラベル(label)、アンカー(anchor)、およびキュボイド(cuboid)を含んでもよい(#1-1)。ラベルは、スペーシャルリージョンの識別情報である。アンカーは、スペーシャルリージョンの位置を示す情報である。例えば、スペーシャルリージョンの基準点の3次元座標(x,y,z)により表現されてもよい。キュボイドは、スペーシャルリージョンの大きさを示す情報である。例えば、スペーシャルリージョンの互いに垂直な3辺の長さ(dx,dy,dz)により表現されてもよい。これらの情報により、クライアント装置は、各スペーシャルリージョンを識別し、処理することができる。もちろん、スペーシャルリージョン情報にこれら以外の情報が含まれてもよい。
 また、スペーシャルリージョン情報(例えばラベル、アンカー、キュボイド等)は、任意の情報に基づいて設定されてもよい。例えば、ラベルは、V3CDecoderConfigurationRecordに含まれるObject label information SEIに格納される情報に基づいて設定されてもよい。また、アンカーやキュボイドは、V3CSpatialRegionsBox()内の 3DspatialRegionStruct()に格納される情報に基づいて設定されてもよい。つまり、例えばファイル生成装置において、ファイル生成部は、V3CDecoderConfigurationRecordに含まれるObject label information SEIと、V3CSpatialRegionsBox()内の 3DspatialRegionStruct()とから取得した情報を、スペーシャルリージョン情報としてシーンディスクリプションに格納してもよい。
 また、シーンディスクリプションにおけるスペーシャルリージョン情報の格納場所は任意である。例えば、図33に示される表の上から3段目に示されるように、スペーシャルリージョン情報を格納するエクステンションは、シーンディスクリプションのノードに規定されてもよい(#1-2)。
 例えばファイル生成装置において、ファイル生成部が、シーンディスクリプションのノードに、スペーシャルリージョン情報を格納するエクステンション(例えば、MPEG_spatial_region)を規定し、そのシーンディスクリプションをシーンディスクリプションファイルに格納してもよい。また、例えばコンテンツを再生するクライアント装置において、提供部が、シーンディスクリプションのノードに規定されたエクステンション(例えば、MPEG_spatial_region)から、(そのエクステンションに格納される)スペーシャルリージョン情報を取得してもよい。
 また、図33に示される表の上から4段目に示されるように、このようなシーンディスクリプションファイルからスペーシャルリージョン情報が取得され、再生制御主体に提供されてもよい。
 例えば、情報処理装置(例えばクライアント装置)において、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、その3Dデータの再生を制御する再生制御者に提供する提供部を備えるようにする。
 また、例えば、情報処理方法(例えばクライアント処理)において、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、その3Dデータの再生を制御する再生制御者に提供するようにする。
 このようにすることにより、クライアント装置において、PEが、シーンディスクリプションをパースすることによりスペーシャルリージョン情報を取得することができる。したがって、PEが、スペーシャルリージョンについての情報を再生制御主体に提供することができる。
 なお、例えばクライアント装置が、再生制御者がスペーシャルリージョン情報に基づいて指定したスペーシャルリージョンの3Dデータを取得する取得部をさらに備えてもよい。このようにすることにより、クライアント装置は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。もちろん、このユースケースは一例であり、クライアント装置が、スペーシャルリージョンについての情報を再生制御主体に提供することにより、どのような処理を行ってもよいし、どのような機能を実現してもよい。
  <シーンディスクリプションの構成例と記述例>
 この場合のシーンディスクリプションにおけるオブジェクトの主な構成例を図34に示す。図34の例の場合、ノード内にエクステンション(MPEG_spatial_region)が規定されている。このMPEG_spatial_regionエクステンション内にスペーシャルリージョン情報が格納される。
 図35に示される記述例201は、この場合のシーンディスクリプションの記述例を示している。この記述例201に示されるように、ノード内にMPEG_spatial_regionエクステンションが規定され、そのMPEG_spatial_regionエクステンション内に、ラベル、アンカー、キュボイド等のスペーシャルリージョン情報が格納されている。
 このスペーシャルリージョン情報には、例えば四角枠202内に示されるラベルのように、V3CDecoderConfigurationRecordに含まれるObject label information SEIの値などの、スペーシャルリージョンを判別するための情報が含まれてもよい。また、このスペーシャルリージョン情報には、例えば四角枠203内に示されるアンカーやキュボイドのように、V3CSpatialRegionsBox()内の3DspatialRegionStruct()内に格納されるパラメータが含まれてもよい。
  <クライアント処理の流れ1>
 クライアント装置は、コンテンツを再生するためにクライアント処理を実行する。上述のように、スペーシャルリージョン情報がシーンディスクリプションに格納される場合のクライアント処理の流れの例を、図36のフローチャートを参照して説明する。図16を参照して上述したように、コンテンツを再生するクライアント装置は、MAF52(およびパイプライン53)、バッファ54、PE51等を有する。そして、図36に示されるように、MAF52は、MAF処理を実行する。また、PE51はPE処理を実行する。そして再生制御主体は、制御処理を実行する。
 クライアント処理が開始されると、PE処理を開始したPE51は、ステップS121においてシーンディスクリプション(SD)をパース(解析)する。そして、PE51は、ステップS122において、そのシーンディスクリプションのノードに規定されるMPEG_spatial_regionエクステンションをパースし、そのエクステンション内に格納されるスペーシャルリージョン情報を取得する。ステップS123において、PE51は、そのスペーシャルリージョン情報を再生制御主体に提供する。例えば、PE51は、スペーシャルリージョン情報を含む選択画面(例えば図32の選択画面192)を生成し、表示部に表示させる。
 つまり、PE51は、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、その3Dデータの再生を制御する再生制御者に提供する。
 制御処理を開始した再生制御主体は、ステップS131においてそのスペーシャルリージョン情報を取得する。例えば、再生制御主体であるユーザは、表示部に表示された選択画面(例えば図32の選択画面192)を見る。ステップS132において、再生制御主体は、その提供されたスペーシャルリージョン情報に基づいて、優先するスペーシャルリージョンを選択し、その選択を示す情報(優先指示とも称する)をPE51に供給する。例えば、再生制御主体は、表示部に表示された選択画面(例えば図32の選択画面192)において、再生を優先させる3Dオブジェクトを選択し、決定ボタンを押下する。これにより、優先指示がクライアント装置に入力され、PE51へ供給される。
 なお、ここで「再生を優先させる」とは、他の3Dデータよりも高画質に再生することを意味する。つまり、指定されたスペーシャルリージョンについては、他の3Dデータよりも高画質の(高ビットレートの)ビットストリームが取得され、復号される。また、他の3Dデータよりも時間的に先に処理すると言う意味が含まれてもよい。
 PE51は、ステップS124において、その優先指示を取得する。PE51は、ステップS125において、その優先指示にしたがってメディアの取得をMAF52に指示する。つまり、PE51は、優先指示において再生を優先させるように指示されたスペーシャルリージョンのメディア(3Dデータ)を、優先的に取得するようにMAF52に指示する。例えば、PE51は、MAF APIのstartFetching(TimeInfo timeInfo, ViewInfo viewInfo)のViewInfo.objectPosition attributeを利用して伝える。
 MAF処理を開始したMAF52は、ステップS111において、その指示を取得する。そして、MAF52は、ステップS112において、再生するV3Cビットストリームを格納するV3Cトラックを取得する。これにより、MAF52は、スペーシャルリージョンとタイルとの対応関係を得る。
 そして、MAF52は、ステップS113において、タイルを選択する。そして、MAF52は、ステップS114において、その選択したタイルのデータ(タイルデータとも称する)を取得する。例えば、MAF52は、V3Cトラックから抽出したビットストリームを、復号部を制御して復号し、タイルデータを取得する。なお、その際、MAF52は、PE51からの指示に従って、タイルを選択し、タイルデータを取得する。例えば、PE51から優先的に取得するように指示されたスペーシャルリージョンのデータを取得する場合、MAF52は、より高画質の(より高ビットレートの)タイルデータを取得する。これに対して、そのスペーシャルリージョン以外のデータを取得する場合、MAF52は、残りのビットレート等に応じてデータが選択される。例えばビットレートに余裕がない場合、より低画質の(より低ビットレートの)タイルデータを取得する。
 つまり、MAF52は、再生制御者がスペーシャルリージョン情報に基づいて指定したスペーシャルリージョンの3Dデータを取得する。
 そして、MAF52は、ステップS115において、その取得したタイルデータを指定されたバッファ形式に変換する。そして、MAF52は、ステップS116において、そのタイルデータをバッファ54に格納する。このようにして、MAF52は、再生する全てのタイルデータをバッファに格納する。
 PE51は、ステップS126において、そのタイルデータを適切なタイミングにおいてバッファ54から読み出す(取得する)。そして、PE51は、ステップS127において、取得したタイルデータを用いて3Dデータを再構成する。そして、PE51は、ステップS128において、例えば表示情報生成部を制御する等してレンダリングを行い、表示用画像を生成する。そして、PE51は、ステップS129において、その表示用画像を表示部に表示させる。
 再生制御主体は、ステップS133において、その表示用画像を見る。
 MAF52は、ステップS113乃至ステップS116の各処理を繰り返すことにより、各時刻(各フレーム)についてこれらの処理を実行する。また、PE51は、ステップS126乃至ステップS129の各処理を繰り返すことにより、各時刻(各フレーム)についてこれらの処理を実行する。
 全てのフレームについて処理が終了すると、MAF52はMAF処理を終了し、PE51はPE処理を終了し、再生制御主体は、制御処理を終了する。つまり、クライアント処理が終了する。以上のようにクライアント処理を実行することにより、クライアント装置は、再生制御主体にスペーシャルリージョン情報を提供することができる。したがって、そのクライアント装置は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。
 なお、スペーシャルリージョン情報が、スペーシャルリージョンの識別情報と、スペーシャルリージョンの位置を示す情報と、スペーシャルリージョンの大きさを示す情報とを含んでもよい。
 また、PE52は、シーンディスクリプションのノードに規定されたエクステンションからスペーシャルリージョン情報を取得してもよい。
 もちろん、その他の本技術を適用してもよい。また、複数の本技術を適宜組み合わせて適用してもよい。
  <スペーシャルリージョン情報をバッファ領域へ格納するためのアクセサの格納>
 なお、図33に示される表の上から5段目に示されるように、シーンディスクリプションにおいて、スペーシャルリージョンを識別するためのスペーシャルリージョン情報をバッファ領域へ格納するためのアクセサが格納されてもよい(#2)。
 例えば、情報処理装置(例えばファイル生成装置)において、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成するファイル生成部を備えるようにする。
 また、例えば、情報処理方法(例えばファイル生成処理)において、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成するようにする。
 このようにすることにより、クライアント装置において、PEが、シーンディスクリプションのアクセサにより指定されるバッファ領域を介して、スペーシャルリージョン情報を取得することができる。したがって、PEが、スペーシャルリージョンについての情報を再生制御主体に提供することができる。なお、この場合、スペーシャルリージョン情報は、時間方向に変化し得る(時間方向に動的な)情報を含み得る。
 この場合も、クライアント装置は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。もちろん、このユースケースは一例であり、クライアント装置が、スペーシャルリージョンについての情報を再生制御主体に提供することにより、どのような処理を行ってもよいし、どのような機能を実現してもよい。
 なお、その場合、スペーシャルリージョン情報にどのような情報が含まれてもよい。例えば、図33に示される表の上から6段目に示されるように、スペーシャルリージョン情報が、ラベル(label)、3Dポイント(3Dpoint)、およびキュボイド(cuboid)を含んでもよい(#2-1)。ラベルは、スペーシャルリージョンの識別情報である。3Dポイントは、スペーシャルリージョンの位置を示す情報である。例えば、スペーシャルリージョンの基準点の3次元座標(x,y,z)により表現されてもよい。キュボイドは、スペーシャルリージョンの大きさを示す情報である。例えば、スペーシャルリージョンの互いに垂直な3辺の長さ(dx,dy,dz)により表現されてもよい。これらの情報により、クライアント装置は、各スペーシャルリージョンを識別し、処理することができる。もちろん、スペーシャルリージョン情報にこれら以外の情報が含まれてもよい。
 また、スペーシャルリージョン情報をバッファ領域へ格納するためのアクセサは、シーンディスクリプションのどこに格納されてもよい。例えば、図33に示される表の上から7段目に示されるように、ノードにエクステンションを規定し、そのエクステンションに、スペーシャルリージョン情報をバッファ領域へ格納するためのアクセサに対応するプロパティを格納してもよい(#2-2)。
 このアクセサが示すバッファ領域(すなわち、スペーシャルリージョン情報が格納されるバッファ領域)は任意である。例えば、スペーシャルリージョン情報の各パラメータが、互いに異なるバッファ領域に格納されてもよい。換言するに、例えば、図33に示される表の上から8段目に示されるように、スペーシャルリージョン情報のパラメータ(例えば、ラベル、3Dポイント、キュボイド等)毎に、互いに異なるバッファ領域を示すアクセサが設定され、各アクセサに対応するプロパティがノードに規定されるエクステンションに格納されてもよい(#2-3)。
 例えば、情報処理装置(例えばファイル生成装置)において、ファイル生成部が、互いに異なるバッファ領域を示す、スペーシャルリージョン情報のパラメータ毎のアクセサを、シーンディスクリプションファイルに格納してもよい。また、例えば、情報処理装置(例えばクライアント装置)において、提供部が、スペーシャルリージョン情報の各パラメータを互いに異なるバッファ領域から取得してもよい。
 また、スペーシャルリージョン情報(例えばラベル、3Dポイント、キュボイド等)は、任意の情報に基づいて設定されてもよい。例えば、情報処理装置(例えばファイル生成装置)において、ファイル生成部は、V3C Volumetric Annotation SEIから取得した情報、または、SpatialRegionStructが含まれるトラックから取得したタイムドメタデータを、スペーシャルリージョン情報としてシーンディスクリプションに格納してもよい。
 また、スペーシャルリージョン情報の各パラメータが、共通の(同一の)バッファ領域に格納されてもよい。換言するに、例えば、図33に示される表の上から9段目に示されるように、スペーシャルリージョン情報の全パラメータ(例えば、ラベル、3Dポイント、キュボイド等)共通のアクセサが設定され、そのアクセサに対応するプロパティがノードに規定されるエクステンションに格納されてもよい(#2-4)。つまり、例えば、情報処理装置(例えばファイル生成装置)において、ファイル生成部が、スペーシャルリージョン情報の全パラメータを共通の(同一の)バッファ領域に格納するためのアクセサを、シーンディスクリプションファイルに格納してもよい。また、例えば、情報処理装置(例えばクライアント装置)において、提供部が、スペーシャルリージョン情報の全パラメータを共通の(同一の)バッファ領域から取得してもよい。
 また、図33に示される表の最下段に示されるように、このようなシーンディスクリプションのエクステンションにより指定されるバッファ領域からスペーシャルリージョン情報が取得され、再生制御主体に提供されてもよい。
 例えば、情報処理装置(例えばクライアント装置)において、シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を取得し、その3Dデータの再生を制御する再生制御者に提供する提供部を備えるようにする。
 また、例えば、情報処理方法(例えばクライアント処理)において、シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を取得し、その3Dデータの再生を制御する再生制御者に提供するようにする。
 このようにすることにより、クライアント装置において、PEが、シーンディスクリプション(に格納されるアクセサ)により示されるバッファ領域からスペーシャルリージョン情報を取得することができる。したがって、PEが、スペーシャルリージョンについての情報を再生制御主体に提供することができる。
 なお、例えば、情報処理装置(例えばクライアント装置)が、再生制御者がスペーシャルリージョン情報に基づいて指定したスペーシャルリージョンの3Dデータを取得する取得部をさらに備えてもよい。このようにすることにより、クライアント装置は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。もちろん、このユースケースは一例であり、クライアント装置が、スペーシャルリージョンについての情報を再生制御主体に提供することにより、どのような処理を行ってもよいし、どのような機能を実現してもよい。
  <シーンディスクリプションの構成例と記述例>
 この場合のシーンディスクリプションにおけるオブジェクトの主な構成例を図37に示す。図37の例の場合、ノード内にエクステンション(MPEG_spatial_region)が規定されている。このMPEG_spatial_regionエクステンション内に、ラベル、アンカー、キュボイド等のプロパティが格納されている。そして、各プロパティに対応するアクセサが設けられている。各アクセサは、自身に対応するパラメータを格納するバッファ領域として、互いに異なるバッファ領域を示す。このようにすることにより、スペーシャルリージョン情報の各パラメータは、互いに異なるバッファ領域に格納される。
 図38に示される記述例は、この場合のシーンディスクリプションの記述例を示している。この記述例に示されるように、ノード内にMPEG_spatial_regionエクステンションが規定され、そのMPEG_spatial_regionエクステンション内に、ラベル、アンカー、キュボイド等のプロパティが格納されている。各プロパティにはアクセサのインデックス値が格納されており、そのインデックス値によって、プロパティとアクセサが対応付けられている。そして、シーンディスクリプションには、そのアクセサ(各プロパティに対応するアクセサ)が格納されている。各アクセサは、互いに異なるバッファビューに関連付けられている。
  <クライアント処理の流れ2>
 この場合のクライアント処理の流れの例を、図39のフローチャートを参照して説明する。図36の場合と同様に、MAF52は、MAF処理を実行する。また、PE51はPE処理を実行する。そして再生制御主体は、制御処理を実行する。
 クライアント処理が開始されると、PE処理を開始したPE51は、ステップS221においてシーンディスクリプション(SD)をパース(解析)する。そして、PE51は、ステップS222において、そのシーンディスクリプションのノードに規定されるMPEG_spatial_regionエクステンションをパースする。
 ステップS223において、PE51は、スペーシャルリージョン情報を取得し、そのスペーシャルリージョン情報を、シーンディスクリプションに格納されるアクセサが示すバッファ領域に格納するように、MAF52に指示する。
 MAF処理を開始したMAF52は、ステップS211において、その指示を取得する。そして、MAF52は、ステップS212において、その指示に従って、時間方向に動的なスペーシャルリージョン情報を含むトラックを取得する。そして、MF52は、ステップS213において、そのトラックからスペーシャルリージョン情報等のデータを取得すると、PE51の指示に従って、それをバッファ54に格納する。これにより、スペーシャルリージョン情報が、シーンディスクリプションに格納されたアクセサにより指定されるバッファ領域に格納される。
 PE51は、ステップS224において、シーンディスクリプションに基づいて、バッファ54からデータを取得する。これにより、PE51は、シーンディスクリプションに格納されるアクセサにより指定されるバッファ領域に格納されたスペーシャルリージョン情報を取得する。
 ステップS225において、PE51は、そのスペーシャルリージョン情報を再生制御主体に提供する。例えば、PE51は、スペーシャルリージョン情報を含む選択画面(例えば図32の選択画面192)を生成し、表示部に表示させる。
 つまり、PE51は、シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を取得し、その3Dデータの再生を制御する再生制御者に提供する。
 制御処理を開始した再生制御主体は、ステップS241においてそのスペーシャルリージョン情報を取得する。例えば、再生制御主体であるユーザは、表示部に表示された選択画面(例えば図32の選択画面192)を見る。ステップS242において、再生制御主体は、その提供されたスペーシャルリージョン情報に基づいて、優先するスペーシャルリージョンを選択し、その選択を示す情報(優先指示とも称する)をPE51に供給する。例えば、再生制御主体は、表示部に表示された選択画面(例えば図32の選択画面192)において、再生を優先させる3Dオブジェクトを選択し、決定ボタンを押下する。これにより、優先指示がクライアント装置に入力され、PE51へ供給される。
 なお、ここで「再生を優先させる」とは、他の3Dデータよりも高画質に再生することを意味する。つまり、指定されたスペーシャルリージョンについては、他の3Dデータよりも高画質の(高ビットレートの)ビットストリームが取得され、復号される。また、他の3Dデータよりも時間的に先に処理すると言う意味が含まれてもよい。
 PE51は、ステップS226において、その優先指示を取得する。PE51は、ステップS227において、その優先指示にしたがってメディアの取得をMAF52に指示する。つまり、PE51は、優先指示において再生を優先させるように指示されたスペーシャルリージョンのメディア(3Dデータ)を、優先的に取得するようにMAF52に指示する。例えば、PE51は、MAF APIのstartFetching(TimeInfo timeInfo, ViewInfo viewInfo)のViewInfo.objectPosition attributeを利用して伝える。
 MAF52は、ステップS214において、その指示を取得する。そして、MAF52は、ステップS215において、ステップS212において取得されたV3Cトラックの中から、タイルを選択する。そして、MAF52は、ステップS216において、その選択したタイルのデータ(タイルデータとも称する)を取得する。例えば、MAF52は、V3Cトラックから抽出したビットストリームを、復号部を制御して復号し、タイルデータを取得する。なお、その際、MAF52は、PE51からの指示に従って、タイルを選択し、タイルデータを取得する。例えば、PE51から優先的に取得するように指示されたスペーシャルリージョンのデータを取得する場合、MAF52は、より高画質の(より高ビットレートの)タイルデータを取得する。これに対して、そのスペーシャルリージョン以外のデータを取得する場合、MAF52は、残りのビットレート等に応じてデータが選択される。例えばビットレートに余裕がない場合、より低画質の(より低ビットレートの)タイルデータを取得する。
 つまり、MAF52は、再生制御者がスペーシャルリージョン情報に基づいて指定したスペーシャルリージョンの3Dデータを取得する。
 そして、MAF52は、ステップS217において、その取得したタイルデータを指定されたバッファ形式に変換する。そして、MAF52は、ステップS218において、そのタイルデータをバッファ54に格納する。このようにして、MAF52は、再生する全てのタイルデータをバッファに格納する。
 PE51は、ステップS228において、そのタイルデータを適切なタイミングにおいてバッファ54から読み出す(取得する)。そして、PE51は、ステップS229において、取得したタイルデータを用いて3Dデータを再構成する。そして、PE51は、ステップS230において、例えば表示情報生成部を制御する等してレンダリングを行い、表示用画像を生成する。そして、PE51は、ステップS231において、その表示用画像を表示部に表示させる。
 再生制御主体は、ステップS243において、その表示用画像を見る。
 MAF52は、ステップS215乃至ステップS218の各処理を繰り返すことにより、各時刻(各フレーム)についてこれらの処理を実行する。また、PE51は、ステップS228乃至ステップS231の各処理を繰り返すことにより、各時刻(各フレーム)についてこれらの処理を実行する。
 全てのフレームについて処理が終了すると、MAF52はMAF処理を終了し、PE51はPE処理を終了し、再生制御主体は、制御処理を終了する。つまり、クライアント処理が終了する。
 以上のように各処理を実行することにより、クライアント装置は、再生制御主体にスペーシャルリージョン情報を提供することができる。したがって、そのクライアント装置は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。
 なお、スペーシャルリージョン情報が、スペーシャルリージョンの識別情報と、スペーシャルリージョンの位置を示す情報と、スペーシャルリージョンの大きさを示す情報とを含んでもよい。
 また、PE51は、スペーシャルリージョン情報の各パラメータを互いに異なるバッファ領域から取得してもよい。
 もちろん、その他の本技術を適用してもよい。また、複数の本技術を適宜組み合わせて適用してもよい。
 <4.第1の実施の形態>
  <ファイル生成装置>
 上述した本技術は、任意の装置に適用し得る。図40は、本技術を適用した情報処理装置の一態様であるファイル生成装置の構成の一例を示すブロック図である。図40に示されるファイル生成装置300は、3Dオブジェクトコンテンツ(例えばポイントクラウド等の3Dデータ)を符号化し、例えばISOBMFF等のファイルコンテナに格納する装置である。また、ファイル生成装置300は、その3Dオブジェクトコンテンツのシーンディスクリプションファイルを生成する。
 なお、図40においては、処理部やデータの流れ等の主なものを示しており、図40に示されるものが全てとは限らない。つまり、ファイル生成装置300において、図40においてブロックとして示されていない処理部が存在したり、図40において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
 図40に示されるようにファイル生成装置300は、制御部301およびファイル生成処理部302を有する。制御部301は、ファイル生成処理部302を制御する。ファイル生成処理部302は、制御部301により制御されて、ファイルの生成に関する処理を行う。例えば、ファイル生成処理部302は、ファイルに格納する3Dオブジェクトコンテンツのデータを取得してもよい。また、ファイル生成処理部302は、その取得した3Dオブジェクトコンテンツのデータをファイルコンテナに格納することにより、コンテンツファイルを生成してもよい。また、ファイル生成処理部302は、その3Dオブジェクトコンテンツに対応するシーンディスクリプションを生成し、シーンディスクリプションファイルに格納してもよい。ファイル生成処理部302は、生成したファイルをファイル生成装置300の外部に出力してもよい。例えば、ファイル生成処理部302は、生成したファイルを配信サーバ等にアップロードしてもよい。
 ファイル生成処理部302は、入力部311、前処理部312、符号化部313、ファイル生成部314、記録部315、および出力部316を有する。
 入力部311は、3Dオブジェクトコンテンツのデータの取得に関する処理を行う。例えば、入力部311は、3Dオブジェクトコンテンツのデータをファイル生成装置300の外部から取得してもよい。この3Dオブジェクトコンテンツのデータは、オブジェクトの3次元構造を表現する3Dデータであればどのようなデータであってもよい。例えば、ポイントクラウドのデータであってもよい。入力部311は、取得した3Dオブジェクトコンテンツのデータを前処理部312へ供給してもよい。
 前処理部312は、3Dオブジェクトコンテンツのデータに対して符号化前に行う前処理に関する処理を実行する。例えば、前処理部312は、入力部311から供給される3Dオブジェクトコンテンツのデータを取得してもよい。また、前処理部312は、取得した3Dオブジェクトコンテンツのデータ等から、シーンディスクリプションの生成に必要な情報を取得してもよい。また、前処理部312は、その取得した情報をファイル生成部314へ供給してもよい。また、前処理部312は、3Dオブジェクトコンテンツのデータを符号化部313へ供給してもよい。
 符号化部313は、3Dオブジェクトコンテンツのデータの符号化に関する処理を実行する。例えば、符号化部313は、前処理部312から供給される3Dオブジェクトコンテンツのデータを取得してもよい。また、符号化部313は、取得した3Dオブジェクトコンテンツのデータを符号化し、その符号化データを生成してもよい。また、符号化部313は、生成した3Dオブジェクトコンテンツの符号化データをV3Cビットストリームとしてファイル生成部314に供給してもよい。
 ファイル生成部314は、ファイル等の生成に関する処理を行う。例えば、ファイル生成部314は、符号化部313から供給されたV3Cビットストリームを取得してもよい。また、ファイル生成部314は、前処理部312から供給された情報を取得してもよい。また、ファイル生成部314は、符号化部313から供給されたV3Cビットストリームを格納するファイルコンテナ(コンテンツファイル)を生成してもよい。このコンテンツファイル(ファイルコンテナ)の仕様等は任意であり、V3Cビットストリームを格納することができればどのようなファイルであってもよい。例えば、ISOBMFFであってもよい。
 また、ファイル生成部314は、前処理部312から供給された情報を用いて、そのV3Cビットストリームに対応するシーンディスクリプションを生成してもよい。そして、ファイル生成部314は、シーンディスクリプションファイルを生成し、生成したシーンディスクリプションを格納してもよい。また、V3CビットストリームがMPEG-DASHに準拠する方式で配信される場合、ファイル生成部314は、そのV3Cビットストリームに対応するMPDを生成してもよい。また、ファイル生成部314は、生成したファイル等(ISOBMFF、シーンディスクリプションファイル、MPD等)を記録部315へ供給してもよい。
 記録部315は、例えば、ハードディスクや半導体メモリ等、任意の記録媒体を有し、データの記録に関する処理を実行する。例えば、記録部315は、ファイル生成部314から供給されるファイル等をその記録媒体に記録してもよい。また、記録部315は、制御部301若しくは出力部316の要求に従って、または所定のタイミングにおいて、記録媒体に記録されているファイル等を読み出し、出力部316に供給してもよい。
 出力部316は、記録部315から供給されるファイル等を取得し、そのファイル等をファイル生成装置300の外部(例えば配信サーバや再生装置等)に出力してもよい。
 以上のような構成のファイル生成装置300において、<3.スペーシャルリージョン情報の利用>において上述した本技術を適用してもよい。
 例えば、ファイル生成部314が、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成してもよい。
 また、その場合、そのスペーシャルリージョン情報が、スペーシャルリージョンの識別情報と、スペーシャルリージョンの位置を示す情報と、スペーシャルリージョンの大きさを示す情報とを含んでもよい。
 また、ファイル生成部314が、V3CDecoderConfigurationRecordに含まれるObject label information SEIと、V3CSpatialRegionsBox()内の 3DspatialRegionStruct()とから取得した情報を、スペーシャルリージョン情報としてシーンディスクリプションファイルに格納してもよい。
 また、ファイル生成部314が、シーンディスクリプションのノードに、スペーシャルリージョン情報を格納するエクステンションを規定し、そのシーンディスクリプションをシーンディスクリプションファイルに格納してもよい。
 また、例えば、ファイル生成部314が、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成してもよい。
 また、その場合、スペーシャルリージョン情報が、スペーシャルリージョンの識別情報と、スペーシャルリージョンの位置を示す情報と、スペーシャルリージョンの大きさを示す情報とを含んでもよい。
 また、ファイル生成部314が、互いに異なるバッファ領域を示す、スペーシャルリージョン情報のパラメータ毎のアクセサを、シーンディスクリプションファイルに格納してもよい。
 また、ファイル生成部314が、V3C Volumetric Annotation SEIから取得した情報、または、SpatialRegionStructが含まれるトラックから取得したタイムドメタデータを、スペーシャルリージョン情報としてシーンディスクリプションファイルに格納してもよい。
 もちろん、<3.スペーシャルリージョン情報の利用>において上述したその他の本技術を適用してもよい。また、複数の本技術を適宜組み合わせて適用してもよい。
 ファイル生成装置300が、このような構成を有することにより、コンテンツを再生するクライアント装置が、再生制御主体にスペーシャルリージョン情報を提供することができる。したがって、そのクライアント装置は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。もちろん、このユースケースは一例であり、クライアント装置が、スペーシャルリージョンについての情報を再生制御主体に提供することにより、どのような処理を行ってもよいし、どのような機能を実現してもよい。
  <ファイル生成処理の流れ1>
 このような構成のファイル生成装置300が実行するファイル生成処理の流れの例を、図41のフローチャートを参照して説明する。図41の例は、スペーシャルリージョン情報をシーンディスクリプションに格納する場合のファイル生成処理の流れの例を示している。
 この場合、ファイル生成処理が開始されると、ファイル生成装置300の入力部311は、ステップS301において、3Dオブジェクトのデータ(3Dデータ)を取得する。例えば、入力部311は、この3Dデータとして、ポイントクラウドのデータを取得する。
 ステップS302において、前処理部312は、ステップS301において取得された3Dオブジェクトのデータに対して前処理を実行する。例えば、前処理部312は、その3Dオブジェクトのデータから、1つ以上の3Dオブジェクトを3D空間に配置するための空間配置情報であるシーンディスクリプションの生成に用いられる情報を取得する。
 ステップS303において、ファイル生成部314は、その情報を用いて、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成する。
 ステップS304において、符号化部313は、ステップS301において取得されたポイントクラウドのデータ(3Dデータ)を符号化し、その符号化データ(V3Cビットストリーム)を生成する。
 ステップS305において、ファイル生成部314は、ステップS304において生成されたV3Cビットストリームを格納するコンテンツファイル(ISOBMFF)を生成する。
 ステップS306において、記録部315は、生成されたシーンディスクリプションファイルおよびコンテンツファイルを記録媒体に記録する。
 ステップS307において、出力部316は、ステップS306において記録されたファイル等を記録媒体より読み出し、所定のタイミングにおいて、その読み出したファイルをファイル生成装置300の外部に出力する。例えば、出力部316は、記録媒体より読み出したファイルを、ネットワーク等の通信媒体を介して、配信サーバや再生装置等の他の装置へ送信(アップロード)してもよい。また、出力部316は、記録媒体より読み出したファイル等を、リムーバブルメディア等の外部記録媒体に記録してもよい。その場合、その出力されたファイルは、例えば、その外部記録媒体を介して他の装置(配信サーバや再生装置等)に供給されてもよい。
 ステップS307の処理が終了すると、ファイル生成処理が終了する。
 このようにファイル生成処理を実行することにより、コンテンツを再生するクライアント装置が、再生制御主体にスペーシャルリージョン情報を提供することができる。したがって、そのクライアント装置は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。
 なお、スペーシャルリージョン情報が、スペーシャルリージョンの識別情報と、スペーシャルリージョンの位置を示す情報と、スペーシャルリージョンの大きさを示す情報とを含んでもよい。
 また、ステップS303において、ファイル生成部314が、V3CDecoderConfigurationRecordに含まれるObject label information SEIと、V3CSpatialRegionsBox()内の 3DspatialRegionStruct()とから取得した情報を、スペーシャルリージョン情報として前記シーンディスクリプションファイルに格納してもよい。
 また、ステップS303において、ファイル生成部314が、シーンディスクリプションのノードに、スペーシャルリージョン情報を格納するエクステンションを規定し、そのシーンディスクリプションをシーンディスクリプションファイルに格納してもよい。
 もちろん、<3.スペーシャルリージョン情報の利用>において上述したその他の本技術を適用してもよい。また、複数の本技術を適宜組み合わせて適用してもよい。
  <ファイル生成処理の流れ2>
 次に、スペーシャルリージョン情報をバッファ領域に格納する場合のファイル生成処理の流れの例を、図42のフローチャートを参照して説明する。
 この場合、ファイル生成処理が開始されると、ステップS351およびステップS352の各処理が、図41のステップS301およびステップS302の各処理と同様に実行される。
 ステップS353において、ファイル生成部314は、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成する。
 ステップS353の処理が終了すると、ステップS354乃至ステップS357の各処理が、図41のステップS304乃至ステップS307の各処理と同様に実行される。
 ステップS357の処理が終了すると、ファイル生成処理が終了する。
 このようにファイル生成処理を実行することにより、コンテンツを再生するクライアント装置が、再生制御主体にスペーシャルリージョン情報を提供することができる。したがって、そのクライアント装置は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。
 なお、スペーシャルリージョン情報が、スペーシャルリージョンの識別情報と、スペーシャルリージョンの位置を示す情報と、スペーシャルリージョンの大きさを示す情報とを含んでもよい。
 また、ステップS353において、ファイル生成部314が、互いに異なるバッファ領域を示す、スペーシャルリージョン情報のパラメータ毎のアクセサを、シーンディスクリプションファイルに格納してもよい。
 また、ステップS353において、ファイル生成部314が、V3C Volumetric Annotation SEIから取得した情報、または、SpatialRegionStructが含まれるトラックから取得したタイムドメタデータを、スペーシャルリージョン情報としてシーンディスクリプションファイルに格納してもよい。
 もちろん、<3.スペーシャルリージョン情報の利用>において上述したその他の本技術を適用してもよい。また、複数の本技術を適宜組み合わせて適用してもよい。
 <5.第2の実施の形態>
  <クライアント装置>
 図43は、本技術を適用した情報処理装置の一態様であるクライアント装置の構成の一例を示すブロック図である。図43に示されるクライアント装置400は、シーンディスクリプションに基づいて、3Dオブジェクトコンテンツの再生処理を行う再生装置である。例えば、クライアント装置400は、ファイル生成装置300により生成されたコンテンツファイルに格納される3Dオブジェクトのデータを再生する。その際、クライアント装置400は、シーンディスクリプションに基づいて、その再生に関する処理を行う。
 なお、図43においては、処理部やデータの流れ等の主なものを示しており、図43に示されるものが全てとは限らない。つまり、クライアント装置400において、図43においてブロックとして示されていない処理部が存在したり、図43において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
 図43に示されるようにクライアント装置400は、制御部401および再生処理部402を有する。制御部401は、再生処理部402の制御に関する処理を行う。再生処理部402は、3Dオブジェクトのデータの再生に関する処理を行う。
 再生処理部402は、ファイル取得部411、ファイル処理部412、復号部413、表示情報生成部414、表示部415、および表示制御部416を有する。
 ファイル取得部411は、ファイルの取得に関する処理を行う。例えば、ファイル取得部411は、配信サーバやファイル生成装置300等、クライアント装置400の外部から供給されるファイル等を取得してもよい。また、ファイル取得部411は、図示せぬローカルストレージに記憶されているファイル等を取得してもよい。例えば、ファイル取得部411は、シーンディスクリプションファイルを取得してもよい。また、ファイル取得部411は、コンテンツファイルを取得してもよい。例えば、ファイル取得部411は、取得したファイルをファイル処理部412へ供給してもよい。ファイル取得部411は、ファイル処理部412の制御に従ってこのファイルの取得に関する処理を行ってもよい。例えば、ファイル取得部411は、ファイル処理部412により要求されたファイルを外部またはローカルストレージから取得し、ファイル処理部412へ供給してもよい。
 ファイル処理部412は、ファイル等に対する処理に関する処理を行う。例えば、ファイル処理部412は、図16を参照して説明したような構成(例えば、MAF52、バッファ54、PE51等)を有してもよい。
 その場合にファイル処理部412のPE51は、ファイル取得部411を制御し、所望の3Dオブジェクトコンテンツに対応するシーンディスクリプションファイルを取得させてもよい。そして、PE51は、ファイル取得部411から供給されるシーンディスクリプションファイルを取得してもよい。また、PE51は、そのシーンディスクリプションファイルを解析し、そのシーンディスクリプションファイルに基づいてMAF52を制御し、所望の3Dコンテンツファイルのデータを取得させてもよい。MAF52は、そのPE51の制御に従ってファイル取得部411を制御し、所望のコンテンツファイルを取得させ、そのコンテンツファイルから所望のV3Cビットストリームを取得してもよい。そして、MAF52は、復号部413を制御し、そのV3Cビットストリームを復号させ、V3Cコンテンツのデータを取得してもよい。そして、MAF52は、そのV3Cコンテンツのデータ(2Dデータ)をバッファ54に格納してもよい。PE51は、シーンディスクリプションに基づいてそのデータをバッファ54から取得し、3Dデータを再構成してもよい。そして、PE51は、表示情報生成部414を制御して、再構成された3Dデータを用いてレンダリングを行わせ、表示用画像を生成させてもよい。なお、ファイル処理部412は、シーンディスクリプション等に含まれる表示情報の生成に有用な情報を表示制御部416に供給してもよい。
 復号部413は、復号に関する処理を行う。例えば、復号部413は、ファイル処理部412により制御され、V3Cビットストリームを復号してもよい。また、復号部413は、その復号により得られた3Dオブジェクトコンテンツのデータ(例えばポイントクラウドのデータ)をファイル処理部412や表示情報生成部414に供給してもよい。
 表示情報生成部414は、表示に関する処理を行う。例えば、表示情報生成部414は、ファイル処理部412および復号部413の少なくともいずれか一方から供給される3Dオブジェクトのデータを取得してもよい。また、表示情報生成部414は、表示制御部416やファイル処理部412の制御に従って、その3Dオブジェクトコンテンツのデータのレンダリングを行い、表示用画像等を生成してもよい。また、表示情報生成部414は、生成した表示用画像等を、表示部415に供給してもよい。
 表示部415は、表示デバイスを有し、画像表示に関する処理を行う。例えば、表示部415は、表示情報生成部414から供給された表示用画像をその表示デバイスを用いて表示してもよい。
 表示制御部416は、画像表示の制御に関する処理を実行する。例えば、表示制御部416は、ファイル処理部412から供給されるシーンディスクリプション等の情報を取得してもよい。また、表示制御部416はその情報に基づいて表示情報生成部414を制御してもよい。
 以上のような構成のクライアント装置400において、<3.スペーシャルリージョン情報の利用>において上述した本技術を適用してもよい。
 例えば、ファイル処理部412(のPE51)が、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、その3Dデータの再生を制御する再生制御者に提供してもよい。つまり、ファイル処理部412(のPE51)は、提供部とも言える。
 なお、スペーシャルリージョン情報は、スペーシャルリージョンの識別情報と、スペーシャルリージョンの位置を示す情報と、スペーシャルリージョンの大きさを示す情報とを含んでもよい。
 また、ファイル処理部412(のPE51)は、シーンディスクリプションのノードに規定されたエクステンションからスペーシャルリージョン情報を取得してもよい。
 また、ファイル処理部412(のMAF52)が、再生制御者がスペーシャルリージョン情報に基づいて指定したスペーシャルリージョンの3Dデータを取得してもよい。つまり、ファイル処理部412(のMAF52)は、取得部とも言える。
 また、例えば、ファイル処理部412(のPE51)が、シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を取得し、その3Dデータの再生を制御する再生制御者に提供してもよい。
 なお、スペーシャルリージョン情報が、スペーシャルリージョンの識別情報と、スペーシャルリージョンの位置を示す情報と、スペーシャルリージョンの大きさを示す情報とを含んでもよい。
 また、ファイル処理部412(のPE51)が、スペーシャルリージョン情報の各パラメータを互いに異なるバッファ領域から取得してもよい。
 また、ファイル処理部412(のMAF52)が、再生制御者がスペーシャルリージョン情報に基づいて指定したスペーシャルリージョンの3Dデータを取得してもよい。
 もちろん、<3.スペーシャルリージョン情報の利用>において上述したその他の本技術を適用してもよい。また、複数の本技術を適宜組み合わせて適用してもよい。
 クライアント装置400は、このような構成を有することにより、再生制御主体にスペーシャルリージョン情報を提供することができる。したがって、クライアント装置400は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。もちろん、このユースケースは一例であり、クライアント装置400が、スペーシャルリージョンについての情報を再生制御主体に提供することにより、どのような処理を行ってもよいし、どのような機能を実現してもよい。
  <クライアント処理の流れ>
 スペーシャルリージョン情報がシーンディスクリプションに格納される場合、クライアント装置400は、クライアント処理を、図36のフローチャートのような流れで実行する。
 また、スペーシャルリージョン情報が、シーンディスクリプションに格納されるアクセサにより示されるバッファ領域に格納される場合、クライアント装置400は、クライアント処理を、図39のフローチャートのような流れで実行する。
 このようにクライアント処理を実行することにより、クライアント装置400(のPE51)は、いずれの場合も、再生制御主体にスペーシャルリージョン情報を提供することができる。したがって、クライアント装置400は、例えば上述したユースケースのように、再生制御主体が注目したい3Dオブジェクトを高画質に再生する等、再生制御主体の意図に応じたコンテンツ再生を行うことができる。
 <6.付記>
  <組み合わせ>
 上述した本技術の各例は、矛盾が生じない限り、他の例と適宜組み合わせて適用してもよい。また、上述した本技術の各例を、上述した以外の他の技術と組み合わせて適用してもよい。
  <コンピュータ>
 上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
 図44は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
 図44に示されるコンピュータ900において、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM(Random Access Memory)903は、バス904を介して相互に接続されている。
 バス904にはまた、入出力インタフェース910も接続されている。入出力インタフェース910には、入力部911、出力部912、記憶部913、通信部914、およびドライブ915が接続されている。
 入力部911は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部912は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部913は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部914は、例えば、ネットワークインタフェースよりなる。ドライブ915は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア921を駆動する。
 以上のように構成されるコンピュータでは、CPU901が、例えば、記憶部913に記憶されているプログラムを、入出力インタフェース910およびバス904を介して、RAM903にロードして実行することにより、上述した一連の処理が行われる。RAM903にはまた、CPU901が各種の処理を実行する上において必要なデータなども適宜記憶される。
 コンピュータが実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア921に記録して適用することができる。その場合、プログラムは、リムーバブルメディア921をドライブ915に装着することにより、入出力インタフェース910を介して、記憶部913にインストールすることができる。
 また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部914で受信し、記憶部913にインストールすることができる。
 その他、このプログラムは、ROM902や記憶部913に、あらかじめインストールしておくこともできる。
  <本技術の適用可能な対象>
 本技術は、任意の符号化・復号方式に適用することができる。
 また、本技術は、任意の構成に適用することができる。例えば、本技術は、様々な電子機器に応用され得る。
 また、例えば、本技術は、システムLSI(Large Scale Integration)等としてのプロセッサ(例えばビデオプロセッサ)、複数のプロセッサ等を用いるモジュール(例えばビデオモジュール)、複数のモジュール等を用いるユニット(例えばビデオユニット)、または、ユニットにさらにその他の機能を付加したセット(例えばビデオセット)等、装置の一部の構成として実施することもできる。
 また、例えば、本技術は、複数の装置により構成されるネットワークシステムにも適用することもできる。例えば、本技術を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングとして実施するようにしてもよい。例えば、コンピュータ、AV(Audio Visual)機器、携帯型情報処理端末、IoT(Internet of Things)デバイス等の任意の端末に対して、画像(動画像)に関するサービスを提供するクラウドサービスにおいて本技術を実施するようにしてもよい。
 なお、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、および、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
  <本技術を適用可能な分野・用途>
 本技術を適用したシステム、装置、処理部等は、例えば、交通、医療、防犯、農業、畜産業、鉱業、美容、工場、家電、気象、自然監視等、任意の分野に利用することができる。また、その用途も任意である。
 例えば、本技術は、観賞用コンテンツ等の提供の用に供されるシステムやデバイスに適用することができる。また、例えば、本技術は、交通状況の監理や自動運転制御等、交通の用に供されるシステムやデバイスにも適用することができる。さらに、例えば、本技術は、セキュリティの用に供されるシステムやデバイスにも適用することができる。また、例えば、本技術は、機械等の自動制御の用に供されるシステムやデバイスに適用することができる。さらに、例えば、本技術は、農業や畜産業の用に供されるシステムやデバイスにも適用することができる。また、本技術は、例えば火山、森林、海洋等の自然の状態や野生生物等を監視するシステムやデバイスにも適用することができる。さらに、例えば、本技術は、スポーツの用に供されるシステムやデバイスにも適用することができる。
  <その他>
 なお、本明細書において「フラグ」とは、複数の状態を識別するための情報であり、真(1)または偽(0)の2状態を識別する際に用いる情報だけでなく、3以上の状態を識別することが可能な情報も含まれる。したがって、この「フラグ」が取り得る値は、例えば1/0の2値であってもよいし、3値以上であってもよい。すなわち、この「フラグ」を構成するbit数は任意であり、1bitでも複数bitでもよい。また、識別情報(フラグも含む)は、その識別情報をビットストリームに含める形だけでなく、ある基準となる情報に対する識別情報の差分情報をビットストリームに含める形も想定されるため、本明細書においては、「フラグ」や「識別情報」は、その情報だけではなく、基準となる情報に対する差分情報も包含する。
 また、符号化データ(ビットストリーム)に関する各種情報(メタデータ等)は、符号化データに関連づけられていれば、どのような形態で伝送または記録されるようにしてもよい。ここで、「関連付ける」という用語は、例えば、一方のデータを処理する際に他方のデータを利用し得る(リンクさせ得る)ようにすることを意味する。つまり、互いに関連付けられたデータは、1つのデータとしてまとめられてもよいし、それぞれ個別のデータとしてもよい。例えば、符号化データ(画像)に関連付けられた情報は、その符号化データ(画像)とは別の伝送路上で伝送されるようにしてもよい。また、例えば、符号化データ(画像)に関連付けられた情報は、その符号化データ(画像)とは別の記録媒体(または同一の記録媒体の別の記録エリア)に記録されるようにしてもよい。なお、この「関連付け」は、データ全体でなく、データの一部であってもよい。例えば、画像とその画像に対応する情報とが、複数フレーム、1フレーム、またはフレーム内の一部分などの任意の単位で互いに関連付けられるようにしてもよい。
 なお、本明細書において、「合成する」、「多重化する」、「付加する」、「一体化する」、「含める」、「格納する」、「入れ込む」、「差し込む」、「挿入する」等の用語は、例えば符号化データとメタデータとを1つのデータにまとめるといった、複数の物を1つにまとめることを意味し、上述の「関連付ける」の1つの方法を意味する。
 また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
 また、例えば、上述したプログラムは、任意の装置において実行されるようにしてもよい。その場合、その装置が、必要な機能(機能ブロック等)を有し、必要な情報を得ることができるようにすればよい。
 また、例えば、1つのフローチャートの各ステップを、1つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。さらに、1つのステップに複数の処理が含まれる場合、その複数の処理を、1つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。換言するに、1つのステップに含まれる複数の処理を、複数のステップの処理として実行することもできる。逆に、複数のステップとして説明した処理を1つのステップとしてまとめて実行することもできる。
 また、例えば、コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。つまり、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。
 また、例えば、本技術に関する複数の技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術の一部または全部を、他の実施の形態において説明した本技術の一部または全部と組み合わせて実施することもできる。また、上述した任意の本技術の一部または全部を、上述していない他の技術と併用して実施することもできる。
 なお、本技術は以下のような構成も取ることができる。
 (1) 3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、前記3Dデータの再生を制御する再生制御者に提供する提供部
 を備える情報処理装置。
 (2) 前記スペーシャルリージョン情報は、前記スペーシャルリージョンの識別情報と、前記スペーシャルリージョンの位置を示す情報と、前記スペーシャルリージョンの大きさを示す情報とを含む
 (1)に記載の情報処理装置。
 (3) 前記提供部は、前記シーンディスクリプションのノードに規定されたエクステンションから前記スペーシャルリージョン情報を取得する
 (1)または(2)に記載の情報処理装置。
 (4) 前記再生制御者が前記スペーシャルリージョン情報に基づいて指定した前記スペーシャルリージョンの前記3Dデータを取得する取得部をさらに備える
 (1)乃至(3)のいずれかに記載の情報処理装置。
 (5) 3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、前記3Dデータの再生を制御する再生制御者に提供する
 情報処理方法。
 (6) 3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成するファイル生成部
 を備える情報処理装置。
 (7) 前記スペーシャルリージョン情報は、前記スペーシャルリージョンの識別情報と、前記スペーシャルリージョンの位置を示す情報と、前記スペーシャルリージョンの大きさを示す情報とを含む
 (6)に記載の情報処理装置。
 (8) 前記ファイル生成部は、V3CDecoderConfigurationRecordに含まれるObject label information SEIと、V3CSpatialRegionsBox()内の 3DspatialRegionStruct()とから取得した情報を、前記スペーシャルリージョン情報として前記シーンディスクリプションファイルに格納する
 (6)または(7)に記載の情報処理装置。
 (9) 前記ファイル生成部は、シーンディスクリプションのノードに、前記スペーシャルリージョン情報を格納するエクステンションを規定し、前記シーンディスクリプションを前記シーンディスクリプションファイルに格納する
 (6)乃至(8)のいずれかに記載の情報処理装置。
 (10) 3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成する
 情報処理方法。
 (11) シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を取得し、前記3Dデータの再生を制御する再生制御者に提供する提供部
 を備える情報処理装置。
 (12) 前記スペーシャルリージョン情報は、前記スペーシャルリージョンの識別情報と、前記スペーシャルリージョンの位置を示す情報と、前記スペーシャルリージョンの大きさを示す情報とを含む
 (11)に記載の情報処理装置。
 (13) 前記提供部は、前記スペーシャルリージョン情報の各パラメータを互いに異なる前記バッファ領域から取得する
 (11)または(12)に記載の情報処理装置。
 (14) 前記再生制御者が前記スペーシャルリージョン情報に基づいて指定した前記スペーシャルリージョンの前記3Dデータを取得する取得部をさらに備える
 (11)乃至(13)のいずれかに記載の情報処理装置。
 (15) シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を取得し、前記3Dデータの再生を制御する再生制御者に提供する
 情報処理方法。
 (16) 3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成するファイル生成部
 を備える情報処理装置。
 (17) 前記スペーシャルリージョン情報は、前記スペーシャルリージョンの識別情報と、前記スペーシャルリージョンの位置を示す情報と、前記スペーシャルリージョンの大きさを示す情報とを含む
 (16)に記載の情報処理装置。
 (18) 前記ファイル生成部は、互いに異なる前記バッファ領域を示す、前記スペーシャルリージョン情報のパラメータ毎の前記アクセサを、前記シーンディスクリプションファイルに格納する
 (16)または(17)に記載の情報処理装置。
 (19) 前記ファイル生成部は、V3C Volumetric Annotation SEIから取得した情報、または、SpatialRegionStructが含まれるトラックから取得したタイムドメタデータを、前記スペーシャルリージョン情報として前記シーンディスクリプションファイルに格納する
 (16)乃至(18)のいずれかに記載の情報処理装置。
 (20) 3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成する
 情報処理方法。
 300 ファイル生成装置, 301 制御部, 302 ファイル生成処理部, 311 入力部, 312 前処理部, 313 符号化部, 314 ファイル生成部, 315 記録部, 316 出力部, 400 クライアント装置, 401 制御部, 402 クライアント処理部, 411 ファイル取得部, 412 ファイル処理部, 413 復号部, 414 表示情報生成部, 415 表示部, 416 表示制御部

Claims (20)

  1.  3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、前記3Dデータの再生を制御する再生制御者に提供する提供部
     を備える情報処理装置。
  2.  前記スペーシャルリージョン情報は、前記スペーシャルリージョンの識別情報と、前記スペーシャルリージョンの位置を示す情報と、前記スペーシャルリージョンの大きさを示す情報とを含む
     請求項1に記載の情報処理装置。
  3.  前記提供部は、前記シーンディスクリプションのノードに規定されたエクステンションから前記スペーシャルリージョン情報を取得する
     請求項1に記載の情報処理装置。
  4.  前記再生制御者が前記スペーシャルリージョン情報に基づいて指定した前記スペーシャルリージョンの前記3Dデータを取得する取得部をさらに備える
     請求項1に記載の情報処理装置。
  5.  3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報をシーンディスクリプションから取得し、前記3Dデータの再生を制御する再生制御者に提供する
     情報処理方法。
  6.  3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成するファイル生成部
     を備える情報処理装置。
  7.  前記スペーシャルリージョン情報は、前記スペーシャルリージョンの識別情報と、前記スペーシャルリージョンの位置を示す情報と、前記スペーシャルリージョンの大きさを示す情報とを含む
     請求項6に記載の情報処理装置。
  8.  前記ファイル生成部は、V3CDecoderConfigurationRecordに含まれるObject label information SEIと、V3CSpatialRegionsBox()内の 3DspatialRegionStruct()とから取得した情報を、前記スペーシャルリージョン情報として前記シーンディスクリプションファイルに格納する
     請求項6に記載の情報処理装置。
  9.  前記ファイル生成部は、シーンディスクリプションのノードに、前記スペーシャルリージョン情報を格納するエクステンションを規定し、前記シーンディスクリプションを前記シーンディスクリプションファイルに格納する
     請求項6に記載の情報処理装置。
  10.  3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するシーンディスクリプションファイルを生成する
     情報処理方法。
  11.  シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を取得し、前記3Dデータの再生を制御する再生制御者に提供する提供部
     を備える情報処理装置。
  12.  前記スペーシャルリージョン情報は、前記スペーシャルリージョンの識別情報と、前記スペーシャルリージョンの位置を示す情報と、前記スペーシャルリージョンの大きさを示す情報とを含む
     請求項11に記載の情報処理装置。
  13.  前記提供部は、前記スペーシャルリージョン情報の各パラメータを互いに異なる前記バッファ領域から取得する
     請求項11に記載の情報処理装置。
  14.  前記再生制御者が前記スペーシャルリージョン情報に基づいて指定した前記スペーシャルリージョンの前記3Dデータを取得する取得部をさらに備える
     請求項11に記載の情報処理装置。
  15.  シーンディスクリプションに基づいてバッファ領域から、3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を取得し、前記3Dデータの再生を制御する再生制御者に提供する
     情報処理方法。
  16.  3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成するファイル生成部
     を備える情報処理装置。
  17.  前記スペーシャルリージョン情報は、前記スペーシャルリージョンの識別情報と、前記スペーシャルリージョンの位置を示す情報と、前記スペーシャルリージョンの大きさを示す情報とを含む
     請求項16に記載の情報処理装置。
  18.  前記ファイル生成部は、互いに異なる前記バッファ領域を示す、前記スペーシャルリージョン情報のパラメータ毎の前記アクセサを、前記シーンディスクリプションファイルに格納する
     請求項16に記載の情報処理装置。
  19.  前記ファイル生成部は、V3C Volumetric Annotation SEIから取得した情報、または、SpatialRegionStructが含まれるトラックから取得したタイムドメタデータを、前記スペーシャルリージョン情報として前記シーンディスクリプションファイルに格納する
     請求項16に記載の情報処理装置。
  20.  3Dオブジェクトの3次元形状を表現する3Dデータにおけるスペーシャルリージョンに関するスペーシャルリージョン情報を格納するバッファ領域を示すアクセサを格納するシーンディスクリプションファイルを生成する
     情報処理方法。
PCT/JP2022/017789 2021-04-14 2022-04-14 情報処理装置および方法 WO2022220278A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202163174639P 2021-04-14 2021-04-14
US63/174,639 2021-04-14

Publications (1)

Publication Number Publication Date
WO2022220278A1 true WO2022220278A1 (ja) 2022-10-20

Family

ID=83640743

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/017789 WO2022220278A1 (ja) 2021-04-14 2022-04-14 情報処理装置および方法

Country Status (1)

Country Link
WO (1) WO2022220278A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200302632A1 (en) * 2019-03-21 2020-09-24 Lg Electronics Inc. Point cloud data transmission apparatus, point cloud data transmission method, point cloud data reception apparatus, and point cloud data reception method
WO2021117859A1 (ja) * 2019-12-13 2021-06-17 ソニーグループ株式会社 画像処理装置および方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200302632A1 (en) * 2019-03-21 2020-09-24 Lg Electronics Inc. Point cloud data transmission apparatus, point cloud data transmission method, point cloud data reception apparatus, and point cloud data reception method
WO2021117859A1 (ja) * 2019-12-13 2021-06-17 ソニーグループ株式会社 画像処理装置および方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Text of ISO/IEC CD 23090-14 Scene Description for MPEG Media", 132. MPEG MEETING; 20201012 - 20201016; ONLINE; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), 7 December 2020 (2020-12-07), XP030291518 *

Similar Documents

Publication Publication Date Title
KR102286881B1 (ko) 시간지정된 미디어 데이터의 스트리밍 동안의 렌더링 디스플레이를 개선하기 위한 방법, 디바이스, 및 컴퓨터 프로그램
EP3905532A1 (en) Information processing device and information processing method
WO2019202207A1 (en) Processing video patches for three-dimensional content
AU2012285360A2 (en) Transmission of reconstruction data in a tiered signal quality hierarchy
WO2021251173A1 (ja) 情報処理装置および方法
WO2021251185A1 (ja) 情報処理装置および方法
US11825135B2 (en) Information processing apparatus, information processing method, reproduction processing apparatus, and reproduction processing method
JP7287454B2 (ja) 情報処理装置、再生処理装置、情報処理方法及び再生処理方法
JPWO2020137854A1 (ja) 情報処理装置および情報処理方法
WO2022145357A1 (ja) 情報処理装置および方法
WO2022070903A1 (ja) 情報処理装置および方法
WO2022220278A1 (ja) 情報処理装置および方法
WO2022075342A1 (ja) 情報処理装置および方法
WO2022220255A1 (ja) 情報処理装置および方法
WO2022220291A1 (ja) 情報処理装置および方法
GB2567485A (en) Method and device for exchanging data between a web application and an associated web engine
WO2023054156A1 (ja) 情報処理装置および方法
CN114026875A (zh) 信息处理装置、信息处理方法、再现处理装置和再现处理方法
WO2023176928A1 (ja) 情報処理装置および方法
WO2023277062A1 (ja) 情報処理装置および方法
WO2023204289A1 (ja) 情報処理装置および方法
WO2022220207A1 (ja) 情報処理装置および方法
WO2022075079A1 (ja) 情報処理装置および方法
WO2021251141A1 (ja) 情報処理装置および方法
US20200342568A1 (en) Information processing apparatus and method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22788201

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22788201

Country of ref document: EP

Kind code of ref document: A1