# US 12,002,243 B2 · Patch data unit coding and decoding for point-cloud coding

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,002,243 B2
- Document ID: US12002243B2
- Status: Granted
- Kind: B2
- Application number: 17/466,844
- Filed: 2021-09-03
- Published: 2021-12-23
- Granted: 2024-06-04
- Earliest claimed: 2019-03-12
- Assignees: Huawei Technologies Co., Ltd.
- Applicants: Huawei Technologies Co., Ltd.
- Inventors: Vladyslav Zakharchenko; Jianle Chen; Kangying Cai
- Web page: https://patentgrep.com/patent/US12002243B2

## CPC

- G06T 9/00: Image coding (bandwidth or redundancy reduction for static pictures H04N1/41; coding or decoding of static colour picture signals H04N1/64; methods or arrangements for coding, decoding, compressing or decompressing digital video signals H04N19/00)
- G06T 9/001: {Model-based coding, e.g. wire frame}
- G06T 15/08: Volume rendering
- H04N 19/20: using video object coding
- H04N 19/54: using feature points or meshes
- H04N 19/597: specially adapted for multi-view video sequence encoding
- H04N 19/70: characterised by syntax aspects related to video coding, e.g. related to compression standards
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method of point cloud coding (PCC) including receiving encoded patch information data; obtaining a patch corresponding to the encoded patch information data, the patch having a patch type; determining whether the patch type for the patch is a last patch type; and terminating a reconstruction process corresponding to the encoded patch information data when the patch type is the last patch type. Another method includes the same receiving and obtaining steps, but determining whether the patch type for the patch is a skip patch type; decoding a reference patch index corresponding to the patch when the patch type is the skip patch type; determining a reference index for the patch based on a reference frame index corresponding to the patch and the reference patch index as decoded when the patch type is the skip patch type; and reconstructing a volumetric representation of the patch.

## Claims

### Claim 1

A method of point cloud coding (PCC) implemented by a decoder, comprising:
receiving, by a receiver of the decoder, encoded patch information data;
obtaining, by a processor of the decoder, a patch corresponding to the encoded patch information data, the patch having a patch type (patch_mode);
determining, by the processor, whether the patch type for the patch is a last patch type; and
terminating, by the processor, a reconstruction process corresponding to the encoded patch information data when the patch type is the last patch type.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
determining that the patch type for the patch is an intra patch type;
determining a reference index (refIdx) for the patch based on a frame index corresponding to the patch and a decremented patch index;
decoding the patch using two dimensional (2D) components corresponding to the patch and three dimensional (3D) components corresponding to the patch; and
reconstructing a volumetric representation based on the patch as decoded.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
determining that the patch type for the patch is an inter patch type;
decoding a second reference patch index (dpdu_patch_index) corresponding to the patch;
determining a reference index (refIdx) for the patch based on a reference frame index corresponding to the patch and the second reference patch index as decoded;
decoding the patch using two dimensional (2D) components corresponding to the patch and three dimensional (3D) components corresponding to the patch; and
reconstructing a volumetric representation based on the patch as decoded.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
determining that the patch type for the patch is a pulse code modulation (PCM) patch type;
determining a reference index (refIdx) for the patch based on a frame index corresponding to the patch and a decremented patch index;
decoding the patch using two dimensional (2D) components for independent points corresponding to the patch and three dimensional (3D) components for the independent points corresponding to the patch; and
reconstructing a volumetric representation based on the patch as decoded.

### Claim 5 (depends on 1)

The method of claim 1, further comprising receiving an input corresponding to the encoded patch information data, wherein the input comprises one or more of the patch type (patch_mode), a patch index, a reference index, a frame index, and a reference frame index.

### Claim 6 (depends on 1)

The method of claim 1, further comprising displaying, on a display of an electronic device, an image generated based on a volumetric representation as reconstructed.

### Claim 7

A method of point cloud coding (PCC) implemented by a decoder, comprising:
receiving, by a receiver of the decoder, encoded patch information data;
obtaining, by a processor of the decoder, a patch corresponding to the encoded patch information data, the patch having a patch type (patch_mode);
determining, by the processor, whether the patch type for the patch is a skip patch type;
decoding, by the processor, a reference patch index (spdu_patch_index) corresponding to the patch when the patch type is the skip patch type;
determining, by the processor, a reference index (refIdx) for the patch based on a reference frame index corresponding to the patch and the reference patch index as decoded when the patch type is the skip patch type; and
reconstructing, by the processor, a volumetric representation of the patch based on the reference index that was determined when the patch type is the skip patch type.

### Claim 8 (depends on 7)

The method of claim 7, further comprising:
determining, by the processor, whether a more patches available flag has a first value or a second value;
storing, in a memory of the decoder, the volumetric representation as reconstructed when the more patches available flag has the first value; and
terminating, by the processor, a reconstruction process of the encoded patch information data when the more patches available flag has the second value.

### Claim 9 (depends on 7)

The method of claim 7, further comprising:
determining that the patch type for the patch is an intra patch type;
determining the reference index (refIdx) for the patch based on a frame index corresponding to the patch and a decremented patch index;
decoding the patch using two dimensional (2D) components corresponding to the patch and three dimensional (3D) components corresponding to the patch; and
reconstructing the volumetric representation based on the patch as decoded.

