Skip to content

RANSAC Ground Filter#

Purpose#

The purpose of this node is that remove the ground points from the input pointcloud.

Inner-workings / Algorithms#

Apply the input points to the plane, and set the points at a certain distance from the plane as points other than the ground. Normally, whn using this method, the input points is filtered so that it is almost flat before use. Since the drivable area is often flat, there are methods such as filtering by lane.

Inputs / Outputs#

This implementation inherits pointcloud_preprocessor::Filter class, please refer README.

Parameters#

Node Parameters#

This implementation inherits pointcloud_preprocessor::Filter class, please refer README.

Core Parameters#

Name Type Description
base_frame string base_link frame
unit_axis string The axis which we need to search ground plane
max_iterations int The maximum number of iterations
outlier_threshold double The distance threshold to the model [m]
plane_slope_threshold double The slope threshold to prevent mis-fitting [deg]
voxel_size_x double voxel size x [m]
voxel_size_y double voxel size y [m]
voxel_size_z double voxel size z [m]
height_threshold double The height threshold from ground plane for no ground points [m]
debug bool whether to output debug information

Assumptions / Known limits#

  • This method can't handle slopes.
  • The input points is filtered so that it is almost flat.

(Optional) Error detection and handling#

(Optional) Performance characterization#

https://pcl.readthedocs.io/projects/tutorials/en/latest/planar_segmentation.html

(Optional) Future extensions / Unimplemented parts#