Clustering related functions. More...

Go to the source code of this file.
Functions | |
| int | abdClustering (vector< PointPtr > &points, double lambda, vector< ClusterPtr > &clusters_ABD) |
| Performs Segmentation operation with the Adaptative Breakpoint Detector. More... | |
| PointPtr | calculateClusterCentroid (vector< PointPtr > support_points) |
| Calculates the cluster's centroid. More... | |
| geometry_msgs::Point | calculateClusterCentroid (vector< geometry_msgs::Point > support_points) |
| PointPtr | calculateClusterMedian (vector< PointPtr > support_points) |
| Calculates the cluster's central point. More... | |
| geometry_msgs::Point | calculateClusterMedian (vector< geometry_msgs::Point > support_points) |
| double | cosineDistance (vector< double > &vect1, vector< double > &vect2) |
| Calculates the cosine distance between 2 vectors. More... | |
| double | deg2rad (double angle) |
| Converts degree values to radian values. More... | |
| int | dietmayerClustering (vector< PointPtr > &points, double C0, vector< ClusterPtr > &clusters_Dietmayer) |
| Performs Segmentation operation with the Dietmayer Segmentation Algorithm. More... | |
| double | euclideanDistance (geometry_msgs::Point &point1, geometry_msgs::Point &point2) |
| int | nnClustering (vector< PointPtr > &points, double threshold, vector< ClusterPtr > &clusters_nn) |
| Performs Segmentation operation with the Spacial Nerarest Neighbor Algorithm. More... | |
| int | premebidaClustering (vector< PointPtr > &points, double threshold_prem, vector< ClusterPtr > &clusters_Premebida) |
| Performs Segmentation operation with the Multivariable Segmentation Algorithm. More... | |
| vector< double > | rangeFeatures (double range1, double range2, PointPtr range1cart, PointPtr range2cart) |
| A auxiliary function of the premebidaClustering function Calculates the a set of atributes of a pair of laser points. More... | |
| void | recursiveClustering (vector< PointPtr > &points, vector< pair< ClusterPtr, bool > > &point_association, double threshold, uint idx) |
| Auxiliary function to the nnClustering - Recursive function. More... | |
| int | santosClustering (vector< PointPtr > &points, double C0, double beta, vector< ClusterPtr > &clusters_Santos) |
| Performs Segmentation operation with the Santos Approach from the Dietmayer Segmentation Algorithm. More... | |
| int | simpleClustering (vector< PointPtr > &points, double threshold, vector< ClusterPtr > &clusters) |
| Performs a Simple Segmentation operation. More... | |
Clustering related functions.
Definition in file clustering.cpp.
| int abdClustering | ( | vector< PointPtr > & | points, |
| double | lambda, | ||
| vector< ClusterPtr > & | clusters_ABD | ||
| ) |
Performs Segmentation operation with the Adaptative Breakpoint Detector.
| points | incoming Laser Points |
| lamda | auxiliary parameter |
| clusters_ABD | clusters output vector of clusters, these clusters use the Cluster class |
Definition at line 384 of file clustering.cpp.
Calculates the cluster's centroid.
| support_points | cluster's support points |
Definition at line 702 of file clustering.cpp.
| geometry_msgs::Point calculateClusterCentroid | ( | vector< geometry_msgs::Point > | support_points | ) |
Definition at line 723 of file clustering.cpp.
Calculates the cluster's central point.
| support_points | cluster's support points |
Definition at line 747 of file clustering.cpp.
| geometry_msgs::Point calculateClusterMedian | ( | vector< geometry_msgs::Point > | support_points | ) |
Definition at line 782 of file clustering.cpp.
| double cosineDistance | ( | vector< double > & | vect1, |
| vector< double > & | vect2 | ||
| ) |
Calculates the cosine distance between 2 vectors.
| vect1 | input vector with the range atributes from the fist pair |
| vect2 | input vector with the range atributes from the second pair |
Definition at line 665 of file clustering.cpp.
| double deg2rad | ( | double | angle | ) |
Converts degree values to radian values.
| angle | angle value in degrees |
Definition at line 687 of file clustering.cpp.
| int dietmayerClustering | ( | vector< PointPtr > & | points, |
| double | C0, | ||
| vector< ClusterPtr > & | clusters_Dietmayer | ||
| ) |
Performs Segmentation operation with the Dietmayer Segmentation Algorithm.
| points | incoming Laser Points |
| C0 | parameter used for noise reduction |
| clusters_Dietmayer | output vector of clusters, these clusters use the Cluster class |
Definition at line 144 of file clustering.cpp.
| double euclideanDistance | ( | geometry_msgs::Point & | point1, |
| geometry_msgs::Point & | point2 | ||
| ) |
Definition at line 692 of file clustering.cpp.
| int nnClustering | ( | vector< PointPtr > & | points, |
| double | threshold, | ||
| vector< ClusterPtr > & | clusters_nn | ||
| ) |
Performs Segmentation operation with the Spacial Nerarest Neighbor Algorithm.
| points | incoming Laser Points |
| threshold | distance value used to break clusters |
| clusters_nn | clusters output vector of clusters, these clusters use the Cluster class |
Definition at line 468 of file clustering.cpp.
| int premebidaClustering | ( | vector< PointPtr > & | points, |
| double | threshold_prem, | ||
| vector< ClusterPtr > & | clusters_Premebida | ||
| ) |
Performs Segmentation operation with the Multivariable Segmentation Algorithm.
| points | incoming Laser Points |
| threshold_prem | cosine distance value used to break clusters |
| clusters_Premebida | clusters output vector of clusters, these clusters use the Cluster class |
Definition at line 239 of file clustering.cpp.
| vector<double> rangeFeatures | ( | double | range1, |
| double | range2, | ||
| PointPtr | range1cart, | ||
| PointPtr | range2cart | ||
| ) |
A auxiliary function of the premebidaClustering function Calculates the a set of atributes of a pair of laser points.
| range1 | range value of the the first point |
| range2 | range value of the the second point |
| range1cart | cartesian value of the first point |
| range2cart | cartesian value of the second point |
Definition at line 635 of file clustering.cpp.
| void recursiveClustering | ( | vector< PointPtr > & | points, |
| vector< pair< ClusterPtr, bool > > & | point_association, | ||
| double | threshold, | ||
| uint | idx | ||
| ) |
Auxiliary function to the nnClustering - Recursive function.
| points | incoming Laser Points |
| point_association | pair with the output vector of clusters and its state of association |
| threshold | distance value used to break clusters |
| idx | index of the scan point |
Definition at line 819 of file clustering.cpp.
| int santosClustering | ( | vector< PointPtr > & | points, |
| double | C0, | ||
| double | beta, | ||
| vector< ClusterPtr > & | clusters_Santos | ||
| ) |
Performs Segmentation operation with the Santos Approach from the Dietmayer Segmentation Algorithm.
| points | incoming Laser Points |
| C0 | parameter used for noise reduction |
| beta | parameter aiming to reduce the dependence of the segmentation with respect to the distance between the LRF and the objects |
| clusters_Santos | clusters output vector of clusters, these clusters use the Cluster class |
Definition at line 538 of file clustering.cpp.
| int simpleClustering | ( | vector< PointPtr > & | points, |
| double | threshold, | ||
| vector< ClusterPtr > & | clusters | ||
| ) |
Performs a Simple Segmentation operation.
| points | incoming Laser Points |
| threshold | distance value used to break clusters |
| clusters | output vector of clusters, these clusters use the Cluster class |
Definition at line 49 of file clustering.cpp.