🟠 Density-based Clustering Segmentation
Function Description
This operator utilizes the DBSCAN algorithm to perform clustering segmentation on input point clouds.
The core idea of DBSCAN is: a point belongs to a cluster if there are enough points in its neighborhood (satisfying density conditions). The operator starts from any point, searches for points in its neighborhood that satisfy density conditions and continuously expands, forming a cluster until it cannot expand further. Through this method, it can divide sufficiently dense regions in space into different clusters and effectively identify sparse noise points.
Usage Scenarios
-
Object segmentation: When there are multiple separated objects in a scene, this operator can segment each object into independent clusters based on their respective point cloud densities.
-
Noise removal: The DBSCAN algorithm can naturally identify isolated points in low-density regions, making it very suitable for removing sparse background noise or measurement noise from point clouds.
-
Instance separation: For multiple identical or different objects that are stacked or scattered, as long as there are tiny gaps between them, this operator can attempt to separate them into individual instances.
Input Output
Input |
Point cloud: Input point cloud or point cloud list to be clustered and segmented. |
Output |
Segmented point cloud: Returns a list of segmented point cloud clusters, each element in the list is an identified point cloud cluster. |
Parameter Description
|
This operator has two versions:
Both have identical core functionality and parameters, differing only in the type of point cloud data processed. |
Search Radius
Parameter Description |
Defines the radius of the spherical region used when each point searches for neighboring points. |
Parameter Adjustment |
|
Parameter Range |
[0,200], Default: 5 |
Density Condition
Parameter Description |
Defines how many neighboring points must be contained within a point’s "search radius" for that point to be considered a "core point" (i.e., a point inside a dense region). |
Parameter Adjustment |
|
Parameter Range |
[0,100000], Default: 5 |
Cluster Minimum Point Count
Parameter Description |
Post-processing filtering condition, clusters with fewer points than this value will be filtered out after clustering completion. |
Parameter Adjustment |
Suitable for filtering out meaningless small noise clusters composed of few points, appropriately increasing this value ensures meaningful clustering results are output. |
Parameter Range |
[1,4000000], Default: 100 |
Cluster Maximum Point Count
Parameter Description |
Post-processing filtering condition, clusters with more points than this value will be filtered out after clustering completion. |
Parameter Adjustment |
Suitable for scenarios where you need to exclude a very large background or support surface. For example, if you want to ignore a table surface and only analyze small objects on the table, you can set an upper limit to filter out the largest point cloud cluster representing the table surface. |
Parameter Range |
[1,4000000], Default: 4000000 |
Enable Sorting
Parameter Description |
Choose whether to sort all final output point cloud clusters by point cloud count from large to small. |
Parameter Adjustment |
|
Keep All Results
Parameter Description |
For each input point cloud, whether to output all segmentation results or keep only partial results. |
Parameter Adjustment |
|
Keep Result Count
Parameter Description |
Sets the number of output point clouds. |
Parameter Adjustment |
For each input point cloud, segmentation results will be sorted by point cloud count from large to small, keeping the top few point clouds. For example, setting to 1 means keeping only the largest result, setting to 2 means keeping the top 2 results, setting to 3 means keeping the top 3 results, and so on. |
Parameter Range |
[1,1000], Default: 1 |