Clustering related functions header. More...
#include <vector>
#include "geometry_msgs/Point.h"
#include "sensor_msgs/LaserScan.h"
Go to the source code of this file.
Classes | |
class | Cluster |
Typedefs | |
typedef boost::shared_ptr < Cluster > | ClusterPtr |
typedef boost::shared_ptr< Point > | PointPtr |
Functions | |
int | abdClustering (vector< PointPtr > &points, double lambda, vector< ClusterPtr > &clusters_ABD) |
Performs Segmentation operation with the Adaptative Breakpoint Detector. | |
PointPtr | calculateClusterCentroid (vector< PointPtr > support_points) |
Calculates the cluster's centroid. | |
PointPtr | calculateClusterMedian (vector< PointPtr > support_points) |
Calculates the cluster's central point. | |
double | cosineDistance (vector< double > &vect1, vector< double > &vect2) |
Calculates the cosine distance between 2 vectors. | |
double | deg2rad (double angle) |
Converts degree values to radian values. | |
int | dietmayerClustering (vector< PointPtr > &points, double C0, vector< ClusterPtr > &clusters_Dietmayer) |
Performs Segmentation operation with the Dietmayer Segmentation Algorithm. | |
int | nnClustering (vector< PointPtr > &points, double threshold, vector< ClusterPtr > &clusters_nn) |
Performs Segmentation operation with the Spacial Nerarest Neighbor Algorithm. | |
int | premebidaClustering (vector< PointPtr > &points, double threshold_prem, vector< ClusterPtr > &clusters_Premebida) |
Performs Segmentation operation with the Multivariable Segmentation Algorithm. | |
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. | |
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. | |
int | simpleClustering (vector< PointPtr > &points, double threshold, vector< ClusterPtr > &clusters) |
Performs a Simple Segmentation operation. |
Clustering related functions header.
Definition in file clustering.h.
typedef boost::shared_ptr<Cluster> ClusterPtr |
Definition at line 70 of file clustering.h.
Definition at line 42 of file clustering.h.
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.
Calculates the cluster's central point.
support_points | cluster's support points |
Definition at line 747 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.
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.
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.