metrics op• Datenarten: points × points → measurement
• Aufruf: import fullseye as fs; fs.ledger.rmse_correspondence(a, b) (die Implementierung direkt: import metrics3d; metrics3d.rmse_correspondence(a, b); aus dem Register: ops3d.get("rmse_correspondence"))
RMSE über bekannte Korrespondenzen (gleicher Index) = sqrt(mean |a_i − b_i|²). → Skalar. Zur Beurteilung des Registrierungsresiduums.
Berechnung: a, b in float-Arrays umwandeln, die 2. Potenz der zeilenweisen euklidischen Distanz sum((a - b)**2, axis=1) mitteln und die Quadratwurzel ziehen. Es findet keine Nächster-Nachbar-Suche statt — der Aufrufer garantiert, dass a[i] und b[i] demselben Punkt entsprechen (z. B. das durch Registrierung transformierte src @ R.T + t und die entsprechende dst-Punktfolge, oder die GT-Korrespondenz synthetischer Daten).
Argumente und Prüfung: ValueError bei a.shape != b.shape. Sonst gibt es keine Prüfung:
zwei leere (0, 3) liefern NaN (mit Warnung), weil mean leer ist, und auch Formen außer (N, 3) liefern einen Wert, sofern sie sich mit axis=1 summieren lassen. Punktwolken mit 3 Spalten übergeben.
Rückgabewert: Python float, Einheit = Koordinateneinheit, [0, inf). 0 bei Gleichheit.
Hinweis: Auf Wolken mit verschobener Korrespondenz (umsortierter index) angewendet, ergibt sich selbst bei korrekter Pose ein großer Wert. Ist die Korrespondenz unbekannt, chamfer_distance / fscore; um die Pose selbst mit GT zu vergleichen, pose_error.
• blender_interop — Zusammen mit Blender — Form bauen, mit fullseye messen (Fallstricke: Achsen, Einheiten, Referenzdaten)
• measurement_uncertainty — Messunsicherheit und Kalibrierung — was nötig ist, um zu behaupten, dass man misst
• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).
• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.
• metrics_eval — py -3.11 examples_3d/metrics_eval.py
measurement als Eingabe)vol_gaussian_psf · fuse_to_voxel · fresnel_reflectance · snell_angle
metrics)chamfer_distance · hausdorff_distance · m3c2_distance · fscore · normal_consistency · voxel_iou · pose_error
*Provenance: metrics3d.py — 3D Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.