Implementation Overview
1 Reconstruction Quality Metrics & RRI Computation
This section provides a comprehensive overview of reconstruction quality metrics and how to compute the Relative Reconstruction Improvement (RRI) score for Next-Best-View planning.
1.1 Overview
The evaluation of 3D reconstruction quality relies on comparing predicted reconstructions against ground truth meshes. Both ATEK and EFM3D provide implementations for computing these metrics using:
- Trimesh: For mesh loading and surface sampling
- PyTorch: For efficient distance computations
- Point-to-mesh distance functions: Core geometric primitives
1.2 Contents
This section is organized into the following topics:
- Theory: Surface Reconstruction Metrics - Core metrics: Accuracy, Completeness, Chamfer Distance, Precision/Recall
- ATEK Implementation - Detailed breakdown of ATEK’s mesh evaluation functions
- EFM3D Implementation - EFM3D utilities for point clouds, rays, and voxels
- RRI Computation - Complete pipeline for computing RRI oracle with ASE dataset
1.3 Quick Reference: Key Functions
1.3.1 From ATEK
| Function | Purpose | Location |
|---|---|---|
evaluate_single_mesh_pair() |
Complete mesh evaluation pipeline | surface_reconstruction_metrics.py |
compute_pts_to_mesh_dist() |
Point-to-mesh distance computation | surface_reconstruction_utils.py |
point_to_closest_tri_dist() |
Point-to-triangle projection + distance | surface_reconstruction_utils.py |
1.3.2 From EFM3D
| Function | Purpose | Location |
|---|---|---|
eval_mesh_to_mesh() |
Mesh evaluation with visualizations | utils/mesh_utils.py |
dist_im_to_point_cloud_im() |
Depth → point cloud conversion | utils/depth.py |
ray_obb_intersection() |
Ray-box intersection for sampling | utils/ray.py |
sample_depths_in_grid() |
Sample depths along rays in voxel grid | utils/ray.py |
pointcloud_to_occupancy_snippet() |
Point cloud → occupancy grid with free space | utils/pointcloud.py |
pointcloud_to_voxel_counts() |
Point cloud → voxel density grid | utils/pointcloud.py |
1.4 References
- ATEK: GitHub - ATEK Surface Reconstruction Metrics
- EFM3D: GitHub - EFM3D Utils
- VIN-NBV: Frahm et al., “View Introspection Network for Next-Best-View Selection”, 2025
- Trimesh: trimesh documentation