Detection
The object detection step receives the foreground point cloud as input data. A preprocessing step removes outlier points from the foreground point cloud. Then, a variant of the DBSCAN clustering algorithm is applied to the filtered point cloud to find cohesive segments or clusters.
Parameters
Foreground neighbor filter
See configuration API definition.
- Minimum points (default: 3, range: [1 … 30])
-
The minimum number of neighbors a given point must have within the specified search radius to be classified as an inlier, not an outlier. Combining a low value with a small neighbor radius removes more noise points.
- Neighbor radius (default: 0.5, range: [0.1 … 3.0], unit: \(m\))
-
The radius within which the required number of neighbors must exist for a point to be considered an inlier. Combining a small value with a low number of required neighbors removes more noise points.
DBScan clustering
The clustering step does not have parameters exposed in the WebGUI. For advanced usage, see the configuration API definition. |
Algorithm
Object detection consists of three steps: point cloud filtering, clustering, and post-processing.
Foreground neighbor filter
The radius outlier filter removes outlier points. This specific algorithm considers points as outliers when they do not have a significant number of neighbor points (default: 3) within a configured radius (default: 0.5 \(m\)).
DBScan clustering
DBScan clustering is a density-based spatial clustering algorithm using the Euclidean distance between points. The remaining filtered foreground point cloud is split into cohesive regions with a consistent point density. The point density is defined as a radius (default: 0.2 \(m\)) which is adapted across the point’s distance from the sensor. Additional filtering ensures that detected clusters contain a minimum of points (default: 10).
Limitations
- Objects appear merged
-
When objects in the scene are too close together or overlap (e.g., a person walking in front of a moving car) they may appear as a single merged object. More advanced clustering methods are required to correctly distinguish such objects.
- Processing overload
-
When too many points are contained in the foreground point cloud (e.g., when the sensor is using a static motion detection and is tilted or moved causing all points to appear as foreground), object detection may require a significant amount of time to determine the clusters in the scene.