Class Segmentation

Inheritance Relationships

Derived Type

Class Documentation

class Segmentation

Abstract class for a generic segmentation algorithm.

Subclassed by laser_segmentation::JumpDistanceSegmentation

Public Functions

inline virtual ~Segmentation()

Destroy the Segmentation object.

virtual void initialize_segmentation(double distance, double angle_resolution, double noise_reduction, std::string method = "") = 0

Initialize the segmentation algorithm.

Parameters:
  • distance – The maximum distance between two consecutive points to be considered part of the same segment.

  • angle_resolution – The minimum angle between two consecutive points.

  • noise_reduction – Parameter for noise reduction (if applicable).

  • method – The method to be used for segmentation.

virtual void perform_segmentation(const std::vector<slg::Point2D> points, std::vector<slg::Segment2D> &segments) = 0

Perform the segmentation of the given list of points.

Parameters:
  • points – The list of points to be segmented.

  • segments – The resulting list of segments.

Protected Functions

inline bool is_valid(const slg::Point2D point)

Check if the point is valid (i.e. not out-of-range)

Parameters:

point – The point to be checked.

Returns:

true If the point is valid.

Returns:

false If the point is not valid.