### Claim 10 (depends on 7)

The method of claim 7, further comprising:
determining that the patch type for the patch is an inter patch type;
decoding a second reference patch index (dpdu_patch_index) corresponding to the patch;
determining the reference index (refIdx) for the patch based on the reference frame index corresponding to the patch and the second reference patch index as decoded;
decoding the patch using two dimensional (2D) components corresponding to the patch and three dimensional (3D) components corresponding to the patch; and
reconstructing the volumetric representation based on the patch as decoded.

### Claim 11 (depends on 7)

The method of claim 7, further comprising:
determining that the patch type for the patch is a pulse code modulation (PCM) patch type;
determining the reference index (refIdx) for the patch based on a frame index corresponding to the patch and a decremented patch index;
decoding the patch using two dimensional (2D) components for independent points corresponding to the patch and three dimensional (3D) components for the independent points corresponding to the patch; and
reconstructing the volumetric representation based on the patch as decoded.

### Claim 12 (depends on 7)

The method of claim 7, further comprising receiving an input corresponding to the encoded patch information data, wherein the input comprises one or more of the patch_mode, a patch index, the reference index, a frame index, and a reference frame index.

### Claim 13 (depends on 7)

The method of claim 7, further comprising displaying, on a display of an electronic device, an image generated based on the volumetric representation as reconstructed.

### Claim 14

A method of point cloud coding (PCC) implemented by an encoder, comprising:
obtaining, by a receiver of the encoder, a patch frame data unit (pfdu) identifying a patch type (pdfu_patch_mode) for each of a plurality of patches;
determining, by a processor of the encoder, whether the patch type for a patch from the plurality of patches is a last patch type;
encoding, by the processor of the encoder, patch information data for the patch when the patch type is not the last patch type, the patch information data including the patch type for the patch; and
encoding, by the processor of the encoder, the patch information data for the patch when the patch type is set to the last patch type, the patch information data including the last patch type for the patch.

### Claim 15 (depends on 14)

The method of claim 14, wherein the patch type is one of a skip patch type, an inter patch type, an intra patch type, and a pulse code modulation (PCM) patch type.

### Claim 16 (depends on 14)

The method of claim 14, wherein the patch frame data unit includes a frame index (frmIdx), two dimensional (2D) components corresponding to the patch, and three dimensional (3D) components corresponding to the patch.

### Claim 17 (depends on 14)

The method of claim 14, wherein the patch information data includes a frame index, two dimensional (2D) components corresponding to the patch, and three dimensional (3D) components corresponding to the patch.

### Claim 18 (depends on 14)

The method of claim 14, further comprising iterating the steps of determining whether the patch type is the last patch type and encoding the patch information data for subsequent patches from the plurality of patches until one of the patches from the plurality of patches is determined to have the last patch type.

### Claim 19 (depends on 14)

The method of claim 14, further comprising performing byte alignment after all of the patch information data has been encoded.

### Claim 20 (depends on 19)

The method of claim 19, further comprising generating a compressed patch frame data unit after all of the patch information data has been encoded.

### Claim 21 (depends on 20)

The method of claim 20, further comprising storing, in a memory of the encoder, the compressed patch frame data unit for transmission toward a decoder.

### Claim 22

A method of point cloud coding (PCC) implemented by an encoder, comprising:
obtaining, by a receiver of the encoder, a patch frame data unit (pfdu) for each of a plurality of patches;
adding, by a processor of the encoder, a last patch flag to each of the plurality of patches;
determining, by the processor of the encoder, whether a patch type for a patch from the plurality of patches is a last patch type based on a value of the last patch flag; and
encoding, by the processor of the encoder, patch information data for the patch when the patch type is not the last patch type, the patch information data including the patch type and the last patch flag for the patch.

### Claim 23 (depends on 22)

The method of claim 22, wherein the patch type is one of a skip patch type, an inter patch type, an intra patch type, and a pulse code modulation (PCM) patch type.

### Claim 24 (depends on 22)

The method of claim 22, wherein the patch frame data unit includes a frame index (frmIdx), two dimensional (2D) components corresponding to the patch, and three dimensional (3D) components corresponding to the patch.

### Claim 25 (depends on 22)

The method of claim 22, wherein the patch information data includes a frame index, two dimensional (2D) components corresponding to the patch, and three dimensional (3D) components corresponding to the patch.

### Claim 26 (depends on 22)

The method of claim 22, further comprising iterating the steps of determining whether the patch type is the last patch type based on the value of the last patch flag and encoding the patch information data for subsequent patches from the plurality of patches until one of the patches from the plurality of patches is determined to have the last patch type based on the value of the last patch flag.

### Claim 27 (depends on 22)

The method of claim 22, further comprising performing byte alignment after one of the patches from the plurality of patches is determined to have the last patch type based on the value of the last patch flag.

### Claim 28 (depends on 27)

The method of claim 27, further comprising generating a compressed patch frame data unit after all of the patch information data has been encoded.

### Claim 29 (depends on 28)

The method of claim 28, further comprising storing, in a memory of the encoder, the compressed patch frame data unit for transmission toward a decoder.
