ATTPCROOT
0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
|
Go to the documentation of this file.
19 typedef float (*
MstMetric)(pcl::PointXYZI
const &, pcl::PointXYZI
const &, size_t, size_t,
20 pcl::PointCloud<pcl::PointXYZI>::ConstPtr);
21 typedef bool (*
MstFilter)(pcl::PointCloud<pcl::PointXYZI>::ConstPtr,
edge const &, std::vector<edge>
const &,
22 std::vector<size_t>
const &);
24 inline float defaultMstMetric(pcl::PointXYZI
const &pointA, pcl::PointXYZI
const &pointB,
size_t indexA,
size_t indexB,
25 pcl::PointCloud<pcl::PointXYZI>::ConstPtr cloud)
27 Eigen::Vector3f diff(pointA.x - pointB.x, pointA.y - pointB.y, pointA.z - pointB.z);
29 return diff.dot(diff);
33 std::vector<edge>
const &selecetedEdges, std::vector<size_t>
const &groups)
std::vector< edge > edges
float defaultMstMetric(pcl::PointXYZI const &pointA, pcl::PointXYZI const &pointB, size_t indexA, size_t indexB, pcl::PointCloud< pcl::PointXYZI >::ConstPtr cloud)
bool(* MstFilter)(pcl::PointCloud< pcl::PointXYZI >::ConstPtr, edge const &, std::vector< edge > const &, std::vector< size_t > const &)
std::vector< size_t > groups
float(* MstMetric)(pcl::PointXYZI const &, pcl::PointXYZI const &, size_t, size_t, pcl::PointCloud< pcl::PointXYZI >::ConstPtr)
bool defaultMstFilter(pcl::PointCloud< pcl::PointXYZI >::ConstPtr cloud, edge const &edgeV, std::vector< edge > const &selecetedEdges, std::vector< size_t > const &groups)
std::vector< state > calculateMinimumSpanningTree(pcl::PointCloud< pcl::PointXYZI >::ConstPtr cloud, MstMetric metric, MstFilter filter)
std::vector< edge > calculateSquareDistances(pcl::PointCloud< pcl::PointXYZI >::ConstPtr cloud, MstMetric metric)
friend bool operator<(const edge &e1, const edge &e2)