motion_segment oppoints × points → poseimport fullseye as fs; fs.ledger.fit_rigid(pts_from, pts_to) (実装を直接呼ぶなら import motion_seg3d; motion_seg3d.fit_rigid(pts_from, pts_to)、台帳から引くなら ops3d.get("fit_rigid"))対応点から閉形式 Kabsch で剛体変換 (R, t) を推定する(pts_from[i] -> pts_to[i])。
行 i どうしが対応する (N, 3) 2 点集合から、|| (R·p + t) - q || を最小化する
proper rotation(det = +1, 反射なし)と並進を返す。:func:registration.kabsch の
薄いラッパで、入力検証を付す(N >= 3 で回転が一意)。
Args: pts_from: (N, 3) 変換元(対応順)。 pts_to: (N, 3) 変換先(対応順)。 Returns: (R, t): (3, 3) 回転行列, (3,) 並進ベクトル。 Raises: ValueError: 形状不一致 / (N, 3) でない / N < 3 / 非有限。
py -3.11 examples_3d/motion_scene.pypose を入力に取れる)fuse_to_voxel · pose_error · bundle_adjust · mean_reprojection_error · optimize_pose_graph · relative_pose · mean_edge_error · rotation_translation_error
motion_segment)segment_rigid_motions · estimate_flow
Provenance: motion_seg3d.py — 3D operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.