8 #include <benchmark/benchmark.h>
17 namespace registration {
22 benchmark::State& state,
const bool remove_non_finite_points) {
26 if (remove_non_finite_points) {
27 pcd->RemoveNonFinitePoints();
30 std::vector<double> distance = pcd->ComputeNearestNeighborDistance();
31 size_t n = distance.size();
32 double dist_average = 0.0;
35 std::accumulate(distance.begin(), distance.end(), 0.0) / n;
37 double radius = 1.5 * dist_average;
38 std::vector<double>
radii = {radius, radius * 1};
39 std::shared_ptr<ccMesh> mesh;
43 for (
auto _ : state) {
51 ->Unit(benchmark::kMillisecond);
static std::shared_ptr< ccMesh > CreateFromPointCloudBallPivoting(const ccPointCloud &pcd, const std::vector< double > &radii)
Data class for PCDPointCloud contains the fragment.pcd point cloud mesh from the Redwood Living Room ...
std::string GetPath() const
Path to the pcd format point cloud.
std::shared_ptr< ccPointCloud > CreatePointCloudFromFile(const std::string &filename, const std::string &format, bool print_progress)
BENCHMARK_CAPTURE(BenchmarkCreateFromPointCloudBallPivoting, Without Non Finite Points, true) -> Unit(benchmark::kMillisecond)
static void BenchmarkCreateFromPointCloudBallPivoting(benchmark::State &state, const bool remove_non_finite_points)
Generic file read and write utility for python interface.
std::vector< Eigen::Vector3f > Points