ReUseX  0.0.5
3D Point Cloud Processing for Building Reuse
Loading...
Searching...
No Matches
reusex::geometry::AccuracyReport Struct Reference

Ground-truth accuracy report for a reconstructed point cloud. More...

#include <accuracy_metrics.hpp>

Public Member Functions

std::string to_json (int indent=2) const

Public Attributes

std::size_t cloud_points = 0
 finite reconstruction points scored
std::size_t gt_points = 0
 finite (post-downsample) GT points scored
double accuracy_mean = 0.0
 mean recon->GT distance [m]
double accuracy_median = 0.0
 median recon->GT distance [m]
double completeness_mean = 0.0
 mean GT->recon distance [m]
double completeness_median = 0.0
 median GT->recon distance [m]
double chamfer = 0.0
 (accuracy_mean + completeness_mean) / 2 [m]
double precision = 0.0
 fraction of recon points within threshold
double recall = 0.0
 fraction of GT points within threshold
double fscore = 0.0
 2*P*R/(P+R)
float threshold = 0.05f
 inlier threshold used [m]

Detailed Description

Ground-truth accuracy report for a reconstructed point cloud.

Standard reconstruction-benchmark definitions, all distances in meters:

  • accuracy: for each reconstruction point, distance to the nearest ground-truth point. Measures how far the reconstruction strays from the reference surface (lower is better).
  • completeness: for each ground-truth point, distance to the nearest reconstruction point. Measures how much of the reference surface was actually reconstructed (lower is better).
  • chamfer: mean of accuracy_mean and completeness_mean.
  • precision: fraction of reconstruction points within threshold of the ground truth.
  • recall: fraction of ground-truth points within threshold of the reconstruction.
  • fscore: harmonic mean 2*P*R/(P+R) (0 when P+R == 0).

Unlike the ground-truth-free QualityReport, this requires an external reference cloud (e.g. a Faro survey), and both clouds must share a common coordinate frame.

Definition at line 41 of file accuracy_metrics.hpp.

Member Function Documentation

◆ to_json()

std::string reusex::geometry::AccuracyReport::to_json ( int indent = 2) const
nodiscard

Member Data Documentation

◆ accuracy_mean

double reusex::geometry::AccuracyReport::accuracy_mean = 0.0

mean recon->GT distance [m]

Definition at line 45 of file accuracy_metrics.hpp.

◆ accuracy_median

double reusex::geometry::AccuracyReport::accuracy_median = 0.0

median recon->GT distance [m]

Definition at line 46 of file accuracy_metrics.hpp.

◆ chamfer

double reusex::geometry::AccuracyReport::chamfer = 0.0

(accuracy_mean + completeness_mean) / 2 [m]

Definition at line 51 of file accuracy_metrics.hpp.

◆ cloud_points

std::size_t reusex::geometry::AccuracyReport::cloud_points = 0

finite reconstruction points scored

Definition at line 42 of file accuracy_metrics.hpp.

◆ completeness_mean

double reusex::geometry::AccuracyReport::completeness_mean = 0.0

mean GT->recon distance [m]

Definition at line 48 of file accuracy_metrics.hpp.

◆ completeness_median

double reusex::geometry::AccuracyReport::completeness_median = 0.0

median GT->recon distance [m]

Definition at line 49 of file accuracy_metrics.hpp.

◆ fscore

double reusex::geometry::AccuracyReport::fscore = 0.0

2*P*R/(P+R)

Definition at line 55 of file accuracy_metrics.hpp.

◆ gt_points

std::size_t reusex::geometry::AccuracyReport::gt_points = 0

finite (post-downsample) GT points scored

Definition at line 43 of file accuracy_metrics.hpp.

◆ precision

double reusex::geometry::AccuracyReport::precision = 0.0

fraction of recon points within threshold

Definition at line 53 of file accuracy_metrics.hpp.

◆ recall

double reusex::geometry::AccuracyReport::recall = 0.0

fraction of GT points within threshold

Definition at line 54 of file accuracy_metrics.hpp.

◆ threshold

float reusex::geometry::AccuracyReport::threshold = 0.05f

inlier threshold used [m]

Definition at line 57 of file accuracy_metrics.hpp.


The documentation for this struct was generated from the following file: