registration_recall — 3D registration_metrics op

• Data kinds: points × points → measurement

• Call: import fullseye as fs; fs.ledger.registration_recall(source, target, gt_transform, est_transform, thresh: 'float', *, corr_thresh: 'float | None' = None) -> 'float' (to call the implementation directly, import registration_eval; registration_eval.registration_recall(source, target, gt_transform, est_transform, thresh: 'float', *, corr_thresh: 'float | None' = None) -> 'float'; from the registry, ops3d.get("registration_recall"))

Usage

3DMatch-style per-pair registration success = 1.0 (success) / 0.0 (failure).

Map source into the target frame with the GT transform gt_transform and take the nearest neighbours on the target side (distance < corr_thresh, default thresh) as GT correspondences (= overlap). If the RMSE of those correspondences mapped by the estimated transform est_transform falls below thresh, it is a success.

source/target need not be index-corresponded (correspondences are built from the GT, so they do not depend on the order of target). If there is not even 1 GT overlap point, success is undefined → nan (honest). The Registration Recall of a whole dataset is the mean of this per-pair metric (over pairs with overlap). Invalid shapes raise ValueError (fail-closed).

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

Runnable examples (verified samples that actually call this op)

• reg_eval — py -3.11 examples_3d/reg_eval.py

Ops the type connects to (they accept measurement as input)

vol_gaussian_psf · fuse_to_voxel · fresnel_reflectance · snell_angle

Same category (registration_metrics)

inlier_ratio · rmse_inliers · rotation_translation_error


*Provenance: registration_eval.py — 3D operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.