# US 11,451,836 B2 · Techniques and apparatus for PCM patch creation using Morton codes

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

- Number: US 11,451,836 B2
- Document ID: US11451836B2
- Status: Granted
- Kind: B2
- Application number: 16/915,385
- Filed: 2020-06-29
- Published: 2021-01-07
- Granted: 2022-09-20
- Earliest claimed: 2019-07-03
- Assignees: Tencent America LLC
- Applicants: Tencent America LLC
- Inventors: Arash Vosoughi; Sehoon Yea; Stephan Wenger; Shan Liu
- Web page: https://patentgrep.com/patent/US11451836B2

## CPC

- H04N 19/597: specially adapted for multi-view video sequence encoding
- H04N 19/96: Tree coding, e.g. quad-tree coding
- G06T 9/001: {Model-based coding, e.g. wire frame}
- G06T 9/40: Tree coding, e.g. quadtree, octree
- H04N 19/119: Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/70: characterised by syntax aspects related to video coding, e.g. related to compression standards
- H04N 19/86: involving reduction of coding artifacts, e.g. of blockiness
- G06T 2207/10028: Range image; Depth image; 3D point clouds
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

A method and apparatus for encoding/decoding a video stream using video point cloud coding, the encoding/decoding including obtaining an input point cloud, generating patches based on points of the point cloud, packing the patches into an image, generating the video stream based on the image, and smoothing the image using Morton codes.

## Claims

### Claim 1

A method of encoding a video stream using video point cloud coding, the method being performed by at least one processor and comprising:
obtaining an input point cloud, the point cloud including a plurality of points;
packing a subset of the plurality of points of the point cloud together to generate first patches, such that the first patches do not include all of the plurality of points of the point cloud;
packing the first patches into an image;
smoothing boundaries of the first patches in the image using PCM patches to compensate for missed points of the plurality of points of the point cloud which are not included in the first patches, the PCM patches being generated using a Morton space filling curve; and
generating the video stream based on the image.

### Claim 2 (depends on 1)

The method of claim 1, wherein the point cloud is a dynamic point cloud.

### Claim 3 (depends on 1)

The method of claim 1, wherein the smoothing includes geometric smoothing.

### Claim 4 (depends on 1)

The method of claim 1, wherein the smoothing includes color smoothing.

### Claim 5 (depends on 1)

The method of claim 1, wherein the smoothing includes geometric and color smoothing.

### Claim 6 (depends on 1)

The method of claim 1, wherein the smoothing includes geometric and color smoothing, and the point cloud is a dynamic point cloud.

### Claim 7 (depends on 1)

The method of claim 1, wherein the smoothing includes geometric smoothing, and the point cloud is a dynamic point cloud.

### Claim 8 (depends on 1)

The method of claim 1, wherein the smoothing includes color smoothing, and the point cloud is a dynamic point cloud.

### Claim 9 (depends on 1)

The method of claim 1, wherein the smoothing is configured to use less cache memory than a smoothing process using a Kd-tree.

### Claim 10

An apparatus for encoding a video stream using video point cloud coding, the apparatus comprising:
at least one memory configured to store program code; and
at least one processor configured to read the program code and operate as instructed by the program code, the program code comprising:
obtaining code configured to cause the at least one processor to obtain a point cloud, the point cloud including a plurality of points;
first packing code configured to cause the at least one processor to pack a subset of the plurality of points of the point cloud together to generate first patches, such that the first patches do not include all of the plurality of points of the point cloud;
second packing code configured to cause the at least one processor to pack the first patches into an image;
smoothing code configured to cause the at least one processor to smooth boundaries of the first patches in the image using PCM patches to compensate for missed of the plurality of points of the point cloud which are not included in the first patches, the PCM patches being generated using a Morton space filling curve; and
generating code configured to cause the at least one processor to generating the video stream based on the image.

### Claim 11 (depends on 10)

The apparatus according to claim 10, wherein the point cloud is a dynamic point cloud.

### Claim 12 (depends on 10)

The apparatus according to claim 10, wherein the smoothing code includes geometric smoothing code.

### Claim 13 (depends on 10)

The apparatus according to claim 10, wherein the smoothing code includes color smoothing code.

### Claim 14 (depends on 10)

The apparatus according to claim 10, wherein the smoothing code includes color smoothing code and geometric smoothing code.

### Claim 15 (depends on 10)

The apparatus according to claim 10, wherein the smoothing code includes color smoothing code and geometric smoothing code, and the point cloud is a dynamic point cloud.

### Claim 16 (depends on 10)

The apparatus according to claim 10, wherein the smoothing code includes color smoothing code, and the point cloud is a dynamic point cloud.

### Claim 17 (depends on 10)

The apparatus according to claim 10, wherein the smoothing code includes geometric smoothing code, and the point cloud is a dynamic point cloud.

### Claim 18

A non-transitory computer-readable medium storing computer instructions for encoding a video stream using video point cloud coding that, when executed by at least one processor, causes the at least one processor to:
obtain an input point cloud, the point cloud include a plurality of points;
pack a subset of the plurality of points of the point cloud together to generate first patches, such that the first patches do not include all of the plurality of points of the point cloud;
pack the first patches into an image;
smooth boundaries of the first patches in the image using PCM patches to compensate for missed points of the plurality of points of the point cloud which are not included in the first patches, the PCM patches being generated using a Morton space filling; and
generate the video stream based on the image.
