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. Finally, all clusters are classified by assigning them to a preconfigured object size category.

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.

Classification

See configuration API definition.

Minimum object surface area (unit: \(m^2\))

The minimum surface area an object’s bounding box must have to be assigned to a specific size category. The surface area of the object is determined by finding the largest plane spanned by the computed bounding box. The resulting size labels are used by the zone state computation (e.g., in the object-based security zone).

  • SMALL minimum size (default: 0.01, range: [0.01 …​ 0.05]) Lower size threshold for small objects. Objects smaller than this threshold are discarded.

  • MEDIUM minimum size (default: 0.16, range: [0.05 …​ 0.5]) Lower size threshold for medium objects. This value has to be larger than the minimum size for small objects.

  • LARGE minimum size (default: 1.6, range: [0.5 …​ 5.0]) Lower size threshold for large objects. This value has to be larger than the minimum size for medium objects.

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).

Classification

Each cluster is annotated with its size based on the minimum object surface area. Here, the largest spanning area of the cluster’s bounding box is used to determine the category (e.g., SMALL, MEDIUM, LARGE). Objects smaller than the minimum threshold for SMALL objects are discarded.

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.