rotation_translation_error — 3D registration_metrics op

• Datenarten: pose × pose → measurement

• Aufruf: import fullseye as fs; fs.ledger.rotation_translation_error(gt, est) (die Implementierung direkt: import registration_eval; registration_eval.rotation_translation_error(gt, est); aus dem Register: ops3d.get("rotation_translation_error"))

Verwendung

Der relative Rotationsfehler (geodätischer Winkel [Grad], RRE) und der relative Translationsfehler (RTE) zwischen zwei 4×4-Transformationen.

RRE = Winkel(gt_R^T · est_R) = atan2(|axial(dR − dRᵀ)|/2, (tr−1)/2) in Grad. Bei einer Rotationsdifferenz um den Winkel θ um eine beliebige Achse ist RRE=θ. RTE = ‖gt_t − est_t‖. → (rre_deg, rte). Nicht 4×4 ergibt ValueError (fail-closed).

• gt / est: homogene 4×4-Transformationen (oben links 3×3 ist die Rotation, die rechte Spalte die Translation). Nicht endliche Werte ergeben ValueError.

• rre_deg in Grad in [0, 180] (atan2 mit sin aus dem schiefsymmetrischen Teil und cos aus der Spur; arccos hat nahe 1 einen √ε-Boden und antwortete für alles bis 1e-6° mit 0 -- behoben 2026-10-07). rte ist die Norm der Differenz der Translationsspalten in Koordinateneinheiten. Die Translationsspalte hängt vom Ursprung der Rotation ab; bei gleichem Posenfehler fällt RTE umso größer aus, je weiter der Ursprung vom Objekt entfernt ist (nur Transformationen mit derselben Frame-Konvention vergleichen).

• Die Orthogonalität der Rotationsmatrix wird nicht geprüft; daher eine korrekte Transformation übergeben, die aus der (R,t)-Ausgabe von gicp usw. mit make_transform desselben Moduls gebaut wurde. Während inlier_ratio / registration_recall über Residuen auf der Punktwolke messen, misst diese Funktion die Differenz der Transformationsparameter selbst.

Referenzen (Beispieldaten, Literatur)

• 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.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• reg_eval — py -3.11 examples_3d/reg_eval.py

Typkompatible Folge-Operatoren (nehmen measurement als Eingabe)

vol_gaussian_psf · fuse_to_voxel · fresnel_reflectance · snell_angle

Gleiche Kategorie (registration_metrics)

inlier_ratio · rmse_inliers · registration_recall


*Provenance: registration_eval.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.