ATTPCROOT
0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
|
Go to the documentation of this file.
5 #include <pcl/point_cloud.h>
6 #include <pcl/point_types.h>
46 pcl::PointCloud<pcl::PointXYZI>::ConstPtr cloud);
49 pcl::PointCloud<pcl::PointXYZI>::ConstPtr cloud)
51 float result = std::numeric_limits<float>::infinity();
53 for (std::vector<size_t>::const_iterator a = lhs.begin(); a < lhs.end(); a++) {
54 for (std::vector<size_t>::const_iterator b = rhs.begin(); b < rhs.end(); b++) {
55 float distance = d(*a, *b);
57 if (distance < result)
66 pcl::PointCloud<pcl::PointXYZI>::ConstPtr cloud)
70 for (std::vector<size_t>::const_iterator a = lhs.begin(); a < lhs.end(); a++) {
71 for (std::vector<size_t>::const_iterator b = rhs.begin(); b < rhs.end(); b++) {
72 float distance = d(*a, *b);
74 if (distance > result)
82 std::vector<triplet>
generateTriplets(pcl::PointCloud<pcl::PointXYZI>::ConstPtr cloud,
size_t nnKandidates = 12,
83 size_t nBest = 2,
float maxError = 0.015
f);
float completeLinkClusterMetric(cluster const &lhs, cluster const &rhs, Eigen::MatrixXf const &d, pcl::PointCloud< pcl::PointXYZI >::ConstPtr cloud)
double(* f)(double t, const double *par)
std::vector< cluster_group > history
float singleLinkClusterMetric(cluster const &lhs, cluster const &rhs, Eigen::MatrixXf const &d, pcl::PointCloud< pcl::PointXYZI >::ConstPtr cloud)
std::vector< cluster > clusters
float(* ClusterMetric)(cluster const &lhs, cluster const &rhs, Eigen::MatrixXf const &d, pcl::PointCloud< pcl::PointXYZI >::ConstPtr cloud)
std::vector< triplet > generateTriplets(pcl::PointCloud< pcl::PointXYZI >::ConstPtr cloud, size_t k, size_t n, float a)
Eigen::Vector3f direction
std::vector< size_t > cluster
cluster_group cleanupClusterGroup(cluster_group const &clusterGroup, size_t m)
ScaleTripletMetric(float s)
float operator()(triplet const &lhs, triplet const &rhs, pcl::PointCloud< pcl::PointXYZI >::ConstPtr cloud)
cluster_group compute_hc(pcl::PointCloud< pcl::PointXYZI >::ConstPtr cloud, std::vector< triplet > const &triplets, ScaleTripletMetric triplet_metric, float t, int opt_verbose)
float bestClusterDistance
std::vector< triplet > triplets
friend bool operator<(const triplet &t1, const triplet &t2)
Cluster toCluster(std::vector< hc::triplet > const &triplets, hc::cluster_group const &clusterGroup, size_t pointIndexCount)
std::vector< cluster_t > cluster_group