Section 6
Command-line usage
The repository entry point evaluates a prediction/ground-truth case end to end. It loads the config, runs the pure metric functions, and writes a report:
$ python scripts/run.py --config configs/default.yaml
# → Report written to out/metrics_report.json
configs/default.yaml groups the knobs that the paper treats as caller-supplied:
| Group | Keys |
|---|---|
inner_product | form (split / kinetic / riemannian), split_norm_alpha, riemannian_metric. |
compactification | kappa (benchmark: π), phi_at_zero. |
skeleton | lambda_topology, topology_penalty, tree_edit_distance. |
aggregation, geometry | Aggregation form, smoothing ε, geometric weighting. |
prediction, ground_truth | URDF path + joint name of each side of the case. |
Auxiliary scripts: scripts/generate_error_cases.py synthesizes controlled error cases from
a URDF, scripts/run_previous_metrics.py scores the same cases with the baseline component
metrics, and examples/run_real_cases.py evaluates real PartNet-Mobility objects.