3D Point Cloud Segmentation Using Spatial Hash Clustering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional 3D point cloud segmentation algorithms are unsuitable for real-time, high-resolution, and multiple-input scenarios due to linearithmic time complexity, noise sensitivity, non-determinism, and lack of static memory, making them inadequate for autonomous vehicles and other safety-critical applications.

Innovation Solution

A scalable clustering algorithm that segments 3D point clouds in real-time using a spatial hash data structure, allowing for multiple input sources and wide distance ranges while requiring static memory, achieved through aggressive down-sampling, pruning, and a parameterized association criterion.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional 3D point cloud segmentation algorithms are used, then segmentation accuracy can be achieved, but the time complexity becomes linearithmic (O(n log n)) which is too slow for real-time applications

Engineering Contradiction:
Improvesegmentation accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent divides the 3D point cloud into multiple two-dimensional range images based on angular sectors. Each range image is processed independently through parallel pipelines, transforming a single complex 3D segmentation problem into multiple simpler 2D problems that can be solved faster and in parallel.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent replaces traditional computational geometry algorithms with a specialized data structure called a range tree. This data structure enables O(log n) query complexity for finding neighboring points, significantly improving performance over conventional O(n) or O(n log n) approaches while maintaining segmentation accuracy.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If algorithms work optimally for points within small distance range, then processing speed is improved, but the algorithm cannot handle points at wide distance ranges from the sensor

Engineering Contradiction:
Improveprocessing speedVSAvoiddistance range handling
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent transforms the 3D spatial problem into 2D angular-range space by creating range images. This dimensional transformation allows the use of 2D spatial hashing and range trees which efficiently handle both near and far points by organizing them according to angular position and range, enabling uniform processing speed across all distance ranges.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Adaptability or versatility

If non-static memory solutions are used, then algorithm flexibility is improved, but the solution requires upfront project planning and is not suitable for embedded applications

Engineering Contradiction:
Improvealgorithm flexibilityVSAvoidembedded suitability
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent uses parameterized range image dimensions and spatial hash bucket counts that can be configured at compile time. This allows the algorithm to adapt to different point cloud sizes and sensor configurations while maintaining a fixed memory footprint suitable for embedded systems, as all data structures are allocated statically based on predetermined parameters.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11125883B2Efficient and scalable three-dimensional point cloud segmentation
Publication Date: 2021.09.21 APEX AI INC
  • US11125883B2 patent drawing
  • US11125883B2 patent drawing
  • US11125883B2 patent drawing

AI summary

Efficient and scalable three-dimensional point cloud segmentation. In an embodiment, a three-dimensional point cloud is segmented by adding points to a spatial hash. For each unseen point, a cluster is generated, the unseen point is added to the cluster and marked as seen, and, for each point that is added to the cluster, the point is set as a reference, a reference threshold metric is computed, all unseen neighbors are identified based on the reference threshold metric, and, for each identified unseen neighbor, the unseen neighbor is marked as seen, a neighbor threshold metric is computed, and the neighbor is added or not added to the cluster based on the neighbor threshold metric. When the cluster reaches a threshold size, it may be added to a cluster list. Objects may be identified based on the cluster list and used to control autonomous system(s).