Hierarchical point cloud compression with smoothing

US11508095B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11508095-B2
Application numberUS-202117163194-A
CountryUS
Kind codeB2
Filing dateJan 29, 2021
Priority dateApr 10, 2018
Publication dateNov 22, 2022
Grant dateNov 22, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system comprises an encoder configured to compress attribute information for a point cloud and/or a decoder configured to decompress compressed attribute for the point cloud. To compress the attribute information, multiple levels of detail are generated based on spatial information. Also, attribute values are predicted based on the level of details. A decoder follows a similar prediction process based on level of details. Also, attribute correction values may be determined to correct predicted attribute values and may be used by a decoder to decompress a point cloud compressed using level of detail attribute compression. In some embodiments, an update operation is performed to smooth attribute correction values taking into account an influence factor of respective points in a given level of detail on attributes in other levels of detail.

First claim

Opening claim text (preview).

What is claimed is: 1. A non-transitory, computer-readable, medium storing program instructions, that when executed on or across one or more processors, cause the one or more processors to: determine a plurality of levels of detail for encoding attribute values for a plurality of points in three-dimensional (3D) space, wherein different levels of detail include different sub-sets of the plurality of points; for respective points of a first level of detail or points of one or more additional levels of detail, determine a predicted attribute value for the respective point based on predicted or assigned attributes values for neighboring points in a same level of detail as the respective point; for respective points of the first level of detail or the points of the one or more additional levels of detail, determine an attribute correction value for the respective point, based on comparing a predicted attribute value for the respective point to attribute information for the point prior to compression; apply an update operation to smooth the attribute correction values, wherein the update operation takes into account relative influences of the attributes of the points of a given level of detail on attribute values of points included in other levels of detail; and encode the updated attribute correction values for the first level of detail and the one or more additional levels of detail. 2. The non-transitory, computer-readable, medium of claim 1 , wherein to apply the update operation, the program instructions, when executed on or across the one or more processors, cause the one or more processors to: determine edge distance for edges between a vertex corresponding to a respective point for which an attribute value is being predicted and vertices for the neighboring points being used in predicting the attribute value for the respective point, wherein attribute values of the neighboring points with shorter edges to the respective point are given a greater edge distance weighting than attribute values of points with longer edges to the respective point. 3. The non-transitory, computer-readable, medium of claim 2 , wherein the program instructions, when executed on or across the one or more processors, further cause the one or more processors to: quantize the attribute correction values or the updated attribute correction values, wherein the quantization differs based on edge distance weightings determined based on the edge distances using a relationship known by an encoder performing the encoding and a decoder that decodes the encoded point cloud. 4. The non-transitory, computer-readable, medium of claim 3 , wherein the quantization differs based on edge distance weighting by an exponential relationship, and wherein the program instructions, when executed on or across the one or more processors, further cause the one or more processors to: encode, in a bit stream with the updated attribute correction values, an exponential coefficient for determining the quantization to be applied. 5. The non-transitory, computer-readable, medium of claim 2 , wherein the program instructions, when executed on or across the one or more processors, further cause the one or more processors to: quantize edge distance weightings for the edge distances, wherein edge distance weightings with less weights are quantized to a greater degree than edge distance weightings with greater weights. 6. The non-transitory, computer-readable, medium of claim 2 , wherein the program instructions, when executed on or across the one or more processors, further cause the one or more processors to: disregard, when predicting the attribute values, influences of points in another level of detail with a path of edge distances that adds up to be greater than a threshold distance from a given point for which an attribute value is being predicted. 7. The non-transitory, computer-readable, medium of claim 2 , wherein the weights of edges for the points are determined recursively based on assigning an initial same edge weight and iteratively updating the edge weights by traversing the points in an order from highest level of detail to lowest level of detail, wherein the update is determined based on applying an update function that takes into account the edge weights of a set of neighboring points that neighbor a point for which the edge weight is being updated. 8. The non-transitory, computer-readable, medium of claim 1 , wherein the program instructions, when executed on or across the one or more processors, further cause the one or more processors to: assign an attribute value to at least one point of the first level of detail; and encode the assigned attribute value for the at least one point in the first level of detail in a bit stream with the updated attribute correction values for first level of detail. 9. A device, comprising: a memory storing program instructions; and one or more processors, wherein the program instructions, when executed on or across the one or more processors, cause the one or more processors to: determine a plurality of levels of detail for encoding attribute values for a plurality of points in three-dimensional (3D) space, wherein different levels of detail include different sub-sets of the plurality of points; for respective points of a first level of detail or points of one or more additional levels of detail, determine a predicted attribute value for the respective point based on predicted or assigned attributes values for neighboring points in a same level of detail as the respective point; for respective points of the first level of detail or the points of the one or more additional levels of detail, determine an attribute correction value for the respective point, based on comparing a predicted attribute value for the respective point to attribute information for the point prior to compression; apply an update operation to smooth the attribute correction values, wherein the update operation takes into account relative influences of the attributes of the points of a given level of detail on attribute values of points included in other levels of detail; and encode the updated attribute correction values for the first level of detail and the one or more additional levels of detail. 10. The device of claim 9 , further comprising: one or more sensors configured to capture the plurality of points in 3D space, wherein respective ones of the points comprise spatial information for the point and attribute information for the point. 11. The device of claim 10 , wherein the one or more sensors comprise: a LIDAR system; a 3D camera; or a 3D scanner. 12. The device of claim 9 , wherein to apply the update operation, the program instructions, when executed on or across the one or more processors, cause the one or more processors to: determine edge distance for edges between a vertex corresponding to a respective point for which an attribute value is being predicted and vertices for the neighboring points being used in predicting the attribute value for the respective point, wherein attribute values of the neighboring points with shorter edges to the respective point are given a greater edge distance weighting than attribute values of points with longer edges to the respective point. 13. The device of claim 12 , wherein the program instructions, when executed on or across the one or more processors, further cause the one or more processors to: quantize the attribute correction values or the updated attribute correction values, wherein the quantization differs based on edge distance weightings determined based on the edge distances using a relationship known

Assignees

Inventors

Classifications

  • Three-dimensional [3D] modelling for computer graphics · CPC title

  • Level of detail · CPC title

  • G06T9/001Primary

    Model-based coding, e.g. wire frame · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11508095B2 cover?
A system comprises an encoder configured to compress attribute information for a point cloud and/or a decoder configured to decompress compressed attribute for the point cloud. To compress the attribute information, multiple levels of detail are generated based on spatial information. Also, attribute values are predicted based on the level of details. A decoder follows a similar prediction proc…
Who is the assignee on this patent?
Apple Inc
What technology area does this patent fall under?
Primary CPC classification G06T9/001. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 22 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).