WO2023113443A1 - 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법 - Google Patents
포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법 Download PDFInfo
- Publication number
- WO2023113443A1 WO2023113443A1 PCT/KR2022/020278 KR2022020278W WO2023113443A1 WO 2023113443 A1 WO2023113443 A1 WO 2023113443A1 KR 2022020278 W KR2022020278 W KR 2022020278W WO 2023113443 A1 WO2023113443 A1 WO 2023113443A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- track
- pcc
- information
- point cloud
- sample
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 216
- 230000005540 biological transmission Effects 0.000 title claims abstract description 66
- 230000002123 temporal effect Effects 0.000 claims abstract description 177
- 230000006835 compression Effects 0.000 claims abstract description 14
- 238000007906 compression Methods 0.000 claims abstract description 14
- 101100287577 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) gpe-1 gene Proteins 0.000 claims description 14
- 101150030514 GPC1 gene Proteins 0.000 claims description 11
- 230000008569 process Effects 0.000 description 169
- 238000005538 encapsulation Methods 0.000 description 83
- 238000012545 processing Methods 0.000 description 69
- 230000011664 signaling Effects 0.000 description 51
- 238000006243 chemical reaction Methods 0.000 description 36
- 238000013139 quantization Methods 0.000 description 29
- 230000009466 transformation Effects 0.000 description 28
- 238000005516 engineering process Methods 0.000 description 22
- 230000000007 visual effect Effects 0.000 description 17
- 238000009877 rendering Methods 0.000 description 14
- AWSBQWZZLBPUQH-UHFFFAOYSA-N mdat Chemical compound C1=C2CC(N)CCC2=CC2=C1OCO2 AWSBQWZZLBPUQH-UHFFFAOYSA-N 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 230000002441 reversible effect Effects 0.000 description 10
- 230000015572 biosynthetic process Effects 0.000 description 6
- 238000003786 synthesis reaction Methods 0.000 description 6
- 208000013057 hereditary mucoepithelial dysplasia Diseases 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012805 post-processing Methods 0.000 description 4
- 230000001131 transforming effect Effects 0.000 description 4
- 208000031212 Autoimmune polyendocrinopathy Diseases 0.000 description 3
- 235000019395 ammonium persulphate Nutrition 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000000261 appearance potential spectroscopy Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 239000011449 brick Substances 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2353—Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8146—Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
Definitions
- the present disclosure relates to a method and apparatus for processing point cloud content.
- the point cloud content is content expressed as a point cloud, which is a set of points belonging to a coordinate system representing a 3D space.
- Point cloud content can represent three-dimensional media, and provides various services such as VR (virtual reality), AR (augmented reality), MR (mixed reality), and autonomous driving service. used to provide Since tens of thousands to hundreds of thousands of point data are required to represent the point cloud content, a method for efficiently processing the vast amount of point data is required.
- the present disclosure provides an apparatus and method for efficiently processing point cloud data.
- the present disclosure provides a point cloud data processing method and apparatus for solving latency and encoding/decoding complexity.
- the present disclosure provides apparatus and methods for supporting 'tele' sample grouping according to the number of temporal levels in a geometry track.
- the present disclosure proposes apparatus and methods for processing a file storage scheme to support efficient access to a stored G-PCC bitstream.
- a method performed by an apparatus for receiving point cloud data includes obtaining a geometry-based point cloud compression (G-PCC) file including the point cloud data; obtaining temporal level number information representing the number of temporal levels of a track in the G-PCC file from the G-PCC file; and obtaining sample group information for samples in the track from a G-PCC file based on the temporal level number information, wherein the sample group information includes the temporal level number information of the track. It may be a method obtained based on indicating a plurality of individuals.
- G-PCC geometry-based point cloud compression
- a method performed in an apparatus for transmitting point cloud data includes generating temporal level number information indicating the number of temporal levels of a track in a geometry-based point cloud compression (G-PCC) file; generating sample group information, that is, information obtained by grouping samples within the track, based on the number of temporal levels; and generating the G-PCC file including information on the number of temporal levels, wherein the sample group information may be generated based on a plurality of temporal levels.
- G-PCC geometry-based point cloud compression
- An apparatus for receiving point cloud data includes a memory; and at least one processor, wherein the at least one processor obtains a geometry-based point cloud compression (G-PCC) file including the point cloud data, and determines the temporal levels of a track in the G-PCC file.
- G-PCC geometry-based point cloud compression
- An apparatus for transmitting point cloud data includes a memory; and at least one processor, wherein the at least one processor generates temporal level number information indicating the number of temporal levels of a track in a geometry-based point cloud compression (G-PCC) file, and generates the temporal level number information Based on, sample group information, which is information for grouping samples in the track, is generated, and the G-PCC file including the number information of the temporal levels is generated, but the sample group information is based on the plurality of temporal levels It may be a transmission device that is created.
- G-PCC geometry-based point cloud compression
- Apparatus and method according to embodiments of the present disclosure can process point cloud data with high efficiency.
- Devices and methods according to embodiments of the present disclosure may provide a high quality point cloud service.
- Devices and methods according to embodiments of the present disclosure may provide point cloud content for providing general-purpose services such as VR services and autonomous driving services.
- Apparatus and method according to embodiments of the present disclosure may provide temporal scalability capable of effectively accessing a desired component among G-PCC components.
- the apparatus and method according to the embodiments of the present disclosure can save bits by performing 'tele' sample grouping when a track having a plurality of temporal levels exists.
- the apparatus and method according to the embodiments of the present disclosure can save bits by performing 'tele' sample grouping when a geometry track having a plurality of temporal levels exists.
- FIG. 1 is a block diagram illustrating an example of a point cloud content providing system according to embodiments of the present disclosure.
- FIG. 2 is a block diagram illustrating an example of a process of providing point cloud content according to embodiments of the present disclosure.
- FIG. 3 shows an example of a point cloud encoding apparatus according to embodiments of the present disclosure.
- FIG. 4 is a block diagram illustrating an example of a point cloud decoding apparatus according to embodiments of the present disclosure.
- FIG. 5 is a block diagram illustrating another example of a point cloud decoding apparatus according to embodiments of the present disclosure.
- FIG. 6 shows an example of a structure capable of interworking with a method/apparatus for transmitting and receiving point cloud data according to embodiments of the present disclosure.
- FIG. 7 is a block diagram illustrating another example of a transmission device according to embodiments of the present disclosure.
- FIG. 8 is a block diagram illustrating another example of a receiving device according to embodiments of the present disclosure.
- FIG 9 shows an example of a TLV encapsulation structure according to embodiments of the present disclosure.
- FIG. 10 shows an example of a TLV encapsulation syntax structure and payload type according to embodiments of the present disclosure.
- FIG. 11 shows an example of a file including a single track according to embodiments of the present disclosure.
- FIG. 12 shows an example of a file including multiple tracks according to embodiments of the present disclosure.
- 13 to 15 show examples of sample grouping within a track according to embodiments of the present disclosure.
- 16 and 17 show flowcharts for 'tele' sample grouping according to embodiments of the present disclosure.
- FIG. 18 illustrates an example of a structure of a G-PCC file for 'tele' sample grouping according to embodiments of the present disclosure.
- 19 is a flowchart for data transmission based on sample grouping according to embodiments of the present disclosure.
- 20 is a flowchart for data reception based on sample grouping according to embodiments of the present disclosure.
- first and second are used only for the purpose of distinguishing one element from another, and do not limit the order or importance of elements unless otherwise specified. Accordingly, within the scope of the present disclosure, a first component in one embodiment may be referred to as a second component in another embodiment, and similarly, a second component in one embodiment may be referred to as a first component in another embodiment. can also be called
- components that are distinguished from each other are intended to clearly explain each characteristic, and do not necessarily mean that the components are separated. That is, a plurality of components may be integrated to form a single hardware or software unit, or a single component may be distributed to form a plurality of hardware or software units. Accordingly, even such integrated or distributed embodiments are included in the scope of the present disclosure, even if not mentioned separately.
- components described in various embodiments do not necessarily mean essential components, and some may be optional components. Accordingly, an embodiment comprising a subset of elements described in one embodiment is also included in the scope of the present disclosure. In addition, embodiments including other components in addition to the components described in various embodiments are also included in the scope of the present disclosure.
- the present disclosure relates to encoding and decoding of point cloud-related data, and terms used in the present disclosure may have common meanings commonly used in the technical field to which the present disclosure belongs unless newly defined in the present disclosure.
- “/” and “,” may be interpreted as “and/or”.
- “A/B” and “A, B” could be interpreted as “A and/or B”.
- “A/B/C” and “A, B, C” may mean “at least one of A, B and/or C”.
- This disclosure relates to compression of point cloud related data.
- Various methods or embodiments of the present disclosure may be applied to a point cloud compression or point cloud coding (PCC) standard (ex. G-PCC or V-PCC standard) of the Moving Picture Experts Group (MPEG) or a next-generation video/image coding standard.
- PCC point cloud compression or point cloud coding
- MPEG Moving Picture Experts Group
- MPEG Moving Picture Experts Group
- a “point cloud” may mean a set of points located in a 3D space.
- “point cloud content” is content expressed as a point cloud and may mean “point cloud video/video”.
- 'point cloud video/video' is referred to as 'point cloud video'.
- a point cloud video may include one or more frames, and one frame may be a still image or a picture. Accordingly, the point cloud video may include a point cloud image/frame/picture, and may be referred to as “point cloud image”, “point cloud frame”, and “point cloud picture”.
- point cloud data may mean data or information related to each point in a point cloud.
- Point cloud data may include geometry and/or attributes.
- point cloud data may further include meta data.
- Point cloud data may be referred to as “point cloud content data” or “point cloud video data” or the like.
- point cloud data may be referred to as "point cloud content”, “point cloud video”, “G-PCC data”, and the like.
- a point cloud object corresponding to point cloud data may be represented in a box shape based on a coordinate system, and the box shape based on the coordinate system may be referred to as a bounding box. That is, the bounding box may be a rectangular cuboid capable of containing all points of a point cloud, and may be a rectangular cuboid including a source point cloud frame.
- the geometry includes the position (or position information) of each point, and the position includes parameters (eg, a coordinate system consisting of an x-axis, a y-axis, and a z-axis) representing a three-dimensional coordinate system For example, x-axis value, y-axis value, and z-axis value). Geometry may be referred to as “geometry information”.
- the attribute may include a property of each point, and this property is one of texture information, color (RGB or YCbCr), reflectance (r), transparency, etc. of each point may contain more than Attributes may be referred to as “attribute information”.
- Meta data may include various data related to acquisition in an acquisition process described later.
- FIG. 1 shows an example of a system for providing point cloud content (hereinafter referred to as a 'point cloud content providing system') according to embodiments of the present disclosure.
- 2 shows an example of a process in which a point cloud content providing system provides point cloud content.
- the point cloud content providing system may include a transmission device 10 and a reception device 20 .
- the point cloud content providing system includes an acquisition process (S20), an encoding process (S21), a transmission process (S22), a decoding process (S23) illustrated in FIG. 2 by operations of the transmission device 10 and the reception device 20.
- a rendering process (S24) and/or a feedback process (S25) may be performed.
- the transmission device 10 acquires point cloud data, and converts a bitstream through a series of processes (eg, encoding process) on the acquired point cloud data (original point cloud data). can be printed out.
- the point cloud data may be output in the form of a bitstream through an encoding process.
- the transmission device 10 may transmit the output bitstream in the form of a file or streaming (streaming segment) to the reception device 20 through a digital storage medium or a network.
- Digital storage media may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, and SSD.
- the receiving device 20 may process (eg, decode or restore) received data (eg, encoded point cloud data) back into original point cloud data and render the received data (eg, encoded point cloud data).
- received data eg, encoded point cloud data
- render the received data eg, encoded point cloud data
- Point cloud content can be provided to the user through these processes, and the present disclosure can provide various embodiments required to effectively perform these series of processes.
- the transmission device 10 may include an acquisition unit 11, an encoding unit 12, an encapsulation processing unit 13, and a transmission unit 14, and the reception device 20 may include a receiving unit 21, a decapsulation processing unit 22, a decoding unit 23 and a rendering unit 24.
- the acquisition unit 11 may perform a process (S20) of acquiring a point cloud video through a capture, synthesis, or generation process. Accordingly, the acquisition unit 11 may be referred to as 'point cloud video acquisition'.
- Point cloud data (geometry and/or attributes, etc.) for a plurality of points may be generated by the acquisition process (S20).
- meta data related to point cloud video acquisition may be generated through the acquisition process ( S20 ).
- mesh data (eg, triangular data) representing connection information between point clouds may be generated by the acquisition process ( S20 ).
- Meta data may include initial viewing orientation metadata.
- the initial viewing orientation meta data may indicate whether the point cloud data represents forward or backward data.
- Meta data may be referred to as "auxiliary data" which is meta data about a point cloud.
- the acquired point cloud video may include a polygon file format or the stanford triangle format (PLY) file. Since a point cloud video has one or more frames, one or more PLY files may be included in the acquired point cloud video.
- the PLY file may include point cloud data of each point.
- the acquiring unit 11 includes camera equipment capable of obtaining depth (depth information) and an RGB camera capable of extracting color information corresponding to the depth information. It may consist of a combination of
- the camera equipment capable of obtaining depth information may be a combination of an infrared pattern projector and an infrared camera.
- the acquisition unit 11 may be composed of a lidar (LiDAR), and the lidar may use a radar system that measures the position coordinates of the reflector by measuring the time it takes for the laser pulse to be reflected and returned.
- LiDAR lidar
- the acquisition unit 11 may extract a shape of a geometry composed of points in a 3D space from depth information, and may extract an attribute representing color or reflection of each point from RGB information.
- Methods for extracting (or capturing, acquiring, etc.) point cloud video include an inward-facing method for capturing a central object and an outward-facing method for capturing an external environment. There may be an outward-facing scheme.
- the encoder 12 may perform an encoding process (S21) of encoding the data (geometry, attribute and/or meta data and/or mesh data, etc.) generated by the acquisition unit 11 into one or more bitstreams. . Accordingly, the encoder 12 may be referred to as a 'point cloud video encoder'. The encoder 12 may encode the data generated by the acquisition unit 11 serially or in parallel.
- the encoding process (S21) performed by the encoder 12 may be geometry-based point cloud compression (G-PCC).
- the encoder 12 may perform a series of procedures such as prediction, transformation, quantization, and entropy coding for compression and coding efficiency.
- Encoded point cloud data may be output in the form of a bitstream.
- the encoder 12 may encode the point cloud data by dividing it into geometry and attributes as will be described later.
- the output bitstream may include a geometry bitstream including encoded geometry and an attribute bitstream including encoded attributes.
- the output bitstream may further include one or more of a metadata bitstream including meta data, an auxiliary bitstream including auxiliary data, and a mesh data bitstream including mesh data.
- the encoding process (S21) will be described in more detail below.
- a bitstream containing encoded point cloud data may be referred to as a 'point cloud bitstream' or a 'point cloud video bitstream'.
- the encapsulation processor 13 may perform a process of encapsulating one or more bitstreams output from the decoder 12 in the form of a file or a segment. Accordingly, the encapsulation processor 13 may be referred to as a 'file/segment encapsulation module'.
- the encapsulation processing unit 13 is composed of a separate component/module in relation to the transmission unit 14 is represented, but according to embodiments, the encapsulation processing unit 13 is ) may be included.
- the encapsulation processing unit 13 may encapsulate the corresponding data in a file format such as ISOBMFF (ISO Base Media File Format) or may process the data in the form of other DASH segments.
- the encapsulation processing unit 13 may include meta data in a file format. Meta data may be included in, for example, boxes of various levels on the ISOBMFF file format, or may be included as data in a separate track within a file.
- the encapsulation processing unit 130 may encapsulate meta data itself into a file. Meta data processed by the encapsulation processing unit 13 may be received from a metadata processing unit not shown in the drawing.
- the meta data processing unit may be included in the encoding unit 12 or may be configured as a separate component/module.
- the transmission unit 14 may perform a transmission process (S22) of applying processing (processing for transmission) according to a file format to the 'encapsulated point cloud bitstream'.
- the transmission unit 140 may transmit a bitstream or a file/segment including the corresponding bitstream to the reception unit 21 of the reception device 20 through a digital storage medium or a network. Accordingly, the transmission unit 14 may be referred to as a 'transmitter' or a 'communication module'.
- the transmission unit 14 may process point cloud data according to an arbitrary transmission protocol.
- 'processing the point cloud data according to an arbitrary transmission protocol' may be 'processing for transmission'.
- Processing for transmission may include processing for delivery through a broadcasting network, processing for delivery through a broadband, and the like.
- the transmitter 14 may receive not only point cloud data but also meta data from the meta data processor, and may process the transmitted meta data for transmission.
- processing for transmission may be performed in a transmission processing unit, and the transmission processing unit may be included in the transmission unit 14 or configured as a component/module separate from the transmission unit 14.
- the receiving unit 21 may receive a bitstream transmitted by the transmission device 10 or a file/segment including the corresponding bitstream. Depending on the transmitted channel, the receiving unit 21 may receive a bitstream or a file/segment including the corresponding bitstream through a broadcasting network, or may receive a bitstream or a file/segment including the corresponding bitstream through a broadband. there is. Alternatively, the receiving unit 21 may receive a bitstream or a file/segment including the corresponding bitstream through a digital storage medium.
- the receiver 21 may process the received bitstream or a file/segment including the corresponding bitstream according to a transmission protocol.
- the receiving unit 21 may perform a reverse process of transmission processing (processing for transmission) to correspond to the processing for transmission performed by the transmission device 10 .
- the receiving unit 21 may transfer encoded point cloud data to the decapsulation processing unit 22 and transfer meta data to the meta data parsing unit.
- Meta data may be in the form of a signaling table. According to embodiments, the reverse process of processing for transmission may be performed in the receiving processing unit.
- Each of the reception processing unit, the decapsulation processing unit 22, and the meta data parsing unit may be included in the reception unit 21 or configured as components/modules separate from the reception unit 21.
- the decapsulation processing unit 22 may decapsulate point cloud data (ie, a bitstream in the form of a file) received from the reception unit 21 or the reception processing unit. Accordingly, the decapsulation processor 22 may be referred to as a 'file/segment decapsulation module'.
- the decapsulation processing unit 22 may obtain a point cloud bitstream or a meta data bitstream by decapsulating files according to ISOBMFF or the like.
- metadata may be included in the point cloud bitstream.
- the obtained point cloud bitstream may be delivered to the decoder 23, and the obtained metadata bitstream may be delivered to the metadata processor.
- the meta data processing unit may be included in the decoding unit 23 or may be configured as a separate component/module.
- Meta data acquired by the decapsulation processing unit 23 may be in the form of a box or track in a file format.
- the decapsulation processor 23 may receive meta data necessary for decapsulation from the meta data processor if necessary. Meta data may be transferred to the decoder 23 and used in the decoding process (S23), or may be transferred to the rendering unit 24 and used in the rendering process (S24).
- the decoder 23 may perform a decoding process (S23) of decoding the point cloud bitstream (encoded point cloud data) by receiving the bitstream and performing an operation corresponding to the operation of the encoder 12. . Accordingly, the decoder 23 may be referred to as a 'point cloud video decoder'.
- the decoder 23 may decode the point cloud data by dividing it into geometry and attribute. For example, the decoder 23 may restore (decode) geometry from a geometry bitstream included in the point cloud bitstream, and generate attributes based on an attribute bitstream included in the point cloud bitstream and the restored geometry. It can be restored (decoded). A 3D point cloud video/image may be reconstructed based on position information according to the reconstructed geometry and an attribute (color or texture, etc.) according to the decoded attribute.
- the decoding process (S23) will be described in more detail below.
- the rendering unit 24 may perform a rendering process ( S24 ) of rendering the restored point cloud video. Accordingly, the rendering unit 24 may be referred to as a 'renderer'.
- the rendering process (S24) may refer to a process of rendering and displaying point cloud content on a 3D space.
- rendering may be performed according to a desired rendering method based on position information and attribute information of points decoded through the decoding process.
- the feedback process (S25) may include a process of transferring various feedback information that may be obtained in the rendering process (S24) or the display process to the transmitting device 10 or to other components in the receiving device 20.
- the feedback process (S25) may be performed by one or more of the components included in the receiving device 20 of FIG. 1, or may be performed by one or more of the components shown in FIGS. 9 and 10.
- the feedback process (S25) may be performed by a 'feedback unit' or a 'sensing/tracking unit'.
- FIG. 3 shows an example of a point cloud encoding apparatus 300 according to embodiments of the present disclosure.
- the point cloud encoding device 300 of FIG. 3 may correspond to the encoder 12 of FIG. 1 in configuration and function.
- the point cloud encoding apparatus 300 includes a coordinate system conversion unit 305, a geometry quantization unit 310, an octree analysis unit 315, an approximation unit 320, a geometry encoding unit 325, Restoration unit 330, attribute transformation unit 340, RAHT transformation unit 345, LOD generation unit 350, lifting unit 355, attribute quantization unit 360, attribute encoding unit 365 and/or color A conversion unit 335 may be included.
- the point cloud data acquired by the acquisition unit 11 may go through processes for adjusting the quality (eg, lossless, lossy, or near-lossless) of the point cloud content according to network conditions or applications. there is.
- each point of the obtained point cloud content may be transmitted without loss, but in this case, real-time streaming may not be possible because the size of the point cloud content is large. Therefore, in order to smoothly provide the point cloud content, a process of reconstructing the point cloud content according to the maximum target bitrate is required.
- Processes for adjusting the quality of point cloud content may include a process of reconstructing and encoding position information (position information included in geometry information) or color information (color information included in attribute information) of points.
- a process of reconstructing and encoding position information of points may be referred to as geometry coding, and a process of reconstructing and encoding attribute information associated with each point may be referred to as attribute coding.
- Geometry coding may include a geometry quantization process, a voxelization process, an octree analysis process, an approximation process, a geometry encoding process, and/or a coordinate system conversion process. Also, geometry coding may further include a geometry restoration process. Attribute coding may include a color transformation process, an attribute transformation process, a prediction transformation process, a lifting transformation process, a RAHT transformation process, an attribute quantization process, an attribute encoding process, and the like.
- the process of converting the coordinate system may correspond to a process of converting a coordinate system for positions of points. Accordingly, the process of transforming the coordinate system may be referred to as 'transform coordinates'.
- the coordinate system conversion process may be performed by the coordinate system conversion unit 305 .
- the coordinate system conversion unit 305 converts the positions of points from the global space coordinate system into position information of a 3-dimensional space (eg, a 3-dimensional space represented by X-axis, Y-axis, and Z-axis coordinate systems).
- Position information in a 3D space may be referred to as 'geometry information'.
- the geometry quantization process may correspond to a process of quantizing position information of points and may be performed by the geometry quantization unit 310 .
- the geometry quantization unit 310 searches for position information having the minimum (x, y, z) value among position information of points, and obtains the minimum (x, y, z) value from the position information of each point. Position information having a value may be subtracted.
- the geometry quantization unit 310 may perform a quantization process by multiplying the subtracted value by a preset quantization scale value and then adjusting (lowering or raising) the result to a near integer value. there is.
- the voxelization process may correspond to a process of matching geometry information quantized through the quantization process to a specific voxel existing in a 3D space.
- a voxelization process may also be performed by the geometry quantization unit 310 .
- the geometry quantization unit 310 may perform octree-based voxelization based on position information of points in order to reconstruct each point to which the quantization process is applied.
- the geometry encoding process may correspond to a process of performing entropy coding on occupancy codes.
- the geometry encoding process may be performed by the geometry encoding unit 325 .
- the geometry encoding unit 325 may perform entropy coding on the occupancy code.
- the generated occupancy code may be directly encoded or may be encoded through an intra/inter coding process to increase compression efficiency.
- the receiving device 20 may reconstruct the octree through the occupancy code.
- Positions of points in a specific region may be directly transmitted, or positions of points in a specific region may be reconstructed based on voxels using a surface model.
- a mode for directly transmitting the location of each point for a specific node may be a direct mode.
- the point cloud encoding apparatus 300 may check whether conditions for enabling the direct mode are satisfied.
- the conditions for enabling direct mode are: 1) Use direct mode option must be enabled, 2) That particular node does not correspond to a leaf node, 3) Points below the threshold must exist within that particular node. and 4) that the total number of points to be directly transmitted does not exceed a limit.
- the point cloud encoding apparatus 300 may directly entropy-code and transmit a position value of a point of a corresponding specific node through the geometry encoding unit 325.
- a mode for reconstructing a position of a point in a specific area based on a voxel using a surface model may be a trisoup mode.
- the tree-up mode may be performed by the approximation unit 320 .
- the approximation unit 320 may determine a specific level of the octree and reconstruct the positions of points in the node area on a voxel basis from the determined specific level using a surface model.
- the point cloud encoding apparatus 300 may selectively apply the tree-soup mode. Specifically, when using the tree-soup mode, the point cloud encoding apparatus 300 may designate a level (specific level) to which the tree-soup mode is applied. For example, if the designated specific level is equal to the depth (d) of the octree, the tree-up mode may not be applied. That is, the specified specific level must be less than the depth value of the octree.
- a 3D cube area of nodes of a specified level is called a block, and one block may include one or more voxels.
- a block or voxel may correspond to a brick.
- Each block may have 12 edges, and the approximation unit 320 may check whether each edge is adjacent to an occupied voxel having a point.
- Each edge may be adjacent to several occupied voxels.
- a specific position of an edge adjacent to a voxel is called a vertex, and the approximation unit 320 may determine an average position of corresponding positions as a vertex when several occupied voxels are adjacent to one edge.
- the point cloud encoding apparatus 300 determines the starting point (x, y, z) of the edge, the direction vector ( ⁇ x, ⁇ y, ⁇ z) of the edge, and the position value of the vertex (relative within the edge). position values) may be entropy-coded through the geometry encoding unit 325.
- the geometry restoration process may correspond to a process of generating a restored geometry by reconstructing the octree and/or the approximated octree.
- the geometry restoration process may be performed by the restoration unit 330 .
- the restoration unit 330 may perform a geometry restoration process through triangle reconstruction, up-sampling, voxelization, and the like.
- the restoration unit 330 may reconstruct a triangle based on the starting point of the edge, the direction vector of the edge, and the position value of the vertex.
- the reconstructor 330 may perform an upsampling process to add points in the middle along the edges of the triangle and convert them into voxels.
- the restoration unit 330 may generate additional points based on the upsampling factor and the width of the block. These points can be called refined vertices.
- the restoration unit 330 may voxel the refined vertices, and the point cloud encoding apparatus 300 may perform attribute coding based on the voxelized position values.
- the geometry encoding unit 325 may increase compression efficiency by applying context adaptive arithmetic coding.
- the geometry encoding unit 325 may directly entropy code the occupancy code using the arithmetic code.
- the geometry encoding unit 325 adaptively performs encoding based on occupancy of neighboring nodes (intra-coding) or adaptively performs encoding based on the occupancy code of the previous frame. may be performed (inter-coding).
- a frame may mean a set of point cloud data generated at the same time. Since intra-coding and inter-coding are optional processes, they may be omitted.
- Attribute coding may correspond to a process of coding attribute information based on the restored (reconstructed) geometry and the geometry before coordinate system conversion (original geometry). Since an attribute may be dependent on geometry, the reconstructed geometry may be utilized for attribute coding.
- attributes may include color, reflectance, and the like.
- the same attribute coding method may be applied to information or parameters included in attributes. Color has three components and reflectance has one component, and each component can be processed independently.
- Attribute coding may include a color transformation process, an attribute transformation process, a prediction transformation process, a lifting transformation process, a RAHT transformation process, an attribute quantization process, an attribute encoding process, and the like.
- the prediction transformation process, the lifting transformation process, and the RAHT transformation process may be selectively used, or a combination of one or more may be used.
- the color conversion process may correspond to a process of converting a color format within an attribute into another format.
- the color conversion process may be performed by the color conversion unit 335 . That is, the color conversion unit 335 may convert colors within attributes.
- the color conversion unit 335 may perform a coding operation of converting a color within an attribute from RGB to YCbCr.
- an operation of the color conversion unit 335 that is, a color conversion process may be optionally applied according to a color value included in an attribute.
- the position value of the points existing in the voxel is the center of the voxel in order to integrate them into one point information for the corresponding voxel. It can be set as a point. Accordingly, a process of converting the values of attributes associated with corresponding points may be required. Also, an attribute conversion process may be performed even when the tree-up mode is performed.
- the attribute transformation process may correspond to a process of transforming an attribute based on a position where geometry coding is not performed and/or a reconstructed geometry.
- the attribute conversion process may correspond to a process of transforming an attribute of a point at a corresponding position based on a position of a point included in a voxel.
- the attribute conversion process may be performed by the attribute conversion unit 340 .
- the attribute conversion unit 340 may calculate an average value of attribute values of points (neighboring points) adjacent to each other within a specific radius and the central location value of the voxel. Alternatively, the attribute conversion unit 340 may apply a weight according to a distance from the central location to attribute values and calculate an average value of the weighted attribute values. In this case, each voxel has a position and a calculated attribute value.
- the prediction conversion process may correspond to a process of predicting an attribute value of a current point based on attribute values of one or more points (neighboring points) neighboring the current point (a point corresponding to a prediction target).
- the prediction conversion process may be performed by the level of detail (LOD) generating unit 350 .
- LOD level of detail
- Prediction transformation is a method to which an LOD transformation technique is applied, and the LOD generation unit 350 may calculate and set the LOD value of each point based on the LOD distance value of each point.
- the LOD generation unit 350 may generate a predictor for each point for predictive transformation. Accordingly, if there are N points, N predictors may be generated.
- the neighboring points may be points existing within a distance set for each LOD from the current point.
- the predictor may multiply attribute values of neighboring points by the 'set weight value' and set an average value of the attribute values multiplied by the weight values as the predicted attribute value of the current point.
- An attribute quantization process may be performed on a residual attribute value obtained by subtracting the predicted attribute value of the current point from the attribute value of the current point.
- the lifting transformation process may correspond to a process of reconstructing points into a set of detail levels through an LOD generation process.
- the lifting conversion process may be performed by the lifting unit 355 .
- the lifting transformation process also includes a process of generating a predictor for each point, a process of setting the calculated LOD to the predictor, a process of registering neighboring points, and a process of setting weights according to the distance between the current point and neighboring points. can include
- the RAHT transformation process may correspond to a method of predicting attribute information of nodes at a higher level using attribute information associated with nodes at a lower level of the octree. That is, the RATH conversion process may correspond to an attribute information intra-coding method through backward scan of an octree.
- the RAHT conversion process may be performed by the RAHT conversion unit 345.
- the RAHT conversion unit 345 may perform a RAHT conversion process up to the root node while scanning from voxels to the entire area and summing (merging) the voxels into a larger block at each step. Since the RAHT conversion unit 345 performs the RAHT conversion process only for occupied nodes, in the case of an empty node that is not occupied, the RAHT conversion process may be performed for a node of a higher level immediately above it.
- the attribute quantization process may correspond to a process of quantizing attributes output from the RAHT conversion unit 345, the LOD generation unit 350, and/or the lifting unit 355.
- the attribute quantization process may be performed by the attribute quantization unit 360 .
- the attribute encoding process may correspond to a process of outputting an attribute bitstream by encoding the quantized attribute.
- the attribute encoding process may be performed by the attribute encoding unit 365.
- FIG. 4 shows an example of a point cloud decoding apparatus 4400 according to an embodiment of the present disclosure.
- the point cloud decoding apparatus 4400 of FIG. 4 may correspond to the decoding unit 23 of FIG. 1 in configuration and function.
- the point cloud decoding apparatus 4400 may perform a decoding process based on data (bitstream) transmitted from the transmission apparatus 10 .
- the decoding process may include restoring (decoding) the point cloud video by performing an operation corresponding to the above-described encoding operation on the bitstream.
- the decoding process may include a geometry decoding process and an attribute decoding process.
- the geometry decoding process may be performed by the geometry decoding unit 410
- the attribute decoding process may be performed by the attribute decoding unit 420. That is, the point cloud decoding apparatus 400 may include a geometry decoding unit 410 and an attribute decoding unit 420 .
- the geometry decoding unit 410 may restore geometry from the geometry bitstream, and the attribute decoding unit 420 may restore attributes based on the restored geometry and the attribute bitstream. Also, the point cloud decoding apparatus 400 may restore a 3D point cloud video (point cloud data) based on position information according to the restored geometry and attribute information according to the restored attribute.
- the point cloud decoding apparatus 500 includes a geometry decoding unit 505, an octree synthesis unit 510, an approximation synthesis unit 515, a geometry restoration unit 520, and a coordinate system inverse transformation unit 525. , an attribute decoding unit 530, an attribute inverse quantization unit 535, a RATH transform unit 550, an LOD generator 540, an inverse lifting unit 545, and/or a color inverse transform unit 555.
- the geometry decoding unit 505, the octree synthesis unit 510, the approximation synthesis unit 515, the geometry restoration unit 520, and the coordinate system inverse transformation unit 550 may perform geometry decoding.
- Geometry decoding may be performed in a reverse process to the geometry coding described with reference to FIGS. 1 to 3 .
- Geometry decoding may include direct coding and trisoup geometry decoding. Direct coding and tri-sup geometry decoding may be selectively applied.
- the geometry decoding unit 505 may decode the received geometry bitstream based on Arithmetic coding.
- An operation of the geometry decoding unit 505 may correspond to a reverse process of an operation performed by the geometry encoding unit 335 .
- the octree synthesizer 510 may generate an octree by obtaining an occupancy code from a decoded geometry bitstream (or information about geometry secured as a result of decoding). An operation of the octree synthesizer 510 may correspond to a reverse process of an operation performed by the octree analyzer 315 .
- the approximation synthesis unit 515 may synthesize a surface based on the decoded geometry and/or the generated octree when trisup geometry encoding is applied.
- the geometry restoration unit 520 may restore geometry based on the surface and the decoded geometry.
- the geometry restoration unit 520 may directly import and add position information of points to which direct coding is applied.
- the geometry restoration unit 520 may perform reconstruction operations such as triangle reconstruction, up-sampling, and voxelization operations to restore the geometry.
- the reconstructed geometry may include a point cloud picture or frame that does not include attributes.
- the coordinate system inverse transformation unit 550 may obtain positions of points by transforming the coordinate system based on the restored geometry. For example, the coordinate system inverse transformation unit 550 may inversely transform the positions of points from a 3-dimensional space (eg, a 3-dimensional space represented by X-axis, Y-axis, and Z-axis coordinate systems) into position information of a global space coordinate system.
- a 3-dimensional space eg, a 3-dimensional space represented by X-axis, Y-axis, and Z-axis coordinate systems
- the attribute decoding unit 530, the attribute inverse quantization unit 535, the LOD generator 540, and/or the inverse lifting unit 545 may perform attribute decoding.
- Attribute decoding may include RAHT transform decoding, predictive transform decoding, and lifting transform decoding. The above three decodings may be selectively used, or a combination of one or more decodings may be used.
- the attribute decoding unit 530 may decode the attribute bitstream based on Arithmetic coding. For example, when the attribute value of the current point is directly entropy-encoded because there are no neighboring points in the predictor of each point, the attribute decoding unit 530 decodes the attribute value (an attribute value that is not quantized) of the current point. can As another example, when the quantized residual attribute value is entropy-encoded because neighboring points exist in the predictor of the current points, the attribute decoder 530 may decode the quantized residual attribute value.
- the attribute inverse quantization unit 535 may inverse quantize the decoded attribute bitstream or information about attributes obtained as a result of decoding, and output inverse quantized attributes (or attribute values). For example, when the quantized residual attribute value is output from the attribute decoding unit 530, the attribute inverse quantization unit 535 may inversely quantize the quantized residual attribute value and output the residual attribute value.
- the inverse quantization process may be selectively applied based on whether or not attributes are encoded by the point cloud encoding device 300 . That is, when the attribute value of the current point is directly encoded because there are no neighboring points in the predictor of each point, the attribute decoding unit 530 may output the attribute value of the current point that is not quantized, and the attribute encoding process is performed. can be skipped.
- the RATH transform unit 550, the LOD generator 540, and/or the inverse lift unit 545 may process the reconstructed geometry and inverse quantized attributes.
- the RATH converter 550, the LOD generator 540, and/or the inverse lifter 545 may selectively perform a decoding operation corresponding to the encoding operation of the point cloud encoding apparatus 300.
- the inverse color transform unit 555 may perform inverse transform coding to inverse transform color values (or textures) included in decoded attributes. An operation of the color inverse transform unit 555 may be selectively performed based on whether the color transform unit 335 is operated.
- FIG. 6 shows an example of a structure capable of interworking with a method/apparatus for transmitting and receiving point cloud data according to embodiments of the present disclosure.
- the structure of FIG. 6 is at least one of an AI Server, a robot, a self-driving vehicle, an XR device, a smartphone, a home appliance, and/or an HMD. At least one represents a configuration connected to a cloud network. Robots, self-driving vehicles, XR devices, smartphones, or consumer electronics may be referred to as devices. In addition, the XR device may correspond to or interwork with a point cloud data device (PCC) according to embodiments.
- PCC point cloud data device
- a cloud network may refer to a network that constitutes a part of a cloud computing infrastructure or exists within a cloud computing infrastructure.
- the cloud network may be configured using a 3G network, a 4G or Long Term Evolution (LTE) network, or a 5G network.
- LTE Long Term Evolution
- the server may be connected to at least one or more of robots, self-driving vehicles, XR devices, smart phones, home appliances, and/or HMDs through a cloud network, and may assist at least part of processing of the connected devices.
- the HMD may represent one of the types in which an XR device and/or a PCC device according to embodiments may be implemented.
- An HMD type device may include a communication unit, a control unit, a memory unit, an I/O unit, a sensor unit, and a power supply unit.
- the XR/PCC device applies PCC and/or XR technology to HMDs, HUDs in vehicles, televisions, mobile phones, smart phones, computers, wearable devices, home appliances, digital signage, vehicles, fixed robots or mobile robots, etc. may be implemented as
- the XR/PCC device analyzes 3D point cloud data or image data obtained through various sensors or from an external device to generate location (geometry) data and attribute data for 3D points, thereby generating information about the surrounding space or real objects. Information can be obtained, and XR objects to be displayed can be rendered and output. For example, the XR/PCC device may output an XR object including additional information about the recognized object in correspondence with the recognized object.
- the XR/PCC device may be implemented as a mobile phone or the like to which PCC technology is applied.
- the mobile phone may decode and display point cloud content based on PCC technology.
- Self-driving vehicles can be implemented as mobile robots, vehicles, unmanned air vehicles, etc. by applying PCC technology and XR technology.
- An autonomous vehicle to which XR/PCC technology is applied may refer to an autonomous vehicle equipped with a means for providing an XR image or an autonomous vehicle subject to control/interaction within the XR image.
- autonomous vehicles that are controlled/interacted within an XR image are distinguished from XR devices and may be interlocked with each other.
- An autonomous vehicle equipped with a means for providing an XR/PCC image may acquire sensor information from sensors including cameras, and output an XR/PCC image generated based on the acquired sensor information.
- an autonomous vehicle may provide an XR/PCC object corresponding to a real object or an object in a screen to a passenger by outputting an XR/PCC image with a HUD.
- the XR/PCC object when the XR/PCC object is output to the HUD, at least a part of the XR/PCC object may be output to overlap the real object toward which the passenger's gaze is directed.
- an XR/PCC object when an XR/PCC object is output to a display provided inside an autonomous vehicle, at least a part of the XR/PCC object may be output to overlap the object in the screen.
- an autonomous vehicle may output XR/PCC objects corresponding to objects such as lanes, other vehicles, traffic lights, traffic signs, two-wheeled vehicles, pedestrians, and buildings.
- VR technology is a display technology that provides objects or backgrounds of the real world only as CG images.
- AR technology means a technology that shows a virtual CG image on top of a real object image.
- MR technology is similar to the aforementioned AR technology in that it mixes and combines virtual objects in the real world.
- AR technology the distinction between real objects and virtual objects made of CG images is clear, and virtual objects are used in a form that complements real objects, whereas in MR technology, virtual objects are considered equivalent to real objects. distinct from technology. More specifically, for example, a hologram service to which the above-described MR technology is applied. Integrating VR, AR and MR technologies, it can be referred to as XR technology.
- Point cloud data may represent a volumetric encoding of a point cloud consisting of a sequence of frames (point cloud frames).
- Each point cloud frame may include a number of points, positions of points, and attributes of points. The number of points, positions of points, and attributes of points may vary from frame to frame.
- Each point cloud frame may refer to a set of 3D points specified by cartesian coordinates (x, y, z) and zero or more attributes of 3D points at a particular time instance.
- the Cartesian coordinate system (x, y, z) of 3D points may be a position or geometry.
- the present disclosure may further perform a spatial division process of dividing the point cloud data into one or more 3D blocks before encoding (encoding) the point cloud data.
- a 3D block may mean all or a partial area of a 3D space occupied by point cloud data.
- a 3D block is one of a tile group, tile, slice, coding unit (CU), prediction unit (PU), or transform unit (TU) can mean more.
- a tile corresponding to a 3D block may mean all or a partial area of a 3D space occupied by point cloud data.
- a slice corresponding to a 3D block may mean all or a partial area of a 3D space occupied by point cloud data.
- a tile may be divided into one or more slices based on the number of points included in one tile.
- a tile may be a group of slices having bounding box information. Bounding box information of each tile may be specified in a tile inventory (or tile parameter set (TPS)).
- TPS tile parameter set
- a tile may overlap another tile in the bounding box.
- a slice may be a unit of data in which encoding is independently performed or a unit of data in which decoding is independently performed.
- a slice can be a set of points that can be independently encoded or decoded.
- a slice may be a series of syntax elements representing part or all of a coded point cloud frame.
- Each slice may include an index for identifying a tile to which the corresponding slice belongs.
- the spatially divided 3D blocks may be independently or non-independently processed.
- spatially divided 3D blocks may be encoded or decoded independently or non-independently, and transmitted or received independently or non-independently.
- the spatially divided 3D blocks may be quantized or inversely quantized independently or independently of each other, and may be transformed or inversely transformed independently or independently of each other.
- the space-divided 3D blocks may be independently or non-independently rendered.
- encoding or decoding may be performed in units of slices or units of tiles.
- quantization or inverse quantization may be performed differently for each tile or slice, and may be performed differently for each transformed or inverse transformed tile or slice.
- point cloud data is spatially divided into one or more 3D blocks and the spatially divided 3D blocks are processed independently or non-independently, the process of processing the 3D blocks is performed in real time and at the same time, the corresponding process is reduced. It can be treated as a delay.
- random access and parallel encoding or parallel decoding on a 3D space occupied by point cloud data may be possible, and errors accumulated during encoding or decoding may be prevented.
- the transmission device 700 includes a space divider 705 performing a space division process, a signaling processor 710, a geometry encoder 715, an attribute encoder 720, an encapsulation processor ( 725) and/or a transmission processing unit 730.
- the spatial division unit 705 may perform a spatial division process of dividing the point cloud data into one or more 3D blocks based on a bounding box and/or a sub-bounding box.
- point cloud data may be divided into one or more tiles and/or one or more slices.
- point cloud data may be divided into one or more tiles through a spatial partitioning process, and each of the divided tiles may be further divided into one or more slices.
- the signaling processing unit 710 may generate and/or process signaling information (eg, entropy encoding) and output the signaling information in the form of a bitstream.
- signaling information eg, entropy encoding
- a bitstream output from the signaling processor in which signaling information is encoded
- the signaling information may include information for space division or information about space division. That is, the signaling information may include information related to a space division process performed by the space divider 705 .
- the signaling information may include information for decoding some point cloud data, information related to 3D space areas for supporting spatial access, and the like.
- the signaling information may include 3D bounding box information, 3D space area information, tile information, and/or tile inventory information.
- the signaling information may be provided from the spatial divider 705, the geometry encoder 715, the attribute encoder 720, the transmission processor 725, and/or the encapsulation processor 730.
- the signaling processor 710 transmits the feedback information fed back from the receiving device 800 of FIG. 8 to the spatial divider 705, the geometry encoder 715, the attribute encoder 720, the transmission processor 725, and It can be provided to the encapsulation processing unit 730.
- Signaling information may be stored and signaled in a sample in a track, a sample entry, a sample group, a track group, or a separate metadata track.
- the signaling information includes a sequence parameter set (SPS) for signaling at the sequence level, a geometry parameter set (GPS) for signaling of geometry coding information, and signaling of attribute coding information. It may be signaled in units of an attribute parameter set (APS) for signal level and a tile parameter set (TPS) (or tile inventory) for signaling at the tile level. Also, signaling information may be signaled in units of coding units such as slices or tiles.
- the positions (position information) of the 3D blocks may be output to the geometry encoder 715, and the attributes (attribute information) of the 3D blocks may be output to the attribute encoder 720.
- the geometry encoder 715 may construct an octree based on the position information, encode the constructed octree, and output a geometry bitstream. In addition, the geometry encoder 715 may reconstruct (restore) the octree and/or the approximated octree and output it to the attribute encoder 720. The reconstructed octree may be a reconstructed geometry.
- the geometry encoder 715 includes the coordinate system conversion unit 305 of FIG. 3, the geometry quantization unit 310, the octree analysis unit 315, the approximation unit 320, the geometry encoding unit 325, and/or the reconstruction unit 330. may perform all or part of the operations performed by
- the attribute encoder 720 may output an attribute bitstream by encoding attributes based on the reconstructed geometry.
- the attribute encoder 720 includes the attribute conversion unit 340 of FIG. 3, the RAHT conversion unit 345, the LOD generation unit 350, the lifting unit 355, the attribute quantization unit 360, the attribute encoding unit 365, and / or all or part of the operations performed by the color conversion unit 335 may be performed.
- the encapsulation processing unit 725 may encapsulate one or more input bitstreams into a file or segment.
- the encapsulation processing unit 725 may encapsulate the geometry bitstream, the attribute bitstream, and the signaling bitstream, respectively, or multiplex the geometry bitstream, the attribute bitstream, and the signaling bitstream to perform encapsulation. can do.
- the encapsulation processing unit 725 may encapsulate a bitstream (G-PCC bitstream) composed of a type-length-value (TLV) structure sequence into a file.
- TLV (or TLV encapsulation) structures constituting the G-PCC bitstream may include a geometry bitstream, an attribute bitstream, a signaling bitstream, and the like.
- the G-PCC bitstream may be generated by the encapsulation processor 725 or may be generated by the transmission processor 730.
- the TLV structure or TLV encapsulation structure will be described in detail later.
- the encapsulation processing unit 725 may perform all or some of the operations performed by the encapsulation processing unit 13 of FIG. 1 .
- the transmission processing unit 730 may process an encapsulated bitstream or a file/segment according to an arbitrary transmission protocol.
- the transmission processing unit 730 may perform all or part of the operations performed by the transmission unit 14 and the transmission processing unit described with reference to FIG. 1 .
- the receiving device 800 may perform operations corresponding to those of the transmitting device 700 performing space division. As illustrated in FIG. 8, the receiving device 800 includes a reception processing unit 805, a decapsulation processing unit 810, a signaling processing unit 815, a geometry decoder 820, an attribute encoder 825, and/or a post-processing unit. (830).
- the reception processing unit 805 may receive a file/segment in which a G-PCC bitstream is encapsulated, a G-PCC bitstream, or a bitstream, and may process them according to a transport protocol.
- the reception processing unit 805 may perform all or part of the operations performed by the reception unit 21 and the reception processing unit described with reference to FIG. 1 .
- the decapsulation processing unit 810 may obtain a G-PCC bitstream by performing a reverse process of the operations performed by the encapsulation processing unit 725.
- the decapsulation processor 810 may obtain a G-PCC bitstream by decapsulating the file/segment.
- the decapsulation processing unit 810 may obtain a signaling bitstream and output it to the signaling processing unit 815, obtain a geometry bitstream and output it to the geometry decoder 820, and obtain an attribute bitstream It can be acquired and output to the attribute decoder 825.
- the decapsulation processing unit 810 may perform all or some of the operations performed by the decapsulation processing unit 22 of FIG. 1 .
- the signaling processing unit 815 may parse and decode signaling information by performing reverse processes of the operations performed by the signaling processing unit 710 .
- the signaling processor 815 may parse and decode signaling information from a signaling bitstream.
- the signaling processing unit 815 may provide the decoded signaling information to the geometry decoder 820, the attribute decoder 820, and/or the post-processing unit 830.
- the geometry decoder 820 may reconstruct the geometry from the geometry bitstream by performing a reverse process of the operations performed by the geometry encoder 715 .
- the geometry decoder 820 may reconstruct the geometry based on signaling information (parameters related to geometry).
- the reconstructed geometry may be provided to the attribute decoder 825.
- the attribute decoder 825 may restore an attribute from the attribute bitstream by performing a reverse process of the operations performed by the attribute encoder 720.
- the attribute decoder 825 may reconstruct an attribute based on signaling information (parameters related to the attribute) and the reconstructed geometry.
- the post-processing unit 830 may restore point cloud data based on the restored geometry and the restored attributes. Restoration of point cloud data may be performed through a process of matching restored geometry and restored attributes with each other. According to embodiments, the post-processing unit 830 performs a reverse process of the spatial division process of the transmission device 700 based on the signaling information when the restored point cloud data is in tile and/or slice units, A bounding box of point cloud data may be restored. According to embodiments, when a bounding box is divided into a plurality of tiles and/or a plurality of slices through a spatial division process, the post-processor 830 performs some slices and/or some slices based on signaling information. By combining tiles, a part of the bounding box may be restored. Here, some slices and/or some tiles used for restoration of the bounding box may be slices and/or some tiles related to a 3D spatial domain for which spatial access is desired.
- the G-PCC bitstream may refer to a bitstream of point cloud data consisting of a sequence of TLV structures.
- the TLV structure may be referred to as "TLV encapsulation structure", “G-PCC TLV encapsulation structure”, or "G-PCC TLV structure”.
- Each TLV encapsulation structure may consist of a TLV type (TLV TYPE), a TLV length (TLV LENGTH), and/or a TLV payload (TLV PAYLOAD).
- TLV type may be TLV payload type information
- the TLV length may be TLV payload length information
- the TLV payload may be a payload (or payload bytes). Referring to the TLV encapsulation syntax structure (tlv_encapsulation()) illustrated in FIG.
- tlv_type may indicate type information of a TLV payload
- tlv_num_payload_bytes may indicate length information of a TLV payload
- tlv_payload_byte[i] may indicate a TLV payload.
- tlv_payload_byte[i] may be signaled as much as the value of tlv_num_payload_bytes, and i may increase by 1 from 0 to (tlv_num_payload_bytes - 1).
- TLV payloads may include SPS, GPS, one or more APSs, a tile inventory, a geometry slice, one or more attribute slices, and one or more metadata slices.
- the TLV payload of each TLV encapsulation structure includes an SPS, a GPS, one or more APSs, a tile inventory, a geometry slice, one or more attribute slices, and one or more metas according to type information of the TLV payload. It may contain one of the data slices. Data included in the TLV payload may be distinguished through the type information of the TLV payload. For example, as illustrated in FIG.
- tlv_type if the value of tlv_type is 0, it indicates that the data included in the TLV payload is SPS, and if the value of tlv_type is 1, it can indicate that the data included in the TLV payload is GPS. there is. If the value of tlv_type is 2, it may indicate that the data included in the TLV payload is a geometry slice, and if the value of tlv_type is 3, it may indicate that the data included in the TLV payload is an APS.
- tlv_type 4
- tlv_type 5
- tlv_type 6
- NAL Network Abstraction Layer
- Such a TLV encapsulation structure may be generated by the transmission unit, transmission processing unit, and encapsulation unit mentioned in this specification.
- the G-PCC bitstream composed of TLV encapsulation structures may be transmitted to the receiving device as it is or encapsulated and transmitted to the receiving device.
- the encapsulation processing unit 725 may encapsulate a G-PCC bitstream composed of TLV encapsulation structures in the form of a file/segment and transmit the encapsulation.
- the decapsulation processor 810 may obtain a G-PCC bitstream by decapsulating the encapsulated file/segment.
- the G-PCC bitstream may be encapsulated in an ISOBMFF-based file format.
- the G-PCC bitstream may be stored in a single track or multiple tracks in the ISOBMFF file.
- single tracks or multiple tracks in a file may be referred to as “tracks” or “G-PCC tracks”.
- ISOBMFF-based files may be referred to as containers, container files, media files, G-PCC files, and the like.
- the file may be composed of boxes and/or information that may be referred to as ftyp, moov, and mdat.
- An ftyp box may provide information related to a file type or file compatibility for a corresponding file.
- the receiving device may identify the corresponding file by referring to the ftyp box.
- the mdat box is also referred to as a media data box, and may include actual media data.
- a geometry slice or a coded geometry bitstream
- zero or more attribute slices or a coded attribute bitstream
- the moov box is also called a movie box, and may contain metadata about the media data of the file.
- the moov box may include information necessary for decoding and reproducing the corresponding media data, and may include information about tracks and samples of the corresponding file.
- a moov box can act as a container for all metadata.
- the moov box may be a box of a top layer among meta data related boxes.
- the moov box may include a track box providing information related to a track of a file
- the trak box may include a media box providing media information of a corresponding track
- a track reference container (tref) box for linking a corresponding track and a sample of a file corresponding to the corresponding track may be included.
- the media box (MediaBox) may include a media information container (minf) box providing information of corresponding media data and a handler (hdlr) box (HandlerBox) indicating the type of stream.
- the minf box may include a sample table (stbl) box providing meta data related to the sample of the mdat box.
- the stbl box may include a sample description (stsd) box providing information on a used coding type and initialization information necessary for the coding type.
- the sample description (stsd) box may include a sample entry for a track.
- signaling information such as SPS, GPS, APS, and tile inventory may be included in a sample entry of a moov box or a sample of an mdat box in a file.
- a G-PCC track is defined as a geometry slice (or a coded geometry bitstream) or an attribute slice (or a coded attribute bitstream), or a volumetric visual track carrying both a geometry slice and an attribute slice. It can be.
- the volumetric visual track is a volumetric visual media handler type 'volv' in the HandlerBox of the MediaBox and/or a minf box of the MediaBox. It can be identified by my volumetric visual media header (vvhd).
- a minf box may be referred to as a media information container or a media information box. The minf box may be included in the media box (MediaBox), the media box (MediaBox) may be included in the track box, and the track box may be included in the moov box of the file.
- a single volumetric visual track or multiple volumetric visual tracks can exist in a file.
- Volumetric visual tracks may use volumetric visual samples for transmission of actual data.
- a volumetric visual sample entry may be referred to as a sample entry or a G-PCC sample entry, and a volumetric visual sample may be referred to as a sample or a G-PCC sample.
- a single volumetric visual track may be referred to as a single track or a G-PCC single track, and multiple volumetric visual tracks may be referred to as a multiple track or multiple G-PCC tracks.
- Signaling information related to grouping of samples, grouping of tracks, single track encapsulation of a G-PCC bitstream, encapsulation of multiple tracks of a G-PCC bitstream, or signaling information for supporting spatial access is It can be added to the sample entry in the form of a full box.
- the signaling information may include at least one of a GPCC entry information box (GPCCEntryInfoBox), a GPCC component type box (GPCCComponentTypeBox), a cubic region information box (CubicRegionInfoBox), a 3D bounding box information box (3DBoundingBoxInfoBox), or a tile inventory box (TileInventoryBox).
- GPCCEntryInfoBox a GPCC entry information box
- GPCCComponentTypeBox a GPCC component type box
- CubicRegionInfoBox cubic region information box
- 3DBoundingBoxInfoBox 3D bounding box information box
- TileInventoryBox tile inventory box
- G-PCCEntryInfoBox The syntax structure of the G-PCC entry information box (GPCCEntryInfoBox) can be defined as follows.
- GPCCEntryInfoBox having a sample entry type of 'gpsb' may include GPCCEntryInfoStruct ().
- the syntax of GPCCEntryInfoStruct () can be defined as follows.
- GPCCEntryInfoStruct can include main_entry_flag and dependent_on.
- main_entry_flag may indicate whether or not an entry point for decoding a G-PCC bitstream.
- dependent_on indicates its decoding is dependent on others. If dependent_on is present in a sample entry, dependent_on may indicate that decoding of samples in a track is dependent on other tracks. If the value of dependency_on is 1, GPCCEntryInfoStruct() may further include dependency_id.
- dependency_id may indicate identifiers of tracks for decoding related data. If dependency_id exists in a sample entry, dependency_id may indicate an identifier of a track carrying a G-PCC sub-bitstream to which decoding of samples within a track depends. If dependency_id exists in a sample group, dependency_id may indicate identifiers of samples carrying a G-PCC sub-bitstream to which decoding of related samples depends.
- the syntax structure of the G-PCC component type box (GPCCComponentTypeBox) can be defined as follows.
- a GPCCComponentTypeBox having a sample entry type of 'gtyp' may include GPCCComponentTypeStruct().
- the syntax of GPCCComponentTypeStruct() can be defined as follows.
- numOfComponents may indicate the number of G-PCC components signaled to the corresponding GPCCComponentTypeStruct.
- gpcc_type can be included in GPCCComponentTypeStruct by a repetition statement repeated as many times as the value of numOfComponents. This iteration statement can be repeated while increasing by 1 until i becomes (numOfComponents - 1) from 0.
- gpcc_type may indicate the type of G-PCC component. For example, if the value of gpcc_type is 2, it can indicate a geometry component, and if it is 4, it can indicate an attribute component.
- AttrIdx may indicate an identifier of an attribute signaled in SPS().
- a G-PCC component type box (GPCCComponentTypeBox) may be included in a sample entry for multiple tracks. If the G-PCC Component Type box (GPCCComponentTypeBox) is present in the sample entries of tracks carrying some or all of the G-PCC bitstream, GPCCComponentTypeStruct() may indicate one or more G-PCC component types carried by each track. can A GPCCComponentTypeBox or GPCCComponentTypeStruct() including GPCCComponentTypeStruct() may be referred to as G-PCC component information.
- the encapsulation processor mentioned in this disclosure may create a sample group by grouping one or more samples.
- the encapsulation processor, meta data processor, or signaling processor mentioned in this disclosure may signal signaling information related to a sample group to a sample, a sample group, or a sample entry. That is, sample group information associated with a sample group may be added to a sample, sample group, or sample entry.
- the sample group information may be 3D bounding box sample group information, 3D region sample group information, 3D tile sample group information, 3D tile inventory sample group information, and the like.
- the encapsulation processor mentioned in this disclosure may create a track group by grouping one or more tracks.
- the encapsulation processor, meta data processor, or signaling processor mentioned in this disclosure may signal signaling information related to a track group to a sample, track group, or sample entry. That is, track group information associated with a track group may be added to a sample, track group, or sample entry.
- the track group information may be 3D bounding box track group information, point cloud composition track group information, spatial area track group information, 3D tile track group information, 3D tile inventory track group information, and the like.
- 11 is a diagram for explaining an ISOBMFF-based file including a single track.
- 11(a) shows an example of the layout of an ISOBMFF-based file including a single track
- FIG. 11(b) shows a sample structure of an mdat box when a G-PCC bitstream is stored in a single track of a file.
- 12 is a diagram for explaining an ISOBMFF-based file including multiple tracks.
- 12(a) shows an example of the layout of an ISOBMFF-based file including multiple tracks
- FIG. 12(b) shows a sample structure of an mdat box when a G-PCC bitstream is stored in a single track of a file. shows an example for
- a stsd box (SampleDescriptionBox) included in the moov box of the file may include a sample entry for a single track storing a G-PCC bitstream.
- SPS, GPS, APS, and tile inventories can be included in sample entries in the moov box or samples in the mdat box in the file.
- geometry slices and attribute slices of zero or more may be included in the sample of the mdat box in the file.
- each sample may contain multiple G-PCC components. That is, each sample may consist of one or more TLV encapsulation structures.
- a single track sample entry can be defined as follows.
- Quantity One or more sample entries may be present
- the sample entry type 'gpe1' or 'gpeg' is mandatory, and one or more sample entries may exist.
- a G-PCC track can use a VolumetricVisualSampleEntry having a sample entry type of 'gpe1' or 'gpeg'.
- the sample entry of the G-PCC track may include a G-PCC decoder configuration box (GPCCConfigurationBox), and the G-PCC decoder configuration box may include a G-PCC decoder configuration record (GPCCDecoderConfigurationRecord()).
- GPCCDecoderConfigurationRecord() may include at least one of configurationVersion, profile_idc, profile_compatibility_flags, level_idc, numOfSetupUnitArrays, SetupUnitType, completeness, numOfSepupUnit, and setupUnit.
- the setupUnit array field included in GPCCDecoderConfigurationRecord() may include TLV encapsulation structures including one SPS.
- sample entry type is 'gpe1'
- all parameter sets such as SPS, GPS, APS, and tile inventory may be included in the array of setupUints.
- the sample entry type is 'gpeg'
- the above parameter sets may be included in an array of setupUints (ie sample entry) or included in a corresponding stream (ie sample).
- An example of the syntax of a G-PCC sample entry (GPCCSampleEntry) having a sample entry type of 'gpe1' is as follows.
- a G-PCC sample entry (GPCCSampleEntry) having a sample entry type of 'gpe1' may include GPCCConfigurationBox, 3DBoundingBoxInfoBox(), CubicRegionInfoBox(), and TileInventoryBox().
- 3DBoundingBoxInfoBox( ) may indicate 3D bounding box information of point cloud data related to samples carried to a corresponding track.
- CubicRegionInfoBox( ) may indicate one or more pieces of spatial domain information of point cloud data carried by samples within a corresponding track.
- TileInventoryBox() may indicate 3D tile inventory information of point cloud data carried by samples within a corresponding track.
- the sample may include TLV encapsulation structures including geometry slices. Additionally, a sample may include TLV encapsulation structures that include one or more parameter sets. Additionally, a sample may contain TLV encapsulation structures containing one or more attribute slices.
- each geometry slice or attribute slice may be mapped to an individual track.
- a geometry slice may be mapped to track 1
- an attribute slice may be mapped to track 2.
- a track (track 1) carrying a geometry slice may be referred to as a geometry track or a G-PCC geometry track
- a track (track 2) carrying an attribute slice may be referred to as an attribute track or a G-PCC attribute track.
- the geometry track may be defined as a volumetric visual track carrying geometry slices
- the attribute track may be defined as a volumetric visual track carrying attribute slices.
- a track carrying a part of a G-PCC bitstream including both a geometry slice and an attribute slice may be referred to as a multiplexed track.
- each sample in a track may include at least one TLV encapsulation structure carrying data of a single G-PCC component.
- each sample contains neither geometry nor attributes, and may also contain multiple attributes.
- Multi-track encapsulation of the G-PCC bitstream can enable a G-PCC player to effectively access one of the G-PCC components.
- the following conditions need to be satisfied for a G-PCC player to effectively access one of the G-PCC components.
- a new box is added to indicate the role of the stream included in the corresponding track.
- the new box may be the aforementioned G-PCC component type box (GPCCComponentTypeBox). That is, GPCCComponentTypeBox can be included in sample entries for multiple tracks.
- a track reference is introduced from a track carrying only the G-PCC geometry bitstream to a track carrying the G-PCC attribute bitstream.
- GPCCComponentTypeBox may include GPCCComponentTypeStruct(). If GPCCComponentTypeBox is present in a sample entry of tracks carrying some or all of the G-PCC bitstream, then GPCCComponentTypeStruct() specifies the type (e.g. geometry, attribute) of one or more G-PCC components carried by each track. can instruct For example, if the value of the gpcc_type field included in GPCCComponentTypeStruct() is 2, it can indicate a geometry component, and if it is 4, it can indicate an attribute component. In addition, when the value of the gpcc_type field is 4, that is, indicates an attribute component, an AttrIdx field indicating an identifier of an attribute signaled to SPS() may be further included.
- GPCCComponentTypeBox specifies the type (e.g. geometry, attribute) of one or more G-PCC components carried by each track. can instruct For example, if the value of the gpcc_type
- the syntax of the sample entry can be defined as follows.
- Quantity One or more sample entries may be present
- the sample entry type 'gpc1', 'gpcg', 'gpc1' or 'gpcg' is mandatory, and one or more sample entries may be present.
- Multiple tracks eg, geometry or attribute tracks
- Multiple tracks may use a VolumetricVisualSampleEntry with a sample entry type of 'gpc1', 'gpcg', 'gpc1' or 'gpcg'.
- all parameter sets can be present in the setupUnit array.
- the parameter set may exist in the corresponding array or stream.
- the GPCCComponentTypeBox may not exist.
- the SPS, GPS and tile inventories may be present in the SetupUnit array of tracks carrying the G-PCC geometry bitstream. All relevant APSs may be present in the SetupUnit array of tracks carrying the G-PCC attribute bitstream.
- SPS, GPS, APS or tile inventory may exist in the corresponding array or stream.
- a GPCCComponentTypeBox may need to be present.
- the compressorname of the base class VolumetricVisualSampleEntry can indicate the name of the compressor used with the recommended " ⁇ 013GPCC coding" value.
- the first byte (octal number 13 or decimal number 11 represented by ⁇ 013) is the number of remaining bytes, and may indicate the number of bytes of the remaining string.
- congif may include G-PCC decoder configuration information. info may indicate G-PCC component information carried in each track. info may indicate a component tile carried in a track, and may also indicate an attribute name, index, and attribute type of a G-PCC component carried in a G-PCC attribute track.
- the syntax for the sample format is as follows.
- each sample corresponds to a single point cloud frame and may be composed of one or more TLV encapsulation structures belonging to the same presentation time.
- Each TLV encapsulation structure may contain a single type of TLV payload.
- one sample may be independent (eg, sync sample).
- GPCCLength indicates the length of a corresponding sample
- gpcc_unit may include an instance of a TLV encapsulation structure including a single G-PCC component (eg, a geometry slice).
- each sample may correspond to a single point cloud frame, and samples contributing to the same point cloud frame in different tracks may have the same presentation time.
- Each sample may consist of one or more G-PCC units of the G-PCC component indicated in the GPCCComponentInfoBox of the sample entry and zero or more G-PCC units carrying either a parameter set or a tile inventory. If a G-PCC unit containing a parameter set or tile inventory exists in a sample, the corresponding F-PCC sample may need to appear before the G-PCC unit of the G-PCC component.
- Each sample may include one or more G-PCC units containing an attribute data unit and zero or more G-PCC units carrying a parameter set.
- each TLV encapsulation structure in the corresponding sample need to access Also, if one sample is composed of multiple TLV encapsulation structures, each of the multiple TLV encapsulation structures may be stored as a subsample. A subsample may be referred to as a G-PCC subsample.
- a sample contains a parameter set TLV encapsulation structure containing parameter sets, a geometry TLV encapsulation structure containing geometry slices, and an attribute TLV encapsulation structure containing attribute slices
- the parameter set A TLV encapsulation structure, a geometry TLV encapsulation structure, and an attribute TLV encapsulation structure may each be stored as a subsample.
- the type of TLV encapsulation structure carried in the corresponding subsample may be required.
- the G-PCC subsample may contain only one TLV encapsulation structure.
- One SubSampleInformationBox may exist in the sample table box (SampleTableBox, stbl) of the moov box, or may exist in the track fragment box (TrackFragmentBox, traf) of each movie fragment box (MovieFragmentBox, moof). If SubSampleInformationBox exists, an 8-bit type value of a TLV encapsulation structure may be included in a 32-bit codec_specific_parameters field of a subsample entry in SubSampleInformationBox.
- a 6-bit value of the attribute index may be included in the 32-bit codec_specific_parameters field of the subsample entry in SubSampleInformationBox.
- the type of each subsample may be identified by parsing the codec_specific_parameters field of the subsample entry in SubSampleInformationBox.
- codec_specific_parameters of SubSampleInformationBox can be defined as follows.
- bit(18) reserved 0;
- bit(24) reserved 0;
- bit(7) reserved 0;
- bit(24) reserved 0;
- payloadType may indicate the tlv_type of the TLV encapsulation structure in the corresponding subsample. For example, if the value of payloadType is 4, an attribute slice (ie, attribute slice) may be indicated.
- attrIdx may indicate an identifier of attribute information of a TLV encapsulation structure including an attribute payload in a corresponding subsample.
- attrIdx may be the same as ash_attr_sps_attr_idx of the TLV encapsulation structure including the attribute payload in the corresponding subsample.
- tile_data may indicate whether a subsample contains one tile or another tile.
- tile_data If the value of tile_data is 1, it may indicate that the subsample includes a TLV encapsulation structure (s) including a geometry data unit or attribute data unit corresponding to one G-PCC tile. If the value of tile_data is 0, it may indicate that the subsample includes the TLV encapsulation structure(s) including each parameter set, tile inventory or frame boundary marker. tile_id may indicate the index of the G-PCC tile to which the subsample is associated within the tile inventory.
- a track reference tool may be used.
- One TrackReferenceTypeBoxes can be added to the TrackReferenceBox in the TrackBox of the G-PCC track.
- TrackReferenceTypeBox may contain an array of track_IDs specifying the tracks referenced by the G-PCC track.
- the present disclosure relates to the carriage of G-PCC data (hereinafter, which may be referred to as a G-PCC bitstream, an encapsulated G-PCC bitstream, or a G-PCC file).
- G-PCC bitstream an encapsulated G-PCC bitstream
- G-PCC file a G-PCC file
- Devices and methods for supporting temporal scalability may be provided.
- the present disclosure can propose apparatus and methods for providing a point cloud content service that efficiently stores a G-PCC bitstream in a single track in a file or divides and stores a G-PCC bitstream in a plurality of tracks and provides signaling therefor. there is.
- the present disclosure proposes apparatus and methods for processing a file storage scheme to support efficient access to a stored G-PCC bitstream.
- Temporal scalability can refer to functionality that allows for the possibility of extracting one or more subsets of independently coded frames.
- temporal scalability may refer to a function of dividing G-PCC data into a plurality of different temporal levels and independently processing each G-PCC frame belonging to the different temporal levels. If temporal scalability is supported, the G-PCC player (or the transmission device and/or the reception device of the present disclosure) can effectively access a desired component (target component) among G-PCC components.
- target component target component
- temporal scalability support can be expressed as more flexible temporal sub-layering at the system level.
- temporal scalability allows a system that processes G-PCC data (point cloud content provision system) to manipulate data at a high level to match network capabilities or decoder capabilities, etc. It is possible to improve the performance of the point cloud content providing system.
- G-PCC data point cloud content provision system
- a sample grouping method and a track grouping method may exist as a method for supporting temporal scalability.
- the sample grouping method may be a method of grouping samples in a G-PCC file according to a temporal level
- the track grouping method may be a method of grouping tracks in a G-PCC file according to a temporal level.
- a sample group can be used to correlate samples with the temporal level assigned to them. That is, a sample group may indicate which sample belongs to which temporal level. Also, the sample group may be information about a result of grouping one or more samples into one or more temporal levels.
- the sample group may be referred to as a 'tele' sample group and a temporal level sample group 'tele'.
- Information on the sample group may include information on a result of sample grouping. Accordingly, the information about the sample group may be information for use in associating the samples with the temporal level assigned to them. That is, the information on the sample group may indicate which sample belongs to which temporal level, and may be information on a result of grouping one or more samples into one or more temporal levels.
- Information on sample groups may exist in tracks including geometry data units.
- information on sample groups may exist only in the geometry track to group each sample in the track into a specified temporal level.
- Samples in attribute tracks can be inferred based on their relationship with their associated geometry track. For example, samples in attribute tracks can belong to the same temporal level as samples in their associated geometry track.
- the G-PCC tile track may be a volumetric visual track carrying all G-PCC components or a single G-PCC component corresponding to one or more G-PCC tiles.
- the G-PCC tile-based track can be a volumetric visual track that carries the tile inventory and all parameter sets corresponding to the G-PCC tile track.
- Information on a temporal level may be signaled to describe temporal scalability supported by the G-PCC file.
- Information on the temporal level may be present in a sample entry of a track including a sample group (or information on a sample group).
- information on the temporal level may exist in GPCCDecoderConfigurationRecord () or in a G-PCC scalability information box (GPCCScalabilityInfoBox) signaling scalability information for a G-PCC track.
- Temporal level sample grouping may mean grouping samples in a track according to a temporal level. These 'tele' sample groups can exist in tracks containing geometry data.
- the 'tele' sample group may be information on codec-independent sample grouping. Specifically, codec independence may mean a case in which samples of one temporal level have no coding dependency on samples of another temporal level. That is, when samples of one temporal level have no coding dependency on samples of another temporal level, a 'tele' sample group may exist in a track.
- the 'tele' sample group is information about a result of grouping samples in a track (and/or potential track fragment) according to a temporal level and/or information about a temporal level identifier value. can include
- a 'tele' sample group can only exist within a track carrying geometry data.
- Samples in tracks carrying attribute data can be inferred based on their relationship with their associated geometry track. For example, samples in attribute tracks can belong to the same temporal level as samples in their associated geometry track.
- the 'tele' sample group is only needed for tracks with multiple temporal levels.
- samples are grouped and processed or sample group information is signaled. Therefore, in the prior art, coding efficiency or bit efficiency may decrease by performing unnecessary sample grouping or sample group information signaling.
- a 'tele' sample group may exist in a track having a plurality of temporal levels.
- a track having a plurality of temporal levels may be a track carrying geometry data.
- information on the number of temporal levels may be defined by syntax elements in different boxes according to sample entry types.
- information on the number of temporal levels may be defined by a syntax element in a GPCC decoder configuration record (GPCCDecoderConfigurationRecord) and/or a syntax element in a GPCC temporal scalability information box (GPCCScalabilityInfoBox).
- the number of temporal levels in the track can be defined by the num_temporal_levels syntax element of the GPCC decoder configuration record.
- a GPCC decoder configuration record can provide G-PCC decoder configuration information for geometry-based point cloud content.
- the syntax structure of the GPCC decoder configuration record can be defined as shown in Table 1 below.
- the GPCC decoder configuration record may include at least one of configurationVersion, profile_idc, profile_compatibility_flags, level_idc, numOfSetupUnitArrays, SetupUnitType, completeness, numOfSepupUnit, and setupUnit.
- the num_temporal_levels syntax element may indicate the maximum number of temporal levels in which G-PCC bitstream frames are grouped.
- the number of temporal levels in the track can be defined by the num_temporal_levels syntax element of the GPCC temporal scalability information box.
- the GPCC temporal scalability information box may include scalability information for a G-PCC track.
- the syntax structure of the GPCC temporal extensibility information box can be defined as shown in Table 2 below.
- num_temporal_levels may indicate the maximum number of temporal levels in which G-PCC bitstream frames are grouped.
- temporal_level_id may indicate temporal level identifier information of a G-PCC sample.
- the number of temporal levels in the track is different from the GPCC decoder configuration record. It can also be included in a box.
- the other box may be a GPCC temporal scalability information box or an arbitrary box including G-PCC related temporal scalability information.
- the number of temporal levels in the track may be included in a box other than the GPCC temporal scalability information box.
- the other box may be an arbitrary box including temporal scalability information related to G-PCC.
- the number of temporal levels within a track may be included in a given box regardless of the sample entry type within the track.
- a given box may be a GPCC decoder configuration record, a GPCC temporal scalability information box, or any box containing G-PCC related temporal scalability information.
- a box including G-PCC related temporal scalability information may be named with various names.
- the G-PCC related temporal scalability information box may be referred to as GPCCScalabilityInfoBox or GPCCTileScalabilityInfoBox.
- samples belonging to the first temporal level identifier may be mapped to the sample group description index equal to the first temporal level identifier plus 1.
- the sample group description index may mean an index of a sample entry describing samples included in the sample description (stsd) box.
- the sample description (stsd) box may contain a sample description signal for all temporal levels signaled in the decoder configuration record.
- a sample description (stsd) box may include a sample entry for a track.
- the temporal level of a sample in the attribute track may be the same as the temporal level of the corresponding sample in the referenced geometry track, that is, a sample with the same composition time stamp.
- 'tele' sample groups can only exist in tracks carrying geometry data.
- 13 to 15 show examples of sample grouping within a track according to embodiments of the present disclosure.
- each of the tracks corresponds to at least one of a GPCC temporal scalability information ('gsci') box, a sample group description ('sgpd') box, or a sample group ('sbgp') box.
- a GPCC temporal scalability information 'gsci'
- a sample group description 'sgpd'
- a sample group 'sbgp'
- the 'gsci' box may include information on the number of temporal levels (num_temporal_levels).
- the 'sgpd' box may include information about common characteristics of samples included in the sample group.
- the 'sbgp' box may include information about a sample group including samples.
- the number of temporal levels present in the 'gsci' box may be 2. At this time, the two temporal levels may be distinguished by temporal_level_id.
- the number of entries included in the 'sgpd' box may be two (entry_count: 2).
- An entry present in the 'sgpd' box can be represented by SampleGroupDescriptionEntry ('tele'), and SampleGroupDescriptionEntry ('tele') can mean a 'tele' sample group description entry.
- the 'sbgp' box of track 1 may include a 'tele' sample group, and the number of entries may be 12.
- the number of temporal levels present in the 'gsci' box of track 2 may be 2. At this time, the two temporal levels may be distinguished by temporal_level_id.
- the number of entries included in the 'sgpd' box of track 2 may be four.
- An entry present in the 'sgpd' box can be represented by SampleGroupDescriptionEntry ('tele'), and SampleGroupDescriptionEntry ('tele') can mean a 'tele' sample group description entry.
- the 'sbgp' box of track 2 may include a 'tele' sample group, and the number of entries may be 12.
- the 'mdat' box of FIG. 13 may include media data.
- the 'mdat' box may include an image frame.
- Image frames included in the 'mdat' box may have unique identifiers (TemporalId, Tid).
- TemporalIDs TemporalIDs
- track 1 of FIG. 14 may include a 'gsci' box
- track 2 may include a 'sgpd' box and an 'sbgp' box.
- Track 2 may not include the GPCCTileScalabilityInfoBox ('gtsi' box) because it is a temporal level tile track that includes samples of all temporal levels.
- the GPCC file structure of FIG. 15 may include a tile base track (track 1) and two temporal level tile tracks (track 2 and track 3).
- the number of 'tele' sample group description entries in the 'sgpd' box may be equal to the maximum value of temporal_level_id plus 1 in the 'gtsi' box.
- 16 and 17 show flowcharts for 'tele' sample grouping according to embodiments of the present disclosure.
- the transmission device 10 may generate information on the number of temporal levels of tracks in the G-PCC file (S1610).
- the information on the number of temporal levels may be information representing the number of temporal levels present in a track.
- Temporal level number information may be represented by num_temporal_levels.
- the transmitter 10 may configure at least one sample group based on the number of temporal levels (or information on the number of temporal levels) (S1620). For example, the transmission device 10 may configure at least one sample group when the number of temporal levels in a track is plural. As another example, the transmission device 10 may configure at least one sample group when the number of temporal levels in a track is plural and the corresponding track is a geometry track.
- the sample group may be a 'tele' sample group.
- the transmission device 10 may generate sample group information (S1630).
- the sample group information may be information about the sample group configured in step S1620.
- Sample group information may include temporal level identifier information of G-PCC samples. Temporal level identifier information can be represented by temporal_level_id.
- the transmission device 10 may generate a G-PCC file (S1640).
- the G-PCC file may include at least one of temporal level number information and/or sample group information.
- samples belonging to a temporal level identifier may be mapped to a sample group description index.
- the sample group description index may be a value obtained by adding 1 to the temporal level identifier value.
- the receiving device 20 may obtain a G-PCC file (S1710).
- the G-PCC file may include point cloud data, information on the number of temporal levels of tracks, and sample group information.
- the receiving device 20 may obtain information on the number of temporal levels of tracks in the G-PCC file from the G-PCC file (S1720). Temporal level number information may be num_temporal_levels.
- the receiving device 20 may obtain sample group information about samples in a track from the G-PCC file based on the temporal level number information (S1730). For example, the receiving device 20 may configure at least one sample group when the number of temporal levels in a track is plural. As another example, the receiving device 20 may configure at least one sample group when the number of temporal levels in a track is plural and the corresponding track is a geometry track. Sample group information may include temporal level identifier information of G-PCC samples. Temporal level identifier information can be represented by temporal_level_id.
- FIG. 18 illustrates an example of a structure of a G-PCC file for 'tele' sample grouping according to embodiments of the present disclosure.
- a moov box 1805 in a G-PCC file 1800 may be a multi-track encapsulation file in which two or more tracks exist.
- the types of two or more tracks present in the moov box 1805 may include a geometry track and/or an attribute track.
- a 'tele' sample group may exist only within a geometry track.
- the 'tele' sample group can exist in the track only when the number of temporal levels in the geometry track is plural.
- the geometry track #1 1810 has a plurality of temporal levels 0, 1, and 2 in the track. Accordingly, in the geometry track #1 1801, a 'tele' sample group may exist.
- geometry track #2 (1815) has one temporal level in the track of three. Therefore, the 'tele' sample group cannot exist in the geometry track #2 1815.
- 19 and 20 are flowcharts for data transmission/reception based on sample grouping according to embodiments of the present disclosure.
- the transmission device 10 may determine whether to group samples based on the number of temporal levels in a track (S1910).
- the transmission device 10 may group samples within a track when the number of temporal levels within a track is two or more. On the other hand, when the number of temporal levels in a track is one, the transmission device 10 may not perform grouping on samples in a track. If the samples are grouped based on the number of temporal levels in the track being 2 or more, the transmitting device 10 may generate corresponding sample group information (S1920).
- Sample group information may include temporal level index information.
- the transmitting device 10 may encapsulate the samples based on the sample group information generated in step S1920 (S1930). On the other hand, if the samples in the track are not grouped, the transmitting device 10 may encapsulate the samples without generating sample group information (S1930).
- the receiving device 20 may check whether the number of temporal levels is 2 or more (S2010).
- the information on the number of temporal levels may be information about the number of temporal levels present in a track.
- the receiving device 20 may determine that the samples in the track are grouped when the information on the number of temporal levels in the track is 2 or more. On the other hand, the receiving device 20 may determine that the samples in the track are not grouped when there is only one temporal level number information in the track.
- the receiving device 20 may obtain sample group information (S2020). Sample group information may include temporal level index information within a track. Temporal level index information may be temporal_level_id. The receiving device 20 may obtain sample group information based on the number of temporal levels checked in step S2010. Specifically, the receiving device 20 may obtain sample group information when the number of temporal levels checked in step S2010 is 2 or more.
- the receiving device 20 may decapsulate the sample based on the sample group information obtained in step S2020 (S2030). On the other hand, the receiving device 20 may decapsulate the samples without checking the sample group information when the number of temporal levels in the track is not 2 or more (S2030).
- the scope of the present disclosure is software or machine-executable instructions (eg, operating systems, applications, firmware, programs, etc.) that cause operations in accordance with the methods of various embodiments to be executed on a device or computer, and such software or It includes a non-transitory computer-readable medium in which instructions and the like are stored and executable on a device or computer.
- Embodiments according to this disclosure may be used to provide point cloud content. Also, embodiments according to the present disclosure may be used to encode/decode point cloud data.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Library & Information Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
aligned(8) class GPCCDecoderConfigurationRecord{ unsigned int(2) configurationVersion = 1; unsigned int(1) simple_profile_compatibility_flag; unsigned int(1) dense_profile_compatability_flag; unsigned int(1) predictive_profile_compatibility_flag; unsigned int(1) main_profile_compatibility_flag; unsigned int(18) reserved_profile_compatibility_18bits; unsigned int(8) level_idc; unsigned int(1) multiple_temporal_level_tracks_flag; unsigned int(1) frame_rate_present_flag; unsigned int(3) num_temporal_levels; bit(3) reserved = 0; for(i=0; i < num_temporal_levels; i++) { unsigned int(16) temporal_level_id; if (frame_rate_present_flag) unsigned int(16) frame_rate; } unsigned int(8) numOfSetupUnits; for(i=0; i < numOfSetupUnits; i++) { tlv_encapsulation setupUnit; //as defined in ISO/IEC 23090-9 } // additional fields } |
Aligned (8) class GPCCScalabilityInfoBox extends FullBox('gsci', version = 0, 0) { unsigned int(16) num_temporal_levels; for(i=0; i < num_temporal_levels; i++) { unsigned int(16) temporal_level_id; } } |
Claims (12)
- 포인트 클라우드 데이터의 수신 장치에서 수행되는 방법으로서,상기 포인트 클라우드 데이터를 포함하는 G-PCC(geometry-based point cloud compression) 파일을 획득하는 단계;상기 G-PCC 파일 내 트랙의 시간적 레벨들의 개수를 나타내는 시간적 레벨 개수 정보를 상기 G-PCC 파일로부터 획득하는 단계; 및상기 시간적 레벨 개수 정보에 기반하여, 상기 트랙 내 샘플들에 대한 샘플 그룹 정보를 G-PCC 파일로부터 획득하는 단계를 포함하되,상기 샘플 그룹 정보는 상기 시간적 레벨 개수 정보가 상기 트랙의 시간적 레벨들이 복수 개임을 나타냄에 기반하여 획득되는, 방법.
- 제1항에 있어서,상기 샘플 그룹 정보는 상기 시간적 레벨들의 식별자 정보를 포함하는, 방법.
- 제1항에 있어서,상기 트랙은 상기 포인트 클라우드 데이터의 지오메트리(geometry) 정보를 포함하는, 방법.
- 제1항에 있어서,상기 트랙이 제1 샘플 엔트리 타입을 갖는 것에 기반하여, 상기 시간적 레벨들의 수는 G-PCC 디코더 컨피큐레이션 레코드(GPCCDecoderConfigurationRecord)에 포함되는, 방법.
- 제4항에 있어서,상기 제1 샘플 엔트리 타입은,gpe1 샘플 엔트리 타입, gpeg 샘플 엔트리 타입, gpc1 샘플 엔트리 타입 또는 gpcg 샘플 엔트리 타입 중 적어도 하나인, 방법.
- 제1항에 있어서,상기 트랙이 제2 샘플 엔트리 타입을 갖는 것에 기반하여, 상기 시간적 레벨들의 수는 G-PCC 시간적 확장성 정보 박스(GPCCScalabilityInfoBox)에 포함되는, 방법.
- 제6항에 있어서,상기 제2 샘플 엔트리 타입은,gpcb 샘플 엔트리 타입 또는 gpeb 샘플 엔트리 타입 중 적어도 하나인, 방법.
- 제1항에 있어서,상기 트랙 내에 상기 샘플 그룹 정보가 존재하는 것에 기반하여, 시간적 레벨 식별자(identifier)에 속하는 샘플은 샘플 그룹 디스크립션(description) 인덱스에 매핑되고,상기 샘플 그룹 디스크립션 인덱스는 상기 시간적 레벨 식별자에 1을 더한 값과 동일한, 방법.
- 제4항에 있어서,상기 G-PCC 디코더 컨피규레이션 레코드를 통해 시그널링된 시간적 레벨들에 대한 샘플 디스크립션은 샘플 디스크립션 박스(SampleDescriptionBox)에 포함되는는, 방법.
- 포인트 클라우드 데이터의 전송 장치에서 수행되는 방법으로서,G-PCC(geometry-based point cloud compression) 파일 내 트랙의 시간적 레벨들의 개수를 나타내는 시간적 레벨 개수 정보를 생성하는 단계;상기 시간적 레벨들의 개수에 기반하여, 상기 트랙 내 샘플들을 그룹핑한 정보인 샘플 그룹 정보를 생성하는 단계; 및시간적 레벨 개수 정보를 포함하는 상기 G-PCC 파일을 생성하는 단계를 포함하되,상기 샘플 그룹 정보는 상기 시간적 레벨들이 복수 개임에 기반하여 생성되는, 방법.
- 포인트 클라우드 데이터의 수신 장치로서,메모리; 및적어도 하나의 프로세서를 포함하고,상기 적어도 하나의 프로세서는,상기 포인트 클라우드 데이터를 포함하는 G-PCC(geometry-based point cloud compression) 파일을 획득하고,상기 G-PCC 파일 내 트랙의 시간적 레벨들의 개수를 나타내는 시간적 레벨 개수 정보를 상기 G-PCC 파일로부터 획득하고,상기 시간적 레벨 개수 정보에 기반하여, 상기 트랙 내 샘플들에 대한 샘플 그룹 정보를 G-PCC 파일로부터 획득하되,상기 샘플 그룹 정보는 상기 시간적 레벨 개수 정보가 상기 트랙의 시간적 레벨들이 복수 개임을 나타냄에 기반하여 획득되는, 수신 장치.
- 포인트 클라우드 데이터의 전송 장치로서,메모리; 및적어도 하나의 프로세서를 포함하고,상기 적어도 하나의 프로세서는,G-PCC 파일 내 트랙의 시간적 레벨들의 개수를 나타내는 시간적 레벨 개수 정보를 생성하고,상기 시간적 레벨 개수 정보에 기반하여 상기 트랙 내 샘플들을 그룹핑한 정보인 샘플 그룹 정보를 생성하고,상기 시간적 레벨 개수 정보를 포함하는 상기 G-PCC 파일을 생성하되,상기 샘플 그룹 정보는 상기 시간적 레벨들이 복수 개임에 기반하여 생성되는, 전송 장치.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020247016133A KR20240093609A (ko) | 2021-12-13 | 2022-12-13 | 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법 |
EP22907910.8A EP4451692A1 (en) | 2021-12-13 | 2022-12-13 | Transmission device for point cloud data, method performed by said transmission device, reception device for point cloud data, and method performed by said reception device |
CN202280082229.7A CN118541981A (zh) | 2021-12-13 | 2022-12-13 | 点云数据的发送装置、由所述发送装置执行的方法、点云数据的接收装置和由所述接收装置执行的方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163289097P | 2021-12-13 | 2021-12-13 | |
US63/289,097 | 2021-12-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023113443A1 true WO2023113443A1 (ko) | 2023-06-22 |
Family
ID=86773021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2022/020278 WO2023113443A1 (ko) | 2021-12-13 | 2022-12-13 | 포인트 클라우드 데이터의 전송 장치와 이 전송 장치에서 수행되는 방법 및, 포인트 클라우드 데이터의 수신 장치와 이 수신 장치에서 수행되는 방법 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP4451692A1 (ko) |
KR (1) | KR20240093609A (ko) |
CN (1) | CN118541981A (ko) |
WO (1) | WO2023113443A1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200045323A1 (en) * | 2017-03-27 | 2020-02-06 | Nokia Technologies Oy | An Apparatus, A Method And A Computer Program For Video Coding And Decoding |
KR20210004885A (ko) * | 2019-07-03 | 2021-01-13 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 |
KR20210005524A (ko) * | 2019-07-04 | 2021-01-14 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 |
WO2021123159A1 (en) * | 2019-12-20 | 2021-06-24 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Video data stream, video encoder, apparatus and methods for hrd timing fixes, and further additions for scalable and mergeable bitstreams |
US20210360268A1 (en) * | 2019-02-15 | 2021-11-18 | Virginie Drugeon | Encoder |
-
2022
- 2022-12-13 KR KR1020247016133A patent/KR20240093609A/ko unknown
- 2022-12-13 WO PCT/KR2022/020278 patent/WO2023113443A1/ko active Application Filing
- 2022-12-13 EP EP22907910.8A patent/EP4451692A1/en active Pending
- 2022-12-13 CN CN202280082229.7A patent/CN118541981A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200045323A1 (en) * | 2017-03-27 | 2020-02-06 | Nokia Technologies Oy | An Apparatus, A Method And A Computer Program For Video Coding And Decoding |
US20210360268A1 (en) * | 2019-02-15 | 2021-11-18 | Virginie Drugeon | Encoder |
KR20210004885A (ko) * | 2019-07-03 | 2021-01-13 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 |
KR20210005524A (ko) * | 2019-07-04 | 2021-01-14 | 엘지전자 주식회사 | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 |
WO2021123159A1 (en) * | 2019-12-20 | 2021-06-24 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Video data stream, video encoder, apparatus and methods for hrd timing fixes, and further additions for scalable and mergeable bitstreams |
Also Published As
Publication number | Publication date |
---|---|
KR20240093609A (ko) | 2024-06-24 |
CN118541981A (zh) | 2024-08-23 |
EP4451692A1 (en) | 2024-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021002730A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2021002657A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2020189895A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2020189976A1 (ko) | 포인트 클라우드 데이터 처리 장치 및 방법 | |
WO2020242244A1 (ko) | 포인트 클라우드 데이터 처리 방법 및 장치 | |
WO2020189982A1 (ko) | 포인트 클라우드 데이터 처리 장치 및 방법 | |
WO2020190090A1 (ko) | 포인트 클라우드 데이터 전송 장치, 포인트 클라우드 데이터 전송 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2020189903A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2021210837A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2021002604A1 (ko) | 포인트 클라우드 데이터 처리 방법 및 장치 | |
WO2021210763A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2020242077A1 (ko) | 포인트 클라우드 데이터 처리 장치 및 방법 | |
WO2021141258A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2020246689A1 (ko) | 포인트 클라우드 데이터 전송 장치, 포인트 클라우드 데이터 전송 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2020256308A1 (ko) | 포인트 클라우드 데이터 처리 장치 및 방법 | |
WO2020262831A1 (ko) | 포인트 클라우드 데이터 처리 장치 및 방법 | |
WO2020197086A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2021002592A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2021002594A1 (ko) | 포인트 클라우드 데이터 처리 장치 및 방법 | |
WO2021029511A1 (ko) | 포인트 클라우드 데이터 전송 장치, 포인트 클라우드 데이터 전송 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2021201384A1 (ko) | 포인트 클라우드 데이터 처리 장치 및 방법 | |
WO2022220382A1 (ko) | 포인트 클라우드 데이터 전송 방법, 포인트 클라우드 데이터 전송 장치, 포인트 클라우드 데이터 수신 방법 및 포인트 클라우드 데이터 수신 장치 | |
WO2021210867A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2021002636A1 (ko) | 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법 | |
WO2023282543A1 (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: 22907910 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2024534689 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2022907910 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2022907910 Country of ref document: EP Effective date: 20240715 |