K-D Tree Point Cloud Encoding Using Deviation Values

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for encoding and decoding point clouds within geometric constructs are inefficient in terms of space usage, processing speed, and code complexity, particularly when dealing with large datasets and high-dimensional shapes.

Innovation Solution

The proposed solution involves using a k-D tree-based approach to partition geometric constructs, quantizing geometric data, determining deviation values based on point counts in partitions, and entropy encoding these values to efficiently store and communicate point cloud data, utilizing a processor, buffer, and memory with specific instructions for encoding and decoding processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If point cloud data is stored and communicated using existing encoding methods, then the data can be represented, but the space usage (bandwidth and memory) is excessive

Engineering Contradiction:
Improvestorage spaceVSAvoiddata representation accuracy
Core Design Contradiction:
Quantity of substanceVSLoss of information

Solution Approach 1:

The geometric construct is recursively partitioned into multiple partitions using a k-D tree structure, dividing the point cloud data into hierarchical segments. This segmentation allows efficient encoding by processing and storing only the necessary deviation values and point counts for each partition level, significantly reducing storage space while maintaining data integrity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the representation parameters by encoding deviation values (difference between actual and expected point counts) instead of storing complete point cloud coordinates. This parameter transformation reduces the quantity of data needed to represent the point cloud while preserving the ability to accurately reconstruct the original data

Inventive Principle:
Principle #35Parameter changes

2Productivity

If existing encoding methods are used for point clouds, then data can be stored, but processing speed is slow

Engineering Contradiction:
Improveprocessing speedVSAvoidcode complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The k-D tree structure is pre-built during the encoding phase, organizing point cloud data into a hierarchical partitioning structure before compression. This preliminary organization enables faster decoding and processing by avoiding repeated computational geometry operations, thereby improving processing speed while managing complexity through structured preprocessing

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The point cloud is divided into hierarchical partitions through k-D tree segmentation, allowing parallel processing and efficient memory access patterns. This segmentation improves processing speed by enabling batch operations on partitioned data and reducing the computational complexity of individual processing steps

Inventive Principle:
Principle #1Segmentation

3Quantity of substance

If point cloud data is compressed to reduce bandwidth, then communication efficiency improves, but code complexity increases

Engineering Contradiction:
Improvebandwidth usageVSAvoidencoding complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent changes the encoding parameters from storing complete point cloud coordinates to storing deviation values and point counts relative to the k-D tree structure. This parameter transformation reduces bandwidth requirements by encoding only the differences from expected values, while the systematic approach to calculating and encoding deviations keeps the complexity manageable

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10496336B2K-D tree encoding for point clouds using deviations
Publication Date: 2019.12.03 GOOGLE LLC
  • US10496336B2 patent drawing
  • US10496336B2 patent drawing
  • US10496336B2 patent drawing

AI summary

An encoder includes a processor, a buffer, and a memory. The memory includes code as instructions that cause the processor to perform a number of steps. The steps include quantizing geometric data associated with a geometric construct, partitioning the geometric construct, determining a number of points in the partition, generating a deviation value based on the number of points in the partition, storing the deviation value in the buffer, and entropy encoding the deviation value.