Block-based predictive coding for point cloud compression
AssigneeApple Inc.
InventorsKhaled Mammou, David Flynn, Alexandros Tourapis, Jungsun Kim
Life of this patent
Estimating the term…
Abstract
An encoder is configured to compress point cloud information using a blocks of nodes determined from a prediction tree. A prediction tree is generated for a point cloud. Segments of the prediction tree are identified. The segments are divided into blocks that are predicted by predecessor blocks within the segments. The blocks of the prediction tree may then be encoded and may be provided for transmission to a decoder that can regenerate the point cloud from the blocks of the prediction tree.
Claims20
One or more non-transitory, computer-readable storage media, storing program instructions that when executed on or across one or more computing devices cause the one or more computing devices to:
- compress geometric information for a point cloud, wherein to compress the geometric information, the program instructions cause the one or more computing devices to:
- generate a prediction tree comprising a plurality of nodes, wherein:
- respective ones of the nodes correspond to respective points in a one-to-one relationship, wherein the respective points make up the point cloud,
- the respective ones of the points comprise spatial location information for the respective point,
- geometric prediction using a parent, grand-parent, or great-grandparent node is used to determine the respective nodes of the prediction tree that correspond to the respective points of the point cloud, and
- spatial locations of the points of the point cloud are represented in a compressed form in the prediction tree via the nodes of the prediction tree;
- identify different segments of the prediction tree according to a graph traversal technique;
- divide the segments into respective blocks, wherein spatial location node values of nodes included in the respective blocks are predicted based on spatial location node values of nodes included in one or more predecessor blocks in the segment;
- and
- encode the blocks of the prediction tree to encode the geometric information for the point cloud;
- and
- send or store the encoded blocks for the point cloud.
A system, comprising:
- a memory storing program instructions, and
- one or more processors configured to execute the program instructions to:
- compress geometric information for a point cloud, wherein to compress the geometric information, the program instructions cause the one or more computing devices to:
- generate a prediction tree comprising a plurality of nodes, wherein:
- respective ones of the nodes correspond to points in a one-to-one relationship, wherein the respective points make up the point cloud,
- the plurality of points are captured from one or more sensors,
- the respective ones of the points comprise spatial location information for the respective point,
- geometric prediction using a parent, grand-parent, or great-grandparent node is used to determine the respective nodes of the prediction tree that correspond to the respective points of the point cloud, and
- spatial locations of the points of the point cloud are represented in a compressed form in the prediction tree via the nodes of the prediction tree;
- identify different segments of the prediction tree according to a graph traversal technique;
- divide the segments into respective blocks, wherein spatial location node values of nodes included in the respective blocks are predicted based on spatial location node values of nodes included in one or more predecessor blocks in the segment;
- encode residual values for the spatial location node values of the blocks of the prediction tree to encode the geometric information for the point cloud;
- and
- send or store the encoded blocks for the point cloud.
A method of compressing geometric information for a point could, the method, comprising:
- generating a prediction tree comprising a plurality of nodes, wherein:
- respective ones of the nodes correspond to respective points in a one-to-one relationship, wherein the respective make up the point cloud,
- the respective ones of the points comprise spatial location information for the respective point,
- geometric prediction using a parent, grand-parent, or great-grandparent node is used to determine the respective nodes of the prediction tree that correspond to the respective points of the point cloud, and
- spatial locations of the points of the point cloud are represented in a compressed form in the prediction tree via the nodes of the prediction tree;
- identifying different segments of the prediction tree according to a graph traversal technique;
- dividing the segments into respective blocks, wherein spatial location node values of nodes included in the respective blocks are predicted based on spatial location node values of nodes included in one or more predecessor blocks in the segment;
- and
- encoding the blocks of the prediction tree to encode the geometric information for the point cloud;
- and
- sending or storing the encoded blocks for the point cloud.
Dependencies are inferred from the claim text.