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

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

Info

Publication number
WO2023176419A1
WO2023176419A1 PCT/JP2023/007210 JP2023007210W WO2023176419A1 WO 2023176419 A1 WO2023176419 A1 WO 2023176419A1 JP 2023007210 W JP2023007210 W JP 2023007210W WO 2023176419 A1 WO2023176419 A1 WO 2023176419A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
file
subframe
sample
information processing
Prior art date
Application number
PCT/JP2023/007210
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 WO2023176419A1 publication Critical patent/WO2023176419A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring

Definitions

  • the present disclosure relates to an information processing device and method, and particularly relates to an information processing device and method that can suppress deterioration in the quality of reproduction and display of 3D data.
  • G-PCC Geometry-based Point Cloud Compression
  • ISO/IEC International Organization for Standardization / International Electrotechnical Commission
  • ISOBMFF International Organization for Standardization Base Media File Format
  • MPEG-4 Motion Picture Experts Group-4
  • video compression for example, see Non-Patent Document 2.
  • the G-PCC bitstream which is a bitstream of encoded data encoded with this G-PCC, from local storage
  • the G-PCC bitstream is converted into an ISOBMFF file.
  • a method for storing images is currently being standardized in MPEG-I Part 18 (ISO/IEC 23090-18) (for example, see Non-Patent Document 3).
  • Non-Patent Document 4 when encoding a point cloud, there is a method of encoding a combined frame in which multiple frames of the point cloud are combined as subframes and using it as a sample (for example, Non-Patent Document 4).
  • Non-Patent Document 4 the decoder does not know at what timing each sample should be acquired and decoded before decoding the bitstream. Therefore, there is a risk that the quality of the reproduction and display of 3D data may deteriorate, such as a delay in reproduction processing or a frame loss in display.
  • the present disclosure has been made in view of this situation, and is intended to suppress a reduction in the quality of reproduction and display of 3D data.
  • the information processing device is configured to store the information in the file at a timing in time for the display timing of the subframe, based on first information regarding the display timing of the subframe stored as metadata in the file.
  • an extraction unit that extracts a sample including the subframe from a bitstream; a decoding unit that decodes the extracted sample; and a display of the subframe included in the decoded sample based on the first information.
  • the information processing apparatus includes a construction unit that constructs a point cloud of the subframes in a timely manner.
  • An information processing method includes storing information in the file at a timing in time for the display timing of the subframe, based on first information regarding the display timing of the subframe stored as metadata in the file. extracting a sample including the subframe from the bitstream, decoding the extracted sample, and based on the first information, at a timing in time for displaying the subframe included in the decoded sample; This is an information processing method for constructing a point cloud of the subframes.
  • An information processing device includes an encoding unit that generates encoded data by encoding a combined frame in which a plurality of frames are combined as subframes as samples, and a bit stream that includes the encoded data. a bitstream generation unit that generates first information regarding the display timing of the subframe based on the bitstream; and a bitstream generation unit that generates a file that stores the bitstream and includes the first information as metadata in the file.
  • An information processing apparatus includes a file generation unit that stores.
  • a combined frame in which a plurality of frames are combined as subframes is encoded as a sample to generate encoded data, a bit stream including the encoded data is generated, and the bit stream containing the encoded data is generated.
  • the information processing method generates first information regarding the display timing of the subframe based on a stream, generates a file that stores the bitstream, and stores the first information as metadata in the file.
  • data is stored in the file at a timing in time for the display timing of the subframe.
  • a sample including a subframe is extracted from a bitstream, the extracted sample is decoded, and based on the first information, at a timing in time for displaying a subframe included in the decoded sample, A point cloud for that subframe is constructed.
  • a combined frame in which a plurality of frames are combined as subframes is encoded as a sample to generate encoded data, and a bitstream including the encoded data is generated. Then, first information regarding the display timing of the subframe is generated based on the bitstream, a file storing the bitstream is generated, and the first information is stored as metadata in the file.
  • FIG. 2 is a diagram showing an example of the configuration of a G-PCC bitstream. It is a figure explaining a combined frame. It is a figure explaining frame number attribute. It is a figure explaining frame index attribute.
  • FIG. 3 is a diagram showing an example of the structure of a G-PCC file.
  • FIG. 3 is a diagram showing an example of SubSampleInformationBox. It is a figure which shows the example of codec_specific_parameters.
  • FIG. 3 is a diagram showing an example of an encoding/decoding method. It is a figure which shows the example of codec_specific_parameters.
  • FIG. 7 is a diagram showing an example of application of subsample_delta.
  • FIG. 2 is a block diagram showing an example of the main configuration of a file generation device.
  • 3 is a flowchart illustrating an example of the flow of file generation processing.
  • FIG. 2 is a block diagram showing an example of the main configuration of a playback device.
  • 3 is a flowchart illustrating an example of the flow of reproduction processing.
  • 1 is a block diagram showing an example of the main configuration of a computer.
  • Non-patent document 1 (mentioned above)
  • Non-patent document 2 (mentioned above)
  • Non-patent document 3 (mentioned above)
  • Non-patent document 4 (mentioned above)
  • Non-patent document 5 https://www.matroska.org/index.html
  • a three-dimensional structure (object with a three-dimensional shape) is expressed as a set of many points.
  • a point cloud is composed of position information (also referred to as geometry) and attribute information (also referred to as attribute) for each point.
  • Attributes can contain arbitrary information.
  • the attributes may include color information, reflectance information, normal line information, etc. of each point.
  • the point cloud has a relatively simple data structure, and by using a sufficiently large number of points, any three-dimensional structure can be expressed with sufficient accuracy.
  • Non-Patent Document 1 discloses an encoding technique called Geometry-based Point Cloud Compression (G-PCC), which encodes this point cloud by dividing it into geometry and attributes.
  • G-PCC is currently being standardized as MPEG-I Part 9 (ISO/IEC 23090-9).
  • Octree encoding is an encoding method that converts a geometry data structure into an octree (octree) and encodes it.
  • the geometry is expressed using voxels, which are three-dimensional regions in a rectangular parallelepiped shape (including a cubic shape) with a hierarchical structure.
  • voxels which are three-dimensional regions in a rectangular parallelepiped shape (including a cubic shape) with a hierarchical structure.
  • a voxel in which a point exists is divided, and the presence or absence of a point is expressed in a small region (lower voxel) after the division.
  • such division is repeated recursively to the lowest layer, thereby forming a hierarchical structure of voxels.
  • Octree expresses such a voxel expression (the presence or absence of a point for each voxel) as an octree.
  • Each node of the octree corresponds to each voxel of the voxel representation. For example, a node corresponding to a voxel where a point exists is expressed as a value "1", and a node corresponding to a voxel where a point does not exist is expressed as a value "0".
  • a child node (a node one level lower) is formed for the node corresponding to the voxel where the point exists (the node with the value "1").
  • bitstream of encoded data generated by encoding geometry as described above is also referred to as a geometry bitstream.
  • a bitstream of encoded data generated by encoding attributes is also referred to as an attribute bitstream.
  • a bitstream in which a geometry bitstream and an attribute bitstream are combined into one is also called a G-PCC bitstream.
  • FIG. 1 An example of the structure of such a G-PCC bitstream is shown in FIG. In FIG. 1, each rectangular area indicates one Type-length-value encapsulation structure (tlv_encapsulation()).
  • SPS Sequence Parameter Set
  • GPS(s) Global Positioning Parameter Set
  • APS(s) Attribute Parameter Set
  • sps_id sps_id.
  • a geometry data unit indicates an area where one slice of geometry data is stored.
  • a geometry data unit is associated with a GPS(s) using a gps_id.
  • An attribute data unit(s) indicates an area in which one slice of attribute data is stored.
  • a plurality of attribute data units may exist for one geometry data unit. Attribute data units are associated with APS(s) using aps_id.
  • slice_id the geometry data unit and attribute data unit that constitute the same slice are associated by slice_id. Further, points may overlap between slices. Slices include independent slices that have no dependencies with other slices during decoding, and dependent slices that have dependencies with other slices.
  • a point cloud can change in the time direction like a moving image (also referred to as dynamic).
  • G-PCC was able to encode such a dynamic point cloud for a predetermined period.
  • Such a point cloud like a moving image, is composed of a plurality of frames (also referred to as point cloud frames) at different times.
  • the octrees of each frame were encoded individually (frame by frame).
  • Non-Patent Document 4 discloses a method of encoding multiple frames into one.
  • the encoder combines the octrees of multiple frames as subframes to generate one combined frame, encodes the combined frame like a normal frame, and samples And so. That is, the point cloud of the combined frame is a combination of the point clouds of each subframe, and includes points of each subframe. That is, the octree of the combined frame is a combination of the octrees of each subframe, and includes a node with the octree value "1" of each subframe.
  • each combined frame (Frame1 and Frame2) is also referred to as a subframe.
  • Octree may have redundancy between subframes. Especially in the upper layer, there is a high possibility that it will become redundant. Such octree redundancy may reduce encoding efficiency. By combining subframes, such octree redundancy can be reduced, and reduction in encoding efficiency can be suppressed.
  • subframes may be combined in any way.
  • the number of subframes to be combined is arbitrary.
  • the order in which the subframes are arranged in combination does not have to be the display order of the subframes.
  • non-consecutive subframes may be combined.
  • the length of the display period of a frame (subframe) during playback depends on the application and does not need to be constant (it may differ depending on the frame (subframe)).
  • Non-Patent Document 4 discloses a method (frame number attribute and frame index attribute) of transmitting information indicating the display order of each subframe.
  • the frame number attribute is a method of assigning a frame number indicating the display order in the entire sequence to each subframe as an attribute.
  • a frame number (FN#x (x is a natural number)) is assigned to the attribute data unit (ADU) of each slice (corresponding to a frame).
  • the playback device displays the point cloud images of each subframe in the order indicated by this frame number (i.e., FN#0, FN#1, FN#2, FN#3, FN#4, FN#5 , FN#6, FN#7, etc.), the combined frame is decoded and each subframe is played back.
  • the order of subframes can be changed not only within a combined frame but also across combined frames.
  • the order of the FN#1 subframe and FN#2 subframe is swapped, and the order of the FN#4 subframe and FN#5 subframe is swapped.
  • the subframes of FN#1 and FN#2 are combined in an order different from the display order to form a combined frame of sample a. In other words, the order is changed within the combined frame.
  • the playback device decodes the sample to be processed according to the decoding time, displays the subframe according to the frame number, and the next subframe to be displayed is within the samples decoded so far. If it does not exist, the process of decoding the previous or subsequent samples is repeated.
  • the subframes of FN#4 and FN#5 are combined with each other (subframes) by changing their order.
  • the subframe of FN#4 is combined with the subframe of FN#3 to form a combined frame of sample b.
  • the subframe of FN#5 is combined with the subframe of FN#6 and the subframe of FN#7 to form a combined frame of sample c (sample c).
  • the order is changed across combined frames. In this way, by changing the subframes to be combined, it may be possible to suppress a reduction in encoding efficiency.
  • the frame index attribute is a method of assigning a frame index indicating the display order within the combined frame to each subframe as an attribute.
  • a frame index (FI#x (x is a natural number)) is assigned to the attribute data unit (ADU) of each slice (corresponding to a frame).
  • the playback device decodes the combined frame and plays back each subframe so that the point cloud images of each subframe are displayed for each sample (combined frame) in the order indicated by the frame index.
  • the order of subframes can be permuted within the combined frame.
  • the order of the subframes of FI#1 and FI#2 is switched.
  • the subframes of FN#1 and FN#2 are combined in an order different from the display order to form a combined frame of sample a.
  • the order is changed within the combined frame.
  • the playback device performs FN#0, FN#1, FN#2 of sample a, FN#0, FN#1 of sample b, and FN# of sample c. Display each subframe in the order of 0, FN#1, FN#2...
  • the playback device repeats the process of decoding the sample to be processed according to the decoding time, appropriately rearranging and displaying the subframes within the sample according to the frame index.
  • Non-Patent Document 2 discloses ISOBMFF (International Organization for Standardization Base Media File Format), which is a file container specification of MPEG-4 (Moving Picture Experts Group - 4), an international standard technology for video compression.
  • ISOBMFF International Organization for Standardization Base Media File Format
  • Non-Patent Document 3 discloses a method for storing G-PCC bitstreams in ISOBMFF with the aim of improving the efficiency of playback processing and network distribution of bitstreams encoded with G-PCC from local storage. . This method is currently being standardized in MPEG-I Part 18 (ISO/IEC 23090-18). In the following, a G-PCC bitstream stored in ISOBMFF is referred to as a G-PCC file.
  • FIG. 5 is a diagram showing an example of the G-PCC file structure.
  • a GPCC decoder configuration record (GPCCDecoderConfigurationRecord) is provided in a GPCC sample entry (GPCCSampleEntry) in a track box (TrackBox), which is an area for storing metadata of a G-PCC file.
  • GPCCSampleEntry GPCC sample entry
  • TrackBox track box
  • SPS sequence parameter set
  • the GPCC decoder configuration record may further store a geometry parameter set (GPS), an attribute parameter set (APS), and a tile inventory depending on the sample entry type.
  • GPS geometry parameter set
  • APS attribute parameter set
  • tile inventory depending on the sample entry type.
  • a sample of a MediaDataBox may store geometry and attributes equivalent to a 1-point cloud frame.
  • the sample may also store geometry parameter sets, attribute parameter sets, and tile inventory depending on the sample entry type.
  • G-PCC files There are two types of G-PCC files: single-track encapsulation, in which corresponding geometry and attributes are stored in one track, and multi-track encapsulation, in which corresponding geometry and attributes are stored in different tracks. Two methods are specified.
  • ⁇ SubSampleInformationBox> A continuous specific byte region in a sample is also called a subsample.
  • the definition of this subsample is determined for each encoding codec, and for example, in the case of HEVC ((High Efficiency Video Coding)), a null unit (NAL unit) is a subsample.
  • NAL unit a null unit
  • a combined frame serves as a sample
  • each point cloud frame (subframe) forming the combined frame serves as a subsample.
  • a subsample information box (SubSampleInformationBox) is provided in the area storing the metadata of the G-PCC file, where information can be added for each subsample (for the subsample).
  • FIG. 6 shows an example of the syntax of the subsample information box.
  • the sample delta (sample_delta), subsample count (subsample_count), subsample size (subsample_size), codec specific parameters (codec_specific_parameters), etc. are defined in this subsample information box.
  • Sample delta (sample_delta) is a parameter that specifies a sample that has subsamples.
  • the subsample count (subsample_count) is a parameter indicating the number of subsamples.
  • the subsample size (subsample_size) is a parameter indicating the size of the subsample.
  • codec specific parameters codec_specific_parameters
  • FIG. 7 shows an example of the syntax of the codex-specific parameters.
  • one subsample is one GPCC unit (G-PCC unit).
  • 1 subsample (Tile based subsamples. 1 subsample) contains one or more consecutive GPCC units corresponding to one GPCC tile (1GPCC tile). or one or more consecutive GPCC units containing parameter sets, tile inventories, and frame boundary markers.
  • the length of the display period of each point cloud frame can be arbitrarily defined. Further, when applying the combined frame described in Non-Patent Document 4, an arbitrary number of subframes can be stored in one sample. Therefore, the length of the display period of each combined frame is not necessarily constant. Furthermore, since the subframes can be rearranged and combined as described above, the first subframe of the sample is not necessarily displayed first. In particular, in the case of the frame number attribute, subframes can be swapped across samples, so subframes of other samples may be displayed before all subframes in a sample are displayed. As shown above, the display timing of each point cloud frame is not obvious.
  • the decoder must decode each sample of the bitstream before the first display timing of the subframe included in that sample. However, it is difficult for the decoder to obtain information indicating the display timing of each subframe from the G-PCC file, and as described above, it is not obvious. In other words, the decoder did not know at what timing (by when) each sample should be acquired and decoded. Therefore, for example, playback processing may be delayed and frames may be lost in display. Another possible method is to decode all samples in advance and then start playback, but in that case, there is a risk that the delay until display starts will increase. Furthermore, it is also difficult to determine whether a file can be played back before the decoder decodes the bitstream. In other words, there was a risk that the quality of the reproduction display of 3D data would deteriorate.
  • an information processing device may transmit a file to a file in time for the display timing of the subframe based on first information regarding the display timing of the subframe stored as metadata in the file.
  • an extraction unit that extracts samples including subframes from a bitstream stored in the bitstream; a decoding unit that decodes the extracted samples; It may also include a construction unit that constructs a point cloud of subframes in time for the display timing.
  • the information processing method also referred to as the first information processing method
  • the file is processed in time for the display timing of the subframe.
  • a point cloud of subframes may be constructed.
  • the first information processing device can more easily grasp the display timing of each subframe. Therefore, the first information processing device can decode each sample in time for the display timing of each subframe. Therefore, the first information processing device can suppress reduction in the quality of reproduction and display of 3D data.
  • an information processing device (also referred to as a second information processing device) includes an encoding unit that generates encoded data by encoding a combined frame in which a plurality of frames are combined as subframes as a sample, and A bitstream generation unit that generates a bitstream containing data and generates first information regarding the display timing of a subframe based on the bitstream, generates a file that stores the bitstream, and adds metadata to the file. and a file generation unit that stores the first information.
  • an information processing method also referred to as a second information processing method
  • a combined frame in which multiple frames are combined as subframes is encoded as a sample to generate encoded data, and a bitstream containing the encoded data is generated. and generate first information regarding the display timing of the subframe based on the bitstream, generate a file that stores the bitstream, and store the first information as metadata in the file. .
  • the first information processing device can more easily grasp the display timing of each subframe.
  • the second information processing device can cause the first information processing device to decode each sample in time for the display timing of each subframe. Therefore, the second information processing device can suppress a reduction in the quality of reproduction and display of 3D data by the first information processing device.
  • the 3D data may be any data as long as it indicates the three-dimensional shape of an object in a three-dimensional space, such as a point cloud. It may be.
  • the subframe may be a point cloud frame, for example.
  • a sample may correspond to the combined frame, and a subsample may correspond to a subframe.
  • the encoding method for 3D data may be, for example, G-PCC. That is, the bitstream may be, for example, a G-PCC bitstream, and the file may be, for example, a G-PCC file.
  • information regarding the display timing of subframes may be stored, for example, in the meta information storage area of the file.
  • the file may be ISOBMFF and the first information may be stored in its subsample information box (SubSampleInformationBox).
  • the first information may be stored by expanding the codec specific parameters (codec_specific_parameters) of the subsample information box.
  • the file may be ISOBMFF
  • the first information may be stored in its sample group box (SampleGroupBox).
  • the sample group box is an area that stores information given to a sample group consisting of a plurality of samples. That is, in this case, first information (information regarding display timing) regarding sub-samples (sub-frames) within each sample constituting the sample group is stored in the sample group box.
  • the first information may be stored in a subframe timing group entry (SubFrameTimingGroupEntry) of a volumetric visual sample group entry (VolumetricVisualSampleGroupEntry).
  • the first information may be provided for each sample group.
  • the information regarding the subframe display timing may include an offset from the sample display timing (method 1-1). .
  • FIG. 9 is a diagram showing an example of the syntax of the codex-specific parameters of the sub-sample information box in this case.
  • a subsample delta (subsample_delta) is stored.
  • the subsample delta is a parameter that indicates the difference between the decoding time of a sample to which a subsample (ie, subframe) belongs and the decoding time of that subsample.
  • decoding time and presentation time are equivalent. That is, the subsample delta indicates an offset from the sample display timing.
  • the first information may include a sign (positive or negative).
  • the sign is stored together with the subsample delta.
  • the subsample delta indicates the absolute value of the difference between the decoding timing of the sample to which the subsample belongs and the decoding timing of that subsample.
  • the sign is a parameter indicating the sign (positive or negative) of the subsample delta. For example, if the value of the sign is 0, it indicates positive, and if the value is 1, it indicates negative.
  • the subsample delta may be configured to take not only 0 and positive values but also negative values. In that case, the signature can be omitted.
  • the subsample delta may be a subframe time offset (subframe_time_offset), which is a parameter indicating the difference between the decoding timing of a sample to which a subframe belongs and the decoding timing of that subframe.
  • subframe_time_offset a subframe time offset
  • a sign may be transmitted, and the subframe time offset may take not only 0 and positive values but also negative values. That is, the subframe time offset may be equivalent to a subsample delta, or may be equivalent to a subsample delta and a sine.
  • the subframe to be processed is displayed before the display timing of the sample to which the subframe to be processed belongs. Can be done. In other words, it is possible to change the order of subframes spanning samples.
  • the first information processing device obtains the sample decoding timing DT[n] and first information from the G-PCC file, and adds the first information to the sample decoding timing DT[n] to obtain the sample decoding timing DT[n] for each subframe.
  • Derive display timing FIG. 10 is a diagram showing an example of how the derivation is performed.
  • the sample decoding timings DT[n] of sample a, sample b, and sample c are 0, 3, and 5, respectively.
  • the subsample delta (subframe time offset) can take a negative value.
  • the subsample delta of the subsample assigned frame number FN#0 is 0.
  • the subsample delta of the subsample assigned frame number FN#1 is 1.
  • the subsample delta of the subsample assigned frame number FN#2 is 2.
  • the subsample delta of the subsample assigned frame number FN#3 is 0.
  • the subsample delta of the subsample assigned frame number FN#4 is -1.
  • the subsample delta of the subsample assigned frame number FN#5 is 2.
  • the subsample delta of the subsample assigned frame number FN#6 is 1.
  • the subsample delta of the subsample assigned frame number FN#7 is 2.
  • the first information processing device derives the subframe display timing (subframe decoding timing) as shown in equation (1) below.
  • the first information processing device displays each subsample according to the subsample display timing derived in this way. By doing so, the first information processing device can display each subframe at the specified timing. In other words, the first information processing device acquires each sample in time for the display timing of each subframe based on the first information regarding the display timing of the subframe stored as metadata in the G-PCC file.
  • the second information processing device stores the first information regarding the subframe display timing in the G-PCC file as metadata, so that the first information processing device can prevent playback delays and frame It is possible to suppress the occurrence of defects and to suppress deterioration in the quality of reproduction and display of 3D data.
  • second information regarding the display order of subframes may be further stored in the file as metadata.
  • the first information processing device can easily grasp the display order of each subframe simply by referring to the second information, without performing the above-mentioned calculations.
  • this second information may include a frame number indicating the display order in the entire sequence, or may include a frame index indicating the display order within the sample.
  • the information regarding the display timing of subframes is based on the second information indicating the display order of subframes and the length of the display period of subframes.
  • the second information may include, for example, a frame number indicating the display order of the subframes in the entire sequence.
  • FIG. 11 is a diagram showing an example of the syntax of the codex-specific parameters of the subsample information box in this case.
  • the frame number and duration are stored.
  • the frame number is as described with reference to FIG. Duration indicates the length of the display period of a subframe.
  • the first information processing device obtains this frame number and the duration of each subframe from the G-PCC file, and displays each subsample (subframe) in the order according to the frame number for the display period indicated by the duration. indicate.
  • FIG. 12 is a diagram showing an example of this situation. In the example of FIG. 12, the display period of each subframe is "1", so each subsample assigned frame number FN#0 to subsample assigned frame number FN#7 is displayed. The timing is from 0 to 7.
  • the first information processing device can display each subframe at the specified timing.
  • the first information processing device acquires each sample in time for the display timing of each subframe based on the first information regarding the display timing of the subframe stored as metadata in the G-PCC file.
  • the second information processing device stores the first information regarding the subframe display timing in the G-PCC file as metadata, so that the first information processing device can prevent playback delays and frame It is possible to suppress the occurrence of defects and to suppress deterioration in the quality of reproduction and display of 3D data.
  • the second information may include, for example, a frame index indicating the display order of subframes within the sample.
  • the first information may be information that directly indicates the display timing of each subframe. Further, the first information may not include information indicating the offset from the sample display timing or the length of the subframe display period, but may include only the subframe display order.
  • the first information may be stored, for example, only in the attribute track where the frame number attribute and the frame index attribute are stored (the first information may not be stored in the geometry track). Furthermore, the first information may be stored only in a geometry track where geometry is stored (the first information may not be stored in an attribute track where attributes are stored). Further, the first information may be stored in both the geometry track and the attribute track (the same information may be stored in the geometry track and the attribute track).
  • the file that stores the G-PCC bitstream is arbitrary and may be other than ISOBMFF.
  • a G-PCC bitstream may be stored in a Matroska Media Container.
  • An example of the main structure of a matryoshka media container is shown in FIG.
  • the first information regarding the display timing of the subframe may be stored as a newly defined element under the Track Entry element.
  • the first information regarding the display timing of the subframe is stored in the system layer of the matryoshka media container. Therefore, the first information processing device can easily obtain the first information (without parsing the G-PCC bitstream) by referring to the system layer. In other words, the first information processing device can easily grasp the display timing of each subframe by referring to the system layer of the matryoshka media container. Therefore, based on the first information, the first information processing device acquires and decodes each sample in time for the display timing of each subframe, and constructs a point cloud for each subframe. , it is possible to suppress the occurrence of playback delays and frame loss, and to suppress deterioration in the quality of 3D data playback and display.
  • the second information processing device stores the first information regarding the subframe display timing in the G-PCC file as metadata, so that the first information processing device can prevent playback delays and frame It is possible to suppress the occurrence of defects and to suppress deterioration in the quality of reproduction and display of 3D data.
  • FIG. 14 is a block diagram illustrating an example of the configuration of a file generation device that is one aspect of an information processing device to which the present technology is applied.
  • the file generation device 300 shown in FIG. 14 is a device that applies G-PCC to encode point cloud data and stores the G-PCC bitstream generated by the encoding in an ISOBMFF (G-PCC file). .
  • the file generation device 300 applies the present technology described above, encodes a combined frame in which a plurality of frames are combined as subframes as a sample to generate encoded data, and generates a bitstream containing the encoded data.
  • the bitstream generates first information regarding the display timing of the subframe based on the bitstream, generates a file that stores the bitstream, and stores the first information as metadata in the file.
  • FIG. 14 shows the main things such as the processing unit and the flow of data, and not all of the things shown in FIG. 14 are shown. That is, in the file generation device 300, there may be a processing unit that is not shown as a block in FIG. 14, or there may be a process or a data flow that is not shown as an arrow or the like in FIG.
  • the file generation device 300 includes a combined frame generation section 311, an extraction section 312, an encoding section 313, a bitstream generation section 314, a file generation section 315, and a file generation section 315.
  • the encoding section 313 includes a geometry encoding section 321, an attribute encoding section 322, and a metadata generation section 323.
  • the combined frame generation unit 311 combines multiple frames of the point cloud input to the file generation device 300 as subframes, and generates a combined frame.
  • the combined frame generation unit 311 supplies a point cloud including the combined frame to the extraction unit 312.
  • the extraction unit 312 extracts geometry and attributes from the point cloud supplied from the combined frame generation unit 311.
  • the extraction unit 312 supplies the extracted geometry data to the geometry encoding unit 321 of the encoding unit 313. Further, the extraction unit 312 supplies the extracted attributes to the attribute encoding unit 322 of the encoding unit 313.
  • the encoding unit 313 encodes the point cloud data.
  • the geometry encoding unit 321 encodes the geometry supplied from the extraction unit 312 and generates a geometry bitstream.
  • the geometry encoding unit 321 supplies the generated geometry bitstream to the metadata generation unit 323.
  • the geometry encoding unit 321 also supplies the generated geometry bitstream to the attribute encoding unit 322.
  • the attribute encoding unit 322 encodes the attributes supplied from the extraction unit 312 and generates an attribute bitstream.
  • the attribute encoding unit 322 supplies the generated attribute bitstream to the metadata generation unit 323.
  • the metadata generation unit 323 refers to the supplied geometry bitstream and attribute bitstream and generates metadata to be stored in the G-PCC bitstream.
  • the metadata generation unit 323 supplies the generated metadata to the bitstream generation unit 314 along with the geometry bitstream and the attribute bitstream. At that time, the encoding unit 313 performs ⁇ 3. Transmission of Information Regarding Display Timing> The present technology described above is applied, and a combined frame in which a plurality of frames are combined as subframes is encoded as a sample to generate encoded data.
  • the bitstream generation unit 314 multiplexes the supplied geometry bitstream, attribute bitstream, and metadata to generate a G-PCC bitstream. That is, the bitstream generation unit 314 generates a bitstream (G-PCC bitstream) including encoded data (geometry bitstream, attribute bitstream, and metadata). At this time, the bitstream generation unit 314 generates ⁇ 3. Transmission of Information Regarding Display Timing>, the present technique described above is applied to generate first information regarding the display timing of a subframe based on the bitstream.
  • this first information may include a subframe time offset (subframe_time_offset) indicating an offset from the sample display timing.
  • the subframe time offset may include a sign.
  • the first information may include second information indicating the display order of the subframes and a duration indicating the length of the display period of the subframes.
  • the second information may include a frame number indicating the display order in the entire sequence.
  • the second information may include a frame index indicating the display order within the sample.
  • the bitstream generation unit 314 supplies the generated G-PCC bitstream and first information to the file generation unit 315.
  • the file generation unit 315 performs ⁇ 3. Transmission of information related to display timing> Applying this technology described above, a G-PCC file (also referred to as a file or content file) that stores the supplied G-PCC bitstream and metadata (first information) is generated. do. At this time, the file generation unit 315 may further store second information regarding the display order of the subframes as metadata in the file. For example, the second information may include a frame number indicating the display order in the entire sequence. Further, the second information may include a frame index indicating the display order within the sample. The file generation unit 315 outputs the G-PCC file generated as described above to the outside of the file generation device 300.
  • the file generation device 300 can achieve ⁇ 3. The same effect as in the case of ⁇ transmission of information regarding display timing'' can be obtained. In other words, the file generation device 300 can suppress reduction in quality of reproduction and display of 3D data.
  • the combined frame generation unit 311 of the file generation device 300 When the file generation process is started, the combined frame generation unit 311 of the file generation device 300 generates a combined frame by combining multiple frames as subframes for the point cloud to be encoded in step S301.
  • step S302 the extraction unit 312 extracts geometry and attributes from the point cloud.
  • step S303 the encoding unit 313 encodes the geometry and attributes extracted in step S302, and generates a geometry bitstream and an attribute bitstream.
  • the encoding unit 313 further generates the metadata.
  • the encoding unit 313 performs ⁇ 3. Transmission of Information Regarding Display Timing> The present technology described above is applied, and a combined frame in which a plurality of frames are combined as subframes is encoded as a sample to generate encoded data.
  • step S304 the bitstream generation unit 314 multiplexes the geometry bitstream, attribute bitstream, and metadata generated in step S303, and generates a G-PCC bitstream. Furthermore, the bitstream generation unit 314 performs ⁇ 3. Transmission of Information Regarding Display Timing>, the present technology described above is applied, and first information regarding the display timing of a subframe is generated based on the G-PCC bitstream.
  • this first information may include a subframe time offset (subframe_time_offset) indicating an offset from the sample display timing.
  • the subframe time offset may include a sign.
  • the first information may include second information indicating the display order of the subframes and a duration indicating the length of the display period of the subframes.
  • the second information may include a frame number indicating the display order in the entire sequence.
  • the second information may include a frame index indicating the display order within the sample.
  • step S305 the file generation unit 315 selects ⁇ 3.
  • Transmission of Information Regarding Display Timing> the present technology described above is applied to generate a G-PCC file (ie, content file) that stores the G-PCC bitstream generated in step S304. Then, the file generation unit 315 performs ⁇ 3.
  • Transmission of Information Regarding Display Timing> the present technology described above is applied, and the first information is stored as metadata (in the meta information storage area) in the G-PCC file.
  • the file generation unit 315 may further store second information regarding the display order of the subframes as metadata in the file.
  • the second information may include a frame number indicating the display order in the entire sequence. Further, the second information may include a frame index indicating the display order within the sample.
  • step S306 the file generation unit 315 outputs the G-PCC file (ie, content file) generated in step S305 to the outside of the file generation device 300.
  • G-PCC file ie, content file
  • step S306 ends, the file generation process ends.
  • the file generation device 300 applies the present technology in file generation processing, generates metadata including spatial configuration information of subgroups and dependency relationship information of subgroups and layer groups, and converts it into G- Store in the system layer of the PCC file. By doing so, the file generation device 300 can perform ⁇ 3. The same effect as in the case of ⁇ transmission of information regarding display timing'' can be obtained. In other words, the file generation device 300 can suppress reduction in quality of reproduction and display of 3D data.
  • FIG. 16 is a block diagram illustrating an example of the configuration of a playback device that is one aspect of an information processing device to which the present technology is applied.
  • a playback device 400 shown in FIG. 16 is a device that decodes a G-PCC bitstream stored in an ISOBMFF (G-PCC file), reconstructs a point cloud, renders it, and generates presentation information.
  • G-PCC G-PCC file
  • the playback device 400 satisfies ⁇ 3. Transmission of information related to display timing> Applying this technology described above, the G-PCC bitstream of the point cloud is extracted from the G-PCC file, the extracted G-PCC bitstream is decoded, and a point cloud is constructed. .
  • FIG. 16 shows the main things such as the processing unit and the flow of data, and not all of the things shown in FIG. 16 are shown. That is, in the playback device 400, there may be a processing unit that is not shown as a block in FIG. 16, or there may be a process or a data flow that is not shown as an arrow or the like in FIG.
  • the playback device 400 includes a file processing section 411, a decoding section 412, and a presentation information generation section 413.
  • the file processing unit 411 obtains the G-PCC file input to the playback device 400 and performs processing regarding the G-PCC file.
  • the file processing section 411 includes an extraction section 421.
  • the extraction unit 421 extracts a G-PCC bitstream from the supplied G-PCC file.
  • the extracting unit 421 performs ⁇ 3. Transmission of Information Regarding Display Timing>
  • the timing is in time for the display timing of the subframe based on the first information regarding the display timing of the subframe stored as metadata in the G-PCC file.
  • the extraction unit 421 supplies the extracted sample and first information to the decoding unit 412.
  • this first information may include a subframe time offset (subframe_time_offset) indicating an offset from the sample display timing.
  • the subframe time offset may include a sign.
  • this G-PCC file may further store second information regarding the display order of subframes as metadata.
  • the extraction unit 421 may extract the samples according to the display order of the subframes indicated by the second information.
  • this second information may include a frame number indicating the display order in the entire sequence.
  • the second information may include a frame index indicating the display order within the sample.
  • the first information may include second information indicating the display order of the subframes and a duration indicating the length of the display period of the subframes.
  • the second information may include a frame number indicating the display order in the entire sequence.
  • the second information may include a frame index indicating the display order within the sample.
  • the decoding unit 412 performs ⁇ 3. Transmission of Information Regarding Display Timing>, the present technique described above is applied and the sample (G-PCC bitstream) is decoded.
  • the decoding unit 412 supplies the obtained sample and first information to the presentation information generation unit 413 (the point cloud construction unit 441 thereof).
  • the decoding unit 412 includes a geometry decoding unit 431 and an attribute decoding unit 432.
  • the geometry decoding unit 431 decodes the geometry bitstream included in the sample supplied from the extraction unit 421 and obtains the geometry of the sample.
  • the geometry decoding unit 431 supplies the geometry of the sample to the attribute decoding unit 432.
  • the geometry decoding unit 431 supplies the geometry of the sample and the first information to the presentation information generation unit 413 (point cloud construction unit 441).
  • the attribute decoding unit 432 uses the geometry supplied from the geometry decoding unit 431 to decode the bitstream of the attribute included in the sample supplied from the extraction unit 421, and obtains the attribute of the sample.
  • the attribute decoding unit 432 supplies the sample attribute to the presentation information generation unit 413 (point cloud construction unit 441).
  • the presentation information generation unit 413 constructs a point cloud using the supplied samples (geometry and attributes), and generates presentation information that is information for presenting (for example, displaying) the point cloud.
  • the presentation information generation section 413 includes a point cloud construction section 441 and a presentation processing section 442.
  • the point cloud construction unit 441 performs ⁇ 3. Transmission of information related to display timing> is applied, and based on the first information supplied from the decoding unit 412, the timing is in time for the display timing of the subframe included in the sample supplied from the decoding unit 412. Then, construct a point cloud for that subframe.
  • the point cloud construction unit 441 supplies the constructed point cloud to the presentation processing unit 442.
  • the presentation processing unit 442 generates presentation information using the supplied point cloud.
  • the presentation processing unit 442 outputs the generated presentation information to the outside of the playback device 400. For example, the presentation information is displayed on a monitor.
  • the playback device 400 achieves ⁇ 3.
  • the same effect as in the case of ⁇ transmission of information regarding display timing'' can be obtained.
  • the playback device 400 can suppress reduction in the quality of playback and display of 3D data.
  • the file processing unit 411 the extraction unit 421) of the playback device 400 determines that ⁇ 3. Transmission of Information Regarding Display Timing>, the present technology described above is applied to acquire information regarding display timing from a track to be played back of a G-PCC file (ie, content file).
  • step S402 the extraction unit 421 of the file processing unit 411 determines that ⁇ 3. Transmission of Information Regarding Display Timing>
  • the timing is in time for the display timing of the subframe based on the first information regarding the display timing of the subframe stored as metadata in the G-PCC file. Then, extract samples including subframes from the G-PCC bitstream stored in the G-PCC file.
  • this first information may include a subframe time offset (subframe_time_offset) indicating an offset from the sample display timing.
  • the subframe time offset may include a sign.
  • this G-PCC file may further store second information regarding the display order of subframes as metadata.
  • the extraction unit 421 may extract the samples according to the display order of the subframes indicated by the second information.
  • this second information may include a frame number indicating the display order in the entire sequence.
  • the second information may include a frame index indicating the display order within the sample.
  • the first information may include second information indicating the display order of the subframes and a duration indicating the length of the display period of the subframes.
  • the second information may include a frame number indicating the display order in the entire sequence.
  • the second information may include a frame index indicating the display order within the sample.
  • step S403 the decoding unit 422 determines that ⁇ 3. Transmission of Information Regarding Display Timing>, the present technique described above is applied, and the sample extracted in step S402 is decoded.
  • step S404 the decoding unit 422 further extracts sub-samples from the decoded samples.
  • step S405 the point cloud construction unit 441 determines that ⁇ 3. Transmission of information related to display timing> is applied, and based on the first information, the point cloud of the subframe included in the sample decoded in step S403 is transmitted in time for the display timing of the subframe included in the sample. Build.
  • step S406 the presentation processing unit 442 generates presentation information by, for example, rendering using the point cloud constructed in step S405.
  • step S407 the presentation processing unit 442 supplies the presentation information to the outside of the playback device 400 and causes it to be presented.
  • step S407 When the process of step S407 is finished, the playback process is finished.
  • the playback device 400 By executing each process as described above, the playback device 400 achieves ⁇ 3. The same effect as in the case of ⁇ transmission of information regarding display timing'' can be obtained. In other words, the playback device 400 can suppress reduction in the quality of playback and display of 3D data.
  • the series of processes described above can be executed by hardware or software.
  • the programs that make up the software are installed on the computer.
  • the computer includes a computer built into dedicated hardware and, for example, a general-purpose personal computer that can execute various functions by installing various programs.
  • FIG. 18 is a block diagram showing an example of the hardware configuration of a computer that executes the above-described series of processes using a program.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • An input/output interface 910 is also connected to the bus 904.
  • An input section 911 , an output section 912 , a storage section 913 , a communication section 914 , and a drive 915 are connected to the input/output interface 910 .
  • the input unit 911 includes, for example, a keyboard, a mouse, a microphone, a touch panel, an input terminal, and the like.
  • the output unit 912 includes, for example, a display, a speaker, an output terminal, and the like.
  • the storage unit 913 includes, for example, a hard disk, a RAM disk, a nonvolatile memory, and the like.
  • the communication unit 914 includes, for example, a network interface.
  • the drive 915 drives a removable medium 921 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 901 executes the above-described series by, for example, loading a program stored in the storage unit 913 into the RAM 903 via the input/output interface 910 and the bus 904 and executing it. processing is performed.
  • the RAM 903 also appropriately stores data necessary for the CPU 901 to execute various processes.
  • a program executed by a computer can be applied by being recorded on a removable medium 921 such as a package medium, for example.
  • the program can be installed in the storage unit 913 via the input/output interface 910 by attaching the removable medium 921 to the drive 915.
  • the program may also be provided via wired or wireless transmission media, such as a local area network, the Internet, or digital satellite broadcasting.
  • the program can be received by the communication unit 914 and installed in the storage unit 913.
  • this program can also be installed in the ROM 902 or storage unit 913 in advance.
  • the present technology is mainly applied to a method of storing a G-PCC bitstream in an ISOBMFF
  • the present technology can be applied to any object and is not limited to the above-mentioned example.
  • the format of the file storing the G-PCC bitstream is arbitrary and is not limited to the above-mentioned ISOBMFF or Matryoshka media container.
  • the encoding/decoding method for 3D data is arbitrary and is not limited to G-PCC.
  • the format of the 3D data is arbitrary and may be other than point cloud.
  • part or all of the specifications may differ from the examples described above, as long as they do not contradict the features of the present technology described above. Further, some of the processes and specifications described above may be omitted.
  • the present technology can be applied to any configuration.
  • the present technology can be applied to various electronic devices.
  • the present technology can be applied to a processor (e.g., video processor) as a system LSI (Large Scale Integration), a module (e.g., video module) that uses multiple processors, etc., a unit (e.g., video unit) that uses multiple modules, etc.
  • a processor e.g., video processor
  • the present invention can be implemented as a part of a device, such as a set (for example, a video set), which is a unit with additional functions.
  • 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 multiple devices share and jointly perform processing via a network.
  • this technology will be implemented in a cloud service that provides services related to images (moving images) to any terminal such as a computer, AV (Audio Visual) equipment, mobile information processing terminal, IoT (Internet of Things) device, etc. You may also do so.
  • a system refers to a collection of multiple components (devices, modules (components), etc.), and it does not matter whether all the components are in the same housing or not. Therefore, multiple devices housed in separate casings and connected via a network, and one device with multiple modules housed in one casing are both systems. .
  • 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 farming, mining, beauty, factories, home appliances, weather, and nature monitoring. . Moreover, its use is also arbitrary.
  • the present technology can be applied to systems and devices used for providing ornamental content and the like. Further, for example, the present technology can be applied to systems and devices used for transportation, such as traffic situation supervision and automatic driving control. Furthermore, for example, the present technology can also be applied to systems and devices used for security. Furthermore, for example, the present technology can be applied to systems and devices used for automatic control of machines and the like. Furthermore, for example, the present technology can also be applied to systems and devices used in agriculture and livestock farming. Further, the present technology can also be applied to systems and devices that monitor natural conditions such as volcanoes, forests, and oceans, and wildlife. Furthermore, for example, the present technology can also be applied to systems and devices used for sports.
  • the term “flag” refers to information for identifying multiple states, and includes not only information used to identify two states, true (1) or false (0), but also information for identifying three or more states. Information that can identify the state is also included. Therefore, the value that this "flag” can take may be, for example, a binary value of 1/0, or a value of three or more. That is, the number of bits constituting this "flag" is arbitrary, and may be 1 bit or multiple bits.
  • identification information can be assumed not only to be included in the bitstream, but also to include differential information of the identification information with respect to certain reference information, so this specification
  • flags can be assumed not only to be included in the bitstream, but also to include differential information of the identification information with respect to certain reference information, so this specification
  • flags and “identification information” include not only that information but also difference information with respect to reference information.
  • encoded data may be transmitted or recorded in any form as long as it is associated with encoded data.
  • the term "associate" means, for example, that when processing one data, the data of the other can be used (linked). In other words, data that are associated with each other may be combined into one piece of data, or may be made into individual pieces of data.
  • information associated with encoded data (image) may be transmitted on a transmission path different from that of the encoded data (image).
  • information associated with encoded data (image) may be recorded on a different recording medium (or in a different recording area of the same recording medium) than the encoded data (image). good.
  • this "association" may be a part of the data instead of the entire data.
  • an image and information corresponding to the image may be associated with each other in arbitrary units such as multiple frames, one frame, or a portion within a frame.
  • embodiments of the present technology are not limited to the embodiments described above, and various changes can be made without departing from the gist of the present technology.
  • the configuration described as one device (or processing section) may be divided and configured as a plurality of devices (or processing sections).
  • the configurations described above as a plurality of devices (or processing units) may be configured as one device (or processing unit).
  • part of the configuration of one device (or processing unit) may be included in the configuration of another device (or other processing unit) as long as the configuration and operation of the entire system are substantially the same. .
  • the above-mentioned program may be executed on any device.
  • the device has the necessary functions (functional blocks, etc.) and can obtain the necessary information.
  • each step of one flowchart may be executed by one device, or may be executed by multiple devices.
  • the multiple processes may be executed by one device, or may be shared and executed by multiple devices.
  • multiple processes included in one step can be executed as multiple steps.
  • processes described as multiple steps can also be executed together as one step.
  • the processing of the steps described in the program may be executed chronologically in the order described in this specification, or may be executed in parallel, or may be executed in parallel. It may also be configured to be executed individually at necessary timings, such as when a request is made. In other words, the processing of each step may be executed in a different order from the order described above, unless a contradiction occurs. Furthermore, the processing of the step of writing this program may be executed in parallel with the processing of other programs, or may be executed in combination with the processing of other programs.
  • the present technology can also have the following configuration.
  • (1) Based on first information regarding the display timing of the subframe stored as metadata in the file, the subframe is included from the bitstream stored in the file at a timing in time for the display timing of the subframe. an extraction unit that extracts a sample; a decoding unit that decodes the extracted sample; An information processing apparatus comprising: a construction unit that constructs a point cloud of the subframe based on the first information in time for displaying the subframe included in the decoded sample.
  • (2) The information processing device according to (1), wherein the first information includes subframe_time_offset indicating an offset from the display timing of the sample.
  • (3) The information processing device according to (2), wherein the subframe_time_offset includes a code.
  • the file further stores second information regarding the display order of the subframes as the metadata, The information processing device according to (2) or (3), wherein the extraction unit extracts the samples according to the display order of the subframes indicated by the second information.
  • the first information includes second information indicating the display order of the subframes and duration indicating the length of the display period of the subframes.
  • the information processing device according to (7), wherein the second information includes a frame number indicating a display order in the entire sequence.
  • the information processing device includes a frame index indicating a display order within the sample.
  • the information processing device according to any one of (1) to (9), wherein the file is ISOBMFF (International Organization for Standardization Base Media File Format), and the first information is stored in a SubSampleInformationBox.
  • the information processing device according to any one of (1) to (9), wherein the file is ISOBMFF (International Organization for Standardization Base Media File Format), and the first information is stored in a SampleGroupBox.
  • the subframe Based on first information regarding the display timing of the subframe stored as metadata in the file, the subframe is included from the bitstream stored in the file at a timing in time for the display timing of the subframe. extract the sample, decoding the extracted sample; An information processing method comprising constructing a point cloud of the subframe based on the first information at a timing that is in time for displaying the subframe included in the decoded sample.
  • an encoding unit that generates encoded data by encoding a combined frame in which a plurality of frames are combined as subframes as samples; a bitstream generation unit that generates a bitstream including the encoded data and generates first information regarding display timing of the subframe based on the bitstream;
  • An information processing device comprising: a file generation unit that generates a file that stores the bitstream, and stores the first information as metadata in the file.
  • the first information includes subframe_time_offset indicating an offset from the display timing of the sample.
  • the subframe_time_offset includes a code.
  • the information processing device according to (22) or (23), wherein the file generation unit further stores second information regarding the display order of the subframes as the metadata in the file.
  • the second information includes a frame number indicating a display order in the entire sequence.
  • the second information includes a frame index indicating a display order within the sample.
  • the first information includes second information indicating the display order of the subframes and duration indicating the length of the display period of the subframes. The information processing device described.
  • the information processing device includes a frame number indicating a display order in the entire sequence.
  • the information processing device according to (27), wherein the second information includes a frame index indicating a display order within the sample.
  • the file generation unit is ISOBMFF (International Organization for Standardization Base Media File Format), and stores the first information in a SubSampleInformationBox of the file. Processing equipment.
  • the file generation unit is ISOBMFF (International Organization for Standardization Base Media File Format), and stores the first information in a SampleGroupBox of the file. Processing equipment.
  • (32) Generate encoded data by encoding a combined frame, which is a combination of multiple frames as subframes, as a sample; generating a bitstream including the encoded data; generating first information regarding display timing of the subframe based on the bitstream;
  • An information processing method comprising: generating a file that stores the bitstream, and storing the first information as metadata in the file.
  • 300 File generation device 311 Combined frame generation unit, 312 Extraction unit, 313 Encoding unit, 314 Bitstream generation unit, 315 File generation unit, 321 Geometry encoding unit, 322 Attribute encoding unit, 323 Meta Data generation section, 400 Playback device, 411 File processing unit, 412 Decoding unit, 413 Presentation information generation unit, 421 Extraction unit, 431 Geometry decoding unit, 432 Attribute decoding unit, 441 Point cloud construction unit, 442 Presentation processing unit, 900 computer

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本開示は、3Dデータの再生表示の品質の低減を抑制することができるようにする情報処理装置および方法に関する。 ファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、サブフレームの表示タイミングに間に合うタイミングで、ファイルに格納されるビットストリームからそのサブフレームを含むサンプルを抽出し、その抽出されたサンプルを復号し、第1の情報に基づいて、復号されたサンプルに含まれるサブフレームの表示タイミングに間に合うタイミングで、そのサブフレームのポイントクラウドを構築する。本開示は、例えば、情報処理装置、または情報処理方法等に適用することができる。

Description

情報処理装置および方法
 本開示は、情報処理装置および方法に関し、特に、3Dデータの再生表示の品質の低減を抑制することができるようにした情報処理装置および方法に関する。
 従来、3次元空間の位置情報と属性情報(例えば色や反射率等)を持つ点の集合であるポイントクラウド(point cloud)について、3次元形状を示すジオメトリ(geometry)と属性情報を示すアトリビュート(attribute)に分けて符号化する符号化技術であるG-PCC(Geometry-based Point Cloud Compression)がMPEG-I Part 9(ISO/IEC(International Organization for Standardization / International Electrotechnical Commission) 23090-9)で規格化作業中である(例えば、非特許文献1参照)。
 また、動画圧縮の国際標準技術MPEG-4(Moving Picture Experts Group - 4)のファイルコンテナ仕様であるISOBMFF(International Organization for Standardization Base Media File Format)がある(例えば、非特許文献2参照)。
 さらに、このG-PCCで符号化された符号化データのビットストリームであるG-PCCビットストリームのローカルストレージからの再生処理やネットワーク配信の効率化を目的とし、G-PCCビットストリームをISOBMFFのファイルに格納する方法がMPEG-I Part 18(ISO/IEC 23090-18)で規格化作業中である(例えば、非特許文献3参照)。
 ところで、ポイントクラウドを符号化する際に、ポイントクラウドの複数のフレームをサブフレームとして組み合わせたコンバインドフレームを符号化し、サンプルとする方法があった(例えば、非特許文献4)。
"Information technology - MPEG-I (Coded Representation of Immersive Media) - Part 9: Geometry-based Point Cloud Compression" ("Text of ISO/IEC FDIS 23090-9 Geometry-based Point Cloud Compression (draft 20)"), ISO/IEC 23090-9:2022(E), MDS19617, 2022/3/13 "Information technology - Coding of audio-visual objects - Part 12: ISO base media file format, TECHNICAL CORRIGENDUM 1", ISO/IEC FDIS 14496-12:2020(E), ISO/IEC 14496-12:2015/Cor.1, ISO/IEC JTC 1/SC 29/WG 11, 2016/6/3 Sejin Oh, Ryohei Takahashi, Youngkwon Lim, "Draft text of ISO/IEC FDIS 23090-18 Carriage of Geometry-based Point Cloud Compression Data", ISO/IEC JTC 1/SC 29/WG 03 N0311, MDS20565, 2021/10/2 "G-PCC codec description", ISO/IEC JTC 1/SC 29/WG 7 N 0215, MDS20983, 2021/12/29
 しかしながら、非特許文献4に記載の方法では、デコーダは、ビットストリームを復号する前に各サンプルをどのようなタイミングで取得し、復号すればよいかわからなかった。そのため、例えば再生処理において遅延が生じたり、表示においてフレームの欠損が生じたりする等、3Dデータの再生表示の品質が低減するおそれがあった。
 本開示は、このような状況に鑑みてなされたものであり、3Dデータの再生表示の品質の低減を抑制することができるようにするものである。
 本技術の一側面の情報処理装置は、ファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、前記サブフレームの表示タイミングに間に合うタイミングで、前記ファイルに格納されるビットストリームから前記サブフレームを含むサンプルを抽出する抽出部と、抽出された前記サンプルを復号する復号部と、前記第1の情報に基づいて、復号された前記サンプルに含まれる前記サブフレームの表示タイミングに間に合うタイミングで、前記サブフレームのポイントクラウドを構築する構築部とを備える情報処理装置である。
 本技術の一側面の情報処理方法は、ファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、前記サブフレームの表示タイミングに間に合うタイミングで、前記ファイルに格納されるビットストリームから前記サブフレームを含むサンプルを抽出し、抽出された前記サンプルを復号し、前記第1の情報に基づいて、復号された前記サンプルに含まれる前記サブフレームの表示タイミングに間に合うタイミングで、前記サブフレームのポイントクラウドを構築する情報処理方法である。
 本技術の他の側面の情報処理装置は、複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成する符号化部と、前記符号化データを含むビットストリームを生成し、前記ビットストリームに基づいて前記サブフレームの表示タイミングに関する第1の情報を生成するビットストリーム生成部と、前記ビットストリームを格納するファイルを生成し、前記ファイルにメタデータとして前記第1の情報を格納するファイル生成部とを備える情報処理装置である。
 本技術の他の側面の情報処理方法は、複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成し、前記符号化データを含むビットストリームを生成し、前記ビットストリームに基づいて前記サブフレームの表示タイミングに関する第1の情報を生成し、前記ビットストリームを格納するファイルを生成し、前記ファイルにメタデータとして前記第1の情報を格納する情報処理方法である。
 本技術の一側面の情報処理装置および方法においては、ファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、そのサブフレームの表示タイミングに間に合うタイミングで、ファイルに格納されるビットストリームからサブフレームを含むサンプルが抽出され、その抽出されたサンプルが復号され、その第1の情報に基づいて、その復号されたサンプルに含まれるサブフレームの表示タイミングに間に合うタイミングで、そのサブフレームのポイントクラウドが構築される。
 本技術の他の側面の情報処理装置および方法においては、複数のフレームをサブフレームとして組み合わせたコンバインドフレームがサンプルとして符号化されて符号化データが生成され、その符号化データを含むビットストリームが生成され、そのビットストリームに基づいてサブフレームの表示タイミングに関する第1の情報が生成され、そのビットストリームを格納するファイルが生成され、そのファイルにメタデータとして第1の情報が格納される。
G-PCCビットストリームの構成例を示す図である。 コンバインドフレームについて説明する図である。 frame number attributeについて説明する図である。 frame index attributeについて説明する図である。 G-PCCファイルの構造の例を示す図である。 SubSampleInformationBoxの例を示す図である。 codec_specific_parametersの例を示す図である。 符号化・復号方法の例を示す図である。 codec_specific_parametersの例を示す図である。 subsample_deltaの適用例を示す図である。 codec_specific_parametersの例を示す図である。 durationの適用例を示す図である。 マトリョーシカメディアコンテナの構成例を示す図である。 ファイル生成装置の主な構成例を示すブロック図である。 ファイル生成処理の流れの例を示すフローチャートである。 再生装置の主な構成例を示すブロック図である。 再生処理の流れの例を示すフローチャートである。 コンピュータの主な構成例を示すブロック図である。
 以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
 1.技術内容・技術用語をサポートする文献等
 2.コンバインドフレームの再生
 3.表示タイミングに関する情報の伝送
 4.第1の実施の形態(ファイル生成装置、再生装置)
 5.付記
 <1.技術内容・技術用語をサポートする文献等>
 本技術で開示される範囲は、実施の形態に記載されている内容だけではなく、出願当時において公知となっている以下の非特許文献および特許文献等に記載されている内容や、以下の非特許文献および特許文献等において参照されている他の文献の内容等も含まれる。
 非特許文献1:(上述)
 非特許文献2:(上述)
 非特許文献3:(上述)
 非特許文献4:(上述)
 非特許文献5:https://www.matroska.org/index.html
 つまり、上述の非特許文献および特許文献等に記載されている内容や、上述の非特許文献および特許文献等において参照されている他の文献の内容等も、サポート要件を判断する際の根拠となる。
 <2.コンバインドフレームの再生>
  <ポイントクラウド>
 従来、点の位置情報や属性情報等により3次元構造を表すポイントクラウド(Point cloud)等の3Dデータが存在した。
 例えばポイントクラウドの場合、立体構造物(3次元形状のオブジェクト)を多数の点の集合として表現する。ポイントクラウドは、各点の位置情報(ジオメトリ(geometry)とも称する)と属性情報(アトリビュート(attribute)とも称する)とにより構成される。アトリビュートは任意の情報を含むことができる。例えば、各ポイントの色情報、反射率情報、法線情報等がアトリビュートに含まれるようにしてもよい。このようにポイントクラウドは、データ構造が比較的単純であるとともに、十分に多くの点を用いることにより任意の立体構造物を十分な精度で表現することができる。
  <G-PCCの概要>
 非特許文献1には、このポイントクラウドについて、ジオメトリとアトリビュートに分けて符号化する、Geometry-based Point Cloud Compression(G-PCC)という符号化技術が開示された。G-PCCは、MPEG-I Part 9 (ISO/IEC 23090-9) で規格化作業中である。
 ジオメトリの圧縮には、例えばオクツリー(octree)符号化が適用される。オクツリー符号化は、ジオメトリのデータ構造を8分木(オクツリー)に変換して符号化する符号化方式である。
 この場合、ジオメトリは、階層構造の直方体形状(立方体形状を含む)の3次元領域であるボクセル(Voxel)を用いて表現される。つまり、ボクセル毎にポイントが存在するか否かが表現される。ポイントが存在するボクセルは分割され、その分割後の小さい領域(下位のボクセル)においてポイントの有無が表現される。ポイントが存在するボクセルについて、このような分割が最下位層まで再帰的に繰り返されることにより、ボクセルの階層構造が形成される。
 そして、オクツリーは、このようなボクセル表現(ボクセル毎のポイントの有無)を8分木として表現する。オクツリーの各ノードは、ボクセル表現の各ボクセルに対応する。例えば、ポイントが存在するボクセルに対応するノードは値「1」として表現され、ポイントが存在しないボクセルに対応するノードは値「0」として表現される。ポイントが存在するボクセルに対応するノード(値「1」のノード)には、子ノード(1つ下位のノード)が形成される。
 以上のようにジオメトリが符号化されて生成される符号化データのビットストリームをジオメトリビットストリームとも称する。
 また、アトリビュートの圧縮には、Predicting Weight Lifting,Region Adaptive Hierarchical Transform (RAHT)、またはFix Weight Lifting等の手法が適用される。アトリビュートが符号化されて生成される符号化データのビットストリームをアトリビュートビットストリームとも称する。また、ジオメトリビットストリームとアトリビュートビットストリームを1本にまとめたビットストリームをG-PCCビットストリームとも称する。
  <ビットストリームの構造>
 このようなG-PCCビットストリームの構造の例を図1に示す。図1において、各矩形領域は、1つのType-length-value encapsulation structure(tlv_encapsulation())を示す。
 SPS(Sequence Parameter Set)は、シーケンスパラメータセットが格納される領域を示す。GPS(s)(Geometry Parameter Set)は、ジオメトリパラメータセットが格納される領域を示す。APS(s)(Attribute Parameter Set)は、アトリビュートパラメータセットが格納される領域を示す。なお、GPSおよびAPSは、スライス毎に存在してもよい。GPS(s)およびAPS(s)は、sps_idを用いてSPSと関連付けられる。
 ジオメトリデータユニット(geometry data unit)は、1スライスのジオメトリのデータが格納される領域を示す。ジオメトリデータユニットは、gps_idを用いてGPS(s)と関連付けられる。アトリビュートデータユニット(attribute data unit(s))は、1スライスのアトリビュートのデータが格納される領域を示す。1つのジオメトリデータユニットに対して複数のアトリビュートデータユニットが存在してもよい。アトリビュートデータユニットは、aps_idを用いてAPS(s)と関連付けられる。
 なお、互いに同一のスライスを構成するジオメトリデータユニットとアトリビュートデータユニットは、slice_idで関連付けられる。また、スライス間でポイントが重複してもよい。また、スライスには、他のスライスと復号の際の依存関係がないインディペンデントスライス(independent slice)と、その依存関係があるディペンデントスライス(dependent slice)とがある。
  <コンバインドフレーム>
 ところで、ポイントクラウドは、動画像のように時間方向に変化し得る(動的とも称する)。G-PCCでは、このような所定の期間の動的なポイントクラウドを符号化することができた。このようなポイントクラウドは、動画像のように、互いに異なる時刻の複数のフレーム(ポイントクラウドフレームとも称する)により構成される。例えばジオメトリの場合、各フレームのオクツリーがそれぞれ(フレーム毎に)符号化された。
 非特許文献4には、複数のフレームを1つにまとめて符号化する方法が開示された。つまり、エンコーダは、図2に示されるように、複数のフレームのオクツリーをサブフレームとして組み合わせて1つのコンバインドフレーム(Combined Frame)を生成し、そのコンバインドフレームを通常のフレームのように符号化し、サンプルとした。つまり、コンバインドフレームのポイントクラウドは、各サブフレームのポイントクラウドを組み合わせたものであり、各サブフレームのポイントを含む。つまり、コンバインドフレームのオクツリーは、各サブフレームのオクツリーを組み合わせたものであり、各サブフレームのオクツリーの値「1」のノードを含む。
 なお、図2の例では、2つのフレーム(Frame1およびFrame2)を組み合わせているが、組み合わせる(1つのコンバインドフレームに含める)フレーム数は任意である。このコンバインドフレームに対して、組み合わされた各フレーム(図2の例の場合、Frame1およびFrame2)をサブフレームとも称する。
 このようにすることにより、フレーム毎に行われるデコーダの初期化(decoder initialization)の回数を削減することができ、復号処理の負荷の増大を抑制することができる。例えば、処理能力が比較的低いクライアント装置等において復号処理を行う場合等に有用である。また、オクツリーは、サブフレーム間で冗長性を有する場合がある。特に上位層においては冗長となる可能性が高い。このようなオクツリーの冗長性により符号化効率が低減するおそれがある。サブフレームを組み合わせることにより、このようなオクツリーの冗長性を低減することができ、符号化効率の低減を抑制することができる。
 なお、このサブフレームはどのように組み合わせてもよい。例えば、組み合わせるサブフレームの数は任意である。また、組み合わせる際のサブフレームの並び順は、サブフレームの表示順でなくてもよい。例えば、連続しないサブフレームを組み合わせることもあり得る。また、3Dデータの場合、再生時のフレーム(サブフレーム)の表示期間の長さは、アプリケーションに依存し、一定でなくてもよい(フレーム(サブフレーム)によって異なってもよい)。
  <サブフレームの再生>
 再生装置は、このようなコンバインドフレームを各サブフレームに分け、サブフレーム毎に再生する(各サブフレームを通常のフレームとして再生する)。つまり、再生装置は各サブフレームをどのような順で再生するかを把握する必要がある。そこで、非特許文献4には、各サブフレームの表示順を示す情報を伝送する方法(フレームナンバーアトリビュートとフレームインデックスアトリビュート)が開示された。
 フレームナンバーアトリビュート(frame number attribute)は、アトリビュートとして、各サブフレームに対して、シーケンス全体における表示順を示すフレームナンバー(frame number)を付与する方法である。図3の例の場合、各スライス(フレームに相当)のアトリビュートデータユニット(ADU)にフレームナンバー(FN#x(xは自然数))が付与されている。再生装置は、各サブフレームのポイントクラウドの画像をこのフレームナンバーに示される順に表示させるように(つまり、FN#0、FN#1、FN#2、FN#3、FN#4、FN#5、FN#6、FN#7・・・の順に表示させるように)、コンバインドフレームの復号および各サブフレームの再生を行う。
 図3に示されるように、このフレームナンバーアトリビュートの場合、サブフレームの順序の入れ替えは、コンバインドフレーム内だけでなく、コンバインドフレームを跨いでも行うことができる。例えば、図3の場合、FN#1のサブフレームとFN#2のサブフレームの順序が入れ替えられ、FN#4のサブフレームとFN#5のサブフレームの順序が入れ替えられている。つまり、FN#1のサブフレームとFN#2のサブフレームは表示順と異なる順序で組み合わせられ、サンプルa(sample a)のコンバインドフレームを形成している。つまり、コンバインドフレーム内において順序が入れ替えられている。
 したがって、フレームナンバーアトリビュートの場合、再生装置は、デコード時刻に従い、処理対象のサンプルを復号し、フレームナンバーに従ってサブフレームを表示し、次に表示すべきサブフレームがこれまでに復号されたサンプル内に存在しない場合、前方もしくは後方のサンプルを復号する、といった処理を繰り返す。
 これに対して、FN#4のサブフレームとFN#5のサブフレームは、その順序を入れ替えることにより、組み合わせる相手(サブフレーム)が変更されている。例えば、FN#4のサブフレームはFN#3のサブフレームと組み合わせられ、サンプルb(sample b)のコンバインドフレームを形成している。また、FN#5のサブフレームは、FN#6のサブフレームおよびFN#7のサブフレームと組み合わせられ、サンプルc(sample c)のコンバインドフレームを形成している。つまり、コンバインドフレームを跨いで順序が入れ替えられている。このように、組み合わせるサブフレームを変えることで符号化効率の低減を抑制することができる場合がある。
 フレームインデックスアトリビュート(frame index attribute)は、アトリビュートとして、各サブフレームに対して、コンバインドフレーム内における表示順を示すフレームインデックス(frame index)を付与する方法である。図4の例の場合、各スライス(フレームに相当)のアトリビュートデータユニット(ADU)にフレームインデックス(FI#x(xは自然数))が付与されている。再生装置は、サンプル(コンバインドフレーム)毎に各サブフレームのポイントクラウドの画像をこのフレームインデックスに示される順に表示させるように、コンバインドフレームの復号および各サブフレームの再生を行う。
 図4に示されるように、このフレームインデックスアトリビュートの場合、サブフレームの順序の入れ替えは、コンバインドフレーム内において行うことができる。例えば、図4の場合、FI#1のサブフレームとFI#2のサブフレームの順序が入れ替えられている。つまり、FN#1のサブフレームとFN#2のサブフレームは表示順と異なる順序で組み合わせられ、サンプルa(sample a)のコンバインドフレームを形成している。つまり、コンバインドフレーム内において順序が入れ替えられている。
 この場合、再生装置は、サンプルa(sample a)のFN#0、FN#1、FN#2、サンプルb(sample b)のFN#0、FN#1、サンプルc(sample c)のFN#0、FN#1、FN#2・・・の順に各サブフレームを表示させる。
 したがって、フレームインデックスアトリビュートの場合、再生装置は、デコード時刻に従い、処理対象のサンプルを復号し、そのサンプル内のサブフレームをフレームインデックスに従って適宜並び替えて表示する、といった処理を繰り返す。
  <ISOBMFF>
 非特許文献2には、動画圧縮の国際標準技術MPEG-4(Moving Picture Experts Group - 4)のファイルコンテナ仕様であるISOBMFF(International Organization for Standardization Base Media File Format)が開示された。
  <G-PCCビットストリームのISOBMFFへの格納>
 非特許文献3には、このG-PCCで符号化されたビットストリームのローカルストレージからの再生処理やネットワーク配信の効率化を目的とし、G-PCCビットストリームをISOBMFFに格納する方法が開示された。この方法は、MPEG-I Part 18(ISO/IEC 23090-18)で規格化作業中である。以下において、G-PCCビットストリームをISOBMFFに格納したものをG-PCCファイルと称する。
 図5は、G-PCCファイル構造の例を示す図である。G-PCCファイルのメタデータを格納する領域であるトラックボックス(TrackBox)内のGPCCサンプルエントリ(GPCCSampleEntry)には、GPCCデコーダコンフィグレーションレコード(GPCCDecoderConfigurationRecord)が設けられている。そのGPCCデコーダコンフィグレーションレコードには、例えば、シーケンスパラメータセット(SPS)が格納される。そのGPCCデコーダコンフィグレーションレコードには、さらに、サンプルエントリタイプ(sample entry type)に応じてジオメトリパラメータセット(GPS)、アトリビュートパラメータセット(APS)、タイルインベントリを格納し得る。
 メディアデータボックス(MediaDataBox)のサンプル(sample)は、1ポイントクラウドフレームに相当するジオメトリとアトリビュートを格納し得る。また、このサンプルは、サンプルエントリタイプに応じてジオメトリパラメータセット、アトリビュートパラメータセット、タイルインベントリを格納し得る。
 なお、G-PCCファイルには、互いに対応するジオメトリとアトリビュートを1つのトラックに格納するシングルトラック方式(single track encapsulation)と、互いに対応するジオメトリとアトリビュートを互いに異なるトラックに格納するマルチトラック方式の2つの手法が規定されている。
  <SubSampleInformationBox>
 サンプル中の、連続した特定バイト(byte)領域をサブサンプル(subsample)とも称する。このサブサンプルの定義は符号化コーデック毎に決まっており、例えばHEVC((High Efficiency Video Coding))の場合、ナルユニット(NAL unit)がサブサンプルとなる。非特許文献4に記載の方法の場合、コンバインドフレームがサンプルとなり、そのコンバインドフレームを構成する各ポイントクラウドフレーム(サブフレーム)がサブサンプルとなる。G-PCCファイルのメタデータを格納する領域には、サブサンプルインフォメーションボックス(SubSampleInformationBox)が設けられ、そこでは、そのサブサンプル毎に(サブサンプルに対して)情報を付加することができる。
 図6は、そのサブサンプルインフォメーションボックスのシンタックスの例を示す。図6の例の場合、このサブサンプルインフォメーションボックスにおいて、サンプルデルタ(sample_delta)、サブサンプルカウント(subsample_count)、サブサンプルサイズ(subsample_size)、コーデックスペシフィックパラメータ(codec_specific_parameters)等が定義される。サンプルデルタ(sample_delta)は、サブサンプルを有するサンプルを指定するパラメータである。また、サブサンプルカウント(subsample_count)は、サブサンプル数を示すパラメータである。また、サブサンプルサイズ(subsample_size)は、サブサンプルのサイズを示すパラメータである。また、コーデックスペシフィックパラメータ(codec_specific_parameters)では、コーデック毎に決まるサブサンプル(subsample)付加情報が定義される。
 図7は、そのコーデックスペシフィックパラメータのシンタックスの例を示す。図7に示されるように、例えばフラグの値が「0」の場合(flag == 0)、1サブサンプル(G-PCC unit based subsamples. 1 subsample)は1つのGPCCユニット(G-PCC unit)を含む。また、コーデックスペシフィックパラメータでは、GPCCユニットのペイロードタイプ(payloadType(例えば、ジオメトリgeometryやアトリビュート(attribute)等))が格納される。例えば、ペイロード(payload)がアトリビュートデータ(attribute data)である場合(payloadType == 4)、アトリビュート(attribute)識別子であるattrIdxが格納される。
 フラグの値が「1」の場合(flag == 1)、1サブサンプル(Tile based subsamples. 1 subsample)は、1つのGPCCタイル(1GPCC tile)に相当する単数または複数の連続するGPCCユニットを含むか、パラメータセット、タイルインベントリ、フレームバウンダリマーカを含む単数または複数の連続するGPCCユニットを含む。コーデックスペシフィックパラメータでは、サブサンプル(subsample)がGPCCタイルである場合(tile_data==1)、タイル(tile)識別子であるtile_idが格納される。
  <表示タイミング>
 しかしながら、非特許文献4に記載の方法では、G-PCCファイルにおいては、メタデータとして各サブフレームの表示タイミングが明示されなかった。そのため、デコーダは、ビットストリームを復号する前に各サブフレームの表示タイミングを把握することが困難であった。
 上述したように、各ポイントクラウドフレームの表示期間の長さを任意に定義することができる。また、非特許文献4に記載のコンバインドフレームを適用する場合、1サンプルに任意の数のサブフレームを格納することができる。そのため、各コンバインドフレームの表示期間の長さも一定とは限らない。また、上述のようにサブフレームの順序を入れ替えて組み合わせることができるため、サンプルの先頭のサブフレームが最初に表示されるとは限らない。特にフレームナンバーアトリビュートの場合、サンプルを跨いでサブフレームを入れ替えることができるため、あるサンプル内の全てのサブフレームを表示する前にその他のサンプルのサブフレームを表示する場合がある。これらのように、各ポイントクラウドフレームの表示タイミングは自明ではない。
 デコーダは、ビットストリームの各サンプルを、そのサンプルに含まれるサブフレームの最初の表示タイミングよりも前に復号しなければならない。しかしながら、デコーダはG-PCCファイルから各サブフレームの表示タイミングを示す情報を得ることは困難であり、かつ、上述のように自明でもなかった。つまり、デコーダは、各サンプルをどのようなタイミングで(いつまでに)取得し、復号すればよいかわからなかった。そのため、例えば再生処理が遅延し、表示においてフレームの欠損が生じるおそれがあった。また、事前に全てのサンプルを復号してから再生を開始する方法も考えられるが、その場合、表示が開始されるまでの遅延が増大するおそれがあった。また、付言するに、デコーダがビットストリームを復号する前にファイルの再生可否の判断をすることも困難であった。つまり、3Dデータの再生表示の品質が低減するおそれがあった。
 <3.表示タイミングに関する情報の伝送>
  <方法1>
 そこで、図8の表の最上段に示されるように、サブフレームの表示タイミングに関する情報をファイルのメタデータとして格納するようにする(方法1)。
 例えば、情報処理装置(第1の情報処理装置とも称する)が、ファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、サブフレームの表示タイミングに間に合うタイミングで、ファイルに格納されるビットストリームからサブフレームを含むサンプルを抽出する抽出部と、その抽出されたサンプルを復号する復号部と、第1の情報に基づいて、その復号されたサンプルに含まれるサブフレームの表示タイミングに間に合うタイミングで、サブフレームのポイントクラウドを構築する構築部とを備えてもよい。また、情報処理方法(第1の情報処理方法とも称する)において、ファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、サブフレームの表示タイミングに間に合うタイミングで、ファイルに格納されるビットストリームからサブフレームを含むサンプルを抽出し、その抽出されたサンプルを復号し、第1の情報に基づいて、その復号されたサンプルに含まれるサブフレームの表示タイミングに間に合うタイミングで、サブフレームのポイントクラウドを構築してもよい。
 このようにすることにより第1の情報処理装置は、各サブフレームの表示タイミングをより容易に把握することができる。したがって、第1の情報処理装置は、各サブフレームのその表示タイミングに間に合うように、各サンプルを復号することができる。したがって、第1の情報処理装置は、3Dデータの再生表示の品質の低減を抑制することができる。
 また、例えば、情報処理装置(第2の情報処理装置とも称する)が、複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成する符号化部と、その符号化データを含むビットストリームを生成し、そのビットストリームに基づいてサブフレームの表示タイミングに関する第1の情報を生成するビットストリーム生成部と、そのビットストリームを格納するファイルを生成し、そのファイルにメタデータとして第1の情報を格納するファイル生成部とを備えてもよい。また、情報処理方法(第2の情報処理方法とも称する)において、複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成し、その符号化データを含むビットストリームを生成し、そのビットストリームに基づいてサブフレームの表示タイミングに関する第1の情報を生成し、そのビットストリームを格納するファイルを生成し、そのファイルにメタデータとして第1の情報を格納してもよい。
 第2の情報処理装置がこのように処理を行うことにより第1の情報処理装置は、各サブフレームの表示タイミングをより容易に把握することができる。つまり、第2の情報処理装置は、第1の情報処理装置に対して、各サブフレームのその表示タイミングに間に合うように、各サンプルを復号させることができる。したがって、第2の情報処理装置は、第1の情報処理装置による3Dデータの再生表示の品質の低減を抑制することができる。
 なお、この第1の情報処理装置および第2の情報処理装置において、3Dデータは、3次元空間のオブジェクトの3次元形状を示すものであればどのようなものであってもよく、例えばポイントクラウドであってもよい。その場合、サブフレームは、例えばポイントクラウドフレームであってもよい。また、コンバインドフレームの場合、例えば、サンプルがそのコンバインドフレームに対応し、サブサンプルがサブフレームに対応してもよい。また、3Dデータ(ジオメトリ)の符号化方式は、例えばG-PCCであってもよい。つまり、ビットストリームは、例えばG-PCCビットストリームであってもよく、ファイルは、例えばG-PCCファイルであってもよい。
 また、サブフレームの表示タイミングに関する情報は、例えば、ファイルのメタ情報格納エリアに格納されてもよい。例えば、ファイルがISOBMFFであり、第1の情報がそのサブサンプルインフォメーションボックス(SubSampleInformationBox)に格納されてもよい。例えば、サブサンプルインフォメーションボックスのコーデックスペシフィックパラメータ(codec_specific_parameters)を拡張して第1の情報を格納してもよい。
 また、ファイルがISOBMFFであり、第1の情報がそのサンプルグループボックス(SampleGroupBox)に格納されてもよい。サンプルグループボックスは、複数のサンプルからなるサンプルグループに付与される情報を格納する領域である。つまりこの場合、サンプルグループを構成する各サンプル内のサブサンプル(サブフレーム)についての第1の情報(表示タイミングに関する情報)が、サンプルグループボックスに格納される。例えば、第1の情報が、ボリュメトリックビジュアルサンプルグループエントリ(VolumetricVisualSampleGroupEntry)のサブフレームタイミンググループエントリ(SubFrameTimingGroupEntry)に格納されてもよい。換言するに、第1の情報がサンプルグループ毎に付与されてもよい。
  <方法1-1>
 なお、図8の表の上から2段目に示されるように、サブフレームの表示タイミングに関する情報(第1の情報)は、サンプル表示タイミングからのオフセットを含むようにしてもよい(方法1-1)。
 図9は、この場合のサブサンプルインフォメーションボックスのコーデックスペシフィックパラメータのシンタックスの例を示す図である。図9の例では、フラグの値が「2」の場合(flag == 2)、サブサンプルデルタ(subsample_delta)が格納される。サブサンプルデルタは、サブサンプル(すなわちサブフレーム)が属するサンプルの復号タイミング(decoding time)と、そのサブサンプルの復号タイミング(decoding time)との差を示すパラメータである。G-PCCにおいては、復号タイミング(decoding time)と表示タイミング(presentation time)は等価である。つまり、サブサンプルデルタは、サンプル表示タイミングからのオフセットを示す。
 なお、第1の情報は、符号(正負)を含んでもよい。図9の例では、フラグの値が「2」の場合(flag == 2)、サブサンプルデルタとともにサイン(sign)が格納される。この場合、サブサンプルデルタは、サブサンプルが属するサンプルの復号タイミングと、そのサブサンプルの復号タイミングとの差の絶対値を示す。サインは、そのサブサンプルデルタの符号(正負)を示すパラメータである。例えば、サインは、その値が0なら正を示し、1なら負を示すようにしてもよい。なお、サインを格納する代わりに、サブサンプルデルタが0および正の値だけでなく、負の値も取り得るようにしてもよい。その場合、サインは省略することができる。
 なお、サブサンプルデルタは、サブフレームが属するサンプルの復号タイミングと、そのサブフレームの復号タイミングとの差を示すパラメータであるサブフレームタイムオフセット(subframe_time_offset)としてもよい。また、その場合も、サインを伝送してもよいし、サブフレームタイムオフセットが0および正の値だけでなく、負の値もとり得るようにしてもよい。つまり、サブフレームタイムオフセットは、サブサンプルデルタと等価としてもよいし、サブサンプルデルタおよびサインと等価としてもよい。
 サブフレームタイムオフセット(またはサブフレームタイムオフセットとサインの組み合わせ)が負の値をとることにより、処理対象のサブフレームが所属するサンプルの表示タイミングよりも前にその処理対象のサブフレームを表示させることができる。つまり、サンプルを跨ぐサブフレームの順序の入れ替えが可能になる。
 第1の情報処理装置は、G-PCCファイルからサンプル復号タイミングDT[n]と第1の情報を取得し、サンプル復号タイミングDT[n]に第1の情報を加算することにより各サブフレームの表示タイミングを導出する。図10は、その導出の様子の例を示す図である。図10の例の場合、サンプルa、サンプルb、サンプルcのサンプル復号タイミングDT[n]がそれぞれ、0、3、5である。また、サブサンプルデルタ(サブフレームタイムオフセット)が負の値をとり得るものとする。図10に示されるように、フレームナンバーFN#0が付与されたサブサンプルのサブサンプルデルタは0である。フレームナンバーFN#1が付与されたサブサンプルのサブサンプルデルタは1である。フレームナンバーFN#2が付与されたサブサンプルのサブサンプルデルタは2である。フレームナンバーFN#3が付与されたサブサンプルのサブサンプルデルタは0である。フレームナンバーFN#4が付与されたサブサンプルのサブサンプルデルタは-1である。フレームナンバーFN#5が付与されたサブサンプルのサブサンプルデルタは2である。フレームナンバーFN#6が付与されたサブサンプルのサブサンプルデルタは1である。フレームナンバーFN#7が付与されたサブサンプルのサブサンプルデルタは2である。
 例えば、第1の情報処理装置は、サブフレームの表示タイミング(サブフレームの復号タイミング)を、以下の式(1)のように導出する。
 subsample decoding time (=presentation time) = DT(n)+subsample_delta
 ・・・(1)
 したがって、フレームナンバーFN#0が付与されたサブサンプルの表示タイミング(subsample decoding time)は、DT(n)+subsample_delta=0+0=0である。フレームナンバーFN#1が付与されたサブサンプルの表示タイミング(subsample decoding time)は、DT(n)+subsample_delta=0+1=1である。フレームナンバーFN#2が付与されたサブサンプルの表示タイミング(subsample decoding time)は、DT(n)+subsample_delta=0+2=2である。フレームナンバーFN#3が付与されたサブサンプルの表示タイミング(subsample decoding time)は、DT(n)+subsample_delta=3+0=3である。フレームナンバーFN#4が付与されたサブサンプルの表示タイミング(subsample decoding time)は、DT(n)+subsample_delta=5-1=4である。フレームナンバーFN#5が付与されたサブサンプルの表示タイミング(subsample decoding time)は、DT(n)+subsample_delta=3+2=5である。フレームナンバーFN#6が付与されたサブサンプルの表示タイミング(subsample decoding time)は、DT(n)+subsample_delta=5+1=6である。フレームナンバーFN#7が付与されたサブサンプルの表示タイミング(subsample decoding time)は、DT(n)+subsample_delta=5+2=7である。
 第1の情報処理装置は、このように導出されたサブサンプルの表示タイミングに従って、各サブサンプルを表示する。このようにすることにより、第1の情報処理装置は、指定されたタイミングにおいて各サブフレームを表示させることができる。つまり、第1の情報処理装置は、G-PCCファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、各サブフレームの表示タイミングに間に合うタイミングで、各サンプルを取得して復号し、各サブフレームのポイントクラウドを構築することにより、再生の遅延やフレームの欠損の発生を抑制し、3Dデータの再生表示の品質の低減を抑制することができる。
 換言するに、第2の情報処理装置は、サブフレームの表示タイミングに関する第1の情報をG-PCCファイルにメタデータとして格納することにより、第1の情報処理装置が、再生の遅延やフレームの欠損の発生を抑制し、3Dデータの再生表示の品質の低減を抑制することができる。
 なお、上述の第1の情報とは別に、サブフレームの表示順に関する第2の情報が、メタデータとしてさらにファイルに格納されてもよい。このようにすることにより、第1の情報処理装置は、上述のような演算を行わずに、第2の情報を参照するだけで容易に各サブフレームの表示順を把握することができる。なお、この第2の情報は、シーケンス全体での表示順を示すフレームナンバー(frame number)を含んでもよいし、サンプル内での表示順を示すフレームインデックス(frame index)を含んでもよい。
  <方法1-2>
 なお、図8の表の最下段に示されるように、サブフレームの表示タイミングに関する情報(第1の情報)は、サブフレームの表示順を示す第2の情報と、サブフレームの表示期間の長さを示すデュレーション(duration)とを含んでもよい(方法1-2)。第2の情報は、例えば、サブフレームのシーケンス全体での表示順を示すフレームナンバーを含んでもよい。
 図11は、この場合のサブサンプルインフォメーションボックスのコーデックスペシフィックパラメータのシンタックスの例を示す図である。図11の例では、フラグの値が「2」の場合(flag == 2)、フレームナンバー(frame number)およびデュレーション(duration)が格納される。フレームナンバーは、図3を参照して説明したとおりである。デュレーションは、サブフレームの表示期間の長さを示す。
 第1の情報処理装置は、G-PCCファイルからこのフレームナンバーと各サブフレームのデュレーションを取得し、各サブサンプル(サブフレーム)を、フレームナンバーに従った順序で、デュレーションに示される表示期間ずつ表示する。図12は、その様子の例を示す図である。図12の例の場合、各サブフレームの表示期間はいずれも「1」であるので、フレームナンバーFN#0が付与されたサブサンプル乃至フレームナンバーFN#7が付与されたサブサンプルのそれぞれの表示タイミングは、0乃至7である。
 このようにすることにより、第1の情報処理装置は、指定されたタイミングにおいて各サブフレームを表示させることができる。つまり、第1の情報処理装置は、G-PCCファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、各サブフレームの表示タイミングに間に合うタイミングで、各サンプルを取得して復号し、各サブフレームのポイントクラウドを構築することにより、再生の遅延やフレームの欠損の発生を抑制し、3Dデータの再生表示の品質の低減を抑制することができる。
 換言するに、第2の情報処理装置は、サブフレームの表示タイミングに関する第1の情報をG-PCCファイルにメタデータとして格納することにより、第1の情報処理装置が、再生の遅延やフレームの欠損の発生を抑制し、3Dデータの再生表示の品質の低減を抑制することができる。
 なお、第2の情報は、例えば、サブフレームのサンプル内での表示順を示すフレームインデックスを含んでもよい。
  <その他の方法>
 なお、第1の情報は、各サブフレームの表示タイミングそのものを直接的に示す情報であってもよい。また、第1の情報が、サンプル表示タイミングからのオフセットやサブフレームの表示期間の長さを示す情報を含まず、サブフレーム表示順のみを含むようにしてもよい。
 以上においては、互いに対応するジオメトリとアトリビュートを1つのトラックに格納するシングルトラックによりファイルが構成される場合について説明したが、本技術は、ISOBMFFが、互いに対応するジオメトリとアトリビュートを互いに異なるトラックに格納するマルチトラックによりファイルが構成される場合にも適用することができる。その場合、第1の情報は、例えば、フレームナンバーアトリビュートやフレームインデックスアトリビュートが格納されるアトリビュートトラックにのみ格納されてもよい(ジオメトリトラックには第1の情報が格納されなくてもよい)。また、第1の情報は、ジオメトリが格納されるジオメトリトラックにのみ格納されてもよい(アトリビュートが格納されるアトリビュートトラックには第1の情報が格納されなくてもよい)。また、第1の情報は、ジオメトリトラックとアトリビュートトラックの両方に格納されてもよい(ジオメトリトラックとアトリビュートトラックに同一の情報が格納されてもよい)。
 以上においてはファイルフォーマットとしてISOBMFFを適用する例について説明したが、G-PCCビットストリームを格納するファイルは任意であり、ISOBMFF以外であってもよい。例えば、G-PCCビットストリームが、マトリョーシカメディアコンテナ(Matroska Media Container)に格納されてもよい。マトリョーシカメディアコンテナの主な構成例を図13に示す。
 この場合、例えば、サブフレームの表示タイミングに関する第1の情報が、Track Entry element下の新たに定義したelementとして格納されてもよい。
 つまり、この場合も、サブフレームの表示タイミングに関する第1の情報がマトリョーシカメディアコンテナのシステムレイヤに格納される。したがって、第1の情報処理装置は、システムレイヤを参照することにより、容易に(G-PCCビットストリームをパースせずに)、第1の情報を得ることができる。つまり、第1の情報処理装置は、マトリョーシカメディアコンテナのシステムレイヤを参照することにより、容易に、各サブフレームの表示タイミングを把握することができる。したがって、第1の情報処理装置は、その第1の情報に基づいて、各サブフレームの表示タイミングに間に合うタイミングで、各サンプルを取得して復号し、各サブフレームのポイントクラウドを構築することにより、再生の遅延やフレームの欠損の発生を抑制し、3Dデータの再生表示の品質の低減を抑制することができる。
 換言するに、第2の情報処理装置は、サブフレームの表示タイミングに関する第1の情報をG-PCCファイルにメタデータとして格納することにより、第1の情報処理装置が、再生の遅延やフレームの欠損の発生を抑制し、3Dデータの再生表示の品質の低減を抑制することができる。
 <4.第1の実施の形態>
  <ファイル生成装置>
 以上に説明した本技術は、任意の装置において適用することができる。図14は、本技術を適用した情報処理装置の一態様であるファイル生成装置の構成の一例を示すブロック図である。図14に示されるファイル生成装置300は、G-PCCを適用してポイントクラウドデータを符号化し、その符号化により生成したG-PCCビットストリームをISOBMFF(G-PCCファイル)に格納する装置である。
 その際、ファイル生成装置300は、上述した本技術を適用し、複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成し、その符号化データを含むビットストリームを生成し、ビットストリームに基づいてサブフレームの表示タイミングに関する第1の情報を生成し、ビットストリームを格納するファイルを生成し、そのファイルにメタデータとして第1の情報を格納する。
 なお、図14においては、処理部やデータの流れ等の主なものを示しており、図14に示されるものが全てとは限らない。つまり、ファイル生成装置300において、図14においてブロックとして示されていない処理部が存在したり、図14において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
 図14に示されるようにファイル生成装置300は、コンバインドフレーム生成部311、抽出部312、符号化部313、ビットストリーム生成部314、およびファイル生成部315、およびファイル生成部315を有する。また、符号化部313は、ジオメトリ符号化部321、アトリビュート符号化部322、およびメタデータ生成部323を有する。
 コンバインドフレーム生成部311は、ファイル生成装置300に入力されたポイントクラウドの複数のフレームをサブフレームとして組み合わせ、コンバインドフレームを生成する。コンバインドフレーム生成部311は、コンバインドフレームを含むポイントクラウドを抽出部312へ供給する。
 抽出部312は、コンバインドフレーム生成部311から供給されるポイントクラウドからジオメトリとアトリビュートをそれぞれ抽出する。抽出部312は、抽出したジオメトリのデータを符号化部313のジオメトリ符号化部321へ供給する。また、抽出部312は、抽出したアトリビュートを符号化部313のアトリビュート符号化部322へ供給する。
 符号化部313は、ポイントクラウドのデータを符号化する。ジオメトリ符号化部321は、抽出部312から供給されるジオメトリを符号化し、ジオメトリビットストリームを生成する。ジオメトリ符号化部321は、生成したジオメトリビットストリームをメタデータ生成部323に供給する。また、ジオメトリ符号化部321は、生成したジオメトリビットストリームをアトリビュート符号化部322にも供給する。アトリビュート符号化部322は、抽出部312から供給されるアトリビュートを符号化し、アトリビュートビットストリームを生成する。アトリビュート符号化部322は、生成したアトリビュートビットストリームをメタデータ生成部323に供給する。メタデータ生成部323は、供給されたジオメトリビットストリームおよびアトリビュートビットストリームを参照し、G-PCCビットストリームに格納するメタデータを生成する。メタデータ生成部323は、ジオメトリビットストリームおよびアトリビュートビットストリームとともに、生成したメタデータをビットストリーム生成部314に供給する。その際、符号化部313は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成する。
 ビットストリーム生成部314は、供給されたジオメトリビットストリーム、アトリビュートビットストリーム、およびメタデータを多重化し、G-PCCビットストリームを生成する。つまり、ビットストリーム生成部314は、符号化データ(ジオメトリビットストリーム、アトリビュートビットストリーム、およびメタデータ)を含むビットストリーム(G-PCCビットストリーム)を生成する。その際、ビットストリーム生成部314は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、そのビットストリームに基づいてサブフレームの表示タイミングに関する第1の情報を生成する。
 例えば、この第1の情報は、サンプルの表示タイミングからのオフセットを示すサブフレームタイムオフセット(subframe_time_offset)を含んでもよい。また、そのサブフレームタイムオフセットは、符号を含んでもよい。また、第1の情報は、サブフレームの表示順を示す第2の情報と、そのサブフレームの表示期間の長さを示すデュレーション(duration)とを含んでもよい。また、その第2の情報は、シーケンス全体での表示順を示すフレームナンバー(frame number)を含んでもよい。また、その第2の情報は、サンプル内での表示順を示すフレームインデックス(frame index)を含んでもよい。ビットストリーム生成部314は、生成したG-PCCビットストリームおよび第1の情報をファイル生成部315に供給する。
 ファイル生成部315は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、供給されたG-PCCビットストリームおよびメタデータ(第1の情報)を格納するG-PCCファイル(ファイルまたはコンテンツファイルとも称する)を生成する。その際、ファイル生成部315は、そのファイルにメタデータとしてサブフレームの表示順に関する第2の情報をさらに格納してもよい。例えば、その第2の情報は、シーケンス全体での表示順を示すフレームナンバー(frame number)を含んでもよい。また、その第2の情報は、サンプル内での表示順を示すフレームインデックス(frame index)を含んでもよい。ファイル生成部315は、以上のように生成したG-PCCファイルをファイル生成装置300の外部に出力する。
 このような構成とすることにより、ファイル生成装置300は、<3.表示タイミングに関する情報の伝送>の場合と同様の効果を得ることができる。つまり、ファイル生成装置300は、3Dデータの再生表示の品質の低減を抑制することができる。
  <ファイル生成処理の流れ>
 このファイル生成装置300により実行されるファイル生成処理の流れの例を、図15のフローチャートを参照して説明する。
 ファイル生成処理が開始されると、ファイル生成装置300のコンバインドフレーム生成部311は、ステップS301において、符号化対象のポイントクラウドについて、複数のフレームをサブフレームとして組み合わせ、コンバインドフレームを生成する。
 ステップS302において、抽出部312は、ポイントクラウドからジオメトリとアトリビュートをそれぞれ抽出する。
 ステップS303において、符号化部313は、ステップS302において抽出されたジオメトリとアトリビュートを符号化し、ジオメトリビットストリームおよびアトリビュートビットストリームを生成する。符号化部313は、さらに、そのメタデータを生成する。その際、符号化部313は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成する。
 ステップS304において、ビットストリーム生成部314は、ステップS303において生成されたジオメトリビットストリーム、アトリビュートビットストリーム、およびメタデータを多重化し、G-PCCビットストリームを生成する。また、ビットストリーム生成部314は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、そのG-PCCビットストリームに基づいてサブフレームの表示タイミングに関する第1の情報を生成する。
 例えば、この第1の情報は、サンプルの表示タイミングからのオフセットを示すサブフレームタイムオフセット(subframe_time_offset)を含んでもよい。また、そのサブフレームタイムオフセットは、符号を含んでもよい。また、第1の情報は、サブフレームの表示順を示す第2の情報と、そのサブフレームの表示期間の長さを示すデュレーション(duration)とを含んでもよい。また、その第2の情報は、シーケンス全体での表示順を示すフレームナンバー(frame number)を含んでもよい。また、その第2の情報は、サンプル内での表示順を示すフレームインデックス(frame index)を含んでもよい。
 ステップS305において、ファイル生成部315は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、ステップS304おいて生成されたG-PCCビットストリームを格納するG-PCCファイル(すなわちコンテンツファイル)を生成する。そして、ファイル生成部315は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、そのG-PCCファイルにメタデータとして(メタ情報格納エリアに)第1の情報を格納する。その際、ファイル生成部315は、そのファイルにメタデータとしてサブフレームの表示順に関する第2の情報をさらに格納してもよい。例えば、その第2の情報は、シーケンス全体での表示順を示すフレームナンバー(frame number)を含んでもよい。また、その第2の情報は、サンプル内での表示順を示すフレームインデックス(frame index)を含んでもよい。
 ステップS306において、ファイル生成部315は、ステップS305において生成したG-PCCファイル(すなわちコンテンツファイル)をファイル生成装置300の外部に出力する。
 ステップS306の処理が終了するとファイル生成処理が終了する。
 以上のように、ファイル生成装置300は、ファイル生成処理において本技術を適用し、サブグループの空間構成情報とサブグループおよびレイヤグループの依存関係情報とを含むメタデータを生成し、それをG-PCCファイルのシステムレイヤに格納する。このようにすることにより、ファイル生成装置300は、<3.表示タイミングに関する情報の伝送>の場合と同様の効果を得ることができる。つまり、ファイル生成装置300は、3Dデータの再生表示の品質の低減を抑制することができる。
  <再生装置>
 図16は、本技術を適用した情報処理装置の一態様である再生装置の構成の一例を示すブロック図である。図16に示される再生装置400は、ISOBMFF(G-PCCファイル)に格納されるG-PCCビットストリームを復号し、ポイントクラウドを再構成し、レンダリングして提示情報を生成する装置である。
 再生装置400は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、ポイントクラウドのG-PCCビットストリームをG-PCCファイルから抽出し、その抽出したG-PCCビットストリームを復号し、ポイントクラウドを構築する。
 なお、図16においては、処理部やデータの流れ等の主なものを示しており、図16に示されるものが全てとは限らない。つまり、再生装置400において、図16においてブロックとして示されていない処理部が存在したり、図16において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
 図16に示されるように再生装置400は、ファイル処理部411、復号部412、および提示情報生成部413を有する。
 ファイル処理部411は、再生装置400に入力されるG-PCCファイルを取得し、そのG-PCCファイルに関する処理を行う。例えば、ファイル処理部411は、抽出部421を有する。抽出部421は、供給されたG-PCCファイルからG-PCCビットストリームを抽出する。その際、抽出部421は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、G-PCCファイルにメタデータとして格納されているサブフレームの表示タイミングに関する第1の情報に基づいて、サブフレームの表示タイミングに間に合うタイミングで、そのG-PCCファイルに格納されるG-PCCビットストリームからサブフレームを含むサンプルを抽出する。抽出部421は、その抽出したサンプルと第1の情報を復号部412へ供給する。
 例えば、この第1の情報は、サンプルの表示タイミングからのオフセットを示すサブフレームタイムオフセット(subframe_time_offset)を含んでもよい。また、そのサブフレームタイムオフセットは、符号を含んでもよい。また、このG-PCCファイルには、メタデータとして、サブフレームの表示順に関する第2の情報がさらに格納されてもよい。そして、抽出部421は、その第2の情報に示されるサブフレームの表示順に従って、サンプルを抽出してもよい。なお、この第2の情報は、シーケンス全体での表示順を示すフレームナンバー(frame number)を含んでもよい。また、その第2の情報は、サンプル内での表示順を示すフレームインデックス(frame index)を含んでもよい。また、第1の情報は、サブフレームの表示順を示す第2の情報と、そのサブフレームの表示期間の長さを示すデュレーション(duration)とを含んでもよい。また、その第2の情報は、シーケンス全体での表示順を示すフレームナンバー(frame number)を含んでもよい。また、その第2の情報は、サンプル内での表示順を示すフレームインデックス(frame index)を含んでもよい。
 復号部412は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、そのサンプル(G-PCCビットストリーム)を復号する。復号部412は、得られたサンプルと第1の情報を提示情報生成部413(のポイントクラウド構築部441)へ供給する。例えば、復号部412は、ジオメトリ復号部431およびアトリビュート復号部432を有する。ジオメトリ復号部431は、抽出部421から供給されるサンプルに含まれるジオメトリビットストリームを復号し、そのサンプルのジオメトリを得る。ジオメトリ復号部431は、そのサンプルのジオメトリをアトリビュート復号部432へ供給する。また、ジオメトリ復号部431は、そのサンプルのジオメトリと第1の情報を提示情報生成部413(ポイントクラウド構築部441)へ供給する。また、アトリビュート復号部432は、ジオメトリ復号部431から供給されるジオメトリを用いて、抽出部421から供給されるサンプルに含まれるアトリビュートのビットストリームを復号し、そのサンプルのアトリビュートを得る。アトリビュート復号部432は、そのサンプルのアトリビュートを提示情報生成部413(ポイントクラウド構築部441)へ供給する。
 提示情報生成部413は、供給されたサンプル(ジオメトリやアトリビュート)を用いてポイントクラウドを構築し、そのポイントクラウドを提示する(例えば表示する)ための情報である提示情報を生成する。提示情報生成部413は、ポイントクラウド構築部441および提示処理部442を有する。
 ポイントクラウド構築部441は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、復号部412から供給された第1の情報に基づいて、復号部412から供給されたサンプルに含まれるサブフレームの表示タイミングに間に合うタイミングで、そのサブフレームのポイントクラウドを構築する。ポイントクラウド構築部441は、構築したポイントクラウドを提示処理部442へ供給する。
 提示処理部442は、供給されたポイントクラウドを用いて提示情報を生成する。提示処理部442は、生成した提示情報を再生装置400の外部に出力する。例えば、その提示情報がモニタに表示される。
 このような構成とすることにより、再生装置400は、<3.表示タイミングに関する情報の伝送>の場合と同様の効果を得ることができる。つまり、再生装置400は、3Dデータの再生表示の品質の低減を抑制することができる。
  <再生処理の流れ>
 この再生装置400により実行される再生処理の流れの例を、図17のフローチャートを参照して説明する。
 再生処理が開始されると、再生装置400のファイル処理部411(の抽出部421)は、ステップS401において、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、G-PCCファイル(すなわちコンテンツファイル)の再生対象トラックから表示タイミングに関する情報を取得する。
 ステップS402において、ファイル処理部411の抽出部421は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、G-PCCファイルにメタデータとして格納されているサブフレームの表示タイミングに関する第1の情報に基づいて、サブフレームの表示タイミングに間に合うタイミングで、そのG-PCCファイルに格納されるG-PCCビットストリームからサブフレームを含むサンプルを抽出する。
 例えば、この第1の情報は、サンプルの表示タイミングからのオフセットを示すサブフレームタイムオフセット(subframe_time_offset)を含んでもよい。また、そのサブフレームタイムオフセットは、符号を含んでもよい。また、このG-PCCファイルには、メタデータとして、サブフレームの表示順に関する第2の情報がさらに格納されてもよい。そして、抽出部421は、その第2の情報に示されるサブフレームの表示順に従って、サンプルを抽出してもよい。なお、この第2の情報は、シーケンス全体での表示順を示すフレームナンバー(frame number)を含んでもよい。また、その第2の情報は、サンプル内での表示順を示すフレームインデックス(frame index)を含んでもよい。また、第1の情報は、サブフレームの表示順を示す第2の情報と、そのサブフレームの表示期間の長さを示すデュレーション(duration)とを含んでもよい。また、その第2の情報は、シーケンス全体での表示順を示すフレームナンバー(frame number)を含んでもよい。また、その第2の情報は、サンプル内での表示順を示すフレームインデックス(frame index)を含んでもよい。
 ステップS403において、復号部422は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、ステップS402において抽出されたサンプルを復号する。ステップS404において、復号部422は、さらに、その復号したサンプルからサブサンプルを抽出する。
 ステップS405において、ポイントクラウド構築部441は、<3.表示タイミングに関する情報の伝送>において上述した本技術を適用し、第1の情報に基づいて、ステップS403において復号されたサンプルに含まれるサブフレームの表示タイミングに間に合うタイミングで、そのサブフレームのポイントクラウドを構築する。
 ステップS406において、提示処理部442は、ステップS405において構築したポイントクラウドを用いてレンダリングする等して、提示情報を生成する。提示処理部442は、ステップS407において、その提示情報を再生装置400の外部に供給し、提示させる。
 ステップS407の処理が終了すると再生処理が終了する。
 以上のように各処理を実行することにより、再生装置400は、<3.表示タイミングに関する情報の伝送>の場合と同様の効果を得ることができる。つまり、再生装置400は、3Dデータの再生表示の品質の低減を抑制することができる。
 <5.付記>
  <コンピュータ>
 上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
 図18は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
 図18に示されるコンピュータ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に、あらかじめインストールしておくこともできる。
  <本技術の適用可能な対象>
 以上においては、主にG-PCCビットストリームをISOBMFFに格納する方法に本技術を適用する場合について説明したが、本技術の適用対象は任意であり、上述の例に限定されない。つまり、G-PCCビットストリームを格納するファイルの形式は任意であり、上述したISOBMFFやマトリョーシカメディアコンテナに限定されない。また、3Dデータ(ポイントクラウド)の符号化・復号方式は任意であり、G-PCCに限定されない。また、3Dデータの形式は任意であり、ポイントクラウド以外であってもよい。つまり、上述した本技術の特徴と矛盾しない限り、ファイル、符号化・復号方式、3Dデータおよびその生成・構築方法等の仕様の一部または全部が、上述した例と異なっていてもよい。また、上述した一部の処理や仕様が省略されてもよい。
 また、本技術は、任意の構成に適用することができる。例えば、本技術は、様々な電子機器に応用され得る。
 また、例えば、本技術は、システム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) ファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、前記サブフレームの表示タイミングに間に合うタイミングで、前記ファイルに格納されるビットストリームから前記サブフレームを含むサンプルを抽出する抽出部と、
 抽出された前記サンプルを復号する復号部と、
 前記第1の情報に基づいて、復号された前記サンプルに含まれる前記サブフレームの表示タイミングに間に合うタイミングで、前記サブフレームのポイントクラウドを構築する構築部と
 を備える情報処理装置。
 (2) 前記第1の情報は、前記サンプルの表示タイミングからのオフセットを示すsubframe_time_offsetを含む
 (1)に記載の情報処理装置。
 (3) 前記subframe_time_offsetは、符号を含む
 (2)に記載の情報処理装置。
 (4) 前記ファイルは、前記メタデータとして、前記サブフレームの表示順に関する第2の情報をさらに格納し、
 前記抽出部は、前記第2の情報に示される前記サブフレームの表示順に従って、前記サンプルを抽出する
 (2)または(3)に記載の情報処理装置。
 (5) 前記第2の情報は、シーケンス全体での表示順を示すframe numberを含む
 (4)に記載の情報処理装置。
 (6) 前記第2の情報は、前記サンプル内での表示順を示すframe indexを含む
 (4)に記載の情報処理装置。
 (7) 前記第1の情報は、前記サブフレームの表示順を示す第2の情報と、前記サブフレームの表示期間の長さを示すdurationとを含む
 (1)乃至(6)のいずれかに記載の情報処理装置。
 (8) 前記第2の情報は、シーケンス全体での表示順を示すframe numberを含む
 (7)に記載の情報処理装置。
 (9) 前記第2の情報は、前記サンプル内での表示順を示すframe indexを含む
 (7)に記載の情報処理装置。
 (10) 前記ファイルは、ISOBMFF(International Organization for Standardization Base Media File Format)であり、前記第1の情報をSubSampleInformationBoxに格納する
 (1)乃至(9)のいずれかに記載の情報処理装置。
 (11) 前記ファイルは、ISOBMFF(International Organization for Standardization Base Media File Format)であり、前記第1の情報をSampleGroupBoxに格納する
 (1)乃至(9)のいずれかに記載の情報処理装置。
 (12) ファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、前記サブフレームの表示タイミングに間に合うタイミングで、前記ファイルに格納されるビットストリームから前記サブフレームを含むサンプルを抽出し、
 抽出された前記サンプルを復号し、
 前記第1の情報に基づいて、復号された前記サンプルに含まれる前記サブフレームの表示タイミングに間に合うタイミングで、前記サブフレームのポイントクラウドを構築する
 情報処理方法。
 (21) 複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成する符号化部と、
 前記符号化データを含むビットストリームを生成し、前記ビットストリームに基づいて前記サブフレームの表示タイミングに関する第1の情報を生成するビットストリーム生成部と、
 前記ビットストリームを格納するファイルを生成し、前記ファイルにメタデータとして前記第1の情報を格納するファイル生成部と
 を備える情報処理装置。
 (22) 前記第1の情報は、前記サンプルの表示タイミングからのオフセットを示すsubframe_time_offsetを含む
 (21)に記載の情報処理装置。
 (23) 前記subframe_time_offsetは、符号を含む
 (22)に記載の情報処理装置。
 (24) 前記ファイル生成部は、前記ファイルに前記メタデータとして前記サブフレームの表示順に関する第2の情報をさらに格納する
 (22)または(23)に記載の情報処理装置。
 (25) 前記第2の情報は、シーケンス全体での表示順を示すframe numberを含む
 (24)に記載の情報処理装置。
 (26) 前記第2の情報は、前記サンプル内での表示順を示すframe indexを含む
 (24)に記載の情報処理装置。
 (27) 前記第1の情報は、前記サブフレームの表示順を示す第2の情報と、前記サブフレームの表示期間の長さを示すdurationとを含む
 (21)乃至(26)のいずれかに記載の情報処理装置。
 (28) 前記第2の情報は、シーケンス全体での表示順を示すframe numberを含む
 (27)に記載の情報処理装置。
 (29) 前記第2の情報は、前記サンプル内での表示順を示すframe indexを含む
 (27)に記載の情報処理装置。
 (30) 前記ファイル生成部は、ISOBMFF(International Organization for Standardization Base Media File Format)であり、前記第1の情報を前記ファイルのSubSampleInformationBoxに格納する
 (21)乃至(29)のいずれかに記載の情報処理装置。
 (31) 前記ファイル生成部は、ISOBMFF(International Organization for Standardization Base Media File Format)であり、前記第1の情報を前記ファイルのSampleGroupBoxに格納する
 (21)乃至(29)のいずれかに記載の情報処理装置。
 (32) 複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成し、
 前記符号化データを含むビットストリームを生成し、前記ビットストリームに基づいて前記サブフレームの表示タイミングに関する第1の情報を生成し、
 前記ビットストリームを格納するファイルを生成し、前記ファイルにメタデータとして前記第1の情報を格納する
 情報処理方法。
 300 ファイル生成装置, 311 コンバインドフレーム生成部, 312 抽出部, 313 符号化部, 314 ビットストリーム生成部, 315 ファイル生成部, 321 ジオメトリ符号化部, 322 アトリビュート符号化部, 323 メタデータ生成部, 400 再生装置, 411 ファイル処理部, 412 復号部, 413 提示情報生成部, 421 抽出部, 431 ジオメトリ復号部, 432 アトリビュート復号部, 441 ポイントクラウド構築部, 442 提示処理部, 900 コンピュータ

Claims (20)

  1.  ファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、前記サブフレームの表示タイミングに間に合うタイミングで、前記ファイルに格納されるビットストリームから前記サブフレームを含むサンプルを抽出する抽出部と、
     抽出された前記サンプルを復号する復号部と、
     前記第1の情報に基づいて、復号された前記サンプルに含まれる前記サブフレームの表示タイミングに間に合うタイミングで、前記サブフレームのポイントクラウドを構築する構築部と
     を備える情報処理装置。
  2.  前記第1の情報は、前記サンプルの表示タイミングからのオフセットを示すsubframe_time_offsetを含む
     請求項1に記載の情報処理装置。
  3.  前記subframe_time_offsetは、符号を含む
     請求項2に記載の情報処理装置。
  4.  前記ファイルは、前記メタデータとして、前記サブフレームの表示順に関する第2の情報をさらに格納し、
     前記抽出部は、前記第2の情報に示される前記サブフレームの表示順に従って、前記サンプルを抽出する
     請求項2に記載の情報処理装置。
  5.  前記第1の情報は、前記サブフレームの表示順を示す第2の情報と、前記サブフレームの表示期間の長さを示すdurationとを含む
     請求項1に記載の情報処理装置。
  6.  前記第2の情報は、シーケンス全体での表示順を示すframe numberを含む
     請求項5に記載の情報処理装置。
  7.  前記第2の情報は、前記サンプル内での表示順を示すframe indexを含む
     請求項5に記載の情報処理装置。
  8.  前記ファイルは、ISOBMFF(International Organization for Standardization Base Media File Format)であり、前記第1の情報をSubSampleInformationBoxに格納する
     請求項1に記載の情報処理装置。
  9.  前記ファイルは、ISOBMFF(International Organization for Standardization Base Media File Format)であり、前記第1の情報をSampleGroupBoxに格納する
     請求項1に記載の情報処理装置。
  10.  ファイルにメタデータとして格納されるサブフレームの表示タイミングに関する第1の情報に基づいて、前記サブフレームの表示タイミングに間に合うタイミングで、前記ファイルに格納されるビットストリームから前記サブフレームを含むサンプルを抽出し、
     抽出された前記サンプルを復号し、
     前記第1の情報に基づいて、復号された前記サンプルに含まれる前記サブフレームの表示タイミングに間に合うタイミングで、前記サブフレームのポイントクラウドを構築する
     情報処理方法。
  11.  複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成する符号化部と、
     前記符号化データを含むビットストリームを生成し、前記ビットストリームに基づいて前記サブフレームの表示タイミングに関する第1の情報を生成するビットストリーム生成部と、
     前記ビットストリームを格納するファイルを生成し、前記ファイルにメタデータとして前記第1の情報を格納するファイル生成部と
     を備える情報処理装置。
  12.  前記第1の情報は、前記サンプルの表示タイミングからのオフセットを示すsubframe_time_offsetを含む
     請求項11に記載の情報処理装置。
  13.  前記subframe_time_offsetは、符号を含む
     請求項12に記載の情報処理装置。
  14.  前記ファイル生成部は、前記ファイルに前記メタデータとして前記サブフレームの表示順に関する第2の情報をさらに格納する
     請求項12に記載の情報処理装置。
  15.  前記第1の情報は、前記サブフレームの表示順を示す第2の情報と、前記サブフレームの表示期間の長さを示すdurationとを含む
     請求項11に記載の情報処理装置。
  16.  前記第2の情報は、シーケンス全体での表示順を示すframe numberを含む
     請求項15に記載の情報処理装置。
  17.  前記第2の情報は、前記サンプル内での表示順を示すframe indexを含む
     請求項15に記載の情報処理装置。
  18.  前記ファイル生成部は、ISOBMFF(International Organization for Standardization Base Media File Format)であり、前記第1の情報を前記ファイルのSubSampleInformationBoxに格納する
     請求項11に記載の情報処理装置。
  19.  前記ファイル生成部は、ISOBMFF(International Organization for Standardization Base Media File Format)であり、前記第1の情報を前記ファイルのSampleGroupBoxに格納する
     請求項11に記載の情報処理装置。
  20.  複数のフレームをサブフレームとして組み合わせたコンバインドフレームをサンプルとして符号化して符号化データを生成し、
     前記符号化データを含むビットストリームを生成し、前記ビットストリームに基づいて前記サブフレームの表示タイミングに関する第1の情報を生成し、
     前記ビットストリームを格納するファイルを生成し、前記ファイルにメタデータとして前記第1の情報を格納する
     情報処理方法。
PCT/JP2023/007210 2022-03-17 2023-02-28 情報処理装置および方法 WO2023176419A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202263320767P 2022-03-17 2022-03-17
US63/320,767 2022-03-17

Publications (1)

Publication Number Publication Date
WO2023176419A1 true WO2023176419A1 (ja) 2023-09-21

Family

ID=88023532

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/007210 WO2023176419A1 (ja) 2022-03-17 2023-02-28 情報処理装置および方法

Country Status (1)

Country Link
WO (1) WO2023176419A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2614100B (en) * 2021-12-16 2024-02-28 Canon Kk Method, device, and computer program for optimizing encapsulation of point cloud data

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019082837A1 (ja) * 2017-10-24 2019-05-02 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2020137642A1 (ja) * 2018-12-28 2020-07-02 ソニー株式会社 情報処理装置および情報処理方法
WO2020241723A1 (ja) * 2019-05-28 2020-12-03 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019082837A1 (ja) * 2017-10-24 2019-05-02 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2020137642A1 (ja) * 2018-12-28 2020-07-02 ソニー株式会社 情報処理装置および情報処理方法
WO2020241723A1 (ja) * 2019-05-28 2020-12-03 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
D. GRAZIOSI, NAKAGAMI O., KUMA S., ZAGHETTO A., SUZUKI T., TABATABAI A.: "An overview of ongoing point cloud compression standardization activities: video-based (V-PCC) and geometry-based (G-PCC)", APSIPA TRANSACTIONS ON SIGNAL AND INFORMATION PROCESSING, vol. 9, 3 April 2020 (2020-04-03), XP055737775, DOI: 10.1017/ATSIP.2020.12 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2614100B (en) * 2021-12-16 2024-02-28 Canon Kk Method, device, and computer program for optimizing encapsulation of point cloud data

Similar Documents

Publication Publication Date Title
EP4030384A1 (en) Information processing device, information processing method, playback processing device, and playback processing method
KR20230155019A (ko) 화상 처리 장치 및 방법
JP7487742B2 (ja) 画像処理装置および方法
JP7331852B2 (ja) 画像処理装置および方法
JP7439762B2 (ja) 情報処理装置および情報処理方法、並びにプログラム
US11902555B2 (en) Information processing device and information processing method
CN115379189B (zh) 一种点云媒体的数据处理方法及相关设备
WO2021251173A1 (ja) 情報処理装置および方法
WO2023176419A1 (ja) 情報処理装置および方法
CN116744007A (zh) 点云媒体的编解码方法及相关产品
US20240046562A1 (en) Information processing device and method
WO2022059495A1 (ja) 情報処理装置および方法
WO2022054744A1 (ja) 情報処理装置および方法
WO2021251141A1 (ja) 情報処理装置および方法
WO2022138221A1 (ja) 情報処理装置および方法
JP2022063882A (ja) 情報処理装置および方法、並びに、再生装置および方法
US20240292026A1 (en) Information processing apparatus and method thereof
EP4325870A1 (en) Information processing device and method
US20240007668A1 (en) Image processing device and method
US20230370636A1 (en) Image processing device and method
KR20240125607A (ko) 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법

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: 23770377

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2024507689

Country of ref document: JP

Kind code of ref document: A