From da4724cf3444856034a006d9e46cffeefb1b84fe Mon Sep 17 00:00:00 2001 From: chk <79915315+ChKendel@users.noreply.github.com> Date: Tue, 2 Jun 2026 23:20:40 +0200 Subject: [PATCH] Claude: Studie - Wie viele Kameras brauchts --- benchmark/camera_count/README.md | 129 + benchmark/camera_count/analyze.py | 117 + benchmark/camera_count/results/.gitkeep | 0 benchmark/camera_count/run_camera_study.py | 195 ++ .../Scene10/k3_abd/aruco_marker_poses.json | 1056 +++++++ .../k3_abd/aruco_positions_initial.json | 505 ++++ .../k3_abd/aruco_positions_optimized.json | 504 ++++ .../k3_abd/render_a_aruco_detection.json | 2330 +++++++++++++++ .../Scene10/k3_abd/render_a_camera_pose.json | 467 +++ .../k3_abd/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k3_abd/render_b_camera_pose.json | 635 ++++ .../k3_abd/render_d_aruco_detection.json | 1311 +++++++++ .../Scene10/k3_abd/render_d_camera_pose.json | 285 ++ .../Scene10/k3_abd/robot_state.eval.json | 74 + .../Scene10/k3_abd/robot_state.json | 58 + .../Scene10/k3_abf/aruco_marker_poses.json | 1185 ++++++++ .../k3_abf/aruco_positions_initial.json | 562 ++++ .../k3_abf/aruco_positions_optimized.json | 561 ++++ .../k3_abf/render_a_aruco_detection.json | 2330 +++++++++++++++ .../Scene10/k3_abf/render_a_camera_pose.json | 467 +++ .../k3_abf/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k3_abf/render_b_camera_pose.json | 635 ++++ .../k3_abf/render_f_aruco_detection.json | 2058 +++++++++++++ .../Scene10/k3_abf/render_f_camera_pose.json | 582 ++++ .../Scene10/k3_abf/robot_state.eval.json | 74 + .../Scene10/k3_abf/robot_state.json | 58 + .../Scene10/k3_abg/aruco_marker_poses.json | 1400 +++++++++ .../k3_abg/aruco_positions_initial.json | 657 +++++ .../k3_abg/aruco_positions_optimized.json | 656 +++++ .../k3_abg/render_a_aruco_detection.json | 2330 +++++++++++++++ .../Scene10/k3_abg/render_a_camera_pose.json | 467 +++ .../k3_abg/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k3_abg/render_b_camera_pose.json | 635 ++++ .../k3_abg/render_g_aruco_detection.json | 2224 ++++++++++++++ .../Scene10/k3_abg/render_g_camera_pose.json | 663 +++++ .../Scene10/k3_abg/robot_state.eval.json | 74 + .../Scene10/k3_abg/robot_state.json | 58 + .../Scene10/k3_acf/aruco_marker_poses.json | 927 ++++++ .../k3_acf/aruco_positions_initial.json | 448 +++ .../k3_acf/aruco_positions_optimized.json | 447 +++ .../k3_acf/render_a_aruco_detection.json | 2330 +++++++++++++++ .../Scene10/k3_acf/render_a_camera_pose.json | 467 +++ .../k3_acf/render_c_aruco_detection.json | 1590 ++++++++++ .../Scene10/k3_acf/render_c_camera_pose.json | 327 +++ .../k3_acf/render_f_aruco_detection.json | 2058 +++++++++++++ .../Scene10/k3_acf/render_f_camera_pose.json | 582 ++++ .../Scene10/k3_acf/robot_state.eval.json | 74 + .../Scene10/k3_acf/robot_state.json | 58 + .../Scene10/k3_bcd/aruco_marker_poses.json | 841 ++++++ .../k3_bcd/aruco_positions_initial.json | 410 +++ .../k3_bcd/aruco_positions_optimized.json | 409 +++ .../k3_bcd/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k3_bcd/render_b_camera_pose.json | 635 ++++ .../k3_bcd/render_c_aruco_detection.json | 1590 ++++++++++ .../Scene10/k3_bcd/render_c_camera_pose.json | 327 +++ .../k3_bcd/render_d_aruco_detection.json | 1311 +++++++++ .../Scene10/k3_bcd/render_d_camera_pose.json | 285 ++ .../Scene10/k3_bcd/robot_state.eval.json | 74 + .../Scene10/k3_bcd/robot_state.json | 58 + .../Scene10/k3_bcf/aruco_marker_poses.json | 970 ++++++ .../k3_bcf/aruco_positions_initial.json | 467 +++ .../k3_bcf/aruco_positions_optimized.json | 466 +++ .../k3_bcf/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k3_bcf/render_b_camera_pose.json | 635 ++++ .../k3_bcf/render_c_aruco_detection.json | 1590 ++++++++++ .../Scene10/k3_bcf/render_c_camera_pose.json | 327 +++ .../k3_bcf/render_f_aruco_detection.json | 2058 +++++++++++++ .../Scene10/k3_bcf/render_f_camera_pose.json | 582 ++++ .../Scene10/k3_bcf/robot_state.eval.json | 74 + .../Scene10/k3_bcf/robot_state.json | 58 + .../Scene10/k3_bdg/aruco_marker_poses.json | 1099 +++++++ .../k3_bdg/aruco_positions_initial.json | 524 ++++ .../k3_bdg/aruco_positions_optimized.json | 523 ++++ .../k3_bdg/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k3_bdg/render_b_camera_pose.json | 635 ++++ .../k3_bdg/render_d_aruco_detection.json | 1311 +++++++++ .../Scene10/k3_bdg/render_d_camera_pose.json | 285 ++ .../k3_bdg/render_g_aruco_detection.json | 2224 ++++++++++++++ .../Scene10/k3_bdg/render_g_camera_pose.json | 663 +++++ .../Scene10/k3_bdg/robot_state.eval.json | 74 + .../Scene10/k3_bdg/robot_state.json | 58 + .../Scene10/k3_beg/aruco_marker_poses.json | 1056 +++++++ .../k3_beg/aruco_positions_initial.json | 505 ++++ .../k3_beg/aruco_positions_optimized.json | 504 ++++ .../k3_beg/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k3_beg/render_b_camera_pose.json | 635 ++++ .../k3_beg/render_e_aruco_detection.json | 1199 ++++++++ .../Scene10/k3_beg/render_e_camera_pose.json | 271 ++ .../k3_beg/render_g_aruco_detection.json | 2224 ++++++++++++++ .../Scene10/k3_beg/render_g_camera_pose.json | 663 +++++ .../Scene10/k3_beg/robot_state.eval.json | 74 + .../Scene10/k3_beg/robot_state.json | 58 + .../Scene10/k3_cef/aruco_marker_poses.json | 669 +++++ .../k3_cef/aruco_positions_initial.json | 334 +++ .../k3_cef/aruco_positions_optimized.json | 333 +++ .../k3_cef/render_c_aruco_detection.json | 1590 ++++++++++ .../Scene10/k3_cef/render_c_camera_pose.json | 327 +++ .../k3_cef/render_e_aruco_detection.json | 1199 ++++++++ .../Scene10/k3_cef/render_e_camera_pose.json | 271 ++ .../k3_cef/render_f_aruco_detection.json | 2058 +++++++++++++ .../Scene10/k3_cef/render_f_camera_pose.json | 582 ++++ .../Scene10/k3_cef/robot_state.eval.json | 74 + .../Scene10/k3_cef/robot_state.json | 58 + .../Scene10/k3_efg/aruco_marker_poses.json | 1099 +++++++ .../k3_efg/aruco_positions_initial.json | 524 ++++ .../k3_efg/aruco_positions_optimized.json | 523 ++++ .../k3_efg/render_e_aruco_detection.json | 1199 ++++++++ .../Scene10/k3_efg/render_e_camera_pose.json | 271 ++ .../k3_efg/render_f_aruco_detection.json | 2058 +++++++++++++ .../Scene10/k3_efg/render_f_camera_pose.json | 582 ++++ .../k3_efg/render_g_aruco_detection.json | 2224 ++++++++++++++ .../Scene10/k3_efg/render_g_camera_pose.json | 663 +++++ .../Scene10/k3_efg/robot_state.eval.json | 74 + .../Scene10/k3_efg/robot_state.json | 58 + .../Scene10/k4_abcd/aruco_marker_poses.json | 1289 ++++++++ .../k4_abcd/aruco_positions_initial.json | 618 ++++ .../k4_abcd/aruco_positions_optimized.json | 617 ++++ .../k4_abcd/render_a_aruco_detection.json | 2330 +++++++++++++++ .../Scene10/k4_abcd/render_a_camera_pose.json | 467 +++ .../k4_abcd/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k4_abcd/render_b_camera_pose.json | 635 ++++ .../k4_abcd/render_c_aruco_detection.json | 1590 ++++++++++ .../Scene10/k4_abcd/render_c_camera_pose.json | 327 +++ .../k4_abcd/render_d_aruco_detection.json | 1311 +++++++++ .../Scene10/k4_abcd/render_d_camera_pose.json | 285 ++ .../Scene10/k4_abcd/robot_state.eval.json | 74 + .../Scene10/k4_abcd/robot_state.json | 58 + .../Scene10/k4_abcf/aruco_marker_poses.json | 1375 +++++++++ .../k4_abcf/aruco_positions_initial.json | 656 +++++ .../k4_abcf/aruco_positions_optimized.json | 655 +++++ .../k4_abcf/render_a_aruco_detection.json | 2330 +++++++++++++++ .../Scene10/k4_abcf/render_a_camera_pose.json | 467 +++ .../k4_abcf/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k4_abcf/render_b_camera_pose.json | 635 ++++ .../k4_abcf/render_c_aruco_detection.json | 1590 ++++++++++ .../Scene10/k4_abcf/render_c_camera_pose.json | 327 +++ .../k4_abcf/render_f_aruco_detection.json | 2058 +++++++++++++ .../Scene10/k4_abcf/render_f_camera_pose.json | 582 ++++ .../Scene10/k4_abcf/robot_state.eval.json | 74 + .../Scene10/k4_abcf/robot_state.json | 58 + .../Scene10/k4_abdf/aruco_marker_poses.json | 1375 +++++++++ .../k4_abdf/aruco_positions_initial.json | 656 +++++ .../k4_abdf/aruco_positions_optimized.json | 655 +++++ .../k4_abdf/render_a_aruco_detection.json | 2330 +++++++++++++++ .../Scene10/k4_abdf/render_a_camera_pose.json | 467 +++ .../k4_abdf/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k4_abdf/render_b_camera_pose.json | 635 ++++ .../k4_abdf/render_d_aruco_detection.json | 1311 +++++++++ .../Scene10/k4_abdf/render_d_camera_pose.json | 285 ++ .../k4_abdf/render_f_aruco_detection.json | 2058 +++++++++++++ .../Scene10/k4_abdf/render_f_camera_pose.json | 582 ++++ .../Scene10/k4_abdf/robot_state.eval.json | 74 + .../Scene10/k4_abdf/robot_state.json | 58 + .../Scene10/k4_abdg/aruco_marker_poses.json | 1547 ++++++++++ .../k4_abdg/aruco_positions_initial.json | 732 +++++ .../k4_abdg/aruco_positions_optimized.json | 731 +++++ .../k4_abdg/render_a_aruco_detection.json | 2330 +++++++++++++++ .../Scene10/k4_abdg/render_a_camera_pose.json | 467 +++ .../k4_abdg/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k4_abdg/render_b_camera_pose.json | 635 ++++ .../k4_abdg/render_d_aruco_detection.json | 1311 +++++++++ .../Scene10/k4_abdg/render_d_camera_pose.json | 285 ++ .../k4_abdg/render_g_aruco_detection.json | 2224 ++++++++++++++ .../Scene10/k4_abdg/render_g_camera_pose.json | 663 +++++ .../Scene10/k4_abdg/robot_state.eval.json | 74 + .../Scene10/k4_abdg/robot_state.json | 58 + .../k4_abef/render_a_aruco_detection.json | 2330 +++++++++++++++ .../Scene10/k4_abef/render_a_camera_pose.json | 467 +++ .../k4_abef/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k4_abef/render_b_camera_pose.json | 635 ++++ .../k4_abef/render_e_aruco_detection.json | 1199 ++++++++ .../k4_abef/render_f_aruco_detection.json | 2058 +++++++++++++ .../Scene10/k4_bdeg/aruco_marker_poses.json | 1289 ++++++++ .../k4_bdeg/aruco_positions_initial.json | 618 ++++ .../k4_bdeg/aruco_positions_optimized.json | 617 ++++ .../k4_bdeg/render_b_aruco_detection.json | 2595 +++++++++++++++++ .../Scene10/k4_bdeg/render_b_camera_pose.json | 635 ++++ .../k4_bdeg/render_d_aruco_detection.json | 1311 +++++++++ .../Scene10/k4_bdeg/render_d_camera_pose.json | 285 ++ .../k4_bdeg/render_e_aruco_detection.json | 1199 ++++++++ .../Scene10/k4_bdeg/render_e_camera_pose.json | 271 ++ .../k4_bdeg/render_g_aruco_detection.json | 2224 ++++++++++++++ .../Scene10/k4_bdeg/render_g_camera_pose.json | 663 +++++ .../Scene10/k4_bdeg/robot_state.eval.json | 74 + .../Scene10/k4_bdeg/robot_state.json | 58 + .../Scene10/k4_cdeg/aruco_marker_poses.json | 902 ++++++ .../k4_cdeg/aruco_positions_initial.json | 447 +++ .../k4_cdeg/aruco_positions_optimized.json | 446 +++ .../k4_cdeg/render_c_aruco_detection.json | 1590 ++++++++++ .../Scene10/k4_cdeg/render_c_camera_pose.json | 327 +++ .../k4_cdeg/render_d_aruco_detection.json | 1311 +++++++++ .../Scene10/k4_cdeg/render_d_camera_pose.json | 285 ++ .../k4_cdeg/render_e_aruco_detection.json | 1199 ++++++++ .../Scene10/k4_cdeg/render_e_camera_pose.json | 271 ++ .../k4_cdeg/render_g_aruco_detection.json | 2224 ++++++++++++++ .../Scene10/k4_cdeg/render_g_camera_pose.json | 663 +++++ .../Scene10/k4_cdeg/robot_state.eval.json | 74 + .../Scene10/k4_cdeg/robot_state.json | 58 + .../Scene10/k4_defg/aruco_marker_poses.json | 1418 +++++++++ .../k4_defg/aruco_positions_initial.json | 675 +++++ .../k4_defg/aruco_positions_optimized.json | 674 +++++ .../k4_defg/render_d_aruco_detection.json | 1311 +++++++++ .../Scene10/k4_defg/render_d_camera_pose.json | 285 ++ .../k4_defg/render_e_aruco_detection.json | 1199 ++++++++ .../Scene10/k4_defg/render_e_camera_pose.json | 271 ++ .../k4_defg/render_f_aruco_detection.json | 2058 +++++++++++++ .../Scene10/k4_defg/render_f_camera_pose.json | 582 ++++ .../k4_defg/render_g_aruco_detection.json | 2224 ++++++++++++++ .../Scene10/k4_defg/render_g_camera_pose.json | 663 +++++ .../Scene10/k4_defg/robot_state.eval.json | 74 + .../Scene10/k4_defg/robot_state.json | 58 + pipeline/run_pipeline.py | 10 +- run/run_camera_study.bat | 16 + 213 files changed, 192104 insertions(+), 2 deletions(-) create mode 100644 benchmark/camera_count/README.md create mode 100644 benchmark/camera_count/analyze.py create mode 100644 benchmark/camera_count/results/.gitkeep create mode 100644 benchmark/camera_count/run_camera_study.py create mode 100644 data/camera_study/Scene10/k3_abd/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k3_abd/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k3_abd/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k3_abd/render_a_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_abd/render_a_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_abd/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_abd/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_abd/render_d_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_abd/render_d_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_abd/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k3_abd/robot_state.json create mode 100644 data/camera_study/Scene10/k3_abf/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k3_abf/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k3_abf/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k3_abf/render_a_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_abf/render_a_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_abf/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_abf/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_abf/render_f_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_abf/render_f_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_abf/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k3_abf/robot_state.json create mode 100644 data/camera_study/Scene10/k3_abg/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k3_abg/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k3_abg/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k3_abg/render_a_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_abg/render_a_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_abg/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_abg/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_abg/render_g_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_abg/render_g_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_abg/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k3_abg/robot_state.json create mode 100644 data/camera_study/Scene10/k3_acf/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k3_acf/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k3_acf/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k3_acf/render_a_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_acf/render_a_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_acf/render_c_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_acf/render_c_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_acf/render_f_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_acf/render_f_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_acf/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k3_acf/robot_state.json create mode 100644 data/camera_study/Scene10/k3_bcd/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k3_bcd/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k3_bcd/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k3_bcd/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_bcd/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_bcd/render_c_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_bcd/render_c_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_bcd/render_d_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_bcd/render_d_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_bcd/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k3_bcd/robot_state.json create mode 100644 data/camera_study/Scene10/k3_bcf/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k3_bcf/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k3_bcf/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k3_bcf/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_bcf/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_bcf/render_c_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_bcf/render_c_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_bcf/render_f_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_bcf/render_f_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_bcf/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k3_bcf/robot_state.json create mode 100644 data/camera_study/Scene10/k3_bdg/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k3_bdg/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k3_bdg/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k3_bdg/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_bdg/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_bdg/render_d_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_bdg/render_d_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_bdg/render_g_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_bdg/render_g_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_bdg/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k3_bdg/robot_state.json create mode 100644 data/camera_study/Scene10/k3_beg/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k3_beg/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k3_beg/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k3_beg/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_beg/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_beg/render_e_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_beg/render_e_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_beg/render_g_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_beg/render_g_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_beg/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k3_beg/robot_state.json create mode 100644 data/camera_study/Scene10/k3_cef/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k3_cef/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k3_cef/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k3_cef/render_c_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_cef/render_c_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_cef/render_e_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_cef/render_e_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_cef/render_f_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_cef/render_f_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_cef/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k3_cef/robot_state.json create mode 100644 data/camera_study/Scene10/k3_efg/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k3_efg/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k3_efg/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k3_efg/render_e_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_efg/render_e_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_efg/render_f_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_efg/render_f_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_efg/render_g_aruco_detection.json create mode 100644 data/camera_study/Scene10/k3_efg/render_g_camera_pose.json create mode 100644 data/camera_study/Scene10/k3_efg/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k3_efg/robot_state.json create mode 100644 data/camera_study/Scene10/k4_abcd/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k4_abcd/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k4_abcd/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k4_abcd/render_a_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abcd/render_a_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abcd/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abcd/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abcd/render_c_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abcd/render_c_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abcd/render_d_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abcd/render_d_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abcd/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k4_abcd/robot_state.json create mode 100644 data/camera_study/Scene10/k4_abcf/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k4_abcf/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k4_abcf/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k4_abcf/render_a_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abcf/render_a_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abcf/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abcf/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abcf/render_c_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abcf/render_c_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abcf/render_f_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abcf/render_f_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abcf/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k4_abcf/robot_state.json create mode 100644 data/camera_study/Scene10/k4_abdf/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k4_abdf/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k4_abdf/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k4_abdf/render_a_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abdf/render_a_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abdf/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abdf/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abdf/render_d_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abdf/render_d_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abdf/render_f_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abdf/render_f_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abdf/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k4_abdf/robot_state.json create mode 100644 data/camera_study/Scene10/k4_abdg/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k4_abdg/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k4_abdg/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k4_abdg/render_a_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abdg/render_a_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abdg/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abdg/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abdg/render_d_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abdg/render_d_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abdg/render_g_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abdg/render_g_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abdg/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k4_abdg/robot_state.json create mode 100644 data/camera_study/Scene10/k4_abef/render_a_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abef/render_a_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abef/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abef/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_abef/render_e_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_abef/render_f_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_bdeg/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k4_bdeg/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k4_bdeg/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k4_bdeg/render_b_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_bdeg/render_b_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_bdeg/render_d_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_bdeg/render_d_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_bdeg/render_e_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_bdeg/render_e_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_bdeg/render_g_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_bdeg/render_g_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_bdeg/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k4_bdeg/robot_state.json create mode 100644 data/camera_study/Scene10/k4_cdeg/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k4_cdeg/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k4_cdeg/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k4_cdeg/render_c_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_cdeg/render_c_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_cdeg/render_d_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_cdeg/render_d_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_cdeg/render_e_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_cdeg/render_e_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_cdeg/render_g_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_cdeg/render_g_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_cdeg/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k4_cdeg/robot_state.json create mode 100644 data/camera_study/Scene10/k4_defg/aruco_marker_poses.json create mode 100644 data/camera_study/Scene10/k4_defg/aruco_positions_initial.json create mode 100644 data/camera_study/Scene10/k4_defg/aruco_positions_optimized.json create mode 100644 data/camera_study/Scene10/k4_defg/render_d_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_defg/render_d_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_defg/render_e_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_defg/render_e_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_defg/render_f_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_defg/render_f_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_defg/render_g_aruco_detection.json create mode 100644 data/camera_study/Scene10/k4_defg/render_g_camera_pose.json create mode 100644 data/camera_study/Scene10/k4_defg/robot_state.eval.json create mode 100644 data/camera_study/Scene10/k4_defg/robot_state.json create mode 100644 run/run_camera_study.bat diff --git a/benchmark/camera_count/README.md b/benchmark/camera_count/README.md new file mode 100644 index 0000000..48ba4ae --- /dev/null +++ b/benchmark/camera_count/README.md @@ -0,0 +1,129 @@ +# Kamera-Anzahl-Studie + +Untersucht, wie sich die Pose-Schätzgenauigkeit verändert, wenn weniger Kameras +verwendet werden. Ergebnis ist eine Kurve **k Kameras → mittlerer Gelenkwinkelfehler (°)**. + +Hintergrundfrage und Entscheidungslogik: [`doc/camera_number_roadmap.md`](../../doc/camera_number_roadmap.md) + +--- + +## Voraussetzungen + +Pro Szene müssen vorhanden sein: + +| Datei | Woher | +|---|---| +| `data/simulation/SceneX/render_*.png` | Blender-Renderer | +| `data/simulation/SceneX/render_*.npz` | Kamera-Intrinsik | +| `data/simulation/SceneX/pose.json` | Ground-Truth-Pose | +| `data/robot/robot.json` | Robotermodell | + +Neue Szenen werden **automatisch erkannt** — kein Skript anpassen nötig. + +--- + +## Schritt 1 — Studie laufen lassen + +```bat +run\run_camera_study.bat +``` + +Das wertet alle verfügbaren Szenen aus, k = 3 bis (alle verfügbaren Kameras), +10 zufällige Subsets pro k. + +**Optionen:** + +```bat +REM Nur bestimmte Szenen +run\run_camera_study.bat --scenes Scene7 Scene9 + +REM Kamerabereich einschränken +run\run_camera_study.bat --k-min 3 --k-max 5 + +REM Weniger Samples — schneller, weniger repräsentativ +run\run_camera_study.bat --samples 3 + +REM Existierende Ergebnisse überschreiben +run\run_camera_study.bat --force + +REM Alles kombinierbar +run\run_camera_study.bat --scenes Scene7 --k-min 3 --k-max 5 --samples 5 --force +``` + +Oder direkt über Python (z. B. in einer Linux-Umgebung / Docker): + +```bash +python benchmark/camera_count/run_camera_study.py --samples 10 +``` + +**Laufzeit:** Pro Kamera-Subset läuft die volle Pipeline (Schritt 1–4). +Bei 3 Szenen × 5 k-Werte × 10 Samples = 150 Läufe — je nach Hardware mehrere Minuten. + +Bereits gerechnete Subsets werden **übersprungen** (kein `--force` nötig für Fortsetzung). + +--- + +## Schritt 2 — Auswertung + +```bash +python benchmark/camera_count/analyze.py +``` + +Ausgabe auf der Konsole: + +``` +Kamera-Anzahl vs. mean_abs_deg + k | n | Mittel | Median | Std | Min | Max +----------------------------------------------------------------- + 3 | 30 | 0.842 | 0.731 | 0.312 | 0.251 | 1.843 + 4 | 30 | 0.563 | 0.521 | 0.198 | 0.252 | 1.102 + ... + +Beste / schlechteste Subsets je k: + k=3: best [Scene7] ace (0.251°) worst [Scene9] bdf (1.843°) + ... +``` + +Zusätzlich wird ein Boxplot gespeichert: +`benchmark/camera_count/results/camera_count_vs_error.png` + +**Andere Metrik:** + +```bash +python benchmark/camera_count/analyze.py --metric max_abs_deg +``` + +Verfügbare Metriken: `mean_abs_deg`, `max_abs_deg`, `mean_abs_mm`, `max_abs_mm` + +--- + +## Ausgabedateien + +| Pfad | Inhalt | +|---|---| +| `benchmark/camera_count/results/camera_study.json` | Alle Einzelergebnisse (Szene, k, Subset, Fehler) | +| `benchmark/camera_count/results/camera_study.csv` | Dasselbe als CSV (Excel, Pandas) | +| `benchmark/camera_count/results/camera_count_vs_error.png` | Boxplot | +| `data/camera_study/SceneX/k3_abc/` | Pipeline-Zwischenergebnisse pro Subset | + +Die Zwischenergebnisse in `data/camera_study/` sind groß — nicht committen. + +--- + +## Ergebnis interpretieren + +Die Studie beantwortet drei Fragen: + +1. **Ab welchem k wird der Fehler stabil?** + → Knick in der Kurve zeigt den Sättigungspunkt. + +2. **Welche Kamera-Kombination ist bei k=3 am besten?** + → `analyze.py` gibt beste und schlechteste Subsets aus. + +3. **Gibt es Szenen / Posen, bei denen wenige Kameras systematisch scheitern?** + → CSV öffnen, nach `scene` gruppieren. + +Eine praktische Entscheidungsregel: 3 Kameras gelten als ausreichend, wenn +`mean_abs_deg` bei k=3 nicht mehr als ~20 % schlechter ist als beim Maximum, +und `max_abs_deg` keine kritischen Ausreißer zeigt. +(Schwellwert je nach Anwendung anpassen.) diff --git a/benchmark/camera_count/analyze.py b/benchmark/camera_count/analyze.py new file mode 100644 index 0000000..82e7433 --- /dev/null +++ b/benchmark/camera_count/analyze.py @@ -0,0 +1,117 @@ +#!/usr/bin/env python3 +""" +benchmark/camera_count/analyze.py +=================================== +Liest camera_study.json und erstellt: + - Konsolentabelle: k → Mittelwert / Median / Std / Min / Max des Fehlers + - Beste und schlechteste Kamera-Subsets je k + - Boxplot: Anzahl Kameras vs. Gelenkwinkelfehler (PNG) + +Aufruf: + python benchmark/camera_count/analyze.py + python benchmark/camera_count/analyze.py --input benchmark/camera_count/results/camera_study.json + python benchmark/camera_count/analyze.py --metric max_abs_deg +""" +from __future__ import annotations + +import argparse +import json +import statistics +from pathlib import Path + +RESULTS_DIR = Path(__file__).resolve().parent / "results" + + +def load(path: str) -> list[dict]: + data = json.loads(Path(path).read_text(encoding="utf-8")) + if not data: + print("[ERROR] Keine Ergebnisse in der Datei.") + return data + + +def group_by_k(data: list[dict], metric: str) -> dict[int, list[float]]: + by_k: dict[int, list[float]] = {} + for row in data: + v = row.get(metric) + if v is None: + continue + by_k.setdefault(row["k"], []).append(v) + return by_k + + +def print_table(by_k: dict[int, list[float]], metric: str) -> None: + print(f"\nKamera-Anzahl vs. {metric}") + print(f"{'k':>4} | {'n':>5} | {'Mittel':>8} | {'Median':>8} | " + f"{'Std':>8} | {'Min':>8} | {'Max':>8}") + print("-" * 65) + for k in sorted(by_k): + vals = by_k[k] + med = statistics.median(vals) + std = statistics.pstdev(vals) + print(f"{k:>4} | {len(vals):>5} | " + f"{statistics.mean(vals):8.3f} | {med:8.3f} | " + f"{std:8.3f} | {min(vals):8.3f} | {max(vals):8.3f}") + + +def print_best_worst(data: list[dict], metric: str) -> None: + ks = sorted({r["k"] for r in data}) + print(f"\nBeste / schlechteste Subsets je k ({metric}):") + for k in ks: + rows_k = [r for r in data if r["k"] == k and r.get(metric) is not None] + if not rows_k: + continue + best = min(rows_k, key=lambda r: r[metric]) + worst = max(rows_k, key=lambda r: r[metric]) + print(f" k={k}: best [{best['scene']}] {best['subset']} " + f"({best[metric]:.3f}) " + f"worst [{worst['scene']}] {worst['subset']} ({worst[metric]:.3f})") + + +def plot(by_k: dict[int, list[float]], metric: str, out_path: str) -> None: + try: + import matplotlib.pyplot as plt + except ImportError: + print("\n[INFO] matplotlib nicht installiert — Plot übersprungen.") + return + + ks = sorted(by_k) + data_plot = [by_k[k] for k in ks] + + fig, ax = plt.subplots(figsize=(8, 5)) + ax.boxplot(data_plot, labels=[str(k) for k in ks], patch_artist=True) + ax.set_xlabel("Anzahl Kameras") + ax.set_ylabel(f"{metric}") + ax.set_title("Anzahl Kameras vs. Pose-Schätzfehler") + ax.grid(True, axis="y", alpha=0.35) + fig.tight_layout() + fig.savefig(out_path, dpi=150) + print(f"\n[INFO] Plot gespeichert: {out_path}") + + +def main() -> None: + ap = argparse.ArgumentParser(description="Auswertung der Kamera-Anzahl-Studie") + ap.add_argument("--input", default=str(RESULTS_DIR / "camera_study.json")) + ap.add_argument("--metric", + choices=["mean_abs_deg", "max_abs_deg", "mean_abs_mm", "max_abs_mm"], + default="mean_abs_deg", + help="Metrik für Tabelle und Plot (Standard: mean_abs_deg)") + ap.add_argument("--out-plot", + default=str(RESULTS_DIR / "camera_count_vs_error.png")) + args = ap.parse_args() + + data = load(args.input) + if not data: + return + + by_k = group_by_k(data, args.metric) + if not by_k: + print(f"[ERROR] Keine Werte für Metrik '{args.metric}' gefunden.") + return + + print_table(by_k, args.metric) + print_best_worst(data, args.metric) + plot(by_k, args.metric, args.out_plot) + + +if __name__ == "__main__": + main() diff --git a/benchmark/camera_count/results/.gitkeep b/benchmark/camera_count/results/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/benchmark/camera_count/run_camera_study.py b/benchmark/camera_count/run_camera_study.py new file mode 100644 index 0000000..9180f33 --- /dev/null +++ b/benchmark/camera_count/run_camera_study.py @@ -0,0 +1,195 @@ +#!/usr/bin/env python3 +""" +benchmark/camera_count/run_camera_study.py +========================================== +Untersucht, wie sich die Pose-Genauigkeit (Gelenkwinkelfehler) mit der +Kameraanzahl verändert. + +Für jede Szene mit bekannter Ground-Truth (pose.json) und jede Kameraanzahl k +wird eine zufällige Stichprobe von k-Kamera-Subsets durch die volle Pipeline +geschickt und ausgewertet. Ergebnisse landen in benchmark/camera_count/results/. + +Erweiterbar: funktioniert mit beliebig vielen Szenen und Kameras — neue Szenen +werden automatisch erkannt, sobald sie pose.json haben. + +Aufruf: + python benchmark/camera_count/run_camera_study.py + python benchmark/camera_count/run_camera_study.py --scenes Scene7 Scene9 + python benchmark/camera_count/run_camera_study.py --k-min 3 --k-max 5 --samples 15 + python benchmark/camera_count/run_camera_study.py --force # existierende Ergebnisse überschreiben +""" +from __future__ import annotations + +import argparse +import glob +import itertools +import json +import random +import re +import subprocess +import sys +from pathlib import Path +from statistics import mean + +ROOT = Path(__file__).resolve().parent.parent.parent +RESULTS_DIR = Path(__file__).resolve().parent / "results" +PY = sys.executable + + +def discover_scenes(sim_dir: Path) -> list[str]: + """Alle Szenen mit render_*.png und pose.json.""" + scenes = [] + for d in sorted(sim_dir.iterdir()): + if not d.name.startswith("Scene"): + continue + if not (d / "pose.json").exists(): + continue + if not list(d.glob("render_*.png")): + continue + scenes.append(d.name) + return scenes + + +def camera_ids(scene_dir: Path) -> list[str]: + """Sortierte Kamera-IDs (a, b, c ...) einer Szene.""" + ids = [] + for f in sorted(scene_dir.glob("render_*.png")): + m = re.match(r"render_([A-Za-z0-9]+)\.png", f.name) + if m: + ids.append(m.group(1)) + return ids + + +def run_pipeline(scene_dir: Path, cams: list[str], eval_dir: Path, robot: str) -> bool: + cmd = [ + PY, str(ROOT / "pipeline" / "run_pipeline.py"), + str(scene_dir), + "--robot", robot, + "--evalDir", str(eval_dir), + "--cameras", ",".join(cams), + ] + r = subprocess.run(cmd, cwd=str(ROOT), capture_output=True, text=True) + if r.returncode != 0: + snippet = (r.stderr or r.stdout).strip()[-300:] + print(f" [WARN] Pipeline fehlgeschlagen: {snippet}") + return False + return True + + +def eval_pose(robot_state: Path, gt: Path) -> dict | None: + out = robot_state.with_suffix(".eval.json") + cmd = [ + PY, str(ROOT / "benchmark" / "eval_pose.py"), + str(robot_state), str(gt), + "--out", str(out), + "--tolDeg", "999", "--tolMm", "999", + ] + subprocess.run(cmd, cwd=str(ROOT), capture_output=True, text=True) + return json.loads(out.read_text(encoding="utf-8")) if out.exists() else None + + +def main() -> None: + ap = argparse.ArgumentParser(description="Kamera-Anzahl vs. Pose-Genauigkeit") + ap.add_argument("--scenes", nargs="*", default=None, + help="Szenen-Namen oder Nummern (Standard: alle mit pose.json)") + ap.add_argument("--k-min", type=int, default=3, help="Minimale Kameraanzahl (Standard: 3)") + ap.add_argument("--k-max", type=int, default=None, + help="Maximale Kameraanzahl (Standard: alle verfügbaren)") + ap.add_argument("--samples", type=int, default=10, + help="Zufällige Subsets pro (Szene, k) — Standard: 10") + ap.add_argument("--seed", type=int, default=42) + ap.add_argument("--robot", default=str(ROOT / "data" / "robot" / "robot.json")) + ap.add_argument("--force", action="store_true", + help="Existierende robot_state.json überschreiben") + ap.add_argument("--out", default=str(RESULTS_DIR / "camera_study.json")) + ap.add_argument("--csv", default=str(RESULTS_DIR / "camera_study.csv")) + args = ap.parse_args() + + random.seed(args.seed) + RESULTS_DIR.mkdir(parents=True, exist_ok=True) + + sim_dir = ROOT / "data" / "simulation" + scenes = discover_scenes(sim_dir) + if args.scenes: + want = {s if s.startswith("Scene") else f"Scene{s}" for s in args.scenes} + scenes = [s for s in scenes if s in want] + if not scenes: + print("[ERROR] Keine Szenen mit pose.json und render_*.png gefunden.") + sys.exit(1) + + print(f"[INFO] Szenen: {scenes}") + print(f"[INFO] Seed={args.seed} Samples/k={args.samples}\n") + + all_results: list[dict] = [] + + for scene in scenes: + scene_dir = sim_dir / scene + cams = camera_ids(scene_dir) + k_max = min(args.k_max or len(cams), len(cams)) + k_range = range(args.k_min, k_max + 1) + gt = scene_dir / "pose.json" + + print(f"[SZENE] {scene} Kameras={cams} k={list(k_range)}") + + for k in k_range: + all_combos = list(itertools.combinations(cams, k)) + n_sample = min(args.samples, len(all_combos)) + sample = random.sample(all_combos, n_sample) + + errs: list[float] = [] + print(f" k={k}: {n_sample}/{len(all_combos)} Subsets") + + for combo in sample: + label = "".join(combo) + eval_dir = ROOT / "data" / "camera_study" / scene / f"k{k}_{label}" + rs = eval_dir / "robot_state.json" + + if rs.exists() and not args.force: + print(f" {label}: übersprungen (robot_state.json existiert)") + else: + eval_dir.mkdir(parents=True, exist_ok=True) + ok = run_pipeline(scene_dir, list(combo), eval_dir, args.robot) + if not ok or not rs.exists(): + print(f" {label}: FEHLER — übersprungen") + continue + + ev = eval_pose(rs, gt) + if not ev: + print(f" {label}: Auswertung fehlgeschlagen") + continue + + s = ev["summary"] + row = { + "scene": scene, + "k": k, + "subset": label, + "mean_abs_deg": s.get("mean_abs_deg"), + "max_abs_deg": s.get("max_abs_deg"), + "mean_abs_mm": s.get("mean_abs_mm"), + "max_abs_mm": s.get("max_abs_mm"), + } + all_results.append(row) + errs.append(row["mean_abs_deg"] or 0.0) + print(f" {label}: mean={row['mean_abs_deg']:.3f}° max={row['max_abs_deg']:.3f}°") + + if errs: + print(f" k={k} Zusammenfassung: mean={mean(errs):.3f}° " + f"min={min(errs):.3f}° max={max(errs):.3f}°") + + # Ergebnisse schreiben + Path(args.out).write_text(json.dumps(all_results, indent=2), encoding="utf-8") + + with open(args.csv, "w", encoding="utf-8") as f: + f.write("scene,k,subset,mean_abs_deg,max_abs_deg,mean_abs_mm,max_abs_mm\n") + for r in all_results: + f.write(f"{r['scene']},{r['k']},{r['subset']}," + f"{r['mean_abs_deg'] or ''}," + f"{r['max_abs_deg'] or ''}," + f"{r['mean_abs_mm'] or ''}," + f"{r['max_abs_mm'] or ''}\n") + + print(f"\n[DONE] {len(all_results)} Ergebnisse -> {args.out}") + + +if __name__ == "__main__": + main() diff --git a/data/camera_study/Scene10/k3_abd/aruco_marker_poses.json b/data/camera_study/Scene10/k3_abd/aruco_marker_poses.json new file mode 100644 index 0000000..cc77d2a --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/aruco_marker_poses.json @@ -0,0 +1,1056 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:18:17Z", + "summary": { + "num_cameras": 3, + "num_markers": 23 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.305343071741636, + -0.20016154038040945, + 0.02464007558513031 + ], + "position_mm": [ + 305.343071741636, + -200.16154038040946, + 24.640075585130308 + ], + "normal": [ + 0.14669819549079902, + -0.9659634273146507, + 0.2130593732513943 + ], + "corners_m": [ + [ + 0.2921168126403349, + -0.19975541716585885, + 0.03514376390606453 + ], + [ + 0.31568987763672307, + -0.19590045509644688, + 0.037271063284086706 + ], + [ + 0.3184174374008528, + -0.2004528074126251, + 0.013875445303034842 + ], + [ + 0.2951481592886332, + -0.20453748184670695, + 0.012270029847335146 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.80357762400921 + }, + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.34336973349794175, + -0.2883288904271367, + -0.027091563536929486 + ], + "position_mm": [ + 343.36973349794175, + -288.32889042713674, + -27.091563536929485 + ], + "normal": [ + 0.01066646051461013, + 0.010162648116250226, + 0.999891467712049 + ], + "corners_m": [ + [ + 0.3317696292712468, + -0.3000354419368223, + -0.02703535988469413 + ], + [ + 0.3315096425040896, + -0.2766282501338239, + -0.026900287001694403 + ], + [ + 0.35514578473673564, + -0.2767076408018824, + -0.027520280845220055 + ], + [ + 0.3550538774796951, + -0.29994422883601807, + -0.026910326416109354 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.395741843478206 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.167528689540546, + -0.1735022342538872, + -0.027013712734481995 + ], + "position_mm": [ + 167.528689540546, + -173.5022342538872, + -27.013712734481995 + ], + "normal": [ + -0.019919292085978292, + -0.022788138769310688, + 0.9995418563192959 + ], + "corners_m": [ + [ + 0.15575173994662264, + -0.18420801033264775, + -0.02765697782565606 + ], + [ + 0.15588883049385013, + -0.16165571196284476, + -0.0268127083226965 + ], + [ + 0.17943229044274606, + -0.16248082384328427, + -0.026683670974568616 + ], + [ + 0.17904189727896513, + -0.185664390876772, + -0.026901493815006814 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.16563270513337 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3395001219210315, + -0.3274645922246717, + -0.027135651210869888 + ], + "position_mm": [ + 339.5001219210315, + -327.4645922246717, + -27.135651210869888 + ], + "normal": [ + 0.00912769179451758, + 0.05144438017763726, + 0.9986341477190949 + ], + "corners_m": [ + [ + 0.32760604789511694, + -0.3393882583021579, + -0.026667943804084774 + ], + [ + 0.3280175930171168, + -0.31577695177799925, + -0.02737469618348002 + ], + [ + 0.3512626808631416, + -0.3152023715268377, + -0.028125212813504486 + ], + [ + 0.3511141659087508, + -0.3394907872916921, + -0.026374752042410264 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.687949534589134 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.28422651120468595, + -0.26086993934626695, + -0.027310466965492983 + ], + "position_mm": [ + 284.22651120468595, + -260.86993934626696, + -27.31046696549298 + ], + "normal": [ + -0.02268612771912359, + -0.002002835887056853, + 0.9997406304924898 + ], + "corners_m": [ + [ + 0.27218724313119824, + -0.27217907292985755, + -0.02751891836729432 + ], + [ + 0.2727209140159184, + -0.24871993668433023, + -0.02763623669755913 + ], + [ + 0.29604322605181455, + -0.24994013093005243, + -0.02692839484918133 + ], + [ + 0.2959546616198126, + -0.27264061684082763, + -0.027158317947937154 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.326722642230475 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.0196694675240453, + -0.18902930326496123, + -0.027586729525988132 + ], + "position_mm": [ + -19.6694675240453, + -189.02930326496124, + -27.586729525988133 + ], + "normal": [ + 0.008784661083988309, + -0.024187630633835056, + 0.9996688392932735 + ], + "corners_m": [ + [ + -0.03192609561866853, + -0.20005206778755055, + -0.02779753495230807 + ], + [ + -0.030960827815871624, + -0.17771111779213888, + -0.02716108794900535 + ], + [ + -0.007591848988866948, + -0.17825081746748328, + -0.027485826588543896 + ], + [ + -0.008199097672774108, + -0.2001032100126722, + -0.027902468614095212 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.835099328657208 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.005575105444165888, + -0.27743138997033767, + -0.027415355015344475 + ], + "position_mm": [ + 5.575105444165888, + -277.43138997033765, + -27.415355015344474 + ], + "normal": [ + 0.021487353833786253, + -0.02207211277465515, + 0.9995254451302802 + ], + "corners_m": [ + [ + -0.0063814075681734965, + -0.28887724334500614, + -0.0273675904889414 + ], + [ + -0.005569501196822077, + -0.2660114489306851, + -0.02696783913124729 + ], + [ + 0.017331069390963953, + -0.26604356082452296, + -0.027372143511268824 + ], + [ + 0.01692026115069517, + -0.2887933067811364, + -0.02795384692992038 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.964485206532387 + }, + { + "marker_id": 75, + "link": "Board", + "position_m": [ + -0.027602888025185998, + 0.19326801694123372, + -0.026446125368980555 + ], + "position_mm": [ + -27.602888025185997, + 193.26801694123372, + -26.446125368980557 + ], + "normal": [ + -0.060075453914578344, + -0.029149257025994694, + 0.9977681397257531 + ], + "corners_m": [ + [ + -0.039865687398469705, + 0.18376529148770973, + -0.027259026027503214 + ], + [ + -0.03849624729094642, + 0.20569603404672487, + -0.0269455814096749 + ], + [ + -0.015581080345926531, + 0.20247489956703318, + -0.025240737148984713 + ], + [ + -0.016468537065401335, + 0.18113584266346716, + -0.026339156889759397 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.53174876690096 + }, + { + "marker_id": 85, + "link": "Board", + "position_m": [ + 0.5063396802870157, + -0.3135214763433817, + -0.027594468153602107 + ], + "position_mm": [ + 506.3396802870157, + -313.52147634338166, + -27.594468153602108 + ], + "normal": [ + -0.006990534975307135, + -0.014190489550252539, + 0.9998748733852068 + ], + "corners_m": [ + [ + 0.4940710355094577, + -0.3247132382913153, + -0.027625657177304284 + ], + [ + 0.49514756050654757, + -0.3012518246895481, + -0.027717674370342973 + ], + [ + 0.518290444991102, + -0.3026956342433219, + -0.027131069440025753 + ], + [ + 0.5178496801409558, + -0.3254252081493413, + -0.027903471626735434 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.30486593470645 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18656006837375042, + -0.2765765182824603, + -0.02725779625585082 + ], + "position_mm": [ + 186.56006837375043, + -276.5765182824603, + -27.25779625585082 + ], + "normal": [ + -0.010921636943540468, + -0.0029058969472955942, + 0.9999361347653186 + ], + "corners_m": [ + [ + 0.17536538278118452, + -0.28874319951454275, + -0.02728755747174682 + ], + [ + 0.17408024683028048, + -0.26522792987044846, + -0.027488418440486388 + ], + [ + 0.19782837731264616, + -0.26486913093701886, + -0.02696820561000983 + ], + [ + 0.19896626657089056, + -0.28746581280783146, + -0.02728700350116025 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.392685353949684 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6506322993203831, + -0.22404420835307964, + -0.027083346484058766 + ], + "position_mm": [ + 650.6322993203831, + -224.04420835307965, + -27.083346484058765 + ], + "normal": [ + 0.007453559265215193, + -0.04325842158104699, + 0.9990361121684223 + ], + "corners_m": [ + [ + 0.638710707258843, + -0.23493804511008234, + -0.02725591213895623 + ], + [ + 0.6394722593076244, + -0.21238711834152707, + -0.026710930731421133 + ], + [ + 0.6622639251261075, + -0.21317600144133933, + -0.02648361212968244 + ], + [ + 0.6620823055889574, + -0.23567566851936983, + -0.027882930936175266 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.82808024331435 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10447367811218189, + -0.1905429628511259, + -0.027238688394522745 + ], + "position_mm": [ + 104.47367811218189, + -190.5429628511259, + -27.238688394522743 + ], + "normal": [ + 0.0031587475010059207, + -0.03266353299469594, + 0.9994614129252462 + ], + "corners_m": [ + [ + 0.09286502988266691, + -0.20221162863321945, + -0.027587042590087554 + ], + [ + 0.09229559986027497, + -0.17961592146670363, + -0.026839361694625474 + ], + [ + 0.11597606910602277, + -0.17885001476938264, + -0.026896623735058866 + ], + [ + 0.11675801359976293, + -0.20149428653519783, + -0.027631725558319074 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.22041172601779 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.31071247907661903, + -0.15463804630401418, + 0.15674571954556527 + ], + "position_mm": [ + 310.71247907661905, + -154.63804630401418, + 156.74571954556527 + ], + "normal": [ + -0.3515916233219676, + -0.725806601384521, + 0.5912597633836374 + ], + "corners_m": [ + [ + 0.29939869901955873, + -0.14381821570845849, + 0.1631658998431226 + ], + [ + 0.32164553508565297, + -0.15004603066363942, + 0.16901673177276727 + ], + [ + 0.32214337703671875, + -0.16543967310814994, + 0.15015143907176864 + ], + [ + 0.29966230516454584, + -0.15924826573580889, + 0.1446488074946025 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.06215815939791 + }, + { + "marker_id": 205, + "link": "Board", + "position_m": [ + 0.7522864761629531, + -0.0908124559745079, + 0.0008870449859709909 + ], + "position_mm": [ + 752.286476162953, + -90.8124559745079, + 0.8870449859709909 + ], + "normal": [ + -0.01491644266427506, + -0.028263746611815514, + 0.9994891997243924 + ], + "corners_m": [ + [ + 0.7410207214314708, + -0.07877501566903286, + 0.0004942482391278989 + ], + [ + 0.763021651073034, + -0.08016728058282391, + 0.0019727039654060478 + ], + [ + 0.7645804923971876, + -0.10164298920325765, + 0.00019117690202857826 + ], + [ + 0.7405230397501202, + -0.10266453844291722, + 0.0008900508373214385 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.92187474337055 + }, + { + "marker_id": 206, + "link": "Board", + "position_m": [ + 0.6500000814765554, + -0.010119256498941923, + 0.00042321635657145365 + ], + "position_mm": [ + 650.0000814765555, + -10.119256498941922, + 0.4232163565714536 + ], + "normal": [ + 0.011592821740882445, + -0.007759304215309904, + 0.9999026951069682 + ], + "corners_m": [ + [ + 0.6383081225600975, + 0.0013785011640512724, + 0.0006024455240636259 + ], + [ + 0.6615704626944585, + 0.0017490939301256006, + 0.00042655368077619 + ], + [ + 0.6617018160883879, + -0.02165869377987186, + 0.0001526571045244104 + ], + [ + 0.6384199245632778, + -0.021945927310072704, + 0.0005112091169215882 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.321753530436958 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.021722357064173435, + -0.01990102431395857, + 0.0005605224618752201 + ], + "position_mm": [ + 21.722357064173433, + -19.901024313958573, + 0.56052246187522 + ], + "normal": [ + -0.0020871904241815302, + -0.01886856737953801, + 0.9998197941635167 + ], + "corners_m": [ + [ + 0.009394590241300786, + -0.008582815130058057, + 0.0004106368222462112 + ], + [ + 0.033429398996811834, + -0.00879498405105111, + 0.0011550583412384399 + ], + [ + 0.034167072400248015, + -0.03046816224088398, + 3.048047737544406e-05 + ], + [ + 0.009898366618333102, + -0.03175813583384113, + 0.0006459142066407851 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.313721011840666 + }, + { + "marker_id": 211, + "link": "Board", + "position_m": [ + 0.2530065866788742, + -0.009078967052198496, + 0.0002376119420386636 + ], + "position_mm": [ + 253.0065866788742, + -9.078967052198497, + 0.2376119420386636 + ], + "normal": [ + 0.03042550068248083, + -0.009720333478128397, + 0.9994897718462628 + ], + "corners_m": [ + [ + 0.24136623721995637, + 0.002850179394630775, + 0.0005813893433372668 + ], + [ + 0.2654058209981499, + 0.001933732747426273, + 9.756259486912603e-05 + ], + [ + 0.26496436392725625, + -0.020677306700458958, + -0.00036621710184547444 + ], + [ + 0.2402899245701341, + -0.020422473650392074, + 0.0006377129317937359 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.66894498028794 + }, + { + "marker_id": 214, + "link": "Board", + "position_m": [ + 0.3479531944962937, + -0.01063423728343781, + 0.0006248797674845711 + ], + "position_mm": [ + 347.9531944962937, + -10.634237283437809, + 0.6248797674845711 + ], + "normal": [ + 0.00856857758665687, + -0.011793694934319256, + 0.9998937384732128 + ], + "corners_m": [ + [ + 0.3363295544417049, + 0.0011143263828779966, + 0.0008739982178064471 + ], + [ + 0.3598615240467987, + 0.0005073083100252126, + 0.0006432684685022758 + ], + [ + 0.35995529437200663, + -0.022348750671823323, + 0.0003944920007030549 + ], + [ + 0.3356664051246645, + -0.02180983315483112, + 0.0005877603829265065 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.407426211605227 + }, + { + "marker_id": 215, + "link": "Board", + "position_m": [ + 0.25042025949499297, + -0.08847065880633932, + 0.0002855341851703378 + ], + "position_mm": [ + 250.42025949499296, + -88.47065880633932, + 0.28553418517033785 + ], + "normal": [ + -0.01815665594731763, + -0.009888596798264981, + 0.9997862529051759 + ], + "corners_m": [ + [ + 0.23914734210610256, + -0.07599756188601692, + 0.0001214116699956801 + ], + [ + 0.262490747221959, + -0.07784321863282265, + 0.000694555600539444 + ], + [ + 0.2618991412619549, + -0.10068622634043879, + 0.0002898402626501584 + ], + [ + 0.23814380738995547, + -0.09935562836607893, + 3.63292074960689e-05 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.36280218717181 + }, + { + "marker_id": 218, + "link": "Arm2", + "position_m": [ + 0.35368209771592496, + -0.0994615110956942, + 0.19956017109351087 + ], + "position_mm": [ + 353.68209771592495, + -99.4615110956942, + 199.56017109351086 + ], + "normal": [ + 0.9434809764113783, + -0.26499455108402514, + 0.19905158890500788 + ], + "corners_m": [ + [ + 0.3497794886952876, + -0.10014350713255572, + 0.21689899514496166 + ], + [ + 0.3575047054831509, + -0.08385275617174048, + 0.20249292431168991 + ], + [ + 0.3576879112447054, + -0.09770028835233091, + 0.1826592092085517 + ], + [ + 0.349756285440556, + -0.11614949272614974, + 0.19618955570884017 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.41424801234189 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.23118745352884057, + -0.036773546001802535, + 0.30600691446860856 + ], + "position_mm": [ + 231.18745352884056, + -36.773546001802536, + 306.00691446860856 + ], + "normal": [ + -0.02249416221020453, + -0.48890937641338406, + 0.8720445139564476 + ], + "corners_m": [ + [ + 0.21944974208477364, + -0.0260369290807705, + 0.3115265916674585 + ], + [ + 0.243017037404645, + -0.02703423164159637, + 0.31197017222909684 + ], + [ + 0.24296819991458973, + -0.0473022201855269, + 0.30021071298237456 + ], + [ + 0.2193148347113539, + -0.04672080309931637, + 0.3003201809955043 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.552680897324304 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3210921467275003, + -0.04499787669802926, + 0.2975294641405817 + ], + "position_mm": [ + 321.0921467275003, + -44.99787669802926, + 297.5294641405817 + ], + "normal": [ + 0.0011051850004073402, + -0.7606296132080035, + 0.6491851585465875 + ], + "corners_m": [ + [ + 0.30888056033200023, + -0.037757102317591884, + 0.30611671426458187 + ], + [ + 0.3325806486841009, + -0.037448194380995496, + 0.30627946537454337 + ], + [ + 0.3335648198260843, + -0.052932445271997544, + 0.28828619501156516 + ], + [ + 0.30934255806781574, + -0.05185376482153212, + 0.28943548191163637 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.39496504008918 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.28286120008303983, + -0.04115261080862888, + 0.3021311354778444 + ], + "position_mm": [ + 282.8612000830398, + -41.15261080862888, + 302.13113547784445 + ], + "normal": [ + 0.00849240066022765, + -0.7706541655056148, + 0.6371970153099203 + ], + "corners_m": [ + [ + 0.27044127278003893, + -0.03386430601929099, + 0.31084556432838223 + ], + [ + 0.294275847690125, + -0.033187867630631, + 0.3118724794539114 + ], + [ + 0.29532771360693905, + -0.04833630114743516, + 0.2930170125478245 + ], + [ + 0.2713999662550563, + -0.04922196843715836, + 0.2927894855812597 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.936145486030593 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abd/aruco_positions_initial.json b/data/camera_study/Scene10/k3_abd/aruco_positions_initial.json new file mode 100644 index 0000000..9630bbd --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/aruco_positions_initial.json @@ -0,0 +1,505 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:18:16Z", + "summary": { + "num_cameras": 3, + "num_markers": 23, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.30535804316010734, + -0.2000683586434736, + 0.02459227325141969 + ], + "position_mm": [ + 305.35804316010734, + -200.0683586434736, + 24.592273251419687 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3433730634904833, + -0.28835879724891644, + -0.027168376101358995 + ], + "position_mm": [ + 343.3730634904833, + -288.35879724891646, + -27.168376101358994 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16752239251855802, + -0.173509702327685, + -0.027101264944668656 + ], + "position_mm": [ + 167.52239251855804, + -173.509702327685, + -27.101264944668657 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.33950169858604884, + -0.3275067804475449, + -0.027211607353036394 + ], + "position_mm": [ + 339.50169858604886, + -327.5067804475449, + -27.211607353036396 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28422917842345546, + -0.260891074638646, + -0.02739442298722674 + ], + "position_mm": [ + 284.22917842345544, + -260.89107463864605, + -27.39442298722674 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.019687047586059325, + -0.18904874285087692, + -0.027644316419293775 + ], + "position_mm": [ + -19.687047586059325, + -189.04874285087692, + -27.644316419293776 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.00555495322695158, + -0.2774649024805902, + -0.027478254848490234 + ], + "position_mm": [ + 5.5549532269515804, + -277.4649024805902, + -27.478254848490234 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027619523009286034, + 0.19330209649474686, + -0.02652757806826013 + ], + "position_mm": [ + -27.619523009286034, + 193.30209649474685, + -26.52757806826013 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5063530924316049, + -0.3135538253142812, + -0.02766300592122651 + ], + "position_mm": [ + 506.35309243160486, + -313.5538253142812, + -27.66300592122651 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.186646056280353, + -0.2762214427578817, + -0.027365162092579796 + ], + "position_mm": [ + 186.646056280353, + -276.2214427578817, + -27.365162092579798 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6506496658425812, + -0.22406775861996026, + -0.027142007301685093 + ], + "position_mm": [ + 650.6496658425813, + -224.06775861996024, + -27.142007301685094 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10443137711131635, + -0.1901487365237244, + -0.02732465096966076 + ], + "position_mm": [ + 104.43137711131635, + -190.1487365237244, + -27.32465096966076 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31092214143190405, + -0.1544255496113991, + 0.15668034447010715 + ], + "position_mm": [ + 310.92214143190404, + -154.4255496113991, + 156.68034447010714 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7523091316145816, + -0.0908295201086147, + 0.000834633856532585 + ], + "position_mm": [ + 752.3091316145816, + -90.8295201086147, + 0.8346338565325849 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500135896057839, + -0.010136006087639692, + 0.00037332949430560306 + ], + "position_mm": [ + 650.013589605784, + -10.136006087639691, + 0.3733294943056031 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021698298057675435, + -0.01987996226175908, + 0.0004639115686330192 + ], + "position_mm": [ + 21.698298057675434, + -19.87996226175908, + 0.4639115686330192 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25300004414982186, + -0.009074606313736522, + 0.00016276608304794952 + ], + "position_mm": [ + 253.00004414982186, + -9.074606313736522, + 0.1627660830479495 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.347975371322791, + -0.010607968556895574, + 0.0005435925742859373 + ], + "position_mm": [ + 347.975371322791, + -10.607968556895573, + 0.5435925742859373 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25041920016634434, + -0.08847728419421877, + 0.0002108696475885868 + ], + "position_mm": [ + 250.41920016634432, + -88.47728419421877, + 0.21086964758858678 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3536314171939221, + -0.09947516209694193, + 0.19956923774735225 + ], + "position_mm": [ + 353.6314171939221, + -99.47516209694193, + 199.56923774735225 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23106354953734118, + -0.0367713958468442, + 0.30595079257610286 + ], + "position_mm": [ + 231.06354953734117, + -36.7713958468442, + 305.95079257610286 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32103115932158455, + -0.045120380841119606, + 0.2974342388767264 + ], + "position_mm": [ + 321.03115932158454, + -45.120380841119605, + 297.4342388767264 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.28288814687891756, + -0.04126777483996936, + 0.3020280723585196 + ], + "position_mm": [ + 282.88814687891755, + -41.267774839969356, + 302.0280723585196 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abd/aruco_positions_optimized.json b/data/camera_study/Scene10/k3_abd/aruco_positions_optimized.json new file mode 100644 index 0000000..e673754 --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/aruco_positions_optimized.json @@ -0,0 +1,504 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:18:16Z", + "summary": { + "num_cameras": 3, + "num_markers": 23, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3054493017334252, + -0.1998748750245615, + 0.024804241415089884 + ], + "position_mm": [ + 305.4493017334252, + -199.8748750245615, + 24.804241415089884 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3444427917375469, + -0.2862737144600179, + -0.02974590557435534 + ], + "position_mm": [ + 344.4427917375469, + -286.2737144600179, + -29.74590557435534 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.1666325278451626, + -0.17467392322638112, + -0.02533010898488338 + ], + "position_mm": [ + 166.6325278451626, + -174.6739232263811, + -25.33010898488338 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.337837313859682, + -0.3295034199139771, + -0.024106579494004438 + ], + "position_mm": [ + 337.837313859682, + -329.5034199139771, + -24.10657949400444 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28466693857887554, + -0.2606061474348729, + -0.02785728872333998 + ], + "position_mm": [ + 284.66693857887554, + -260.6061474348729, + -27.85728872333998 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.019905918450494043, + -0.18870121744580765, + -0.027848152898480125 + ], + "position_mm": [ + -19.905918450494042, + -188.70121744580766, + -27.848152898480123 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.00560458887115925, + -0.27735299027741983, + -0.027442866061690576 + ], + "position_mm": [ + 5.60458887115925, + -277.35299027741985, + -27.442866061690577 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027672135645216603, + 0.19341131907499295, + -0.026417973384333295 + ], + "position_mm": [ + -27.672135645216603, + 193.41131907499295, + -26.417973384333294 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5063510811868044, + -0.3135339594690959, + -0.027654667111626063 + ], + "position_mm": [ + 506.3510811868044, + -313.5339594690959, + -27.654667111626065 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.1865898473381918, + -0.27632119521267823, + -0.02737851313905977 + ], + "position_mm": [ + 186.58984733819182, + -276.3211952126782, + -27.37851313905977 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6506496532964323, + -0.22406764829247283, + -0.027141958695351985 + ], + "position_mm": [ + 650.6496532964323, + -224.06764829247282, + -27.141958695351985 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.104572520917178, + -0.19029570996435882, + -0.027325611247138372 + ], + "position_mm": [ + 104.572520917178, + -190.29570996435882, + -27.325611247138372 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31086750973947574, + -0.1544526655463029, + 0.15672172502153298 + ], + "position_mm": [ + 310.86750973947574, + -154.4526655463029, + 156.721725021533 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.752309321519673, + -0.090830609615646, + 0.0008346340164592401 + ], + "position_mm": [ + 752.309321519673, + -90.830609615646, + 0.8346340164592401 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500123085920262, + -0.010129749721696975, + 0.00037630935376275506 + ], + "position_mm": [ + 650.0123085920262, + -10.129749721696975, + 0.37630935376275504 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021408749597778262, + -0.02079515576714534, + 0.0015960425064478043 + ], + "position_mm": [ + 21.40874959777826, + -20.79515576714534, + 1.5960425064478043 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.2530934071154194, + -0.008692479030203915, + -0.00011457922997594469 + ], + "position_mm": [ + 253.09340711541938, + -8.692479030203915, + -0.11457922997594469 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.347970387853639, + -0.010616512306889205, + 0.0005313961557937649 + ], + "position_mm": [ + 347.970387853639, + -10.616512306889204, + 0.5313961557937649 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25030016320994164, + -0.08864128819500272, + 0.0005062843666231149 + ], + "position_mm": [ + 250.30016320994164, + -88.64128819500272, + 0.5062843666231148 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3537203851535006, + -0.09941566413058409, + 0.1996213378870877 + ], + "position_mm": [ + 353.7203851535006, + -99.41566413058409, + 199.6213378870877 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23112493842079826, + -0.03675518890882493, + 0.30589798942182217 + ], + "position_mm": [ + 231.12493842079826, + -36.755188908824934, + 305.89798942182216 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32043344099190507, + -0.044663549392813716, + 0.2973229271045675 + ], + "position_mm": [ + 320.43344099190506, + -44.663549392813714, + 297.3229271045675 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2833594706440572, + -0.041434155449907334, + 0.30194329689270566 + ], + "position_mm": [ + 283.3594706440572, + -41.43415544990734, + 301.94329689270563 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abd/render_a_aruco_detection.json b/data/camera_study/Scene10/k3_abd/render_a_aruco_detection.json new file mode 100644 index 0000000..6eda1d8 --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/render_a_aruco_detection.json @@ -0,0 +1,2330 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:13Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "a", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.npz", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.png", + "image_sha256": "3fda1f21fe402f6ca45be61726fe8bc4ff11185ad27638be512a8f4f598b0fe5", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 26, + "num_rejected_candidates": 35 + }, + "detections": [ + { + "observation_id": "c16c33ae-956f-494e-88e9-c332a7d2181f", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 547.0 + ], + [ + 939.0, + 530.0 + ], + [ + 956.0, + 571.0 + ], + [ + 917.0, + 588.0 + ] + ], + "center_px": [ + 928.0, + 559.0 + ], + "quality": { + "area_px": 1888.0, + "perimeter_px": 173.85755157470703, + "sharpness": { + "laplacian_var": 865.6237972020846 + }, + "contrast": { + "p05": 50.0, + "p95": 187.0, + "dynamic_range": 137.0, + "mean_gray": 87.40342679127725, + "std_gray": 54.46998248000789 + }, + "geometry": { + "distance_to_center_norm": 0.23207330703735352, + "distance_to_border_px": 484.0 + }, + "edge_ratio": 1.0432630581405598, + "edge_lengths_px": [ + 42.54409408569336, + 44.384681701660156, + 42.54409408569336, + 44.384681701660156 + ] + }, + "confidence": 0.9585310168868925 + }, + { + "observation_id": "898e927f-cab3-42e1-b3e6-a082a165941f", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 739.0, + 242.0 + ], + [ + 774.0, + 228.0 + ], + [ + 792.0, + 270.0 + ], + [ + 757.0, + 283.0 + ] + ], + "center_px": [ + 765.5, + 255.75 + ], + "quality": { + "area_px": 1695.5, + "perimeter_px": 165.50432586669922, + "sharpness": { + "laplacian_var": 972.5653279753307 + }, + "contrast": { + "p05": 17.0, + "p95": 182.0, + "dynamic_range": 165.0, + "mean_gray": 106.18205574912892, + "std_gray": 70.67095657404792 + }, + "geometry": { + "distance_to_center_norm": 0.3198539614677429, + "distance_to_border_px": 228.0 + }, + "edge_ratio": 1.2238659987255158, + "edge_lengths_px": [ + 37.6961555480957, + 45.694637298583984, + 37.336307525634766, + 44.777225494384766 + ] + }, + "confidence": 0.8170829167910206 + }, + { + "observation_id": "5d0c1501-a6e1-4653-9152-0534c2a69d3c", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 651.0, + 261.0 + ], + [ + 689.0, + 249.0 + ], + [ + 712.0, + 285.0 + ], + [ + 674.0, + 297.0 + ] + ], + "center_px": [ + 681.5, + 273.0 + ], + "quality": { + "area_px": 1644.0, + "perimeter_px": 165.13947296142578, + "sharpness": { + "laplacian_var": 747.6962819576332 + }, + "contrast": { + "p05": 13.0, + "p95": 180.0, + "dynamic_range": 167.0, + "mean_gray": 76.63693693693693, + "std_gray": 72.66327799511954 + }, + "geometry": { + "distance_to_center_norm": 0.2997349798679352, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.072028219579559, + "edge_lengths_px": [ + 39.84971618652344, + 42.72002029418945, + 39.84971618652344, + 42.72002029418945 + ] + }, + "confidence": 0.9328112653528767 + }, + { + "observation_id": "192788d8-3678-4738-a4f4-4b0de984cef9", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 880.0, + 1056.0 + ], + [ + 849.0, + 1028.0 + ], + [ + 883.0, + 1007.0 + ], + [ + 913.0, + 1034.0 + ] + ], + "center_px": [ + 881.25, + 1031.25 + ], + "quality": { + "area_px": 1577.0, + "perimeter_px": 161.7576141357422, + "sharpness": { + "laplacian_var": 779.7184102009837 + }, + "contrast": { + "p05": 14.0, + "p95": 173.0, + "dynamic_range": 159.0, + "mean_gray": 81.89795918367346, + "std_gray": 69.37586032500836 + }, + "geometry": { + "distance_to_center_norm": 0.574486494064331, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.053254572752866, + "edge_lengths_px": [ + 41.773197174072266, + 39.96248245239258, + 40.360870361328125, + 39.66106414794922 + ] + }, + "confidence": 0.45573027871641286 + }, + { + "observation_id": "92df4393-1f7e-4f2f-b3da-35924c6678d0", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1154.0, + 1048.0 + ], + [ + 1121.0, + 1020.0 + ], + [ + 1153.0, + 1000.0 + ], + [ + 1185.0, + 1028.0 + ] + ], + "center_px": [ + 1153.25, + 1024.0 + ], + "quality": { + "area_px": 1532.0, + "perimeter_px": 160.4264144897461, + "sharpness": { + "laplacian_var": 789.6627377718634 + }, + "contrast": { + "p05": 9.0, + "p95": 170.0, + "dynamic_range": 161.0, + "mean_gray": 94.95602294455067, + "std_gray": 70.53110441036318 + }, + "geometry": { + "distance_to_center_norm": 0.7217618823051453, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.173112932994049, + "edge_lengths_px": [ + 43.27817153930664, + 37.735923767089844, + 42.52058410644531, + 36.8917350769043 + ] + }, + "confidence": 0.5455570235395628 + }, + { + "observation_id": "83e6c754-d40a-40d7-9246-361b1ae3e786", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 800.0, + 233.0 + ], + [ + 834.0, + 221.0 + ], + [ + 852.0, + 261.0 + ], + [ + 816.0, + 271.0 + ] + ], + "center_px": [ + 825.5, + 246.5 + ], + "quality": { + "area_px": 1552.0, + "perimeter_px": 158.51307678222656, + "sharpness": { + "laplacian_var": 863.8906785031452 + }, + "contrast": { + "p05": 15.0, + "p95": 181.0, + "dynamic_range": 166.0, + "mean_gray": 73.38709677419355, + "std_gray": 69.59383427424181 + }, + "geometry": { + "distance_to_center_norm": 0.34653934836387634, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.2165525994378175, + "edge_lengths_px": [ + 36.055511474609375, + 43.863426208496094, + 37.36308288574219, + 41.231056213378906 + ] + }, + "confidence": 0.8219948734334308 + }, + { + "observation_id": "3ebe41d9-26ca-4b79-a412-e1ef65f65642", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 656.0, + 1024.0 + ], + [ + 631.0, + 996.0 + ], + [ + 666.0, + 976.0 + ], + [ + 692.0, + 1003.0 + ] + ], + "center_px": [ + 661.25, + 999.75 + ], + "quality": { + "area_px": 1499.0, + "perimeter_px": 157.00859832763672, + "sharpness": { + "laplacian_var": 776.3919478120264 + }, + "contrast": { + "p05": 15.0, + "p95": 173.0, + "dynamic_range": 158.0, + "mean_gray": 113.47134387351778, + "std_gray": 66.47315254195442 + }, + "geometry": { + "distance_to_center_norm": 0.5149872303009033, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1118898476800905, + "edge_lengths_px": [ + 37.53664779663086, + 40.31128692626953, + 37.48332977294922, + 41.67733383178711 + ] + }, + "confidence": 0.8987700853806685 + }, + { + "observation_id": "b7a09f7b-0816-4d3c-92ec-97532bd75c9d", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1156.0, + 984.0 + ], + [ + 1124.0, + 957.0 + ], + [ + 1153.0, + 939.0 + ], + [ + 1186.0, + 964.0 + ] + ], + "center_px": [ + 1154.75, + 961.0 + ], + "quality": { + "area_px": 1384.5, + "perimeter_px": 153.4569320678711, + "sharpness": { + "laplacian_var": 641.3717713382066 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 48.07235421166307, + "std_gray": 59.88033560428563 + }, + "geometry": { + "distance_to_center_norm": 0.6724274754524231, + "distance_to_border_px": 96.0 + }, + "edge_ratio": 1.2266707527132645, + "edge_lengths_px": [ + 41.86884307861328, + 34.13209533691406, + 41.400482177734375, + 36.055511474609375 + ] + }, + "confidence": 0.7524431457735686 + }, + { + "observation_id": "cdaec92a-02e8-4392-a51a-821faa355d43", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 995.0, + 954.0 + ], + [ + 967.0, + 928.0 + ], + [ + 1000.0, + 911.0 + ], + [ + 1028.0, + 936.0 + ] + ], + "center_px": [ + 997.5, + 932.25 + ], + "quality": { + "area_px": 1331.5, + "perimeter_px": 150.4579086303711, + "sharpness": { + "laplacian_var": 806.253992719468 + }, + "contrast": { + "p05": 12.0, + "p95": 170.0, + "dynamic_range": 158.0, + "mean_gray": 85.1743119266055, + "std_gray": 67.17068414131862 + }, + "geometry": { + "distance_to_center_norm": 0.5338727831840515, + "distance_to_border_px": 126.0 + }, + "edge_ratio": 1.0293233343863084, + "edge_lengths_px": [ + 38.20994567871094, + 37.121421813964844, + 37.53664779663086, + 37.58989334106445 + ] + }, + "confidence": 0.8623788434718633 + }, + { + "observation_id": "b17ca62b-d5bc-4bf1-9aaa-a3f29ba3c9af", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 731.0, + 951.0 + ], + [ + 707.0, + 925.0 + ], + [ + 742.0, + 908.0 + ], + [ + 766.0, + 933.0 + ] + ], + "center_px": [ + 736.5, + 929.25 + ], + "quality": { + "area_px": 1312.5, + "perimeter_px": 148.30654907226562, + "sharpness": { + "laplacian_var": 893.1018320987654 + }, + "contrast": { + "p05": 14.0, + "p95": 172.0, + "dynamic_range": 158.0, + "mean_gray": 77.58333333333333, + "std_gray": 66.11167950269201 + }, + "geometry": { + "distance_to_center_norm": 0.432888388633728, + "distance_to_border_px": 129.0 + }, + "edge_ratio": 1.135675442614228, + "edge_lengths_px": [ + 35.38361358642578, + 38.910152435302734, + 34.65544509887695, + 39.357337951660156 + ] + }, + "confidence": 0.7704666026640716 + }, + { + "observation_id": "90b2f396-6789-44db-be87-6ef80d5d1eb4", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1109.0, + 937.0 + ], + [ + 1078.0, + 911.0 + ], + [ + 1108.0, + 894.0 + ], + [ + 1138.0, + 918.0 + ] + ], + "center_px": [ + 1108.25, + 915.0 + ], + "quality": { + "area_px": 1286.5, + "perimeter_px": 148.03035736083984, + "sharpness": { + "laplacian_var": 849.6744027531824 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 73.16531791907515, + "std_gray": 67.17306919368005 + }, + "geometry": { + "distance_to_center_norm": 0.5997561812400818, + "distance_to_border_px": 143.0 + }, + "edge_ratio": 1.1733657712426009, + "edge_lengths_px": [ + 40.45985794067383, + 34.48188018798828, + 38.41874694824219, + 34.66987228393555 + ] + }, + "confidence": 0.7309457014059588 + }, + { + "observation_id": "b34b73aa-e057-4cf0-b0e8-185e435a061e", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 843.0 + ], + [ + 378.0, + 825.0 + ], + [ + 398.0, + 848.0 + ], + [ + 360.0, + 866.0 + ] + ], + "center_px": [ + 369.0, + 845.5 + ], + "quality": { + "area_px": 1234.0, + "perimeter_px": 145.0541877746582, + "sharpness": { + "laplacian_var": 1107.6063181860204 + }, + "contrast": { + "p05": 14.0, + "p95": 171.0, + "dynamic_range": 157.0, + "mean_gray": 78.54927884615384, + "std_gray": 65.48572197917484 + }, + "geometry": { + "distance_to_center_norm": 0.5170324444770813, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.3795367307347286, + "edge_lengths_px": [ + 42.04759216308594, + 30.479501724243164, + 42.04759216308594, + 30.479501724243164 + ] + }, + "confidence": 0.5963354569243849 + }, + { + "observation_id": "7cf9b5fd-1191-488c-9d1e-b115bdcdb653", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 841.0 + ], + [ + 1306.0, + 818.0 + ], + [ + 1334.0, + 803.0 + ], + [ + 1364.0, + 826.0 + ] + ], + "center_px": [ + 1335.0, + 822.0 + ], + "quality": { + "area_px": 1094.0, + "perimeter_px": 139.1337547302246, + "sharpness": { + "laplacian_var": 703.797937840674 + }, + "contrast": { + "p05": 9.0, + "p95": 164.0, + "dynamic_range": 155.0, + "mean_gray": 113.10478654592497, + "std_gray": 58.52400257567041 + }, + "geometry": { + "distance_to_center_norm": 0.7517461776733398, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.1900645633213587, + "edge_lengths_px": [ + 37.80211639404297, + 31.764760971069336, + 37.80211639404297, + 31.764760971069336 + ] + }, + "confidence": 0.6128519038478318 + }, + { + "observation_id": "572910c1-1001-4312-ae6e-21c35b909a6a", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 763.0, + 197.0 + ], + [ + 797.0, + 187.0 + ], + [ + 824.0, + 204.0 + ], + [ + 790.0, + 216.0 + ] + ], + "center_px": [ + 793.5, + 201.0 + ], + "quality": { + "area_px": 909.0, + "perimeter_px": 136.41686248779297, + "sharpness": { + "laplacian_var": 1069.7927531569794 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 91.46811819595645, + "std_gray": 62.54740157586658 + }, + "geometry": { + "distance_to_center_norm": 0.38541823625564575, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.130050277403289, + "edge_lengths_px": [ + 35.44009017944336, + 31.906112670898438, + 36.055511474609375, + 33.0151481628418 + ] + }, + "confidence": 0.5362593259058441 + }, + { + "observation_id": "4adc78e9-40d5-4b4b-95ec-e826743004bb", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 943.0, + 784.0 + ], + [ + 970.0, + 761.0 + ], + [ + 976.0, + 794.0 + ], + [ + 950.0, + 816.0 + ] + ], + "center_px": [ + 959.75, + 788.75 + ], + "quality": { + "area_px": 1007.5, + "perimeter_px": 135.82476806640625, + "sharpness": { + "laplacian_var": 990.0324116822271 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 69.03362573099415, + "std_gray": 62.62781348056947 + }, + "geometry": { + "distance_to_center_norm": 0.3838669955730438, + "distance_to_border_px": 264.0 + }, + "edge_ratio": 1.0827805673411812, + "edge_lengths_px": [ + 35.46829605102539, + 33.541019439697266, + 34.058773040771484, + 32.75667953491211 + ] + }, + "confidence": 0.6203165137290706 + }, + { + "observation_id": "25b1973d-1442-4b8a-9dcc-edad04a0c8b1", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 736.0, + 748.0 + ], + [ + 769.0, + 734.0 + ], + [ + 791.0, + 755.0 + ], + [ + 758.0, + 770.0 + ] + ], + "center_px": [ + 763.5, + 751.75 + ], + "quality": { + "area_px": 1028.5, + "perimeter_px": 133.62254524230957, + "sharpness": { + "laplacian_var": 740.3312400344904 + }, + "contrast": { + "p05": 9.0, + "p95": 168.0, + "dynamic_range": 159.0, + "mean_gray": 80.6958981612447, + "std_gray": 67.7872078040809 + }, + "geometry": { + "distance_to_center_norm": 0.24019105732440948, + "distance_to_border_px": 310.0 + }, + "edge_ratio": 1.1918643121358203, + "edge_lengths_px": [ + 35.84689712524414, + 30.4138126373291, + 36.24913787841797, + 31.11269760131836 + ] + }, + "confidence": 0.5752892000247514 + }, + { + "observation_id": "9eabfab2-361d-4528-8324-3bbb2c99795a", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1296.0, + 787.0 + ], + [ + 1266.0, + 766.0 + ], + [ + 1291.0, + 751.0 + ], + [ + 1321.0, + 771.0 + ] + ], + "center_px": [ + 1293.5, + 768.75 + ], + "quality": { + "area_px": 977.5, + "perimeter_px": 131.51158332824707, + "sharpness": { + "laplacian_var": 482.2934957475995 + }, + "contrast": { + "p05": 7.0, + "p95": 157.0, + "dynamic_range": 150.0, + "mean_gray": 38.02962962962963, + "std_gray": 51.115372876535595 + }, + "geometry": { + "distance_to_center_norm": 0.6860414743423462, + "distance_to_border_px": 119.0 + }, + "edge_ratio": 1.2560441794117048, + "edge_lengths_px": [ + 36.619667053222656, + 29.154760360717773, + 36.055511474609375, + 29.681644439697266 + ] + }, + "confidence": 0.5188246379772157 + }, + { + "observation_id": "135faad4-ec17-4f3b-a679-81e70ea5b20f", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 664.0, + 678.0 + ], + [ + 696.0, + 665.0 + ], + [ + 717.0, + 685.0 + ], + [ + 684.0, + 698.0 + ] + ], + "center_px": [ + 690.25, + 681.5 + ], + "quality": { + "area_px": 916.5, + "perimeter_px": 127.29240036010742, + "sharpness": { + "laplacian_var": 950.4938833487939 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 81.41071428571429, + "std_gray": 66.26803955921937 + }, + "geometry": { + "distance_to_center_norm": 0.1606595665216446, + "distance_to_border_px": 382.0 + }, + "edge_ratio": 1.25399363306104, + "edge_lengths_px": [ + 34.539833068847656, + 29.0, + 35.46829605102539, + 28.284271240234375 + ] + }, + "confidence": 0.4872433032283655 + }, + { + "observation_id": "8734945d-b564-4813-8a3e-67858f896404", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 132.0, + 733.0 + ], + [ + 120.0, + 713.0 + ], + [ + 156.0, + 700.0 + ], + [ + 169.0, + 720.0 + ] + ], + "center_px": [ + 144.25, + 716.5 + ], + "quality": { + "area_px": 892.5, + "perimeter_px": 124.6701889038086, + "sharpness": { + "laplacian_var": 1275.08402176 + }, + "contrast": { + "p05": 10.200000000000003, + "p95": 164.0, + "dynamic_range": 153.8, + "mean_gray": 105.7888, + "std_gray": 57.0930485660032 + }, + "geometry": { + "distance_to_center_norm": 0.6691069006919861, + "distance_to_border_px": 120.0 + }, + "edge_ratio": 1.6814297415391983, + "edge_lengths_px": [ + 23.323806762695312, + 38.27531814575195, + 23.853721618652344, + 39.217342376708984 + ] + }, + "confidence": 0.3538655141518615 + }, + { + "observation_id": "ac7c16a9-905d-4e03-b939-e68a9a1483fa", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 624.0 + ], + [ + 815.0, + 612.0 + ], + [ + 837.0, + 630.0 + ], + [ + 807.0, + 643.0 + ] + ], + "center_px": [ + 811.25, + 627.25 + ], + "quality": { + "area_px": 814.5, + "perimeter_px": 120.82522010803223, + "sharpness": { + "laplacian_var": 1125.3635571955213 + }, + "contrast": { + "p05": 8.0, + "p95": 149.0, + "dynamic_range": 141.0, + "mean_gray": 86.07050092764378, + "std_gray": 55.3312393682571 + }, + "geometry": { + "distance_to_center_norm": 0.14027805626392365, + "distance_to_border_px": 437.0 + }, + "edge_ratio": 1.1545204961681088, + "edge_lengths_px": [ + 31.38471031188965, + 28.42534065246582, + 32.69556427001953, + 28.319604873657227 + ] + }, + "confidence": 0.4703251278796996 + }, + { + "observation_id": "263189e3-75f3-4cd6-9640-3aa8d51b3870", + "type": "aruco", + "marker_id": 74, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 344.0, + 702.0 + ], + [ + 330.0, + 683.0 + ], + [ + 364.0, + 671.0 + ], + [ + 379.0, + 689.0 + ] + ], + "center_px": [ + 354.25, + 686.25 + ], + "quality": { + "area_px": 819.5, + "perimeter_px": 120.42341613769531, + "sharpness": { + "laplacian_var": 1054.273602937478 + }, + "contrast": { + "p05": 7.0, + "p95": 158.0, + "dynamic_range": 151.0, + "mean_gray": 89.94680851063829, + "std_gray": 62.538561214266565 + }, + "geometry": { + "distance_to_center_norm": 0.4376735985279083, + "distance_to_border_px": 330.0 + }, + "edge_ratio": 1.593474715740479, + "edge_lengths_px": [ + 23.600847244262695, + 36.055511474609375, + 23.430749893188477, + 37.336307525634766 + ] + }, + "confidence": 0.3428566063437381 + }, + { + "observation_id": "17ebfa5b-4fe1-4dd0-a46d-27ede1de3f99", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1374.0, + 670.0 + ], + [ + 1347.0, + 651.0 + ], + [ + 1371.0, + 639.0 + ], + [ + 1398.0, + 658.0 + ] + ], + "center_px": [ + 1372.5, + 654.5 + ], + "quality": { + "area_px": 780.0, + "perimeter_px": 119.69592666625977, + "sharpness": { + "laplacian_var": 1109.98644924121 + }, + "contrast": { + "p05": 10.700000000000003, + "p95": 158.0, + "dynamic_range": 147.3, + "mean_gray": 106.3378640776699, + "std_gray": 52.12042090245902 + }, + "geometry": { + "distance_to_center_norm": 0.7360777258872986, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2304019519874827, + "edge_lengths_px": [ + 33.0151481628418, + 26.832815170288086, + 33.0151481628418, + 26.832815170288086 + ] + }, + "confidence": 0.35500593874581543 + }, + { + "observation_id": "1733e0e3-b895-472a-94e7-8d8311db8a7b", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1196.0, + 524.0 + ], + [ + 1220.0, + 514.0 + ], + [ + 1244.0, + 530.0 + ], + [ + 1219.0, + 540.0 + ] + ], + "center_px": [ + 1219.75, + 527.0 + ], + "quality": { + "area_px": 627.0, + "perimeter_px": 109.78808403015137, + "sharpness": { + "laplacian_var": 963.0183950617284 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 73.82444444444444, + "std_gray": 53.419454032550746 + }, + "geometry": { + "distance_to_center_norm": 0.5554656386375427, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.109400382408729, + "edge_lengths_px": [ + 26.0, + 28.844409942626953, + 26.925823211669922, + 28.017850875854492 + ] + }, + "confidence": 0.3767801116964092 + }, + { + "observation_id": "32ecfa9d-c39b-4d1d-aecc-bc3a1a6cb4c6", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1299.0, + 475.0 + ], + [ + 1322.0, + 465.0 + ], + [ + 1346.0, + 479.0 + ], + [ + 1325.0, + 490.0 + ] + ], + "center_px": [ + 1323.0, + 477.25 + ], + "quality": { + "area_px": 581.5, + "perimeter_px": 106.58796119689941, + "sharpness": { + "laplacian_var": 922.4211295765532 + }, + "contrast": { + "p05": 9.0, + "p95": 150.0, + "dynamic_range": 141.0, + "mean_gray": 80.53125, + "std_gray": 49.781966772569284 + }, + "geometry": { + "distance_to_center_norm": 0.673617959022522, + "distance_to_border_px": 94.0 + }, + "edge_ratio": 1.2661764925954944, + "edge_lengths_px": [ + 25.079872131347656, + 27.784887313842773, + 23.706539154052734, + 30.01666259765625 + ] + }, + "confidence": 0.3061711135325228 + }, + { + "observation_id": "65bf7a7c-f238-4462-9ff2-945ed668f100", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1117.0, + 472.0 + ], + [ + 1139.0, + 461.0 + ], + [ + 1163.0, + 476.0 + ], + [ + 1140.0, + 486.0 + ] + ], + "center_px": [ + 1139.75, + 473.75 + ], + "quality": { + "area_px": 573.0, + "perimeter_px": 104.90438652038574, + "sharpness": { + "laplacian_var": 1036.3509780861898 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 74.53349875930522, + "std_gray": 50.45210729924828 + }, + "geometry": { + "distance_to_center_norm": 0.47216224670410156, + "distance_to_border_px": 277.0 + }, + "edge_ratio": 1.1506375729114486, + "edge_lengths_px": [ + 24.59674835205078, + 28.301942825317383, + 25.079872131347656, + 26.925823211669922 + ] + }, + "confidence": 0.33198985414097737 + }, + { + "observation_id": "a66cbab7-ce4c-4e54-9105-20acdbbe050d", + "type": "aruco", + "marker_id": 184, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 821.0, + 486.0 + ], + [ + 814.0, + 487.0 + ], + [ + 798.0, + 448.0 + ], + [ + 805.0, + 445.0 + ] + ], + "center_px": [ + 809.5, + 466.5 + ], + "quality": { + "area_px": 312.0, + "perimeter_px": 100.85268115997314, + "sharpness": { + "laplacian_var": 2032.911884279329 + }, + "contrast": { + "p05": 22.0, + "p95": 133.5, + "dynamic_range": 111.5, + "mean_gray": 67.10426540284361, + "std_gray": 39.568029255350964 + }, + "geometry": { + "distance_to_center_norm": 0.12868039309978485, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 6.224146785942024, + "edge_lengths_px": [ + 7.071067810058594, + 42.154476165771484, + 7.6157732009887695, + 44.0113639831543 + ] + }, + "confidence": 0.03341823500528502 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 712.0, + 776.0 + ], + [ + 506.0, + 896.0 + ], + [ + 441.0, + 876.0 + ], + [ + 650.0, + 774.0 + ] + ], + "center_px": [ + 577.25, + 830.5 + ], + "area_px": 9331.0 + }, + { + "image_points_px": [ + [ + 1134.0, + 576.0 + ], + [ + 1028.0, + 633.0 + ], + [ + 1010.0, + 609.0 + ], + [ + 1092.0, + 566.0 + ] + ], + "center_px": [ + 1066.0, + 596.0 + ], + "area_px": 3098.0 + }, + { + "image_points_px": [ + [ + 949.0, + 628.0 + ], + [ + 974.0, + 624.0 + ], + [ + 1004.0, + 689.0 + ], + [ + 973.0, + 699.0 + ] + ], + "center_px": [ + 975.0, + 660.0 + ], + "area_px": 2093.0 + }, + { + "image_points_px": [ + [ + 919.0, + 792.0 + ], + [ + 944.0, + 814.0 + ], + [ + 912.0, + 829.0 + ], + [ + 888.0, + 806.0 + ] + ], + "center_px": [ + 915.75, + 810.25 + ], + "area_px": 1064.0 + }, + { + "image_points_px": [ + [ + 964.0, + 655.0 + ], + [ + 985.0, + 654.0 + ], + [ + 1002.0, + 682.0 + ], + [ + 976.0, + 691.0 + ] + ], + "center_px": [ + 981.75, + 670.5 + ], + "area_px": 824.5 + }, + { + "image_points_px": [ + [ + 1299.0, + 626.0 + ], + [ + 1321.0, + 614.0 + ], + [ + 1348.0, + 632.0 + ], + [ + 1326.0, + 644.0 + ] + ], + "center_px": [ + 1323.5, + 629.0 + ], + "area_px": 720.0 + }, + { + "image_points_px": [ + [ + 92.0, + 604.0 + ], + [ + 58.0, + 618.0 + ], + [ + 46.0, + 601.0 + ], + [ + 78.0, + 589.0 + ] + ], + "center_px": [ + 68.5, + 603.0 + ], + "area_px": 697.0 + }, + { + "image_points_px": [ + [ + 180.0, + 565.0 + ], + [ + 147.0, + 577.0 + ], + [ + 137.0, + 560.0 + ], + [ + 168.0, + 550.0 + ] + ], + "center_px": [ + 158.0, + 563.0 + ], + "area_px": 633.0 + }, + { + "image_points_px": [ + [ + 871.0, + 624.0 + ], + [ + 879.0, + 625.0 + ], + [ + 895.0, + 667.0 + ], + [ + 885.0, + 663.0 + ] + ], + "center_px": [ + 882.5, + 644.75 + ], + "area_px": 327.0 + }, + { + "image_points_px": [ + [ + 1217.0, + 427.0 + ], + [ + 1239.0, + 418.0 + ], + [ + 1261.0, + 431.0 + ], + [ + 1241.0, + 441.0 + ] + ], + "center_px": [ + 1239.5, + 429.25 + ], + "area_px": 502.0 + }, + { + "image_points_px": [ + [ + 385.0, + 633.0 + ], + [ + 402.0, + 652.0 + ], + [ + 378.0, + 660.0 + ], + [ + 362.0, + 643.0 + ] + ], + "center_px": [ + 381.75, + 647.0 + ], + "area_px": 571.5 + }, + { + "image_points_px": [ + [ + 717.0, + 471.0 + ], + [ + 742.0, + 462.0 + ], + [ + 760.0, + 475.0 + ], + [ + 736.0, + 485.0 + ] + ], + "center_px": [ + 738.75, + 473.25 + ], + "area_px": 506.5 + }, + { + "image_points_px": [ + [ + 488.0, + 732.0 + ], + [ + 459.0, + 747.0 + ], + [ + 447.0, + 740.0 + ], + [ + 480.0, + 724.0 + ] + ], + "center_px": [ + 468.5, + 735.75 + ], + "area_px": 387.5 + }, + { + "image_points_px": [ + [ + 751.0, + 438.0 + ], + [ + 776.0, + 430.0 + ], + [ + 792.0, + 443.0 + ], + [ + 768.0, + 452.0 + ] + ], + "center_px": [ + 771.75, + 440.75 + ], + "area_px": 471.0 + }, + { + "image_points_px": [ + [ + 984.0, + 384.0 + ], + [ + 1007.0, + 376.0 + ], + [ + 1024.0, + 388.0 + ], + [ + 1002.0, + 397.0 + ] + ], + "center_px": [ + 1004.25, + 386.25 + ], + "area_px": 430.0 + }, + { + "image_points_px": [ + [ + 1088.0, + 340.0 + ], + [ + 1108.0, + 333.0 + ], + [ + 1127.0, + 343.0 + ], + [ + 1106.0, + 351.0 + ] + ], + "center_px": [ + 1107.25, + 341.75 + ], + "area_px": 354.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 297.0 + ], + [ + 1071.0, + 290.0 + ], + [ + 1089.0, + 300.0 + ], + [ + 1070.0, + 308.0 + ] + ], + "center_px": [ + 1070.25, + 298.75 + ], + "area_px": 343.5 + }, + { + "image_points_px": [ + [ + 1145.0, + 312.0 + ], + [ + 1165.0, + 306.0 + ], + [ + 1182.0, + 316.0 + ], + [ + 1163.0, + 324.0 + ] + ], + "center_px": [ + 1163.75, + 314.5 + ], + "area_px": 337.0 + }, + { + "image_points_px": [ + [ + 1227.0, + 309.0 + ], + [ + 1246.0, + 302.0 + ], + [ + 1264.0, + 312.0 + ], + [ + 1247.0, + 320.0 + ] + ], + "center_px": [ + 1246.0, + 310.75 + ], + "area_px": 331.5 + }, + { + "image_points_px": [ + [ + 935.0, + 285.0 + ], + [ + 955.0, + 278.0 + ], + [ + 972.0, + 287.0 + ], + [ + 952.0, + 295.0 + ] + ], + "center_px": [ + 953.5, + 286.25 + ], + "area_px": 317.5 + }, + { + "image_points_px": [ + [ + 891.0, + 293.0 + ], + [ + 911.0, + 286.0 + ], + [ + 927.0, + 296.0 + ], + [ + 907.0, + 304.0 + ] + ], + "center_px": [ + 909.0, + 294.75 + ], + "area_px": 330.0 + }, + { + "image_points_px": [ + [ + 1018.0, + 751.0 + ], + [ + 1017.0, + 775.0 + ], + [ + 1013.0, + 785.0 + ], + [ + 1005.0, + 755.0 + ] + ], + "center_px": [ + 1013.25, + 766.5 + ], + "area_px": 254.0 + }, + { + "image_points_px": [ + [ + 278.0, + 1016.0 + ], + [ + 276.0, + 1020.0 + ], + [ + 247.0, + 1035.0 + ], + [ + 268.0, + 1019.0 + ] + ], + "center_px": [ + 267.25, + 1022.5 + ], + "area_px": 91.5 + }, + { + "image_points_px": [ + [ + 1273.0, + 316.0 + ], + [ + 1258.0, + 325.0 + ], + [ + 1242.0, + 330.0 + ], + [ + 1245.0, + 326.0 + ] + ], + "center_px": [ + 1254.5, + 324.25 + ], + "area_px": 75.5 + }, + { + "image_points_px": [ + [ + 627.0, + 394.0 + ], + [ + 630.0, + 413.0 + ], + [ + 628.0, + 428.0 + ], + [ + 625.0, + 409.0 + ] + ], + "center_px": [ + 627.5, + 411.0 + ], + "area_px": 83.0 + }, + { + "image_points_px": [ + [ + 356.0, + 962.0 + ], + [ + 333.0, + 980.0 + ], + [ + 330.0, + 980.0 + ], + [ + 348.0, + 965.0 + ] + ], + "center_px": [ + 341.75, + 971.75 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 702.0, + 632.0 + ], + [ + 679.0, + 644.0 + ], + [ + 673.0, + 642.0 + ], + [ + 695.0, + 632.0 + ] + ], + "center_px": [ + 687.25, + 637.5 + ], + "area_px": 94.0 + }, + { + "image_points_px": [ + [ + 1001.0, + 496.0 + ], + [ + 997.0, + 501.0 + ], + [ + 977.0, + 510.0 + ], + [ + 973.0, + 509.0 + ] + ], + "center_px": [ + 987.0, + 504.0 + ], + "area_px": 72.0 + }, + { + "image_points_px": [ + [ + 921.0, + 598.0 + ], + [ + 901.0, + 617.0 + ], + [ + 902.0, + 613.0 + ], + [ + 915.0, + 599.0 + ] + ], + "center_px": [ + 909.75, + 606.75 + ], + "area_px": 66.0 + }, + { + "image_points_px": [ + [ + 68.0, + 1031.0 + ], + [ + 60.0, + 1038.0 + ], + [ + 45.0, + 1046.0 + ], + [ + 50.0, + 1041.0 + ] + ], + "center_px": [ + 55.75, + 1039.0 + ], + "area_px": 40.5 + }, + { + "image_points_px": [ + [ + 842.0, + 934.0 + ], + [ + 834.0, + 942.0 + ], + [ + 823.0, + 947.0 + ], + [ + 820.0, + 946.0 + ] + ], + "center_px": [ + 829.75, + 942.25 + ], + "area_px": 53.0 + }, + { + "image_points_px": [ + [ + 806.0, + 955.0 + ], + [ + 791.0, + 965.0 + ], + [ + 783.0, + 965.0 + ], + [ + 802.0, + 955.0 + ] + ], + "center_px": [ + 795.5, + 960.0 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 342.0, + 1004.0 + ], + [ + 320.0, + 1016.0 + ], + [ + 322.0, + 1012.0 + ], + [ + 330.0, + 1007.0 + ] + ], + "center_px": [ + 328.5, + 1009.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 1340.0, + 651.0 + ], + [ + 1334.0, + 656.0 + ], + [ + 1318.0, + 660.0 + ], + [ + 1329.0, + 652.0 + ] + ], + "center_px": [ + 1330.25, + 654.75 + ], + "area_px": 66.5 + }, + { + "image_points_px": [ + [ + 229.0, + 651.0 + ], + [ + 218.0, + 658.0 + ], + [ + 208.0, + 661.0 + ], + [ + 211.0, + 658.0 + ] + ], + "center_px": [ + 216.5, + 657.0 + ], + "area_px": 35.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abd/render_a_camera_pose.json b/data/camera_study/Scene10/k3_abd/render_a_camera_pose.json new file mode 100644 index 0000000..3afbfb6 --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/render_a_camera_pose.json @@ -0,0 +1,467 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:15Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_abd\\render_a_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "a", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 19, + "used_marker_ids": [ + 95, + 97, + 103, + 54, + 55, + 51, + 47, + 210, + 85, + 215, + 105, + 211, + 75, + 214, + 74, + 102, + 217, + 205, + 206 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.01009749778311845, + 0.0013500052634516154, + 0.0012080581027067798, + 0.001208056584232894 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.418903298149159, + "residual_median_px": 2.9058066287550095, + "residual_max_px": 7.881774161943574, + "sigma2_normalized": 1.7330383439497478e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8081126809120178, + -0.5890257358551025, + -0.0016104801325127482 + ], + [ + -0.3439487814903259, + -0.46965670585632324, + -0.8130939602851868 + ], + [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + ], + "translation_m": [ + -0.2276943325996399, + 0.17315705120563507, + 1.1353343725204468 + ], + "rvec_rad": [ + 2.1050851025918234, + -0.6867341612291594, + 0.3507860528401858 + ] + }, + "camera_in_world": { + "position_m": [ + -0.29933083057403564, + -0.7994182705879211, + 0.8013386726379395 + ], + "position_mm": [ + -299.3308410644531, + -799.4182739257812, + 801.3386840820312 + ], + "orientation_deg": { + "roll": 131.5152587890625, + "pitch": -28.5664005279541, + "yaw": -23.05556297302246 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.5705111713147538e-05, + -3.606186641991224e-06, + 9.93455859227922e-07, + 5.974998436558746e-07, + 4.6929081989455075e-07, + 2.8925877037560832e-06 + ], + [ + -3.606186641991253e-06, + 4.525067031199804e-06, + -1.5535915979518367e-06, + -4.146706877795486e-07, + -8.403171882148325e-07, + 3.704138848703875e-08 + ], + [ + 9.93455859228011e-07, + -1.5535915979518793e-06, + 1.4511663564702391e-05, + 8.397716382398054e-07, + -1.8034796850892003e-06, + -4.925606373863842e-06 + ], + [ + 5.974998436558832e-07, + -4.146706877795502e-07, + 8.397716382397962e-07, + 2.430616306834126e-07, + 1.4873676074531513e-08, + 1.58103612736764e-07 + ], + [ + 4.692908198945444e-07, + -8.403171882148285e-07, + -1.8034796850892121e-06, + 1.4873676074530825e-08, + 6.717933155003761e-07, + 1.166485422903723e-06 + ], + [ + 2.892587703756058e-06, + 3.704138848704778e-08, + -4.925606373863879e-06, + 1.5810361273676463e-07, + 1.166485422903725e-06, + 5.922812492193122e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.22706131431744284, + 0.12188075641483156, + 0.21826355925678265 + ], + "tvec_std_m": [ + 0.0004930128098573226, + 0.0008196299869455584, + 0.0024336829070758423 + ] + }, + "camera_center_std_m": [ + 0.0031789461102063005, + 0.004041324498858458, + 0.00434604702092401 + ], + "camera_center_std_mm": [ + 3.1789461102063004, + 4.041324498858458, + 4.3460470209240105 + ], + "orientation_std_deg": { + "roll": 0.2878030578767992, + "pitch": 0.1683177033483575, + "yaw": 0.1374718863525747 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 881.25, + 1031.25 + ], + "projected_center_px": [ + 877.61865234375, + 1028.5360107421875 + ], + "reprojection_error_px": 4.53347807892285, + "confidence": 0.45573027871641286 + }, + { + "marker_id": 97, + "observed_center_px": [ + 1153.25, + 1024.0 + ], + "projected_center_px": [ + 1152.7294921875, + 1027.8443603515625 + ], + "reprojection_error_px": 3.879437445756702, + "confidence": 0.5455570235395628 + }, + { + "marker_id": 103, + "observed_center_px": [ + 661.25, + 999.75 + ], + "projected_center_px": [ + 660.6806030273438, + 996.0768432617188 + ], + "reprojection_error_px": 3.7170274866418533, + "confidence": 0.8987700853806685 + }, + { + "marker_id": 54, + "observed_center_px": [ + 1154.75, + 961.0 + ], + "projected_center_px": [ + 1162.5029296875, + 962.4193115234375 + ], + "reprojection_error_px": 7.881774161943574, + "confidence": 0.7524431457735686 + }, + { + "marker_id": 55, + "observed_center_px": [ + 997.5, + 932.25 + ], + "projected_center_px": [ + 999.1104736328125, + 934.5891723632812 + ], + "reprojection_error_px": 2.8399564551455856, + "confidence": 0.8623788434718633 + }, + { + "marker_id": 51, + "observed_center_px": [ + 736.5, + 929.25 + ], + "projected_center_px": [ + 735.853271484375, + 928.2763061523438 + ], + "reprojection_error_px": 1.1689043938176247, + "confidence": 0.7704666026640716 + }, + { + "marker_id": 47, + "observed_center_px": [ + 1108.25, + 915.0 + ], + "projected_center_px": [ + 1107.45166015625, + 913.0933837890625 + ], + "reprojection_error_px": 2.0670103729610174, + "confidence": 0.7309457014059588 + }, + { + "marker_id": 210, + "observed_center_px": [ + 369.0, + 845.5 + ], + "projected_center_px": [ + 367.08258056640625, + 847.7832641601562 + ], + "reprojection_error_px": 2.98157550791138, + "confidence": 0.5963354569243849 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1335.0, + 822.0 + ], + "projected_center_px": [ + 1332.3167724609375, + 822.3063354492188 + ], + "reprojection_error_px": 2.7006575928524246, + "confidence": 0.6128519038478318 + }, + { + "marker_id": 215, + "observed_center_px": [ + 763.5, + 751.75 + ], + "projected_center_px": [ + 764.8435668945312, + 753.69775390625 + ], + "reprojection_error_px": 2.366203135699148, + "confidence": 0.5752892000247514 + }, + { + "marker_id": 105, + "observed_center_px": [ + 1293.5, + 768.75 + ], + "projected_center_px": [ + 1294.0775146484375, + 765.9021606445312 + ], + "reprojection_error_px": 2.9058066287550095, + "confidence": 0.5188246379772157 + }, + { + "marker_id": 211, + "observed_center_px": [ + 690.25, + 681.5 + ], + "projected_center_px": [ + 687.66943359375, + 684.4354248046875 + ], + "reprojection_error_px": 3.908457721536807, + "confidence": 0.4872433032283655 + }, + { + "marker_id": 75, + "observed_center_px": [ + 144.25, + 716.5 + ], + "projected_center_px": [ + 147.21554565429688, + 715.9539184570312 + ], + "reprojection_error_px": 3.01540479526219, + "confidence": 0.3538655141518615 + }, + { + "marker_id": 214, + "observed_center_px": [ + 811.25, + 627.25 + ], + "projected_center_px": [ + 813.1135864257812, + 626.0042114257812 + ], + "reprojection_error_px": 2.2416385832712016, + "confidence": 0.4703251278796996 + }, + { + "marker_id": 74, + "observed_center_px": [ + 354.25, + 686.25 + ], + "projected_center_px": [ + 353.1841125488281, + 685.2387084960938 + ], + "reprojection_error_px": 1.4692945805517152, + "confidence": 0.3428566063437381 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1372.5, + 654.5 + ], + "projected_center_px": [ + 1370.1954345703125, + 654.4063110351562 + ], + "reprojection_error_px": 2.306469042030312, + "confidence": 0.35500593874581543 + }, + { + "marker_id": 217, + "observed_center_px": [ + 1219.75, + 527.0 + ], + "projected_center_px": [ + 1223.6787109375, + 525.702392578125 + ], + "reprojection_error_px": 4.137457510565784, + "confidence": 0.3767801116964092 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1323.0, + 477.25 + ], + "projected_center_px": [ + 1319.5634765625, + 478.1280212402344 + ], + "reprojection_error_px": 3.5469162147969504, + "confidence": 0.3061711135325228 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1139.75, + 473.75 + ], + "projected_center_px": [ + 1139.77392578125, + 473.96392822265625 + ], + "reprojection_error_px": 0.2152619972435565, + "confidence": 0.33198985414097737 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abd/render_b_aruco_detection.json b/data/camera_study/Scene10/k3_abd/render_b_aruco_detection.json new file mode 100644 index 0000000..db6e1bf --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:14Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "55353536-65b2-41e3-b723-5361da0da008", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "1579a3e3-a934-484c-9f45-f07dcca77edd", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "0f8a9616-24a0-4789-9cb0-ee8da80b664c", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "65268d31-48ba-485c-bdbc-29b5243fa1f8", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "c69cb384-3ef7-445c-8af7-a0ddb00cb950", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "89ca90dd-228b-4b54-8669-4cf1fe341a64", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "de98ba69-f905-4389-8afd-36b7647f2590", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "0ec6c25d-1ce9-4ef4-821f-d1418baed99a", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "10d5908f-ddec-45ea-8d44-c3d9c3d5d68c", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "3903472d-e708-423c-8e52-a2fa6055b8cb", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "3f72cde5-f5ba-4059-996f-e201c2977b2a", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "b7b70a65-13d1-44b0-80b8-f07934f81b6f", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "0cad6650-e25a-4352-9559-17d496ed7f6a", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "c9ca3e70-715c-4308-8d25-46fb16181637", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "c4df62c7-01eb-4fb4-8024-97cce07a3415", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "8c871dd1-8f07-4448-bb4d-15867386a675", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "9a1af132-6145-431c-941e-b14b38a87e4a", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "62eb8e0b-4ab6-46c4-9a47-729ad61bac6b", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "190c152c-e478-4c7f-b830-0606ef137a26", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "06c14363-095c-4525-a04d-048f2c225cc2", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "ceeb155e-d6c6-4cb4-9847-5e3ff99de4a3", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "e3493ba0-a30e-4b7e-a51f-1b222a6e9bf1", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "8278ad18-694c-4275-abe6-69e297614e68", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "8350fdf5-4362-4e6a-a86e-03a4004981a2", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "fc5cea1a-20e6-4587-867b-564c2b8f0b3f", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "342de3f1-b4d1-4d0f-a6d5-657a0fc32e76", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "dafbadde-9df6-4cf7-a763-c41b9468874c", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "c3a6477d-5afd-4ed0-842d-a75839ef5812", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "f3f5ccc7-a2d2-458f-bf45-0fc7e92664d8", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "fc3f471a-94da-4371-ac75-f1c9f51af70a", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "16bd6e04-da03-40ba-b3e4-e3b16aaaafe8", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "c71a3ba6-b970-4477-b366-c65067bcbed8", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "fa99faa5-b6d2-48a1-9258-facaa6a5ec32", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "5167fe10-b13f-42ed-a77d-b51d6a2fad20", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "12b031c3-ae23-4786-a541-a75d20c9f6e6", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "f67e1e6e-8f92-4086-ba47-7ed0c55e2047", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abd/render_b_camera_pose.json b/data/camera_study/Scene10/k3_abd/render_b_camera_pose.json new file mode 100644 index 0000000..83042c2 --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:15Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_abd\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abd/render_d_aruco_detection.json b/data/camera_study/Scene10/k3_abd/render_d_aruco_detection.json new file mode 100644 index 0000000..b93c290 --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/render_d_aruco_detection.json @@ -0,0 +1,1311 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:14Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "d", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.npz", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.png", + "image_sha256": "62e03d1a72df6ace64f3edf39f814b0e48c63c4b06cd21705bd69cd08afa442a", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 15, + "num_rejected_candidates": 18 + }, + "detections": [ + { + "observation_id": "86486685-00a6-44a4-8304-e4d8b82385a8", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 742.0, + 906.0 + ], + [ + 797.0, + 913.0 + ], + [ + 796.0, + 973.0 + ], + [ + 741.0, + 965.0 + ] + ], + "center_px": [ + 769.0, + 939.25 + ], + "quality": { + "area_px": 3280.0, + "perimeter_px": 230.03924179077148, + "sharpness": { + "laplacian_var": 235.03135651883824 + }, + "contrast": { + "p05": 24.0, + "p95": 170.0, + "dynamic_range": 146.0, + "mean_gray": 71.34429223744293, + "std_gray": 60.34595999329839 + }, + "geometry": { + "distance_to_center_norm": 0.4469395875930786, + "distance_to_border_px": 107.0 + }, + "edge_ratio": 1.0823298168515911, + "edge_lengths_px": [ + 55.44366455078125, + 60.008331298828125, + 55.578773498535156, + 59.00847244262695 + ] + }, + "confidence": 0.9239327831777916 + }, + { + "observation_id": "dbdfcea8-339f-4f57-8954-3dfda9438376", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 889.0, + 943.0 + ], + [ + 916.0, + 987.0 + ], + [ + 864.0, + 1021.0 + ], + [ + 835.0, + 979.0 + ] + ], + "center_px": [ + 876.0, + 982.5 + ], + "quality": { + "area_px": 3259.0, + "perimeter_px": 229.6916618347168, + "sharpness": { + "laplacian_var": 61.572482510446996 + }, + "contrast": { + "p05": 8.0, + "p95": 102.0, + "dynamic_range": 94.0, + "mean_gray": 52.3137789904502, + "std_gray": 40.795642464164395 + }, + "geometry": { + "distance_to_center_norm": 0.5213257670402527, + "distance_to_border_px": 59.0 + }, + "edge_ratio": 1.2715701940712816, + "edge_lengths_px": [ + 51.62363815307617, + 62.12889862060547, + 51.03919982910156, + 64.8999252319336 + ] + }, + "confidence": 0.4035200127470337 + }, + { + "observation_id": "241fd690-d5f9-4406-94f4-aa963b818692", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 685.0 + ], + [ + 956.0, + 716.0 + ], + [ + 934.0, + 773.0 + ], + [ + 895.0, + 742.0 + ] + ], + "center_px": [ + 925.75, + 729.0 + ], + "quality": { + "area_px": 2892.0, + "perimeter_px": 221.4241943359375, + "sharpness": { + "laplacian_var": 65.75925962559084 + }, + "contrast": { + "p05": 5.0, + "p95": 83.0, + "dynamic_range": 78.0, + "mean_gray": 36.39875065070276, + "std_gray": 31.82755916882834 + }, + "geometry": { + "distance_to_center_norm": 0.31042397022247314, + "distance_to_border_px": 307.0 + }, + "edge_ratio": 1.2533531491081307, + "edge_lengths_px": [ + 49.04079818725586, + 61.09828186035156, + 49.81967544555664, + 61.46543884277344 + ] + }, + "confidence": 0.4262916519882062 + }, + { + "observation_id": "ad80f33d-95af-4e58-bdfa-b7a2cc22b8a8", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1006.0, + 434.0 + ], + [ + 1040.0, + 464.0 + ], + [ + 1023.0, + 519.0 + ], + [ + 983.0, + 494.0 + ] + ], + "center_px": [ + 1013.0, + 477.75 + ], + "quality": { + "area_px": 2677.5, + "perimeter_px": 214.33768844604492, + "sharpness": { + "laplacian_var": 63.84585482864622 + }, + "contrast": { + "p05": 4.0, + "p95": 81.0, + "dynamic_range": 77.0, + "mean_gray": 29.46114864864865, + "std_gray": 31.00050238673812 + }, + "geometry": { + "distance_to_center_norm": 0.33282196521759033, + "distance_to_border_px": 400.0 + }, + "edge_ratio": 1.4171338730692165, + "edge_lengths_px": [ + 45.343135833740234, + 57.567352294921875, + 47.16990661621094, + 64.25729370117188 + ] + }, + "confidence": 0.3613610332351109 + }, + { + "observation_id": "b8212dae-b247-4b55-b42b-22174c6d438c", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 994.0, + 187.0 + ], + [ + 1046.0, + 190.0 + ], + [ + 1029.0, + 238.0 + ], + [ + 978.0, + 230.0 + ] + ], + "center_px": [ + 1011.75, + 211.25 + ], + "quality": { + "area_px": 2434.0, + "perimeter_px": 200.51189422607422, + "sharpness": { + "laplacian_var": 737.7557921421737 + }, + "contrast": { + "p05": 56.0, + "p95": 183.0, + "dynamic_range": 127.0, + "mean_gray": 101.10567632850241, + "std_gray": 52.34786160983359 + }, + "geometry": { + "distance_to_center_norm": 0.48837676644325256, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.1352691889411037, + "edge_lengths_px": [ + 52.08646774291992, + 50.9215087890625, + 51.62363815307617, + 45.880279541015625 + ] + }, + "confidence": 0.8808483571484285 + }, + { + "observation_id": "1fc40eff-c66c-4a78-a691-6508a496201b", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 920.0, + 169.0 + ], + [ + 969.0, + 170.0 + ], + [ + 953.0, + 218.0 + ], + [ + 902.0, + 215.0 + ] + ], + "center_px": [ + 936.0, + 193.0 + ], + "quality": { + "area_px": 2384.0, + "perimeter_px": 200.09115982055664, + "sharpness": { + "laplacian_var": 675.8367068624159 + }, + "contrast": { + "p05": 58.0, + "p95": 184.0, + "dynamic_range": 126.0, + "mean_gray": 125.61893054701905, + "std_gray": 52.20639937589474 + }, + "geometry": { + "distance_to_center_norm": 0.4541509747505188, + "distance_to_border_px": 169.0 + }, + "edge_ratio": 1.042398381472962, + "edge_lengths_px": [ + 49.01020431518555, + 50.59644317626953, + 51.088157653808594, + 49.39635467529297 + ] + }, + "confidence": 0.9593261249954639 + }, + { + "observation_id": "65bde22c-031c-4c17-b028-17e58cefd215", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 837.0, + 569.0 + ], + [ + 877.0, + 568.0 + ], + [ + 857.0, + 624.0 + ], + [ + 816.0, + 623.0 + ] + ], + "center_px": [ + 846.75, + 596.0 + ], + "quality": { + "area_px": 2227.5, + "perimeter_px": 198.4285888671875, + "sharpness": { + "laplacian_var": 456.8683277511788 + }, + "contrast": { + "p05": 43.0, + "p95": 185.0, + "dynamic_range": 142.0, + "mean_gray": 85.2088948787062, + "std_gray": 56.487417453665174 + }, + "geometry": { + "distance_to_center_norm": 0.15396633744239807, + "distance_to_border_px": 456.0 + }, + "edge_ratio": 1.486142577830794, + "edge_lengths_px": [ + 40.01249694824219, + 59.46427536010742, + 41.01219177246094, + 57.93962478637695 + ] + }, + "confidence": 0.6728829487273165 + }, + { + "observation_id": "2a3cdff1-d776-49c4-bdde-5c02463f1ceb", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 380.0, + 1053.0 + ], + [ + 418.0, + 1028.0 + ], + [ + 462.0, + 1043.0 + ], + [ + 426.0, + 1069.0 + ] + ], + "center_px": [ + 421.5, + 1048.25 + ], + "quality": { + "area_px": 1721.0, + "perimeter_px": 185.08320999145508, + "sharpness": { + "laplacian_var": 401.0408793146889 + }, + "contrast": { + "p05": 16.0, + "p95": 171.0, + "dynamic_range": 155.0, + "mean_gray": 91.72839506172839, + "std_gray": 64.0365880429505 + }, + "geometry": { + "distance_to_center_norm": 0.6549152135848999, + "distance_to_border_px": 11.0 + }, + "edge_ratio": 1.0967404836818018, + "edge_lengths_px": [ + 45.486263275146484, + 46.48655700683594, + 44.40720748901367, + 48.703182220458984 + ] + }, + "confidence": 0.20059440065661768 + }, + { + "observation_id": "62171c41-9b80-4bd0-bd09-d7ea97b158e9", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 839.0, + 266.0 + ], + [ + 854.0, + 309.0 + ], + [ + 811.0, + 306.0 + ], + [ + 796.0, + 265.0 + ] + ], + "center_px": [ + 825.0, + 286.5 + ], + "quality": { + "area_px": 1776.0, + "perimeter_px": 175.31510162353516, + "sharpness": { + "laplacian_var": 240.92017426523984 + }, + "contrast": { + "p05": 22.0, + "p95": 153.0, + "dynamic_range": 131.0, + "mean_gray": 74.06045751633987, + "std_gray": 53.6075481691311 + }, + "geometry": { + "distance_to_center_norm": 0.3048724830150604, + "distance_to_border_px": 265.0 + }, + "edge_ratio": 1.0588111649951575, + "edge_lengths_px": [ + 45.54119110107422, + 43.104522705078125, + 43.65776062011719, + 43.011627197265625 + ] + }, + "confidence": 0.9444554733275536 + }, + { + "observation_id": "2f1cf657-64c5-413d-ba59-826e4a726d8f", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 992.0, + 902.0 + ], + [ + 1041.0, + 917.0 + ], + [ + 1015.0, + 938.0 + ], + [ + 966.0, + 922.0 + ] + ], + "center_px": [ + 1003.5, + 919.75 + ], + "quality": { + "area_px": 1407.5, + "perimeter_px": 169.01459884643555, + "sharpness": { + "laplacian_var": 202.21712799530312 + }, + "contrast": { + "p05": 11.0, + "p95": 135.0, + "dynamic_range": 124.0, + "mean_gray": 60.230610134436404, + "std_gray": 46.98590047860021 + }, + "geometry": { + "distance_to_center_norm": 0.5265568494796753, + "distance_to_border_px": 142.0 + }, + "edge_ratio": 1.5714104130928346, + "edge_lengths_px": [ + 51.244510650634766, + 33.42155075073242, + 51.54609680175781, + 32.80244064331055 + ] + }, + "confidence": 0.5971281121184089 + }, + { + "observation_id": "e8f3503c-e22d-4daa-9ce9-af1d6655bc2e", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 828.0, + 160.0 + ], + [ + 872.0, + 162.0 + ], + [ + 849.0, + 192.0 + ], + [ + 804.0, + 188.0 + ] + ], + "center_px": [ + 838.25, + 175.5 + ], + "quality": { + "area_px": 1361.0, + "perimeter_px": 163.9031524658203, + "sharpness": { + "laplacian_var": 634.8821505010796 + }, + "contrast": { + "p05": 22.0, + "p95": 179.0, + "dynamic_range": 157.0, + "mean_gray": 93.81072210065645, + "std_gray": 65.74062367039625 + }, + "geometry": { + "distance_to_center_norm": 0.4257793128490448, + "distance_to_border_px": 160.0 + }, + "edge_ratio": 1.2250450560973367, + "edge_lengths_px": [ + 44.04542922973633, + 37.80211639404297, + 45.17742919921875, + 36.878177642822266 + ] + }, + "confidence": 0.740653030529222 + }, + { + "observation_id": "06e02606-960a-4a87-a897-0bba5ba739b1", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 91.0, + 932.0 + ], + [ + 132.0, + 913.0 + ], + [ + 165.0, + 927.0 + ], + [ + 125.0, + 947.0 + ] + ], + "center_px": [ + 128.25, + 929.75 + ], + "quality": { + "area_px": 1240.5, + "perimeter_px": 162.91856002807617, + "sharpness": { + "laplacian_var": 640.6271417753217 + }, + "contrast": { + "p05": 17.0, + "p95": 172.0, + "dynamic_range": 155.0, + "mean_gray": 88.50410316529894, + "std_gray": 59.8365616473406 + }, + "geometry": { + "distance_to_center_norm": 0.7873013019561768, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.2605971300139012, + "edge_lengths_px": [ + 45.18849563598633, + 35.84689712524414, + 44.72135925292969, + 37.161808013916016 + ] + }, + "confidence": 0.6560383014602613 + }, + { + "observation_id": "48309f68-17dd-4c70-9ee4-edca58713678", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 384.0, + 918.0 + ], + [ + 416.0, + 899.0 + ], + [ + 455.0, + 911.0 + ], + [ + 424.0, + 931.0 + ] + ], + "center_px": [ + 419.75, + 914.75 + ], + "quality": { + "area_px": 1164.0, + "perimeter_px": 156.97121810913086, + "sharpness": { + "laplacian_var": 1305.0180528018368 + }, + "contrast": { + "p05": 23.0, + "p95": 171.0, + "dynamic_range": 148.0, + "mean_gray": 125.7001287001287, + "std_gray": 50.591649190438574 + }, + "geometry": { + "distance_to_center_norm": 0.5335504412651062, + "distance_to_border_px": 149.0 + }, + "edge_ratio": 1.1400787327238997, + "edge_lengths_px": [ + 37.2155876159668, + 40.804412841796875, + 36.8917350769043, + 42.05948257446289 + ] + }, + "confidence": 0.6806547457875692 + }, + { + "observation_id": "009eb78b-977c-4156-a59a-23f004ecae3b", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1061.0, + 838.0 + ], + [ + 1107.0, + 851.0 + ], + [ + 1086.0, + 869.0 + ], + [ + 1038.0, + 855.0 + ] + ], + "center_px": [ + 1073.0, + 853.25 + ], + "quality": { + "area_px": 1119.5, + "perimeter_px": 154.0610065460205, + "sharpness": { + "laplacian_var": 699.1501103553894 + }, + "contrast": { + "p05": 27.0, + "p95": 147.0, + "dynamic_range": 120.0, + "mean_gray": 93.41610738255034, + "std_gray": 44.372659317587036 + }, + "geometry": { + "distance_to_center_norm": 0.5243862867355347, + "distance_to_border_px": 211.0 + }, + "edge_ratio": 1.8077537619585837, + "edge_lengths_px": [ + 47.801673889160156, + 27.658634185791016, + 50.0, + 28.600698471069336 + ] + }, + "confidence": 0.41285121294657384 + }, + { + "observation_id": "e90524e0-2d00-432c-8f13-df0d2ad854f0", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 205.0, + 850.0 + ], + [ + 240.0, + 834.0 + ], + [ + 272.0, + 846.0 + ], + [ + 238.0, + 862.0 + ] + ], + "center_px": [ + 238.75, + 848.0 + ], + "quality": { + "area_px": 934.0, + "perimeter_px": 145.35046768188477, + "sharpness": { + "laplacian_var": 1079.742643238912 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 86.53560830860535, + "std_gray": 57.948273841825284 + }, + "geometry": { + "distance_to_center_norm": 0.6348573565483093, + "distance_to_border_px": 205.0 + }, + "edge_ratio": 1.1260460248127115, + "edge_lengths_px": [ + 38.4837646484375, + 34.1760139465332, + 37.57658767700195, + 35.11410140991211 + ] + }, + "confidence": 0.5529673325477359 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 539.0, + 665.0 + ], + [ + 601.0, + 657.0 + ], + [ + 722.0, + 692.0 + ], + [ + 705.0, + 711.0 + ] + ], + "center_px": [ + 641.75, + 681.25 + ], + "area_px": 3537.0 + }, + { + "image_points_px": [ + [ + 513.0, + 939.0 + ], + [ + 547.0, + 920.0 + ], + [ + 585.0, + 935.0 + ], + [ + 554.0, + 954.0 + ] + ], + "center_px": [ + 549.75, + 937.0 + ], + "area_px": 1238.0 + }, + { + "image_points_px": [ + [ + 256.0, + 906.0 + ], + [ + 289.0, + 888.0 + ], + [ + 327.0, + 900.0 + ], + [ + 291.0, + 919.0 + ] + ], + "center_px": [ + 290.75, + 903.25 + ], + "area_px": 1106.5 + }, + { + "image_points_px": [ + [ + 1378.0, + 809.0 + ], + [ + 1388.0, + 794.0 + ], + [ + 1434.0, + 804.0 + ], + [ + 1425.0, + 819.0 + ] + ], + "center_px": [ + 1406.25, + 806.5 + ], + "area_px": 792.5 + }, + { + "image_points_px": [ + [ + 492.0, + 714.0 + ], + [ + 517.0, + 702.0 + ], + [ + 551.0, + 710.0 + ], + [ + 527.0, + 723.0 + ] + ], + "center_px": [ + 521.75, + 712.25 + ], + "area_px": 639.5 + }, + { + "image_points_px": [ + [ + 1357.0, + 753.0 + ], + [ + 1371.0, + 740.0 + ], + [ + 1413.0, + 751.0 + ], + [ + 1400.0, + 763.0 + ] + ], + "center_px": [ + 1385.25, + 751.75 + ], + "area_px": 673.0 + }, + { + "image_points_px": [ + [ + 861.0, + 864.0 + ], + [ + 906.0, + 866.0 + ], + [ + 914.0, + 872.0 + ], + [ + 888.0, + 873.0 + ] + ], + "center_px": [ + 892.25, + 868.75 + ], + "area_px": 257.5 + }, + { + "image_points_px": [ + [ + 910.0, + 411.0 + ], + [ + 902.0, + 436.0 + ], + [ + 884.0, + 439.0 + ], + [ + 897.0, + 405.0 + ] + ], + "center_px": [ + 898.25, + 422.75 + ], + "area_px": 473.0 + }, + { + "image_points_px": [ + [ + 926.0, + 925.0 + ], + [ + 927.0, + 944.0 + ], + [ + 919.0, + 968.0 + ], + [ + 918.0, + 955.0 + ] + ], + "center_px": [ + 922.5, + 948.0 + ], + "area_px": 155.0 + }, + { + "image_points_px": [ + [ + 848.0, + 907.0 + ], + [ + 854.0, + 911.0 + ], + [ + 859.0, + 937.0 + ], + [ + 857.0, + 945.0 + ] + ], + "center_px": [ + 854.5, + 925.0 + ], + "area_px": 142.0 + }, + { + "image_points_px": [ + [ + 973.0, + 589.0 + ], + [ + 977.0, + 595.0 + ], + [ + 965.0, + 626.0 + ], + [ + 962.0, + 618.0 + ] + ], + "center_px": [ + 969.25, + 607.0 + ], + "area_px": 185.5 + }, + { + "image_points_px": [ + [ + 946.0, + 260.0 + ], + [ + 928.0, + 294.0 + ], + [ + 936.0, + 270.0 + ], + [ + 942.0, + 260.0 + ] + ], + "center_px": [ + 938.0, + 271.0 + ], + "area_px": 100.0 + }, + { + "image_points_px": [ + [ + 831.0, + 639.0 + ], + [ + 795.0, + 649.0 + ], + [ + 796.0, + 645.0 + ], + [ + 812.0, + 640.0 + ] + ], + "center_px": [ + 808.5, + 643.25 + ], + "area_px": 106.5 + }, + { + "image_points_px": [ + [ + 957.0, + 355.0 + ], + [ + 971.0, + 365.0 + ], + [ + 967.0, + 381.0 + ], + [ + 961.0, + 372.0 + ] + ], + "center_px": [ + 964.0, + 368.25 + ], + "area_px": 165.0 + }, + { + "image_points_px": [ + [ + 1107.0, + 214.0 + ], + [ + 1106.0, + 229.0 + ], + [ + 1099.0, + 243.0 + ], + [ + 1103.0, + 219.0 + ] + ], + "center_px": [ + 1103.75, + 226.25 + ], + "area_px": 83.5 + }, + { + "image_points_px": [ + [ + 275.0, + 926.0 + ], + [ + 284.0, + 927.0 + ], + [ + 303.0, + 935.0 + ], + [ + 277.0, + 929.0 + ] + ], + "center_px": [ + 284.75, + 929.25 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 927.0, + 944.0 + ], + [ + 921.0, + 969.0 + ], + [ + 918.0, + 971.0 + ], + [ + 922.0, + 951.0 + ] + ], + "center_px": [ + 922.0, + 958.75 + ], + "area_px": 67.5 + }, + { + "image_points_px": [ + [ + 507.0, + 975.0 + ], + [ + 526.0, + 982.0 + ], + [ + 529.0, + 986.0 + ], + [ + 509.0, + 979.0 + ] + ], + "center_px": [ + 517.75, + 980.5 + ], + "area_px": 60.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abd/render_d_camera_pose.json b/data/camera_study/Scene10/k3_abd/render_d_camera_pose.json new file mode 100644 index 0000000..51e2cc7 --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/render_d_camera_pose.json @@ -0,0 +1,285 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:15Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_abd\\render_d_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "d", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 6, + "used_marker_ids": [ + 95, + 208, + 69, + 103, + 214, + 64 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.010671415477997622, + 0.0018696542807179611, + 0.001824150025738836, + 0.0018241474426834877 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.164164330259058, + "residual_median_px": 5.398072385043921, + "residual_max_px": 7.027422341283123, + "sigma2_normalized": 6.6550277836154934e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8166700601577759, + 0.5771039724349976, + -0.0010227123275399208 + ], + [ + 0.16298067569732666, + -0.2323361337184906, + -0.9588833451271057 + ], + [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + ], + "translation_m": [ + -0.11485252529382706, + 0.08547275513410568, + 1.1249300241470337 + ], + "rvec_rad": [ + 1.7923624327425687, + 0.5686287097896567, + -0.4261428430202902 + ] + }, + "camera_in_world": { + "position_m": [ + 0.7026420831680298, + -0.7945951223373413, + 0.4010946750640869 + ], + "position_mm": [ + 702.64208984375, + -794.5950927734375, + 401.09466552734375 + ], + "orientation_deg": { + "roll": 109.92484283447266, + "pitch": 33.615230560302734, + "yaw": 11.286093711853027 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.0003498424001015397, + 6.823486661029942e-05, + 4.142063730678703e-05, + -5.345001723379169e-06, + -7.396858110018478e-05, + -1.2641475041979003e-05 + ], + [ + 6.823486661029988e-05, + 0.00010295516106391171, + -9.137229494897015e-05, + 2.281178954254835e-05, + -1.979611332364414e-05, + -7.605354993482835e-06 + ], + [ + 4.142063730678625e-05, + -9.137229494897096e-05, + 0.0002702927022549336, + -4.213130837183371e-05, + -7.56149612726986e-06, + 9.26150663825411e-06 + ], + [ + -5.345001723379082e-06, + 2.281178954254845e-05, + -4.2131308371833616e-05, + 8.962887675732753e-06, + -2.575675434153523e-07, + -3.848871385514968e-06 + ], + [ + -7.396858110018466e-05, + -1.9796113323644056e-05, + -7.561496127270001e-06, + -2.575675434153093e-07, + 1.8000566759428326e-05, + 7.99389653027148e-06 + ], + [ + -1.2641475041978559e-05, + -7.605354993482897e-06, + 9.261506638254348e-06, + -3.848871385514858e-06, + 7.993896530271401e-06, + 2.7756310749504287e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 1.07166452425966, + 0.581362070062273, + 0.9419759016685776 + ], + "tvec_std_m": [ + 0.0029938082229382617, + 0.004242707479832698, + 0.005268425832210631 + ] + }, + "camera_center_std_m": [ + 0.01190826606439346, + 0.013088153786860686, + 0.01603645350806163 + ], + "camera_center_std_mm": [ + 11.90826606439346, + 13.088153786860685, + 16.03645350806163 + ], + "orientation_std_deg": { + "roll": 1.2477636245413861, + "pitch": 0.8325671808473429, + "yaw": 0.699613718760565 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 421.5, + 1048.25 + ], + "projected_center_px": [ + 423.55438232421875, + 1045.9644775390625 + ], + "reprojection_error_px": 3.0731253885112206, + "confidence": 0.20059440065661768 + }, + { + "marker_id": 208, + "observed_center_px": [ + 1003.5, + 919.75 + ], + "projected_center_px": [ + 996.4899291992188, + 920.2435302734375 + ], + "reprojection_error_px": 7.027422341283123, + "confidence": 0.5971281121184089 + }, + { + "marker_id": 69, + "observed_center_px": [ + 128.25, + 929.75 + ], + "projected_center_px": [ + 123.95993041992188, + 934.0740966796875 + ], + "reprojection_error_px": 6.091182898025322, + "confidence": 0.6560383014602613 + }, + { + "marker_id": 103, + "observed_center_px": [ + 419.75, + 914.75 + ], + "projected_center_px": [ + 425.61590576171875, + 913.2058715820312 + ], + "reprojection_error_px": 6.065738452698394, + "confidence": 0.6806547457875692 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1073.0, + 853.25 + ], + "projected_center_px": [ + 1077.615234375, + 854.2874755859375 + ], + "reprojection_error_px": 4.730406317389448, + "confidence": 0.41285121294657384 + }, + { + "marker_id": 64, + "observed_center_px": [ + 238.75, + 848.0 + ], + "projected_center_px": [ + 237.76194763183594, + 846.0165405273438 + ], + "reprojection_error_px": 2.2159329777555143, + "confidence": 0.5529673325477359 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abd/robot_state.eval.json b/data/camera_study/Scene10/k3_abd/robot_state.eval.json new file mode 100644 index 0000000..a54560c --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 120.91801141245176, + "gt": 120.0, + "error": 0.9180114124517615, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 59.88602947146977, + "gt": 60.0, + "error": 0.11397052853021705, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.99107382267438, + "gt": -110.0, + "error": 0.008926177325633944, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "a", + "estimate": 20.101360563623174, + "gt": 20.0, + "error": 0.10136056362318868, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "b", + "estimate": 30.50828747500237, + "gt": 30.0, + "error": 0.508287475002362, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "c", + "estimate": 178.87028846178652, + "gt": 180.0, + "error": 1.1297115382134848, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "e", + "estimate": 6.477509567290077, + "gt": 4.0, + "error": 2.4775095672900767, + "unit": "mm", + "observable": true, + "n_markers": 1 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.3724512565389773, + "max_abs_deg": 1.1297115382134848, + "mean_abs_mm": 1.697760489870919, + "max_abs_mm": 2.4775095672900767 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abd/robot_state.json b/data/camera_study/Scene10/k3_abd/robot_state.json new file mode 100644 index 0000000..ab89fd9 --- /dev/null +++ b/data/camera_study/Scene10/k3_abd/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:19Z", + "method": "hybrid", + "movements": { + "x": { + "value": 120.91801141245176, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 59.88602947146977, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.99107382267438, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "a": { + "value": 20.101360563623174, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "b": { + "value": 30.50828747500237, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "c": { + "value": 178.87028846178652, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "e": { + "value": 6.477509567290077, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + } + }, + "residual_rms": 1.5277732038480047, + "num_markers": 23 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/aruco_marker_poses.json b/data/camera_study/Scene10/k3_abf/aruco_marker_poses.json new file mode 100644 index 0000000..489d138 --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/aruco_marker_poses.json @@ -0,0 +1,1185 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:18:59Z", + "summary": { + "num_cameras": 3, + "num_markers": 26 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.34361130569687853, + -0.2881949560297543, + -0.02740472368952218 + ], + "position_mm": [ + 343.61130569687856, + -288.19495602975434, + -27.404723689522182 + ], + "normal": [ + 0.004111763330347795, + 0.02766254977368266, + 0.9996088618766511 + ], + "corners_m": [ + [ + 0.33198678316660385, + -0.30000591763906953, + -0.02723624701741222 + ], + [ + 0.3318160332124473, + -0.27626279934396397, + -0.027484388938457886 + ], + [ + 0.3554722583875427, + -0.27647976174616895, + -0.027981171976171795 + ], + [ + 0.3551701480209204, + -0.3000313453898149, + -0.026917086826046814 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.542646315350595 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16774939084695234, + -0.1733132023394009, + -0.027387424345515627 + ], + "position_mm": [ + 167.74939084695234, + -173.3132023394009, + -27.387424345515626 + ], + "normal": [ + -0.025290565675465792, + 0.007946417738463385, + 0.9996485591111214 + ], + "corners_m": [ + [ + 0.1558942504600005, + -0.1841887534574409, + -0.02780620833864482 + ], + [ + 0.1562339623880011, + -0.1611783334514493, + -0.027573587506912085 + ], + [ + 0.17983661576569357, + -0.16212626626893675, + -0.027366573331974557 + ], + [ + 0.17903273477411413, + -0.18575945617977666, + -0.02680332820453105 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.37591622334603 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.4887749088558654, + 0.2151305617304476, + -0.027257104749172038 + ], + "position_mm": [ + 488.77490885586536, + 215.1305617304476, + -27.257104749172036 + ], + "normal": [ + -0.032364710715890845, + 0.050705056870831045, + 0.9981891217139178 + ], + "corners_m": [ + [ + 0.47699430612106947, + 0.20340471073717656, + -0.027263892163923574 + ], + [ + 0.47726095275340014, + 0.22755352164452325, + -0.028037232326808686 + ], + [ + 0.5003725394594621, + 0.22666304788001002, + -0.02769443228403516 + ], + [ + 0.5004718370895298, + 0.20290096666008045, + -0.02603286222192074 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.657356615577978 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3397346611247085, + -0.32743527721704746, + -0.027358200256640108 + ], + "position_mm": [ + 339.7346611247085, + -327.4352772170475, + -27.358200256640107 + ], + "normal": [ + 0.0018693690032810263, + 0.015989188102273014, + 0.9998704172658374 + ], + "corners_m": [ + [ + 0.3279518353965553, + -0.33908611627545787, + -0.027258947504154953 + ], + [ + 0.3281662138645668, + -0.31586167306264806, + -0.027409945598058136 + ], + [ + 0.35123837923225665, + -0.31563955984886993, + -0.027678637121200892 + ], + [ + 0.35158221600545536, + -0.3391537596812139, + -0.027085270803146443 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.364009055823907 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.2844208863404689, + -0.26095445068143774, + -0.02738766868936351 + ], + "position_mm": [ + 284.42088634046894, + -260.9544506814377, + -27.38766868936351 + ], + "normal": [ + -0.037632844695666606, + 0.024040388690516612, + 0.9990024167697097 + ], + "corners_m": [ + [ + 0.27232193776048697, + -0.2722929792231064, + -0.027520183703303593 + ], + [ + 0.2731034157071807, + -0.2484956394560808, + -0.028164847853168598 + ], + [ + 0.29636316965453496, + -0.2499791940869958, + -0.027149240453943284 + ], + [ + 0.295895022239673, + -0.2730499899595681, + -0.026716402747038574 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.45664038526802 + }, + { + "marker_id": 62, + "link": "Board", + "position_m": [ + 0.40163470248715044, + -0.17304156657109315, + -0.02771976305492824 + ], + "position_mm": [ + 401.63470248715043, + -173.04156657109314, + -27.71976305492824 + ], + "normal": [ + 0.02219455578318603, + 0.06028364603539847, + 0.9979345087300397 + ], + "corners_m": [ + [ + 0.390428043421149, + -0.1851393811179651, + -0.026708306341205548 + ], + [ + 0.38961279255529024, + -0.16218103271614057, + -0.028139913909099933 + ], + [ + 0.4128111458525494, + -0.16059894801681016, + -0.028689424681297905 + ], + [ + 0.41368682811961316, + -0.18424690443345684, + -0.02734140728810958 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.315787613790523 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.019553717865508292, + -0.18882765689725503, + -0.02812401893615308 + ], + "position_mm": [ + -19.553717865508293, + -188.82765689725503, + -28.124018936153078 + ], + "normal": [ + 0.024782119415480322, + 0.06904378443914971, + 0.9973057717608964 + ], + "corners_m": [ + [ + -0.031195500441251325, + -0.2005731696916083, + -0.02741619377813423 + ], + [ + -0.030872438904684683, + -0.17682271142530814, + -0.028269159938344907 + ], + [ + -0.008222727982482917, + -0.17704369695014685, + -0.02962308344821068 + ], + [ + -0.007924204133614252, + -0.20087104952195678, + -0.02718763857992252 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.421715858934963 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.005461376006755128, + -0.2771866591269858, + -0.02862082525934384 + ], + "position_mm": [ + 5.4613760067551285, + -277.18665912698583, + -28.62082525934384 + ], + "normal": [ + -0.0481151300319273, + 0.04461057597814089, + 0.9978450935756058 + ], + "corners_m": [ + [ + -0.006626639484829631, + -0.2887188238947474, + -0.028701492094985924 + ], + [ + -0.005884142071034708, + -0.2647413483611325, + -0.029710809034653167 + ], + [ + 0.01744885102852476, + -0.26568526813911403, + -0.028570507713787125 + ], + [ + 0.01690743455436009, + -0.28960119611294954, + -0.027500492193949153 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.729320661458335 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.4418452616655221, + 0.19411425116661324, + -0.02779585459975433 + ], + "position_mm": [ + 441.8452616655221, + 194.11425116661323, + -27.795854599754332 + ], + "normal": [ + 0.07280118041719603, + 0.022422351374504552, + 0.9970943918650336 + ], + "corners_m": [ + [ + 0.4307227295960595, + 0.18191561788154603, + -0.027235283274477804 + ], + [ + 0.4297867172132932, + 0.2046788349673567, + -0.02663320550543597 + ], + [ + 0.4530171550582433, + 0.20660276862766846, + -0.029398595655283615 + ], + [ + 0.4538544447944925, + 0.18325978318988173, + -0.027916333963819928 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.212391570768254 + }, + { + "marker_id": 75, + "link": "Board", + "position_m": [ + -0.02733332392195131, + 0.19250946762819654, + -0.026105191756293493 + ], + "position_mm": [ + -27.33332392195131, + 192.50946762819655, + -26.105191756293493 + ], + "normal": [ + -0.015591456672604828, + 0.027380262228444585, + 0.9995034905987712 + ], + "corners_m": [ + [ + -0.039632794240308244, + 0.1818324120058419, + -0.025943143130120236 + ], + [ + -0.03826878856566006, + 0.20507182277724684, + -0.026682040816382094 + ], + [ + -0.015172046285233508, + 0.20313583382750997, + -0.02614410310101719 + ], + [ + -0.01625966659660343, + 0.17999780190218734, + -0.02565147997765447 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.27268988675464 + }, + { + "marker_id": 85, + "link": "Board", + "position_m": [ + 0.5063396802870157, + -0.3135214763433817, + -0.027594468153602107 + ], + "position_mm": [ + 506.3396802870157, + -313.52147634338166, + -27.594468153602108 + ], + "normal": [ + -0.006990534975307135, + -0.014190489550252539, + 0.9998748733852068 + ], + "corners_m": [ + [ + 0.4940710355094577, + -0.3247132382913153, + -0.027625657177304284 + ], + [ + 0.49514756050654757, + -0.3012518246895481, + -0.027717674370342973 + ], + [ + 0.518290444991102, + -0.3026956342433219, + -0.027131069440025753 + ], + [ + 0.5178496801409558, + -0.3254252081493413, + -0.027903471626735434 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.30486593470645 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18652665304347865, + -0.27682696831430914, + -0.0274462473034519 + ], + "position_mm": [ + 186.52665304347866, + -276.8269683143091, + -27.446247303451898 + ], + "normal": [ + 0.011134164808346749, + -0.008427872174464722, + 0.9999024959187928 + ], + "corners_m": [ + [ + 0.1753060108774525, + -0.2890244590688937, + -0.027274502713223847 + ], + [ + 0.17412099747766263, + -0.265616408551145, + -0.027364544943970445 + ], + [ + 0.19767070150104946, + -0.2650357863268191, + -0.027314715005614405 + ], + [ + 0.19900890231775, + -0.28763121931037866, + -0.027831226550998903 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.346589847494982 + }, + { + "marker_id": 97, + "link": "Board", + "position_m": [ + 0.30659126058462804, + -0.35823125702289793, + -0.027137100462690647 + ], + "position_mm": [ + 306.59126058462806, + -358.2312570228979, + -27.137100462690647 + ], + "normal": [ + 0.010344817335847445, + 0.006407217059227755, + 0.9999259634212144 + ], + "corners_m": [ + [ + 0.2946161460311364, + -0.36999459282310276, + -0.026654228832496046 + ], + [ + 0.294822884320035, + -0.3461892075844944, + -0.027376882527948815 + ], + [ + 0.3185381562342678, + -0.3468183366049846, + -0.027040741795292193 + ], + [ + 0.3183878557530731, + -0.36992289107900994, + -0.027476548695025523 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.60960873094876 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6506322993203831, + -0.22404420835307964, + -0.027083346484058766 + ], + "position_mm": [ + 650.6322993203831, + -224.04420835307965, + -27.083346484058765 + ], + "normal": [ + 0.007453559265215193, + -0.04325842158104699, + 0.9990361121684223 + ], + "corners_m": [ + [ + 0.638710707258843, + -0.23493804511008234, + -0.02725591213895623 + ], + [ + 0.6394722593076244, + -0.21238711834152707, + -0.026710930731421133 + ], + [ + 0.6622639251261075, + -0.21317600144133933, + -0.02648361212968244 + ], + [ + 0.6620823055889574, + -0.23567566851936983, + -0.027882930936175266 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.82808024331435 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10450490649134064, + -0.19055165942464958, + -0.02732681634700888 + ], + "position_mm": [ + 104.50490649134065, + -190.55165942464959, + -27.32681634700888 + ], + "normal": [ + -0.016106448373477866, + -0.003226242275362612, + 0.9998650777387783 + ], + "corners_m": [ + [ + 0.09278519111897644, + -0.20230209238685654, + -0.027605897529795028 + ], + [ + 0.09269147791608656, + -0.17897951810570426, + -0.027426726375218823 + ], + [ + 0.11607512643599895, + -0.17871278692838646, + -0.027154883937595856 + ], + [ + 0.11646783049430066, + -0.20221224027765103, + -0.027119757545425813 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.475189986928758 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.30949986975557525, + -0.15622653543753462, + 0.15835060952761615 + ], + "position_mm": [ + 309.4998697555753, + -156.2265354375346, + 158.35060952761614 + ], + "normal": [ + -0.345230075870416, + -0.7416847793581353, + 0.5750825008492095 + ], + "corners_m": [ + [ + 0.29811051355913454, + -0.1456302886295197, + 0.1650509288287165 + ], + [ + 0.320409764481447, + -0.15182842822561946, + 0.17069908661936692 + ], + [ + 0.32097367361986123, + -0.1668176319758691, + 0.15145262288362124 + ], + [ + 0.29850552736185826, + -0.1606297929191302, + 0.14619979977876002 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.05202120897256 + }, + { + "marker_id": 205, + "link": "Board", + "position_m": [ + 0.7522864761629531, + -0.0908124559745079, + 0.0008870449859709909 + ], + "position_mm": [ + 752.286476162953, + -90.8124559745079, + 0.8870449859709909 + ], + "normal": [ + -0.01491644266427506, + -0.028263746611815514, + 0.9994891997243924 + ], + "corners_m": [ + [ + 0.7410207214314708, + -0.07877501566903286, + 0.0004942482391278989 + ], + [ + 0.763021651073034, + -0.08016728058282391, + 0.0019727039654060478 + ], + [ + 0.7645804923971876, + -0.10164298920325765, + 0.00019117690202857826 + ], + [ + 0.7405230397501202, + -0.10266453844291722, + 0.0008900508373214385 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.92187474337055 + }, + { + "marker_id": 206, + "link": "Board", + "position_m": [ + 0.6500000814765554, + -0.010119256498941923, + 0.00042321635657145365 + ], + "position_mm": [ + 650.0000814765555, + -10.119256498941922, + 0.4232163565714536 + ], + "normal": [ + 0.011592821740882445, + -0.007759304215309904, + 0.9999026951069682 + ], + "corners_m": [ + [ + 0.6383081225600975, + 0.0013785011640512724, + 0.0006024455240636259 + ], + [ + 0.6615704626944585, + 0.0017490939301256006, + 0.00042655368077619 + ], + [ + 0.6617018160883879, + -0.02165869377987186, + 0.0001526571045244104 + ], + [ + 0.6384199245632778, + -0.021945927310072704, + 0.0005112091169215882 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.321753530436958 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.021717162884271023, + -0.02027482982275059, + 0.0008960635038753245 + ], + "position_mm": [ + 21.717162884271023, + -20.27482982275059, + 0.8960635038753245 + ], + "normal": [ + -0.022280235685247684, + -0.0006814923614278935, + 0.9997515324649277 + ], + "corners_m": [ + [ + 0.009436167829839687, + -0.008810033621827603, + 0.0005706445301922743 + ], + [ + 0.0333857517927066, + -0.008826562872614845, + 0.0012245580210935752 + ], + [ + 0.034029715631190983, + -0.031528392563958646, + 0.0011023127487103156 + ], + [ + 0.010017016283346827, + -0.031934330232601275, + 0.0006867387155051332 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.455353199493423 + }, + { + "marker_id": 211, + "link": "Board", + "position_m": [ + 0.2530065866788742, + -0.009078967052198496, + 0.0002376119420386636 + ], + "position_mm": [ + 253.0065866788742, + -9.078967052198497, + 0.2376119420386636 + ], + "normal": [ + 0.03042550068248083, + -0.009720333478128397, + 0.9994897718462628 + ], + "corners_m": [ + [ + 0.24136623721995637, + 0.002850179394630775, + 0.0005813893433372668 + ], + [ + 0.2654058209981499, + 0.001933732747426273, + 9.756259486912603e-05 + ], + [ + 0.26496436392725625, + -0.020677306700458958, + -0.00036621710184547444 + ], + [ + 0.2402899245701341, + -0.020422473650392074, + 0.0006377129317937359 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.66894498028794 + }, + { + "marker_id": 214, + "link": "Board", + "position_m": [ + 0.3478139662502992, + -0.011689059499792712, + 0.0011942742591823064 + ], + "position_mm": [ + 347.8139662502992, + -11.689059499792712, + 1.1942742591823063 + ], + "normal": [ + 0.017934506898424955, + -0.04241325340326119, + 0.9989391720210301 + ], + "corners_m": [ + [ + 0.33620163616912896, + -0.0002794545980037367, + 0.0018627240956748407 + ], + [ + 0.35953174307687874, + -0.000865515740947479, + 0.0014683968248258633 + ], + [ + 0.3598937712787591, + -0.02288182696623332, + 0.0004781755623421224 + ], + [ + 0.33562871447643, + -0.022729440693986313, + 0.0009678005538863992 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.031983483548874 + }, + { + "marker_id": 215, + "link": "Board", + "position_m": [ + 0.25042025949499297, + -0.08847065880633932, + 0.0002855341851703378 + ], + "position_mm": [ + 250.42025949499296, + -88.47065880633932, + 0.28553418517033785 + ], + "normal": [ + -0.01815665594731763, + -0.009888596798264981, + 0.9997862529051759 + ], + "corners_m": [ + [ + 0.23914734210610256, + -0.07599756188601692, + 0.0001214116699956801 + ], + [ + 0.262490747221959, + -0.07784321863282265, + 0.000694555600539444 + ], + [ + 0.2618991412619549, + -0.10068622634043879, + 0.0002898402626501584 + ], + [ + 0.23814380738995547, + -0.09935562836607893, + 3.63292074960689e-05 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.36280218717181 + }, + { + "marker_id": 231, + "link": "Ellbow", + "position_m": [ + 0.3181279544734382, + -0.018690105434870683, + 0.3157597350010689 + ], + "position_mm": [ + 318.12795447343825, + -18.690105434870684, + 315.7597350010689 + ], + "normal": [ + 0.02862980531096407, + -0.0711073197318074, + 0.997057713138219 + ], + "corners_m": [ + [ + 0.3058463554372685, + -0.007306802398638204, + 0.317159271979887 + ], + [ + 0.32981054958999045, + -0.006400015833296374, + 0.3160653722314684 + ], + [ + 0.33042400516398, + -0.03008935587610088, + 0.31482907138786814 + ], + [ + 0.3064309077025141, + -0.03096424763144727, + 0.3149852244050522 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.8774150117515 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.22940656352294062, + -0.03948542179647571, + 0.3087750660701777 + ], + "position_mm": [ + 229.40656352294062, + -39.48542179647571, + 308.7750660701777 + ], + "normal": [ + 0.0057850189936942496, + -0.508179927641869, + 0.8612314988997718 + ], + "corners_m": [ + [ + 0.2176180256846823, + -0.029261677236136263, + 0.3149186708675925 + ], + [ + 0.24139507591412532, + -0.02932785333654045, + 0.31465667728398883 + ], + [ + 0.24115719872839644, + -0.04984026738577321, + 0.30261768901910935 + ], + [ + 0.21745595376455842, + -0.049511889227452935, + 0.30290722711002 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.703636008774442 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.31915726330257976, + -0.047617849517677065, + 0.30015535750970457 + ], + "position_mm": [ + 319.15726330257974, + -47.617849517677065, + 300.1553575097046 + ], + "normal": [ + -0.014352249703834898, + -0.7744265458175568, + 0.6325010182296359 + ], + "corners_m": [ + [ + 0.3068999670169822, + -0.040433129297035034, + 0.30891950919277933 + ], + [ + 0.33065132286078897, + -0.04039451461549494, + 0.3090324514996498 + ], + [ + 0.33162457749928714, + -0.055576051385884846, + 0.29091857322652453 + ], + [ + 0.3074531858332608, + -0.05406770277229345, + 0.2917508961198646 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.392484898002564 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.28094322651063713, + -0.04384897699101091, + 0.30483196085075337 + ], + "position_mm": [ + 280.94322651063715, + -43.84897699101091, + 304.8319608507534 + ], + "normal": [ + 0.0049745094686569685, + -0.7708684997567288, + 0.636974889880564 + ], + "corners_m": [ + [ + 0.2685890144857932, + -0.03654036469449366, + 0.31350028256031715 + ], + [ + 0.2924501118389883, + -0.035925062114879634, + 0.31459765444229165 + ], + [ + 0.29325780479878927, + -0.05109227042388532, + 0.29570281076434063 + ], + [ + 0.26947597491897785, + -0.05183821073078505, + 0.2955270956360641 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.887487691420695 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/aruco_positions_initial.json b/data/camera_study/Scene10/k3_abf/aruco_positions_initial.json new file mode 100644 index 0000000..8e87381 --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/aruco_positions_initial.json @@ -0,0 +1,562 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:18:57Z", + "summary": { + "num_cameras": 3, + "num_markers": 26, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "position_m": [ + 0.3437251241398752, + -0.2880518570653535, + -0.027336175680837974 + ], + "position_mm": [ + 343.7251241398752, + -288.05185706535354, + -27.336175680837975 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16785854357163119, + -0.17315579742762638, + -0.027341000491546467 + ], + "position_mm": [ + 167.85854357163117, + -173.15579742762637, + -27.341000491546467 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4887969373394409, + 0.2151519019436198, + -0.027344778657349317 + ], + "position_mm": [ + 488.7969373394409, + 215.1519019436198, + -27.344778657349316 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3399007685346788, + -0.32741013108724015, + -0.02754239461514119 + ], + "position_mm": [ + 339.90076853467883, + -327.41013108724013, + -27.542394615141188 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.284542628458916, + -0.2609142429326301, + -0.027523444076098025 + ], + "position_mm": [ + 284.542628458916, + -260.9142429326301, + -27.523444076098023 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.4016442754970195, + -0.17304360384293327, + -0.02782735644960473 + ], + "position_mm": [ + 401.64427549701946, + -173.04360384293327, + -27.82735644960473 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.019583400771359276, + -0.1888305609196817, + -0.02823846532607405 + ], + "position_mm": [ + -19.583400771359276, + -188.8305609196817, + -28.23846532607405 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005437878298835949, + -0.27719563632950794, + -0.028747015326655703 + ], + "position_mm": [ + 5.437878298835949, + -277.1956363295079, + -28.747015326655703 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4418532539715914, + 0.19413790567464606, + -0.027882661763834013 + ], + "position_mm": [ + 441.8532539715914, + 194.13790567464605, + -27.88266176383401 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027390253334127496, + 0.19253937360267048, + -0.025965078296917538 + ], + "position_mm": [ + -27.390253334127497, + 192.53937360267048, + -25.96507829691754 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5063530924316049, + -0.3135538253142812, + -0.02766300592122651 + ], + "position_mm": [ + 506.35309243160486, + -313.5538253142812, + -27.66300592122651 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18662820880639008, + -0.2766962770611542, + -0.027457045100409562 + ], + "position_mm": [ + 186.6282088063901, + -276.6962770611542, + -27.457045100409562 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.30660433344953525, + -0.35825402004545726, + -0.027246402971970632 + ], + "position_mm": [ + 306.60433344953526, + -358.25402004545725, + -27.24640297197063 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6506496658425812, + -0.22406775861996026, + -0.027142007301685093 + ], + "position_mm": [ + 650.6496658425813, + -224.06775861996024, + -27.142007301685094 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10456229275120435, + -0.19034887967147093, + -0.027147622219092876 + ], + "position_mm": [ + 104.56229275120435, + -190.34887967147094, + -27.147622219092874 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3088928580879901, + -0.15643470938822562, + 0.1584966868546083 + ], + "position_mm": [ + 308.89285808799013, + -156.43470938822563, + 158.4966868546083 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7523091316145816, + -0.0908295201086147, + 0.000834633856532585 + ], + "position_mm": [ + 752.3091316145816, + -90.8295201086147, + 0.8346338565325849 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500135896057839, + -0.010136006087639692, + 0.00037332949430560306 + ], + "position_mm": [ + 650.013589605784, + -10.136006087639691, + 0.3733294943056031 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021586136197409667, + -0.020230171447986223, + 0.0011640471470370068 + ], + "position_mm": [ + 21.58613619740967, + -20.230171447986223, + 1.1640471470370068 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25300004414982186, + -0.009074606313736522, + 0.00016276608304794952 + ], + "position_mm": [ + 253.00004414982186, + -9.074606313736522, + 0.1627660830479495 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.34782586912632224, + -0.011675676699665745, + 0.0011163084924605883 + ], + "position_mm": [ + 347.82586912632223, + -11.675676699665745, + 1.1163084924605882 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25041920016634434, + -0.08847728419421877, + 0.0002108696475885868 + ], + "position_mm": [ + 250.41920016634432, + -88.47728419421877, + 0.21086964758858678 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.31814418950007245, + -0.018667115816921015, + 0.31569076123152473 + ], + "position_mm": [ + 318.14418950007246, + -18.667115816921015, + 315.69076123152473 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.22799483997378076, + -0.03999951767550287, + 0.30914420610618387 + ], + "position_mm": [ + 227.99483997378076, + -39.999517675502865, + 309.14420610618384 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.31782474092135893, + -0.048088089880697654, + 0.3003235767699683 + ], + "position_mm": [ + 317.8247409213589, + -48.08808988069765, + 300.32357676996827 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2796467080466959, + -0.044322090402926444, + 0.3050079005902346 + ], + "position_mm": [ + 279.6467080466959, + -44.32209040292644, + 305.00790059023456 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/aruco_positions_optimized.json b/data/camera_study/Scene10/k3_abf/aruco_positions_optimized.json new file mode 100644 index 0000000..afb6aaf --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/aruco_positions_optimized.json @@ -0,0 +1,561 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:18:58Z", + "summary": { + "num_cameras": 3, + "num_markers": 26, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "position_m": [ + 0.344872227980913, + -0.285073897939649, + -0.03143016651550026 + ], + "position_mm": [ + 344.872227980913, + -285.073897939649, + -31.430166515500265 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16700631887332593, + -0.17444926210749503, + -0.025891896354220702 + ], + "position_mm": [ + 167.00631887332594, + -174.44926210749503, + -25.8918963542207 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.48779727201417955, + 0.2133454849240495, + -0.02479275348533003 + ], + "position_mm": [ + 487.79727201417955, + 213.34548492404952, + -24.79275348533003 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3398750501871461, + -0.3285630089908697, + -0.026142418289381908 + ], + "position_mm": [ + 339.8750501871461, + -328.5630089908697, + -26.142418289381908 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2845919289905986, + -0.2608369780414383, + -0.02763534277536527 + ], + "position_mm": [ + 284.5919289905986, + -260.8369780414383, + -27.63534277536527 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.4016644069779143, + -0.17304943837477102, + -0.027828213389374825 + ], + "position_mm": [ + 401.66440697791427, + -173.04943837477103, + -27.828213389374824 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01965977228731217, + -0.1884068861653073, + -0.028581807301438677 + ], + "position_mm": [ + -19.65977228731217, + -188.4068861653073, + -28.581807301438676 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005387783813752628, + -0.27718561529635405, + -0.028725518417530446 + ], + "position_mm": [ + 5.387783813752628, + -277.18561529635406, + -28.725518417530445 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.442768900428819, + 0.1955280319745608, + -0.029750639362916352 + ], + "position_mm": [ + 442.768900428819, + 195.5280319745608, + -29.750639362916353 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027448885668632163, + 0.1926398437810037, + -0.026109561869874075 + ], + "position_mm": [ + -27.448885668632162, + 192.63984378100372, + -26.109561869874074 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.506351081186413, + -0.31353395946887236, + -0.027654667111455335 + ], + "position_mm": [ + 506.351081186413, + -313.53395946887235, + -27.654667111455336 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.186545851078748, + -0.27617288981820337, + -0.028166175075422083 + ], + "position_mm": [ + 186.545851078748, + -276.1728898182034, + -28.166175075422082 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.3041012147597672, + -0.3601778877311039, + -0.024069200263459135 + ], + "position_mm": [ + 304.1012147597672, + -360.17788773110385, + -24.069200263459134 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6506496532964678, + -0.22406764829245043, + -0.02714195869540798 + ], + "position_mm": [ + 650.6496532964678, + -224.06764829245043, + -27.14195869540798 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10491566403682026, + -0.18996136261885396, + -0.027787598978289058 + ], + "position_mm": [ + 104.91566403682026, + -189.96136261885397, + -27.787598978289058 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.30965492124044636, + -0.15596107363559772, + 0.15797558142572546 + ], + "position_mm": [ + 309.65492124044636, + -155.96107363559773, + 157.97558142572547 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7523093215211043, + -0.09083060961463339, + 0.0008346340150468042 + ], + "position_mm": [ + 752.3093215211043, + -90.83060961463339, + 0.8346340150468042 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500123085938552, + -0.010129749719406483, + 0.0003763093512072362 + ], + "position_mm": [ + 650.0123085938552, + -10.129749719406483, + 0.37630935120723624 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021557510339485133, + -0.020545166296238707, + 0.0012491713748413356 + ], + "position_mm": [ + 21.557510339485134, + -20.54516629623871, + 1.2491713748413356 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25309340711613837, + -0.008692479028847573, + -0.00011457923176328382 + ], + "position_mm": [ + 253.09340711613837, + -8.692479028847574, + -0.11457923176328381 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.347807910175868, + -0.011649294441395425, + 0.0011185463630914389 + ], + "position_mm": [ + 347.80791017586796, + -11.649294441395424, + 1.118546363091439 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.2503001632101795, + -0.08864128819362872, + 0.0005062843649424625 + ], + "position_mm": [ + 250.3001632101795, + -88.64128819362872, + 0.5062843649424625 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.3178066697150719, + -0.021322238874038946, + 0.3134795864903713 + ], + "position_mm": [ + 317.80666971507185, + -21.322238874038945, + 313.4795864903713 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.22916700510228374, + -0.03948904278962731, + 0.3086720540374003 + ], + "position_mm": [ + 229.16700510228375, + -39.48904278962731, + 308.6720540374003 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.31883199824928526, + -0.04470988005227605, + 0.3004562876316581 + ], + "position_mm": [ + 318.8319982492853, + -44.70988005227605, + 300.4562876316581 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2815490392367006, + -0.04344116689728757, + 0.30428071051817984 + ], + "position_mm": [ + 281.5490392367006, + -43.441166897287566, + 304.28071051817983 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/render_a_aruco_detection.json b/data/camera_study/Scene10/k3_abf/render_a_aruco_detection.json new file mode 100644 index 0000000..942c367 --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/render_a_aruco_detection.json @@ -0,0 +1,2330 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:54Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "a", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.npz", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.png", + "image_sha256": "3fda1f21fe402f6ca45be61726fe8bc4ff11185ad27638be512a8f4f598b0fe5", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 26, + "num_rejected_candidates": 35 + }, + "detections": [ + { + "observation_id": "d8c9f7dd-3f56-48e1-a728-6d85ac837deb", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 547.0 + ], + [ + 939.0, + 530.0 + ], + [ + 956.0, + 571.0 + ], + [ + 917.0, + 588.0 + ] + ], + "center_px": [ + 928.0, + 559.0 + ], + "quality": { + "area_px": 1888.0, + "perimeter_px": 173.85755157470703, + "sharpness": { + "laplacian_var": 865.6237972020846 + }, + "contrast": { + "p05": 50.0, + "p95": 187.0, + "dynamic_range": 137.0, + "mean_gray": 87.40342679127725, + "std_gray": 54.46998248000789 + }, + "geometry": { + "distance_to_center_norm": 0.23207330703735352, + "distance_to_border_px": 484.0 + }, + "edge_ratio": 1.0432630581405598, + "edge_lengths_px": [ + 42.54409408569336, + 44.384681701660156, + 42.54409408569336, + 44.384681701660156 + ] + }, + "confidence": 0.9585310168868925 + }, + { + "observation_id": "48f77480-99de-40f8-8214-178ff586ac55", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 739.0, + 242.0 + ], + [ + 774.0, + 228.0 + ], + [ + 792.0, + 270.0 + ], + [ + 757.0, + 283.0 + ] + ], + "center_px": [ + 765.5, + 255.75 + ], + "quality": { + "area_px": 1695.5, + "perimeter_px": 165.50432586669922, + "sharpness": { + "laplacian_var": 972.5653279753307 + }, + "contrast": { + "p05": 17.0, + "p95": 182.0, + "dynamic_range": 165.0, + "mean_gray": 106.18205574912892, + "std_gray": 70.67095657404792 + }, + "geometry": { + "distance_to_center_norm": 0.3198539614677429, + "distance_to_border_px": 228.0 + }, + "edge_ratio": 1.2238659987255158, + "edge_lengths_px": [ + 37.6961555480957, + 45.694637298583984, + 37.336307525634766, + 44.777225494384766 + ] + }, + "confidence": 0.8170829167910206 + }, + { + "observation_id": "8dce85af-41a9-499a-abbd-995e0c79669d", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 651.0, + 261.0 + ], + [ + 689.0, + 249.0 + ], + [ + 712.0, + 285.0 + ], + [ + 674.0, + 297.0 + ] + ], + "center_px": [ + 681.5, + 273.0 + ], + "quality": { + "area_px": 1644.0, + "perimeter_px": 165.13947296142578, + "sharpness": { + "laplacian_var": 747.6962819576332 + }, + "contrast": { + "p05": 13.0, + "p95": 180.0, + "dynamic_range": 167.0, + "mean_gray": 76.63693693693693, + "std_gray": 72.66327799511954 + }, + "geometry": { + "distance_to_center_norm": 0.2997349798679352, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.072028219579559, + "edge_lengths_px": [ + 39.84971618652344, + 42.72002029418945, + 39.84971618652344, + 42.72002029418945 + ] + }, + "confidence": 0.9328112653528767 + }, + { + "observation_id": "d3bcbd34-99a3-4561-9093-566c32601ff9", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 880.0, + 1056.0 + ], + [ + 849.0, + 1028.0 + ], + [ + 883.0, + 1007.0 + ], + [ + 913.0, + 1034.0 + ] + ], + "center_px": [ + 881.25, + 1031.25 + ], + "quality": { + "area_px": 1577.0, + "perimeter_px": 161.7576141357422, + "sharpness": { + "laplacian_var": 779.7184102009837 + }, + "contrast": { + "p05": 14.0, + "p95": 173.0, + "dynamic_range": 159.0, + "mean_gray": 81.89795918367346, + "std_gray": 69.37586032500836 + }, + "geometry": { + "distance_to_center_norm": 0.574486494064331, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.053254572752866, + "edge_lengths_px": [ + 41.773197174072266, + 39.96248245239258, + 40.360870361328125, + 39.66106414794922 + ] + }, + "confidence": 0.45573027871641286 + }, + { + "observation_id": "eef4ef99-542f-4680-bed0-fc032d187cd1", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1154.0, + 1048.0 + ], + [ + 1121.0, + 1020.0 + ], + [ + 1153.0, + 1000.0 + ], + [ + 1185.0, + 1028.0 + ] + ], + "center_px": [ + 1153.25, + 1024.0 + ], + "quality": { + "area_px": 1532.0, + "perimeter_px": 160.4264144897461, + "sharpness": { + "laplacian_var": 789.6627377718634 + }, + "contrast": { + "p05": 9.0, + "p95": 170.0, + "dynamic_range": 161.0, + "mean_gray": 94.95602294455067, + "std_gray": 70.53110441036318 + }, + "geometry": { + "distance_to_center_norm": 0.7217618823051453, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.173112932994049, + "edge_lengths_px": [ + 43.27817153930664, + 37.735923767089844, + 42.52058410644531, + 36.8917350769043 + ] + }, + "confidence": 0.5455570235395628 + }, + { + "observation_id": "ddb61545-7e30-4018-8aea-268c1101bcd8", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 800.0, + 233.0 + ], + [ + 834.0, + 221.0 + ], + [ + 852.0, + 261.0 + ], + [ + 816.0, + 271.0 + ] + ], + "center_px": [ + 825.5, + 246.5 + ], + "quality": { + "area_px": 1552.0, + "perimeter_px": 158.51307678222656, + "sharpness": { + "laplacian_var": 863.8906785031452 + }, + "contrast": { + "p05": 15.0, + "p95": 181.0, + "dynamic_range": 166.0, + "mean_gray": 73.38709677419355, + "std_gray": 69.59383427424181 + }, + "geometry": { + "distance_to_center_norm": 0.34653934836387634, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.2165525994378175, + "edge_lengths_px": [ + 36.055511474609375, + 43.863426208496094, + 37.36308288574219, + 41.231056213378906 + ] + }, + "confidence": 0.8219948734334308 + }, + { + "observation_id": "0ab976d6-f1fd-4004-bd10-51993475b20b", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 656.0, + 1024.0 + ], + [ + 631.0, + 996.0 + ], + [ + 666.0, + 976.0 + ], + [ + 692.0, + 1003.0 + ] + ], + "center_px": [ + 661.25, + 999.75 + ], + "quality": { + "area_px": 1499.0, + "perimeter_px": 157.00859832763672, + "sharpness": { + "laplacian_var": 776.3919478120264 + }, + "contrast": { + "p05": 15.0, + "p95": 173.0, + "dynamic_range": 158.0, + "mean_gray": 113.47134387351778, + "std_gray": 66.47315254195442 + }, + "geometry": { + "distance_to_center_norm": 0.5149872303009033, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1118898476800905, + "edge_lengths_px": [ + 37.53664779663086, + 40.31128692626953, + 37.48332977294922, + 41.67733383178711 + ] + }, + "confidence": 0.8987700853806685 + }, + { + "observation_id": "9a6d95d0-19f8-46c6-92fd-da080d825db2", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1156.0, + 984.0 + ], + [ + 1124.0, + 957.0 + ], + [ + 1153.0, + 939.0 + ], + [ + 1186.0, + 964.0 + ] + ], + "center_px": [ + 1154.75, + 961.0 + ], + "quality": { + "area_px": 1384.5, + "perimeter_px": 153.4569320678711, + "sharpness": { + "laplacian_var": 641.3717713382066 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 48.07235421166307, + "std_gray": 59.88033560428563 + }, + "geometry": { + "distance_to_center_norm": 0.6724274754524231, + "distance_to_border_px": 96.0 + }, + "edge_ratio": 1.2266707527132645, + "edge_lengths_px": [ + 41.86884307861328, + 34.13209533691406, + 41.400482177734375, + 36.055511474609375 + ] + }, + "confidence": 0.7524431457735686 + }, + { + "observation_id": "49aa5c84-5e75-43ca-983a-4bd9798be95c", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 995.0, + 954.0 + ], + [ + 967.0, + 928.0 + ], + [ + 1000.0, + 911.0 + ], + [ + 1028.0, + 936.0 + ] + ], + "center_px": [ + 997.5, + 932.25 + ], + "quality": { + "area_px": 1331.5, + "perimeter_px": 150.4579086303711, + "sharpness": { + "laplacian_var": 806.253992719468 + }, + "contrast": { + "p05": 12.0, + "p95": 170.0, + "dynamic_range": 158.0, + "mean_gray": 85.1743119266055, + "std_gray": 67.17068414131862 + }, + "geometry": { + "distance_to_center_norm": 0.5338727831840515, + "distance_to_border_px": 126.0 + }, + "edge_ratio": 1.0293233343863084, + "edge_lengths_px": [ + 38.20994567871094, + 37.121421813964844, + 37.53664779663086, + 37.58989334106445 + ] + }, + "confidence": 0.8623788434718633 + }, + { + "observation_id": "6c6070a9-c5e9-4ed9-9cf9-7cee155d9055", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 731.0, + 951.0 + ], + [ + 707.0, + 925.0 + ], + [ + 742.0, + 908.0 + ], + [ + 766.0, + 933.0 + ] + ], + "center_px": [ + 736.5, + 929.25 + ], + "quality": { + "area_px": 1312.5, + "perimeter_px": 148.30654907226562, + "sharpness": { + "laplacian_var": 893.1018320987654 + }, + "contrast": { + "p05": 14.0, + "p95": 172.0, + "dynamic_range": 158.0, + "mean_gray": 77.58333333333333, + "std_gray": 66.11167950269201 + }, + "geometry": { + "distance_to_center_norm": 0.432888388633728, + "distance_to_border_px": 129.0 + }, + "edge_ratio": 1.135675442614228, + "edge_lengths_px": [ + 35.38361358642578, + 38.910152435302734, + 34.65544509887695, + 39.357337951660156 + ] + }, + "confidence": 0.7704666026640716 + }, + { + "observation_id": "72dba5e6-989d-4259-8980-5d427855ff4f", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1109.0, + 937.0 + ], + [ + 1078.0, + 911.0 + ], + [ + 1108.0, + 894.0 + ], + [ + 1138.0, + 918.0 + ] + ], + "center_px": [ + 1108.25, + 915.0 + ], + "quality": { + "area_px": 1286.5, + "perimeter_px": 148.03035736083984, + "sharpness": { + "laplacian_var": 849.6744027531824 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 73.16531791907515, + "std_gray": 67.17306919368005 + }, + "geometry": { + "distance_to_center_norm": 0.5997561812400818, + "distance_to_border_px": 143.0 + }, + "edge_ratio": 1.1733657712426009, + "edge_lengths_px": [ + 40.45985794067383, + 34.48188018798828, + 38.41874694824219, + 34.66987228393555 + ] + }, + "confidence": 0.7309457014059588 + }, + { + "observation_id": "476b88a1-8734-460d-9ce3-8c4b71344f21", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 843.0 + ], + [ + 378.0, + 825.0 + ], + [ + 398.0, + 848.0 + ], + [ + 360.0, + 866.0 + ] + ], + "center_px": [ + 369.0, + 845.5 + ], + "quality": { + "area_px": 1234.0, + "perimeter_px": 145.0541877746582, + "sharpness": { + "laplacian_var": 1107.6063181860204 + }, + "contrast": { + "p05": 14.0, + "p95": 171.0, + "dynamic_range": 157.0, + "mean_gray": 78.54927884615384, + "std_gray": 65.48572197917484 + }, + "geometry": { + "distance_to_center_norm": 0.5170324444770813, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.3795367307347286, + "edge_lengths_px": [ + 42.04759216308594, + 30.479501724243164, + 42.04759216308594, + 30.479501724243164 + ] + }, + "confidence": 0.5963354569243849 + }, + { + "observation_id": "e66496ef-a03b-45bc-a9d3-312f596f2d2b", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 841.0 + ], + [ + 1306.0, + 818.0 + ], + [ + 1334.0, + 803.0 + ], + [ + 1364.0, + 826.0 + ] + ], + "center_px": [ + 1335.0, + 822.0 + ], + "quality": { + "area_px": 1094.0, + "perimeter_px": 139.1337547302246, + "sharpness": { + "laplacian_var": 703.797937840674 + }, + "contrast": { + "p05": 9.0, + "p95": 164.0, + "dynamic_range": 155.0, + "mean_gray": 113.10478654592497, + "std_gray": 58.52400257567041 + }, + "geometry": { + "distance_to_center_norm": 0.7517461776733398, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.1900645633213587, + "edge_lengths_px": [ + 37.80211639404297, + 31.764760971069336, + 37.80211639404297, + 31.764760971069336 + ] + }, + "confidence": 0.6128519038478318 + }, + { + "observation_id": "f986abda-e863-4eff-83f2-7e656a4f8be2", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 763.0, + 197.0 + ], + [ + 797.0, + 187.0 + ], + [ + 824.0, + 204.0 + ], + [ + 790.0, + 216.0 + ] + ], + "center_px": [ + 793.5, + 201.0 + ], + "quality": { + "area_px": 909.0, + "perimeter_px": 136.41686248779297, + "sharpness": { + "laplacian_var": 1069.7927531569794 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 91.46811819595645, + "std_gray": 62.54740157586658 + }, + "geometry": { + "distance_to_center_norm": 0.38541823625564575, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.130050277403289, + "edge_lengths_px": [ + 35.44009017944336, + 31.906112670898438, + 36.055511474609375, + 33.0151481628418 + ] + }, + "confidence": 0.5362593259058441 + }, + { + "observation_id": "96a30b04-4a4c-47bf-b184-46d12d04d72c", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 943.0, + 784.0 + ], + [ + 970.0, + 761.0 + ], + [ + 976.0, + 794.0 + ], + [ + 950.0, + 816.0 + ] + ], + "center_px": [ + 959.75, + 788.75 + ], + "quality": { + "area_px": 1007.5, + "perimeter_px": 135.82476806640625, + "sharpness": { + "laplacian_var": 990.0324116822271 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 69.03362573099415, + "std_gray": 62.62781348056947 + }, + "geometry": { + "distance_to_center_norm": 0.3838669955730438, + "distance_to_border_px": 264.0 + }, + "edge_ratio": 1.0827805673411812, + "edge_lengths_px": [ + 35.46829605102539, + 33.541019439697266, + 34.058773040771484, + 32.75667953491211 + ] + }, + "confidence": 0.6203165137290706 + }, + { + "observation_id": "c5558330-35de-4a1f-811a-07de050c1a57", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 736.0, + 748.0 + ], + [ + 769.0, + 734.0 + ], + [ + 791.0, + 755.0 + ], + [ + 758.0, + 770.0 + ] + ], + "center_px": [ + 763.5, + 751.75 + ], + "quality": { + "area_px": 1028.5, + "perimeter_px": 133.62254524230957, + "sharpness": { + "laplacian_var": 740.3312400344904 + }, + "contrast": { + "p05": 9.0, + "p95": 168.0, + "dynamic_range": 159.0, + "mean_gray": 80.6958981612447, + "std_gray": 67.7872078040809 + }, + "geometry": { + "distance_to_center_norm": 0.24019105732440948, + "distance_to_border_px": 310.0 + }, + "edge_ratio": 1.1918643121358203, + "edge_lengths_px": [ + 35.84689712524414, + 30.4138126373291, + 36.24913787841797, + 31.11269760131836 + ] + }, + "confidence": 0.5752892000247514 + }, + { + "observation_id": "57885f2b-31fc-4254-8cd9-3915c89e001a", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1296.0, + 787.0 + ], + [ + 1266.0, + 766.0 + ], + [ + 1291.0, + 751.0 + ], + [ + 1321.0, + 771.0 + ] + ], + "center_px": [ + 1293.5, + 768.75 + ], + "quality": { + "area_px": 977.5, + "perimeter_px": 131.51158332824707, + "sharpness": { + "laplacian_var": 482.2934957475995 + }, + "contrast": { + "p05": 7.0, + "p95": 157.0, + "dynamic_range": 150.0, + "mean_gray": 38.02962962962963, + "std_gray": 51.115372876535595 + }, + "geometry": { + "distance_to_center_norm": 0.6860414743423462, + "distance_to_border_px": 119.0 + }, + "edge_ratio": 1.2560441794117048, + "edge_lengths_px": [ + 36.619667053222656, + 29.154760360717773, + 36.055511474609375, + 29.681644439697266 + ] + }, + "confidence": 0.5188246379772157 + }, + { + "observation_id": "393335f9-31c3-44ff-8c7e-e48d1ce7b99e", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 664.0, + 678.0 + ], + [ + 696.0, + 665.0 + ], + [ + 717.0, + 685.0 + ], + [ + 684.0, + 698.0 + ] + ], + "center_px": [ + 690.25, + 681.5 + ], + "quality": { + "area_px": 916.5, + "perimeter_px": 127.29240036010742, + "sharpness": { + "laplacian_var": 950.4938833487939 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 81.41071428571429, + "std_gray": 66.26803955921937 + }, + "geometry": { + "distance_to_center_norm": 0.1606595665216446, + "distance_to_border_px": 382.0 + }, + "edge_ratio": 1.25399363306104, + "edge_lengths_px": [ + 34.539833068847656, + 29.0, + 35.46829605102539, + 28.284271240234375 + ] + }, + "confidence": 0.4872433032283655 + }, + { + "observation_id": "502e5be4-b566-4f8f-802e-d4a51c071aad", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 132.0, + 733.0 + ], + [ + 120.0, + 713.0 + ], + [ + 156.0, + 700.0 + ], + [ + 169.0, + 720.0 + ] + ], + "center_px": [ + 144.25, + 716.5 + ], + "quality": { + "area_px": 892.5, + "perimeter_px": 124.6701889038086, + "sharpness": { + "laplacian_var": 1275.08402176 + }, + "contrast": { + "p05": 10.200000000000003, + "p95": 164.0, + "dynamic_range": 153.8, + "mean_gray": 105.7888, + "std_gray": 57.0930485660032 + }, + "geometry": { + "distance_to_center_norm": 0.6691069006919861, + "distance_to_border_px": 120.0 + }, + "edge_ratio": 1.6814297415391983, + "edge_lengths_px": [ + 23.323806762695312, + 38.27531814575195, + 23.853721618652344, + 39.217342376708984 + ] + }, + "confidence": 0.3538655141518615 + }, + { + "observation_id": "1d251664-77cc-470e-8533-a694951eaf60", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 624.0 + ], + [ + 815.0, + 612.0 + ], + [ + 837.0, + 630.0 + ], + [ + 807.0, + 643.0 + ] + ], + "center_px": [ + 811.25, + 627.25 + ], + "quality": { + "area_px": 814.5, + "perimeter_px": 120.82522010803223, + "sharpness": { + "laplacian_var": 1125.3635571955213 + }, + "contrast": { + "p05": 8.0, + "p95": 149.0, + "dynamic_range": 141.0, + "mean_gray": 86.07050092764378, + "std_gray": 55.3312393682571 + }, + "geometry": { + "distance_to_center_norm": 0.14027805626392365, + "distance_to_border_px": 437.0 + }, + "edge_ratio": 1.1545204961681088, + "edge_lengths_px": [ + 31.38471031188965, + 28.42534065246582, + 32.69556427001953, + 28.319604873657227 + ] + }, + "confidence": 0.4703251278796996 + }, + { + "observation_id": "be7378d3-b619-4a5a-8e73-d76b8e65e13c", + "type": "aruco", + "marker_id": 74, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 344.0, + 702.0 + ], + [ + 330.0, + 683.0 + ], + [ + 364.0, + 671.0 + ], + [ + 379.0, + 689.0 + ] + ], + "center_px": [ + 354.25, + 686.25 + ], + "quality": { + "area_px": 819.5, + "perimeter_px": 120.42341613769531, + "sharpness": { + "laplacian_var": 1054.273602937478 + }, + "contrast": { + "p05": 7.0, + "p95": 158.0, + "dynamic_range": 151.0, + "mean_gray": 89.94680851063829, + "std_gray": 62.538561214266565 + }, + "geometry": { + "distance_to_center_norm": 0.4376735985279083, + "distance_to_border_px": 330.0 + }, + "edge_ratio": 1.593474715740479, + "edge_lengths_px": [ + 23.600847244262695, + 36.055511474609375, + 23.430749893188477, + 37.336307525634766 + ] + }, + "confidence": 0.3428566063437381 + }, + { + "observation_id": "f11c43de-f8b2-4eca-97e3-940d62624055", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1374.0, + 670.0 + ], + [ + 1347.0, + 651.0 + ], + [ + 1371.0, + 639.0 + ], + [ + 1398.0, + 658.0 + ] + ], + "center_px": [ + 1372.5, + 654.5 + ], + "quality": { + "area_px": 780.0, + "perimeter_px": 119.69592666625977, + "sharpness": { + "laplacian_var": 1109.98644924121 + }, + "contrast": { + "p05": 10.700000000000003, + "p95": 158.0, + "dynamic_range": 147.3, + "mean_gray": 106.3378640776699, + "std_gray": 52.12042090245902 + }, + "geometry": { + "distance_to_center_norm": 0.7360777258872986, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2304019519874827, + "edge_lengths_px": [ + 33.0151481628418, + 26.832815170288086, + 33.0151481628418, + 26.832815170288086 + ] + }, + "confidence": 0.35500593874581543 + }, + { + "observation_id": "6b8306b7-468c-4e11-b6a7-3467f205f487", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1196.0, + 524.0 + ], + [ + 1220.0, + 514.0 + ], + [ + 1244.0, + 530.0 + ], + [ + 1219.0, + 540.0 + ] + ], + "center_px": [ + 1219.75, + 527.0 + ], + "quality": { + "area_px": 627.0, + "perimeter_px": 109.78808403015137, + "sharpness": { + "laplacian_var": 963.0183950617284 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 73.82444444444444, + "std_gray": 53.419454032550746 + }, + "geometry": { + "distance_to_center_norm": 0.5554656386375427, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.109400382408729, + "edge_lengths_px": [ + 26.0, + 28.844409942626953, + 26.925823211669922, + 28.017850875854492 + ] + }, + "confidence": 0.3767801116964092 + }, + { + "observation_id": "ebf123f8-a03d-4546-b831-a5c78f860cba", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1299.0, + 475.0 + ], + [ + 1322.0, + 465.0 + ], + [ + 1346.0, + 479.0 + ], + [ + 1325.0, + 490.0 + ] + ], + "center_px": [ + 1323.0, + 477.25 + ], + "quality": { + "area_px": 581.5, + "perimeter_px": 106.58796119689941, + "sharpness": { + "laplacian_var": 922.4211295765532 + }, + "contrast": { + "p05": 9.0, + "p95": 150.0, + "dynamic_range": 141.0, + "mean_gray": 80.53125, + "std_gray": 49.781966772569284 + }, + "geometry": { + "distance_to_center_norm": 0.673617959022522, + "distance_to_border_px": 94.0 + }, + "edge_ratio": 1.2661764925954944, + "edge_lengths_px": [ + 25.079872131347656, + 27.784887313842773, + 23.706539154052734, + 30.01666259765625 + ] + }, + "confidence": 0.3061711135325228 + }, + { + "observation_id": "a1de844f-55a9-4576-8de0-8c1867deccc6", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1117.0, + 472.0 + ], + [ + 1139.0, + 461.0 + ], + [ + 1163.0, + 476.0 + ], + [ + 1140.0, + 486.0 + ] + ], + "center_px": [ + 1139.75, + 473.75 + ], + "quality": { + "area_px": 573.0, + "perimeter_px": 104.90438652038574, + "sharpness": { + "laplacian_var": 1036.3509780861898 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 74.53349875930522, + "std_gray": 50.45210729924828 + }, + "geometry": { + "distance_to_center_norm": 0.47216224670410156, + "distance_to_border_px": 277.0 + }, + "edge_ratio": 1.1506375729114486, + "edge_lengths_px": [ + 24.59674835205078, + 28.301942825317383, + 25.079872131347656, + 26.925823211669922 + ] + }, + "confidence": 0.33198985414097737 + }, + { + "observation_id": "10a88355-8526-4dbf-bdc9-3db1d49dc35d", + "type": "aruco", + "marker_id": 184, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 821.0, + 486.0 + ], + [ + 814.0, + 487.0 + ], + [ + 798.0, + 448.0 + ], + [ + 805.0, + 445.0 + ] + ], + "center_px": [ + 809.5, + 466.5 + ], + "quality": { + "area_px": 312.0, + "perimeter_px": 100.85268115997314, + "sharpness": { + "laplacian_var": 2032.911884279329 + }, + "contrast": { + "p05": 22.0, + "p95": 133.5, + "dynamic_range": 111.5, + "mean_gray": 67.10426540284361, + "std_gray": 39.568029255350964 + }, + "geometry": { + "distance_to_center_norm": 0.12868039309978485, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 6.224146785942024, + "edge_lengths_px": [ + 7.071067810058594, + 42.154476165771484, + 7.6157732009887695, + 44.0113639831543 + ] + }, + "confidence": 0.03341823500528502 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 712.0, + 776.0 + ], + [ + 506.0, + 896.0 + ], + [ + 441.0, + 876.0 + ], + [ + 650.0, + 774.0 + ] + ], + "center_px": [ + 577.25, + 830.5 + ], + "area_px": 9331.0 + }, + { + "image_points_px": [ + [ + 1134.0, + 576.0 + ], + [ + 1028.0, + 633.0 + ], + [ + 1010.0, + 609.0 + ], + [ + 1092.0, + 566.0 + ] + ], + "center_px": [ + 1066.0, + 596.0 + ], + "area_px": 3098.0 + }, + { + "image_points_px": [ + [ + 949.0, + 628.0 + ], + [ + 974.0, + 624.0 + ], + [ + 1004.0, + 689.0 + ], + [ + 973.0, + 699.0 + ] + ], + "center_px": [ + 975.0, + 660.0 + ], + "area_px": 2093.0 + }, + { + "image_points_px": [ + [ + 919.0, + 792.0 + ], + [ + 944.0, + 814.0 + ], + [ + 912.0, + 829.0 + ], + [ + 888.0, + 806.0 + ] + ], + "center_px": [ + 915.75, + 810.25 + ], + "area_px": 1064.0 + }, + { + "image_points_px": [ + [ + 964.0, + 655.0 + ], + [ + 985.0, + 654.0 + ], + [ + 1002.0, + 682.0 + ], + [ + 976.0, + 691.0 + ] + ], + "center_px": [ + 981.75, + 670.5 + ], + "area_px": 824.5 + }, + { + "image_points_px": [ + [ + 1299.0, + 626.0 + ], + [ + 1321.0, + 614.0 + ], + [ + 1348.0, + 632.0 + ], + [ + 1326.0, + 644.0 + ] + ], + "center_px": [ + 1323.5, + 629.0 + ], + "area_px": 720.0 + }, + { + "image_points_px": [ + [ + 92.0, + 604.0 + ], + [ + 58.0, + 618.0 + ], + [ + 46.0, + 601.0 + ], + [ + 78.0, + 589.0 + ] + ], + "center_px": [ + 68.5, + 603.0 + ], + "area_px": 697.0 + }, + { + "image_points_px": [ + [ + 180.0, + 565.0 + ], + [ + 147.0, + 577.0 + ], + [ + 137.0, + 560.0 + ], + [ + 168.0, + 550.0 + ] + ], + "center_px": [ + 158.0, + 563.0 + ], + "area_px": 633.0 + }, + { + "image_points_px": [ + [ + 871.0, + 624.0 + ], + [ + 879.0, + 625.0 + ], + [ + 895.0, + 667.0 + ], + [ + 885.0, + 663.0 + ] + ], + "center_px": [ + 882.5, + 644.75 + ], + "area_px": 327.0 + }, + { + "image_points_px": [ + [ + 1217.0, + 427.0 + ], + [ + 1239.0, + 418.0 + ], + [ + 1261.0, + 431.0 + ], + [ + 1241.0, + 441.0 + ] + ], + "center_px": [ + 1239.5, + 429.25 + ], + "area_px": 502.0 + }, + { + "image_points_px": [ + [ + 385.0, + 633.0 + ], + [ + 402.0, + 652.0 + ], + [ + 378.0, + 660.0 + ], + [ + 362.0, + 643.0 + ] + ], + "center_px": [ + 381.75, + 647.0 + ], + "area_px": 571.5 + }, + { + "image_points_px": [ + [ + 717.0, + 471.0 + ], + [ + 742.0, + 462.0 + ], + [ + 760.0, + 475.0 + ], + [ + 736.0, + 485.0 + ] + ], + "center_px": [ + 738.75, + 473.25 + ], + "area_px": 506.5 + }, + { + "image_points_px": [ + [ + 488.0, + 732.0 + ], + [ + 459.0, + 747.0 + ], + [ + 447.0, + 740.0 + ], + [ + 480.0, + 724.0 + ] + ], + "center_px": [ + 468.5, + 735.75 + ], + "area_px": 387.5 + }, + { + "image_points_px": [ + [ + 751.0, + 438.0 + ], + [ + 776.0, + 430.0 + ], + [ + 792.0, + 443.0 + ], + [ + 768.0, + 452.0 + ] + ], + "center_px": [ + 771.75, + 440.75 + ], + "area_px": 471.0 + }, + { + "image_points_px": [ + [ + 984.0, + 384.0 + ], + [ + 1007.0, + 376.0 + ], + [ + 1024.0, + 388.0 + ], + [ + 1002.0, + 397.0 + ] + ], + "center_px": [ + 1004.25, + 386.25 + ], + "area_px": 430.0 + }, + { + "image_points_px": [ + [ + 1088.0, + 340.0 + ], + [ + 1108.0, + 333.0 + ], + [ + 1127.0, + 343.0 + ], + [ + 1106.0, + 351.0 + ] + ], + "center_px": [ + 1107.25, + 341.75 + ], + "area_px": 354.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 297.0 + ], + [ + 1071.0, + 290.0 + ], + [ + 1089.0, + 300.0 + ], + [ + 1070.0, + 308.0 + ] + ], + "center_px": [ + 1070.25, + 298.75 + ], + "area_px": 343.5 + }, + { + "image_points_px": [ + [ + 1145.0, + 312.0 + ], + [ + 1165.0, + 306.0 + ], + [ + 1182.0, + 316.0 + ], + [ + 1163.0, + 324.0 + ] + ], + "center_px": [ + 1163.75, + 314.5 + ], + "area_px": 337.0 + }, + { + "image_points_px": [ + [ + 1227.0, + 309.0 + ], + [ + 1246.0, + 302.0 + ], + [ + 1264.0, + 312.0 + ], + [ + 1247.0, + 320.0 + ] + ], + "center_px": [ + 1246.0, + 310.75 + ], + "area_px": 331.5 + }, + { + "image_points_px": [ + [ + 935.0, + 285.0 + ], + [ + 955.0, + 278.0 + ], + [ + 972.0, + 287.0 + ], + [ + 952.0, + 295.0 + ] + ], + "center_px": [ + 953.5, + 286.25 + ], + "area_px": 317.5 + }, + { + "image_points_px": [ + [ + 891.0, + 293.0 + ], + [ + 911.0, + 286.0 + ], + [ + 927.0, + 296.0 + ], + [ + 907.0, + 304.0 + ] + ], + "center_px": [ + 909.0, + 294.75 + ], + "area_px": 330.0 + }, + { + "image_points_px": [ + [ + 1018.0, + 751.0 + ], + [ + 1017.0, + 775.0 + ], + [ + 1013.0, + 785.0 + ], + [ + 1005.0, + 755.0 + ] + ], + "center_px": [ + 1013.25, + 766.5 + ], + "area_px": 254.0 + }, + { + "image_points_px": [ + [ + 278.0, + 1016.0 + ], + [ + 276.0, + 1020.0 + ], + [ + 247.0, + 1035.0 + ], + [ + 268.0, + 1019.0 + ] + ], + "center_px": [ + 267.25, + 1022.5 + ], + "area_px": 91.5 + }, + { + "image_points_px": [ + [ + 1273.0, + 316.0 + ], + [ + 1258.0, + 325.0 + ], + [ + 1242.0, + 330.0 + ], + [ + 1245.0, + 326.0 + ] + ], + "center_px": [ + 1254.5, + 324.25 + ], + "area_px": 75.5 + }, + { + "image_points_px": [ + [ + 627.0, + 394.0 + ], + [ + 630.0, + 413.0 + ], + [ + 628.0, + 428.0 + ], + [ + 625.0, + 409.0 + ] + ], + "center_px": [ + 627.5, + 411.0 + ], + "area_px": 83.0 + }, + { + "image_points_px": [ + [ + 356.0, + 962.0 + ], + [ + 333.0, + 980.0 + ], + [ + 330.0, + 980.0 + ], + [ + 348.0, + 965.0 + ] + ], + "center_px": [ + 341.75, + 971.75 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 702.0, + 632.0 + ], + [ + 679.0, + 644.0 + ], + [ + 673.0, + 642.0 + ], + [ + 695.0, + 632.0 + ] + ], + "center_px": [ + 687.25, + 637.5 + ], + "area_px": 94.0 + }, + { + "image_points_px": [ + [ + 1001.0, + 496.0 + ], + [ + 997.0, + 501.0 + ], + [ + 977.0, + 510.0 + ], + [ + 973.0, + 509.0 + ] + ], + "center_px": [ + 987.0, + 504.0 + ], + "area_px": 72.0 + }, + { + "image_points_px": [ + [ + 921.0, + 598.0 + ], + [ + 901.0, + 617.0 + ], + [ + 902.0, + 613.0 + ], + [ + 915.0, + 599.0 + ] + ], + "center_px": [ + 909.75, + 606.75 + ], + "area_px": 66.0 + }, + { + "image_points_px": [ + [ + 68.0, + 1031.0 + ], + [ + 60.0, + 1038.0 + ], + [ + 45.0, + 1046.0 + ], + [ + 50.0, + 1041.0 + ] + ], + "center_px": [ + 55.75, + 1039.0 + ], + "area_px": 40.5 + }, + { + "image_points_px": [ + [ + 842.0, + 934.0 + ], + [ + 834.0, + 942.0 + ], + [ + 823.0, + 947.0 + ], + [ + 820.0, + 946.0 + ] + ], + "center_px": [ + 829.75, + 942.25 + ], + "area_px": 53.0 + }, + { + "image_points_px": [ + [ + 806.0, + 955.0 + ], + [ + 791.0, + 965.0 + ], + [ + 783.0, + 965.0 + ], + [ + 802.0, + 955.0 + ] + ], + "center_px": [ + 795.5, + 960.0 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 342.0, + 1004.0 + ], + [ + 320.0, + 1016.0 + ], + [ + 322.0, + 1012.0 + ], + [ + 330.0, + 1007.0 + ] + ], + "center_px": [ + 328.5, + 1009.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 1340.0, + 651.0 + ], + [ + 1334.0, + 656.0 + ], + [ + 1318.0, + 660.0 + ], + [ + 1329.0, + 652.0 + ] + ], + "center_px": [ + 1330.25, + 654.75 + ], + "area_px": 66.5 + }, + { + "image_points_px": [ + [ + 229.0, + 651.0 + ], + [ + 218.0, + 658.0 + ], + [ + 208.0, + 661.0 + ], + [ + 211.0, + 658.0 + ] + ], + "center_px": [ + 216.5, + 657.0 + ], + "area_px": 35.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/render_a_camera_pose.json b/data/camera_study/Scene10/k3_abf/render_a_camera_pose.json new file mode 100644 index 0000000..49ced0a --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/render_a_camera_pose.json @@ -0,0 +1,467 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:56Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_abf\\render_a_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "a", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 19, + "used_marker_ids": [ + 95, + 97, + 103, + 54, + 55, + 51, + 47, + 210, + 85, + 215, + 105, + 211, + 75, + 214, + 74, + 102, + 217, + 205, + 206 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.01009749778311845, + 0.0013500052634516154, + 0.0012080581027067798, + 0.001208056584232894 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.418903298149159, + "residual_median_px": 2.9058066287550095, + "residual_max_px": 7.881774161943574, + "sigma2_normalized": 1.7330383439497478e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8081126809120178, + -0.5890257358551025, + -0.0016104801325127482 + ], + [ + -0.3439487814903259, + -0.46965670585632324, + -0.8130939602851868 + ], + [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + ], + "translation_m": [ + -0.2276943325996399, + 0.17315705120563507, + 1.1353343725204468 + ], + "rvec_rad": [ + 2.1050851025918234, + -0.6867341612291594, + 0.3507860528401858 + ] + }, + "camera_in_world": { + "position_m": [ + -0.29933083057403564, + -0.7994182705879211, + 0.8013386726379395 + ], + "position_mm": [ + -299.3308410644531, + -799.4182739257812, + 801.3386840820312 + ], + "orientation_deg": { + "roll": 131.5152587890625, + "pitch": -28.5664005279541, + "yaw": -23.05556297302246 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.5705111713147538e-05, + -3.606186641991224e-06, + 9.93455859227922e-07, + 5.974998436558746e-07, + 4.6929081989455075e-07, + 2.8925877037560832e-06 + ], + [ + -3.606186641991253e-06, + 4.525067031199804e-06, + -1.5535915979518367e-06, + -4.146706877795486e-07, + -8.403171882148325e-07, + 3.704138848703875e-08 + ], + [ + 9.93455859228011e-07, + -1.5535915979518793e-06, + 1.4511663564702391e-05, + 8.397716382398054e-07, + -1.8034796850892003e-06, + -4.925606373863842e-06 + ], + [ + 5.974998436558832e-07, + -4.146706877795502e-07, + 8.397716382397962e-07, + 2.430616306834126e-07, + 1.4873676074531513e-08, + 1.58103612736764e-07 + ], + [ + 4.692908198945444e-07, + -8.403171882148285e-07, + -1.8034796850892121e-06, + 1.4873676074530825e-08, + 6.717933155003761e-07, + 1.166485422903723e-06 + ], + [ + 2.892587703756058e-06, + 3.704138848704778e-08, + -4.925606373863879e-06, + 1.5810361273676463e-07, + 1.166485422903725e-06, + 5.922812492193122e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.22706131431744284, + 0.12188075641483156, + 0.21826355925678265 + ], + "tvec_std_m": [ + 0.0004930128098573226, + 0.0008196299869455584, + 0.0024336829070758423 + ] + }, + "camera_center_std_m": [ + 0.0031789461102063005, + 0.004041324498858458, + 0.00434604702092401 + ], + "camera_center_std_mm": [ + 3.1789461102063004, + 4.041324498858458, + 4.3460470209240105 + ], + "orientation_std_deg": { + "roll": 0.2878030578767992, + "pitch": 0.1683177033483575, + "yaw": 0.1374718863525747 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 881.25, + 1031.25 + ], + "projected_center_px": [ + 877.61865234375, + 1028.5360107421875 + ], + "reprojection_error_px": 4.53347807892285, + "confidence": 0.45573027871641286 + }, + { + "marker_id": 97, + "observed_center_px": [ + 1153.25, + 1024.0 + ], + "projected_center_px": [ + 1152.7294921875, + 1027.8443603515625 + ], + "reprojection_error_px": 3.879437445756702, + "confidence": 0.5455570235395628 + }, + { + "marker_id": 103, + "observed_center_px": [ + 661.25, + 999.75 + ], + "projected_center_px": [ + 660.6806030273438, + 996.0768432617188 + ], + "reprojection_error_px": 3.7170274866418533, + "confidence": 0.8987700853806685 + }, + { + "marker_id": 54, + "observed_center_px": [ + 1154.75, + 961.0 + ], + "projected_center_px": [ + 1162.5029296875, + 962.4193115234375 + ], + "reprojection_error_px": 7.881774161943574, + "confidence": 0.7524431457735686 + }, + { + "marker_id": 55, + "observed_center_px": [ + 997.5, + 932.25 + ], + "projected_center_px": [ + 999.1104736328125, + 934.5891723632812 + ], + "reprojection_error_px": 2.8399564551455856, + "confidence": 0.8623788434718633 + }, + { + "marker_id": 51, + "observed_center_px": [ + 736.5, + 929.25 + ], + "projected_center_px": [ + 735.853271484375, + 928.2763061523438 + ], + "reprojection_error_px": 1.1689043938176247, + "confidence": 0.7704666026640716 + }, + { + "marker_id": 47, + "observed_center_px": [ + 1108.25, + 915.0 + ], + "projected_center_px": [ + 1107.45166015625, + 913.0933837890625 + ], + "reprojection_error_px": 2.0670103729610174, + "confidence": 0.7309457014059588 + }, + { + "marker_id": 210, + "observed_center_px": [ + 369.0, + 845.5 + ], + "projected_center_px": [ + 367.08258056640625, + 847.7832641601562 + ], + "reprojection_error_px": 2.98157550791138, + "confidence": 0.5963354569243849 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1335.0, + 822.0 + ], + "projected_center_px": [ + 1332.3167724609375, + 822.3063354492188 + ], + "reprojection_error_px": 2.7006575928524246, + "confidence": 0.6128519038478318 + }, + { + "marker_id": 215, + "observed_center_px": [ + 763.5, + 751.75 + ], + "projected_center_px": [ + 764.8435668945312, + 753.69775390625 + ], + "reprojection_error_px": 2.366203135699148, + "confidence": 0.5752892000247514 + }, + { + "marker_id": 105, + "observed_center_px": [ + 1293.5, + 768.75 + ], + "projected_center_px": [ + 1294.0775146484375, + 765.9021606445312 + ], + "reprojection_error_px": 2.9058066287550095, + "confidence": 0.5188246379772157 + }, + { + "marker_id": 211, + "observed_center_px": [ + 690.25, + 681.5 + ], + "projected_center_px": [ + 687.66943359375, + 684.4354248046875 + ], + "reprojection_error_px": 3.908457721536807, + "confidence": 0.4872433032283655 + }, + { + "marker_id": 75, + "observed_center_px": [ + 144.25, + 716.5 + ], + "projected_center_px": [ + 147.21554565429688, + 715.9539184570312 + ], + "reprojection_error_px": 3.01540479526219, + "confidence": 0.3538655141518615 + }, + { + "marker_id": 214, + "observed_center_px": [ + 811.25, + 627.25 + ], + "projected_center_px": [ + 813.1135864257812, + 626.0042114257812 + ], + "reprojection_error_px": 2.2416385832712016, + "confidence": 0.4703251278796996 + }, + { + "marker_id": 74, + "observed_center_px": [ + 354.25, + 686.25 + ], + "projected_center_px": [ + 353.1841125488281, + 685.2387084960938 + ], + "reprojection_error_px": 1.4692945805517152, + "confidence": 0.3428566063437381 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1372.5, + 654.5 + ], + "projected_center_px": [ + 1370.1954345703125, + 654.4063110351562 + ], + "reprojection_error_px": 2.306469042030312, + "confidence": 0.35500593874581543 + }, + { + "marker_id": 217, + "observed_center_px": [ + 1219.75, + 527.0 + ], + "projected_center_px": [ + 1223.6787109375, + 525.702392578125 + ], + "reprojection_error_px": 4.137457510565784, + "confidence": 0.3767801116964092 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1323.0, + 477.25 + ], + "projected_center_px": [ + 1319.5634765625, + 478.1280212402344 + ], + "reprojection_error_px": 3.5469162147969504, + "confidence": 0.3061711135325228 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1139.75, + 473.75 + ], + "projected_center_px": [ + 1139.77392578125, + 473.96392822265625 + ], + "reprojection_error_px": 0.2152619972435565, + "confidence": 0.33198985414097737 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/render_b_aruco_detection.json b/data/camera_study/Scene10/k3_abf/render_b_aruco_detection.json new file mode 100644 index 0000000..e403d2b --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:55Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "9ecf18f5-7bbc-4559-8e7c-761966d4120e", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "9c9abd61-a6b2-4978-b8e4-456121ab698b", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "7b464317-9222-4524-80c2-a5e91f4fae6b", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "b4af9167-a2ad-4b5a-86e6-ae6249b6bd20", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "76616ff2-a49b-47f7-a756-fbb8bdc2d5ab", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "adbd4d8a-bff1-4a78-a49c-00f21c6e5c2b", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "102df3f5-df28-4ef2-98a7-9ef849ef0507", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "b925f79a-2754-4160-a57f-7eb4fff512aa", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "73b43377-b54f-4355-bb69-ec55d644c713", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "e2cbeee8-2c4f-4702-9f6d-91ccc009c7a3", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "7e2bbd55-05ed-4c14-9f82-95f5a1204a1c", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "c2ef139c-a7f7-4c9d-8f34-c7c63e974424", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "190390ed-17d4-4914-8d8c-30258894a23a", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "9547ccba-5b9b-4a46-9ceb-86adb7e35165", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "e253ea84-09e6-4542-908d-eb1e467b0f66", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "b82739a9-ffa2-45d2-9214-f49081ffd47e", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "66c10867-b23b-4849-a1a9-a365800b9210", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "8aa37d39-92d7-457a-99bb-23837becd90b", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "4e69f130-667d-4911-998c-b8690a4850c6", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "100818a0-573e-40d8-a3f1-a3d7074c4828", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "2df16760-079a-4694-86e7-807fe592c748", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "a8279a5e-340b-459e-accf-fbe13425dd0a", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "524e1a84-e550-4bdc-9ce6-039ebcde6d6b", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "1e58aafa-2413-4676-857b-da33db0a34cf", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "c4ec466f-7d89-464c-b661-afc132fb21b0", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "b29f47c7-ab6a-4c16-8670-60bea1ff2c32", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "a5e17f5d-0510-41a4-824d-b973e6b3d232", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "452a86be-ea01-4790-b1de-cc070d8a4aea", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "b2e58a87-acc1-4b73-9156-08a31ea89cb8", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "27c50813-0432-49ba-a715-c40123bb8beb", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "1717ce51-f683-4d4f-8d12-daa3d84fd0c4", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "8f3e8e52-7fb1-4ad8-ac69-b8f7f1c7727e", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "e2abcc0f-dfa4-422c-adb1-ecffaf85018e", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "c41abec0-c71a-48bc-ad82-3d89ee986e20", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "a1234927-da92-41c5-b0d2-652a87069f80", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "c33696fd-e5a7-4796-abed-438a13c5299f", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/render_b_camera_pose.json b/data/camera_study/Scene10/k3_abf/render_b_camera_pose.json new file mode 100644 index 0000000..a01932c --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:56Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_abf\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/render_f_aruco_detection.json b/data/camera_study/Scene10/k3_abf/render_f_aruco_detection.json new file mode 100644 index 0000000..fb364a5 --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/render_f_aruco_detection.json @@ -0,0 +1,2058 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:56Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "f", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.npz", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.png", + "image_sha256": "aa67ae34760d38a87903e73b4020db43742a978458949ff309a7b2527c548cd4", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 33, + "num_rejected_candidates": 9 + }, + "detections": [ + { + "observation_id": "7e6037e6-af27-4d4d-ac1f-77f8ee894314", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1111.0, + 551.0 + ], + [ + 1128.0, + 590.0 + ], + [ + 1088.0, + 605.0 + ], + [ + 1071.0, + 566.0 + ] + ], + "center_px": [ + 1099.5, + 578.0 + ], + "quality": { + "area_px": 1815.0, + "perimeter_px": 170.52822875976562, + "sharpness": { + "laplacian_var": 705.4441714458114 + }, + "contrast": { + "p05": 20.0, + "p95": 169.0, + "dynamic_range": 149.0, + "mean_gray": 91.23937908496733, + "std_gray": 63.85244467612601 + }, + "geometry": { + "distance_to_center_norm": 0.4237752854824066, + "distance_to_border_px": 312.0 + }, + "edge_ratio": 1.0041351499491737, + "edge_lengths_px": [ + 42.54409408569336, + 42.72002029418945, + 42.54409408569336, + 42.72002029418945 + ] + }, + "confidence": 0.9958818790982638 + }, + { + "observation_id": "43c9f17f-c1d9-42e2-b86f-e61da8f437a6", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1016.0, + 419.0 + ], + [ + 1031.0, + 457.0 + ], + [ + 994.0, + 474.0 + ], + [ + 980.0, + 436.0 + ] + ], + "center_px": [ + 1005.25, + 446.5 + ], + "quality": { + "area_px": 1633.5, + "perimeter_px": 161.88091659545898, + "sharpness": { + "laplacian_var": 1206.2538238529316 + }, + "contrast": { + "p05": 64.0, + "p95": 184.0, + "dynamic_range": 120.0, + "mean_gray": 109.98129092609916, + "std_gray": 52.10421328381854 + }, + "geometry": { + "distance_to_center_norm": 0.33353662490844727, + "distance_to_border_px": 409.0 + }, + "edge_ratio": 1.0261563943133383, + "edge_lengths_px": [ + 40.853397369384766, + 40.71854782104492, + 40.49691390991211, + 39.81205749511719 + ] + }, + "confidence": 0.9745103237106064 + }, + { + "observation_id": "9e9e0cbf-2955-48ea-a97e-26f959152375", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1036.0, + 506.0 + ], + [ + 1052.0, + 544.0 + ], + [ + 1022.0, + 561.0 + ], + [ + 1006.0, + 523.0 + ] + ], + "center_px": [ + 1029.0, + 533.5 + ], + "quality": { + "area_px": 1412.0, + "perimeter_px": 151.42587280273438, + "sharpness": { + "laplacian_var": 1012.7025030399973 + }, + "contrast": { + "p05": 38.0, + "p95": 183.0, + "dynamic_range": 145.0, + "mean_gray": 116.22860125260961, + "std_gray": 60.975378654093674 + }, + "geometry": { + "distance_to_center_norm": 0.34340929985046387, + "distance_to_border_px": 388.0 + }, + "edge_ratio": 1.1957310908974648, + "edge_lengths_px": [ + 41.231056213378906, + 34.48188018798828, + 41.231056213378906, + 34.48188018798828 + ] + }, + "confidence": 0.7872450089315723 + }, + { + "observation_id": "58aa22af-e450-4a7c-bb1e-1637d877c689", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1052.0, + 572.0 + ], + [ + 1067.0, + 612.0 + ], + [ + 1037.0, + 628.0 + ], + [ + 1025.0, + 587.0 + ] + ], + "center_px": [ + 1045.25, + 599.75 + ], + "quality": { + "area_px": 1363.5, + "perimeter_px": 150.32693099975586, + "sharpness": { + "laplacian_var": 1006.0857327103973 + }, + "contrast": { + "p05": 35.0, + "p95": 182.0, + "dynamic_range": 147.0, + "mean_gray": 87.55157437567861, + "std_gray": 61.08527885104246 + }, + "geometry": { + "distance_to_center_norm": 0.3674362897872925, + "distance_to_border_px": 373.0 + }, + "edge_ratio": 1.38311172556412, + "edge_lengths_px": [ + 42.72002029418945, + 34.0, + 42.72002029418945, + 30.886890411376953 + ] + }, + "confidence": 0.6572137183127795 + }, + { + "observation_id": "8c346ea3-7097-4b9b-9552-4bfb758b46fd", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1373.0, + 931.0 + ], + [ + 1403.0, + 920.0 + ], + [ + 1417.0, + 952.0 + ], + [ + 1387.0, + 964.0 + ] + ], + "center_px": [ + 1395.0, + 941.75 + ], + "quality": { + "area_px": 1136.0, + "perimeter_px": 135.0394744873047, + "sharpness": { + "laplacian_var": 536.3795719450814 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 59.547588005215125, + "std_gray": 52.80020659255208 + }, + "geometry": { + "distance_to_center_norm": 0.8727903962135315, + "distance_to_border_px": 23.0 + }, + "edge_ratio": 1.1218600885282315, + "edge_lengths_px": [ + 31.95309066772461, + 34.928497314453125, + 32.31098937988281, + 35.84689712524414 + ] + }, + "confidence": 0.3105318897567382 + }, + { + "observation_id": "3a4073b6-cf85-44ce-aa0b-b955eaab246f", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1361.0, + 872.0 + ], + [ + 1392.0, + 861.0 + ], + [ + 1405.0, + 893.0 + ], + [ + 1375.0, + 904.0 + ] + ], + "center_px": [ + 1383.25, + 882.5 + ], + "quality": { + "area_px": 1124.5, + "perimeter_px": 134.31518936157227, + "sharpness": { + "laplacian_var": 517.914546739087 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 76.5836627140975, + "std_gray": 53.471581821317514 + }, + "geometry": { + "distance_to_center_norm": 0.8294032216072083, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.0931179608780046, + "edge_lengths_px": [ + 32.893768310546875, + 34.539833068847656, + 31.95309066772461, + 34.928497314453125 + ] + }, + "confidence": 0.480064078578645 + }, + { + "observation_id": "d17e407e-b7c8-4f73-9754-2f29f1ec0d3c", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 948.0, + 734.0 + ], + [ + 958.0, + 766.0 + ], + [ + 926.0, + 775.0 + ], + [ + 916.0, + 742.0 + ] + ], + "center_px": [ + 937.0, + 754.25 + ], + "quality": { + "area_px": 1125.0, + "perimeter_px": 134.23437118530273, + "sharpness": { + "laplacian_var": 451.55598900708645 + }, + "contrast": { + "p05": 10.0, + "p95": 140.0, + "dynamic_range": 130.0, + "mean_gray": 60.31848852901484, + "std_gray": 51.76857091737675 + }, + "geometry": { + "distance_to_center_norm": 0.3388288915157318, + "distance_to_border_px": 305.0 + }, + "edge_ratio": 1.0453855707425852, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 34.48188018798828, + 32.98484420776367 + ] + }, + "confidence": 0.717438637944123 + }, + { + "observation_id": "dec3a7c3-bf32-42d7-9fba-3a6adbdfc210", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 644.0, + 826.0 + ], + [ + 676.0, + 815.0 + ], + [ + 686.0, + 847.0 + ], + [ + 654.0, + 857.0 + ] + ], + "center_px": [ + 665.0, + 836.25 + ], + "quality": { + "area_px": 1113.0, + "perimeter_px": 133.4630584716797, + "sharpness": { + "laplacian_var": 852.4779615278809 + }, + "contrast": { + "p05": 29.0, + "p95": 169.0, + "dynamic_range": 140.0, + "mean_gray": 86.11354309165527, + "std_gray": 58.71854981961371 + }, + "geometry": { + "distance_to_center_norm": 0.334791362285614, + "distance_to_border_px": 223.0 + }, + "edge_ratio": 1.0388313835116465, + "edge_lengths_px": [ + 33.83784866333008, + 33.52610778808594, + 33.52610778808594, + 32.572994232177734 + ] + }, + "confidence": 0.714264135428559 + }, + { + "observation_id": "ae347f68-0910-480b-afe9-9094a55116fc", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1320.0, + 833.0 + ], + [ + 1351.0, + 823.0 + ], + [ + 1363.0, + 855.0 + ], + [ + 1333.0, + 865.0 + ] + ], + "center_px": [ + 1341.75, + 844.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 451.19488172035136 + }, + "contrast": { + "p05": 7.0, + "p95": 137.0, + "dynamic_range": 130.0, + "mean_gray": 45.32476319350474, + "std_gray": 49.27193956190029 + }, + "geometry": { + "distance_to_center_norm": 0.7689892649650574, + "distance_to_border_px": 77.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.6720101269988878 + }, + { + "observation_id": "9583409b-3a97-40bf-8110-6ef40ee57166", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1378.0, + 795.0 + ], + [ + 1409.0, + 785.0 + ], + [ + 1421.0, + 817.0 + ], + [ + 1391.0, + 827.0 + ] + ], + "center_px": [ + 1399.75, + 806.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 495.05510317310643 + }, + "contrast": { + "p05": 8.0, + "p95": 139.0, + "dynamic_range": 131.0, + "mean_gray": 82.98646820027064, + "std_gray": 51.90790044031631 + }, + "geometry": { + "distance_to_center_norm": 0.8110472559928894, + "distance_to_border_px": 19.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.25536384825957736 + }, + { + "observation_id": "c275f64f-fb88-46fa-a09d-e218eb5f0d0d", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 534.0, + 807.0 + ], + [ + 566.0, + 797.0 + ], + [ + 575.0, + 829.0 + ], + [ + 544.0, + 839.0 + ] + ], + "center_px": [ + 554.75, + 818.0 + ], + "quality": { + "area_px": 1103.0, + "perimeter_px": 132.86674880981445, + "sharpness": { + "laplacian_var": 743.494629148182 + }, + "contrast": { + "p05": 35.0, + "p95": 172.0, + "dynamic_range": 137.0, + "mean_gray": 110.58367911479945, + "std_gray": 58.20082187769058 + }, + "geometry": { + "distance_to_center_norm": 0.35934022068977356, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 32.572994232177734, + 33.52610778808594 + ] + }, + "confidence": 0.7144285455619288 + }, + { + "observation_id": "3ccaa829-35a2-44a2-a941-b357fdcd7ab4", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 824.0, + 853.0 + ], + [ + 854.0, + 841.0 + ], + [ + 867.0, + 872.0 + ], + [ + 836.0, + 884.0 + ] + ], + "center_px": [ + 845.25, + 862.5 + ], + "quality": { + "area_px": 1095.5, + "perimeter_px": 132.40953826904297, + "sharpness": { + "laplacian_var": 442.72637538104226 + }, + "contrast": { + "p05": 14.0, + "p95": 151.0, + "dynamic_range": 137.0, + "mean_gray": 42.81124497991968, + "std_gray": 45.242857765301586 + }, + "geometry": { + "distance_to_center_norm": 0.3844088017940521, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.040372688406745, + "edge_lengths_px": [ + 32.31098937988281, + 33.61547088623047, + 33.241539001464844, + 33.241539001464844 + ] + }, + "confidence": 0.7019920279258633 + }, + { + "observation_id": "feaf7066-fef3-4bb9-b3dd-721488b3dcc9", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 590.0, + 838.0 + ], + [ + 621.0, + 828.0 + ], + [ + 631.0, + 859.0 + ], + [ + 600.0, + 870.0 + ] + ], + "center_px": [ + 610.5, + 848.75 + ], + "quality": { + "area_px": 1081.5, + "perimeter_px": 131.56586456298828, + "sharpness": { + "laplacian_var": 731.9229727377668 + }, + "contrast": { + "p05": 31.0, + "p95": 169.0, + "dynamic_range": 138.0, + "mean_gray": 66.63649222065064, + "std_gray": 51.73446481181097 + }, + "geometry": { + "distance_to_center_norm": 0.3639915883541107, + "distance_to_border_px": 210.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 32.572994232177734, + 32.572994232177734, + 32.893768310546875, + 33.52610778808594 + ] + }, + "confidence": 0.7005026944924987 + }, + { + "observation_id": "030a2fa4-6eeb-47d5-99ee-bc3618bd4b24", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 655.0, + 735.0 + ], + [ + 687.0, + 726.0 + ], + [ + 695.0, + 757.0 + ], + [ + 664.0, + 766.0 + ] + ], + "center_px": [ + 675.25, + 746.0 + ], + "quality": { + "area_px": 1053.0, + "perimeter_px": 129.81721115112305, + "sharpness": { + "laplacian_var": 717.9247585125308 + }, + "contrast": { + "p05": 30.0, + "p95": 171.0, + "dynamic_range": 141.0, + "mean_gray": 93.84776536312849, + "std_gray": 59.42619485270114 + }, + "geometry": { + "distance_to_center_norm": 0.23422729969024658, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0382912394254866, + "edge_lengths_px": [ + 33.241539001464844, + 32.015621185302734, + 32.280025482177734, + 32.280025482177734 + ] + }, + "confidence": 0.6761108765479277 + }, + { + "observation_id": "be16265c-2d0f-494a-8323-da51564a7b0c", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1325.0, + 744.0 + ], + [ + 1354.0, + 732.0 + ], + [ + 1368.0, + 763.0 + ], + [ + 1339.0, + 774.0 + ] + ], + "center_px": [ + 1346.5, + 753.25 + ], + "quality": { + "area_px": 1045.5, + "perimeter_px": 129.52142906188965, + "sharpness": { + "laplacian_var": 401.9192193180268 + }, + "contrast": { + "p05": 7.0, + "p95": 133.0, + "dynamic_range": 126.0, + "mean_gray": 49.76628895184136, + "std_gray": 49.769446320789825 + }, + "geometry": { + "distance_to_center_norm": 0.735332190990448, + "distance_to_border_px": 72.0 + }, + "edge_ratio": 1.096678006826234, + "edge_lengths_px": [ + 31.38471031188965, + 34.01470184326172, + 31.016124725341797, + 33.105892181396484 + ] + }, + "confidence": 0.63555573802114 + }, + { + "observation_id": "a87ae32b-274d-4db8-9e40-3a790b9f0153", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 488.0, + 682.0 + ], + [ + 520.0, + 673.0 + ], + [ + 528.0, + 703.0 + ], + [ + 497.0, + 713.0 + ] + ], + "center_px": [ + 508.25, + 692.75 + ], + "quality": { + "area_px": 1041.5, + "perimeter_px": 129.14290809631348, + "sharpness": { + "laplacian_var": 854.9291926161701 + }, + "contrast": { + "p05": 39.0, + "p95": 174.0, + "dynamic_range": 135.0, + "mean_gray": 85.3946251768034, + "std_gray": 55.88886855913174 + }, + "geometry": { + "distance_to_center_norm": 0.2901056110858917, + "distance_to_border_px": 367.0 + }, + "edge_ratio": 1.070637881392484, + "edge_lengths_px": [ + 33.241539001464844, + 31.048349380493164, + 32.572994232177734, + 32.280025482177734 + ] + }, + "confidence": 0.6485230397697823 + }, + { + "observation_id": "e023e2ab-67a9-4b50-b5f4-b76b33831442", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1047.0, + 694.0 + ], + [ + 1058.0, + 725.0 + ], + [ + 1029.0, + 735.0 + ], + [ + 1017.0, + 703.0 + ] + ], + "center_px": [ + 1037.75, + 714.25 + ], + "quality": { + "area_px": 1038.5, + "perimeter_px": 129.06642532348633, + "sharpness": { + "laplacian_var": 702.8589017712277 + }, + "contrast": { + "p05": 13.0, + "p95": 151.0, + "dynamic_range": 138.0, + "mean_gray": 91.26308139534883, + "std_gray": 55.34838633216663 + }, + "geometry": { + "distance_to_center_norm": 0.40265801548957825, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 1.1141061874732403, + "edge_lengths_px": [ + 32.893768310546875, + 30.675724029541016, + 34.1760139465332, + 31.320919036865234 + ] + }, + "confidence": 0.62142490645665 + }, + { + "observation_id": "59b5065f-de9d-4091-81a6-253ad062162b", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 592.0, + 617.0 + ], + [ + 622.0, + 606.0 + ], + [ + 633.0, + 635.0 + ], + [ + 604.0, + 647.0 + ] + ], + "center_px": [ + 612.75, + 626.25 + ], + "quality": { + "area_px": 1002.5, + "perimeter_px": 126.66491508483887, + "sharpness": { + "laplacian_var": 861.4333753048808 + }, + "contrast": { + "p05": 34.0, + "p95": 174.0, + "dynamic_range": 140.0, + "mean_gray": 97.54451038575668, + "std_gray": 59.64062956897272 + }, + "geometry": { + "distance_to_center_norm": 0.15292063355445862, + "distance_to_border_px": 433.0 + }, + "edge_ratio": 1.041748112183823, + "edge_lengths_px": [ + 31.95309066772461, + 31.016124725341797, + 31.38471031188965, + 32.31098937988281 + ] + }, + "confidence": 0.6415498386959416 + }, + { + "observation_id": "64c6e264-dcb5-475b-86a4-e9a045fa1b1d", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 852.0, + 664.0 + ], + [ + 855.0, + 699.0 + ], + [ + 831.0, + 712.0 + ], + [ + 828.0, + 677.0 + ] + ], + "center_px": [ + 841.5, + 688.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 124.84605026245117, + "sharpness": { + "laplacian_var": 964.1437813663806 + }, + "contrast": { + "p05": 35.0, + "p95": 185.0, + "dynamic_range": 150.0, + "mean_gray": 80.50977198697069, + "std_gray": 59.04237755633671 + }, + "geometry": { + "distance_to_center_norm": 0.21276035904884338, + "distance_to_border_px": 368.0 + }, + "edge_ratio": 1.2870027603239267, + "edge_lengths_px": [ + 35.12833786010742, + 27.294687271118164, + 35.12833786010742, + 27.294687271118164 + ] + }, + "confidence": 0.45532147876086076 + }, + { + "observation_id": "75f7e706-a787-4f2a-8a37-ab50fd0204a9", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 549.0 + ], + [ + 750.0, + 540.0 + ], + [ + 759.0, + 570.0 + ], + [ + 728.0, + 578.0 + ] + ], + "center_px": [ + 739.25, + 559.25 + ], + "quality": { + "area_px": 972.0, + "perimeter_px": 124.74067687988281, + "sharpness": { + "laplacian_var": 858.8311608781246 + }, + "contrast": { + "p05": 30.0, + "p95": 176.0, + "dynamic_range": 146.0, + "mean_gray": 89.6813509544787, + "std_gray": 60.460128160193484 + }, + "geometry": { + "distance_to_center_norm": 0.030248457565903664, + "distance_to_border_px": 502.0 + }, + "edge_ratio": 1.0642352686074992, + "edge_lengths_px": [ + 31.320919036865234, + 31.320919036865234, + 32.015621185302734, + 30.08321762084961 + ] + }, + "confidence": 0.6088879208521975 + }, + { + "observation_id": "a168e9a2-66cd-4dfa-acba-e7933fc047d1", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 670.0, + 478.0 + ], + [ + 700.0, + 469.0 + ], + [ + 710.0, + 497.0 + ], + [ + 680.0, + 507.0 + ] + ], + "center_px": [ + 690.0, + 487.75 + ], + "quality": { + "area_px": 950.0, + "perimeter_px": 123.3515567779541, + "sharpness": { + "laplacian_var": 744.1718727855725 + }, + "contrast": { + "p05": 33.0, + "p95": 177.0, + "dynamic_range": 144.0, + "mean_gray": 123.30505952380952, + "std_gray": 58.57233093015588 + }, + "geometry": { + "distance_to_center_norm": 0.06694444268941879, + "distance_to_border_px": 469.0 + }, + "edge_ratio": 1.0635890487184443, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.62277603149414, + 30.675724029541016 + ] + }, + "confidence": 0.5954680843098741 + }, + { + "observation_id": "6d603be3-7363-495c-a983-8bf90423900b", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 519.0, + 393.0 + ], + [ + 550.0, + 385.0 + ], + [ + 558.0, + 413.0 + ], + [ + 527.0, + 421.0 + ] + ], + "center_px": [ + 538.5, + 403.0 + ], + "quality": { + "area_px": 932.0, + "perimeter_px": 122.27212142944336, + "sharpness": { + "laplacian_var": 797.3173110559737 + }, + "contrast": { + "p05": 38.0, + "p95": 176.19999999999993, + "dynamic_range": 138.19999999999993, + "mean_gray": 94.14307458143075, + "std_gray": 55.87143525094488 + }, + "geometry": { + "distance_to_center_norm": 0.2526678740978241, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0994209463411062, + "edge_lengths_px": [ + 32.015621185302734, + 29.120439529418945, + 32.015621185302734, + 29.120439529418945 + ] + }, + "confidence": 0.5651459847123547 + }, + { + "observation_id": "c3f6d69c-10c5-4ba4-a854-466dc62ba45e", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 613.0, + 419.0 + ], + [ + 643.0, + 410.0 + ], + [ + 653.0, + 438.0 + ], + [ + 623.0, + 447.0 + ] + ], + "center_px": [ + 633.0, + 428.5 + ], + "quality": { + "area_px": 930.0, + "perimeter_px": 122.10611343383789, + "sharpness": { + "laplacian_var": 823.1077646304283 + }, + "contrast": { + "p05": 33.0, + "p95": 175.0, + "dynamic_range": 142.0, + "mean_gray": 90.3810975609756, + "std_gray": 58.11551162536803 + }, + "geometry": { + "distance_to_center_norm": 0.15713976323604584, + "distance_to_border_px": 410.0 + }, + "edge_ratio": 1.0534364993835403, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.320919036865234, + 29.73213768005371 + ] + }, + "confidence": 0.5885499509109636 + }, + { + "observation_id": "b600cc44-de9b-48d1-a6c3-0b56c809df9a", + "type": "aruco", + "marker_id": 82, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 420.0 + ], + [ + 1365.0, + 411.0 + ], + [ + 1377.0, + 439.0 + ], + [ + 1348.0, + 448.0 + ] + ], + "center_px": [ + 1356.5, + 429.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 492.47728625272765 + }, + "contrast": { + "p05": 8.0, + "p95": 144.0, + "dynamic_range": 136.0, + "mean_gray": 74.61658841940532, + "std_gray": 56.63950003540781 + }, + "geometry": { + "distance_to_center_norm": 0.7178005576133728, + "distance_to_border_px": 63.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.6113473409254715 + }, + { + "observation_id": "b1a4f502-0b31-49c1-80b7-114bda78cbf2", + "type": "aruco", + "marker_id": 73, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1381.0, + 409.0 + ], + [ + 1410.0, + 400.0 + ], + [ + 1422.0, + 428.0 + ], + [ + 1393.0, + 437.0 + ] + ], + "center_px": [ + 1401.5, + 418.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 771.0965392424098 + }, + "contrast": { + "p05": 9.0, + "p95": 148.0, + "dynamic_range": 139.0, + "mean_gray": 87.07042253521126, + "std_gray": 52.83472667385498 + }, + "geometry": { + "distance_to_center_norm": 0.7691621780395508, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.22008504273316973 + }, + { + "observation_id": "bf05cfd3-4755-4d34-ad19-02c3764b68ed", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 881.0, + 288.0 + ], + [ + 892.0, + 316.0 + ], + [ + 863.0, + 326.0 + ], + [ + 852.0, + 298.0 + ] + ], + "center_px": [ + 872.0, + 307.0 + ], + "quality": { + "area_px": 922.0, + "perimeter_px": 121.51788330078125, + "sharpness": { + "laplacian_var": 865.0098318523201 + }, + "contrast": { + "p05": 22.0, + "p95": 172.0, + "dynamic_range": 150.0, + "mean_gray": 82.59908536585365, + "std_gray": 60.95016906391271 + }, + "geometry": { + "distance_to_center_norm": 0.30910664796829224, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.0196955796470641, + "edge_lengths_px": [ + 30.08321762084961, + 30.675724029541016, + 30.08321762084961, + 30.675724029541016 + ] + }, + "confidence": 0.60279428383853 + }, + { + "observation_id": "cd24b5b9-290e-430b-a82f-9b7fb42117fc", + "type": "aruco", + "marker_id": 52, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1170.0, + 304.0 + ], + [ + 1198.0, + 294.0 + ], + [ + 1211.0, + 321.0 + ], + [ + 1182.0, + 331.0 + ] + ], + "center_px": [ + 1190.25, + 312.5 + ], + "quality": { + "area_px": 894.5, + "perimeter_px": 119.92108345031738, + "sharpness": { + "laplacian_var": 736.7821607663999 + }, + "contrast": { + "p05": 12.0, + "p95": 162.0, + "dynamic_range": 150.0, + "mean_gray": 73.56239870340356, + "std_gray": 59.95824921853181 + }, + "geometry": { + "distance_to_center_norm": 0.5804333686828613, + "distance_to_border_px": 229.0 + }, + "edge_ratio": 1.038215950330626, + "edge_lengths_px": [ + 29.73213768005371, + 29.96664810180664, + 30.675724029541016, + 29.546573638916016 + ] + }, + "confidence": 0.5743827506632194 + }, + { + "observation_id": "fb03dc12-f81c-4440-8b36-eec1ee8bd679", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 621.0, + 329.0 + ], + [ + 651.0, + 320.0 + ], + [ + 660.0, + 347.0 + ], + [ + 630.0, + 356.0 + ] + ], + "center_px": [ + 640.5, + 338.0 + ], + "quality": { + "area_px": 891.0, + "perimeter_px": 119.56283569335938, + "sharpness": { + "laplacian_var": 820.498501862312 + }, + "contrast": { + "p05": 32.0, + "p95": 175.0, + "dynamic_range": 143.0, + "mean_gray": 89.84786053882726, + "std_gray": 58.95198554771998 + }, + "geometry": { + "distance_to_center_norm": 0.24120134115219116, + "distance_to_border_px": 320.0 + }, + "edge_ratio": 1.1005049224950472, + "edge_lengths_px": [ + 31.320919036865234, + 28.460498809814453, + 31.320919036865234, + 28.460498809814453 + ] + }, + "confidence": 0.5397522426826521 + }, + { + "observation_id": "955ba8f4-8c72-4aca-8218-ba8142c9aae2", + "type": "aruco", + "marker_id": 77, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1106.0, + 220.0 + ], + [ + 1135.0, + 213.0 + ], + [ + 1145.0, + 239.0 + ], + [ + 1116.0, + 248.0 + ] + ], + "center_px": [ + 1125.5, + 230.0 + ], + "quality": { + "area_px": 863.0, + "perimeter_px": 117.78623580932617, + "sharpness": { + "laplacian_var": 634.9850778546712 + }, + "contrast": { + "p05": 11.0, + "p95": 158.0, + "dynamic_range": 147.0, + "mean_gray": 69.19607843137256, + "std_gray": 58.47258547896745 + }, + "geometry": { + "distance_to_center_norm": 0.5671351552009583, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.0900202903476583, + "edge_lengths_px": [ + 29.832868576049805, + 27.85677719116211, + 30.364452362060547, + 29.73213768005371 + ] + }, + "confidence": 0.5278189208292927 + }, + { + "observation_id": "52ba2771-97af-4649-8162-279052d6df7c", + "type": "aruco", + "marker_id": 83, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1304.0, + 199.0 + ], + [ + 1332.0, + 191.0 + ], + [ + 1343.0, + 218.0 + ], + [ + 1314.0, + 226.0 + ] + ], + "center_px": [ + 1323.25, + 208.5 + ], + "quality": { + "area_px": 853.5, + "perimeter_px": 117.15077781677246, + "sharpness": { + "laplacian_var": 787.246986385212 + }, + "contrast": { + "p05": 11.0, + "p95": 159.19999999999993, + "dynamic_range": 148.19999999999993, + "mean_gray": 92.65964343598056, + "std_gray": 57.146865375444264 + }, + "geometry": { + "distance_to_center_norm": 0.7648148536682129, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0448333273602466, + "edge_lengths_px": [ + 29.120439529418945, + 29.154760360717773, + 30.08321762084961, + 28.792360305786133 + ] + }, + "confidence": 0.5445844663450473 + }, + { + "observation_id": "c5f95c22-1342-4792-ad82-4062910d518c", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1089.0, + 172.0 + ], + [ + 1118.0, + 165.0 + ], + [ + 1127.0, + 192.0 + ], + [ + 1098.0, + 199.0 + ] + ], + "center_px": [ + 1108.0, + 182.0 + ], + "quality": { + "area_px": 846.0, + "perimeter_px": 116.58673477172852, + "sharpness": { + "laplacian_var": 840.0864058387932 + }, + "contrast": { + "p05": 18.0, + "p95": 165.0, + "dynamic_range": 147.0, + "mean_gray": 108.12054329371817, + "std_gray": 55.17911014115476 + }, + "geometry": { + "distance_to_center_norm": 0.5865867137908936, + "distance_to_border_px": 165.0 + }, + "edge_ratio": 1.048220158592656, + "edge_lengths_px": [ + 29.832868576049805, + 28.460498809814453, + 29.832868576049805, + 28.460498809814453 + ] + }, + "confidence": 0.5380549070504695 + }, + { + "observation_id": "852edd62-6a7a-4ec5-b701-156ad6e9f250", + "type": "aruco", + "marker_id": 61, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1260.0, + 127.0 + ], + [ + 1287.0, + 117.0 + ], + [ + 1300.0, + 143.0 + ], + [ + 1273.0, + 153.0 + ] + ], + "center_px": [ + 1280.0, + 135.0 + ], + "quality": { + "area_px": 832.0, + "perimeter_px": 115.72248840332031, + "sharpness": { + "laplacian_var": 747.7801521890221 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 95.53195164075993, + "std_gray": 57.42506055833918 + }, + "geometry": { + "distance_to_center_norm": 0.7678935527801514, + "distance_to_border_px": 117.0 + }, + "edge_ratio": 1.0096040611867558, + "edge_lengths_px": [ + 28.792360305786133, + 29.068883895874023, + 28.792360305786133, + 29.068883895874023 + ] + }, + "confidence": 0.5493902887184056 + }, + { + "observation_id": "85faa1cb-362f-4cd8-b8e0-f74f8d251837", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 842.0, + 759.0 + ], + [ + 869.0, + 767.0 + ], + [ + 844.0, + 778.0 + ], + [ + 816.0, + 770.0 + ] + ], + "center_px": [ + 842.75, + 768.5 + ], + "quality": { + "area_px": 506.5, + "perimeter_px": 112.82488250732422, + "sharpness": { + "laplacian_var": 927.7063988919667 + }, + "contrast": { + "p05": 19.0, + "p95": 83.0, + "dynamic_range": 64.0, + "mean_gray": 43.613157894736844, + "std_gray": 22.719116354348767 + }, + "geometry": { + "distance_to_center_norm": 0.2882038950920105, + "distance_to_border_px": 302.0 + }, + "edge_ratio": 1.0661750749552474, + "edge_lengths_px": [ + 28.160255432128906, + 27.312999725341797, + 29.120439529418945, + 28.23118782043457 + ] + }, + "confidence": 0.25336676844060735 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1315.0, + 285.0 + ], + [ + 1328.0, + 312.0 + ], + [ + 1300.0, + 322.0 + ], + [ + 1287.0, + 295.0 + ] + ], + "center_px": [ + 1307.5, + 303.5 + ], + "area_px": 886.0 + }, + { + "image_points_px": [ + [ + 1003.0, + 394.0 + ], + [ + 972.0, + 415.0 + ], + [ + 973.0, + 410.0 + ], + [ + 985.0, + 400.0 + ] + ], + "center_px": [ + 983.25, + 404.75 + ], + "area_px": 121.0 + }, + { + "image_points_px": [ + [ + 780.0, + 278.0 + ], + [ + 783.0, + 279.0 + ], + [ + 797.0, + 300.0 + ], + [ + 795.0, + 302.0 + ] + ], + "center_px": [ + 788.75, + 289.75 + ], + "area_px": 63.5 + }, + { + "image_points_px": [ + [ + 1087.0, + 550.0 + ], + [ + 1063.0, + 565.0 + ], + [ + 1074.0, + 554.0 + ], + [ + 1082.0, + 550.0 + ] + ], + "center_px": [ + 1076.5, + 554.75 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 665.0, + 67.0 + ], + [ + 675.0, + 85.0 + ], + [ + 674.0, + 91.0 + ], + [ + 667.0, + 78.0 + ] + ], + "center_px": [ + 670.25, + 80.25 + ], + "area_px": 64.5 + }, + { + "image_points_px": [ + [ + 1107.0, + 93.0 + ], + [ + 1110.0, + 95.0 + ], + [ + 1120.0, + 115.0 + ], + [ + 1115.0, + 111.0 + ] + ], + "center_px": [ + 1113.0, + 103.5 + ], + "area_px": 49.0 + }, + { + "image_points_px": [ + [ + 735.0, + 232.0 + ], + [ + 745.0, + 254.0 + ], + [ + 742.0, + 252.0 + ], + [ + 736.0, + 239.0 + ] + ], + "center_px": [ + 739.5, + 244.25 + ], + "area_px": 37.5 + }, + { + "image_points_px": [ + [ + 1214.0, + 340.0 + ], + [ + 1219.0, + 346.0 + ], + [ + 1223.0, + 362.0 + ], + [ + 1216.0, + 349.0 + ] + ], + "center_px": [ + 1218.0, + 349.25 + ], + "area_px": 46.5 + }, + { + "image_points_px": [ + [ + 1121.0, + 562.0 + ], + [ + 1129.0, + 569.0 + ], + [ + 1131.0, + 577.0 + ], + [ + 1130.0, + 583.0 + ] + ], + "center_px": [ + 1127.75, + 572.75 + ], + "area_px": 62.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/render_f_camera_pose.json b/data/camera_study/Scene10/k3_abf/render_f_camera_pose.json new file mode 100644 index 0000000..b28c1a7 --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/render_f_camera_pose.json @@ -0,0 +1,582 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:57Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_abf\\render_f_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "f", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 27, + "used_marker_ids": [ + 68, + 46, + 208, + 47, + 56, + 53, + 97, + 62, + 54, + 55, + 72, + 66, + 214, + 95, + 51, + 103, + 69, + 58, + 82, + 73, + 210, + 52, + 64, + 77, + 83, + 75, + 61 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3, + 4 + ], + "rms": [ + 0.00918677717341902, + 0.0014933429518723808, + 0.001390373853667637, + 0.0013903699834861628, + 0.0013903699807887252 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125, + 6.25e-05 + ] + }, + "residual_rms_px": 3.941603533751138, + "residual_median_px": 3.7352373317630128, + "residual_max_px": 5.771900878439298, + "sigma2_normalized": 2.17476976890378e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.31769248843193054, + 0.9481521248817444, + 0.008892479352653027 + ], + [ + 0.9206541180610657, + -0.30620789527893066, + -0.242141991853714 + ], + [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + ], + "translation_m": [ + 0.12344730645418167, + -0.19988536834716797, + 1.4972078800201416 + ], + "rvec_rad": [ + 2.378352663832453, + 1.7133801592888853, + -0.1998435821316908 + ] + }, + "camera_in_world": { + "position_m": [ + 0.48447033762931824, + -0.3056860566139221, + 1.4030927419662476 + ], + "position_mm": [ + 484.4703369140625, + -305.6860656738281, + 1403.0927734375 + ], + "orientation_deg": { + "roll": 174.98638916015625, + "pitch": 13.112541198730469, + "yaw": 70.96184539794922 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 3.2311819447272024e-05, + 1.8832577487974546e-05, + -4.656767371183097e-06, + -4.18150026429738e-07, + 2.6114865287331025e-07, + 2.406181848846857e-06 + ], + [ + 1.8832577487974533e-05, + 1.683541014579236e-05, + -7.3574856590594524e-06, + 4.5948447714477966e-07, + 3.095065254407523e-08, + 2.3847847067019377e-06 + ], + [ + -4.6567673711861375e-06, + -7.357485659062205e-06, + 0.00016783973036034415, + 1.5647826411604766e-06, + -1.729586622472892e-06, + -2.906231789157714e-05 + ], + [ + -4.1815002642977447e-07, + 4.594844771447391e-07, + 1.5647826411606013e-06, + 3.507815548304795e-07, + -2.7134564617847737e-08, + 2.4204791300702807e-07 + ], + [ + 2.611486528733672e-07, + 3.0950652544076366e-08, + -1.729586622472832e-06, + -2.7134564617850665e-08, + 1.9997327434023874e-07, + 4.1386012647726157e-07 + ], + [ + 2.4061818488473495e-06, + 2.384784706702394e-06, + -2.9062317891576876e-05, + 2.420479130070509e-07, + 4.138601264772586e-07, + 9.270646369219581e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.3256891862833913, + 0.23509017702077495, + 0.7422838625560957 + ], + "tvec_std_m": [ + 0.0005922681443657758, + 0.00044718371430569644, + 0.003044773615430149 + ] + }, + "camera_center_std_m": [ + 0.011255169411300251, + 0.011919325044430497, + 0.004596769734438054 + ], + "camera_center_std_mm": [ + 11.255169411300251, + 11.919325044430497, + 4.5967697344380545 + ], + "orientation_std_deg": { + "roll": 0.5094522091773732, + "pitch": 0.4352540861263008, + "yaw": 0.1004884180203833 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 68, + "observed_center_px": [ + 1395.0, + 941.75 + ], + "projected_center_px": [ + 1389.3548583984375, + 940.5469970703125 + ], + "reprojection_error_px": 5.771900878439298, + "confidence": 0.3105318897567382 + }, + { + "marker_id": 46, + "observed_center_px": [ + 1383.25, + 882.5 + ], + "projected_center_px": [ + 1387.9061279296875, + 883.3380737304688 + ], + "reprojection_error_px": 4.7309507369362676, + "confidence": 0.480064078578645 + }, + { + "marker_id": 208, + "observed_center_px": [ + 937.0, + 754.25 + ], + "projected_center_px": [ + 934.9244995117188, + 751.2972412109375 + ], + "reprojection_error_px": 3.6092224568792584, + "confidence": 0.717438637944123 + }, + { + "marker_id": 47, + "observed_center_px": [ + 665.0, + 836.25 + ], + "projected_center_px": [ + 667.4868774414062, + 835.926025390625 + ], + "reprojection_error_px": 2.507891336580391, + "confidence": 0.714264135428559 + }, + { + "marker_id": 56, + "observed_center_px": [ + 1341.75, + 844.0 + ], + "projected_center_px": [ + 1344.8751220703125, + 839.613037109375 + ], + "reprojection_error_px": 5.386263209134431, + "confidence": 0.6720101269988878 + }, + { + "marker_id": 53, + "observed_center_px": [ + 1399.75, + 806.0 + ], + "projected_center_px": [ + 1394.572998046875, + 803.723388671875 + ], + "reprojection_error_px": 5.655467121468141, + "confidence": 0.25536384825957736 + }, + { + "marker_id": 97, + "observed_center_px": [ + 554.75, + 818.0 + ], + "projected_center_px": [ + 552.1571044921875, + 815.3113403320312 + ], + "reprojection_error_px": 3.7352373317630128, + "confidence": 0.7144285455619288 + }, + { + "marker_id": 62, + "observed_center_px": [ + 845.25, + 862.5 + ], + "projected_center_px": [ + 843.9764404296875, + 867.170166015625 + ], + "reprojection_error_px": 4.840702902743903, + "confidence": 0.7019920279258633 + }, + { + "marker_id": 54, + "observed_center_px": [ + 610.5, + 848.75 + ], + "projected_center_px": [ + 607.426025390625, + 853.0718994140625 + ], + "reprojection_error_px": 5.30359636891383, + "confidence": 0.7005026944924987 + }, + { + "marker_id": 55, + "observed_center_px": [ + 675.25, + 746.0 + ], + "projected_center_px": [ + 672.9774169921875, + 745.18359375 + ], + "reprojection_error_px": 2.4147779799470532, + "confidence": 0.6761108765479277 + }, + { + "marker_id": 72, + "observed_center_px": [ + 1346.5, + 753.25 + ], + "projected_center_px": [ + 1346.513671875, + 751.8689575195312 + ], + "reprojection_error_px": 1.381110152386584, + "confidence": 0.63555573802114 + }, + { + "marker_id": 66, + "observed_center_px": [ + 508.25, + 692.75 + ], + "projected_center_px": [ + 508.324951171875, + 692.6304321289062 + ], + "reprojection_error_px": 0.14111751827228045, + "confidence": 0.6485230397697823 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1037.75, + 714.25 + ], + "projected_center_px": [ + 1041.2877197265625, + 715.8521118164062 + ], + "reprojection_error_px": 3.8835838005607632, + "confidence": 0.62142490645665 + }, + { + "marker_id": 95, + "observed_center_px": [ + 612.75, + 626.25 + ], + "projected_center_px": [ + 616.0951538085938, + 624.1017456054688 + ], + "reprojection_error_px": 3.975556683883667, + "confidence": 0.6415498386959416 + }, + { + "marker_id": 51, + "observed_center_px": [ + 739.25, + 559.25 + ], + "projected_center_px": [ + 740.84765625, + 558.3189086914062 + ], + "reprojection_error_px": 1.8491718465580436, + "confidence": 0.6088879208521975 + }, + { + "marker_id": 103, + "observed_center_px": [ + 690.0, + 487.75 + ], + "projected_center_px": [ + 694.0453491210938, + 487.8307800292969 + ], + "reprojection_error_px": 4.046155573463183, + "confidence": 0.5954680843098741 + }, + { + "marker_id": 69, + "observed_center_px": [ + 538.5, + 403.0 + ], + "projected_center_px": [ + 534.0264892578125, + 406.2565612792969 + ], + "reprojection_error_px": 5.5333073045225545, + "confidence": 0.5651459847123547 + }, + { + "marker_id": 58, + "observed_center_px": [ + 633.0, + 428.5 + ], + "projected_center_px": [ + 631.8712768554688, + 432.2906494140625 + ], + "reprojection_error_px": 3.9551281796337383, + "confidence": 0.5885499509109636 + }, + { + "marker_id": 82, + "observed_center_px": [ + 1356.5, + 429.5 + ], + "projected_center_px": [ + 1358.176025390625, + 429.6244201660156 + ], + "reprojection_error_px": 1.6806372266884486, + "confidence": 0.6113473409254715 + }, + { + "marker_id": 73, + "observed_center_px": [ + 1401.5, + 418.5 + ], + "projected_center_px": [ + 1403.8709716796875, + 418.31756591796875 + ], + "reprojection_error_px": 2.377980004156206, + "confidence": 0.22008504273316973 + }, + { + "marker_id": 210, + "observed_center_px": [ + 872.0, + 307.0 + ], + "projected_center_px": [ + 871.6832885742188, + 304.965087890625 + ], + "reprojection_error_px": 2.0594109400751965, + "confidence": 0.60279428383853 + }, + { + "marker_id": 52, + "observed_center_px": [ + 1190.25, + 312.5 + ], + "projected_center_px": [ + 1186.0579833984375, + 316.39373779296875 + ], + "reprojection_error_px": 5.7213807064526625, + "confidence": 0.5743827506632194 + }, + { + "marker_id": 64, + "observed_center_px": [ + 640.5, + 338.0 + ], + "projected_center_px": [ + 640.4821166992188, + 334.9952087402344 + ], + "reprojection_error_px": 3.0048444763765603, + "confidence": 0.5397522426826521 + }, + { + "marker_id": 77, + "observed_center_px": [ + 1125.5, + 230.0 + ], + "projected_center_px": [ + 1128.3472900390625, + 234.04983520507812 + ], + "reprojection_error_px": 4.950578325290361, + "confidence": 0.5278189208292927 + }, + { + "marker_id": 83, + "observed_center_px": [ + 1323.25, + 208.5 + ], + "projected_center_px": [ + 1319.932373046875, + 207.5139923095703 + ], + "reprojection_error_px": 3.461048940088533, + "confidence": 0.5445844663450473 + }, + { + "marker_id": 75, + "observed_center_px": [ + 1108.0, + 182.0 + ], + "projected_center_px": [ + 1111.3167724609375, + 182.71337890625 + ], + "reprojection_error_px": 3.392622734922916, + "confidence": 0.5380549070504695 + }, + { + "marker_id": 61, + "observed_center_px": [ + 1280.0, + 135.0 + ], + "projected_center_px": [ + 1282.8663330078125, + 133.39898681640625 + ], + "reprojection_error_px": 3.283155208898362, + "confidence": 0.5493902887184056 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/robot_state.eval.json b/data/camera_study/Scene10/k3_abf/robot_state.eval.json new file mode 100644 index 0000000..8589de4 --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 118.9791775359666, + "gt": 120.0, + "error": 1.020822464033401, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 59.90424253022675, + "gt": 60.0, + "error": 0.09575746977324684, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.81584734726059, + "gt": -110.0, + "error": 0.18415265273941372, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "a", + "estimate": 19.999466255513912, + "gt": 20.0, + "error": 0.0005337444860913365, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "b", + "estimate": 0.0, + "gt": 30.0, + "error": 30.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "c", + "estimate": 0.0, + "gt": 180.0, + "error": 180.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "e", + "estimate": 0.0, + "gt": 4.0, + "error": 4.0, + "unit": "mm", + "observable": false, + "n_markers": 0 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.09348128899958397, + "max_abs_deg": 0.18415265273941372, + "mean_abs_mm": 1.020822464033401, + "max_abs_mm": 1.020822464033401 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abf/robot_state.json b/data/camera_study/Scene10/k3_abf/robot_state.json new file mode 100644 index 0000000..9f7d63e --- /dev/null +++ b/data/camera_study/Scene10/k3_abf/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:00Z", + "method": "hybrid", + "movements": { + "x": { + "value": 118.9791775359666, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 59.90424253022675, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.81584734726059, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "a": { + "value": 19.999466255513912, + "unit": "deg", + "observable": true, + "confidence": "medium", + "n_markers": 1 + }, + "b": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "c": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "e": { + "value": 0.0, + "unit": "mm", + "observable": false, + "confidence": "none", + "n_markers": 0 + } + }, + "residual_rms": 1.9979485962826682, + "num_markers": 26 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/aruco_marker_poses.json b/data/camera_study/Scene10/k3_abg/aruco_marker_poses.json new file mode 100644 index 0000000..7043bd7 --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/aruco_marker_poses.json @@ -0,0 +1,1400 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:18:45Z", + "summary": { + "num_cameras": 3, + "num_markers": 31 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.3436164441291462, + -0.2882000356229549, + -0.027218412001557692 + ], + "position_mm": [ + 343.6164441291462, + -288.2000356229549, + -27.21841200155769 + ], + "normal": [ + 0.008486800542187013, + -0.001030779058135478, + 0.9999634551877836 + ], + "corners_m": [ + [ + 0.3318466251575101, + -0.299858162985375, + -0.027322829780752178 + ], + [ + 0.3321043543638235, + -0.27647722868625013, + -0.02691892396648614 + ], + [ + 0.3555389987511573, + -0.2766248859082611, + -0.027498732434942226 + ], + [ + 0.35497579824409403, + -0.29983986491193315, + -0.02713316182405022 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.295692248060263 + }, + { + "marker_id": 48, + "link": "Board", + "position_m": [ + 0.6869175479989345, + -0.318269455183772, + -0.026615550426303296 + ], + "position_mm": [ + 686.9175479989344, + -318.269455183772, + -26.615550426303297 + ], + "normal": [ + 0.019203495951754204, + 0.01551879044723681, + 0.9996951499763744 + ], + "corners_m": [ + [ + 0.6751413755528558, + -0.3304082207649319, + -0.026241531682561478 + ], + [ + 0.6756073850806442, + -0.30646781658535543, + -0.026538611405195544 + ], + [ + 0.6980966149767299, + -0.30696259434947254, + -0.0270517758810516 + ], + [ + 0.6988248163855075, + -0.3292391890353282, + -0.02663028273640457 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.113811794498364 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16776172391158575, + -0.17339091147700966, + -0.027091732874590796 + ], + "position_mm": [ + 167.76172391158576, + -173.39091147700967, + -27.091732874590797 + ], + "normal": [ + -0.00991893588846089, + -0.0015024056001553543, + 0.9999496774779486 + ], + "corners_m": [ + [ + 0.15571311019065712, + -0.18441329486443764, + -0.027378631608791164 + ], + [ + 0.15636490929909494, + -0.16138570593340984, + -0.027035748425098784 + ], + [ + 0.17980728833255893, + -0.1620907545230234, + -0.02710272418965161 + ], + [ + 0.17916158782403205, + -0.18567389058716774, + -0.026849827274821634 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.393514749475568 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.4882003560338498, + 0.21454919235920805, + -0.026922011646615267 + ], + "position_mm": [ + 488.2003560338498, + 214.54919235920806, + -26.922011646615267 + ], + "normal": [ + -0.029659504505452988, + -0.017595028497744532, + 0.9994051874813612 + ], + "corners_m": [ + [ + 0.4767699379764077, + 0.20330095680321536, + -0.027672222780932863 + ], + [ + 0.47706098604732483, + 0.22627406811344827, + -0.026831355258605454 + ], + [ + 0.4995452085482018, + 0.22579164311548014, + -0.02660250535209066 + ], + [ + 0.499425291563465, + 0.20283010140468835, + -0.026581963194832095 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.782305498437523 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3397057853324848, + -0.32761642968866456, + -0.026770729486928865 + ], + "position_mm": [ + 339.7057853324848, + -327.61642968866454, + -26.770729486928865 + ], + "normal": [ + -0.0038386241937272995, + 0.02101391696851812, + 0.9997718140945661 + ], + "corners_m": [ + [ + 0.3278639473504119, + -0.33947359853299364, + -0.026400336093934076 + ], + [ + 0.3285951862477269, + -0.31572555751919257, + -0.027234919416076992 + ], + [ + 0.3512091669230128, + -0.3159264845204117, + -0.02679814279003088 + ], + [ + 0.3511548408087876, + -0.33934007818206036, + -0.026649519647673512 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.27494452728199 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.2843476088903887, + -0.26094548849460475, + -0.027138864787087866 + ], + "position_mm": [ + 284.3476088903887, + -260.9454884946048, + -27.138864787087865 + ], + "normal": [ + -0.003804852274444313, + 0.0042146046060718145, + 0.9999838799736644 + ], + "corners_m": [ + [ + 0.27230318002763604, + -0.27232174987195573, + -0.02723712732292594 + ], + [ + 0.2729933409501924, + -0.24896918707306379, + -0.027131664060193163 + ], + [ + 0.2963322518217914, + -0.24968033408397944, + -0.0272425943215498 + ], + [ + 0.2957616627619349, + -0.27281068294942024, + -0.026944073443682555 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.329430546753944 + }, + { + "marker_id": 59, + "link": "Board", + "position_m": [ + 0.6271531267350818, + -0.2767460787695593, + -0.02680912156499644 + ], + "position_mm": [ + 627.1531267350819, + -276.7460787695593, + -26.809121564996442 + ], + "normal": [ + -0.017553027598460103, + -0.018829929153653342, + 0.9996686075846316 + ], + "corners_m": [ + [ + 0.6163665738281722, + -0.2884168282951614, + -0.02708587373036205 + ], + [ + 0.615419349019124, + -0.2658152874581792, + -0.026941169391599955 + ], + [ + 0.6379736103226642, + -0.2648156154961137, + -0.02626549888750094 + ], + [ + 0.6388529737703668, + -0.28793658382878307, + -0.026943944250522805 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.711990484789286 + }, + { + "marker_id": 63, + "link": "Board", + "position_m": [ + 0.7745275530930732, + -0.23668902044925139, + -0.0268275714430213 + ], + "position_mm": [ + 774.5275530930732, + -236.6890204492514, + -26.827571443021302 + ], + "normal": [ + 2.1180374299654616e-05, + 0.0409148460165396, + 0.9991626368749157 + ], + "corners_m": [ + [ + 0.7633842187513384, + -0.2489041225725764, + -0.02604133462583499 + ], + [ + 0.7631291842153038, + -0.22554286848148805, + -0.02757565605017666 + ], + [ + 0.7854454231093616, + -0.22485982283181333, + -0.027010091014729357 + ], + [ + 0.7861513862962891, + -0.2474492679111277, + -0.0266832040813442 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.79307389516771 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.019136925157356512, + -0.18966352968628727, + -0.02633690535953152 + ], + "position_mm": [ + -19.13692515735651, + -189.66352968628726, + -26.33690535953152 + ], + "normal": [ + 0.0335473261019229, + 0.041382666254256344, + 0.9985800177477516 + ], + "corners_m": [ + [ + -0.030952879598025205, + -0.20108907376971233, + -0.02572743623952128 + ], + [ + -0.03065500587455008, + -0.17797561697314282, + -0.026173330855649875 + ], + [ + -0.0073381559244813585, + -0.17820500155163885, + -0.027467907019117655 + ], + [ + -0.007601659232369399, + -0.2013844264506551, + -0.025978947323837265 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.264174679646008 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.0058454909381415576, + -0.2779529691729145, + -0.026744981749715912 + ], + "position_mm": [ + 5.845490938141557, + -277.9529691729145, + -26.74498174971591 + ], + "normal": [ + 0.008348706528634037, + 0.00841253737090253, + 0.9999297616904309 + ], + "corners_m": [ + [ + -0.0059699188531544675, + -0.28957114009973217, + -0.026540419042121156 + ], + [ + -0.005508067389890795, + -0.26610984892756606, + -0.02675808413668042 + ], + [ + 0.017531975404024958, + -0.26630848619103503, + -0.02693228068755591 + ], + [ + 0.017327974591586536, + -0.2898224014733248, + -0.026749143132506162 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.33102505299792 + }, + { + "marker_id": 71, + "link": "Board", + "position_m": [ + 0.7509111191421864, + -0.2855038724522174, + -0.026645208288605504 + ], + "position_mm": [ + 750.9111191421864, + -285.5038724522174, + -26.645208288605502 + ], + "normal": [ + -0.041777888769783986, + -0.024469560501440446, + 0.9988272366224331 + ], + "corners_m": [ + [ + 0.7391127988200036, + -0.29637083291585326, + -0.027120191741793056 + ], + [ + 0.740890300929251, + -0.2730886316287105, + -0.027058084553021295 + ], + [ + 0.762190290099723, + -0.2746721988504304, + -0.0256087849700469 + ], + [ + 0.7614510867197684, + -0.29788382641387556, + -0.026793771889560763 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.60084523822078 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.4414133198826211, + 0.1935115960456138, + -0.02738745789971034 + ], + "position_mm": [ + 441.4133198826211, + 193.5115960456138, + -27.38745789971034 + ], + "normal": [ + 0.02298579013478705, + 0.036855436629363525, + 0.9990562197607994 + ], + "corners_m": [ + [ + 0.4301134974182766, + 0.181338076255318, + -0.02689044864326103 + ], + [ + 0.4298312782010313, + 0.2048251085816973, + -0.027324806173678603 + ], + [ + 0.4526236030052486, + 0.20567530528523256, + -0.0283074767187113 + ], + [ + 0.45308490090592785, + 0.18220789406020726, + -0.027027100063190434 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.20429774164863 + }, + { + "marker_id": 75, + "link": "Board", + "position_m": [ + -0.027602888025185998, + 0.19326801694123372, + -0.026446125368980555 + ], + "position_mm": [ + -27.602888025185997, + 193.26801694123372, + -26.446125368980557 + ], + "normal": [ + -0.060075453914578344, + -0.029149257025994694, + 0.9977681397257531 + ], + "corners_m": [ + [ + -0.039865687398469705, + 0.18376529148770973, + -0.027259026027503214 + ], + [ + -0.03849624729094642, + 0.20569603404672487, + -0.0269455814096749 + ], + [ + -0.015581080345926531, + 0.20247489956703318, + -0.025240737148984713 + ], + [ + -0.016468537065401335, + 0.18113584266346716, + -0.026339156889759397 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.53174876690096 + }, + { + "marker_id": 85, + "link": "Board", + "position_m": [ + 0.5066842431978995, + -0.3133662953069258, + -0.027703762666045156 + ], + "position_mm": [ + 506.6842431978995, + -313.3662953069258, + -27.703762666045158 + ], + "normal": [ + -0.03294847457584921, + 0.051389217503334375, + 0.9981350341249022 + ], + "corners_m": [ + [ + 0.4939869989100595, + -0.32503288261833546, + -0.027012482781554544 + ], + [ + 0.4969247540723844, + -0.2999963773045221, + -0.029263412303624364 + ], + [ + 0.5184612735662326, + -0.3025774623172223, + -0.027275833706206735 + ], + [ + 0.5173639462429215, + -0.3258584589876232, + -0.02726332187279498 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.44744766210312 + }, + { + "marker_id": 92, + "link": "Board", + "position_m": [ + 0.6466525463525512, + -0.18705950518033754, + -0.027251640596468882 + ], + "position_mm": [ + 646.6525463525512, + -187.05950518033754, + -27.25164059646888 + ], + "normal": [ + 0.03825629107142391, + 0.02106249247983472, + 0.9990459587046011 + ], + "corners_m": [ + [ + 0.6348169438992656, + -0.19908819490408183, + -0.026701161792317577 + ], + [ + 0.6351422984165451, + -0.17561611521746853, + -0.026896089255574587 + ], + [ + 0.6584931113326336, + -0.17533126963333032, + -0.02811237794189459 + ], + [ + 0.6581578317617608, + -0.1982024409664695, + -0.02729693339608876 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.278197887009746 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18634033734325245, + -0.27699507918314276, + -0.027097315527139086 + ], + "position_mm": [ + 186.34033734325246, + -276.99507918314276, + -27.097315527139084 + ], + "normal": [ + -0.007897140108898245, + 0.0014538259104092122, + 0.9999677602644611 + ], + "corners_m": [ + [ + 0.17521025742526752, + -0.2890500288721174, + -0.027156139468559017 + ], + [ + 0.17391067340833297, + -0.26556346852844465, + -0.02722352405137195 + ], + [ + 0.19761034196810823, + -0.265275385533947, + -0.0270135833886443 + ], + [ + 0.19863007657130102, + -0.28809143379806207, + -0.02699601519998107 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.375935264682496 + }, + { + "marker_id": 97, + "link": "Board", + "position_m": [ + 0.30636803765652804, + -0.35830147744033514, + -0.026608567989770286 + ], + "position_mm": [ + 306.36803765652803, + -358.30147744033513, + -26.608567989770286 + ], + "normal": [ + -0.02273222299944812, + 0.008184279004986307, + 0.9997080892013789 + ], + "corners_m": [ + [ + 0.2948367277090824, + -0.3697373961363631, + -0.026952401699410034 + ], + [ + 0.2951794117243798, + -0.34632750801900974, + -0.026792899833951573 + ], + [ + 0.31838788070454127, + -0.34672347565732436, + -0.026595886203370802 + ], + [ + 0.3170681304881087, + -0.3704175299486434, + -0.026093084222348736 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.15503168307003 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6509230239560893, + -0.2238901991799186, + -0.027191723156374106 + ], + "position_mm": [ + 650.9230239560893, + -223.8901991799186, + -27.191723156374106 + ], + "normal": [ + -0.039902650413027034, + -0.028539135624118243, + 0.998795923213468 + ], + "corners_m": [ + [ + 0.6391793308382268, + -0.23449741533371493, + -0.027829223221398074 + ], + [ + 0.6402704767948758, + -0.21175977022633347, + -0.027407659641463047 + ], + [ + 0.6624757434098013, + -0.21320639113608472, + -0.026288793848666805 + ], + [ + 0.6617665447814527, + -0.23609722002354125, + -0.027241215913968497 + ] + ], + "num_cameras": 3, + "edge_length_mm": 22.65530099561293 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10458370403611032, + -0.19080500579043475, + -0.026884615566273657 + ], + "position_mm": [ + 104.58370403611032, + -190.80500579043473, + -26.884615566273656 + ], + "normal": [ + 0.04452637223932488, + -0.02423559778569817, + 0.9987141923369143 + ], + "corners_m": [ + [ + 0.09309253976741202, + -0.20295412003920177, + -0.026630229603713258 + ], + [ + 0.09231221038834353, + -0.17984500596723318, + -0.026108389714106544 + ], + [ + 0.11609343112576793, + -0.17872397576727528, + -0.027067532113396436 + ], + [ + 0.1168366348629178, + -0.20169692138802872, + -0.027732310833878396 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.438142904805144 + }, + { + "marker_id": 105, + "link": "Board", + "position_m": [ + 0.5221549309495351, + -0.26810189211715746, + -0.02667115005754659 + ], + "position_mm": [ + 522.1549309495351, + -268.10189211715743, + -26.67115005754659 + ], + "normal": [ + -0.016679623829703484, + -0.019709864046842277, + 0.9996666001263395 + ], + "corners_m": [ + [ + 0.5109269741757941, + -0.2798267761247853, + -0.0269436911560013 + ], + [ + 0.5108777418371295, + -0.2565126881340527, + -0.026780748251690665 + ], + [ + 0.5330871831262275, + -0.25676132020459447, + -0.0261102726342492 + ], + [ + 0.5337278246589895, + -0.27930678400519754, + -0.0268498881882452 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.72732986707743 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.3103640217286596, + -0.15474067952947151, + 0.15657814381677465 + ], + "position_mm": [ + 310.3640217286596, + -154.74067952947152, + 156.57814381677466 + ], + "normal": [ + -0.34413759744906247, + -0.7267991689914601, + 0.594417598978454 + ], + "corners_m": [ + [ + 0.2989706159739353, + -0.14389236064419994, + 0.16302686475815029 + ], + [ + 0.3212370967918054, + -0.15010803963116776, + 0.16875458656599518 + ], + [ + 0.32198965136395746, + -0.1655215320134177, + 0.1499125530717209 + ], + [ + 0.2992587227849405, + -0.1594407858291007, + 0.1446185708712322 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.096965834555895 + }, + { + "marker_id": 205, + "link": "Board", + "position_m": [ + 0.7525497655277292, + -0.09043945593196193, + 0.00042806076046793533 + ], + "position_mm": [ + 752.5497655277293, + -90.43945593196193, + 0.42806076046793534 + ], + "normal": [ + -0.019977669275183203, + -0.021288431466082284, + 0.9995737568664183 + ], + "corners_m": [ + [ + 0.7409175862953591, + -0.07876520127690748, + 0.00040851728801957407 + ], + [ + 0.7639753157663242, + -0.07917486628905837, + 0.0009326082872874178 + ], + [ + 0.7641406192091803, + -0.10192297435412707, + 0.0003787321250400061 + ], + [ + 0.7411655408400534, + -0.10189478180775477, + -7.614658475256722e-06 + ] + ], + "num_cameras": 3, + "edge_length_mm": 22.983942391903284 + }, + { + "marker_id": 206, + "link": "Board", + "position_m": [ + 0.6500000814765554, + -0.010119256498941923, + 0.00042321635657145365 + ], + "position_mm": [ + 650.0000814765555, + -10.119256498941922, + 0.4232163565714536 + ], + "normal": [ + 0.011592821740882445, + -0.007759304215309904, + 0.9999026951069682 + ], + "corners_m": [ + [ + 0.6383081225600975, + 0.0013785011640512724, + 0.0006024455240636259 + ], + [ + 0.6615704626944585, + 0.0017490939301256006, + 0.00042655368077619 + ], + [ + 0.6617018160883879, + -0.02165869377987186, + 0.0001526571045244104 + ], + [ + 0.6384199245632778, + -0.021945927310072704, + 0.0005112091169215882 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.321753530436958 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.021722357064173435, + -0.01990102431395857, + 0.0005605224618752201 + ], + "position_mm": [ + 21.722357064173433, + -19.901024313958573, + 0.56052246187522 + ], + "normal": [ + -0.0020871904241815302, + -0.01886856737953801, + 0.9998197941635167 + ], + "corners_m": [ + [ + 0.009394590241300786, + -0.008582815130058057, + 0.0004106368222462112 + ], + [ + 0.033429398996811834, + -0.00879498405105111, + 0.0011550583412384399 + ], + [ + 0.034167072400248015, + -0.03046816224088398, + 3.048047737544406e-05 + ], + [ + 0.009898366618333102, + -0.03175813583384113, + 0.0006459142066407851 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.313721011840666 + }, + { + "marker_id": 211, + "link": "Board", + "position_m": [ + 0.2530065866788742, + -0.009078967052198496, + 0.0002376119420386636 + ], + "position_mm": [ + 253.0065866788742, + -9.078967052198497, + 0.2376119420386636 + ], + "normal": [ + 0.03042550068248083, + -0.009720333478128397, + 0.9994897718462628 + ], + "corners_m": [ + [ + 0.24136623721995637, + 0.002850179394630775, + 0.0005813893433372668 + ], + [ + 0.2654058209981499, + 0.001933732747426273, + 9.756259486912603e-05 + ], + [ + 0.26496436392725625, + -0.020677306700458958, + -0.00036621710184547444 + ], + [ + 0.2402899245701341, + -0.020422473650392074, + 0.0006377129317937359 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.66894498028794 + }, + { + "marker_id": 215, + "link": "Board", + "position_m": [ + 0.2503901684603027, + -0.08856307309424334, + 0.00039288687013597787 + ], + "position_mm": [ + 250.3901684603027, + -88.56307309424334, + 0.3928868701359779 + ], + "normal": [ + 0.007232729326328577, + 0.0027016349040499543, + 0.9999701939534684 + ], + "corners_m": [ + [ + 0.23902949327435843, + -0.07632679139695574, + 0.0004877342920639196 + ], + [ + 0.26269735642646996, + -0.07741021599856693, + 0.00022790597917037866 + ], + [ + 0.26184448544657757, + -0.1007784518777765, + 0.00038851965079700264 + ], + [ + 0.237989338693805, + -0.0997368331036742, + 0.0004673875585126106 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.597393115558017 + }, + { + "marker_id": 217, + "link": "Board", + "position_m": [ + 0.6466909219864878, + -0.0892177191817774, + 7.305522205162119e-05 + ], + "position_mm": [ + 646.6909219864879, + -89.2177191817774, + 0.07305522205162118 + ], + "normal": [ + 0.031903276312503726, + 0.024590614198918618, + 0.9991884119893745 + ], + "corners_m": [ + [ + 0.6361104218965458, + -0.0770202634777477, + 2.5174710291951727e-05 + ], + [ + 0.6591388720037039, + -0.07805519834373481, + -0.0005144661440648317 + ], + [ + 0.6575009066789209, + -0.10155273673928715, + -5.1404048745910545e-05 + ], + [ + 0.6340134873667808, + -0.10024267816633994, + 0.0008329163707252752 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.372136478259012 + }, + { + "marker_id": 231, + "link": "Ellbow", + "position_m": [ + 0.32076859486762044, + -0.01524319922432283, + 0.31282342496668425 + ], + "position_mm": [ + 320.76859486762044, + -15.24319922432283, + 312.82342496668423 + ], + "normal": [ + 0.028168973819642083, + -0.06458750884500264, + 0.9975143921844662 + ], + "corners_m": [ + [ + 0.30836768888960014, + -0.0036037655708457935, + 0.31411052077204416 + ], + [ + 0.33275752178231427, + -0.003084324320197504, + 0.3130862256830581 + ], + [ + 0.3330098655315567, + -0.02674206915672306, + 0.31192168251782915 + ], + [ + 0.3089393032670106, + -0.027542637849524966, + 0.31217527089380565 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.053392173103504 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.2308365452408297, + -0.03638583612488499, + 0.30578441485892116 + ], + "position_mm": [ + 230.8365452408297, + -36.38583612488499, + 305.78441485892114 + ], + "normal": [ + -0.001055138505171273, + -0.4929018771127966, + 0.870084263862654 + ], + "corners_m": [ + [ + 0.21916941208668386, + -0.025909279754732638, + 0.31179244713575177 + ], + [ + 0.24300447432432157, + -0.026078420259956665, + 0.311552080424842 + ], + [ + 0.2424167167094716, + -0.04705407116019163, + 0.2998417599105992 + ], + [ + 0.21875557784284172, + -0.046501573324659026, + 0.29995137196449184 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.823159414911125 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3212481121172438, + -0.04493182099566431, + 0.2977779096273389 + ], + "position_mm": [ + 321.2481121172438, + -44.93182099566431, + 297.7779096273389 + ], + "normal": [ + -0.006288117640744505, + -0.7720501739184589, + 0.635530478048861 + ], + "corners_m": [ + [ + 0.309063029343543, + -0.037724941363536116, + 0.3065037007640987 + ], + [ + 0.33263404364298893, + -0.03758812410923298, + 0.3067270081119 + ], + [ + 0.3337623390724991, + -0.05278086469502056, + 0.2884492040814138 + ], + [ + 0.3095330364099442, + -0.0516333538148676, + 0.2894317255519432 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.41713367636042 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.28245431448157515, + -0.040875929444801215, + 0.30195297826672424 + ], + "position_mm": [ + 282.4543144815751, + -40.875929444801216, + 301.95297826672424 + ], + "normal": [ + 0.0023468532931823077, + -0.7730036638000843, + 0.6343972162858743 + ], + "corners_m": [ + [ + 0.2700382946363952, + -0.03362915187458207, + 0.31077250511915705 + ], + [ + 0.29389523064780787, + -0.032859098753783116, + 0.31173424815609463 + ], + [ + 0.2948582466284929, + -0.04824492536521031, + 0.2928727664684687 + ], + [ + 0.27102548601360466, + -0.048770541785629354, + 0.29243239332317655 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.97364109568157 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/aruco_positions_initial.json b/data/camera_study/Scene10/k3_abg/aruco_positions_initial.json new file mode 100644 index 0000000..31eaa13 --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/aruco_positions_initial.json @@ -0,0 +1,657 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:18:43Z", + "summary": { + "num_cameras": 3, + "num_markers": 31, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "position_m": [ + 0.34376654762038256, + -0.28839563095466614, + -0.02760537942584299 + ], + "position_mm": [ + 343.76654762038254, + -288.39563095466616, + -27.60537942584299 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6869553120509962, + -0.31828288284648676, + -0.026714386151434642 + ], + "position_mm": [ + 686.9553120509962, + -318.28288284648676, + -26.714386151434642 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16791244327108318, + -0.17356576866439072, + -0.02748782876628542 + ], + "position_mm": [ + 167.9124432710832, + -173.56576866439073, + -27.487828766285418 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4882162799182303, + 0.2145787188045998, + -0.027009952548570484 + ], + "position_mm": [ + 488.2162799182303, + 214.57871880459982, + -27.009952548570485 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.339841934667412, + -0.3277465381175194, + -0.026516689054223226 + ], + "position_mm": [ + 339.84193466741203, + -327.74653811751944, + -26.516689054223225 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2844629212143551, + -0.2610707104386771, + -0.027225119001680127 + ], + "position_mm": [ + 284.4629212143551, + -261.07071043867705, + -27.225119001680127 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 59, + "position_m": [ + 0.6271865903718744, + -0.27675395886676263, + -0.026907347912707404 + ], + "position_mm": [ + 627.1865903718744, + -276.7539588667626, + -26.907347912707404 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7745703446602326, + -0.23669721919029751, + -0.02692049447484487 + ], + "position_mm": [ + 774.5703446602325, + -236.69721919029752, + -26.920494474844872 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.019161061515149687, + -0.18966800813053222, + -0.02643246570556346 + ], + "position_mm": [ + -19.161061515149687, + -189.66800813053223, + -26.43246570556346 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.0058255026810429935, + -0.27796402910182255, + -0.0268471839268234 + ], + "position_mm": [ + 5.825502681042994, + -277.9640291018226, + -26.847183926823398 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 71, + "position_m": [ + 0.7509604864944157, + -0.28551125075942685, + -0.02674480689368867 + ], + "position_mm": [ + 750.9604864944157, + -285.51125075942684, + -26.744806893688672 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.441421275570027, + 0.19353518392648628, + -0.027474752620069133 + ], + "position_mm": [ + 441.42127557002703, + 193.53518392648627, + -27.474752620069133 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027619523009286034, + 0.19330209649474686, + -0.02652757806826013 + ], + "position_mm": [ + -27.619523009286034, + 193.30209649474685, + -26.52757806826013 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5068041661114264, + -0.3135045828070479, + -0.02781607148385666 + ], + "position_mm": [ + 506.8041661114264, + -313.5045828070479, + -27.81607148385666 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 92, + "position_m": [ + 0.6466795964899504, + -0.187063834404983, + -0.027344911707301592 + ], + "position_mm": [ + 646.6795964899504, + -187.063834404983, + -27.34491170730159 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18633484620752572, + -0.2770150714096407, + -0.0271913175980566 + ], + "position_mm": [ + 186.33484620752571, + -277.0150714096407, + -27.1913175980566 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.3063974784693937, + -0.3583267777562686, + -0.026730187614499426 + ], + "position_mm": [ + 306.3974784693937, + -358.3267777562686, + -26.730187614499425 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6509379503738589, + -0.22390846020799526, + -0.027109690309085218 + ], + "position_mm": [ + 650.9379503738589, + -223.90846020799526, + -27.109690309085217 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10475760712391176, + -0.1910399868695238, + -0.027401995726118854 + ], + "position_mm": [ + 104.75760712391175, + -191.0399868695238, + -27.401995726118855 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 105, + "position_m": [ + 0.5221927600487571, + -0.2681123616214047, + -0.026767089480739203 + ], + "position_mm": [ + 522.1927600487571, + -268.1123616214047, + -26.7670894807392 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3103047978697998, + -0.15460664642080307, + 0.1562436623490925 + ], + "position_mm": [ + 310.3047978697998, + -154.60664642080306, + 156.24366234909252 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7524289457637402, + -0.09025863172893372, + 0.0004226980684333642 + ], + "position_mm": [ + 752.4289457637402, + -90.25863172893372, + 0.4226980684333642 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500135896057839, + -0.010136006087639692, + 0.00037332949430560306 + ], + "position_mm": [ + 650.013589605784, + -10.136006087639691, + 0.3733294943056031 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021698298057675435, + -0.01987996226175908, + 0.0004639115686330192 + ], + "position_mm": [ + 21.698298057675434, + -19.87996226175908, + 0.4639115686330192 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25300004414982186, + -0.009074606313736522, + 0.00016276608304794952 + ], + "position_mm": [ + 253.00004414982186, + -9.074606313736522, + 0.1627660830479495 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25050098796217085, + -0.08866387046146879, + -7.820550617432224e-05 + ], + "position_mm": [ + 250.50098796217085, + -88.66387046146879, + -0.07820550617432225 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 217, + "position_m": [ + 0.6467219380997009, + -0.08921491325883438, + -5.1763125537710854e-06 + ], + "position_mm": [ + 646.7219380997009, + -89.21491325883437, + -0.005176312553771085 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.3207690277599889, + -0.015216772311061532, + 0.3127526846957443 + ], + "position_mm": [ + 320.7690277599889, + -15.216772311061533, + 312.7526846957443 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.2306461434605388, + -0.03611686991626039, + 0.30489678148669036 + ], + "position_mm": [ + 230.6461434605388, + -36.11686991626039, + 304.8967814866904 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32124750270287283, + -0.04485517308753202, + 0.2977334121318826 + ], + "position_mm": [ + 321.24750270287285, + -44.85517308753202, + 297.7334121318826 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.28219108489806893, + -0.040522619575214074, + 0.30137183965745123 + ], + "position_mm": [ + 282.19108489806894, + -40.52261957521407, + 301.37183965745123 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/aruco_positions_optimized.json b/data/camera_study/Scene10/k3_abg/aruco_positions_optimized.json new file mode 100644 index 0000000..aafae63 --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/aruco_positions_optimized.json @@ -0,0 +1,656 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:18:45Z", + "summary": { + "num_cameras": 3, + "num_markers": 31, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "position_m": [ + 0.3448624367851065, + -0.2854316161226542, + -0.030445654403084877 + ], + "position_mm": [ + 344.86243678510647, + -285.4316161226542, + -30.445654403084877 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6878100845704516, + -0.3188784608581159, + -0.02770290159538535 + ], + "position_mm": [ + 687.8100845704515, + -318.8784608581159, + -27.702901595385352 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16690236786196008, + -0.17421073710741475, + -0.025967677678052744 + ], + "position_mm": [ + 166.90236786196007, + -174.21073710741476, + -25.967677678052745 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4869722465591519, + 0.21379586961544966, + -0.025613931458349014 + ], + "position_mm": [ + 486.97224655915187, + 213.79586961544967, + -25.613931458349015 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3392679346468949, + -0.32890211122434443, + -0.025623412643085108 + ], + "position_mm": [ + 339.2679346468949, + -328.9021112243444, + -25.623412643085107 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28468534981633437, + -0.2608060177924364, + -0.027645232740783093 + ], + "position_mm": [ + 284.68534981633434, + -260.8060177924364, + -27.645232740783094 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 59, + "position_m": [ + 0.6250548269344504, + -0.27748730794807763, + -0.02399124444250654 + ], + "position_mm": [ + 625.0548269344504, + -277.4873079480776, + -23.99124444250654 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7750951741795811, + -0.2361174424857202, + -0.027898531516473264 + ], + "position_mm": [ + 775.095174179581, + -236.1174424857202, + -27.898531516473263 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.019130877237820546, + -0.18939336228945788, + -0.026339374184380704 + ], + "position_mm": [ + -19.130877237820545, + -189.39336228945788, + -26.339374184380702 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005783058721743177, + -0.2779832591683582, + -0.02684481357140308 + ], + "position_mm": [ + 5.783058721743177, + -277.9832591683582, + -26.84481357140308 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 71, + "position_m": [ + 0.7509030926633471, + -0.285800095863574, + -0.026682754224881117 + ], + "position_mm": [ + 750.9030926633471, + -285.80009586357403, + -26.682754224881116 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.44250773253910364, + 0.19423558352813866, + -0.028760049959197054 + ], + "position_mm": [ + 442.50773253910364, + 194.23558352813865, + -28.760049959197055 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027672135644792744, + 0.19341131907667805, + -0.026417973386273132 + ], + "position_mm": [ + -27.672135644792743, + 193.41131907667804, + -26.417973386273133 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5057970120432173, + -0.31427788849457194, + -0.02663182948277163 + ], + "position_mm": [ + 505.79701204321725, + -314.2778884945719, + -26.631829482771632 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 92, + "position_m": [ + 0.6466448029956177, + -0.18532606949742023, + -0.027362576596259215 + ], + "position_mm": [ + 646.6448029956176, + -185.32606949742024, + -27.362576596259217 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18665912583776034, + -0.2758855877218519, + -0.028528129653081435 + ], + "position_mm": [ + 186.65912583776034, + -275.8855877218519, + -28.528129653081436 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.3031740224298305, + -0.36011739903332557, + -0.02309281556975095 + ], + "position_mm": [ + 303.1740224298305, + -360.11739903332557, + -23.09281556975095 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6518038218615391, + -0.2234025728624926, + -0.028315941176615716 + ], + "position_mm": [ + 651.8038218615391, + -223.4025728624926, + -28.315941176615716 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10491604188956417, + -0.19017471990833582, + -0.027489181600770372 + ], + "position_mm": [ + 104.91604188956417, + -190.17471990833582, + -27.489181600770372 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 105, + "position_m": [ + 0.5235692816660107, + -0.26680094056522297, + -0.02830536849804387 + ], + "position_mm": [ + 523.5692816660107, + -266.80094056522296, + -28.305368498043872 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31047326557078364, + -0.15477610127443364, + 0.15668596585484423 + ], + "position_mm": [ + 310.47326557078367, + -154.77610127443364, + 156.68596585484423 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7525785119004772, + -0.09046204812106035, + 0.00038433774713452954 + ], + "position_mm": [ + 752.5785119004772, + -90.46204812106035, + 0.38433774713452956 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6499006239738966, + -0.010294738162019286, + 0.0005404459238829005 + ], + "position_mm": [ + 649.9006239738966, + -10.294738162019286, + 0.5404459238829005 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.02134940549028198, + -0.021071279746852148, + 0.0018622528481283995 + ], + "position_mm": [ + 21.34940549028198, + -21.07127974685215, + 1.8622528481283995 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25311289711814766, + -0.008637200725043355, + -0.00016936058573383586 + ], + "position_mm": [ + 253.11289711814766, + -8.637200725043355, + -0.16936058573383586 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.2503280498355814, + -0.08858636256324671, + 0.00044372783298101467 + ], + "position_mm": [ + 250.32804983558137, + -88.58636256324671, + 0.44372783298101465 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 217, + "position_m": [ + 0.6466571507159583, + -0.09022527662622597, + -0.0002270315373440965 + ], + "position_mm": [ + 646.6571507159583, + -90.22527662622596, + -0.2270315373440965 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.3213458468854583, + -0.017692119461682136, + 0.3101822377063826 + ], + "position_mm": [ + 321.3458468854583, + -17.692119461682136, + 310.1822377063826 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23099384823533983, + -0.03643286377837865, + 0.3059501135028972 + ], + "position_mm": [ + 230.99384823533984, + -36.432863778378646, + 305.9501135028972 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32118447035461845, + -0.04110235132446806, + 0.29716038430960484 + ], + "position_mm": [ + 321.18447035461844, + -41.10235132446806, + 297.16038430960486 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2839146631421356, + -0.040199887074015055, + 0.3012104787148511 + ], + "position_mm": [ + 283.91466314213557, + -40.19988707401505, + 301.21047871485115 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/render_a_aruco_detection.json b/data/camera_study/Scene10/k3_abg/render_a_aruco_detection.json new file mode 100644 index 0000000..f577fe5 --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/render_a_aruco_detection.json @@ -0,0 +1,2330 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:40Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "a", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.npz", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.png", + "image_sha256": "3fda1f21fe402f6ca45be61726fe8bc4ff11185ad27638be512a8f4f598b0fe5", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 26, + "num_rejected_candidates": 35 + }, + "detections": [ + { + "observation_id": "749c5d2a-7d9d-4b69-83ee-5969ca3b413b", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 547.0 + ], + [ + 939.0, + 530.0 + ], + [ + 956.0, + 571.0 + ], + [ + 917.0, + 588.0 + ] + ], + "center_px": [ + 928.0, + 559.0 + ], + "quality": { + "area_px": 1888.0, + "perimeter_px": 173.85755157470703, + "sharpness": { + "laplacian_var": 865.6237972020846 + }, + "contrast": { + "p05": 50.0, + "p95": 187.0, + "dynamic_range": 137.0, + "mean_gray": 87.40342679127725, + "std_gray": 54.46998248000789 + }, + "geometry": { + "distance_to_center_norm": 0.23207330703735352, + "distance_to_border_px": 484.0 + }, + "edge_ratio": 1.0432630581405598, + "edge_lengths_px": [ + 42.54409408569336, + 44.384681701660156, + 42.54409408569336, + 44.384681701660156 + ] + }, + "confidence": 0.9585310168868925 + }, + { + "observation_id": "f822928c-ffe1-498b-b0b4-2915ac1ea6bf", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 739.0, + 242.0 + ], + [ + 774.0, + 228.0 + ], + [ + 792.0, + 270.0 + ], + [ + 757.0, + 283.0 + ] + ], + "center_px": [ + 765.5, + 255.75 + ], + "quality": { + "area_px": 1695.5, + "perimeter_px": 165.50432586669922, + "sharpness": { + "laplacian_var": 972.5653279753307 + }, + "contrast": { + "p05": 17.0, + "p95": 182.0, + "dynamic_range": 165.0, + "mean_gray": 106.18205574912892, + "std_gray": 70.67095657404792 + }, + "geometry": { + "distance_to_center_norm": 0.3198539614677429, + "distance_to_border_px": 228.0 + }, + "edge_ratio": 1.2238659987255158, + "edge_lengths_px": [ + 37.6961555480957, + 45.694637298583984, + 37.336307525634766, + 44.777225494384766 + ] + }, + "confidence": 0.8170829167910206 + }, + { + "observation_id": "ad308358-9a30-4309-8ca8-04ffe5e7991f", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 651.0, + 261.0 + ], + [ + 689.0, + 249.0 + ], + [ + 712.0, + 285.0 + ], + [ + 674.0, + 297.0 + ] + ], + "center_px": [ + 681.5, + 273.0 + ], + "quality": { + "area_px": 1644.0, + "perimeter_px": 165.13947296142578, + "sharpness": { + "laplacian_var": 747.6962819576332 + }, + "contrast": { + "p05": 13.0, + "p95": 180.0, + "dynamic_range": 167.0, + "mean_gray": 76.63693693693693, + "std_gray": 72.66327799511954 + }, + "geometry": { + "distance_to_center_norm": 0.2997349798679352, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.072028219579559, + "edge_lengths_px": [ + 39.84971618652344, + 42.72002029418945, + 39.84971618652344, + 42.72002029418945 + ] + }, + "confidence": 0.9328112653528767 + }, + { + "observation_id": "2877737b-5724-439d-aeb6-b58199fae712", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 880.0, + 1056.0 + ], + [ + 849.0, + 1028.0 + ], + [ + 883.0, + 1007.0 + ], + [ + 913.0, + 1034.0 + ] + ], + "center_px": [ + 881.25, + 1031.25 + ], + "quality": { + "area_px": 1577.0, + "perimeter_px": 161.7576141357422, + "sharpness": { + "laplacian_var": 779.7184102009837 + }, + "contrast": { + "p05": 14.0, + "p95": 173.0, + "dynamic_range": 159.0, + "mean_gray": 81.89795918367346, + "std_gray": 69.37586032500836 + }, + "geometry": { + "distance_to_center_norm": 0.574486494064331, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.053254572752866, + "edge_lengths_px": [ + 41.773197174072266, + 39.96248245239258, + 40.360870361328125, + 39.66106414794922 + ] + }, + "confidence": 0.45573027871641286 + }, + { + "observation_id": "8b2668ad-6374-427f-9a51-6573fd0bfb92", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1154.0, + 1048.0 + ], + [ + 1121.0, + 1020.0 + ], + [ + 1153.0, + 1000.0 + ], + [ + 1185.0, + 1028.0 + ] + ], + "center_px": [ + 1153.25, + 1024.0 + ], + "quality": { + "area_px": 1532.0, + "perimeter_px": 160.4264144897461, + "sharpness": { + "laplacian_var": 789.6627377718634 + }, + "contrast": { + "p05": 9.0, + "p95": 170.0, + "dynamic_range": 161.0, + "mean_gray": 94.95602294455067, + "std_gray": 70.53110441036318 + }, + "geometry": { + "distance_to_center_norm": 0.7217618823051453, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.173112932994049, + "edge_lengths_px": [ + 43.27817153930664, + 37.735923767089844, + 42.52058410644531, + 36.8917350769043 + ] + }, + "confidence": 0.5455570235395628 + }, + { + "observation_id": "23371f68-dfdd-46fa-80a5-0f447e227bbf", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 800.0, + 233.0 + ], + [ + 834.0, + 221.0 + ], + [ + 852.0, + 261.0 + ], + [ + 816.0, + 271.0 + ] + ], + "center_px": [ + 825.5, + 246.5 + ], + "quality": { + "area_px": 1552.0, + "perimeter_px": 158.51307678222656, + "sharpness": { + "laplacian_var": 863.8906785031452 + }, + "contrast": { + "p05": 15.0, + "p95": 181.0, + "dynamic_range": 166.0, + "mean_gray": 73.38709677419355, + "std_gray": 69.59383427424181 + }, + "geometry": { + "distance_to_center_norm": 0.34653934836387634, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.2165525994378175, + "edge_lengths_px": [ + 36.055511474609375, + 43.863426208496094, + 37.36308288574219, + 41.231056213378906 + ] + }, + "confidence": 0.8219948734334308 + }, + { + "observation_id": "33256df9-4ca3-48a1-8430-523e1b96eaae", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 656.0, + 1024.0 + ], + [ + 631.0, + 996.0 + ], + [ + 666.0, + 976.0 + ], + [ + 692.0, + 1003.0 + ] + ], + "center_px": [ + 661.25, + 999.75 + ], + "quality": { + "area_px": 1499.0, + "perimeter_px": 157.00859832763672, + "sharpness": { + "laplacian_var": 776.3919478120264 + }, + "contrast": { + "p05": 15.0, + "p95": 173.0, + "dynamic_range": 158.0, + "mean_gray": 113.47134387351778, + "std_gray": 66.47315254195442 + }, + "geometry": { + "distance_to_center_norm": 0.5149872303009033, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1118898476800905, + "edge_lengths_px": [ + 37.53664779663086, + 40.31128692626953, + 37.48332977294922, + 41.67733383178711 + ] + }, + "confidence": 0.8987700853806685 + }, + { + "observation_id": "532f6f01-c69b-4c9c-b037-69cb0565b8ad", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1156.0, + 984.0 + ], + [ + 1124.0, + 957.0 + ], + [ + 1153.0, + 939.0 + ], + [ + 1186.0, + 964.0 + ] + ], + "center_px": [ + 1154.75, + 961.0 + ], + "quality": { + "area_px": 1384.5, + "perimeter_px": 153.4569320678711, + "sharpness": { + "laplacian_var": 641.3717713382066 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 48.07235421166307, + "std_gray": 59.88033560428563 + }, + "geometry": { + "distance_to_center_norm": 0.6724274754524231, + "distance_to_border_px": 96.0 + }, + "edge_ratio": 1.2266707527132645, + "edge_lengths_px": [ + 41.86884307861328, + 34.13209533691406, + 41.400482177734375, + 36.055511474609375 + ] + }, + "confidence": 0.7524431457735686 + }, + { + "observation_id": "699b2f13-893b-4fd7-811a-02a4e4a694b3", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 995.0, + 954.0 + ], + [ + 967.0, + 928.0 + ], + [ + 1000.0, + 911.0 + ], + [ + 1028.0, + 936.0 + ] + ], + "center_px": [ + 997.5, + 932.25 + ], + "quality": { + "area_px": 1331.5, + "perimeter_px": 150.4579086303711, + "sharpness": { + "laplacian_var": 806.253992719468 + }, + "contrast": { + "p05": 12.0, + "p95": 170.0, + "dynamic_range": 158.0, + "mean_gray": 85.1743119266055, + "std_gray": 67.17068414131862 + }, + "geometry": { + "distance_to_center_norm": 0.5338727831840515, + "distance_to_border_px": 126.0 + }, + "edge_ratio": 1.0293233343863084, + "edge_lengths_px": [ + 38.20994567871094, + 37.121421813964844, + 37.53664779663086, + 37.58989334106445 + ] + }, + "confidence": 0.8623788434718633 + }, + { + "observation_id": "7a3f076a-ebd6-47b2-aff1-1dd8b49d0bf3", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 731.0, + 951.0 + ], + [ + 707.0, + 925.0 + ], + [ + 742.0, + 908.0 + ], + [ + 766.0, + 933.0 + ] + ], + "center_px": [ + 736.5, + 929.25 + ], + "quality": { + "area_px": 1312.5, + "perimeter_px": 148.30654907226562, + "sharpness": { + "laplacian_var": 893.1018320987654 + }, + "contrast": { + "p05": 14.0, + "p95": 172.0, + "dynamic_range": 158.0, + "mean_gray": 77.58333333333333, + "std_gray": 66.11167950269201 + }, + "geometry": { + "distance_to_center_norm": 0.432888388633728, + "distance_to_border_px": 129.0 + }, + "edge_ratio": 1.135675442614228, + "edge_lengths_px": [ + 35.38361358642578, + 38.910152435302734, + 34.65544509887695, + 39.357337951660156 + ] + }, + "confidence": 0.7704666026640716 + }, + { + "observation_id": "05bdc656-2e8d-4052-ba9e-6810fe1f3486", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1109.0, + 937.0 + ], + [ + 1078.0, + 911.0 + ], + [ + 1108.0, + 894.0 + ], + [ + 1138.0, + 918.0 + ] + ], + "center_px": [ + 1108.25, + 915.0 + ], + "quality": { + "area_px": 1286.5, + "perimeter_px": 148.03035736083984, + "sharpness": { + "laplacian_var": 849.6744027531824 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 73.16531791907515, + "std_gray": 67.17306919368005 + }, + "geometry": { + "distance_to_center_norm": 0.5997561812400818, + "distance_to_border_px": 143.0 + }, + "edge_ratio": 1.1733657712426009, + "edge_lengths_px": [ + 40.45985794067383, + 34.48188018798828, + 38.41874694824219, + 34.66987228393555 + ] + }, + "confidence": 0.7309457014059588 + }, + { + "observation_id": "fe311468-a0c9-43ca-971b-7a3980b432df", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 843.0 + ], + [ + 378.0, + 825.0 + ], + [ + 398.0, + 848.0 + ], + [ + 360.0, + 866.0 + ] + ], + "center_px": [ + 369.0, + 845.5 + ], + "quality": { + "area_px": 1234.0, + "perimeter_px": 145.0541877746582, + "sharpness": { + "laplacian_var": 1107.6063181860204 + }, + "contrast": { + "p05": 14.0, + "p95": 171.0, + "dynamic_range": 157.0, + "mean_gray": 78.54927884615384, + "std_gray": 65.48572197917484 + }, + "geometry": { + "distance_to_center_norm": 0.5170324444770813, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.3795367307347286, + "edge_lengths_px": [ + 42.04759216308594, + 30.479501724243164, + 42.04759216308594, + 30.479501724243164 + ] + }, + "confidence": 0.5963354569243849 + }, + { + "observation_id": "e620de36-1fff-4db2-b477-3ca98d596c08", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 841.0 + ], + [ + 1306.0, + 818.0 + ], + [ + 1334.0, + 803.0 + ], + [ + 1364.0, + 826.0 + ] + ], + "center_px": [ + 1335.0, + 822.0 + ], + "quality": { + "area_px": 1094.0, + "perimeter_px": 139.1337547302246, + "sharpness": { + "laplacian_var": 703.797937840674 + }, + "contrast": { + "p05": 9.0, + "p95": 164.0, + "dynamic_range": 155.0, + "mean_gray": 113.10478654592497, + "std_gray": 58.52400257567041 + }, + "geometry": { + "distance_to_center_norm": 0.7517461776733398, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.1900645633213587, + "edge_lengths_px": [ + 37.80211639404297, + 31.764760971069336, + 37.80211639404297, + 31.764760971069336 + ] + }, + "confidence": 0.6128519038478318 + }, + { + "observation_id": "d97a86ae-3a86-4f47-ac53-3269de0c2e76", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 763.0, + 197.0 + ], + [ + 797.0, + 187.0 + ], + [ + 824.0, + 204.0 + ], + [ + 790.0, + 216.0 + ] + ], + "center_px": [ + 793.5, + 201.0 + ], + "quality": { + "area_px": 909.0, + "perimeter_px": 136.41686248779297, + "sharpness": { + "laplacian_var": 1069.7927531569794 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 91.46811819595645, + "std_gray": 62.54740157586658 + }, + "geometry": { + "distance_to_center_norm": 0.38541823625564575, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.130050277403289, + "edge_lengths_px": [ + 35.44009017944336, + 31.906112670898438, + 36.055511474609375, + 33.0151481628418 + ] + }, + "confidence": 0.5362593259058441 + }, + { + "observation_id": "36eed4bf-46ce-449e-8b2d-1860302ed06a", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 943.0, + 784.0 + ], + [ + 970.0, + 761.0 + ], + [ + 976.0, + 794.0 + ], + [ + 950.0, + 816.0 + ] + ], + "center_px": [ + 959.75, + 788.75 + ], + "quality": { + "area_px": 1007.5, + "perimeter_px": 135.82476806640625, + "sharpness": { + "laplacian_var": 990.0324116822271 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 69.03362573099415, + "std_gray": 62.62781348056947 + }, + "geometry": { + "distance_to_center_norm": 0.3838669955730438, + "distance_to_border_px": 264.0 + }, + "edge_ratio": 1.0827805673411812, + "edge_lengths_px": [ + 35.46829605102539, + 33.541019439697266, + 34.058773040771484, + 32.75667953491211 + ] + }, + "confidence": 0.6203165137290706 + }, + { + "observation_id": "1aba9975-f6ad-4d8b-8246-4c592a340fa6", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 736.0, + 748.0 + ], + [ + 769.0, + 734.0 + ], + [ + 791.0, + 755.0 + ], + [ + 758.0, + 770.0 + ] + ], + "center_px": [ + 763.5, + 751.75 + ], + "quality": { + "area_px": 1028.5, + "perimeter_px": 133.62254524230957, + "sharpness": { + "laplacian_var": 740.3312400344904 + }, + "contrast": { + "p05": 9.0, + "p95": 168.0, + "dynamic_range": 159.0, + "mean_gray": 80.6958981612447, + "std_gray": 67.7872078040809 + }, + "geometry": { + "distance_to_center_norm": 0.24019105732440948, + "distance_to_border_px": 310.0 + }, + "edge_ratio": 1.1918643121358203, + "edge_lengths_px": [ + 35.84689712524414, + 30.4138126373291, + 36.24913787841797, + 31.11269760131836 + ] + }, + "confidence": 0.5752892000247514 + }, + { + "observation_id": "02c5d28b-159e-4947-88fe-adb1c3a41cf1", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1296.0, + 787.0 + ], + [ + 1266.0, + 766.0 + ], + [ + 1291.0, + 751.0 + ], + [ + 1321.0, + 771.0 + ] + ], + "center_px": [ + 1293.5, + 768.75 + ], + "quality": { + "area_px": 977.5, + "perimeter_px": 131.51158332824707, + "sharpness": { + "laplacian_var": 482.2934957475995 + }, + "contrast": { + "p05": 7.0, + "p95": 157.0, + "dynamic_range": 150.0, + "mean_gray": 38.02962962962963, + "std_gray": 51.115372876535595 + }, + "geometry": { + "distance_to_center_norm": 0.6860414743423462, + "distance_to_border_px": 119.0 + }, + "edge_ratio": 1.2560441794117048, + "edge_lengths_px": [ + 36.619667053222656, + 29.154760360717773, + 36.055511474609375, + 29.681644439697266 + ] + }, + "confidence": 0.5188246379772157 + }, + { + "observation_id": "be1ec681-52dc-4e74-9431-c465dee588cf", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 664.0, + 678.0 + ], + [ + 696.0, + 665.0 + ], + [ + 717.0, + 685.0 + ], + [ + 684.0, + 698.0 + ] + ], + "center_px": [ + 690.25, + 681.5 + ], + "quality": { + "area_px": 916.5, + "perimeter_px": 127.29240036010742, + "sharpness": { + "laplacian_var": 950.4938833487939 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 81.41071428571429, + "std_gray": 66.26803955921937 + }, + "geometry": { + "distance_to_center_norm": 0.1606595665216446, + "distance_to_border_px": 382.0 + }, + "edge_ratio": 1.25399363306104, + "edge_lengths_px": [ + 34.539833068847656, + 29.0, + 35.46829605102539, + 28.284271240234375 + ] + }, + "confidence": 0.4872433032283655 + }, + { + "observation_id": "0b687358-7e88-479b-90d4-817660103332", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 132.0, + 733.0 + ], + [ + 120.0, + 713.0 + ], + [ + 156.0, + 700.0 + ], + [ + 169.0, + 720.0 + ] + ], + "center_px": [ + 144.25, + 716.5 + ], + "quality": { + "area_px": 892.5, + "perimeter_px": 124.6701889038086, + "sharpness": { + "laplacian_var": 1275.08402176 + }, + "contrast": { + "p05": 10.200000000000003, + "p95": 164.0, + "dynamic_range": 153.8, + "mean_gray": 105.7888, + "std_gray": 57.0930485660032 + }, + "geometry": { + "distance_to_center_norm": 0.6691069006919861, + "distance_to_border_px": 120.0 + }, + "edge_ratio": 1.6814297415391983, + "edge_lengths_px": [ + 23.323806762695312, + 38.27531814575195, + 23.853721618652344, + 39.217342376708984 + ] + }, + "confidence": 0.3538655141518615 + }, + { + "observation_id": "6e19a38b-8842-461e-8545-19a928ac5536", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 624.0 + ], + [ + 815.0, + 612.0 + ], + [ + 837.0, + 630.0 + ], + [ + 807.0, + 643.0 + ] + ], + "center_px": [ + 811.25, + 627.25 + ], + "quality": { + "area_px": 814.5, + "perimeter_px": 120.82522010803223, + "sharpness": { + "laplacian_var": 1125.3635571955213 + }, + "contrast": { + "p05": 8.0, + "p95": 149.0, + "dynamic_range": 141.0, + "mean_gray": 86.07050092764378, + "std_gray": 55.3312393682571 + }, + "geometry": { + "distance_to_center_norm": 0.14027805626392365, + "distance_to_border_px": 437.0 + }, + "edge_ratio": 1.1545204961681088, + "edge_lengths_px": [ + 31.38471031188965, + 28.42534065246582, + 32.69556427001953, + 28.319604873657227 + ] + }, + "confidence": 0.4703251278796996 + }, + { + "observation_id": "5ba65709-8979-46c2-9b18-05eeaeea1e00", + "type": "aruco", + "marker_id": 74, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 344.0, + 702.0 + ], + [ + 330.0, + 683.0 + ], + [ + 364.0, + 671.0 + ], + [ + 379.0, + 689.0 + ] + ], + "center_px": [ + 354.25, + 686.25 + ], + "quality": { + "area_px": 819.5, + "perimeter_px": 120.42341613769531, + "sharpness": { + "laplacian_var": 1054.273602937478 + }, + "contrast": { + "p05": 7.0, + "p95": 158.0, + "dynamic_range": 151.0, + "mean_gray": 89.94680851063829, + "std_gray": 62.538561214266565 + }, + "geometry": { + "distance_to_center_norm": 0.4376735985279083, + "distance_to_border_px": 330.0 + }, + "edge_ratio": 1.593474715740479, + "edge_lengths_px": [ + 23.600847244262695, + 36.055511474609375, + 23.430749893188477, + 37.336307525634766 + ] + }, + "confidence": 0.3428566063437381 + }, + { + "observation_id": "6fec2a06-5a95-46d0-908d-2ad94c8c72f9", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1374.0, + 670.0 + ], + [ + 1347.0, + 651.0 + ], + [ + 1371.0, + 639.0 + ], + [ + 1398.0, + 658.0 + ] + ], + "center_px": [ + 1372.5, + 654.5 + ], + "quality": { + "area_px": 780.0, + "perimeter_px": 119.69592666625977, + "sharpness": { + "laplacian_var": 1109.98644924121 + }, + "contrast": { + "p05": 10.700000000000003, + "p95": 158.0, + "dynamic_range": 147.3, + "mean_gray": 106.3378640776699, + "std_gray": 52.12042090245902 + }, + "geometry": { + "distance_to_center_norm": 0.7360777258872986, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2304019519874827, + "edge_lengths_px": [ + 33.0151481628418, + 26.832815170288086, + 33.0151481628418, + 26.832815170288086 + ] + }, + "confidence": 0.35500593874581543 + }, + { + "observation_id": "f6d9266d-6e14-4174-af6b-72dd950cda56", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1196.0, + 524.0 + ], + [ + 1220.0, + 514.0 + ], + [ + 1244.0, + 530.0 + ], + [ + 1219.0, + 540.0 + ] + ], + "center_px": [ + 1219.75, + 527.0 + ], + "quality": { + "area_px": 627.0, + "perimeter_px": 109.78808403015137, + "sharpness": { + "laplacian_var": 963.0183950617284 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 73.82444444444444, + "std_gray": 53.419454032550746 + }, + "geometry": { + "distance_to_center_norm": 0.5554656386375427, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.109400382408729, + "edge_lengths_px": [ + 26.0, + 28.844409942626953, + 26.925823211669922, + 28.017850875854492 + ] + }, + "confidence": 0.3767801116964092 + }, + { + "observation_id": "95870cb1-88b5-4543-b1a6-c5c33c690014", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1299.0, + 475.0 + ], + [ + 1322.0, + 465.0 + ], + [ + 1346.0, + 479.0 + ], + [ + 1325.0, + 490.0 + ] + ], + "center_px": [ + 1323.0, + 477.25 + ], + "quality": { + "area_px": 581.5, + "perimeter_px": 106.58796119689941, + "sharpness": { + "laplacian_var": 922.4211295765532 + }, + "contrast": { + "p05": 9.0, + "p95": 150.0, + "dynamic_range": 141.0, + "mean_gray": 80.53125, + "std_gray": 49.781966772569284 + }, + "geometry": { + "distance_to_center_norm": 0.673617959022522, + "distance_to_border_px": 94.0 + }, + "edge_ratio": 1.2661764925954944, + "edge_lengths_px": [ + 25.079872131347656, + 27.784887313842773, + 23.706539154052734, + 30.01666259765625 + ] + }, + "confidence": 0.3061711135325228 + }, + { + "observation_id": "9ab61cd4-bdab-4b79-a4c0-d1becbc7a5eb", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1117.0, + 472.0 + ], + [ + 1139.0, + 461.0 + ], + [ + 1163.0, + 476.0 + ], + [ + 1140.0, + 486.0 + ] + ], + "center_px": [ + 1139.75, + 473.75 + ], + "quality": { + "area_px": 573.0, + "perimeter_px": 104.90438652038574, + "sharpness": { + "laplacian_var": 1036.3509780861898 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 74.53349875930522, + "std_gray": 50.45210729924828 + }, + "geometry": { + "distance_to_center_norm": 0.47216224670410156, + "distance_to_border_px": 277.0 + }, + "edge_ratio": 1.1506375729114486, + "edge_lengths_px": [ + 24.59674835205078, + 28.301942825317383, + 25.079872131347656, + 26.925823211669922 + ] + }, + "confidence": 0.33198985414097737 + }, + { + "observation_id": "4c68b828-30b1-42de-a000-99f551e02fc5", + "type": "aruco", + "marker_id": 184, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 821.0, + 486.0 + ], + [ + 814.0, + 487.0 + ], + [ + 798.0, + 448.0 + ], + [ + 805.0, + 445.0 + ] + ], + "center_px": [ + 809.5, + 466.5 + ], + "quality": { + "area_px": 312.0, + "perimeter_px": 100.85268115997314, + "sharpness": { + "laplacian_var": 2032.911884279329 + }, + "contrast": { + "p05": 22.0, + "p95": 133.5, + "dynamic_range": 111.5, + "mean_gray": 67.10426540284361, + "std_gray": 39.568029255350964 + }, + "geometry": { + "distance_to_center_norm": 0.12868039309978485, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 6.224146785942024, + "edge_lengths_px": [ + 7.071067810058594, + 42.154476165771484, + 7.6157732009887695, + 44.0113639831543 + ] + }, + "confidence": 0.03341823500528502 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 712.0, + 776.0 + ], + [ + 506.0, + 896.0 + ], + [ + 441.0, + 876.0 + ], + [ + 650.0, + 774.0 + ] + ], + "center_px": [ + 577.25, + 830.5 + ], + "area_px": 9331.0 + }, + { + "image_points_px": [ + [ + 1134.0, + 576.0 + ], + [ + 1028.0, + 633.0 + ], + [ + 1010.0, + 609.0 + ], + [ + 1092.0, + 566.0 + ] + ], + "center_px": [ + 1066.0, + 596.0 + ], + "area_px": 3098.0 + }, + { + "image_points_px": [ + [ + 949.0, + 628.0 + ], + [ + 974.0, + 624.0 + ], + [ + 1004.0, + 689.0 + ], + [ + 973.0, + 699.0 + ] + ], + "center_px": [ + 975.0, + 660.0 + ], + "area_px": 2093.0 + }, + { + "image_points_px": [ + [ + 919.0, + 792.0 + ], + [ + 944.0, + 814.0 + ], + [ + 912.0, + 829.0 + ], + [ + 888.0, + 806.0 + ] + ], + "center_px": [ + 915.75, + 810.25 + ], + "area_px": 1064.0 + }, + { + "image_points_px": [ + [ + 964.0, + 655.0 + ], + [ + 985.0, + 654.0 + ], + [ + 1002.0, + 682.0 + ], + [ + 976.0, + 691.0 + ] + ], + "center_px": [ + 981.75, + 670.5 + ], + "area_px": 824.5 + }, + { + "image_points_px": [ + [ + 1299.0, + 626.0 + ], + [ + 1321.0, + 614.0 + ], + [ + 1348.0, + 632.0 + ], + [ + 1326.0, + 644.0 + ] + ], + "center_px": [ + 1323.5, + 629.0 + ], + "area_px": 720.0 + }, + { + "image_points_px": [ + [ + 92.0, + 604.0 + ], + [ + 58.0, + 618.0 + ], + [ + 46.0, + 601.0 + ], + [ + 78.0, + 589.0 + ] + ], + "center_px": [ + 68.5, + 603.0 + ], + "area_px": 697.0 + }, + { + "image_points_px": [ + [ + 180.0, + 565.0 + ], + [ + 147.0, + 577.0 + ], + [ + 137.0, + 560.0 + ], + [ + 168.0, + 550.0 + ] + ], + "center_px": [ + 158.0, + 563.0 + ], + "area_px": 633.0 + }, + { + "image_points_px": [ + [ + 871.0, + 624.0 + ], + [ + 879.0, + 625.0 + ], + [ + 895.0, + 667.0 + ], + [ + 885.0, + 663.0 + ] + ], + "center_px": [ + 882.5, + 644.75 + ], + "area_px": 327.0 + }, + { + "image_points_px": [ + [ + 1217.0, + 427.0 + ], + [ + 1239.0, + 418.0 + ], + [ + 1261.0, + 431.0 + ], + [ + 1241.0, + 441.0 + ] + ], + "center_px": [ + 1239.5, + 429.25 + ], + "area_px": 502.0 + }, + { + "image_points_px": [ + [ + 385.0, + 633.0 + ], + [ + 402.0, + 652.0 + ], + [ + 378.0, + 660.0 + ], + [ + 362.0, + 643.0 + ] + ], + "center_px": [ + 381.75, + 647.0 + ], + "area_px": 571.5 + }, + { + "image_points_px": [ + [ + 717.0, + 471.0 + ], + [ + 742.0, + 462.0 + ], + [ + 760.0, + 475.0 + ], + [ + 736.0, + 485.0 + ] + ], + "center_px": [ + 738.75, + 473.25 + ], + "area_px": 506.5 + }, + { + "image_points_px": [ + [ + 488.0, + 732.0 + ], + [ + 459.0, + 747.0 + ], + [ + 447.0, + 740.0 + ], + [ + 480.0, + 724.0 + ] + ], + "center_px": [ + 468.5, + 735.75 + ], + "area_px": 387.5 + }, + { + "image_points_px": [ + [ + 751.0, + 438.0 + ], + [ + 776.0, + 430.0 + ], + [ + 792.0, + 443.0 + ], + [ + 768.0, + 452.0 + ] + ], + "center_px": [ + 771.75, + 440.75 + ], + "area_px": 471.0 + }, + { + "image_points_px": [ + [ + 984.0, + 384.0 + ], + [ + 1007.0, + 376.0 + ], + [ + 1024.0, + 388.0 + ], + [ + 1002.0, + 397.0 + ] + ], + "center_px": [ + 1004.25, + 386.25 + ], + "area_px": 430.0 + }, + { + "image_points_px": [ + [ + 1088.0, + 340.0 + ], + [ + 1108.0, + 333.0 + ], + [ + 1127.0, + 343.0 + ], + [ + 1106.0, + 351.0 + ] + ], + "center_px": [ + 1107.25, + 341.75 + ], + "area_px": 354.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 297.0 + ], + [ + 1071.0, + 290.0 + ], + [ + 1089.0, + 300.0 + ], + [ + 1070.0, + 308.0 + ] + ], + "center_px": [ + 1070.25, + 298.75 + ], + "area_px": 343.5 + }, + { + "image_points_px": [ + [ + 1145.0, + 312.0 + ], + [ + 1165.0, + 306.0 + ], + [ + 1182.0, + 316.0 + ], + [ + 1163.0, + 324.0 + ] + ], + "center_px": [ + 1163.75, + 314.5 + ], + "area_px": 337.0 + }, + { + "image_points_px": [ + [ + 1227.0, + 309.0 + ], + [ + 1246.0, + 302.0 + ], + [ + 1264.0, + 312.0 + ], + [ + 1247.0, + 320.0 + ] + ], + "center_px": [ + 1246.0, + 310.75 + ], + "area_px": 331.5 + }, + { + "image_points_px": [ + [ + 935.0, + 285.0 + ], + [ + 955.0, + 278.0 + ], + [ + 972.0, + 287.0 + ], + [ + 952.0, + 295.0 + ] + ], + "center_px": [ + 953.5, + 286.25 + ], + "area_px": 317.5 + }, + { + "image_points_px": [ + [ + 891.0, + 293.0 + ], + [ + 911.0, + 286.0 + ], + [ + 927.0, + 296.0 + ], + [ + 907.0, + 304.0 + ] + ], + "center_px": [ + 909.0, + 294.75 + ], + "area_px": 330.0 + }, + { + "image_points_px": [ + [ + 1018.0, + 751.0 + ], + [ + 1017.0, + 775.0 + ], + [ + 1013.0, + 785.0 + ], + [ + 1005.0, + 755.0 + ] + ], + "center_px": [ + 1013.25, + 766.5 + ], + "area_px": 254.0 + }, + { + "image_points_px": [ + [ + 278.0, + 1016.0 + ], + [ + 276.0, + 1020.0 + ], + [ + 247.0, + 1035.0 + ], + [ + 268.0, + 1019.0 + ] + ], + "center_px": [ + 267.25, + 1022.5 + ], + "area_px": 91.5 + }, + { + "image_points_px": [ + [ + 1273.0, + 316.0 + ], + [ + 1258.0, + 325.0 + ], + [ + 1242.0, + 330.0 + ], + [ + 1245.0, + 326.0 + ] + ], + "center_px": [ + 1254.5, + 324.25 + ], + "area_px": 75.5 + }, + { + "image_points_px": [ + [ + 627.0, + 394.0 + ], + [ + 630.0, + 413.0 + ], + [ + 628.0, + 428.0 + ], + [ + 625.0, + 409.0 + ] + ], + "center_px": [ + 627.5, + 411.0 + ], + "area_px": 83.0 + }, + { + "image_points_px": [ + [ + 356.0, + 962.0 + ], + [ + 333.0, + 980.0 + ], + [ + 330.0, + 980.0 + ], + [ + 348.0, + 965.0 + ] + ], + "center_px": [ + 341.75, + 971.75 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 702.0, + 632.0 + ], + [ + 679.0, + 644.0 + ], + [ + 673.0, + 642.0 + ], + [ + 695.0, + 632.0 + ] + ], + "center_px": [ + 687.25, + 637.5 + ], + "area_px": 94.0 + }, + { + "image_points_px": [ + [ + 1001.0, + 496.0 + ], + [ + 997.0, + 501.0 + ], + [ + 977.0, + 510.0 + ], + [ + 973.0, + 509.0 + ] + ], + "center_px": [ + 987.0, + 504.0 + ], + "area_px": 72.0 + }, + { + "image_points_px": [ + [ + 921.0, + 598.0 + ], + [ + 901.0, + 617.0 + ], + [ + 902.0, + 613.0 + ], + [ + 915.0, + 599.0 + ] + ], + "center_px": [ + 909.75, + 606.75 + ], + "area_px": 66.0 + }, + { + "image_points_px": [ + [ + 68.0, + 1031.0 + ], + [ + 60.0, + 1038.0 + ], + [ + 45.0, + 1046.0 + ], + [ + 50.0, + 1041.0 + ] + ], + "center_px": [ + 55.75, + 1039.0 + ], + "area_px": 40.5 + }, + { + "image_points_px": [ + [ + 842.0, + 934.0 + ], + [ + 834.0, + 942.0 + ], + [ + 823.0, + 947.0 + ], + [ + 820.0, + 946.0 + ] + ], + "center_px": [ + 829.75, + 942.25 + ], + "area_px": 53.0 + }, + { + "image_points_px": [ + [ + 806.0, + 955.0 + ], + [ + 791.0, + 965.0 + ], + [ + 783.0, + 965.0 + ], + [ + 802.0, + 955.0 + ] + ], + "center_px": [ + 795.5, + 960.0 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 342.0, + 1004.0 + ], + [ + 320.0, + 1016.0 + ], + [ + 322.0, + 1012.0 + ], + [ + 330.0, + 1007.0 + ] + ], + "center_px": [ + 328.5, + 1009.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 1340.0, + 651.0 + ], + [ + 1334.0, + 656.0 + ], + [ + 1318.0, + 660.0 + ], + [ + 1329.0, + 652.0 + ] + ], + "center_px": [ + 1330.25, + 654.75 + ], + "area_px": 66.5 + }, + { + "image_points_px": [ + [ + 229.0, + 651.0 + ], + [ + 218.0, + 658.0 + ], + [ + 208.0, + 661.0 + ], + [ + 211.0, + 658.0 + ] + ], + "center_px": [ + 216.5, + 657.0 + ], + "area_px": 35.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/render_a_camera_pose.json b/data/camera_study/Scene10/k3_abg/render_a_camera_pose.json new file mode 100644 index 0000000..8e33923 --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/render_a_camera_pose.json @@ -0,0 +1,467 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:42Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_abg\\render_a_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "a", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 19, + "used_marker_ids": [ + 95, + 97, + 103, + 54, + 55, + 51, + 47, + 210, + 85, + 215, + 105, + 211, + 75, + 214, + 74, + 102, + 217, + 205, + 206 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.01009749778311845, + 0.0013500052634516154, + 0.0012080581027067798, + 0.001208056584232894 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.418903298149159, + "residual_median_px": 2.9058066287550095, + "residual_max_px": 7.881774161943574, + "sigma2_normalized": 1.7330383439497478e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8081126809120178, + -0.5890257358551025, + -0.0016104801325127482 + ], + [ + -0.3439487814903259, + -0.46965670585632324, + -0.8130939602851868 + ], + [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + ], + "translation_m": [ + -0.2276943325996399, + 0.17315705120563507, + 1.1353343725204468 + ], + "rvec_rad": [ + 2.1050851025918234, + -0.6867341612291594, + 0.3507860528401858 + ] + }, + "camera_in_world": { + "position_m": [ + -0.29933083057403564, + -0.7994182705879211, + 0.8013386726379395 + ], + "position_mm": [ + -299.3308410644531, + -799.4182739257812, + 801.3386840820312 + ], + "orientation_deg": { + "roll": 131.5152587890625, + "pitch": -28.5664005279541, + "yaw": -23.05556297302246 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.5705111713147538e-05, + -3.606186641991224e-06, + 9.93455859227922e-07, + 5.974998436558746e-07, + 4.6929081989455075e-07, + 2.8925877037560832e-06 + ], + [ + -3.606186641991253e-06, + 4.525067031199804e-06, + -1.5535915979518367e-06, + -4.146706877795486e-07, + -8.403171882148325e-07, + 3.704138848703875e-08 + ], + [ + 9.93455859228011e-07, + -1.5535915979518793e-06, + 1.4511663564702391e-05, + 8.397716382398054e-07, + -1.8034796850892003e-06, + -4.925606373863842e-06 + ], + [ + 5.974998436558832e-07, + -4.146706877795502e-07, + 8.397716382397962e-07, + 2.430616306834126e-07, + 1.4873676074531513e-08, + 1.58103612736764e-07 + ], + [ + 4.692908198945444e-07, + -8.403171882148285e-07, + -1.8034796850892121e-06, + 1.4873676074530825e-08, + 6.717933155003761e-07, + 1.166485422903723e-06 + ], + [ + 2.892587703756058e-06, + 3.704138848704778e-08, + -4.925606373863879e-06, + 1.5810361273676463e-07, + 1.166485422903725e-06, + 5.922812492193122e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.22706131431744284, + 0.12188075641483156, + 0.21826355925678265 + ], + "tvec_std_m": [ + 0.0004930128098573226, + 0.0008196299869455584, + 0.0024336829070758423 + ] + }, + "camera_center_std_m": [ + 0.0031789461102063005, + 0.004041324498858458, + 0.00434604702092401 + ], + "camera_center_std_mm": [ + 3.1789461102063004, + 4.041324498858458, + 4.3460470209240105 + ], + "orientation_std_deg": { + "roll": 0.2878030578767992, + "pitch": 0.1683177033483575, + "yaw": 0.1374718863525747 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 881.25, + 1031.25 + ], + "projected_center_px": [ + 877.61865234375, + 1028.5360107421875 + ], + "reprojection_error_px": 4.53347807892285, + "confidence": 0.45573027871641286 + }, + { + "marker_id": 97, + "observed_center_px": [ + 1153.25, + 1024.0 + ], + "projected_center_px": [ + 1152.7294921875, + 1027.8443603515625 + ], + "reprojection_error_px": 3.879437445756702, + "confidence": 0.5455570235395628 + }, + { + "marker_id": 103, + "observed_center_px": [ + 661.25, + 999.75 + ], + "projected_center_px": [ + 660.6806030273438, + 996.0768432617188 + ], + "reprojection_error_px": 3.7170274866418533, + "confidence": 0.8987700853806685 + }, + { + "marker_id": 54, + "observed_center_px": [ + 1154.75, + 961.0 + ], + "projected_center_px": [ + 1162.5029296875, + 962.4193115234375 + ], + "reprojection_error_px": 7.881774161943574, + "confidence": 0.7524431457735686 + }, + { + "marker_id": 55, + "observed_center_px": [ + 997.5, + 932.25 + ], + "projected_center_px": [ + 999.1104736328125, + 934.5891723632812 + ], + "reprojection_error_px": 2.8399564551455856, + "confidence": 0.8623788434718633 + }, + { + "marker_id": 51, + "observed_center_px": [ + 736.5, + 929.25 + ], + "projected_center_px": [ + 735.853271484375, + 928.2763061523438 + ], + "reprojection_error_px": 1.1689043938176247, + "confidence": 0.7704666026640716 + }, + { + "marker_id": 47, + "observed_center_px": [ + 1108.25, + 915.0 + ], + "projected_center_px": [ + 1107.45166015625, + 913.0933837890625 + ], + "reprojection_error_px": 2.0670103729610174, + "confidence": 0.7309457014059588 + }, + { + "marker_id": 210, + "observed_center_px": [ + 369.0, + 845.5 + ], + "projected_center_px": [ + 367.08258056640625, + 847.7832641601562 + ], + "reprojection_error_px": 2.98157550791138, + "confidence": 0.5963354569243849 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1335.0, + 822.0 + ], + "projected_center_px": [ + 1332.3167724609375, + 822.3063354492188 + ], + "reprojection_error_px": 2.7006575928524246, + "confidence": 0.6128519038478318 + }, + { + "marker_id": 215, + "observed_center_px": [ + 763.5, + 751.75 + ], + "projected_center_px": [ + 764.8435668945312, + 753.69775390625 + ], + "reprojection_error_px": 2.366203135699148, + "confidence": 0.5752892000247514 + }, + { + "marker_id": 105, + "observed_center_px": [ + 1293.5, + 768.75 + ], + "projected_center_px": [ + 1294.0775146484375, + 765.9021606445312 + ], + "reprojection_error_px": 2.9058066287550095, + "confidence": 0.5188246379772157 + }, + { + "marker_id": 211, + "observed_center_px": [ + 690.25, + 681.5 + ], + "projected_center_px": [ + 687.66943359375, + 684.4354248046875 + ], + "reprojection_error_px": 3.908457721536807, + "confidence": 0.4872433032283655 + }, + { + "marker_id": 75, + "observed_center_px": [ + 144.25, + 716.5 + ], + "projected_center_px": [ + 147.21554565429688, + 715.9539184570312 + ], + "reprojection_error_px": 3.01540479526219, + "confidence": 0.3538655141518615 + }, + { + "marker_id": 214, + "observed_center_px": [ + 811.25, + 627.25 + ], + "projected_center_px": [ + 813.1135864257812, + 626.0042114257812 + ], + "reprojection_error_px": 2.2416385832712016, + "confidence": 0.4703251278796996 + }, + { + "marker_id": 74, + "observed_center_px": [ + 354.25, + 686.25 + ], + "projected_center_px": [ + 353.1841125488281, + 685.2387084960938 + ], + "reprojection_error_px": 1.4692945805517152, + "confidence": 0.3428566063437381 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1372.5, + 654.5 + ], + "projected_center_px": [ + 1370.1954345703125, + 654.4063110351562 + ], + "reprojection_error_px": 2.306469042030312, + "confidence": 0.35500593874581543 + }, + { + "marker_id": 217, + "observed_center_px": [ + 1219.75, + 527.0 + ], + "projected_center_px": [ + 1223.6787109375, + 525.702392578125 + ], + "reprojection_error_px": 4.137457510565784, + "confidence": 0.3767801116964092 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1323.0, + 477.25 + ], + "projected_center_px": [ + 1319.5634765625, + 478.1280212402344 + ], + "reprojection_error_px": 3.5469162147969504, + "confidence": 0.3061711135325228 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1139.75, + 473.75 + ], + "projected_center_px": [ + 1139.77392578125, + 473.96392822265625 + ], + "reprojection_error_px": 0.2152619972435565, + "confidence": 0.33198985414097737 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/render_b_aruco_detection.json b/data/camera_study/Scene10/k3_abg/render_b_aruco_detection.json new file mode 100644 index 0000000..a01b3b4 --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:41Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "1928234f-83d5-4e73-bcfb-2d15cf206d4c", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "afdc31a4-eaf4-4e4a-8e27-c0ecbcd44c23", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "fe8b3001-9b34-4e6e-a1ca-bfb21d9fda5e", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "f172f2f4-5de8-48f1-988e-ac51306c9c19", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "7a58ed34-deaa-41c0-a52d-768218b3b618", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "f4dc0c39-e243-4fe3-ad74-5e25012da3b8", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "8f0070bb-a31d-4e00-9c26-f304effcf587", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "79b03acb-2a97-4ce7-ac74-45527eeb9ba7", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "500ebbda-48c8-432a-8105-458cc5a45edd", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "4679850c-d90b-4148-ad28-723857e2ee93", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "9481c864-b8b5-4535-967f-b932e3382ae7", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "2d114eea-5e45-4c5d-b830-22feaf20536f", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "a5c3c16f-0c95-4378-9c1d-bec65508fdf7", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "18aaf0ea-6640-4227-95e9-d887832c25e8", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "78c8dc3b-cdf0-4e1a-98c8-530efe859a1b", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "01f766c7-5877-4587-9a0f-4877ba3314cf", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "ba840429-846a-4058-ab64-0156e6c7d0fa", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "3a89fa23-a1f0-4cbc-8c97-1bcf26453e3b", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "ca86cfe7-2edb-43ef-95ee-9d7fb1020a73", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "d9e8da07-13d1-4ccf-b9a9-bcb1bc988678", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "e9f07500-4a0c-4d66-abdb-587fe12db61a", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "721400b9-ae16-4bd2-9c04-848ce0438ad1", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "e8d52ec5-bb3d-4567-99d2-498cdebb8f29", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "ac3f237d-c846-467d-8b50-4fc8e2e331cd", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "ea1f1b0d-79cf-4999-b1b4-ba18ebc9a63f", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "e746110e-49dd-48ed-a331-3f2d4b567805", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "eaee5beb-a7be-47a1-bc2f-721fb39de0c5", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "298aa091-b988-4aba-84f6-2528d83bb7ae", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "5f631654-4fc4-45ff-ada1-7608e85f3b76", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "b9c5a0a3-f2b3-40b1-80a0-11b6ce1b0a31", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "cceadef3-b534-4018-93e5-2d5d3aaa3629", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "32d97dbe-1310-458b-b868-bf983f08290d", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "61855009-9dc8-472a-bb68-01826c17a092", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "3aecbfd9-5679-4994-82a3-0bdebf388a21", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "2c6f38dd-0bde-401b-af4c-105db40d2d1d", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "219d6d91-d08e-4e60-8130-08ea7e7ecfec", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/render_b_camera_pose.json b/data/camera_study/Scene10/k3_abg/render_b_camera_pose.json new file mode 100644 index 0000000..33a5f6e --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:42Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_abg\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/render_g_aruco_detection.json b/data/camera_study/Scene10/k3_abg/render_g_aruco_detection.json new file mode 100644 index 0000000..a64809b --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/render_g_aruco_detection.json @@ -0,0 +1,2224 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:41Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "g", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.npz", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.png", + "image_sha256": "6f328ef148dd5b73d40dbd9254ac0545dbd7393ed4666dd8eee8d3e346b4448b", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 37, + "num_rejected_candidates": 7 + }, + "detections": [ + { + "observation_id": "a4f7e020-32d6-4448-88bf-6ba35c72c520", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 361.0, + 538.0 + ], + [ + 334.0, + 513.0 + ], + [ + 364.0, + 489.0 + ], + [ + 391.0, + 513.0 + ] + ], + "center_px": [ + 362.5, + 513.25 + ], + "quality": { + "area_px": 1396.5, + "perimeter_px": 150.3915138244629, + "sharpness": { + "laplacian_var": 1014.5935798624517 + }, + "contrast": { + "p05": 15.0, + "p95": 168.0, + "dynamic_range": 153.0, + "mean_gray": 87.64736297828335, + "std_gray": 65.25681309567548 + }, + "geometry": { + "distance_to_center_norm": 0.3983326554298401, + "distance_to_border_px": 334.0 + }, + "edge_ratio": 1.0810098739215166, + "edge_lengths_px": [ + 36.79673767089844, + 38.41874694824219, + 36.12478256225586, + 39.051246643066406 + ] + }, + "confidence": 0.8612317264250932 + }, + { + "observation_id": "b3efb023-bcb1-4379-a47d-29f2aa78f317", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 490.0, + 612.0 + ], + [ + 463.0, + 586.0 + ], + [ + 492.0, + 572.0 + ], + [ + 518.0, + 598.0 + ] + ], + "center_px": [ + 490.75, + 592.0 + ], + "quality": { + "area_px": 1112.0, + "perimeter_px": 137.76032066345215, + "sharpness": { + "laplacian_var": 1213.9038992326398 + }, + "contrast": { + "p05": 22.0, + "p95": 181.0, + "dynamic_range": 159.0, + "mean_gray": 82.85922974767597, + "std_gray": 68.84435047820993 + }, + "geometry": { + "distance_to_center_norm": 0.26119279861450195, + "distance_to_border_px": 463.0 + }, + "edge_ratio": 1.1973610126869798, + "edge_lengths_px": [ + 37.48332977294922, + 32.202484130859375, + 36.769554138183594, + 31.30495262145996 + ] + }, + "confidence": 0.619139361878602 + }, + { + "observation_id": "41c2f084-c4e6-4f0c-8df9-7fd181f784fc", + "type": "aruco", + "marker_id": 86, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 94.0, + 958.0 + ], + [ + 68.0, + 982.0 + ], + [ + 47.0, + 960.0 + ], + [ + 73.0, + 936.0 + ] + ], + "center_px": [ + 70.5, + 959.0 + ], + "quality": { + "area_px": 1076.0, + "perimeter_px": 131.59485244750977, + "sharpness": { + "laplacian_var": 500.4565883722073 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 68.66531713900135, + "std_gray": 56.437884581126355 + }, + "geometry": { + "distance_to_center_norm": 0.8588042259216309, + "distance_to_border_px": 47.0 + }, + "edge_ratio": 1.1634060487042286, + "edge_lengths_px": [ + 35.38361358642578, + 30.4138126373291, + 35.38361358642578, + 30.4138126373291 + ] + }, + "confidence": 0.5795855489013004 + }, + { + "observation_id": "640312bf-39b6-420d-a6ab-d7dfd3c0ae42", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 944.0, + 859.0 + ], + [ + 923.0, + 881.0 + ], + [ + 899.0, + 859.0 + ], + [ + 921.0, + 837.0 + ] + ], + "center_px": [ + 921.75, + 859.0 + ], + "quality": { + "area_px": 990.0, + "perimeter_px": 125.91181182861328, + "sharpness": { + "laplacian_var": 1254.5651387199953 + }, + "contrast": { + "p05": 37.0, + "p95": 176.0, + "dynamic_range": 139.0, + "mean_gray": 94.86206896551724, + "std_gray": 57.98150599974307 + }, + "geometry": { + "distance_to_center_norm": 0.41938236355781555, + "distance_to_border_px": 199.0 + }, + "edge_ratio": 1.070488611997406, + "edge_lengths_px": [ + 30.4138126373291, + 32.557640075683594, + 31.11269760131836, + 31.827661514282227 + ] + }, + "confidence": 0.616540888528013 + }, + { + "observation_id": "2938cea0-d51c-442a-9068-33e4852b17c0", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 442.0, + 549.0 + ], + [ + 415.0, + 524.0 + ], + [ + 437.0, + 520.0 + ], + [ + 464.0, + 545.0 + ] + ], + "center_px": [ + 439.5, + 534.5 + ], + "quality": { + "area_px": 658.0, + "perimeter_px": 118.31483459472656, + "sharpness": { + "laplacian_var": 2355.6744409733983 + }, + "contrast": { + "p05": 23.0, + "p95": 180.0, + "dynamic_range": 157.0, + "mean_gray": 108.16359918200409, + "std_gray": 61.881853788931394 + }, + "geometry": { + "distance_to_center_norm": 0.31172657012939453, + "distance_to_border_px": 415.0 + }, + "edge_ratio": 1.6456001465781875, + "edge_lengths_px": [ + 36.79673767089844, + 22.360679626464844, + 36.79673767089844, + 22.360679626464844 + ] + }, + "confidence": 0.2665694139483502 + }, + { + "observation_id": "5439983a-f0dd-4e66-83bb-cc32bb319298", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 565.0, + 714.0 + ], + [ + 544.0, + 692.0 + ], + [ + 568.0, + 672.0 + ], + [ + 589.0, + 694.0 + ] + ], + "center_px": [ + 566.5, + 693.0 + ], + "quality": { + "area_px": 948.0, + "perimeter_px": 123.30962371826172, + "sharpness": { + "laplacian_var": 948.7205075308444 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 87.45253164556962, + "std_gray": 63.36793023445192 + }, + "geometry": { + "distance_to_center_norm": 0.24080945551395416, + "distance_to_border_px": 366.0 + }, + "edge_ratio": 1.027197727372641, + "edge_lengths_px": [ + 30.4138126373291, + 31.240999221801758, + 30.4138126373291, + 31.240999221801758 + ] + }, + "confidence": 0.6152661587526339 + }, + { + "observation_id": "f7ad9d61-8ab1-4111-b234-f85c82238ba6", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 903.0, + 772.0 + ], + [ + 882.0, + 794.0 + ], + [ + 858.0, + 773.0 + ], + [ + 879.0, + 752.0 + ] + ], + "center_px": [ + 880.5, + 772.75 + ], + "quality": { + "area_px": 946.5, + "perimeter_px": 123.24373435974121, + "sharpness": { + "laplacian_var": 1446.0998691484099 + }, + "contrast": { + "p05": 34.0, + "p95": 175.0, + "dynamic_range": 141.0, + "mean_gray": 92.60221870047543, + "std_gray": 58.54318515049794 + }, + "geometry": { + "distance_to_center_norm": 0.31413766741752625, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 1.0738069198414777, + "edge_lengths_px": [ + 30.4138126373291, + 31.890438079833984, + 29.698484420776367, + 31.240999221801758 + ] + }, + "confidence": 0.5876289194459208 + }, + { + "observation_id": "b6bac8d1-efb0-4dd2-be6f-978a4e36ecd1", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 138.0, + 787.0 + ], + [ + 113.0, + 809.0 + ], + [ + 93.0, + 789.0 + ], + [ + 118.0, + 767.0 + ] + ], + "center_px": [ + 115.5, + 788.0 + ], + "quality": { + "area_px": 940.0, + "perimeter_px": 123.17184448242188, + "sharpness": { + "laplacian_var": 604.4415315905076 + }, + "contrast": { + "p05": 6.0, + "p95": 133.0, + "dynamic_range": 127.0, + "mean_gray": 50.246422893481714, + "std_gray": 50.2390597357709 + }, + "geometry": { + "distance_to_center_norm": 0.725993812084198, + "distance_to_border_px": 93.0 + }, + "edge_ratio": 1.177391162675776, + "edge_lengths_px": [ + 33.30165100097656, + 28.284271240234375, + 33.30165100097656, + 28.284271240234375 + ] + }, + "confidence": 0.5322501871361803 + }, + { + "observation_id": "7e7fa7cc-b1bd-457c-90e9-37fab4018ae5", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 999.0, + 755.0 + ], + [ + 978.0, + 776.0 + ], + [ + 955.0, + 755.0 + ], + [ + 976.0, + 734.0 + ] + ], + "center_px": [ + 977.0, + 755.0 + ], + "quality": { + "area_px": 924.0, + "perimeter_px": 121.68661499023438, + "sharpness": { + "laplacian_var": 1427.420428863967 + }, + "contrast": { + "p05": 40.0, + "p95": 177.0, + "dynamic_range": 137.0, + "mean_gray": 98.6042345276873, + "std_gray": 56.7245592071717 + }, + "geometry": { + "distance_to_center_norm": 0.37230345606803894, + "distance_to_border_px": 304.0 + }, + "edge_ratio": 1.0487007563440722, + "edge_lengths_px": [ + 29.698484420776367, + 31.14482307434082, + 29.698484420776367, + 31.14482307434082 + ] + }, + "confidence": 0.5873934926369923 + }, + { + "observation_id": "852ab716-be9d-4df7-84f6-4bdac0b76ffd", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 76.0, + 765.0 + ], + [ + 50.0, + 785.0 + ], + [ + 32.0, + 764.0 + ], + [ + 58.0, + 744.0 + ] + ], + "center_px": [ + 54.0, + 764.5 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.92214965820312, + "sharpness": { + "laplacian_var": 1149.1764888888888 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 87.18, + "std_gray": 50.17918824904737 + }, + "geometry": { + "distance_to_center_norm": 0.7809113264083862, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.1859747094873558, + "edge_lengths_px": [ + 32.80244064331055, + 27.658634185791016, + 32.80244064331055, + 27.658634185791016 + ] + }, + "confidence": 0.32594286952973284 + }, + { + "observation_id": "e8843668-8b0b-40ea-8fbd-83554c197f2c", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 823.0, + 743.0 + ], + [ + 803.0, + 765.0 + ], + [ + 779.0, + 745.0 + ], + [ + 799.0, + 724.0 + ] + ], + "center_px": [ + 801.0, + 744.25 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.58359336853027, + "sharpness": { + "laplacian_var": 1584.9415918166465 + }, + "contrast": { + "p05": 30.0, + "p95": 174.0, + "dynamic_range": 144.0, + "mean_gray": 126.23913043478261, + "std_gray": 56.63381767927601 + }, + "geometry": { + "distance_to_center_norm": 0.24413886666297913, + "distance_to_border_px": 315.0 + }, + "edge_ratio": 1.0772758352345433, + "edge_lengths_px": [ + 29.73213768005371, + 31.240999221801758, + 29.0, + 30.610456466674805 + ] + }, + "confidence": 0.5606734879266068 + }, + { + "observation_id": "f36a6cd1-827a-4226-afb0-e642782197dc", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 747.0, + 705.0 + ], + [ + 724.0, + 724.0 + ], + [ + 703.0, + 703.0 + ], + [ + 726.0, + 683.0 + ] + ], + "center_px": [ + 725.0, + 703.75 + ], + "quality": { + "area_px": 904.0, + "perimeter_px": 120.42466735839844, + "sharpness": { + "laplacian_var": 1425.730397310992 + }, + "contrast": { + "p05": 25.0, + "p95": 173.0, + "dynamic_range": 148.0, + "mean_gray": 88.02341137123746, + "std_gray": 60.58805571551177 + }, + "geometry": { + "distance_to_center_norm": 0.18202924728393555, + "distance_to_border_px": 356.0 + }, + "edge_ratio": 1.0262982208923905, + "edge_lengths_px": [ + 29.832868576049805, + 29.698484420776367, + 30.479501724243164, + 30.4138126373291 + ] + }, + "confidence": 0.5872237273710109 + }, + { + "observation_id": "1348bad6-069a-4a04-884a-b4984c616a27", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 119.0, + 710.0 + ], + [ + 94.0, + 730.0 + ], + [ + 76.0, + 709.0 + ], + [ + 102.0, + 690.0 + ] + ], + "center_px": [ + 97.75, + 709.75 + ], + "quality": { + "area_px": 864.0, + "perimeter_px": 118.12554931640625, + "sharpness": { + "laplacian_var": 968.3578168166666 + }, + "contrast": { + "p05": 6.0, + "p95": 136.0, + "dynamic_range": 130.0, + "mean_gray": 46.16981132075472, + "std_gray": 49.20730448013899 + }, + "geometry": { + "distance_to_center_norm": 0.7166538238525391, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.226816924595493, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 32.202484130859375, + 26.248809814453125 + ] + }, + "confidence": 0.46950770604173 + }, + { + "observation_id": "90d4b808-c8cb-475e-b4dc-734bf0722c38", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 73.0, + 695.0 + ], + [ + 48.0, + 715.0 + ], + [ + 30.0, + 694.0 + ], + [ + 55.0, + 675.0 + ] + ], + "center_px": [ + 51.5, + 694.75 + ], + "quality": { + "area_px": 863.5, + "perimeter_px": 117.98213958740234, + "sharpness": { + "laplacian_var": 900.750086057507 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 80.92109777015438, + "std_gray": 51.03488818616118 + }, + "geometry": { + "distance_to_center_norm": 0.7624196410179138, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 31.400636672973633, + 26.90724754333496 + ] + }, + "confidence": 0.2902883953953809 + }, + { + "observation_id": "b45bd578-502d-4090-9ba0-2caae4b19312", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 50.0, + 652.0 + ], + [ + 25.0, + 672.0 + ], + [ + 7.0, + 652.0 + ], + [ + 31.0, + 632.0 + ] + ], + "center_px": [ + 28.25, + 652.0 + ], + "quality": { + "area_px": 860.0, + "perimeter_px": 117.75009727478027, + "sharpness": { + "laplacian_var": 765.5794806391044 + }, + "contrast": { + "p05": 6.0, + "p95": 138.0, + "dynamic_range": 132.0, + "mean_gray": 60.22508591065292, + "std_gray": 51.90037234016344 + }, + "geometry": { + "distance_to_center_norm": 0.778620183467865, + "distance_to_border_px": 7.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 26.90724754333496, + 31.240999221801758, + 27.58622932434082 + ] + }, + "confidence": 0.06745941479560678 + }, + { + "observation_id": "8e26cfef-faab-4142-84ac-19eb377c1acd", + "type": "aruco", + "marker_id": 79, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 603.0, + 594.0 + ], + [ + 579.0, + 612.0 + ], + [ + 561.0, + 592.0 + ], + [ + 584.0, + 574.0 + ] + ], + "center_px": [ + 581.75, + 593.0 + ], + "quality": { + "area_px": 803.0, + "perimeter_px": 113.69964027404785, + "sharpness": { + "laplacian_var": 1656.0680687854385 + }, + "contrast": { + "p05": 12.0, + "p95": 161.0, + "dynamic_range": 149.0, + "mean_gray": 98.64845173041894, + "std_gray": 55.913593747198206 + }, + "geometry": { + "distance_to_center_norm": 0.16451223194599152, + "distance_to_border_px": 468.0 + }, + "edge_ratio": 1.1149412421944707, + "edge_lengths_px": [ + 30.0, + 26.90724754333496, + 29.20616340637207, + 27.58622932434082 + ] + }, + "confidence": 0.48014488393995497 + }, + { + "observation_id": "f6e30520-9590-4322-a23e-7e17928cd722", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 532.0 + ], + [ + 698.0, + 550.0 + ], + [ + 678.0, + 531.0 + ], + [ + 700.0, + 513.0 + ] + ], + "center_px": [ + 699.0, + 531.5 + ], + "quality": { + "area_px": 778.0, + "perimeter_px": 112.02313995361328, + "sharpness": { + "laplacian_var": 1630.603042441958 + }, + "contrast": { + "p05": 23.0, + "p95": 174.0, + "dynamic_range": 151.0, + "mean_gray": 95.26275992438563, + "std_gray": 62.75795126376546 + }, + "geometry": { + "distance_to_center_norm": 0.025172246620059013, + "distance_to_border_px": 513.0 + }, + "edge_ratio": 1.0304177609146679, + "edge_lengths_px": [ + 28.42534065246582, + 27.58622932434082, + 28.42534065246582, + 27.58622932434082 + ] + }, + "confidence": 0.5033557129355607 + }, + { + "observation_id": "7b38edaf-37d0-46b5-b2cf-578bf2c0e8af", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 879.0, + 509.0 + ], + [ + 858.0, + 527.0 + ], + [ + 837.0, + 508.0 + ], + [ + 857.0, + 490.0 + ] + ], + "center_px": [ + 857.75, + 508.5 + ], + "quality": { + "area_px": 776.5, + "perimeter_px": 111.95437049865723, + "sharpness": { + "laplacian_var": 1308.7119920798898 + }, + "contrast": { + "p05": 28.0, + "p95": 174.0, + "dynamic_range": 146.0, + "mean_gray": 80.56060606060606, + "std_gray": 60.05184093458493 + }, + "geometry": { + "distance_to_center_norm": 0.1570063829421997, + "distance_to_border_px": 490.0 + }, + "edge_ratio": 1.0803365840024208, + "edge_lengths_px": [ + 27.658634185791016, + 28.319604873657227, + 26.90724754333496, + 29.068883895874023 + ] + }, + "confidence": 0.4791716529202595 + }, + { + "observation_id": "e7bb981f-f06d-4804-868b-d603c1fae77d", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 692.0, + 463.0 + ], + [ + 670.0, + 480.0 + ], + [ + 650.0, + 462.0 + ], + [ + 672.0, + 445.0 + ] + ], + "center_px": [ + 671.0, + 462.5 + ], + "quality": { + "area_px": 736.0, + "perimeter_px": 109.42024993896484, + "sharpness": { + "laplacian_var": 1430.0492813475546 + }, + "contrast": { + "p05": 18.0, + "p95": 168.0, + "dynamic_range": 150.0, + "mean_gray": 84.02217741935483, + "std_gray": 61.295601129603824 + }, + "geometry": { + "distance_to_center_norm": 0.10187894850969315, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 1.0332858231363153, + "edge_lengths_px": [ + 27.80287742614746, + 26.90724754333496, + 27.80287742614746, + 26.90724754333496 + ] + }, + "confidence": 0.47486054263026106 + }, + { + "observation_id": "e1eba7e9-40fb-436b-8068-2dacc28f74ac", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 226.0, + 383.0 + ], + [ + 209.0, + 365.0 + ], + [ + 233.0, + 348.0 + ], + [ + 250.0, + 366.0 + ] + ], + "center_px": [ + 229.5, + 365.5 + ], + "quality": { + "area_px": 721.0, + "perimeter_px": 108.33943939208984, + "sharpness": { + "laplacian_var": 1811.1556224254036 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 72.70393374741201, + "std_gray": 58.0764945436627 + }, + "geometry": { + "distance_to_center_norm": 0.5784616470336914, + "distance_to_border_px": 209.0 + }, + "edge_ratio": 1.187894376916731, + "edge_lengths_px": [ + 24.75883674621582, + 29.4108829498291, + 24.75883674621582, + 29.4108829498291 + ] + }, + "confidence": 0.4046375469124394 + }, + { + "observation_id": "e5ed5277-45ed-4499-af33-873356481702", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 437.0 + ], + [ + 765.0, + 454.0 + ], + [ + 745.0, + 436.0 + ], + [ + 767.0, + 419.0 + ] + ], + "center_px": [ + 765.75, + 436.5 + ], + "quality": { + "area_px": 718.5, + "perimeter_px": 107.90114212036133, + "sharpness": { + "laplacian_var": 1491.443337468285 + }, + "contrast": { + "p05": 22.0, + "p95": 171.0, + "dynamic_range": 149.0, + "mean_gray": 109.3970893970894, + "std_gray": 60.642148532506475 + }, + "geometry": { + "distance_to_center_norm": 0.12573395669460297, + "distance_to_border_px": 419.0 + }, + "edge_ratio": 1.0622933508624515, + "edge_lengths_px": [ + 27.018512725830078, + 26.90724754333496, + 27.80287742614746, + 26.172504425048828 + ] + }, + "confidence": 0.4509112286273005 + }, + { + "observation_id": "ce60a5ab-f54c-4785-8cb9-39ba3a08e10a", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 730.0, + 434.0 + ], + [ + 708.0, + 452.0 + ], + [ + 689.0, + 434.0 + ], + [ + 710.0, + 417.0 + ] + ], + "center_px": [ + 709.25, + 434.25 + ], + "quality": { + "area_px": 717.5, + "perimeter_px": 107.86516761779785, + "sharpness": { + "laplacian_var": 1736.662652737497 + }, + "contrast": { + "p05": 19.0, + "p95": 167.0, + "dynamic_range": 148.0, + "mean_gray": 58.66320166320166, + "std_gray": 55.157409197074806 + }, + "geometry": { + "distance_to_center_norm": 0.11810554563999176, + "distance_to_border_px": 417.0 + }, + "edge_ratio": 1.0860764484296306, + "edge_lengths_px": [ + 28.42534065246582, + 26.172504425048828, + 27.018512725830078, + 26.248809814453125 + ] + }, + "confidence": 0.44042326304466006 + }, + { + "observation_id": "7a268a1a-7be6-4667-893f-c649af55440c", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 576.0, + 320.0 + ], + [ + 550.0, + 337.0 + ], + [ + 536.0, + 319.0 + ], + [ + 558.0, + 303.0 + ] + ], + "center_px": [ + 555.0, + 319.75 + ], + "quality": { + "area_px": 684.0, + "perimeter_px": 105.82973670959473, + "sharpness": { + "laplacian_var": 2755.9650784771356 + }, + "contrast": { + "p05": 18.3, + "p95": 164.0, + "dynamic_range": 145.7, + "mean_gray": 118.58029978586724, + "std_gray": 53.53363006243584 + }, + "geometry": { + "distance_to_center_norm": 0.30577781796455383, + "distance_to_border_px": 303.0 + }, + "edge_ratio": 1.362266203821036, + "edge_lengths_px": [ + 31.064449310302734, + 22.803508758544922, + 27.20294189453125, + 24.75883674621582 + ] + }, + "confidence": 0.33473633767097827 + }, + { + "observation_id": "4d5210f6-93df-4104-af25-1726629990ea", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 146.0, + 302.0 + ], + [ + 128.0, + 284.0 + ], + [ + 151.0, + 268.0 + ], + [ + 168.0, + 285.0 + ] + ], + "center_px": [ + 148.25, + 284.75 + ], + "quality": { + "area_px": 682.5, + "perimeter_px": 105.31820297241211, + "sharpness": { + "laplacian_var": 1274.9818476124406 + }, + "contrast": { + "p05": 8.0, + "p95": 153.0, + "dynamic_range": 145.0, + "mean_gray": 78.65806451612903, + "std_gray": 55.65065056297059 + }, + "geometry": { + "distance_to_center_norm": 0.6957105398178101, + "distance_to_border_px": 128.0 + }, + "edge_ratio": 1.1653889989621362, + "edge_lengths_px": [ + 25.45584487915039, + 28.017850875854492, + 24.041629791259766, + 27.80287742614746 + ] + }, + "confidence": 0.3904275743165678 + }, + { + "observation_id": "dddbee13-c188-4a32-9b09-0aee444b83a0", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 561.0, + 509.0 + ], + [ + 545.0, + 479.0 + ], + [ + 562.0, + 476.0 + ], + [ + 579.0, + 506.0 + ] + ], + "center_px": [ + 561.75, + 492.5 + ], + "quality": { + "area_px": 574.5, + "perimeter_px": 103.99284362792969, + "sharpness": { + "laplacian_var": 2618.6153012470177 + }, + "contrast": { + "p05": 28.0, + "p95": 182.0, + "dynamic_range": 154.0, + "mean_gray": 76.1413881748072, + "std_gray": 60.266572002236316 + }, + "geometry": { + "distance_to_center_norm": 0.18358337879180908, + "distance_to_border_px": 476.0 + }, + "edge_ratio": 1.997481717814946, + "edge_lengths_px": [ + 34.0, + 17.262676239013672, + 34.48188018798828, + 18.248287200927734 + ] + }, + "confidence": 0.19174142951303974 + }, + { + "observation_id": "c597a400-1124-454b-b7fc-7e89a82acca6", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 349.0, + 309.0 + ], + [ + 327.0, + 326.0 + ], + [ + 309.0, + 310.0 + ], + [ + 330.0, + 293.0 + ] + ], + "center_px": [ + 328.75, + 309.5 + ], + "quality": { + "area_px": 658.5, + "perimeter_px": 103.74406433105469, + "sharpness": { + "laplacian_var": 1094.0317657154478 + }, + "contrast": { + "p05": 9.0, + "p95": 158.0, + "dynamic_range": 149.0, + "mean_gray": 66.65924276169265, + "std_gray": 58.28183701574557 + }, + "geometry": { + "distance_to_center_norm": 0.5045555830001831, + "distance_to_border_px": 293.0 + }, + "edge_ratio": 1.1544516556294537, + "edge_lengths_px": [ + 27.80287742614746, + 24.083189010620117, + 27.018512725830078, + 24.83948516845703 + ] + }, + "confidence": 0.38026711457279644 + }, + { + "observation_id": "0a487f0d-fb3a-4d97-bf68-348fea791b9c", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 341.0 + ], + [ + 501.0, + 358.0 + ], + [ + 483.0, + 341.0 + ], + [ + 503.0, + 325.0 + ] + ], + "center_px": [ + 502.25, + 341.25 + ], + "quality": { + "area_px": 643.5, + "perimeter_px": 102.22933197021484, + "sharpness": { + "laplacian_var": 792.6312567894008 + }, + "contrast": { + "p05": 12.0, + "p95": 156.59999999999997, + "dynamic_range": 144.59999999999997, + "mean_gray": 44.28285077951002, + "std_gray": 50.37014613113326 + }, + "geometry": { + "distance_to_center_norm": 0.32757362723350525, + "distance_to_border_px": 325.0 + }, + "edge_ratio": 1.0912674534258815, + "edge_lengths_px": [ + 27.018512725830078, + 24.75883674621582, + 25.612497329711914, + 24.83948516845703 + ] + }, + "confidence": 0.3931208602008742 + }, + { + "observation_id": "041a5ac3-344b-438d-a547-c7cc20195712", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 378.0, + 281.0 + ], + [ + 356.0, + 296.0 + ], + [ + 340.0, + 278.0 + ], + [ + 362.0, + 263.0 + ] + ], + "center_px": [ + 359.0, + 279.5 + ], + "quality": { + "area_px": 636.0, + "perimeter_px": 101.42048645019531, + "sharpness": { + "laplacian_var": 1475.439773960402 + }, + "contrast": { + "p05": 12.0, + "p95": 159.0, + "dynamic_range": 147.0, + "mean_gray": 104.82805429864253, + "std_gray": 54.152686185461974 + }, + "geometry": { + "distance_to_center_norm": 0.49463948607444763, + "distance_to_border_px": 263.0 + }, + "edge_ratio": 1.1056282539133682, + "edge_lengths_px": [ + 26.62705421447754, + 24.083189010620117, + 26.62705421447754, + 24.083189010620117 + ] + }, + "confidence": 0.3834923705135548 + }, + { + "observation_id": "7b989d2e-fbc3-4513-a9b4-4adc8ec25db9", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 444.0, + 258.0 + ], + [ + 425.0, + 275.0 + ], + [ + 406.0, + 259.0 + ], + [ + 427.0, + 243.0 + ] + ], + "center_px": [ + 425.5, + 258.75 + ], + "quality": { + "area_px": 607.0, + "perimeter_px": 99.40690803527832, + "sharpness": { + "laplacian_var": 1418.6926709234967 + }, + "contrast": { + "p05": 11.0, + "p95": 160.0, + "dynamic_range": 149.0, + "mean_gray": 106.14797136038186, + "std_gray": 57.2326997711296 + }, + "geometry": { + "distance_to_center_norm": 0.45247167348861694, + "distance_to_border_px": 243.0 + }, + "edge_ratio": 1.1644874731532113, + "edge_lengths_px": [ + 25.495098114013672, + 24.83948516845703, + 26.4007568359375, + 22.671567916870117 + ] + }, + "confidence": 0.3475062428717297 + }, + { + "observation_id": "b438bccc-563b-41cf-87c5-35daaaf9b365", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 540.0, + 214.0 + ], + [ + 518.0, + 229.0 + ], + [ + 502.0, + 212.0 + ], + [ + 524.0, + 198.0 + ] + ], + "center_px": [ + 521.0, + 213.25 + ], + "quality": { + "area_px": 595.0, + "perimeter_px": 98.67651557922363, + "sharpness": { + "laplacian_var": 2376.767235312675 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 88.00492610837438, + "std_gray": 57.82609375178821 + }, + "geometry": { + "distance_to_center_norm": 0.425087571144104, + "distance_to_border_px": 198.0 + }, + "edge_ratio": 1.176760682519333, + "edge_lengths_px": [ + 26.62705421447754, + 23.34523582458496, + 26.07680892944336, + 22.627416610717773 + ] + }, + "confidence": 0.3370835485575886 + }, + { + "observation_id": "3e64db03-8bad-4fb0-a7f7-7976bc7e4228", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 435.0, + 187.0 + ], + [ + 413.0, + 203.0 + ], + [ + 397.0, + 188.0 + ], + [ + 416.0, + 172.0 + ] + ], + "center_px": [ + 415.25, + 187.5 + ], + "quality": { + "area_px": 587.5, + "perimeter_px": 98.18157768249512, + "sharpness": { + "laplacian_var": 1963.1431301414739 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 65.73891625615764, + "std_gray": 57.77965459852634 + }, + "geometry": { + "distance_to_center_norm": 0.5177453756332397, + "distance_to_border_px": 172.0 + }, + "edge_ratio": 1.2403473347124077, + "edge_lengths_px": [ + 27.20294189453125, + 21.931713104248047, + 24.83948516845703, + 24.20743751525879 + ] + }, + "confidence": 0.3157717646545193 + }, + { + "observation_id": "15d7ffaf-d67e-49c1-94fb-ea2600b66730", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 295.0, + 182.0 + ], + [ + 274.0, + 199.0 + ], + [ + 257.0, + 184.0 + ], + [ + 277.0, + 168.0 + ] + ], + "center_px": [ + 275.75, + 183.25 + ], + "quality": { + "area_px": 586.0, + "perimeter_px": 98.10608673095703, + "sharpness": { + "laplacian_var": 1004.0248132785243 + }, + "contrast": { + "p05": 8.0, + "p95": 152.0, + "dynamic_range": 144.0, + "mean_gray": 57.34663341645885, + "std_gray": 54.68788834886238 + }, + "geometry": { + "distance_to_center_norm": 0.6330687999725342, + "distance_to_border_px": 168.0 + }, + "edge_ratio": 1.1917355175830322, + "edge_lengths_px": [ + 27.018512725830078, + 22.671567916870117, + 25.612497329711914, + 22.803508758544922 + ] + }, + "confidence": 0.32781322776968225 + }, + { + "observation_id": "e1c4474b-3fba-4df1-85c7-17a62ed3801c", + "type": "aruco", + "marker_id": 65, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 330.0, + 124.0 + ], + [ + 309.0, + 139.0 + ], + [ + 292.0, + 125.0 + ], + [ + 312.0, + 109.0 + ] + ], + "center_px": [ + 310.75, + 124.25 + ], + "quality": { + "area_px": 568.5, + "perimeter_px": 96.87293815612793, + "sharpness": { + "laplacian_var": 1300.0755674364495 + }, + "contrast": { + "p05": 8.0, + "p95": 155.0, + "dynamic_range": 147.0, + "mean_gray": 86.9776119402985, + "std_gray": 55.68315657930573 + }, + "geometry": { + "distance_to_center_norm": 0.6482013463973999, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.1718344795212643, + "edge_lengths_px": [ + 25.806976318359375, + 22.022714614868164, + 25.612497329711914, + 23.430749893188477 + ] + }, + "confidence": 0.323424516536529 + }, + { + "observation_id": "99de7f68-41cb-41ff-a821-ca37b6f50be7", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 356.0, + 167.0 + ], + [ + 333.0, + 181.0 + ], + [ + 319.0, + 165.0 + ], + [ + 341.0, + 151.0 + ] + ], + "center_px": [ + 337.25, + 166.0 + ], + "quality": { + "area_px": 563.0, + "perimeter_px": 96.19463729858398, + "sharpness": { + "laplacian_var": 1894.9311071943598 + }, + "contrast": { + "p05": 9.0, + "p95": 156.0, + "dynamic_range": 147.0, + "mean_gray": 103.9113924050633, + "std_gray": 53.71344264563591 + }, + "geometry": { + "distance_to_center_norm": 0.5945987105369568, + "distance_to_border_px": 151.0 + }, + "edge_ratio": 1.266484164199827, + "edge_lengths_px": [ + 26.925823211669922, + 21.260292053222656, + 26.07680892944336, + 21.931713104248047 + ] + }, + "confidence": 0.2963584890699928 + }, + { + "observation_id": "ca832274-bdcf-4fd9-8424-45c5cbdc286c", + "type": "aruco", + "marker_id": 87, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 180.0, + 65.0 + ], + [ + 159.0, + 81.0 + ], + [ + 143.0, + 66.0 + ], + [ + 164.0, + 52.0 + ] + ], + "center_px": [ + 161.5, + 66.0 + ], + "quality": { + "area_px": 534.0, + "perimeter_px": 94.18685722351074, + "sharpness": { + "laplacian_var": 1427.9534499507668 + }, + "contrast": { + "p05": 8.0, + "p95": 150.0, + "dynamic_range": 142.0, + "mean_gray": 94.2133676092545, + "std_gray": 52.32608089294961 + }, + "geometry": { + "distance_to_center_norm": 0.8139207363128662, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.2806248134565528, + "edge_lengths_px": [ + 26.4007568359375, + 21.931713104248047, + 25.238859176635742, + 20.615528106689453 + ] + }, + "confidence": 0.27798930354872264 + }, + { + "observation_id": "2849c088-1a84-47a2-bb97-9ec3dd534f5d", + "type": "aruco", + "marker_id": 80, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 318.0, + 56.0 + ], + [ + 297.0, + 71.0 + ], + [ + 281.0, + 57.0 + ], + [ + 301.0, + 42.0 + ] + ], + "center_px": [ + 299.25, + 56.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 847.3843286787691 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 66.73007712082263, + "std_gray": 58.398961546954666 + }, + "geometry": { + "distance_to_center_norm": 0.7121544480323792, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.806976318359375, + 21.260292053222656, + 25.0, + 22.022714614868164 + ] + }, + "confidence": 0.24658567276025462 + }, + { + "observation_id": "fa4fa37d-07d6-438d-ad60-97b28f7ee556", + "type": "aruco", + "marker_id": 78, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 352.0, + 82.0 + ], + [ + 332.0, + 97.0 + ], + [ + 315.0, + 83.0 + ], + [ + 336.0, + 68.0 + ] + ], + "center_px": [ + 333.75, + 82.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 1495.6557828150394 + }, + "contrast": { + "p05": 8.0, + "p95": 154.39999999999998, + "dynamic_range": 146.39999999999998, + "mean_gray": 80.43256997455471, + "std_gray": 54.727417597641875 + }, + "geometry": { + "distance_to_center_norm": 0.6652719378471375, + "distance_to_border_px": 68.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.0, + 22.022714614868164, + 25.806976318359375, + 21.260292053222656 + ] + }, + "confidence": 0.29355437233363646 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 486.0, + 719.0 + ], + [ + 454.0, + 799.0 + ], + [ + 418.0, + 837.0 + ], + [ + 463.0, + 740.0 + ] + ], + "center_px": [ + 455.25, + 773.75 + ], + "area_px": 1475.0 + }, + { + "image_points_px": [ + [ + 438.0, + 753.0 + ], + [ + 414.0, + 813.0 + ], + [ + 410.0, + 798.0 + ], + [ + 428.0, + 756.0 + ] + ], + "center_px": [ + 422.5, + 780.0 + ], + "area_px": 483.0 + }, + { + "image_points_px": [ + [ + 800.0, + 580.0 + ], + [ + 824.0, + 598.0 + ], + [ + 805.0, + 618.0 + ], + [ + 781.0, + 600.0 + ] + ], + "center_px": [ + 802.5, + 599.0 + ], + "area_px": 822.0 + }, + { + "image_points_px": [ + [ + 347.0, + 811.0 + ], + [ + 356.0, + 811.0 + ], + [ + 379.0, + 836.0 + ], + [ + 372.0, + 837.0 + ] + ], + "center_px": [ + 363.5, + 823.75 + ], + "area_px": 216.0 + }, + { + "image_points_px": [ + [ + 606.0, + 542.0 + ], + [ + 580.0, + 559.0 + ], + [ + 569.0, + 560.0 + ], + [ + 589.0, + 544.0 + ] + ], + "center_px": [ + 586.0, + 551.25 + ], + "area_px": 196.5 + }, + { + "image_points_px": [ + [ + 523.0, + 557.0 + ], + [ + 498.0, + 574.0 + ], + [ + 494.0, + 570.0 + ], + [ + 503.0, + 561.0 + ] + ], + "center_px": [ + 504.5, + 565.5 + ], + "area_px": 156.0 + }, + { + "image_points_px": [ + [ + 803.0, + 972.0 + ], + [ + 814.0, + 977.0 + ], + [ + 824.0, + 985.0 + ], + [ + 808.0, + 977.0 + ] + ], + "center_px": [ + 812.25, + 977.75 + ], + "area_px": 39.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/render_g_camera_pose.json b/data/camera_study/Scene10/k3_abg/render_g_camera_pose.json new file mode 100644 index 0000000..2f66d3b --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/render_g_camera_pose.json @@ -0,0 +1,663 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:42Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_abg\\render_g_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "g", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 33, + "used_marker_ids": [ + 86, + 64, + 215, + 58, + 72, + 69, + 53, + 103, + 51, + 56, + 46, + 68, + 79, + 55, + 66, + 47, + 217, + 97, + 54, + 85, + 205, + 92, + 105, + 102, + 59, + 57, + 48, + 63, + 65, + 71, + 87, + 80, + 78 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.009919110626502768, + 0.00131603695020182, + 0.001107937977321884, + 0.0011079307333379282 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.1533723108903047, + "residual_median_px": 2.642822899939481, + "residual_max_px": 5.712847334889287, + "sigma2_normalized": 1.3502615607878073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + -0.7068235278129578, + -0.7073897123336792, + 0.0005333506851457059 + ], + [ + -0.6407679319381714, + 0.6399352550506592, + -0.424145370721817 + ], + [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + ], + "translation_m": [ + -0.00025032571284100413, + 0.3299143314361572, + 1.3926880359649658 + ], + "rvec_rad": [ + 1.1160234227786252, + -2.692342329270323, + 0.5995714660194011 + ] + }, + "camera_in_world": { + "position_m": [ + -0.20615969598293304, + 0.20669731497764587, + 1.40114164352417 + ], + "position_mm": [ + -206.15969848632812, + 206.6973114013672, + 1401.1416015625 + ], + "orientation_deg": { + "roll": -161.66343688964844, + "pitch": -17.43927001953125, + "yaw": -137.80624389648438 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 4.975476294351241e-06, + -6.1997390444361685e-06, + 4.6125841623440254e-06, + 3.8792135706014886e-07, + 1.0177551175558624e-06, + 4.222247510549453e-06 + ], + [ + -6.199739044436152e-06, + 1.6975220993135513e-05, + -1.1554389240886986e-05, + -2.6694426951616535e-06, + -1.5071367865932754e-06, + -1.0044703768545779e-05 + ], + [ + 4.61258416234392e-06, + -1.1554389240886865e-05, + 4.305804556659614e-05, + 4.2916213343878956e-06, + -2.367994951969628e-06, + 1.1642827799058608e-07 + ], + [ + 3.8792135706013785e-07, + -2.66944269516164e-06, + 4.29162133438789e-06, + 8.873234421723078e-07, + -1.077878898019132e-07, + 5.938016020714988e-07 + ], + [ + 1.0177551175558734e-06, + -1.5071367865932949e-06, + -2.3679949519695885e-06, + -1.0778788980190919e-07, + 6.616834799099002e-07, + 1.592756267167381e-06 + ], + [ + 4.2222475105494726e-06, + -1.0044703768545826e-05, + 1.1642827799072875e-07, + 5.938016020715144e-07, + 1.5927562671673749e-06, + 1.016526335390813e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.12780268061910577, + 0.23606432019497975, + 0.37596705361655935 + ], + "tvec_std_m": [ + 0.0009419784722446197, + 0.0008134392908569761, + 0.0031883010136917957 + ] + }, + "camera_center_std_m": [ + 0.005660072460127804, + 0.007818574448214759, + 0.0036781658638248924 + ], + "camera_center_std_mm": [ + 5.660072460127804, + 7.8185744482147586, + 3.6781658638248924 + ], + "orientation_std_deg": { + "roll": 0.33214565947431973, + "pitch": 0.23919321283200756, + "yaw": 0.12115842919429226 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 86, + "observed_center_px": [ + 70.5, + 959.0 + ], + "projected_center_px": [ + 72.42671966552734, + 955.485107421875 + ], + "reprojection_error_px": 4.0083311371801615, + "confidence": 0.5795855489013004 + }, + { + "marker_id": 64, + "observed_center_px": [ + 921.75, + 859.0 + ], + "projected_center_px": [ + 922.7560424804688, + 862.7833251953125 + ], + "reprojection_error_px": 3.9148015283017963, + "confidence": 0.616540888528013 + }, + { + "marker_id": 215, + "observed_center_px": [ + 566.5, + 693.0 + ], + "projected_center_px": [ + 568.2459106445312, + 692.080322265625 + ], + "reprojection_error_px": 1.9733248880487617, + "confidence": 0.6152661587526339 + }, + { + "marker_id": 58, + "observed_center_px": [ + 880.5, + 772.75 + ], + "projected_center_px": [ + 879.3278198242188, + 769.2518310546875 + ], + "reprojection_error_px": 3.689334944735071, + "confidence": 0.5876289194459208 + }, + { + "marker_id": 72, + "observed_center_px": [ + 115.5, + 788.0 + ], + "projected_center_px": [ + 114.51494598388672, + 788.7781982421875 + ], + "reprojection_error_px": 1.2553580838966305, + "confidence": 0.5322501871361803 + }, + { + "marker_id": 69, + "observed_center_px": [ + 977.0, + 755.0 + ], + "projected_center_px": [ + 978.3434448242188, + 750.7787475585938 + ], + "reprojection_error_px": 4.429877669845791, + "confidence": 0.5873934926369923 + }, + { + "marker_id": 53, + "observed_center_px": [ + 54.0, + 764.5 + ], + "projected_center_px": [ + 57.76123046875, + 763.97119140625 + ], + "reprojection_error_px": 3.79822236946143, + "confidence": 0.32594286952973284 + }, + { + "marker_id": 103, + "observed_center_px": [ + 801.0, + 744.25 + ], + "projected_center_px": [ + 797.4358520507812, + 746.4951782226562 + ], + "reprojection_error_px": 4.212359891487205, + "confidence": 0.5606734879266068 + }, + { + "marker_id": 51, + "observed_center_px": [ + 725.0, + 703.75 + ], + "projected_center_px": [ + 724.1592407226562, + 705.2492065429688 + ], + "reprojection_error_px": 1.7188648640657866, + "confidence": 0.5872237273710109 + }, + { + "marker_id": 56, + "observed_center_px": [ + 97.75, + 709.75 + ], + "projected_center_px": [ + 94.510986328125, + 713.8988647460938 + ], + "reprojection_error_px": 5.263486320678788, + "confidence": 0.46950770604173 + }, + { + "marker_id": 46, + "observed_center_px": [ + 51.5, + 694.75 + ], + "projected_center_px": [ + 45.80540466308594, + 695.206298828125 + ], + "reprojection_error_px": 5.712847334889287, + "confidence": 0.2902883953953809 + }, + { + "marker_id": 68, + "observed_center_px": [ + 28.25, + 652.0 + ], + "projected_center_px": [ + 32.07790756225586, + 650.2508544921875 + ], + "reprojection_error_px": 4.20860859580411, + "confidence": 0.06745941479560678 + }, + { + "marker_id": 79, + "observed_center_px": [ + 581.75, + 593.0 + ], + "projected_center_px": [ + 580.7769775390625, + 592.564453125 + ], + "reprojection_error_px": 1.0660552470726525, + "confidence": 0.48014488393995497 + }, + { + "marker_id": 55, + "observed_center_px": [ + 699.0, + 531.5 + ], + "projected_center_px": [ + 701.2785034179688, + 531.0349731445312 + ], + "reprojection_error_px": 2.3254736726100407, + "confidence": 0.5033557129355607 + }, + { + "marker_id": 66, + "observed_center_px": [ + 857.75, + 508.5 + ], + "projected_center_px": [ + 857.27294921875, + 509.6018981933594 + ], + "reprojection_error_px": 1.200731891980841, + "confidence": 0.4791716529202595 + }, + { + "marker_id": 47, + "observed_center_px": [ + 671.0, + 462.5 + ], + "projected_center_px": [ + 669.33203125, + 463.6061096191406 + ], + "reprojection_error_px": 2.001399070783231, + "confidence": 0.47486054263026106 + }, + { + "marker_id": 217, + "observed_center_px": [ + 229.5, + 365.5 + ], + "projected_center_px": [ + 227.5244140625, + 361.9618225097656 + ], + "reprojection_error_px": 4.052362243044047, + "confidence": 0.4046375469124394 + }, + { + "marker_id": 97, + "observed_center_px": [ + 765.75, + 436.5 + ], + "projected_center_px": [ + 768.8408203125, + 437.7091064453125 + ], + "reprojection_error_px": 3.318901715968526, + "confidence": 0.4509112286273005 + }, + { + "marker_id": 54, + "observed_center_px": [ + 709.25, + 434.25 + ], + "projected_center_px": [ + 710.0586547851562, + 430.8271789550781 + ], + "reprojection_error_px": 3.5170479762317965, + "confidence": 0.44042326304466006 + }, + { + "marker_id": 85, + "observed_center_px": [ + 555.0, + 319.75 + ], + "projected_center_px": [ + 556.587158203125, + 321.8631591796875 + ], + "reprojection_error_px": 2.642822899939481, + "confidence": 0.33473633767097827 + }, + { + "marker_id": 205, + "observed_center_px": [ + 148.25, + 284.75 + ], + "projected_center_px": [ + 149.84744262695312, + 286.7835693359375 + ], + "reprojection_error_px": 2.5859673606741804, + "confidence": 0.3904275743165678 + }, + { + "marker_id": 92, + "observed_center_px": [ + 328.75, + 309.5 + ], + "projected_center_px": [ + 328.0833435058594, + 312.3528137207031 + ], + "reprojection_error_px": 2.929671825684897, + "confidence": 0.38026711457279644 + }, + { + "marker_id": 105, + "observed_center_px": [ + 502.25, + 341.25 + ], + "projected_center_px": [ + 498.5203857421875, + 341.1575622558594 + ], + "reprojection_error_px": 3.730759607455309, + "confidence": 0.3931208602008742 + }, + { + "marker_id": 102, + "observed_center_px": [ + 359.0, + 279.5 + ], + "projected_center_px": [ + 359.4945373535156, + 281.3692626953125 + ], + "reprojection_error_px": 1.9335744666573331, + "confidence": 0.3834923705135548 + }, + { + "marker_id": 59, + "observed_center_px": [ + 425.5, + 258.75 + ], + "projected_center_px": [ + 428.2454833984375, + 258.3636779785156 + ], + "reprojection_error_px": 2.7725302154132963, + "confidence": 0.3475062428717297 + }, + { + "marker_id": 57, + "observed_center_px": [ + 521.0, + 213.25 + ], + "projected_center_px": [ + 521.8204956054688, + 214.8630828857422 + ], + "reprojection_error_px": 1.8097650220036505, + "confidence": 0.3370835485575886 + }, + { + "marker_id": 48, + "observed_center_px": [ + 415.25, + 187.5 + ], + "projected_center_px": [ + 416.5931396484375, + 185.31541442871094 + ], + "reprojection_error_px": 2.564456713124472, + "confidence": 0.3157717646545193 + }, + { + "marker_id": 63, + "observed_center_px": [ + 275.75, + 183.25 + ], + "projected_center_px": [ + 273.6121826171875, + 182.2046661376953 + ], + "reprojection_error_px": 2.379702932287163, + "confidence": 0.32781322776968225 + }, + { + "marker_id": 65, + "observed_center_px": [ + 310.75, + 124.25 + ], + "projected_center_px": [ + 308.9479675292969, + 123.33204650878906 + ], + "reprojection_error_px": 2.022364862603867, + "confidence": 0.323424516536529 + }, + { + "marker_id": 71, + "observed_center_px": [ + 337.25, + 166.0 + ], + "projected_center_px": [ + 337.3795471191406, + 168.51844787597656 + ], + "reprojection_error_px": 2.52177757942458, + "confidence": 0.2963584890699928 + }, + { + "marker_id": 87, + "observed_center_px": [ + 161.5, + 66.0 + ], + "projected_center_px": [ + 160.9746551513672, + 64.77437591552734 + ], + "reprojection_error_px": 1.33346976209604, + "confidence": 0.27798930354872264 + }, + { + "marker_id": 80, + "observed_center_px": [ + 299.25, + 56.5 + ], + "projected_center_px": [ + 298.39697265625, + 58.612037658691406 + ], + "reprojection_error_px": 2.277796900716975, + "confidence": 0.24658567276025462 + }, + { + "marker_id": 78, + "observed_center_px": [ + 333.75, + 82.5 + ], + "projected_center_px": [ + 335.54010009765625, + 79.4444351196289 + ], + "reprojection_error_px": 3.5413182711789872, + "confidence": 0.29355437233363646 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/robot_state.eval.json b/data/camera_study/Scene10/k3_abg/robot_state.eval.json new file mode 100644 index 0000000..af0c383 --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 120.70043973632987, + "gt": 120.0, + "error": 0.7004397363298693, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 60.16908437754865, + "gt": 60.0, + "error": 0.1690843775486428, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -110.15200576996341, + "gt": -110.0, + "error": 0.15200576996340942, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "a", + "estimate": 20.142377189147638, + "gt": 20.0, + "error": 0.14237718914762354, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "b", + "estimate": 0.0, + "gt": 30.0, + "error": 30.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "c", + "estimate": 0.0, + "gt": 180.0, + "error": 180.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "e", + "estimate": 0.0, + "gt": 4.0, + "error": 4.0, + "unit": "mm", + "observable": false, + "n_markers": 0 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.15448911221989192, + "max_abs_deg": 0.1690843775486428, + "mean_abs_mm": 0.7004397363298693, + "max_abs_mm": 0.7004397363298693 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_abg/robot_state.json b/data/camera_study/Scene10/k3_abg/robot_state.json new file mode 100644 index 0000000..d57b953 --- /dev/null +++ b/data/camera_study/Scene10/k3_abg/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:46Z", + "method": "hybrid", + "movements": { + "x": { + "value": 120.70043973632987, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 60.16908437754865, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -110.15200576996341, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "a": { + "value": 20.142377189147638, + "unit": "deg", + "observable": true, + "confidence": "medium", + "n_markers": 1 + }, + "b": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "c": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "e": { + "value": 0.0, + "unit": "mm", + "observable": false, + "confidence": "none", + "n_markers": 0 + } + }, + "residual_rms": 1.7436745244346223, + "num_markers": 31 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/aruco_marker_poses.json b/data/camera_study/Scene10/k3_acf/aruco_marker_poses.json new file mode 100644 index 0000000..6301248 --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/aruco_marker_poses.json @@ -0,0 +1,927 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:18:11Z", + "summary": { + "num_cameras": 3, + "num_markers": 20 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.30625156692571426, + -0.19943799730493225, + 0.023066068853503038 + ], + "position_mm": [ + 306.25156692571426, + -199.43799730493225, + 23.066068853503037 + ], + "normal": [ + 0.15687904649832402, + -0.9672869492864014, + 0.1993612863872615 + ], + "corners_m": [ + [ + 0.29276560826025194, + -0.19927591653286753, + 0.03403675883942624 + ], + [ + 0.31661308385723946, + -0.19522078707963225, + 0.03579477485318833 + ], + [ + 0.3196696405207763, + -0.1994852544672114, + 0.011854893968842498 + ], + [ + 0.29595793506458934, + -0.20377003114001777, + 0.010577847752555094 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.24727990038044 + }, + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.34370825936926164, + -0.28803437275196386, + -0.027236199604816446 + ], + "position_mm": [ + 343.7082593692616, + -288.0343727519639, + -27.236199604816445 + ], + "normal": [ + -0.0005787018757931211, + 0.010987457377111267, + 0.999939468610238 + ], + "corners_m": [ + [ + 0.3321478501115234, + -0.3000166824527924, + -0.027428893425160885 + ], + [ + 0.33190116720811574, + -0.27596316926428915, + -0.027066483154549514 + ], + [ + 0.35558230340607777, + -0.27623032481489146, + -0.0276727203980389 + ], + [ + 0.35520171675132944, + -0.2999273144758824, + -0.026776701441516493 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.63203741978846 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.1679830330110133, + -0.17306267384539575, + -0.027608917846056923 + ], + "position_mm": [ + 167.9830330110133, + -173.06267384539575, + -27.608917846056922 + ], + "normal": [ + -0.003525798854165602, + 0.004443795900434561, + 0.999983910580783 + ], + "corners_m": [ + [ + 0.15584067496495674, + -0.18413414435670086, + -0.027665417392107212 + ], + [ + 0.15641529026911158, + -0.16086019527793255, + -0.027641706995374663 + ], + [ + 0.1802563772438861, + -0.1618665823756431, + -0.027676923317898377 + ], + [ + 0.1794197895660988, + -0.18538977337130644, + -0.02745162367884743 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.574007454768616 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3398831461340051, + -0.3273910825599532, + -0.027439892435177842 + ], + "position_mm": [ + 339.88314613400513, + -327.3910825599532, + -27.439892435177843 + ], + "normal": [ + 0.0013153382574689833, + -0.0002894692766765989, + 0.9999990930459919 + ], + "corners_m": [ + [ + 0.32822462759597765, + -0.33912760946473447, + -0.0276123922196962 + ], + [ + 0.3282090870751449, + -0.31572465702182734, + -0.02723144415475189 + ], + [ + 0.35121136743670966, + -0.3156335407085778, + -0.0276407558662731 + ], + [ + 0.3518875024281882, + -0.33907852304467323, + -0.027274977499990177 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.383768323441544 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.2845294695086124, + -0.26090026391053517, + -0.027423492437257634 + ], + "position_mm": [ + 284.5294695086124, + -260.90026391053516, + -27.423492437257632 + ], + "normal": [ + -0.020296478958215944, + 0.02131985087452404, + 0.9995666645604918 + ], + "corners_m": [ + [ + 0.2723585569688042, + -0.2721806525854753, + -0.027370305640202625 + ], + [ + 0.2732852776165275, + -0.24826531260765305, + -0.02798160012656419 + ], + [ + 0.2965750608442705, + -0.2499490629925562, + -0.0273504372408966 + ], + [ + 0.2958989826048474, + -0.273206027456456, + -0.026991626741367132 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.53388386121122 + }, + { + "marker_id": 58, + "link": "Board", + "position_m": [ + 0.047336861700937254, + -0.21643100832679277, + -0.027209077984690494 + ], + "position_mm": [ + 47.336861700937256, + -216.43100832679278, + -27.209077984690495 + ], + "normal": [ + 0.0013588198906133635, + -0.0036434141538534276, + 0.999992439542324 + ], + "corners_m": [ + [ + 0.035361871794753426, + -0.22834202681993007, + -0.027259175356223724 + ], + [ + 0.035636338795523775, + -0.20492512880256072, + -0.027128009198217347 + ], + [ + 0.059170172929795664, + -0.2045790098019498, + -0.027205336754186512 + ], + [ + 0.05917906328367614, + -0.22787786788273048, + -0.027243790630134396 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.51899761077337 + }, + { + "marker_id": 62, + "link": "Board", + "position_m": [ + 0.40220949700173025, + -0.17317235483066087, + -0.027821052839376182 + ], + "position_mm": [ + 402.20949700173026, + -173.17235483066088, + -27.821052839376183 + ], + "normal": [ + -0.000862606022259764, + -0.00901458539334854, + 0.9999589957398436 + ], + "corners_m": [ + [ + 0.3909174820686879, + -0.1851716932202503, + -0.028094810616444352 + ], + [ + 0.38988424659088694, + -0.16226388452025312, + -0.027575815762105355 + ], + [ + 0.41335360429422346, + -0.16080146679790683, + -0.02785248190488175 + ], + [ + 0.41468265505312274, + -0.18445237478423324, + -0.027761103074073267 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.480067655548915 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.019295995226067536, + -0.18908317231704055, + -0.026886827273300915 + ], + "position_mm": [ + -19.295995226067536, + -189.08317231704055, + -26.886827273300916 + ], + "normal": [ + -0.006578296524961398, + -0.005970322012047947, + 0.9999605398563997 + ], + "corners_m": [ + [ + -0.03115874300702659, + -0.20089619465711786, + -0.027059973406095738 + ], + [ + -0.030698654304655165, + -0.1771341298911751, + -0.02686556864261637 + ], + [ + -0.007599296097562615, + -0.1773431994189574, + -0.026764870702709966 + ], + [ + -0.007727287495025766, + -0.20095916530091187, + -0.026856896341781584 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.479187389961393 + }, + { + "marker_id": 75, + "link": "Board", + "position_m": [ + -0.02737091958405125, + 0.19251393361028626, + -0.025879567720181247 + ], + "position_mm": [ + -27.370919584051247, + 192.51393361028627, + -25.879567720181246 + ], + "normal": [ + -0.005010256373394576, + 0.017350924146044278, + 0.9998369080816887 + ], + "corners_m": [ + [ + -0.03985854261910194, + 0.1816663896855667, + -0.025706112876447213 + ], + [ + -0.0383396807327872, + 0.20509043643902453, + -0.026200828860729736 + ], + [ + -0.014947293490023179, + 0.20337278889365037, + -0.025957727809161137 + ], + [ + -0.016338161494292684, + 0.17992611942290349, + -0.0256536013343869 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.50241573197564 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18662787159252786, + -0.2766890319958808, + -0.02734281973454443 + ], + "position_mm": [ + 186.62787159252787, + -276.6890319958808, + -27.34281973454443 + ], + "normal": [ + 0.012585766228811099, + -0.028333449317714865, + 0.9995192915287799 + ], + "corners_m": [ + [ + 0.1753671320447133, + -0.288995421694709, + -0.027309792223377958 + ], + [ + 0.17418721049380537, + -0.2654201686758861, + -0.027112319548856373 + ], + [ + 0.19765514202992807, + -0.2648069552236767, + -0.026890749399269886 + ], + [ + 0.1993020018016647, + -0.2875335823892515, + -0.028058417766673505 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.47246105157987 + }, + { + "marker_id": 97, + "link": "Board", + "position_m": [ + 0.30659126058462804, + -0.35823125702289793, + -0.027137100462690647 + ], + "position_mm": [ + 306.59126058462806, + -358.2312570228979, + -27.137100462690647 + ], + "normal": [ + 0.010344817335847445, + 0.006407217059227755, + 0.9999259634212144 + ], + "corners_m": [ + [ + 0.2946161460311364, + -0.36999459282310276, + -0.026654228832496046 + ], + [ + 0.294822884320035, + -0.3461892075844944, + -0.027376882527948815 + ], + [ + 0.3185381562342678, + -0.3468183366049846, + -0.027040741795292193 + ], + [ + 0.3183878557530731, + -0.36992289107900994, + -0.027476548695025523 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.60960873094876 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10461609105413698, + -0.19027315402515968, + -0.02747852410050511 + ], + "position_mm": [ + 104.61609105413699, + -190.27315402515967, + -27.47852410050511 + ], + "normal": [ + -0.007380171829701508, + -0.002044070569189094, + 0.9999706769897166 + ], + "corners_m": [ + [ + 0.09271873022263781, + -0.20215114794623837, + -0.02767951757378689 + ], + [ + 0.09285815803818773, + -0.17865494761438697, + -0.027450344762786443 + ], + [ + 0.1162112910337865, + -0.1783407056273634, + -0.027459325813700954 + ], + [ + 0.11667618492193592, + -0.20194581491264993, + -0.02732490825174614 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.606002166448313 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.3102320120789401, + -0.15593928612479824, + 0.15715235599377758 + ], + "position_mm": [ + 310.2320120789401, + -155.93928612479823, + 157.15235599377758 + ], + "normal": [ + -0.3459908388929435, + -0.7412094634439383, + 0.5752380991409612 + ], + "corners_m": [ + [ + 0.29870282953940674, + -0.14533786580626035, + 0.16389984176685646 + ], + [ + 0.3212270053042989, + -0.15156934780736359, + 0.169374481504491 + ], + [ + 0.3217616583680249, + -0.16653527459378167, + 0.1504557691767296 + ], + [ + 0.29923655510402963, + -0.16031465629178734, + 0.1448793315270333 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.092722046233263 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.021642164055880514, + -0.02023826892265601, + 0.0013070241166495888 + ], + "position_mm": [ + 21.642164055880514, + -20.23826892265601, + 1.3070241166495888 + ], + "normal": [ + -0.009284653574042494, + 0.0014995144525253856, + 0.9999557723541661 + ], + "corners_m": [ + [ + 0.009335919966450211, + -0.008711945790140417, + 0.0010274847229086827 + ], + [ + 0.033332910712178004, + -0.008707537012116393, + 0.0015482930595048612 + ], + [ + 0.03395640243142147, + -0.03160859173123583, + 0.0012885191413449938 + ], + [ + 0.009943423113472384, + -0.0319250011571314, + 0.0013637995428398167 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.53806898666323 + }, + { + "marker_id": 211, + "link": "Board", + "position_m": [ + 0.2536042045561814, + -0.00775304330405505, + -0.0003769201125621369 + ], + "position_mm": [ + 253.60420455618137, + -7.7530433040550495, + -0.3769201125621369 + ], + "normal": [ + -0.0019322937496649914, + 0.010950142943232504, + 0.9999381783942385 + ], + "corners_m": [ + [ + 0.2425165444331028, + 0.005150363681991551, + -0.0007087172236113211 + ], + [ + 0.26586538369087676, + 0.003204315453335779, + -0.000301586926502039 + ], + [ + 0.26510137996226574, + -0.02050783258615808, + -0.00038101941838998045 + ], + [ + 0.24093351013848013, + -0.018859019765389447, + -0.00011635688174520689 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.863054834779305 + }, + { + "marker_id": 214, + "link": "Board", + "position_m": [ + 0.3478139662502992, + -0.011689059499792712, + 0.0011942742591823064 + ], + "position_mm": [ + 347.8139662502992, + -11.689059499792712, + 1.1942742591823063 + ], + "normal": [ + 0.017934506898424955, + -0.04241325340326119, + 0.9989391720210301 + ], + "corners_m": [ + [ + 0.33620163616912896, + -0.0002794545980037367, + 0.0018627240956748407 + ], + [ + 0.35953174307687874, + -0.000865515740947479, + 0.0014683968248258633 + ], + [ + 0.3598937712787591, + -0.02288182696623332, + 0.0004781755623421224 + ], + [ + 0.33562871447643, + -0.022729440693986313, + 0.0009678005538863992 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.031983483548874 + }, + { + "marker_id": 231, + "link": "Ellbow", + "position_m": [ + 0.3181279544734382, + -0.018690105434870683, + 0.3157597350010689 + ], + "position_mm": [ + 318.12795447343825, + -18.690105434870684, + 315.7597350010689 + ], + "normal": [ + 0.02862980531096407, + -0.0711073197318074, + 0.997057713138219 + ], + "corners_m": [ + [ + 0.3058463554372685, + -0.007306802398638204, + 0.317159271979887 + ], + [ + 0.32981054958999045, + -0.006400015833296374, + 0.3160653722314684 + ], + [ + 0.33042400516398, + -0.03008935587610088, + 0.31482907138786814 + ], + [ + 0.3064309077025141, + -0.03096424763144727, + 0.3149852244050522 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.8774150117515 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.22996125805192022, + -0.03893286506913587, + 0.3077269837200802 + ], + "position_mm": [ + 229.96125805192023, + -38.932865069135865, + 307.7269837200802 + ], + "normal": [ + 0.002597895189049624, + -0.5030367048397467, + 0.8642611437086342 + ], + "corners_m": [ + [ + 0.2182119081449666, + -0.02857304238788339, + 0.31382760690558564 + ], + [ + 0.2418132538585825, + -0.028754108511958653, + 0.3135807730436776 + ], + [ + 0.24176513620003498, + -0.04943946515549101, + 0.30161110461605023 + ], + [ + 0.2180547340040968, + -0.048964844221210425, + 0.3018884503150075 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.71234989045886 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3198596104919199, + -0.04730570143615199, + 0.2990533041978032 + ], + "position_mm": [ + 319.8596104919199, + -47.305701436151985, + 299.0533041978032 + ], + "normal": [ + -0.02494560387104336, + -0.7660610594669643, + 0.6422835588864634 + ], + "corners_m": [ + [ + 0.30762635569831964, + -0.03993761916419085, + 0.30758870469980504 + ], + [ + 0.3315026826796229, + -0.040098735939145244, + 0.307894635604382 + ], + [ + 0.3322855415993028, + -0.0554302785301426, + 0.2900491931662096 + ], + [ + 0.3080238619904342, + -0.05375617211112927, + 0.290680683320816 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.396619252147772 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.28166461385407976, + -0.04341699463857078, + 0.30361592930090225 + ], + "position_mm": [ + 281.66461385407973, + -43.41699463857078, + 303.6159293009023 + ], + "normal": [ + 0.0014284605744001213, + -0.7717417372839098, + 0.6359344702360458 + ], + "corners_m": [ + [ + 0.26931317729415166, + -0.0360672058919154, + 0.3125487246429094 + ], + [ + 0.29323078953070275, + -0.03551305380906079, + 0.3131960732818794 + ], + [ + 0.29408434965970326, + -0.05078938034115043, + 0.2946270577125472 + ], + [ + 0.2700301389317614, + -0.05129833851215649, + 0.2940918615662731 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.99986017791459 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/aruco_positions_initial.json b/data/camera_study/Scene10/k3_acf/aruco_positions_initial.json new file mode 100644 index 0000000..b63b17f --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/aruco_positions_initial.json @@ -0,0 +1,448 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:18:03Z", + "summary": { + "num_cameras": 3, + "num_markers": 20, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.306241663576913, + -0.19937035731930264, + 0.02304326735140665 + ], + "position_mm": [ + 306.241663576913, + -199.37035731930263, + 23.043267351406648 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3437251241398752, + -0.2880518570653535, + -0.027336175680837974 + ], + "position_mm": [ + 343.7251241398752, + -288.05185706535354, + -27.336175680837975 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.1681080245114533, + -0.17338209734396196, + -0.027665654811361316 + ], + "position_mm": [ + 168.1080245114533, + -173.38209734396196, + -27.665654811361318 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3399007685346788, + -0.32741013108724015, + -0.02754239461514119 + ], + "position_mm": [ + 339.90076853467883, + -327.41013108724013, + -27.542394615141188 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.284542628458916, + -0.2609142429326301, + -0.027523444076098025 + ], + "position_mm": [ + 284.542628458916, + -260.9142429326301, + -27.523444076098023 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.04730748420954963, + -0.21643106768910866, + -0.02731427763285767 + ], + "position_mm": [ + 47.30748420954963, + -216.43106768910866, + -27.31427763285767 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.40224108783950074, + -0.17317266047438684, + -0.027915283076296118 + ], + "position_mm": [ + 402.2410878395007, + -173.17266047438684, + -27.915283076296117 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.0193340456258843, + -0.18908183378146987, + -0.0269886851594388 + ], + "position_mm": [ + -19.3340456258843, + -189.08183378146987, + -26.988685159438802 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027390253334127496, + 0.19253937360267048, + -0.025965078296917538 + ], + "position_mm": [ + -27.390253334127497, + 192.53937360267048, + -25.96507829691754 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18662820880639008, + -0.2766962770611542, + -0.027457045100409562 + ], + "position_mm": [ + 186.6282088063901, + -276.6962770611542, + -27.457045100409562 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.30660433344953525, + -0.35825402004545726, + -0.027246402971970632 + ], + "position_mm": [ + 306.60433344953526, + -358.25402004545725, + -27.24640297197063 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.104643992349152, + -0.19049889834733683, + -0.02767913014219985 + ], + "position_mm": [ + 104.643992349152, + -190.49889834733682, + -27.67913014219985 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3104023247371725, + -0.156306068910436, + 0.15701631582941594 + ], + "position_mm": [ + 310.4023247371725, + -156.306068910436, + 157.01631582941593 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021879164348029265, + -0.020554696828167546, + 0.0014186542106848566 + ], + "position_mm": [ + 21.879164348029263, + -20.554696828167547, + 1.4186542106848565 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25361090822258076, + -0.007747055778998949, + -0.000449096464148541 + ], + "position_mm": [ + 253.61090822258075, + -7.7470557789989485, + -0.449096464148541 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.34782586912632224, + -0.011675676699665745, + 0.0011163084924605883 + ], + "position_mm": [ + 347.82586912632223, + -11.675676699665745, + 1.1163084924605882 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.31814418950007245, + -0.018667115816921015, + 0.31569076123152473 + ], + "position_mm": [ + 318.14418950007246, + -18.667115816921015, + 315.69076123152473 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23007529276737815, + -0.039070066670461895, + 0.30766836125299685 + ], + "position_mm": [ + 230.07529276737816, + -39.0700666704619, + 307.6683612529969 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32003366451689874, + -0.047550984998695776, + 0.29904813179015116 + ], + "position_mm": [ + 320.03366451689874, + -47.550984998695775, + 299.04813179015116 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2817741877107397, + -0.04353822356404724, + 0.30355372204569236 + ], + "position_mm": [ + 281.7741877107397, + -43.53822356404724, + 303.5537220456924 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/aruco_positions_optimized.json b/data/camera_study/Scene10/k3_acf/aruco_positions_optimized.json new file mode 100644 index 0000000..7e3e8f9 --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/aruco_positions_optimized.json @@ -0,0 +1,447 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:18:10Z", + "summary": { + "num_cameras": 3, + "num_markers": 20, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3062707269039945, + -0.19935053182505405, + 0.023079942213461838 + ], + "position_mm": [ + 306.2707269039945, + -199.35053182505405, + 23.079942213461837 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.34525853790174615, + -0.2847937859378608, + -0.030951722535377486 + ], + "position_mm": [ + 345.25853790174614, + -284.79378593786083, + -30.951722535377485 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16728164831981052, + -0.17412898201942467, + -0.02701832100103687 + ], + "position_mm": [ + 167.28164831981053, + -174.12898201942468, + -27.01832100103687 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3401576655728308, + -0.3283934504440886, + -0.026794058647620727 + ], + "position_mm": [ + 340.1576655728308, + -328.39345044408856, + -26.794058647620727 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2848839025770083, + -0.2606880355788522, + -0.027892292626314232 + ], + "position_mm": [ + 284.8839025770083, + -260.6880355788522, + -27.892292626314234 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.049113302495264105, + -0.2191106437837877, + -0.025268080253255065 + ], + "position_mm": [ + 49.11330249526411, + -219.1106437837877, + -25.268080253255064 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.40241347303770497, + -0.17320426077453815, + -0.027917309758311422 + ], + "position_mm": [ + 402.413473037705, + -173.20426077453814, + -27.917309758311422 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.021174802072254972, + -0.18694794825910147, + -0.028461823336060423 + ], + "position_mm": [ + -21.174802072254973, + -186.94794825910145, + -28.461823336060423 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027514694665459444, + 0.19263838753626136, + -0.025876684850787535 + ], + "position_mm": [ + -27.514694665459444, + 192.63838753626138, + -25.876684850787534 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18672227090310972, + -0.2758907107917113, + -0.02814736291905968 + ], + "position_mm": [ + 186.72227090310972, + -275.8907107917113, + -28.14736291905968 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.3043652749805057, + -0.35996337470755757, + -0.02438335109716952 + ], + "position_mm": [ + 304.3652749805057, + -359.9633747075576, + -24.38335109716952 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10517685257313943, + -0.18966684680868884, + -0.028040644581735493 + ], + "position_mm": [ + 105.17685257313943, + -189.66684680868883, + -28.040644581735492 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31160015944292196, + -0.15479176571747108, + 0.15626364777328286 + ], + "position_mm": [ + 311.60015944292195, + -154.7917657174711, + 156.26364777328286 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.02158222592219386, + -0.01937445536862416, + 0.0008171948871917406 + ], + "position_mm": [ + 21.58222592219386, + -19.37445536862416, + 0.8171948871917406 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.2536281947150334, + -0.0077353364840352995, + -0.00042679578516101286 + ], + "position_mm": [ + 253.6281947150334, + -7.735336484035299, + -0.42679578516101285 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.3478079101759436, + -0.011649294441938034, + 0.0011185463631570808 + ], + "position_mm": [ + 347.8079101759436, + -11.649294441938034, + 1.118546363157081 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.3180647470286128, + -0.020760422150703704, + 0.3130125686741599 + ], + "position_mm": [ + 318.0647470286128, + -20.760422150703704, + 313.01256867415987 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23039115927679446, + -0.03858957128088691, + 0.3074353613661691 + ], + "position_mm": [ + 230.39115927679447, + -38.58957128088691, + 307.4353613661691 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32060266134081405, + -0.04335807733700735, + 0.29885123737538366 + ], + "position_mm": [ + 320.60266134081405, + -43.358077337007344, + 298.8512373753837 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2833381909007685, + -0.04262269168297554, + 0.30298355887453454 + ], + "position_mm": [ + 283.3381909007685, + -42.62269168297554, + 302.98355887453454 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/render_a_aruco_detection.json b/data/camera_study/Scene10/k3_acf/render_a_aruco_detection.json new file mode 100644 index 0000000..e5640ae --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/render_a_aruco_detection.json @@ -0,0 +1,2330 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:00Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "a", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.npz", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.png", + "image_sha256": "3fda1f21fe402f6ca45be61726fe8bc4ff11185ad27638be512a8f4f598b0fe5", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 26, + "num_rejected_candidates": 35 + }, + "detections": [ + { + "observation_id": "f3d5ce78-925c-4118-b0d7-742dddacbbac", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 547.0 + ], + [ + 939.0, + 530.0 + ], + [ + 956.0, + 571.0 + ], + [ + 917.0, + 588.0 + ] + ], + "center_px": [ + 928.0, + 559.0 + ], + "quality": { + "area_px": 1888.0, + "perimeter_px": 173.85755157470703, + "sharpness": { + "laplacian_var": 865.6237972020846 + }, + "contrast": { + "p05": 50.0, + "p95": 187.0, + "dynamic_range": 137.0, + "mean_gray": 87.40342679127725, + "std_gray": 54.46998248000789 + }, + "geometry": { + "distance_to_center_norm": 0.23207330703735352, + "distance_to_border_px": 484.0 + }, + "edge_ratio": 1.0432630581405598, + "edge_lengths_px": [ + 42.54409408569336, + 44.384681701660156, + 42.54409408569336, + 44.384681701660156 + ] + }, + "confidence": 0.9585310168868925 + }, + { + "observation_id": "dd937aff-2ead-45a0-b973-09ffd11c95bc", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 739.0, + 242.0 + ], + [ + 774.0, + 228.0 + ], + [ + 792.0, + 270.0 + ], + [ + 757.0, + 283.0 + ] + ], + "center_px": [ + 765.5, + 255.75 + ], + "quality": { + "area_px": 1695.5, + "perimeter_px": 165.50432586669922, + "sharpness": { + "laplacian_var": 972.5653279753307 + }, + "contrast": { + "p05": 17.0, + "p95": 182.0, + "dynamic_range": 165.0, + "mean_gray": 106.18205574912892, + "std_gray": 70.67095657404792 + }, + "geometry": { + "distance_to_center_norm": 0.3198539614677429, + "distance_to_border_px": 228.0 + }, + "edge_ratio": 1.2238659987255158, + "edge_lengths_px": [ + 37.6961555480957, + 45.694637298583984, + 37.336307525634766, + 44.777225494384766 + ] + }, + "confidence": 0.8170829167910206 + }, + { + "observation_id": "7556cdf1-e00b-4f2a-af2f-388a4e1862ae", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 651.0, + 261.0 + ], + [ + 689.0, + 249.0 + ], + [ + 712.0, + 285.0 + ], + [ + 674.0, + 297.0 + ] + ], + "center_px": [ + 681.5, + 273.0 + ], + "quality": { + "area_px": 1644.0, + "perimeter_px": 165.13947296142578, + "sharpness": { + "laplacian_var": 747.6962819576332 + }, + "contrast": { + "p05": 13.0, + "p95": 180.0, + "dynamic_range": 167.0, + "mean_gray": 76.63693693693693, + "std_gray": 72.66327799511954 + }, + "geometry": { + "distance_to_center_norm": 0.2997349798679352, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.072028219579559, + "edge_lengths_px": [ + 39.84971618652344, + 42.72002029418945, + 39.84971618652344, + 42.72002029418945 + ] + }, + "confidence": 0.9328112653528767 + }, + { + "observation_id": "0ac149e7-baef-47fc-9fe3-84fab571ef57", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 880.0, + 1056.0 + ], + [ + 849.0, + 1028.0 + ], + [ + 883.0, + 1007.0 + ], + [ + 913.0, + 1034.0 + ] + ], + "center_px": [ + 881.25, + 1031.25 + ], + "quality": { + "area_px": 1577.0, + "perimeter_px": 161.7576141357422, + "sharpness": { + "laplacian_var": 779.7184102009837 + }, + "contrast": { + "p05": 14.0, + "p95": 173.0, + "dynamic_range": 159.0, + "mean_gray": 81.89795918367346, + "std_gray": 69.37586032500836 + }, + "geometry": { + "distance_to_center_norm": 0.574486494064331, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.053254572752866, + "edge_lengths_px": [ + 41.773197174072266, + 39.96248245239258, + 40.360870361328125, + 39.66106414794922 + ] + }, + "confidence": 0.45573027871641286 + }, + { + "observation_id": "37c6d259-e536-4f73-b9b2-ff19cd7bc4bc", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1154.0, + 1048.0 + ], + [ + 1121.0, + 1020.0 + ], + [ + 1153.0, + 1000.0 + ], + [ + 1185.0, + 1028.0 + ] + ], + "center_px": [ + 1153.25, + 1024.0 + ], + "quality": { + "area_px": 1532.0, + "perimeter_px": 160.4264144897461, + "sharpness": { + "laplacian_var": 789.6627377718634 + }, + "contrast": { + "p05": 9.0, + "p95": 170.0, + "dynamic_range": 161.0, + "mean_gray": 94.95602294455067, + "std_gray": 70.53110441036318 + }, + "geometry": { + "distance_to_center_norm": 0.7217618823051453, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.173112932994049, + "edge_lengths_px": [ + 43.27817153930664, + 37.735923767089844, + 42.52058410644531, + 36.8917350769043 + ] + }, + "confidence": 0.5455570235395628 + }, + { + "observation_id": "0b914548-ce08-4e21-b6d6-fdcd329b60c4", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 800.0, + 233.0 + ], + [ + 834.0, + 221.0 + ], + [ + 852.0, + 261.0 + ], + [ + 816.0, + 271.0 + ] + ], + "center_px": [ + 825.5, + 246.5 + ], + "quality": { + "area_px": 1552.0, + "perimeter_px": 158.51307678222656, + "sharpness": { + "laplacian_var": 863.8906785031452 + }, + "contrast": { + "p05": 15.0, + "p95": 181.0, + "dynamic_range": 166.0, + "mean_gray": 73.38709677419355, + "std_gray": 69.59383427424181 + }, + "geometry": { + "distance_to_center_norm": 0.34653934836387634, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.2165525994378175, + "edge_lengths_px": [ + 36.055511474609375, + 43.863426208496094, + 37.36308288574219, + 41.231056213378906 + ] + }, + "confidence": 0.8219948734334308 + }, + { + "observation_id": "368f84e8-a1bf-4e56-89ec-f58a9ba26d84", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 656.0, + 1024.0 + ], + [ + 631.0, + 996.0 + ], + [ + 666.0, + 976.0 + ], + [ + 692.0, + 1003.0 + ] + ], + "center_px": [ + 661.25, + 999.75 + ], + "quality": { + "area_px": 1499.0, + "perimeter_px": 157.00859832763672, + "sharpness": { + "laplacian_var": 776.3919478120264 + }, + "contrast": { + "p05": 15.0, + "p95": 173.0, + "dynamic_range": 158.0, + "mean_gray": 113.47134387351778, + "std_gray": 66.47315254195442 + }, + "geometry": { + "distance_to_center_norm": 0.5149872303009033, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1118898476800905, + "edge_lengths_px": [ + 37.53664779663086, + 40.31128692626953, + 37.48332977294922, + 41.67733383178711 + ] + }, + "confidence": 0.8987700853806685 + }, + { + "observation_id": "3a04e689-f96f-46d0-b961-a7ca4e01536e", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1156.0, + 984.0 + ], + [ + 1124.0, + 957.0 + ], + [ + 1153.0, + 939.0 + ], + [ + 1186.0, + 964.0 + ] + ], + "center_px": [ + 1154.75, + 961.0 + ], + "quality": { + "area_px": 1384.5, + "perimeter_px": 153.4569320678711, + "sharpness": { + "laplacian_var": 641.3717713382066 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 48.07235421166307, + "std_gray": 59.88033560428563 + }, + "geometry": { + "distance_to_center_norm": 0.6724274754524231, + "distance_to_border_px": 96.0 + }, + "edge_ratio": 1.2266707527132645, + "edge_lengths_px": [ + 41.86884307861328, + 34.13209533691406, + 41.400482177734375, + 36.055511474609375 + ] + }, + "confidence": 0.7524431457735686 + }, + { + "observation_id": "69221731-a651-48e9-935e-c1a706f0cd5f", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 995.0, + 954.0 + ], + [ + 967.0, + 928.0 + ], + [ + 1000.0, + 911.0 + ], + [ + 1028.0, + 936.0 + ] + ], + "center_px": [ + 997.5, + 932.25 + ], + "quality": { + "area_px": 1331.5, + "perimeter_px": 150.4579086303711, + "sharpness": { + "laplacian_var": 806.253992719468 + }, + "contrast": { + "p05": 12.0, + "p95": 170.0, + "dynamic_range": 158.0, + "mean_gray": 85.1743119266055, + "std_gray": 67.17068414131862 + }, + "geometry": { + "distance_to_center_norm": 0.5338727831840515, + "distance_to_border_px": 126.0 + }, + "edge_ratio": 1.0293233343863084, + "edge_lengths_px": [ + 38.20994567871094, + 37.121421813964844, + 37.53664779663086, + 37.58989334106445 + ] + }, + "confidence": 0.8623788434718633 + }, + { + "observation_id": "fc4b2943-423b-4b64-9a70-b6726d6288d8", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 731.0, + 951.0 + ], + [ + 707.0, + 925.0 + ], + [ + 742.0, + 908.0 + ], + [ + 766.0, + 933.0 + ] + ], + "center_px": [ + 736.5, + 929.25 + ], + "quality": { + "area_px": 1312.5, + "perimeter_px": 148.30654907226562, + "sharpness": { + "laplacian_var": 893.1018320987654 + }, + "contrast": { + "p05": 14.0, + "p95": 172.0, + "dynamic_range": 158.0, + "mean_gray": 77.58333333333333, + "std_gray": 66.11167950269201 + }, + "geometry": { + "distance_to_center_norm": 0.432888388633728, + "distance_to_border_px": 129.0 + }, + "edge_ratio": 1.135675442614228, + "edge_lengths_px": [ + 35.38361358642578, + 38.910152435302734, + 34.65544509887695, + 39.357337951660156 + ] + }, + "confidence": 0.7704666026640716 + }, + { + "observation_id": "6947743f-dc37-4621-933e-8bb314ebc122", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1109.0, + 937.0 + ], + [ + 1078.0, + 911.0 + ], + [ + 1108.0, + 894.0 + ], + [ + 1138.0, + 918.0 + ] + ], + "center_px": [ + 1108.25, + 915.0 + ], + "quality": { + "area_px": 1286.5, + "perimeter_px": 148.03035736083984, + "sharpness": { + "laplacian_var": 849.6744027531824 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 73.16531791907515, + "std_gray": 67.17306919368005 + }, + "geometry": { + "distance_to_center_norm": 0.5997561812400818, + "distance_to_border_px": 143.0 + }, + "edge_ratio": 1.1733657712426009, + "edge_lengths_px": [ + 40.45985794067383, + 34.48188018798828, + 38.41874694824219, + 34.66987228393555 + ] + }, + "confidence": 0.7309457014059588 + }, + { + "observation_id": "81b0dfa3-7864-4ecf-b619-a65e04d2e6e9", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 843.0 + ], + [ + 378.0, + 825.0 + ], + [ + 398.0, + 848.0 + ], + [ + 360.0, + 866.0 + ] + ], + "center_px": [ + 369.0, + 845.5 + ], + "quality": { + "area_px": 1234.0, + "perimeter_px": 145.0541877746582, + "sharpness": { + "laplacian_var": 1107.6063181860204 + }, + "contrast": { + "p05": 14.0, + "p95": 171.0, + "dynamic_range": 157.0, + "mean_gray": 78.54927884615384, + "std_gray": 65.48572197917484 + }, + "geometry": { + "distance_to_center_norm": 0.5170324444770813, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.3795367307347286, + "edge_lengths_px": [ + 42.04759216308594, + 30.479501724243164, + 42.04759216308594, + 30.479501724243164 + ] + }, + "confidence": 0.5963354569243849 + }, + { + "observation_id": "a3d92225-ae4d-4c8c-b4dc-324817b2a4b9", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 841.0 + ], + [ + 1306.0, + 818.0 + ], + [ + 1334.0, + 803.0 + ], + [ + 1364.0, + 826.0 + ] + ], + "center_px": [ + 1335.0, + 822.0 + ], + "quality": { + "area_px": 1094.0, + "perimeter_px": 139.1337547302246, + "sharpness": { + "laplacian_var": 703.797937840674 + }, + "contrast": { + "p05": 9.0, + "p95": 164.0, + "dynamic_range": 155.0, + "mean_gray": 113.10478654592497, + "std_gray": 58.52400257567041 + }, + "geometry": { + "distance_to_center_norm": 0.7517461776733398, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.1900645633213587, + "edge_lengths_px": [ + 37.80211639404297, + 31.764760971069336, + 37.80211639404297, + 31.764760971069336 + ] + }, + "confidence": 0.6128519038478318 + }, + { + "observation_id": "f40ee2c5-89a9-4fce-af76-f538e9028015", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 763.0, + 197.0 + ], + [ + 797.0, + 187.0 + ], + [ + 824.0, + 204.0 + ], + [ + 790.0, + 216.0 + ] + ], + "center_px": [ + 793.5, + 201.0 + ], + "quality": { + "area_px": 909.0, + "perimeter_px": 136.41686248779297, + "sharpness": { + "laplacian_var": 1069.7927531569794 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 91.46811819595645, + "std_gray": 62.54740157586658 + }, + "geometry": { + "distance_to_center_norm": 0.38541823625564575, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.130050277403289, + "edge_lengths_px": [ + 35.44009017944336, + 31.906112670898438, + 36.055511474609375, + 33.0151481628418 + ] + }, + "confidence": 0.5362593259058441 + }, + { + "observation_id": "76cbaddd-cd5f-46c1-a588-d0abe0c351d0", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 943.0, + 784.0 + ], + [ + 970.0, + 761.0 + ], + [ + 976.0, + 794.0 + ], + [ + 950.0, + 816.0 + ] + ], + "center_px": [ + 959.75, + 788.75 + ], + "quality": { + "area_px": 1007.5, + "perimeter_px": 135.82476806640625, + "sharpness": { + "laplacian_var": 990.0324116822271 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 69.03362573099415, + "std_gray": 62.62781348056947 + }, + "geometry": { + "distance_to_center_norm": 0.3838669955730438, + "distance_to_border_px": 264.0 + }, + "edge_ratio": 1.0827805673411812, + "edge_lengths_px": [ + 35.46829605102539, + 33.541019439697266, + 34.058773040771484, + 32.75667953491211 + ] + }, + "confidence": 0.6203165137290706 + }, + { + "observation_id": "69d507f0-ba4d-4455-8bcd-ba0533e13f54", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 736.0, + 748.0 + ], + [ + 769.0, + 734.0 + ], + [ + 791.0, + 755.0 + ], + [ + 758.0, + 770.0 + ] + ], + "center_px": [ + 763.5, + 751.75 + ], + "quality": { + "area_px": 1028.5, + "perimeter_px": 133.62254524230957, + "sharpness": { + "laplacian_var": 740.3312400344904 + }, + "contrast": { + "p05": 9.0, + "p95": 168.0, + "dynamic_range": 159.0, + "mean_gray": 80.6958981612447, + "std_gray": 67.7872078040809 + }, + "geometry": { + "distance_to_center_norm": 0.24019105732440948, + "distance_to_border_px": 310.0 + }, + "edge_ratio": 1.1918643121358203, + "edge_lengths_px": [ + 35.84689712524414, + 30.4138126373291, + 36.24913787841797, + 31.11269760131836 + ] + }, + "confidence": 0.5752892000247514 + }, + { + "observation_id": "9d3ec64a-a4f8-4eaa-944e-1d4ca6b08a0f", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1296.0, + 787.0 + ], + [ + 1266.0, + 766.0 + ], + [ + 1291.0, + 751.0 + ], + [ + 1321.0, + 771.0 + ] + ], + "center_px": [ + 1293.5, + 768.75 + ], + "quality": { + "area_px": 977.5, + "perimeter_px": 131.51158332824707, + "sharpness": { + "laplacian_var": 482.2934957475995 + }, + "contrast": { + "p05": 7.0, + "p95": 157.0, + "dynamic_range": 150.0, + "mean_gray": 38.02962962962963, + "std_gray": 51.115372876535595 + }, + "geometry": { + "distance_to_center_norm": 0.6860414743423462, + "distance_to_border_px": 119.0 + }, + "edge_ratio": 1.2560441794117048, + "edge_lengths_px": [ + 36.619667053222656, + 29.154760360717773, + 36.055511474609375, + 29.681644439697266 + ] + }, + "confidence": 0.5188246379772157 + }, + { + "observation_id": "9ec69173-18bf-4b97-bf02-961717ff0613", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 664.0, + 678.0 + ], + [ + 696.0, + 665.0 + ], + [ + 717.0, + 685.0 + ], + [ + 684.0, + 698.0 + ] + ], + "center_px": [ + 690.25, + 681.5 + ], + "quality": { + "area_px": 916.5, + "perimeter_px": 127.29240036010742, + "sharpness": { + "laplacian_var": 950.4938833487939 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 81.41071428571429, + "std_gray": 66.26803955921937 + }, + "geometry": { + "distance_to_center_norm": 0.1606595665216446, + "distance_to_border_px": 382.0 + }, + "edge_ratio": 1.25399363306104, + "edge_lengths_px": [ + 34.539833068847656, + 29.0, + 35.46829605102539, + 28.284271240234375 + ] + }, + "confidence": 0.4872433032283655 + }, + { + "observation_id": "a9da83ee-ab0c-4dc5-a09a-6af347390fcb", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 132.0, + 733.0 + ], + [ + 120.0, + 713.0 + ], + [ + 156.0, + 700.0 + ], + [ + 169.0, + 720.0 + ] + ], + "center_px": [ + 144.25, + 716.5 + ], + "quality": { + "area_px": 892.5, + "perimeter_px": 124.6701889038086, + "sharpness": { + "laplacian_var": 1275.08402176 + }, + "contrast": { + "p05": 10.200000000000003, + "p95": 164.0, + "dynamic_range": 153.8, + "mean_gray": 105.7888, + "std_gray": 57.0930485660032 + }, + "geometry": { + "distance_to_center_norm": 0.6691069006919861, + "distance_to_border_px": 120.0 + }, + "edge_ratio": 1.6814297415391983, + "edge_lengths_px": [ + 23.323806762695312, + 38.27531814575195, + 23.853721618652344, + 39.217342376708984 + ] + }, + "confidence": 0.3538655141518615 + }, + { + "observation_id": "37339460-ab70-4c24-b9b2-50788608b9aa", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 624.0 + ], + [ + 815.0, + 612.0 + ], + [ + 837.0, + 630.0 + ], + [ + 807.0, + 643.0 + ] + ], + "center_px": [ + 811.25, + 627.25 + ], + "quality": { + "area_px": 814.5, + "perimeter_px": 120.82522010803223, + "sharpness": { + "laplacian_var": 1125.3635571955213 + }, + "contrast": { + "p05": 8.0, + "p95": 149.0, + "dynamic_range": 141.0, + "mean_gray": 86.07050092764378, + "std_gray": 55.3312393682571 + }, + "geometry": { + "distance_to_center_norm": 0.14027805626392365, + "distance_to_border_px": 437.0 + }, + "edge_ratio": 1.1545204961681088, + "edge_lengths_px": [ + 31.38471031188965, + 28.42534065246582, + 32.69556427001953, + 28.319604873657227 + ] + }, + "confidence": 0.4703251278796996 + }, + { + "observation_id": "60c9933e-3138-4e62-9162-27f934e38d38", + "type": "aruco", + "marker_id": 74, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 344.0, + 702.0 + ], + [ + 330.0, + 683.0 + ], + [ + 364.0, + 671.0 + ], + [ + 379.0, + 689.0 + ] + ], + "center_px": [ + 354.25, + 686.25 + ], + "quality": { + "area_px": 819.5, + "perimeter_px": 120.42341613769531, + "sharpness": { + "laplacian_var": 1054.273602937478 + }, + "contrast": { + "p05": 7.0, + "p95": 158.0, + "dynamic_range": 151.0, + "mean_gray": 89.94680851063829, + "std_gray": 62.538561214266565 + }, + "geometry": { + "distance_to_center_norm": 0.4376735985279083, + "distance_to_border_px": 330.0 + }, + "edge_ratio": 1.593474715740479, + "edge_lengths_px": [ + 23.600847244262695, + 36.055511474609375, + 23.430749893188477, + 37.336307525634766 + ] + }, + "confidence": 0.3428566063437381 + }, + { + "observation_id": "4088b0a6-2a82-455a-b4ef-065ab4ee15d3", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1374.0, + 670.0 + ], + [ + 1347.0, + 651.0 + ], + [ + 1371.0, + 639.0 + ], + [ + 1398.0, + 658.0 + ] + ], + "center_px": [ + 1372.5, + 654.5 + ], + "quality": { + "area_px": 780.0, + "perimeter_px": 119.69592666625977, + "sharpness": { + "laplacian_var": 1109.98644924121 + }, + "contrast": { + "p05": 10.700000000000003, + "p95": 158.0, + "dynamic_range": 147.3, + "mean_gray": 106.3378640776699, + "std_gray": 52.12042090245902 + }, + "geometry": { + "distance_to_center_norm": 0.7360777258872986, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2304019519874827, + "edge_lengths_px": [ + 33.0151481628418, + 26.832815170288086, + 33.0151481628418, + 26.832815170288086 + ] + }, + "confidence": 0.35500593874581543 + }, + { + "observation_id": "920359ba-120e-4d8a-bf42-9b537717258d", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1196.0, + 524.0 + ], + [ + 1220.0, + 514.0 + ], + [ + 1244.0, + 530.0 + ], + [ + 1219.0, + 540.0 + ] + ], + "center_px": [ + 1219.75, + 527.0 + ], + "quality": { + "area_px": 627.0, + "perimeter_px": 109.78808403015137, + "sharpness": { + "laplacian_var": 963.0183950617284 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 73.82444444444444, + "std_gray": 53.419454032550746 + }, + "geometry": { + "distance_to_center_norm": 0.5554656386375427, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.109400382408729, + "edge_lengths_px": [ + 26.0, + 28.844409942626953, + 26.925823211669922, + 28.017850875854492 + ] + }, + "confidence": 0.3767801116964092 + }, + { + "observation_id": "ec362e55-af3b-467a-a890-8ecc7446ccd3", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1299.0, + 475.0 + ], + [ + 1322.0, + 465.0 + ], + [ + 1346.0, + 479.0 + ], + [ + 1325.0, + 490.0 + ] + ], + "center_px": [ + 1323.0, + 477.25 + ], + "quality": { + "area_px": 581.5, + "perimeter_px": 106.58796119689941, + "sharpness": { + "laplacian_var": 922.4211295765532 + }, + "contrast": { + "p05": 9.0, + "p95": 150.0, + "dynamic_range": 141.0, + "mean_gray": 80.53125, + "std_gray": 49.781966772569284 + }, + "geometry": { + "distance_to_center_norm": 0.673617959022522, + "distance_to_border_px": 94.0 + }, + "edge_ratio": 1.2661764925954944, + "edge_lengths_px": [ + 25.079872131347656, + 27.784887313842773, + 23.706539154052734, + 30.01666259765625 + ] + }, + "confidence": 0.3061711135325228 + }, + { + "observation_id": "fa643a9e-f3f2-4d69-ba46-2f725ce86074", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1117.0, + 472.0 + ], + [ + 1139.0, + 461.0 + ], + [ + 1163.0, + 476.0 + ], + [ + 1140.0, + 486.0 + ] + ], + "center_px": [ + 1139.75, + 473.75 + ], + "quality": { + "area_px": 573.0, + "perimeter_px": 104.90438652038574, + "sharpness": { + "laplacian_var": 1036.3509780861898 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 74.53349875930522, + "std_gray": 50.45210729924828 + }, + "geometry": { + "distance_to_center_norm": 0.47216224670410156, + "distance_to_border_px": 277.0 + }, + "edge_ratio": 1.1506375729114486, + "edge_lengths_px": [ + 24.59674835205078, + 28.301942825317383, + 25.079872131347656, + 26.925823211669922 + ] + }, + "confidence": 0.33198985414097737 + }, + { + "observation_id": "d6a756eb-0a8a-4ad6-b40d-d7dd1c8e9822", + "type": "aruco", + "marker_id": 184, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 821.0, + 486.0 + ], + [ + 814.0, + 487.0 + ], + [ + 798.0, + 448.0 + ], + [ + 805.0, + 445.0 + ] + ], + "center_px": [ + 809.5, + 466.5 + ], + "quality": { + "area_px": 312.0, + "perimeter_px": 100.85268115997314, + "sharpness": { + "laplacian_var": 2032.911884279329 + }, + "contrast": { + "p05": 22.0, + "p95": 133.5, + "dynamic_range": 111.5, + "mean_gray": 67.10426540284361, + "std_gray": 39.568029255350964 + }, + "geometry": { + "distance_to_center_norm": 0.12868039309978485, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 6.224146785942024, + "edge_lengths_px": [ + 7.071067810058594, + 42.154476165771484, + 7.6157732009887695, + 44.0113639831543 + ] + }, + "confidence": 0.03341823500528502 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 712.0, + 776.0 + ], + [ + 506.0, + 896.0 + ], + [ + 441.0, + 876.0 + ], + [ + 650.0, + 774.0 + ] + ], + "center_px": [ + 577.25, + 830.5 + ], + "area_px": 9331.0 + }, + { + "image_points_px": [ + [ + 1134.0, + 576.0 + ], + [ + 1028.0, + 633.0 + ], + [ + 1010.0, + 609.0 + ], + [ + 1092.0, + 566.0 + ] + ], + "center_px": [ + 1066.0, + 596.0 + ], + "area_px": 3098.0 + }, + { + "image_points_px": [ + [ + 949.0, + 628.0 + ], + [ + 974.0, + 624.0 + ], + [ + 1004.0, + 689.0 + ], + [ + 973.0, + 699.0 + ] + ], + "center_px": [ + 975.0, + 660.0 + ], + "area_px": 2093.0 + }, + { + "image_points_px": [ + [ + 919.0, + 792.0 + ], + [ + 944.0, + 814.0 + ], + [ + 912.0, + 829.0 + ], + [ + 888.0, + 806.0 + ] + ], + "center_px": [ + 915.75, + 810.25 + ], + "area_px": 1064.0 + }, + { + "image_points_px": [ + [ + 964.0, + 655.0 + ], + [ + 985.0, + 654.0 + ], + [ + 1002.0, + 682.0 + ], + [ + 976.0, + 691.0 + ] + ], + "center_px": [ + 981.75, + 670.5 + ], + "area_px": 824.5 + }, + { + "image_points_px": [ + [ + 1299.0, + 626.0 + ], + [ + 1321.0, + 614.0 + ], + [ + 1348.0, + 632.0 + ], + [ + 1326.0, + 644.0 + ] + ], + "center_px": [ + 1323.5, + 629.0 + ], + "area_px": 720.0 + }, + { + "image_points_px": [ + [ + 92.0, + 604.0 + ], + [ + 58.0, + 618.0 + ], + [ + 46.0, + 601.0 + ], + [ + 78.0, + 589.0 + ] + ], + "center_px": [ + 68.5, + 603.0 + ], + "area_px": 697.0 + }, + { + "image_points_px": [ + [ + 180.0, + 565.0 + ], + [ + 147.0, + 577.0 + ], + [ + 137.0, + 560.0 + ], + [ + 168.0, + 550.0 + ] + ], + "center_px": [ + 158.0, + 563.0 + ], + "area_px": 633.0 + }, + { + "image_points_px": [ + [ + 871.0, + 624.0 + ], + [ + 879.0, + 625.0 + ], + [ + 895.0, + 667.0 + ], + [ + 885.0, + 663.0 + ] + ], + "center_px": [ + 882.5, + 644.75 + ], + "area_px": 327.0 + }, + { + "image_points_px": [ + [ + 1217.0, + 427.0 + ], + [ + 1239.0, + 418.0 + ], + [ + 1261.0, + 431.0 + ], + [ + 1241.0, + 441.0 + ] + ], + "center_px": [ + 1239.5, + 429.25 + ], + "area_px": 502.0 + }, + { + "image_points_px": [ + [ + 385.0, + 633.0 + ], + [ + 402.0, + 652.0 + ], + [ + 378.0, + 660.0 + ], + [ + 362.0, + 643.0 + ] + ], + "center_px": [ + 381.75, + 647.0 + ], + "area_px": 571.5 + }, + { + "image_points_px": [ + [ + 717.0, + 471.0 + ], + [ + 742.0, + 462.0 + ], + [ + 760.0, + 475.0 + ], + [ + 736.0, + 485.0 + ] + ], + "center_px": [ + 738.75, + 473.25 + ], + "area_px": 506.5 + }, + { + "image_points_px": [ + [ + 488.0, + 732.0 + ], + [ + 459.0, + 747.0 + ], + [ + 447.0, + 740.0 + ], + [ + 480.0, + 724.0 + ] + ], + "center_px": [ + 468.5, + 735.75 + ], + "area_px": 387.5 + }, + { + "image_points_px": [ + [ + 751.0, + 438.0 + ], + [ + 776.0, + 430.0 + ], + [ + 792.0, + 443.0 + ], + [ + 768.0, + 452.0 + ] + ], + "center_px": [ + 771.75, + 440.75 + ], + "area_px": 471.0 + }, + { + "image_points_px": [ + [ + 984.0, + 384.0 + ], + [ + 1007.0, + 376.0 + ], + [ + 1024.0, + 388.0 + ], + [ + 1002.0, + 397.0 + ] + ], + "center_px": [ + 1004.25, + 386.25 + ], + "area_px": 430.0 + }, + { + "image_points_px": [ + [ + 1088.0, + 340.0 + ], + [ + 1108.0, + 333.0 + ], + [ + 1127.0, + 343.0 + ], + [ + 1106.0, + 351.0 + ] + ], + "center_px": [ + 1107.25, + 341.75 + ], + "area_px": 354.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 297.0 + ], + [ + 1071.0, + 290.0 + ], + [ + 1089.0, + 300.0 + ], + [ + 1070.0, + 308.0 + ] + ], + "center_px": [ + 1070.25, + 298.75 + ], + "area_px": 343.5 + }, + { + "image_points_px": [ + [ + 1145.0, + 312.0 + ], + [ + 1165.0, + 306.0 + ], + [ + 1182.0, + 316.0 + ], + [ + 1163.0, + 324.0 + ] + ], + "center_px": [ + 1163.75, + 314.5 + ], + "area_px": 337.0 + }, + { + "image_points_px": [ + [ + 1227.0, + 309.0 + ], + [ + 1246.0, + 302.0 + ], + [ + 1264.0, + 312.0 + ], + [ + 1247.0, + 320.0 + ] + ], + "center_px": [ + 1246.0, + 310.75 + ], + "area_px": 331.5 + }, + { + "image_points_px": [ + [ + 935.0, + 285.0 + ], + [ + 955.0, + 278.0 + ], + [ + 972.0, + 287.0 + ], + [ + 952.0, + 295.0 + ] + ], + "center_px": [ + 953.5, + 286.25 + ], + "area_px": 317.5 + }, + { + "image_points_px": [ + [ + 891.0, + 293.0 + ], + [ + 911.0, + 286.0 + ], + [ + 927.0, + 296.0 + ], + [ + 907.0, + 304.0 + ] + ], + "center_px": [ + 909.0, + 294.75 + ], + "area_px": 330.0 + }, + { + "image_points_px": [ + [ + 1018.0, + 751.0 + ], + [ + 1017.0, + 775.0 + ], + [ + 1013.0, + 785.0 + ], + [ + 1005.0, + 755.0 + ] + ], + "center_px": [ + 1013.25, + 766.5 + ], + "area_px": 254.0 + }, + { + "image_points_px": [ + [ + 278.0, + 1016.0 + ], + [ + 276.0, + 1020.0 + ], + [ + 247.0, + 1035.0 + ], + [ + 268.0, + 1019.0 + ] + ], + "center_px": [ + 267.25, + 1022.5 + ], + "area_px": 91.5 + }, + { + "image_points_px": [ + [ + 1273.0, + 316.0 + ], + [ + 1258.0, + 325.0 + ], + [ + 1242.0, + 330.0 + ], + [ + 1245.0, + 326.0 + ] + ], + "center_px": [ + 1254.5, + 324.25 + ], + "area_px": 75.5 + }, + { + "image_points_px": [ + [ + 627.0, + 394.0 + ], + [ + 630.0, + 413.0 + ], + [ + 628.0, + 428.0 + ], + [ + 625.0, + 409.0 + ] + ], + "center_px": [ + 627.5, + 411.0 + ], + "area_px": 83.0 + }, + { + "image_points_px": [ + [ + 356.0, + 962.0 + ], + [ + 333.0, + 980.0 + ], + [ + 330.0, + 980.0 + ], + [ + 348.0, + 965.0 + ] + ], + "center_px": [ + 341.75, + 971.75 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 702.0, + 632.0 + ], + [ + 679.0, + 644.0 + ], + [ + 673.0, + 642.0 + ], + [ + 695.0, + 632.0 + ] + ], + "center_px": [ + 687.25, + 637.5 + ], + "area_px": 94.0 + }, + { + "image_points_px": [ + [ + 1001.0, + 496.0 + ], + [ + 997.0, + 501.0 + ], + [ + 977.0, + 510.0 + ], + [ + 973.0, + 509.0 + ] + ], + "center_px": [ + 987.0, + 504.0 + ], + "area_px": 72.0 + }, + { + "image_points_px": [ + [ + 921.0, + 598.0 + ], + [ + 901.0, + 617.0 + ], + [ + 902.0, + 613.0 + ], + [ + 915.0, + 599.0 + ] + ], + "center_px": [ + 909.75, + 606.75 + ], + "area_px": 66.0 + }, + { + "image_points_px": [ + [ + 68.0, + 1031.0 + ], + [ + 60.0, + 1038.0 + ], + [ + 45.0, + 1046.0 + ], + [ + 50.0, + 1041.0 + ] + ], + "center_px": [ + 55.75, + 1039.0 + ], + "area_px": 40.5 + }, + { + "image_points_px": [ + [ + 842.0, + 934.0 + ], + [ + 834.0, + 942.0 + ], + [ + 823.0, + 947.0 + ], + [ + 820.0, + 946.0 + ] + ], + "center_px": [ + 829.75, + 942.25 + ], + "area_px": 53.0 + }, + { + "image_points_px": [ + [ + 806.0, + 955.0 + ], + [ + 791.0, + 965.0 + ], + [ + 783.0, + 965.0 + ], + [ + 802.0, + 955.0 + ] + ], + "center_px": [ + 795.5, + 960.0 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 342.0, + 1004.0 + ], + [ + 320.0, + 1016.0 + ], + [ + 322.0, + 1012.0 + ], + [ + 330.0, + 1007.0 + ] + ], + "center_px": [ + 328.5, + 1009.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 1340.0, + 651.0 + ], + [ + 1334.0, + 656.0 + ], + [ + 1318.0, + 660.0 + ], + [ + 1329.0, + 652.0 + ] + ], + "center_px": [ + 1330.25, + 654.75 + ], + "area_px": 66.5 + }, + { + "image_points_px": [ + [ + 229.0, + 651.0 + ], + [ + 218.0, + 658.0 + ], + [ + 208.0, + 661.0 + ], + [ + 211.0, + 658.0 + ] + ], + "center_px": [ + 216.5, + 657.0 + ], + "area_px": 35.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/render_a_camera_pose.json b/data/camera_study/Scene10/k3_acf/render_a_camera_pose.json new file mode 100644 index 0000000..4201a1a --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/render_a_camera_pose.json @@ -0,0 +1,467 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:02Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_acf\\render_a_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "a", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 19, + "used_marker_ids": [ + 95, + 97, + 103, + 54, + 55, + 51, + 47, + 210, + 85, + 215, + 105, + 211, + 75, + 214, + 74, + 102, + 217, + 205, + 206 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.01009749778311845, + 0.0013500052634516154, + 0.0012080581027067798, + 0.001208056584232894 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.418903298149159, + "residual_median_px": 2.9058066287550095, + "residual_max_px": 7.881774161943574, + "sigma2_normalized": 1.7330383439497478e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8081126809120178, + -0.5890257358551025, + -0.0016104801325127482 + ], + [ + -0.3439487814903259, + -0.46965670585632324, + -0.8130939602851868 + ], + [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + ], + "translation_m": [ + -0.2276943325996399, + 0.17315705120563507, + 1.1353343725204468 + ], + "rvec_rad": [ + 2.1050851025918234, + -0.6867341612291594, + 0.3507860528401858 + ] + }, + "camera_in_world": { + "position_m": [ + -0.29933083057403564, + -0.7994182705879211, + 0.8013386726379395 + ], + "position_mm": [ + -299.3308410644531, + -799.4182739257812, + 801.3386840820312 + ], + "orientation_deg": { + "roll": 131.5152587890625, + "pitch": -28.5664005279541, + "yaw": -23.05556297302246 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.5705111713147538e-05, + -3.606186641991224e-06, + 9.93455859227922e-07, + 5.974998436558746e-07, + 4.6929081989455075e-07, + 2.8925877037560832e-06 + ], + [ + -3.606186641991253e-06, + 4.525067031199804e-06, + -1.5535915979518367e-06, + -4.146706877795486e-07, + -8.403171882148325e-07, + 3.704138848703875e-08 + ], + [ + 9.93455859228011e-07, + -1.5535915979518793e-06, + 1.4511663564702391e-05, + 8.397716382398054e-07, + -1.8034796850892003e-06, + -4.925606373863842e-06 + ], + [ + 5.974998436558832e-07, + -4.146706877795502e-07, + 8.397716382397962e-07, + 2.430616306834126e-07, + 1.4873676074531513e-08, + 1.58103612736764e-07 + ], + [ + 4.692908198945444e-07, + -8.403171882148285e-07, + -1.8034796850892121e-06, + 1.4873676074530825e-08, + 6.717933155003761e-07, + 1.166485422903723e-06 + ], + [ + 2.892587703756058e-06, + 3.704138848704778e-08, + -4.925606373863879e-06, + 1.5810361273676463e-07, + 1.166485422903725e-06, + 5.922812492193122e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.22706131431744284, + 0.12188075641483156, + 0.21826355925678265 + ], + "tvec_std_m": [ + 0.0004930128098573226, + 0.0008196299869455584, + 0.0024336829070758423 + ] + }, + "camera_center_std_m": [ + 0.0031789461102063005, + 0.004041324498858458, + 0.00434604702092401 + ], + "camera_center_std_mm": [ + 3.1789461102063004, + 4.041324498858458, + 4.3460470209240105 + ], + "orientation_std_deg": { + "roll": 0.2878030578767992, + "pitch": 0.1683177033483575, + "yaw": 0.1374718863525747 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 881.25, + 1031.25 + ], + "projected_center_px": [ + 877.61865234375, + 1028.5360107421875 + ], + "reprojection_error_px": 4.53347807892285, + "confidence": 0.45573027871641286 + }, + { + "marker_id": 97, + "observed_center_px": [ + 1153.25, + 1024.0 + ], + "projected_center_px": [ + 1152.7294921875, + 1027.8443603515625 + ], + "reprojection_error_px": 3.879437445756702, + "confidence": 0.5455570235395628 + }, + { + "marker_id": 103, + "observed_center_px": [ + 661.25, + 999.75 + ], + "projected_center_px": [ + 660.6806030273438, + 996.0768432617188 + ], + "reprojection_error_px": 3.7170274866418533, + "confidence": 0.8987700853806685 + }, + { + "marker_id": 54, + "observed_center_px": [ + 1154.75, + 961.0 + ], + "projected_center_px": [ + 1162.5029296875, + 962.4193115234375 + ], + "reprojection_error_px": 7.881774161943574, + "confidence": 0.7524431457735686 + }, + { + "marker_id": 55, + "observed_center_px": [ + 997.5, + 932.25 + ], + "projected_center_px": [ + 999.1104736328125, + 934.5891723632812 + ], + "reprojection_error_px": 2.8399564551455856, + "confidence": 0.8623788434718633 + }, + { + "marker_id": 51, + "observed_center_px": [ + 736.5, + 929.25 + ], + "projected_center_px": [ + 735.853271484375, + 928.2763061523438 + ], + "reprojection_error_px": 1.1689043938176247, + "confidence": 0.7704666026640716 + }, + { + "marker_id": 47, + "observed_center_px": [ + 1108.25, + 915.0 + ], + "projected_center_px": [ + 1107.45166015625, + 913.0933837890625 + ], + "reprojection_error_px": 2.0670103729610174, + "confidence": 0.7309457014059588 + }, + { + "marker_id": 210, + "observed_center_px": [ + 369.0, + 845.5 + ], + "projected_center_px": [ + 367.08258056640625, + 847.7832641601562 + ], + "reprojection_error_px": 2.98157550791138, + "confidence": 0.5963354569243849 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1335.0, + 822.0 + ], + "projected_center_px": [ + 1332.3167724609375, + 822.3063354492188 + ], + "reprojection_error_px": 2.7006575928524246, + "confidence": 0.6128519038478318 + }, + { + "marker_id": 215, + "observed_center_px": [ + 763.5, + 751.75 + ], + "projected_center_px": [ + 764.8435668945312, + 753.69775390625 + ], + "reprojection_error_px": 2.366203135699148, + "confidence": 0.5752892000247514 + }, + { + "marker_id": 105, + "observed_center_px": [ + 1293.5, + 768.75 + ], + "projected_center_px": [ + 1294.0775146484375, + 765.9021606445312 + ], + "reprojection_error_px": 2.9058066287550095, + "confidence": 0.5188246379772157 + }, + { + "marker_id": 211, + "observed_center_px": [ + 690.25, + 681.5 + ], + "projected_center_px": [ + 687.66943359375, + 684.4354248046875 + ], + "reprojection_error_px": 3.908457721536807, + "confidence": 0.4872433032283655 + }, + { + "marker_id": 75, + "observed_center_px": [ + 144.25, + 716.5 + ], + "projected_center_px": [ + 147.21554565429688, + 715.9539184570312 + ], + "reprojection_error_px": 3.01540479526219, + "confidence": 0.3538655141518615 + }, + { + "marker_id": 214, + "observed_center_px": [ + 811.25, + 627.25 + ], + "projected_center_px": [ + 813.1135864257812, + 626.0042114257812 + ], + "reprojection_error_px": 2.2416385832712016, + "confidence": 0.4703251278796996 + }, + { + "marker_id": 74, + "observed_center_px": [ + 354.25, + 686.25 + ], + "projected_center_px": [ + 353.1841125488281, + 685.2387084960938 + ], + "reprojection_error_px": 1.4692945805517152, + "confidence": 0.3428566063437381 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1372.5, + 654.5 + ], + "projected_center_px": [ + 1370.1954345703125, + 654.4063110351562 + ], + "reprojection_error_px": 2.306469042030312, + "confidence": 0.35500593874581543 + }, + { + "marker_id": 217, + "observed_center_px": [ + 1219.75, + 527.0 + ], + "projected_center_px": [ + 1223.6787109375, + 525.702392578125 + ], + "reprojection_error_px": 4.137457510565784, + "confidence": 0.3767801116964092 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1323.0, + 477.25 + ], + "projected_center_px": [ + 1319.5634765625, + 478.1280212402344 + ], + "reprojection_error_px": 3.5469162147969504, + "confidence": 0.3061711135325228 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1139.75, + 473.75 + ], + "projected_center_px": [ + 1139.77392578125, + 473.96392822265625 + ], + "reprojection_error_px": 0.2152619972435565, + "confidence": 0.33198985414097737 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/render_c_aruco_detection.json b/data/camera_study/Scene10/k3_acf/render_c_aruco_detection.json new file mode 100644 index 0000000..a979728 --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/render_c_aruco_detection.json @@ -0,0 +1,1590 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:01Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "c", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.npz", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.png", + "image_sha256": "ef5a04a35de56c777fd09b581d604f04ac76571a3cacba21fe8388dea1f4b077", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 16, + "num_rejected_candidates": 27 + }, + "detections": [ + { + "observation_id": "50c3d235-4fff-4d64-96b0-0e9ac2f9904d", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 906.0 + ], + [ + 962.0, + 900.0 + ], + [ + 968.0, + 961.0 + ], + [ + 906.0, + 967.0 + ] + ], + "center_px": [ + 934.0, + 933.5 + ], + "quality": { + "area_px": 3818.0, + "perimeter_px": 247.16803741455078, + "sharpness": { + "laplacian_var": 454.5613926289 + }, + "contrast": { + "p05": 15.0, + "p95": 169.0, + "dynamic_range": 154.0, + "mean_gray": 63.889708737864076, + "std_gray": 64.10002098444608 + }, + "geometry": { + "distance_to_center_norm": 0.4976962208747864, + "distance_to_border_px": 113.0 + }, + "edge_ratio": 1.0162376014068253, + "edge_lengths_px": [ + 62.28964614868164, + 61.29437255859375, + 62.28964614868164, + 61.29437255859375 + ] + }, + "confidence": 0.9840218454972077 + }, + { + "observation_id": "632bca85-2aca-4a19-83a6-aab5e1ebb0a6", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 930.0, + 548.0 + ], + [ + 989.0, + 541.0 + ], + [ + 989.0, + 599.0 + ], + [ + 930.0, + 606.0 + ] + ], + "center_px": [ + 959.5, + 573.5 + ], + "quality": { + "area_px": 3422.0, + "perimeter_px": 234.82760620117188, + "sharpness": { + "laplacian_var": 615.7225970995563 + }, + "contrast": { + "p05": 62.0, + "p95": 187.0, + "dynamic_range": 125.0, + "mean_gray": 96.38732088580113, + "std_gray": 49.78957244242085 + }, + "geometry": { + "distance_to_center_norm": 0.2687017321586609, + "distance_to_border_px": 451.0 + }, + "edge_ratio": 1.0243759155273438, + "edge_lengths_px": [ + 59.41380310058594, + 58.0, + 59.41380310058594, + 58.0 + ] + }, + "confidence": 0.976204130575644 + }, + { + "observation_id": "8fdb05e0-f5eb-4858-81ad-be376e0eed92", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 876.0, + 137.0 + ], + [ + 933.0, + 136.0 + ], + [ + 934.0, + 184.0 + ], + [ + 876.0, + 186.0 + ] + ], + "center_px": [ + 904.75, + 160.75 + ], + "quality": { + "area_px": 2789.5, + "perimeter_px": 212.05365753173828, + "sharpness": { + "laplacian_var": 1207.1695390581717 + }, + "contrast": { + "p05": 35.0, + "p95": 183.0, + "dynamic_range": 148.0, + "mean_gray": 111.8242105263158, + "std_gray": 63.973025920534376 + }, + "geometry": { + "distance_to_center_norm": 0.46872973442077637, + "distance_to_border_px": 136.0 + }, + "edge_ratio": 1.2087892695501747, + "edge_lengths_px": [ + 57.00876998901367, + 48.010414123535156, + 58.03447341918945, + 49.0 + ] + }, + "confidence": 0.8272740544529559 + }, + { + "observation_id": "6fe77033-f9da-4d46-84fa-14dae125f7dc", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 967.0, + 151.0 + ], + [ + 1024.0, + 150.0 + ], + [ + 1025.0, + 197.0 + ], + [ + 966.0, + 195.0 + ] + ], + "center_px": [ + 995.5, + 173.25 + ], + "quality": { + "area_px": 2639.0, + "perimeter_px": 207.06465911865234, + "sharpness": { + "laplacian_var": 866.93707361974 + }, + "contrast": { + "p05": 32.0, + "p95": 181.0, + "dynamic_range": 149.0, + "mean_gray": 84.58143413007227, + "std_gray": 62.405948444667175 + }, + "geometry": { + "distance_to_center_norm": 0.5096668004989624, + "distance_to_border_px": 150.0 + }, + "edge_ratio": 1.3413328837775513, + "edge_lengths_px": [ + 57.00876998901367, + 47.01063537597656, + 59.03388977050781, + 44.0113639831543 + ] + }, + "confidence": 0.745527088834006 + }, + { + "observation_id": "8d1d822a-9f5c-437b-9357-aff9931b81f6", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 806.0, + 242.0 + ], + [ + 809.0, + 286.0 + ], + [ + 756.0, + 287.0 + ], + [ + 750.0, + 243.0 + ] + ], + "center_px": [ + 780.25, + 264.5 + ], + "quality": { + "area_px": 2402.5, + "perimeter_px": 197.5277214050293, + "sharpness": { + "laplacian_var": 621.9365906774973 + }, + "contrast": { + "p05": 17.0, + "p95": 154.0, + "dynamic_range": 137.0, + "mean_gray": 67.55327102803739, + "std_gray": 57.80557538313361 + }, + "geometry": { + "distance_to_center_norm": 0.3133457899093628, + "distance_to_border_px": 242.0 + }, + "edge_ratio": 1.2699816583435075, + "edge_lengths_px": [ + 44.10215377807617, + 53.00943374633789, + 44.40720748901367, + 56.00892639160156 + ] + }, + "confidence": 0.7874129468171561 + }, + { + "observation_id": "00fb0394-bb3f-42fc-858b-d4418b3addff", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 907.0 + ], + [ + 1083.0, + 943.0 + ], + [ + 1048.0, + 989.0 + ], + [ + 1034.0, + 955.0 + ] + ], + "center_px": [ + 1059.0, + 948.5 + ], + "quality": { + "area_px": 1871.0, + "perimeter_px": 193.12355041503906, + "sharpness": { + "laplacian_var": 160.55753056192668 + }, + "contrast": { + "p05": 14.0, + "p95": 100.0, + "dynamic_range": 86.0, + "mean_gray": 57.872306464485234, + "std_gray": 34.11093550486432 + }, + "geometry": { + "distance_to_center_norm": 0.5898244976997375, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.648246307313746, + "edge_lengths_px": [ + 37.947330474853516, + 57.80138397216797, + 36.769554138183594, + 60.605281829833984 + ] + }, + "confidence": 0.606705439328279 + }, + { + "observation_id": "63b98197-c8d3-4ca1-8c57-d0c4adee56c4", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 244.0, + 1048.0 + ], + [ + 264.0, + 1017.0 + ], + [ + 321.0, + 1020.0 + ], + [ + 304.0, + 1051.0 + ] + ], + "center_px": [ + 283.25, + 1034.0 + ], + "quality": { + "area_px": 1869.0, + "perimeter_px": 189.40092086791992, + "sharpness": { + "laplacian_var": 1265.0345875985527 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 76.71025841816758, + "std_gray": 66.37082174674407 + }, + "geometry": { + "distance_to_center_norm": 0.7326483130455017, + "distance_to_border_px": 29.0 + }, + "edge_ratio": 1.6991763224534673, + "edge_lengths_px": [ + 36.8917350769043, + 57.07889175415039, + 35.35533905029297, + 60.074954986572266 + ] + }, + "confidence": 0.34134185624863755 + }, + { + "observation_id": "6b1b9892-badc-42b2-a77d-92ee96c0612b", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1145.0, + 1043.0 + ], + [ + 1138.0, + 1012.0 + ], + [ + 1196.0, + 1014.0 + ], + [ + 1207.0, + 1045.0 + ] + ], + "center_px": [ + 1171.5, + 1028.5 + ], + "quality": { + "area_px": 1842.0, + "perimeter_px": 184.74098777770996, + "sharpness": { + "laplacian_var": 687.4367780505567 + }, + "contrast": { + "p05": 12.0, + "p95": 150.0, + "dynamic_range": 138.0, + "mean_gray": 38.430939226519335, + "std_gray": 45.8298447545998 + }, + "geometry": { + "distance_to_center_norm": 0.7391056418418884, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.9518967949661667, + "edge_lengths_px": [ + 31.78049659729004, + 58.03447341918945, + 32.893768310546875, + 62.032249450683594 + ] + }, + "confidence": 0.3586255184214969 + }, + { + "observation_id": "7a06864d-7d6b-4320-95ad-366c5f76a468", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1069.0, + 1053.0 + ], + [ + 1066.0, + 1021.0 + ], + [ + 1125.0, + 1025.0 + ], + [ + 1130.0, + 1056.0 + ] + ], + "center_px": [ + 1097.5, + 1038.75 + ], + "quality": { + "area_px": 1876.0, + "perimeter_px": 183.7501163482666, + "sharpness": { + "laplacian_var": 663.3293461676229 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 73.64136328427576, + "std_gray": 59.64429126415427 + }, + "geometry": { + "distance_to_center_norm": 0.6950067281723022, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.9449837049520267, + "edge_lengths_px": [ + 32.140316009521484, + 59.13543701171875, + 31.400636672973633, + 61.073726654052734 + ] + }, + "confidence": 0.24678869996591526 + }, + { + "observation_id": "26ed4dab-241d-438a-99ae-df5d0d0f5371", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 110.0, + 1003.0 + ], + [ + 134.0, + 974.0 + ], + [ + 187.0, + 977.0 + ], + [ + 166.0, + 1006.0 + ] + ], + "center_px": [ + 149.25, + 990.0 + ], + "quality": { + "area_px": 1648.0, + "perimeter_px": 182.61322402954102, + "sharpness": { + "laplacian_var": 1879.918969718065 + }, + "contrast": { + "p05": 12.0, + "p95": 173.0, + "dynamic_range": 161.0, + "mean_gray": 75.38733031674208, + "std_gray": 68.98136821451206 + }, + "geometry": { + "distance_to_center_norm": 0.8075687885284424, + "distance_to_border_px": 74.0 + }, + "edge_ratio": 1.5662688751728226, + "edge_lengths_px": [ + 37.64305877685547, + 53.0848388671875, + 35.80502700805664, + 56.080299377441406 + ] + }, + "confidence": 0.6384599833726886 + }, + { + "observation_id": "667de41e-b80a-4107-8f9c-6d700c168a19", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 403.0, + 1023.0 + ], + [ + 418.0, + 993.0 + ], + [ + 474.0, + 996.0 + ], + [ + 462.0, + 1025.0 + ] + ], + "center_px": [ + 439.25, + 1009.25 + ], + "quality": { + "area_px": 1730.0, + "perimeter_px": 180.03991889953613, + "sharpness": { + "laplacian_var": 950.8899639839916 + }, + "contrast": { + "p05": 20.0, + "p95": 172.0, + "dynamic_range": 152.0, + "mean_gray": 116.20102214650767, + "std_gray": 61.636543611115094 + }, + "geometry": { + "distance_to_center_norm": 0.6075818538665771, + "distance_to_border_px": 55.0 + }, + "edge_ratio": 1.8809760926212427, + "edge_lengths_px": [ + 33.541019439697266, + 56.080299377441406, + 31.38471031188965, + 59.03388977050781 + ] + }, + "confidence": 0.5316388676723932 + }, + { + "observation_id": "90088f90-8f70-4452-88c6-8eb55376e26e", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 564.0, + 1008.0 + ], + [ + 576.0, + 980.0 + ], + [ + 632.0, + 984.0 + ], + [ + 622.0, + 1013.0 + ] + ], + "center_px": [ + 598.5, + 996.25 + ], + "quality": { + "area_px": 1674.0, + "perimeter_px": 175.49660873413086, + "sharpness": { + "laplacian_var": 1393.7942302804506 + }, + "contrast": { + "p05": 28.0, + "p95": 171.0, + "dynamic_range": 143.0, + "mean_gray": 84.15052816901408, + "std_gray": 59.917896140385736 + }, + "geometry": { + "distance_to_center_norm": 0.5246118903160095, + "distance_to_border_px": 67.0 + }, + "edge_ratio": 1.9110048603024625, + "edge_lengths_px": [ + 30.463092803955078, + 56.14267349243164, + 30.675724029541016, + 58.215118408203125 + ] + }, + "confidence": 0.5232849066860699 + }, + { + "observation_id": "e5b6f1c6-c3e1-4bd7-b712-4a8a6e29e802", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 760.0, + 132.0 + ], + [ + 813.0, + 133.0 + ], + [ + 809.0, + 166.0 + ], + [ + 754.0, + 165.0 + ] + ], + "center_px": [ + 784.0, + 149.0 + ], + "quality": { + "area_px": 1787.0, + "perimeter_px": 174.80108261108398, + "sharpness": { + "laplacian_var": 1005.8917346464419 + }, + "contrast": { + "p05": 15.0, + "p95": 180.0, + "dynamic_range": 165.0, + "mean_gray": 83.3435684647303, + "std_gray": 70.8540535076814 + }, + "geometry": { + "distance_to_center_norm": 0.4402258098125458, + "distance_to_border_px": 132.0 + }, + "edge_ratio": 1.6548298326729072, + "edge_lengths_px": [ + 53.00943374633789, + 33.241539001464844, + 55.009090423583984, + 33.541019439697266 + ] + }, + "confidence": 0.6042917406104434 + }, + { + "observation_id": "9f0c7c20-7bef-41d0-8292-1dfb8e3cec47", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 760.0 + ], + [ + 387.0, + 761.0 + ], + [ + 376.0, + 780.0 + ], + [ + 327.0, + 778.0 + ] + ], + "center_px": [ + 357.5, + 769.75 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 140.20953559875488, + "sharpness": { + "laplacian_var": 1714.673355751594 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 84.31152647975078, + "std_gray": 58.656873492799065 + }, + "geometry": { + "distance_to_center_norm": 0.47686126828193665, + "distance_to_border_px": 300.0 + }, + "edge_ratio": 2.233747159110654, + "edge_lengths_px": [ + 47.01063537597656, + 21.954498291015625, + 49.04079818725586, + 22.203603744506836 + ] + }, + "confidence": 0.27039765782644665 + }, + { + "observation_id": "df46923b-bb1a-46da-b3e8-9c56914d25e9", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 808.0, + 771.0 + ], + [ + 855.0, + 774.0 + ], + [ + 851.0, + 794.0 + ], + [ + 801.0, + 790.0 + ] + ], + "center_px": [ + 828.75, + 782.25 + ], + "quality": { + "area_px": 965.0, + "perimeter_px": 137.8999252319336, + "sharpness": { + "laplacian_var": 980.8435808712625 + }, + "contrast": { + "p05": 19.0, + "p95": 166.0, + "dynamic_range": 147.0, + "mean_gray": 88.28657616892912, + "std_gray": 59.05852033640571 + }, + "geometry": { + "distance_to_center_norm": 0.2950447201728821, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 2.4772131710716905, + "edge_lengths_px": [ + 47.095645904541016, + 20.39607810974121, + 50.15974426269531, + 20.248456954956055 + ] + }, + "confidence": 0.25970043306972035 + }, + { + "observation_id": "c694c920-49ad-4e80-afb6-5b71d3b649ff", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1385.0, + 700.0 + ], + [ + 1377.0, + 686.0 + ], + [ + 1418.0, + 688.0 + ], + [ + 1428.0, + 701.0 + ] + ], + "center_px": [ + 1402.0, + 693.75 + ], + "quality": { + "area_px": 553.5, + "perimeter_px": 116.58611488342285, + "sharpness": { + "laplacian_var": 1051.381376540531 + }, + "contrast": { + "p05": 12.0, + "p95": 126.0, + "dynamic_range": 114.0, + "mean_gray": 64.25196850393701, + "std_gray": 39.063170154625084 + }, + "geometry": { + "distance_to_center_norm": 0.7767954468727112, + "distance_to_border_px": 12.0 + }, + "edge_ratio": 2.6674678757353125, + "edge_lengths_px": [ + 16.124515533447266, + 41.04875183105469, + 16.401220321655273, + 43.011627197265625 + ] + }, + "confidence": 0.03320002493960217 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 975.0, + 684.0 + ], + [ + 987.0, + 688.0 + ], + [ + 989.0, + 763.0 + ], + [ + 968.0, + 765.0 + ] + ], + "center_px": [ + 979.75, + 725.0 + ], + "area_px": 1289.5 + }, + { + "image_points_px": [ + [ + 790.0, + 489.0 + ], + [ + 804.0, + 493.0 + ], + [ + 807.0, + 565.0 + ], + [ + 793.0, + 568.0 + ] + ], + "center_px": [ + 798.5, + 528.75 + ], + "area_px": 1055.5 + }, + { + "image_points_px": [ + [ + 536.0, + 599.0 + ], + [ + 540.0, + 677.0 + ], + [ + 531.0, + 664.0 + ], + [ + 529.0, + 604.0 + ] + ], + "center_px": [ + 534.0, + 636.0 + ], + "area_px": 540.0 + }, + { + "image_points_px": [ + [ + 782.0, + 864.0 + ], + [ + 789.0, + 841.0 + ], + [ + 842.0, + 845.0 + ], + [ + 837.0, + 868.0 + ] + ], + "center_px": [ + 812.5, + 854.5 + ], + "area_px": 1266.0 + }, + { + "image_points_px": [ + [ + 1232.0, + 678.0 + ], + [ + 1273.0, + 679.0 + ], + [ + 1279.0, + 694.0 + ], + [ + 1237.0, + 692.0 + ] + ], + "center_px": [ + 1255.25, + 685.75 + ], + "area_px": 593.5 + }, + { + "image_points_px": [ + [ + 1154.0, + 689.0 + ], + [ + 1194.0, + 690.0 + ], + [ + 1201.0, + 704.0 + ], + [ + 1160.0, + 703.0 + ] + ], + "center_px": [ + 1177.25, + 696.5 + ], + "area_px": 560.5 + }, + { + "image_points_px": [ + [ + 425.0, + 674.0 + ], + [ + 435.0, + 661.0 + ], + [ + 473.0, + 663.0 + ], + [ + 462.0, + 676.0 + ] + ], + "center_px": [ + 448.75, + 668.5 + ], + "area_px": 508.5 + }, + { + "image_points_px": [ + [ + 1281.0, + 650.0 + ], + [ + 1319.0, + 651.0 + ], + [ + 1327.0, + 663.0 + ], + [ + 1288.0, + 663.0 + ] + ], + "center_px": [ + 1303.75, + 656.75 + ], + "area_px": 477.5 + }, + { + "image_points_px": [ + [ + 1068.0, + 669.0 + ], + [ + 1077.0, + 679.0 + ], + [ + 1075.0, + 717.0 + ], + [ + 1068.0, + 710.0 + ] + ], + "center_px": [ + 1072.0, + 693.75 + ], + "area_px": 324.5 + }, + { + "image_points_px": [ + [ + 784.0, + 627.0 + ], + [ + 788.0, + 615.0 + ], + [ + 824.0, + 619.0 + ], + [ + 820.0, + 629.0 + ] + ], + "center_px": [ + 804.0, + 622.5 + ], + "area_px": 408.0 + }, + { + "image_points_px": [ + [ + 426.0, + 594.0 + ], + [ + 434.0, + 583.0 + ], + [ + 467.0, + 585.0 + ], + [ + 462.0, + 595.0 + ] + ], + "center_px": [ + 447.25, + 589.25 + ], + "area_px": 372.0 + }, + { + "image_points_px": [ + [ + 978.0, + 308.0 + ], + [ + 1021.0, + 310.0 + ], + [ + 1019.0, + 316.0 + ], + [ + 991.0, + 314.0 + ] + ], + "center_px": [ + 1002.25, + 312.0 + ], + "area_px": 202.0 + }, + { + "image_points_px": [ + [ + 936.0, + 582.0 + ], + [ + 951.0, + 580.0 + ], + [ + 965.0, + 595.0 + ], + [ + 937.0, + 600.0 + ] + ], + "center_px": [ + 947.25, + 589.25 + ], + "area_px": 381.0 + }, + { + "image_points_px": [ + [ + 120.0, + 998.0 + ], + [ + 124.0, + 993.0 + ], + [ + 158.0, + 996.0 + ], + [ + 153.0, + 1001.0 + ] + ], + "center_px": [ + 138.75, + 997.0 + ], + "area_px": 181.0 + }, + { + "image_points_px": [ + [ + 734.0, + 639.0 + ], + [ + 730.0, + 666.0 + ], + [ + 725.0, + 676.0 + ], + [ + 729.0, + 642.0 + ] + ], + "center_px": [ + 729.5, + 655.75 + ], + "area_px": 126.5 + }, + { + "image_points_px": [ + [ + 1360.0, + 644.0 + ], + [ + 1390.0, + 645.0 + ], + [ + 1394.0, + 648.0 + ], + [ + 1366.0, + 647.0 + ] + ], + "center_px": [ + 1377.5, + 646.0 + ], + "area_px": 82.0 + }, + { + "image_points_px": [ + [ + 339.0, + 768.0 + ], + [ + 354.0, + 762.0 + ], + [ + 372.0, + 767.0 + ], + [ + 366.0, + 771.0 + ] + ], + "center_px": [ + 357.75, + 767.0 + ], + "area_px": 154.5 + }, + { + "image_points_px": [ + [ + 732.0, + 273.0 + ], + [ + 735.0, + 284.0 + ], + [ + 735.0, + 305.0 + ], + [ + 732.0, + 301.0 + ] + ], + "center_px": [ + 733.5, + 290.75 + ], + "area_px": 73.5 + }, + { + "image_points_px": [ + [ + 990.0, + 337.0 + ], + [ + 996.0, + 351.0 + ], + [ + 997.0, + 366.0 + ], + [ + 991.0, + 364.0 + ] + ], + "center_px": [ + 993.5, + 354.5 + ], + "area_px": 118.0 + }, + { + "image_points_px": [ + [ + 774.0, + 249.0 + ], + [ + 799.0, + 247.0 + ], + [ + 800.0, + 251.0 + ], + [ + 776.0, + 252.0 + ] + ], + "center_px": [ + 787.25, + 249.75 + ], + "area_px": 88.0 + }, + { + "image_points_px": [ + [ + 900.0, + 973.0 + ], + [ + 923.0, + 973.0 + ], + [ + 926.0, + 975.0 + ], + [ + 903.0, + 975.0 + ] + ], + "center_px": [ + 913.0, + 974.0 + ], + "area_px": 46.0 + }, + { + "image_points_px": [ + [ + 957.0, + 967.0 + ], + [ + 968.0, + 965.0 + ], + [ + 970.0, + 984.0 + ], + [ + 957.0, + 971.0 + ] + ], + "center_px": [ + 963.0, + 971.75 + ], + "area_px": 132.5 + }, + { + "image_points_px": [ + [ + 1374.0, + 718.0 + ], + [ + 1394.0, + 718.0 + ], + [ + 1398.0, + 721.0 + ], + [ + 1378.0, + 721.0 + ] + ], + "center_px": [ + 1386.0, + 719.5 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 999.0, + 762.0 + ], + [ + 1017.0, + 761.0 + ], + [ + 1023.0, + 763.0 + ], + [ + 1001.0, + 764.0 + ] + ], + "center_px": [ + 1010.0, + 762.5 + ], + "area_px": 44.0 + }, + { + "image_points_px": [ + [ + 565.0, + 1022.0 + ], + [ + 584.0, + 1021.0 + ], + [ + 588.0, + 1023.0 + ], + [ + 573.0, + 1024.0 + ] + ], + "center_px": [ + 577.5, + 1022.5 + ], + "area_px": 40.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 1023.0 + ], + [ + 1182.0, + 1022.0 + ], + [ + 1185.0, + 1028.0 + ], + [ + 1169.0, + 1029.0 + ] + ], + "center_px": [ + 1175.5, + 1025.5 + ], + "area_px": 99.0 + }, + { + "image_points_px": [ + [ + 222.0, + 1034.0 + ], + [ + 241.0, + 1035.0 + ], + [ + 244.0, + 1037.0 + ], + [ + 231.0, + 1037.0 + ] + ], + "center_px": [ + 234.5, + 1035.75 + ], + "area_px": 37.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/render_c_camera_pose.json b/data/camera_study/Scene10/k3_acf/render_c_camera_pose.json new file mode 100644 index 0000000..62d0a2b --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/render_c_camera_pose.json @@ -0,0 +1,327 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:02Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_acf\\render_c_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "c", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 9, + "used_marker_ids": [ + 58, + 62, + 96, + 64, + 103, + 51, + 210, + 211, + 50 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.00850343514866048, + 0.001919637477748798, + 0.0018871327733089188, + 0.0018871325208839012 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.3388483305404, + "residual_median_px": 5.837108638574855, + "residual_max_px": 7.851369272055891, + "sigma2_normalized": 5.341903727059073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9935113787651062, + 0.11363770067691803, + -0.004644200671464205 + ], + [ + 0.029086070135235786, + -0.2933460772037506, + -0.9555637240409851 + ], + [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + ], + "translation_m": [ + -0.19824764132499695, + 0.1074121966958046, + 1.0073933601379395 + ], + "rvec_rad": [ + 1.86796171410195, + 0.10327005514572164, + -0.08291676493169096 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30460041761398315, + -0.9022090435028076, + 0.3986456096172333 + ], + "position_mm": [ + 304.60040283203125, + -902.2090454101562, + 398.6455993652344 + ], + "orientation_deg": { + "roll": 107.25025177001953, + "pitch": 6.31245756149292, + "yaw": 1.676913857460022 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 6.283611814350516e-05, + 9.967111903139419e-06, + 1.624804290129494e-05, + -1.577288611905233e-07, + -9.565179969225538e-06, + 1.214388304696983e-06 + ], + [ + 9.967111903139312e-06, + 2.0431750224389534e-05, + -7.770857724352742e-06, + 2.1849187906882535e-06, + -2.4827730156902525e-06, + 5.834590888095247e-06 + ], + [ + 1.6248042901295073e-05, + -7.770857724352725e-06, + 6.21251942958819e-05, + -3.1440970658187606e-06, + -8.329233497858997e-06, + -1.5661804579884994e-05 + ], + [ + -1.5772886119053934e-07, + 2.184918790688258e-06, + -3.14409706581878e-06, + 7.844339725202242e-07, + 9.395641917069299e-08, + 8.922273151494254e-07 + ], + [ + -9.56517996922555e-06, + -2.482773015690273e-06, + -8.329233497858978e-06, + 9.395641917068812e-08, + 3.1785216658280216e-06, + 3.2374032099410526e-06 + ], + [ + 1.2143883046968984e-06, + 5.834590888095236e-06, + -1.566180457988501e-05, + 8.922273151494167e-07, + 3.237403209941067e-06, + 1.5241091941001921e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.45417926818777943, + 0.2589854810186854, + 0.45160268193428 + ], + "tvec_std_m": [ + 0.0008856827719450255, + 0.0017828408975082497, + 0.0039039841112640202 + ] + }, + "camera_center_std_m": [ + 0.006432764403295309, + 0.003956846704431741, + 0.006949550969225763 + ], + "camera_center_std_mm": [ + 6.432764403295309, + 3.956846704431741, + 6.949550969225763 + ], + "orientation_std_deg": { + "roll": 0.42334339423542505, + "pitch": 0.36500393244331925, + "yaw": 0.2715300326454473 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 58, + "observed_center_px": [ + 283.25, + 1034.0 + ], + "projected_center_px": [ + 289.1312255859375, + 1036.682861328125 + ], + "reprojection_error_px": 6.4642524160675014, + "confidence": 0.34134185624863755 + }, + { + "marker_id": 62, + "observed_center_px": [ + 1171.5, + 1028.5 + ], + "projected_center_px": [ + 1177.343505859375, + 1029.8663330078125 + ], + "reprojection_error_px": 6.0011187804265225, + "confidence": 0.3586255184214969 + }, + { + "marker_id": 96, + "observed_center_px": [ + 1097.5, + 1038.75 + ], + "projected_center_px": [ + 1091.03857421875, + 1039.8277587890625 + ], + "reprojection_error_px": 6.550693637623701, + "confidence": 0.24678869996591526 + }, + { + "marker_id": 64, + "observed_center_px": [ + 149.25, + 990.0 + ], + "projected_center_px": [ + 146.69277954101562, + 989.6632080078125 + ], + "reprojection_error_px": 2.579303262869623, + "confidence": 0.6384599833726886 + }, + { + "marker_id": 103, + "observed_center_px": [ + 439.25, + 1009.25 + ], + "projected_center_px": [ + 443.3174743652344, + 1005.0634155273438 + ], + "reprojection_error_px": 5.837108638574855, + "confidence": 0.5316388676723932 + }, + { + "marker_id": 51, + "observed_center_px": [ + 598.5, + 996.25 + ], + "projected_center_px": [ + 598.08349609375, + 993.7927856445312 + ], + "reprojection_error_px": 2.492263608176955, + "confidence": 0.5232849066860699 + }, + { + "marker_id": 210, + "observed_center_px": [ + 357.5, + 769.75 + ], + "projected_center_px": [ + 354.4071044921875, + 771.2721557617188 + ], + "reprojection_error_px": 3.4471670666186647, + "confidence": 0.27039765782644665 + }, + { + "marker_id": 211, + "observed_center_px": [ + 828.75, + 782.25 + ], + "projected_center_px": [ + 820.9069213867188, + 782.6107177734375 + ], + "reprojection_error_px": 7.851369272055891, + "confidence": 0.25970043306972035 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1402.0, + 693.75 + ], + "projected_center_px": [ + 1405.9166259765625, + 693.873291015625 + ], + "reprojection_error_px": 3.918566027875248, + "confidence": 0.03320002493960217 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/render_f_aruco_detection.json b/data/camera_study/Scene10/k3_acf/render_f_aruco_detection.json new file mode 100644 index 0000000..fe4b720 --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/render_f_aruco_detection.json @@ -0,0 +1,2058 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:01Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "f", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.npz", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.png", + "image_sha256": "aa67ae34760d38a87903e73b4020db43742a978458949ff309a7b2527c548cd4", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 33, + "num_rejected_candidates": 9 + }, + "detections": [ + { + "observation_id": "ea4e5dac-035d-4ee0-bdd3-c37ffb3cbd2b", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1111.0, + 551.0 + ], + [ + 1128.0, + 590.0 + ], + [ + 1088.0, + 605.0 + ], + [ + 1071.0, + 566.0 + ] + ], + "center_px": [ + 1099.5, + 578.0 + ], + "quality": { + "area_px": 1815.0, + "perimeter_px": 170.52822875976562, + "sharpness": { + "laplacian_var": 705.4441714458114 + }, + "contrast": { + "p05": 20.0, + "p95": 169.0, + "dynamic_range": 149.0, + "mean_gray": 91.23937908496733, + "std_gray": 63.85244467612601 + }, + "geometry": { + "distance_to_center_norm": 0.4237752854824066, + "distance_to_border_px": 312.0 + }, + "edge_ratio": 1.0041351499491737, + "edge_lengths_px": [ + 42.54409408569336, + 42.72002029418945, + 42.54409408569336, + 42.72002029418945 + ] + }, + "confidence": 0.9958818790982638 + }, + { + "observation_id": "3785273e-886f-45a3-b3cb-1632cf4215ba", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1016.0, + 419.0 + ], + [ + 1031.0, + 457.0 + ], + [ + 994.0, + 474.0 + ], + [ + 980.0, + 436.0 + ] + ], + "center_px": [ + 1005.25, + 446.5 + ], + "quality": { + "area_px": 1633.5, + "perimeter_px": 161.88091659545898, + "sharpness": { + "laplacian_var": 1206.2538238529316 + }, + "contrast": { + "p05": 64.0, + "p95": 184.0, + "dynamic_range": 120.0, + "mean_gray": 109.98129092609916, + "std_gray": 52.10421328381854 + }, + "geometry": { + "distance_to_center_norm": 0.33353662490844727, + "distance_to_border_px": 409.0 + }, + "edge_ratio": 1.0261563943133383, + "edge_lengths_px": [ + 40.853397369384766, + 40.71854782104492, + 40.49691390991211, + 39.81205749511719 + ] + }, + "confidence": 0.9745103237106064 + }, + { + "observation_id": "b6c817a7-7ae0-4970-bfde-d09bbe28a401", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1036.0, + 506.0 + ], + [ + 1052.0, + 544.0 + ], + [ + 1022.0, + 561.0 + ], + [ + 1006.0, + 523.0 + ] + ], + "center_px": [ + 1029.0, + 533.5 + ], + "quality": { + "area_px": 1412.0, + "perimeter_px": 151.42587280273438, + "sharpness": { + "laplacian_var": 1012.7025030399973 + }, + "contrast": { + "p05": 38.0, + "p95": 183.0, + "dynamic_range": 145.0, + "mean_gray": 116.22860125260961, + "std_gray": 60.975378654093674 + }, + "geometry": { + "distance_to_center_norm": 0.34340929985046387, + "distance_to_border_px": 388.0 + }, + "edge_ratio": 1.1957310908974648, + "edge_lengths_px": [ + 41.231056213378906, + 34.48188018798828, + 41.231056213378906, + 34.48188018798828 + ] + }, + "confidence": 0.7872450089315723 + }, + { + "observation_id": "2a25aa64-afcd-4155-8b46-27f6371b5048", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1052.0, + 572.0 + ], + [ + 1067.0, + 612.0 + ], + [ + 1037.0, + 628.0 + ], + [ + 1025.0, + 587.0 + ] + ], + "center_px": [ + 1045.25, + 599.75 + ], + "quality": { + "area_px": 1363.5, + "perimeter_px": 150.32693099975586, + "sharpness": { + "laplacian_var": 1006.0857327103973 + }, + "contrast": { + "p05": 35.0, + "p95": 182.0, + "dynamic_range": 147.0, + "mean_gray": 87.55157437567861, + "std_gray": 61.08527885104246 + }, + "geometry": { + "distance_to_center_norm": 0.3674362897872925, + "distance_to_border_px": 373.0 + }, + "edge_ratio": 1.38311172556412, + "edge_lengths_px": [ + 42.72002029418945, + 34.0, + 42.72002029418945, + 30.886890411376953 + ] + }, + "confidence": 0.6572137183127795 + }, + { + "observation_id": "fe0e1b39-2a14-4329-abbb-da0c15632ce0", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1373.0, + 931.0 + ], + [ + 1403.0, + 920.0 + ], + [ + 1417.0, + 952.0 + ], + [ + 1387.0, + 964.0 + ] + ], + "center_px": [ + 1395.0, + 941.75 + ], + "quality": { + "area_px": 1136.0, + "perimeter_px": 135.0394744873047, + "sharpness": { + "laplacian_var": 536.3795719450814 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 59.547588005215125, + "std_gray": 52.80020659255208 + }, + "geometry": { + "distance_to_center_norm": 0.8727903962135315, + "distance_to_border_px": 23.0 + }, + "edge_ratio": 1.1218600885282315, + "edge_lengths_px": [ + 31.95309066772461, + 34.928497314453125, + 32.31098937988281, + 35.84689712524414 + ] + }, + "confidence": 0.3105318897567382 + }, + { + "observation_id": "70c3f081-849b-46fa-bc7c-75f96063224d", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1361.0, + 872.0 + ], + [ + 1392.0, + 861.0 + ], + [ + 1405.0, + 893.0 + ], + [ + 1375.0, + 904.0 + ] + ], + "center_px": [ + 1383.25, + 882.5 + ], + "quality": { + "area_px": 1124.5, + "perimeter_px": 134.31518936157227, + "sharpness": { + "laplacian_var": 517.914546739087 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 76.5836627140975, + "std_gray": 53.471581821317514 + }, + "geometry": { + "distance_to_center_norm": 0.8294032216072083, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.0931179608780046, + "edge_lengths_px": [ + 32.893768310546875, + 34.539833068847656, + 31.95309066772461, + 34.928497314453125 + ] + }, + "confidence": 0.480064078578645 + }, + { + "observation_id": "cc1dd0d8-306a-4587-acb4-48ccb08469d7", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 948.0, + 734.0 + ], + [ + 958.0, + 766.0 + ], + [ + 926.0, + 775.0 + ], + [ + 916.0, + 742.0 + ] + ], + "center_px": [ + 937.0, + 754.25 + ], + "quality": { + "area_px": 1125.0, + "perimeter_px": 134.23437118530273, + "sharpness": { + "laplacian_var": 451.55598900708645 + }, + "contrast": { + "p05": 10.0, + "p95": 140.0, + "dynamic_range": 130.0, + "mean_gray": 60.31848852901484, + "std_gray": 51.76857091737675 + }, + "geometry": { + "distance_to_center_norm": 0.3388288915157318, + "distance_to_border_px": 305.0 + }, + "edge_ratio": 1.0453855707425852, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 34.48188018798828, + 32.98484420776367 + ] + }, + "confidence": 0.717438637944123 + }, + { + "observation_id": "5377c220-5dca-4b73-a1e1-28e728d1031b", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 644.0, + 826.0 + ], + [ + 676.0, + 815.0 + ], + [ + 686.0, + 847.0 + ], + [ + 654.0, + 857.0 + ] + ], + "center_px": [ + 665.0, + 836.25 + ], + "quality": { + "area_px": 1113.0, + "perimeter_px": 133.4630584716797, + "sharpness": { + "laplacian_var": 852.4779615278809 + }, + "contrast": { + "p05": 29.0, + "p95": 169.0, + "dynamic_range": 140.0, + "mean_gray": 86.11354309165527, + "std_gray": 58.71854981961371 + }, + "geometry": { + "distance_to_center_norm": 0.334791362285614, + "distance_to_border_px": 223.0 + }, + "edge_ratio": 1.0388313835116465, + "edge_lengths_px": [ + 33.83784866333008, + 33.52610778808594, + 33.52610778808594, + 32.572994232177734 + ] + }, + "confidence": 0.714264135428559 + }, + { + "observation_id": "95589e0d-f361-4590-8d9e-da023b7a3cb0", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1320.0, + 833.0 + ], + [ + 1351.0, + 823.0 + ], + [ + 1363.0, + 855.0 + ], + [ + 1333.0, + 865.0 + ] + ], + "center_px": [ + 1341.75, + 844.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 451.19488172035136 + }, + "contrast": { + "p05": 7.0, + "p95": 137.0, + "dynamic_range": 130.0, + "mean_gray": 45.32476319350474, + "std_gray": 49.27193956190029 + }, + "geometry": { + "distance_to_center_norm": 0.7689892649650574, + "distance_to_border_px": 77.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.6720101269988878 + }, + { + "observation_id": "4ee44b93-b349-4d0d-a56b-b52631f33504", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1378.0, + 795.0 + ], + [ + 1409.0, + 785.0 + ], + [ + 1421.0, + 817.0 + ], + [ + 1391.0, + 827.0 + ] + ], + "center_px": [ + 1399.75, + 806.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 495.05510317310643 + }, + "contrast": { + "p05": 8.0, + "p95": 139.0, + "dynamic_range": 131.0, + "mean_gray": 82.98646820027064, + "std_gray": 51.90790044031631 + }, + "geometry": { + "distance_to_center_norm": 0.8110472559928894, + "distance_to_border_px": 19.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.25536384825957736 + }, + { + "observation_id": "9eb4cdf0-0f85-4cea-8380-eb0a86e8cc61", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 534.0, + 807.0 + ], + [ + 566.0, + 797.0 + ], + [ + 575.0, + 829.0 + ], + [ + 544.0, + 839.0 + ] + ], + "center_px": [ + 554.75, + 818.0 + ], + "quality": { + "area_px": 1103.0, + "perimeter_px": 132.86674880981445, + "sharpness": { + "laplacian_var": 743.494629148182 + }, + "contrast": { + "p05": 35.0, + "p95": 172.0, + "dynamic_range": 137.0, + "mean_gray": 110.58367911479945, + "std_gray": 58.20082187769058 + }, + "geometry": { + "distance_to_center_norm": 0.35934022068977356, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 32.572994232177734, + 33.52610778808594 + ] + }, + "confidence": 0.7144285455619288 + }, + { + "observation_id": "22dcf120-1c9a-4662-bd7f-f8b515a55747", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 824.0, + 853.0 + ], + [ + 854.0, + 841.0 + ], + [ + 867.0, + 872.0 + ], + [ + 836.0, + 884.0 + ] + ], + "center_px": [ + 845.25, + 862.5 + ], + "quality": { + "area_px": 1095.5, + "perimeter_px": 132.40953826904297, + "sharpness": { + "laplacian_var": 442.72637538104226 + }, + "contrast": { + "p05": 14.0, + "p95": 151.0, + "dynamic_range": 137.0, + "mean_gray": 42.81124497991968, + "std_gray": 45.242857765301586 + }, + "geometry": { + "distance_to_center_norm": 0.3844088017940521, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.040372688406745, + "edge_lengths_px": [ + 32.31098937988281, + 33.61547088623047, + 33.241539001464844, + 33.241539001464844 + ] + }, + "confidence": 0.7019920279258633 + }, + { + "observation_id": "c3eb6f75-cdc7-4636-8066-79ac7a0a74ae", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 590.0, + 838.0 + ], + [ + 621.0, + 828.0 + ], + [ + 631.0, + 859.0 + ], + [ + 600.0, + 870.0 + ] + ], + "center_px": [ + 610.5, + 848.75 + ], + "quality": { + "area_px": 1081.5, + "perimeter_px": 131.56586456298828, + "sharpness": { + "laplacian_var": 731.9229727377668 + }, + "contrast": { + "p05": 31.0, + "p95": 169.0, + "dynamic_range": 138.0, + "mean_gray": 66.63649222065064, + "std_gray": 51.73446481181097 + }, + "geometry": { + "distance_to_center_norm": 0.3639915883541107, + "distance_to_border_px": 210.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 32.572994232177734, + 32.572994232177734, + 32.893768310546875, + 33.52610778808594 + ] + }, + "confidence": 0.7005026944924987 + }, + { + "observation_id": "3494c183-caf1-43cc-83e0-8e9edb247655", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 655.0, + 735.0 + ], + [ + 687.0, + 726.0 + ], + [ + 695.0, + 757.0 + ], + [ + 664.0, + 766.0 + ] + ], + "center_px": [ + 675.25, + 746.0 + ], + "quality": { + "area_px": 1053.0, + "perimeter_px": 129.81721115112305, + "sharpness": { + "laplacian_var": 717.9247585125308 + }, + "contrast": { + "p05": 30.0, + "p95": 171.0, + "dynamic_range": 141.0, + "mean_gray": 93.84776536312849, + "std_gray": 59.42619485270114 + }, + "geometry": { + "distance_to_center_norm": 0.23422729969024658, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0382912394254866, + "edge_lengths_px": [ + 33.241539001464844, + 32.015621185302734, + 32.280025482177734, + 32.280025482177734 + ] + }, + "confidence": 0.6761108765479277 + }, + { + "observation_id": "506ffe74-36e6-4287-94ab-0b9ddf6f9d3f", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1325.0, + 744.0 + ], + [ + 1354.0, + 732.0 + ], + [ + 1368.0, + 763.0 + ], + [ + 1339.0, + 774.0 + ] + ], + "center_px": [ + 1346.5, + 753.25 + ], + "quality": { + "area_px": 1045.5, + "perimeter_px": 129.52142906188965, + "sharpness": { + "laplacian_var": 401.9192193180268 + }, + "contrast": { + "p05": 7.0, + "p95": 133.0, + "dynamic_range": 126.0, + "mean_gray": 49.76628895184136, + "std_gray": 49.769446320789825 + }, + "geometry": { + "distance_to_center_norm": 0.735332190990448, + "distance_to_border_px": 72.0 + }, + "edge_ratio": 1.096678006826234, + "edge_lengths_px": [ + 31.38471031188965, + 34.01470184326172, + 31.016124725341797, + 33.105892181396484 + ] + }, + "confidence": 0.63555573802114 + }, + { + "observation_id": "81bbf6b2-0080-45b0-8421-55e693811659", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 488.0, + 682.0 + ], + [ + 520.0, + 673.0 + ], + [ + 528.0, + 703.0 + ], + [ + 497.0, + 713.0 + ] + ], + "center_px": [ + 508.25, + 692.75 + ], + "quality": { + "area_px": 1041.5, + "perimeter_px": 129.14290809631348, + "sharpness": { + "laplacian_var": 854.9291926161701 + }, + "contrast": { + "p05": 39.0, + "p95": 174.0, + "dynamic_range": 135.0, + "mean_gray": 85.3946251768034, + "std_gray": 55.88886855913174 + }, + "geometry": { + "distance_to_center_norm": 0.2901056110858917, + "distance_to_border_px": 367.0 + }, + "edge_ratio": 1.070637881392484, + "edge_lengths_px": [ + 33.241539001464844, + 31.048349380493164, + 32.572994232177734, + 32.280025482177734 + ] + }, + "confidence": 0.6485230397697823 + }, + { + "observation_id": "06c28b9c-e7e7-4ce4-9b3d-2f9f3baa056a", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1047.0, + 694.0 + ], + [ + 1058.0, + 725.0 + ], + [ + 1029.0, + 735.0 + ], + [ + 1017.0, + 703.0 + ] + ], + "center_px": [ + 1037.75, + 714.25 + ], + "quality": { + "area_px": 1038.5, + "perimeter_px": 129.06642532348633, + "sharpness": { + "laplacian_var": 702.8589017712277 + }, + "contrast": { + "p05": 13.0, + "p95": 151.0, + "dynamic_range": 138.0, + "mean_gray": 91.26308139534883, + "std_gray": 55.34838633216663 + }, + "geometry": { + "distance_to_center_norm": 0.40265801548957825, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 1.1141061874732403, + "edge_lengths_px": [ + 32.893768310546875, + 30.675724029541016, + 34.1760139465332, + 31.320919036865234 + ] + }, + "confidence": 0.62142490645665 + }, + { + "observation_id": "41f27052-7e81-46ee-8967-5f8178e39251", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 592.0, + 617.0 + ], + [ + 622.0, + 606.0 + ], + [ + 633.0, + 635.0 + ], + [ + 604.0, + 647.0 + ] + ], + "center_px": [ + 612.75, + 626.25 + ], + "quality": { + "area_px": 1002.5, + "perimeter_px": 126.66491508483887, + "sharpness": { + "laplacian_var": 861.4333753048808 + }, + "contrast": { + "p05": 34.0, + "p95": 174.0, + "dynamic_range": 140.0, + "mean_gray": 97.54451038575668, + "std_gray": 59.64062956897272 + }, + "geometry": { + "distance_to_center_norm": 0.15292063355445862, + "distance_to_border_px": 433.0 + }, + "edge_ratio": 1.041748112183823, + "edge_lengths_px": [ + 31.95309066772461, + 31.016124725341797, + 31.38471031188965, + 32.31098937988281 + ] + }, + "confidence": 0.6415498386959416 + }, + { + "observation_id": "144c60c8-13f1-4bb1-aa29-1423eaa2695a", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 852.0, + 664.0 + ], + [ + 855.0, + 699.0 + ], + [ + 831.0, + 712.0 + ], + [ + 828.0, + 677.0 + ] + ], + "center_px": [ + 841.5, + 688.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 124.84605026245117, + "sharpness": { + "laplacian_var": 964.1437813663806 + }, + "contrast": { + "p05": 35.0, + "p95": 185.0, + "dynamic_range": 150.0, + "mean_gray": 80.50977198697069, + "std_gray": 59.04237755633671 + }, + "geometry": { + "distance_to_center_norm": 0.21276035904884338, + "distance_to_border_px": 368.0 + }, + "edge_ratio": 1.2870027603239267, + "edge_lengths_px": [ + 35.12833786010742, + 27.294687271118164, + 35.12833786010742, + 27.294687271118164 + ] + }, + "confidence": 0.45532147876086076 + }, + { + "observation_id": "fdea897c-0d3c-42e3-9fae-19f2d81d2374", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 549.0 + ], + [ + 750.0, + 540.0 + ], + [ + 759.0, + 570.0 + ], + [ + 728.0, + 578.0 + ] + ], + "center_px": [ + 739.25, + 559.25 + ], + "quality": { + "area_px": 972.0, + "perimeter_px": 124.74067687988281, + "sharpness": { + "laplacian_var": 858.8311608781246 + }, + "contrast": { + "p05": 30.0, + "p95": 176.0, + "dynamic_range": 146.0, + "mean_gray": 89.6813509544787, + "std_gray": 60.460128160193484 + }, + "geometry": { + "distance_to_center_norm": 0.030248457565903664, + "distance_to_border_px": 502.0 + }, + "edge_ratio": 1.0642352686074992, + "edge_lengths_px": [ + 31.320919036865234, + 31.320919036865234, + 32.015621185302734, + 30.08321762084961 + ] + }, + "confidence": 0.6088879208521975 + }, + { + "observation_id": "dd3d395e-cd4b-499f-b29b-639030dc10fe", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 670.0, + 478.0 + ], + [ + 700.0, + 469.0 + ], + [ + 710.0, + 497.0 + ], + [ + 680.0, + 507.0 + ] + ], + "center_px": [ + 690.0, + 487.75 + ], + "quality": { + "area_px": 950.0, + "perimeter_px": 123.3515567779541, + "sharpness": { + "laplacian_var": 744.1718727855725 + }, + "contrast": { + "p05": 33.0, + "p95": 177.0, + "dynamic_range": 144.0, + "mean_gray": 123.30505952380952, + "std_gray": 58.57233093015588 + }, + "geometry": { + "distance_to_center_norm": 0.06694444268941879, + "distance_to_border_px": 469.0 + }, + "edge_ratio": 1.0635890487184443, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.62277603149414, + 30.675724029541016 + ] + }, + "confidence": 0.5954680843098741 + }, + { + "observation_id": "36c1713a-ec65-4ffe-b50b-f85b73d51d7c", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 519.0, + 393.0 + ], + [ + 550.0, + 385.0 + ], + [ + 558.0, + 413.0 + ], + [ + 527.0, + 421.0 + ] + ], + "center_px": [ + 538.5, + 403.0 + ], + "quality": { + "area_px": 932.0, + "perimeter_px": 122.27212142944336, + "sharpness": { + "laplacian_var": 797.3173110559737 + }, + "contrast": { + "p05": 38.0, + "p95": 176.19999999999993, + "dynamic_range": 138.19999999999993, + "mean_gray": 94.14307458143075, + "std_gray": 55.87143525094488 + }, + "geometry": { + "distance_to_center_norm": 0.2526678740978241, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0994209463411062, + "edge_lengths_px": [ + 32.015621185302734, + 29.120439529418945, + 32.015621185302734, + 29.120439529418945 + ] + }, + "confidence": 0.5651459847123547 + }, + { + "observation_id": "3eb86f32-638b-4cd5-8323-5bc1d7b7c6fd", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 613.0, + 419.0 + ], + [ + 643.0, + 410.0 + ], + [ + 653.0, + 438.0 + ], + [ + 623.0, + 447.0 + ] + ], + "center_px": [ + 633.0, + 428.5 + ], + "quality": { + "area_px": 930.0, + "perimeter_px": 122.10611343383789, + "sharpness": { + "laplacian_var": 823.1077646304283 + }, + "contrast": { + "p05": 33.0, + "p95": 175.0, + "dynamic_range": 142.0, + "mean_gray": 90.3810975609756, + "std_gray": 58.11551162536803 + }, + "geometry": { + "distance_to_center_norm": 0.15713976323604584, + "distance_to_border_px": 410.0 + }, + "edge_ratio": 1.0534364993835403, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.320919036865234, + 29.73213768005371 + ] + }, + "confidence": 0.5885499509109636 + }, + { + "observation_id": "fa558d89-8a73-450c-a280-b57857f7f405", + "type": "aruco", + "marker_id": 82, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 420.0 + ], + [ + 1365.0, + 411.0 + ], + [ + 1377.0, + 439.0 + ], + [ + 1348.0, + 448.0 + ] + ], + "center_px": [ + 1356.5, + 429.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 492.47728625272765 + }, + "contrast": { + "p05": 8.0, + "p95": 144.0, + "dynamic_range": 136.0, + "mean_gray": 74.61658841940532, + "std_gray": 56.63950003540781 + }, + "geometry": { + "distance_to_center_norm": 0.7178005576133728, + "distance_to_border_px": 63.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.6113473409254715 + }, + { + "observation_id": "e6acceac-7525-4176-9a1c-f65c0202b32c", + "type": "aruco", + "marker_id": 73, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1381.0, + 409.0 + ], + [ + 1410.0, + 400.0 + ], + [ + 1422.0, + 428.0 + ], + [ + 1393.0, + 437.0 + ] + ], + "center_px": [ + 1401.5, + 418.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 771.0965392424098 + }, + "contrast": { + "p05": 9.0, + "p95": 148.0, + "dynamic_range": 139.0, + "mean_gray": 87.07042253521126, + "std_gray": 52.83472667385498 + }, + "geometry": { + "distance_to_center_norm": 0.7691621780395508, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.22008504273316973 + }, + { + "observation_id": "28b8a7c9-e4eb-4961-b6f2-02c12d971d5b", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 881.0, + 288.0 + ], + [ + 892.0, + 316.0 + ], + [ + 863.0, + 326.0 + ], + [ + 852.0, + 298.0 + ] + ], + "center_px": [ + 872.0, + 307.0 + ], + "quality": { + "area_px": 922.0, + "perimeter_px": 121.51788330078125, + "sharpness": { + "laplacian_var": 865.0098318523201 + }, + "contrast": { + "p05": 22.0, + "p95": 172.0, + "dynamic_range": 150.0, + "mean_gray": 82.59908536585365, + "std_gray": 60.95016906391271 + }, + "geometry": { + "distance_to_center_norm": 0.30910664796829224, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.0196955796470641, + "edge_lengths_px": [ + 30.08321762084961, + 30.675724029541016, + 30.08321762084961, + 30.675724029541016 + ] + }, + "confidence": 0.60279428383853 + }, + { + "observation_id": "3bac2b33-42f1-4cad-99c5-2a6895f2124f", + "type": "aruco", + "marker_id": 52, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1170.0, + 304.0 + ], + [ + 1198.0, + 294.0 + ], + [ + 1211.0, + 321.0 + ], + [ + 1182.0, + 331.0 + ] + ], + "center_px": [ + 1190.25, + 312.5 + ], + "quality": { + "area_px": 894.5, + "perimeter_px": 119.92108345031738, + "sharpness": { + "laplacian_var": 736.7821607663999 + }, + "contrast": { + "p05": 12.0, + "p95": 162.0, + "dynamic_range": 150.0, + "mean_gray": 73.56239870340356, + "std_gray": 59.95824921853181 + }, + "geometry": { + "distance_to_center_norm": 0.5804333686828613, + "distance_to_border_px": 229.0 + }, + "edge_ratio": 1.038215950330626, + "edge_lengths_px": [ + 29.73213768005371, + 29.96664810180664, + 30.675724029541016, + 29.546573638916016 + ] + }, + "confidence": 0.5743827506632194 + }, + { + "observation_id": "2a0ee34e-8c10-433b-8591-c00c7c6d46c1", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 621.0, + 329.0 + ], + [ + 651.0, + 320.0 + ], + [ + 660.0, + 347.0 + ], + [ + 630.0, + 356.0 + ] + ], + "center_px": [ + 640.5, + 338.0 + ], + "quality": { + "area_px": 891.0, + "perimeter_px": 119.56283569335938, + "sharpness": { + "laplacian_var": 820.498501862312 + }, + "contrast": { + "p05": 32.0, + "p95": 175.0, + "dynamic_range": 143.0, + "mean_gray": 89.84786053882726, + "std_gray": 58.95198554771998 + }, + "geometry": { + "distance_to_center_norm": 0.24120134115219116, + "distance_to_border_px": 320.0 + }, + "edge_ratio": 1.1005049224950472, + "edge_lengths_px": [ + 31.320919036865234, + 28.460498809814453, + 31.320919036865234, + 28.460498809814453 + ] + }, + "confidence": 0.5397522426826521 + }, + { + "observation_id": "1ab41443-2df9-482b-8880-1d76a215413f", + "type": "aruco", + "marker_id": 77, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1106.0, + 220.0 + ], + [ + 1135.0, + 213.0 + ], + [ + 1145.0, + 239.0 + ], + [ + 1116.0, + 248.0 + ] + ], + "center_px": [ + 1125.5, + 230.0 + ], + "quality": { + "area_px": 863.0, + "perimeter_px": 117.78623580932617, + "sharpness": { + "laplacian_var": 634.9850778546712 + }, + "contrast": { + "p05": 11.0, + "p95": 158.0, + "dynamic_range": 147.0, + "mean_gray": 69.19607843137256, + "std_gray": 58.47258547896745 + }, + "geometry": { + "distance_to_center_norm": 0.5671351552009583, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.0900202903476583, + "edge_lengths_px": [ + 29.832868576049805, + 27.85677719116211, + 30.364452362060547, + 29.73213768005371 + ] + }, + "confidence": 0.5278189208292927 + }, + { + "observation_id": "376acab0-4f46-4743-a215-fabcd2ac9bba", + "type": "aruco", + "marker_id": 83, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1304.0, + 199.0 + ], + [ + 1332.0, + 191.0 + ], + [ + 1343.0, + 218.0 + ], + [ + 1314.0, + 226.0 + ] + ], + "center_px": [ + 1323.25, + 208.5 + ], + "quality": { + "area_px": 853.5, + "perimeter_px": 117.15077781677246, + "sharpness": { + "laplacian_var": 787.246986385212 + }, + "contrast": { + "p05": 11.0, + "p95": 159.19999999999993, + "dynamic_range": 148.19999999999993, + "mean_gray": 92.65964343598056, + "std_gray": 57.146865375444264 + }, + "geometry": { + "distance_to_center_norm": 0.7648148536682129, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0448333273602466, + "edge_lengths_px": [ + 29.120439529418945, + 29.154760360717773, + 30.08321762084961, + 28.792360305786133 + ] + }, + "confidence": 0.5445844663450473 + }, + { + "observation_id": "e71580ef-0560-4ef1-af74-25aa89cbddc1", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1089.0, + 172.0 + ], + [ + 1118.0, + 165.0 + ], + [ + 1127.0, + 192.0 + ], + [ + 1098.0, + 199.0 + ] + ], + "center_px": [ + 1108.0, + 182.0 + ], + "quality": { + "area_px": 846.0, + "perimeter_px": 116.58673477172852, + "sharpness": { + "laplacian_var": 840.0864058387932 + }, + "contrast": { + "p05": 18.0, + "p95": 165.0, + "dynamic_range": 147.0, + "mean_gray": 108.12054329371817, + "std_gray": 55.17911014115476 + }, + "geometry": { + "distance_to_center_norm": 0.5865867137908936, + "distance_to_border_px": 165.0 + }, + "edge_ratio": 1.048220158592656, + "edge_lengths_px": [ + 29.832868576049805, + 28.460498809814453, + 29.832868576049805, + 28.460498809814453 + ] + }, + "confidence": 0.5380549070504695 + }, + { + "observation_id": "d85914c2-b52a-4a27-924f-94b521b83479", + "type": "aruco", + "marker_id": 61, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1260.0, + 127.0 + ], + [ + 1287.0, + 117.0 + ], + [ + 1300.0, + 143.0 + ], + [ + 1273.0, + 153.0 + ] + ], + "center_px": [ + 1280.0, + 135.0 + ], + "quality": { + "area_px": 832.0, + "perimeter_px": 115.72248840332031, + "sharpness": { + "laplacian_var": 747.7801521890221 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 95.53195164075993, + "std_gray": 57.42506055833918 + }, + "geometry": { + "distance_to_center_norm": 0.7678935527801514, + "distance_to_border_px": 117.0 + }, + "edge_ratio": 1.0096040611867558, + "edge_lengths_px": [ + 28.792360305786133, + 29.068883895874023, + 28.792360305786133, + 29.068883895874023 + ] + }, + "confidence": 0.5493902887184056 + }, + { + "observation_id": "345ec1d2-5e84-447a-a8f3-770578cd8f02", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 842.0, + 759.0 + ], + [ + 869.0, + 767.0 + ], + [ + 844.0, + 778.0 + ], + [ + 816.0, + 770.0 + ] + ], + "center_px": [ + 842.75, + 768.5 + ], + "quality": { + "area_px": 506.5, + "perimeter_px": 112.82488250732422, + "sharpness": { + "laplacian_var": 927.7063988919667 + }, + "contrast": { + "p05": 19.0, + "p95": 83.0, + "dynamic_range": 64.0, + "mean_gray": 43.613157894736844, + "std_gray": 22.719116354348767 + }, + "geometry": { + "distance_to_center_norm": 0.2882038950920105, + "distance_to_border_px": 302.0 + }, + "edge_ratio": 1.0661750749552474, + "edge_lengths_px": [ + 28.160255432128906, + 27.312999725341797, + 29.120439529418945, + 28.23118782043457 + ] + }, + "confidence": 0.25336676844060735 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1315.0, + 285.0 + ], + [ + 1328.0, + 312.0 + ], + [ + 1300.0, + 322.0 + ], + [ + 1287.0, + 295.0 + ] + ], + "center_px": [ + 1307.5, + 303.5 + ], + "area_px": 886.0 + }, + { + "image_points_px": [ + [ + 1003.0, + 394.0 + ], + [ + 972.0, + 415.0 + ], + [ + 973.0, + 410.0 + ], + [ + 985.0, + 400.0 + ] + ], + "center_px": [ + 983.25, + 404.75 + ], + "area_px": 121.0 + }, + { + "image_points_px": [ + [ + 780.0, + 278.0 + ], + [ + 783.0, + 279.0 + ], + [ + 797.0, + 300.0 + ], + [ + 795.0, + 302.0 + ] + ], + "center_px": [ + 788.75, + 289.75 + ], + "area_px": 63.5 + }, + { + "image_points_px": [ + [ + 1087.0, + 550.0 + ], + [ + 1063.0, + 565.0 + ], + [ + 1074.0, + 554.0 + ], + [ + 1082.0, + 550.0 + ] + ], + "center_px": [ + 1076.5, + 554.75 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 665.0, + 67.0 + ], + [ + 675.0, + 85.0 + ], + [ + 674.0, + 91.0 + ], + [ + 667.0, + 78.0 + ] + ], + "center_px": [ + 670.25, + 80.25 + ], + "area_px": 64.5 + }, + { + "image_points_px": [ + [ + 1107.0, + 93.0 + ], + [ + 1110.0, + 95.0 + ], + [ + 1120.0, + 115.0 + ], + [ + 1115.0, + 111.0 + ] + ], + "center_px": [ + 1113.0, + 103.5 + ], + "area_px": 49.0 + }, + { + "image_points_px": [ + [ + 735.0, + 232.0 + ], + [ + 745.0, + 254.0 + ], + [ + 742.0, + 252.0 + ], + [ + 736.0, + 239.0 + ] + ], + "center_px": [ + 739.5, + 244.25 + ], + "area_px": 37.5 + }, + { + "image_points_px": [ + [ + 1214.0, + 340.0 + ], + [ + 1219.0, + 346.0 + ], + [ + 1223.0, + 362.0 + ], + [ + 1216.0, + 349.0 + ] + ], + "center_px": [ + 1218.0, + 349.25 + ], + "area_px": 46.5 + }, + { + "image_points_px": [ + [ + 1121.0, + 562.0 + ], + [ + 1129.0, + 569.0 + ], + [ + 1131.0, + 577.0 + ], + [ + 1130.0, + 583.0 + ] + ], + "center_px": [ + 1127.75, + 572.75 + ], + "area_px": 62.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/render_f_camera_pose.json b/data/camera_study/Scene10/k3_acf/render_f_camera_pose.json new file mode 100644 index 0000000..fe85aca --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/render_f_camera_pose.json @@ -0,0 +1,582 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:02Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_acf\\render_f_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "f", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 27, + "used_marker_ids": [ + 68, + 46, + 208, + 47, + 56, + 53, + 97, + 62, + 54, + 55, + 72, + 66, + 214, + 95, + 51, + 103, + 69, + 58, + 82, + 73, + 210, + 52, + 64, + 77, + 83, + 75, + 61 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3, + 4 + ], + "rms": [ + 0.00918677717341902, + 0.0014933429518723808, + 0.001390373853667637, + 0.0013903699834861628, + 0.0013903699807887252 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125, + 6.25e-05 + ] + }, + "residual_rms_px": 3.941603533751138, + "residual_median_px": 3.7352373317630128, + "residual_max_px": 5.771900878439298, + "sigma2_normalized": 2.17476976890378e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.31769248843193054, + 0.9481521248817444, + 0.008892479352653027 + ], + [ + 0.9206541180610657, + -0.30620789527893066, + -0.242141991853714 + ], + [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + ], + "translation_m": [ + 0.12344730645418167, + -0.19988536834716797, + 1.4972078800201416 + ], + "rvec_rad": [ + 2.378352663832453, + 1.7133801592888853, + -0.1998435821316908 + ] + }, + "camera_in_world": { + "position_m": [ + 0.48447033762931824, + -0.3056860566139221, + 1.4030927419662476 + ], + "position_mm": [ + 484.4703369140625, + -305.6860656738281, + 1403.0927734375 + ], + "orientation_deg": { + "roll": 174.98638916015625, + "pitch": 13.112541198730469, + "yaw": 70.96184539794922 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 3.2311819447272024e-05, + 1.8832577487974546e-05, + -4.656767371183097e-06, + -4.18150026429738e-07, + 2.6114865287331025e-07, + 2.406181848846857e-06 + ], + [ + 1.8832577487974533e-05, + 1.683541014579236e-05, + -7.3574856590594524e-06, + 4.5948447714477966e-07, + 3.095065254407523e-08, + 2.3847847067019377e-06 + ], + [ + -4.6567673711861375e-06, + -7.357485659062205e-06, + 0.00016783973036034415, + 1.5647826411604766e-06, + -1.729586622472892e-06, + -2.906231789157714e-05 + ], + [ + -4.1815002642977447e-07, + 4.594844771447391e-07, + 1.5647826411606013e-06, + 3.507815548304795e-07, + -2.7134564617847737e-08, + 2.4204791300702807e-07 + ], + [ + 2.611486528733672e-07, + 3.0950652544076366e-08, + -1.729586622472832e-06, + -2.7134564617850665e-08, + 1.9997327434023874e-07, + 4.1386012647726157e-07 + ], + [ + 2.4061818488473495e-06, + 2.384784706702394e-06, + -2.9062317891576876e-05, + 2.420479130070509e-07, + 4.138601264772586e-07, + 9.270646369219581e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.3256891862833913, + 0.23509017702077495, + 0.7422838625560957 + ], + "tvec_std_m": [ + 0.0005922681443657758, + 0.00044718371430569644, + 0.003044773615430149 + ] + }, + "camera_center_std_m": [ + 0.011255169411300251, + 0.011919325044430497, + 0.004596769734438054 + ], + "camera_center_std_mm": [ + 11.255169411300251, + 11.919325044430497, + 4.5967697344380545 + ], + "orientation_std_deg": { + "roll": 0.5094522091773732, + "pitch": 0.4352540861263008, + "yaw": 0.1004884180203833 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 68, + "observed_center_px": [ + 1395.0, + 941.75 + ], + "projected_center_px": [ + 1389.3548583984375, + 940.5469970703125 + ], + "reprojection_error_px": 5.771900878439298, + "confidence": 0.3105318897567382 + }, + { + "marker_id": 46, + "observed_center_px": [ + 1383.25, + 882.5 + ], + "projected_center_px": [ + 1387.9061279296875, + 883.3380737304688 + ], + "reprojection_error_px": 4.7309507369362676, + "confidence": 0.480064078578645 + }, + { + "marker_id": 208, + "observed_center_px": [ + 937.0, + 754.25 + ], + "projected_center_px": [ + 934.9244995117188, + 751.2972412109375 + ], + "reprojection_error_px": 3.6092224568792584, + "confidence": 0.717438637944123 + }, + { + "marker_id": 47, + "observed_center_px": [ + 665.0, + 836.25 + ], + "projected_center_px": [ + 667.4868774414062, + 835.926025390625 + ], + "reprojection_error_px": 2.507891336580391, + "confidence": 0.714264135428559 + }, + { + "marker_id": 56, + "observed_center_px": [ + 1341.75, + 844.0 + ], + "projected_center_px": [ + 1344.8751220703125, + 839.613037109375 + ], + "reprojection_error_px": 5.386263209134431, + "confidence": 0.6720101269988878 + }, + { + "marker_id": 53, + "observed_center_px": [ + 1399.75, + 806.0 + ], + "projected_center_px": [ + 1394.572998046875, + 803.723388671875 + ], + "reprojection_error_px": 5.655467121468141, + "confidence": 0.25536384825957736 + }, + { + "marker_id": 97, + "observed_center_px": [ + 554.75, + 818.0 + ], + "projected_center_px": [ + 552.1571044921875, + 815.3113403320312 + ], + "reprojection_error_px": 3.7352373317630128, + "confidence": 0.7144285455619288 + }, + { + "marker_id": 62, + "observed_center_px": [ + 845.25, + 862.5 + ], + "projected_center_px": [ + 843.9764404296875, + 867.170166015625 + ], + "reprojection_error_px": 4.840702902743903, + "confidence": 0.7019920279258633 + }, + { + "marker_id": 54, + "observed_center_px": [ + 610.5, + 848.75 + ], + "projected_center_px": [ + 607.426025390625, + 853.0718994140625 + ], + "reprojection_error_px": 5.30359636891383, + "confidence": 0.7005026944924987 + }, + { + "marker_id": 55, + "observed_center_px": [ + 675.25, + 746.0 + ], + "projected_center_px": [ + 672.9774169921875, + 745.18359375 + ], + "reprojection_error_px": 2.4147779799470532, + "confidence": 0.6761108765479277 + }, + { + "marker_id": 72, + "observed_center_px": [ + 1346.5, + 753.25 + ], + "projected_center_px": [ + 1346.513671875, + 751.8689575195312 + ], + "reprojection_error_px": 1.381110152386584, + "confidence": 0.63555573802114 + }, + { + "marker_id": 66, + "observed_center_px": [ + 508.25, + 692.75 + ], + "projected_center_px": [ + 508.324951171875, + 692.6304321289062 + ], + "reprojection_error_px": 0.14111751827228045, + "confidence": 0.6485230397697823 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1037.75, + 714.25 + ], + "projected_center_px": [ + 1041.2877197265625, + 715.8521118164062 + ], + "reprojection_error_px": 3.8835838005607632, + "confidence": 0.62142490645665 + }, + { + "marker_id": 95, + "observed_center_px": [ + 612.75, + 626.25 + ], + "projected_center_px": [ + 616.0951538085938, + 624.1017456054688 + ], + "reprojection_error_px": 3.975556683883667, + "confidence": 0.6415498386959416 + }, + { + "marker_id": 51, + "observed_center_px": [ + 739.25, + 559.25 + ], + "projected_center_px": [ + 740.84765625, + 558.3189086914062 + ], + "reprojection_error_px": 1.8491718465580436, + "confidence": 0.6088879208521975 + }, + { + "marker_id": 103, + "observed_center_px": [ + 690.0, + 487.75 + ], + "projected_center_px": [ + 694.0453491210938, + 487.8307800292969 + ], + "reprojection_error_px": 4.046155573463183, + "confidence": 0.5954680843098741 + }, + { + "marker_id": 69, + "observed_center_px": [ + 538.5, + 403.0 + ], + "projected_center_px": [ + 534.0264892578125, + 406.2565612792969 + ], + "reprojection_error_px": 5.5333073045225545, + "confidence": 0.5651459847123547 + }, + { + "marker_id": 58, + "observed_center_px": [ + 633.0, + 428.5 + ], + "projected_center_px": [ + 631.8712768554688, + 432.2906494140625 + ], + "reprojection_error_px": 3.9551281796337383, + "confidence": 0.5885499509109636 + }, + { + "marker_id": 82, + "observed_center_px": [ + 1356.5, + 429.5 + ], + "projected_center_px": [ + 1358.176025390625, + 429.6244201660156 + ], + "reprojection_error_px": 1.6806372266884486, + "confidence": 0.6113473409254715 + }, + { + "marker_id": 73, + "observed_center_px": [ + 1401.5, + 418.5 + ], + "projected_center_px": [ + 1403.8709716796875, + 418.31756591796875 + ], + "reprojection_error_px": 2.377980004156206, + "confidence": 0.22008504273316973 + }, + { + "marker_id": 210, + "observed_center_px": [ + 872.0, + 307.0 + ], + "projected_center_px": [ + 871.6832885742188, + 304.965087890625 + ], + "reprojection_error_px": 2.0594109400751965, + "confidence": 0.60279428383853 + }, + { + "marker_id": 52, + "observed_center_px": [ + 1190.25, + 312.5 + ], + "projected_center_px": [ + 1186.0579833984375, + 316.39373779296875 + ], + "reprojection_error_px": 5.7213807064526625, + "confidence": 0.5743827506632194 + }, + { + "marker_id": 64, + "observed_center_px": [ + 640.5, + 338.0 + ], + "projected_center_px": [ + 640.4821166992188, + 334.9952087402344 + ], + "reprojection_error_px": 3.0048444763765603, + "confidence": 0.5397522426826521 + }, + { + "marker_id": 77, + "observed_center_px": [ + 1125.5, + 230.0 + ], + "projected_center_px": [ + 1128.3472900390625, + 234.04983520507812 + ], + "reprojection_error_px": 4.950578325290361, + "confidence": 0.5278189208292927 + }, + { + "marker_id": 83, + "observed_center_px": [ + 1323.25, + 208.5 + ], + "projected_center_px": [ + 1319.932373046875, + 207.5139923095703 + ], + "reprojection_error_px": 3.461048940088533, + "confidence": 0.5445844663450473 + }, + { + "marker_id": 75, + "observed_center_px": [ + 1108.0, + 182.0 + ], + "projected_center_px": [ + 1111.3167724609375, + 182.71337890625 + ], + "reprojection_error_px": 3.392622734922916, + "confidence": 0.5380549070504695 + }, + { + "marker_id": 61, + "observed_center_px": [ + 1280.0, + 135.0 + ], + "projected_center_px": [ + 1282.8663330078125, + 133.39898681640625 + ], + "reprojection_error_px": 3.283155208898362, + "confidence": 0.5493902887184056 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/robot_state.eval.json b/data/camera_study/Scene10/k3_acf/robot_state.eval.json new file mode 100644 index 0000000..737645c --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 119.62223395641306, + "gt": 120.0, + "error": 0.377766043586945, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 59.822514941360225, + "gt": 60.0, + "error": 0.1774850586397747, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.99235180141754, + "gt": -110.0, + "error": 0.0076481985824443655, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "a", + "estimate": 20.222432016549735, + "gt": 20.0, + "error": 0.22243201654973177, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "b", + "estimate": 31.70530834138698, + "gt": 30.0, + "error": 1.7053083413869672, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "c", + "estimate": 178.35263673958647, + "gt": 180.0, + "error": 1.6473632604135275, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "e", + "estimate": 5.046851729419043, + "gt": 4.0, + "error": 1.0468517294190427, + "unit": "mm", + "observable": true, + "n_markers": 1 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.7520473751144892, + "max_abs_deg": 1.7053083413869672, + "mean_abs_mm": 0.7123088865029938, + "max_abs_mm": 1.0468517294190427 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_acf/robot_state.json b/data/camera_study/Scene10/k3_acf/robot_state.json new file mode 100644 index 0000000..f91be23 --- /dev/null +++ b/data/camera_study/Scene10/k3_acf/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:12Z", + "method": "hybrid", + "movements": { + "x": { + "value": 119.62223395641306, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 59.822514941360225, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.99235180141754, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "a": { + "value": 20.222432016549735, + "unit": "deg", + "observable": true, + "confidence": "medium", + "n_markers": 1 + }, + "b": { + "value": 31.70530834138698, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "c": { + "value": 178.35263673958647, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "e": { + "value": 5.046851729419043, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + } + }, + "residual_rms": 1.4734386983234582, + "num_markers": 20 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/aruco_marker_poses.json b/data/camera_study/Scene10/k3_bcd/aruco_marker_poses.json new file mode 100644 index 0000000..b0a011b --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/aruco_marker_poses.json @@ -0,0 +1,841 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:18:30Z", + "summary": { + "num_cameras": 3, + "num_markers": 18 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.3061987045611714, + -0.20116554610681123, + 0.024909906636409723 + ], + "position_mm": [ + 306.1987045611714, + -201.16554610681123, + 24.909906636409723 + ], + "normal": [ + 0.12203046187302903, + -0.9674262513892675, + 0.22179949165398255 + ], + "corners_m": [ + [ + 0.2928172487978859, + -0.20045060503114734, + 0.03541420143311047 + ], + [ + 0.31662022640375936, + -0.19691965273622414, + 0.03767189260321445 + ], + [ + 0.31960683586579525, + -0.20188979514284697, + 0.01439759728763167 + ], + [ + 0.29575050717724505, + -0.20540213151702644, + 0.01215593522168231 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.083012126680327 + }, + { + "marker_id": 45, + "link": "FingerB", + "position_m": [ + 0.35448346822403853, + -0.1990997583773312, + 0.020182709040362935 + ], + "position_mm": [ + 354.4834682240385, + -199.0997583773312, + 20.182709040362937 + ], + "normal": [ + 0.7784691973136997, + -0.6213808396854295, + -0.08872181752869418 + ], + "corners_m": [ + [ + 0.35835333994020585, + -0.1967137310349807, + 0.03706823919749973 + ], + [ + 0.3645818203773947, + -0.18575909790575154, + 0.015723290503066607 + ], + [ + 0.35081115055869105, + -0.2013880535142798, + 0.0036132217413700654 + ], + [ + 0.34418756201986234, + -0.2125381510543128, + 0.02432608471951535 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.521913755760515 + }, + { + "marker_id": 50, + "link": "Board", + "position_m": [ + 0.5710832583917255, + 0.2116990032274318, + -0.027206452686000037 + ], + "position_mm": [ + 571.0832583917255, + 211.6990032274318, + -27.206452686000038 + ], + "normal": [ + -0.0021351011189268904, + 0.03872167744333939, + 0.9992477535822565 + ], + "corners_m": [ + [ + 0.5597433253260713, + 0.1997060226348541, + -0.026893711012318293 + ], + [ + 0.5595176351052566, + 0.22363229001403293, + -0.02756428106695161 + ], + [ + 0.5822918235446088, + 0.2234173386146327, + -0.02776881159262562 + ], + [ + 0.582780249590965, + 0.20004036164620748, + -0.02659900707210462 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.29135146226515 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16791720543263702, + -0.17362880287967766, + -0.02747375080888322 + ], + "position_mm": [ + 167.91720543263702, + -173.62880287967766, + -27.47375080888322 + ], + "normal": [ + 0.01885556634754705, + -0.006082288732200958, + 0.9998037174273215 + ], + "corners_m": [ + [ + 0.1558285831620141, + -0.18475453474585238, + -0.02733768486449214 + ], + [ + 0.15631012248354134, + -0.1621044924481742, + -0.027160409464591768 + ], + [ + 0.1799635092988105, + -0.16209928794519596, + -0.027654294281783166 + ], + [ + 0.1795666067861821, + -0.18555689637948816, + -0.027742614624665807 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.382640177308005 + }, + { + "marker_id": 62, + "link": "Board", + "position_m": [ + 0.40204411071719404, + -0.17288063919023366, + -0.02803121118708915 + ], + "position_mm": [ + 402.04411071719403, + -172.88063919023367, + -28.03121118708915 + ], + "normal": [ + -0.008593025493367155, + -0.049626125128019005, + 0.9987308984995151 + ], + "corners_m": [ + [ + 0.3907166108293313, + -0.18377656287699715, + -0.02893905060388623 + ], + [ + 0.38994576642061995, + -0.1627177439247683, + -0.027355572638209827 + ], + [ + 0.4130846570564717, + -0.16125703319442974, + -0.02761624703200278 + ], + [ + 0.4144294085623533, + -0.18377121676473954, + -0.028213974474257775 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.651214127696946 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.01959719599468817, + -0.1891549587209903, + -0.027173385092165457 + ], + "position_mm": [ + -19.59719599468817, + -189.1549587209903, + -27.173385092165457 + ], + "normal": [ + -0.0013690596950047752, + -0.03993451097752794, + 0.9992013613424159 + ], + "corners_m": [ + [ + -0.032034380386192, + -0.2000777299900987, + -0.027626877809038577 + ], + [ + -0.03086927634366164, + -0.17784446846803623, + -0.02673688340256198 + ], + [ + -0.007351913975694303, + -0.17850477829399516, + -0.02673086138060643 + ], + [ + -0.008133213273204742, + -0.20019285813183116, + -0.02759891777645485 + ] + ], + "num_cameras": 3, + "edge_length_mm": 22.857285971441993 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.005575105444165888, + -0.27743138997033767, + -0.027415355015344475 + ], + "position_mm": [ + 5.575105444165888, + -277.43138997033765, + -27.415355015344474 + ], + "normal": [ + 0.021487353833786253, + -0.02207211277465515, + 0.9995254451302802 + ], + "corners_m": [ + [ + -0.0063814075681734965, + -0.28887724334500614, + -0.0273675904889414 + ], + [ + -0.005569501196822077, + -0.2660114489306851, + -0.02696783913124729 + ], + [ + 0.017331069390963953, + -0.26604356082452296, + -0.027372143511268824 + ], + [ + 0.01692026115069517, + -0.2887933067811364, + -0.02795384692992038 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.964485206532387 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18671289900640264, + -0.2767623809748032, + -0.027035042415907394 + ], + "position_mm": [ + 186.71289900640264, + -276.7623809748032, + -27.035042415907395 + ], + "normal": [ + -0.01728779257004626, + -0.015625415792302033, + 0.9997284524356466 + ], + "corners_m": [ + [ + 0.17539267492957167, + -0.28870989276368425, + -0.027210355991566983 + ], + [ + 0.17430416077232844, + -0.2656762054997167, + -0.027280754756906434 + ], + [ + 0.19820533551855377, + -0.2654051086208797, + -0.026443293809925442 + ], + [ + 0.19894942480515662, + -0.287258317014932, + -0.02720576510523072 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.114368169403654 + }, + { + "marker_id": 96, + "link": "Board", + "position_m": [ + 0.3718203946498768, + -0.1837009344760794, + -0.02820900376572861 + ], + "position_mm": [ + 371.8203946498768, + -183.7009344760794, + -28.20900376572861 + ], + "normal": [ + 0.0034740978700644374, + -0.0317367185226094, + 0.9994902257358027 + ], + "corners_m": [ + [ + 0.3601217296589553, + -0.19460186516196362, + -0.028921668543352534 + ], + [ + 0.3600538880189521, + -0.17292637116137147, + -0.02741065045791009 + ], + [ + 0.38326420381864224, + -0.17196902579574286, + -0.02826311606244047 + ], + [ + 0.3838417571029574, + -0.19530647578523977, + -0.028240579999211333 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.014689793132913 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10471439944355092, + -0.1909446729893598, + -0.02721691148052883 + ], + "position_mm": [ + 104.71439944355092, + -190.9446729893598, + -27.21691148052883 + ], + "normal": [ + -0.0012898386497211005, + -0.038475127154918756, + 0.9992587257095484 + ], + "corners_m": [ + [ + 0.0928193172728574, + -0.20238460752731524, + -0.027682116959698497 + ], + [ + 0.0926737312233616, + -0.18019485538356209, + -0.02680908477606492 + ], + [ + 0.11649722651239104, + -0.17958845947739846, + -0.02677397712057694 + ], + [ + 0.11686732276559363, + -0.20161076956916352, + -0.027602467065774964 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.035053801397147 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.3112521326266985, + -0.1548908125766179, + 0.15673210091869336 + ], + "position_mm": [ + 311.2521326266985, + -154.89081257661792, + 156.73210091869336 + ], + "normal": [ + -0.3570289654990157, + -0.7236706753296962, + 0.590619227135863 + ], + "corners_m": [ + [ + 0.2997606247366883, + -0.1439879202445568, + 0.16314143306776005 + ], + [ + 0.3222676703139365, + -0.15032400494867587, + 0.1689896581555333 + ], + [ + 0.322787875777308, + -0.16584235969956831, + 0.15028373224315725 + ], + [ + 0.30019235967886115, + -0.15940896541367067, + 0.14451358020832286 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.197762816790576 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.022217722038001382, + -0.02156229216147386, + 0.0019536656654464907 + ], + "position_mm": [ + 22.217722038001384, + -21.56229216147386, + 1.9536656654464908 + ], + "normal": [ + 0.012197582602533385, + -0.0015902880585065282, + 0.9999243421192152 + ], + "corners_m": [ + [ + 0.009994086254927993, + -0.010527874267866215, + 0.0018143324113395719 + ], + [ + 0.03386238731699349, + -0.010167415343390059, + 0.0021607432792118244 + ], + [ + 0.03444670159605312, + -0.031711871072229496, + 0.0014583016899514757 + ], + [ + 0.010567712984030921, + -0.03384200796240967, + 0.00238128528128309 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.189252265340702 + }, + { + "marker_id": 211, + "link": "Board", + "position_m": [ + 0.2534765799640006, + -0.00990533115235763, + 0.0006711686243000316 + ], + "position_mm": [ + 253.4765799640006, + -9.905331152357629, + 0.6711686243000315 + ], + "normal": [ + 0.023329877674467217, + -0.016810548612876453, + 0.9995864756303121 + ], + "corners_m": [ + [ + 0.24219874745725403, + 0.002005050181631297, + 0.0008280087991426144 + ], + [ + 0.2658100613955452, + 0.0006598283581765684, + 0.0008935683482172707 + ], + [ + 0.26508194039842825, + -0.020888471275625264, + -0.0001090963102060543 + ], + [ + 0.24081557060477496, + -0.021397731873613123, + 0.0010721936600462953 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.244732406710717 + }, + { + "marker_id": 218, + "link": "Arm2", + "position_m": [ + 0.35368209771592496, + -0.0994615110956942, + 0.19956017109351087 + ], + "position_mm": [ + 353.68209771592495, + -99.4615110956942, + 199.56017109351086 + ], + "normal": [ + 0.9434809764113783, + -0.26499455108402514, + 0.19905158890500788 + ], + "corners_m": [ + [ + 0.3497794886952876, + -0.10014350713255572, + 0.21689899514496166 + ], + [ + 0.3575047054831509, + -0.08385275617174048, + 0.20249292431168991 + ], + [ + 0.3576879112447054, + -0.09770028835233091, + 0.1826592092085517 + ], + [ + 0.349756285440556, + -0.11614949272614974, + 0.19618955570884017 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.41424801234189 + }, + { + "marker_id": 242, + "link": "Arm1", + "position_m": [ + 0.23239185290556624, + -0.049012419724834194, + 0.25855071298730925 + ], + "position_mm": [ + 232.39185290556625, + -49.012419724834196, + 258.5507129873092 + ], + "normal": [ + -0.04229778620402568, + -0.8740370204619323, + -0.48401465281979456 + ], + "corners_m": [ + [ + 0.24394033458418934, + -0.05604654150722595, + 0.2695576313811693 + ], + [ + 0.2445171455840555, + -0.04381823738460109, + 0.24883192135240267 + ], + [ + 0.2213437643722699, + -0.042966316292294304, + 0.24783498491914083 + ], + [ + 0.21976616708175023, + -0.05321858371521543, + 0.26797831429652424 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.582261852982302 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.2319073256256816, + -0.037600998519204766, + 0.30646158157988457 + ], + "position_mm": [ + 231.90732562568158, + -37.600998519204765, + 306.4615815798846 + ], + "normal": [ + -0.0067499820038893, + -0.49956252545110047, + 0.8662515344331956 + ], + "corners_m": [ + [ + 0.22041307318221312, + -0.027366325749228558, + 0.3121423900279079 + ], + [ + 0.24368357699513693, + -0.027899595225107692, + 0.31228076025009505 + ], + [ + 0.24349070307031256, + -0.04766519174738964, + 0.30061618531273876 + ], + [ + 0.22004194925506368, + -0.04747288135509318, + 0.3008069907287966 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.190919461213266 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3217579247049498, + -0.04570351111412562, + 0.29796867285447903 + ], + "position_mm": [ + 321.7579247049498, + -45.70351111412562, + 297.96867285447905 + ], + "normal": [ + -0.012184340684098977, + -0.7600434781534529, + 0.6497579958403712 + ], + "corners_m": [ + [ + 0.30957155413724485, + -0.03846954289875765, + 0.3063733011297361 + ], + [ + 0.33332491765179034, + -0.03823826168607065, + 0.3067605662072047 + ], + [ + 0.33422743232512003, + -0.05373614578062796, + 0.28896032012808937 + ], + [ + 0.3099077947056438, + -0.05237009409104624, + 0.28978050395288596 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.349191091396694 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.28349063456096196, + -0.041666159582280385, + 0.3024749160781963 + ], + "position_mm": [ + 283.49063456096195, + -41.666159582280386, + 302.4749160781963 + ], + "normal": [ + 0.008986082411193872, + -0.7666097444792096, + 0.6420504263626186 + ], + "corners_m": [ + [ + 0.2709814590053639, + -0.03440374844073949, + 0.31126614659504154 + ], + [ + 0.29489694687764956, + -0.033527824196462636, + 0.31208734686843953 + ], + [ + 0.29605811191900977, + -0.048914868046305154, + 0.29358942289587225 + ], + [ + 0.27202602044182456, + -0.04981819764561427, + 0.2929567479534321 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.012223317511182 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/aruco_positions_initial.json b/data/camera_study/Scene10/k3_bcd/aruco_positions_initial.json new file mode 100644 index 0000000..61aa8a4 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/aruco_positions_initial.json @@ -0,0 +1,410 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:18:29Z", + "summary": { + "num_cameras": 3, + "num_markers": 18, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3061985311293058, + -0.20102564800069694, + 0.024846626739533993 + ], + "position_mm": [ + 306.19853112930576, + -201.02564800069695, + 24.846626739533992 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.3544143987288283, + -0.19907772692264217, + 0.020194970498508887 + ], + "position_mm": [ + 354.4143987288283, + -199.07772692264217, + 20.194970498508887 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 50, + "position_m": [ + 0.5711062778300803, + 0.21167185790153248, + -0.027236392665058094 + ], + "position_mm": [ + 571.1062778300803, + 211.6718579015325, + -27.236392665058094 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16790472500640152, + -0.1736307928678742, + -0.027565390441993493 + ], + "position_mm": [ + 167.90472500640152, + -173.6307928678742, + -27.565390441993493 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.4020709029134767, + -0.17287683472016446, + -0.028123519131218005 + ], + "position_mm": [ + 402.0709029134767, + -172.87683472016445, + -28.123519131218004 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.019687047586059325, + -0.18904874285087692, + -0.027644316419293775 + ], + "position_mm": [ + -19.687047586059325, + -189.04874285087692, + -27.644316419293776 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.00555495322695158, + -0.2774649024805902, + -0.027478254848490234 + ], + "position_mm": [ + 5.5549532269515804, + -277.4649024805902, + -27.478254848490234 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18670280180648224, + -0.2767750701934641, + -0.02712429999447797 + ], + "position_mm": [ + 186.70280180648226, + -276.7750701934641, + -27.12429999447797 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 96, + "position_m": [ + 0.37184117858824706, + -0.18370226748878932, + -0.028303665298172874 + ], + "position_mm": [ + 371.84117858824703, + -183.70226748878932, + -28.303665298172874 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10464053694446832, + -0.19094801129483166, + -0.02722239609966831 + ], + "position_mm": [ + 104.64053694446831, + -190.94801129483167, + -27.222396099668313 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31074800802146557, + -0.15450808505313773, + 0.15671916222272697 + ], + "position_mm": [ + 310.7480080214656, + -154.50808505313773, + 156.71916222272696 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.022198968910322078, + -0.021583815641211285, + 0.0019081402621860344 + ], + "position_mm": [ + 22.198968910322076, + -21.583815641211284, + 1.9081402621860344 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.2534764225210652, + -0.009923104246820535, + 0.0006217621524497073 + ], + "position_mm": [ + 253.47642252106522, + -9.923104246820534, + 0.6217621524497072 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3536314171939221, + -0.09947516209694193, + 0.19956923774735225 + ], + "position_mm": [ + 353.6314171939221, + -99.47516209694193, + 199.56923774735225 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 242, + "position_m": [ + 0.23240905503122794, + -0.04893755321345677, + 0.2586224195999469 + ], + "position_mm": [ + 232.40905503122795, + -48.937553213456766, + 258.6224195999469 + ], + "link": "Arm1", + "normal": [ + 0.0, + 0.0, + -1.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.2311178083974748, + -0.03671009503342191, + 0.3056747067511341 + ], + "position_mm": [ + 231.11780839747482, + -36.71009503342191, + 305.6747067511341 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3209492607624974, + -0.04460980298778073, + 0.29718427648412704 + ], + "position_mm": [ + 320.94926076249743, + -44.60980298778073, + 297.18427648412705 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2826428590363119, + -0.04065528855671498, + 0.30175469458681975 + ], + "position_mm": [ + 282.6428590363119, + -40.65528855671498, + 301.75469458681977 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/aruco_positions_optimized.json b/data/camera_study/Scene10/k3_bcd/aruco_positions_optimized.json new file mode 100644 index 0000000..2b48cea --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/aruco_positions_optimized.json @@ -0,0 +1,409 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:18:29Z", + "summary": { + "num_cameras": 3, + "num_markers": 18, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3062002624413164, + -0.20103505723918122, + 0.02480080819309435 + ], + "position_mm": [ + 306.2002624413164, + -201.0350572391812, + 24.80080819309435 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.3544270406321172, + -0.19913623657300933, + 0.02005438325657474 + ], + "position_mm": [ + 354.4270406321172, + -199.13623657300934, + 20.054383256574738 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 50, + "position_m": [ + 0.5711319307113013, + 0.21166459153776945, + -0.027235486495832077 + ], + "position_mm": [ + 571.1319307113013, + 211.66459153776944, + -27.235486495832077 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16748961023054976, + -0.1748181476622434, + -0.026839834668311423 + ], + "position_mm": [ + 167.48961023054974, + -174.8181476622434, + -26.839834668311422 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.40316603164085135, + -0.169159232717019, + -0.03079505196031081 + ], + "position_mm": [ + 403.1660316408514, + -169.159232717019, + -30.79505196031081 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01969259295090085, + -0.18911122883953918, + -0.027152228036561327 + ], + "position_mm": [ + -19.69259295090085, + -189.1112288395392, + -27.15222803656133 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005604588865595981, + -0.2773529902736345, + -0.027442866065325693 + ], + "position_mm": [ + 5.604588865595981, + -277.35299027363453, + -27.442866065325692 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18685990322756516, + -0.2765993749680437, + -0.027016241897115476 + ], + "position_mm": [ + 186.85990322756516, + -276.5993749680437, + -27.016241897115474 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 96, + "position_m": [ + 0.371575486450306, + -0.187225096280539, + -0.025745571451969457 + ], + "position_mm": [ + 371.575486450306, + -187.225096280539, + -25.745571451969457 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.1056884820811325, + -0.19155373640565468, + -0.026719691481742143 + ], + "position_mm": [ + 105.6884820811325, + -191.5537364056547, + -26.719691481742142 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3118048950739139, + -0.15543227776902604, + 0.15682480822873288 + ], + "position_mm": [ + 311.8048950739139, + -155.43227776902606, + 156.82480822873288 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.02207321696058756, + -0.021213020271561273, + 0.0016941561410164176 + ], + "position_mm": [ + 22.073216960587562, + -21.213020271561273, + 1.6941561410164176 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.2536098556736377, + -0.009915933879067987, + 0.000622784559487703 + ], + "position_mm": [ + 253.6098556736377, + -9.915933879067987, + 0.6227845594877031 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3537203851535006, + -0.09941566413058409, + 0.1996213378870877 + ], + "position_mm": [ + 353.7203851535006, + -99.41566413058409, + 199.6213378870877 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 242, + "position_m": [ + 0.23247484541880328, + -0.04916938444315495, + 0.25842291833210057 + ], + "position_mm": [ + 232.47484541880328, + -49.16938444315495, + 258.42291833210055 + ], + "link": "Arm1", + "normal": [ + 0.0, + 0.0, + -1.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23209919475703014, + -0.037946117246076036, + 0.30662969146679636 + ], + "position_mm": [ + 232.09919475703015, + -37.946117246076035, + 306.6296914667964 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3214981600105588, + -0.04574752209012174, + 0.29782419466706217 + ], + "position_mm": [ + 321.4981600105588, + -45.74752209012174, + 297.82419466706216 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.28438844807598634, + -0.04315368749887768, + 0.3025568431496125 + ], + "position_mm": [ + 284.38844807598633, + -43.15368749887768, + 302.5568431496125 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/render_b_aruco_detection.json b/data/camera_study/Scene10/k3_bcd/render_b_aruco_detection.json new file mode 100644 index 0000000..d09023c --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:26Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "c3991217-d249-4f2e-8618-c5b0d0589f03", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "d4332b5c-26e7-44e9-858e-958721cb7e04", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "ebb3e9a7-1ac3-4387-bc61-857a734943f4", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "bafc7ae7-1140-404f-92ff-7b7f58100881", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "fbaec36b-a5c4-4031-b8f0-644612070b0b", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "f5726359-39a7-4b08-97b9-6dbb82b93bc4", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "3ae1969d-49e5-4ab1-8d1b-1eca3e5b2db7", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "e016f3b3-3486-4115-9b3a-3d222b64292d", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "017c063f-5172-4cfe-8044-46e60b575556", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "c2a00048-264a-4759-bff4-300ceb3b7b01", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "09d2e5a3-5371-4ac0-9c49-ae9baeebd549", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "e1a116d6-a270-40e2-8989-9ccbda3f2a89", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "4f480a05-9e82-40ca-b6be-78d93f81156d", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "22634536-1ec6-4a03-a009-dfc6430e5267", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "6cffeb91-4658-4afa-a08a-54bcc96a0fa4", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "b3c317d0-3c19-48cf-a664-3d636ca45a26", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "b75e5ba7-b481-4d30-91e8-499b3775f4f6", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "a0a041dd-7813-40a8-9889-7977f36b5f6e", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "c4743e5a-9627-44fe-8bda-b473100f8b78", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "5593ada7-d33b-4d9d-ba0d-9a33218e4ed1", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "295539bd-cc8f-49ef-81f2-e37a341ab5cb", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "538750b5-d2f0-4d10-801f-f57fdb437253", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "43f7ea08-cd67-41c5-abd9-800d0b8dce59", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "2ad56344-1c71-46b5-8686-e885a2b5b1e9", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "038f2788-5dc1-4191-a5e1-b1a5f6ae938b", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "49976598-ef27-47c7-8683-6da7d553ebe1", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "9f28737f-466a-4ce5-9ba3-c5571a850121", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "20c713e2-69b6-43e7-a5bc-0f3a77d30c43", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "aebaa7cf-9d8f-4773-9bb9-7424bc6c72d1", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "85821920-572c-4ee8-b7cd-8985f2142635", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "35135202-f5af-461a-bbba-a3b40b735ae5", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "235f34ac-5247-4b87-a9dd-d493ceebaf43", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "33c0a568-00b0-4eb6-9c86-1aee954ed016", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "ea913662-c3e7-43ff-9b67-69a8a368f4fa", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "2313a8bb-7a91-4804-b1b1-08a3b1d4c8bb", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "922e8d04-bfe1-425a-ba5d-02beaacfceaa", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/render_b_camera_pose.json b/data/camera_study/Scene10/k3_bcd/render_b_camera_pose.json new file mode 100644 index 0000000..4cf4303 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:28Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_bcd\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/render_c_aruco_detection.json b/data/camera_study/Scene10/k3_bcd/render_c_aruco_detection.json new file mode 100644 index 0000000..471a972 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/render_c_aruco_detection.json @@ -0,0 +1,1590 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:27Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "c", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.npz", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.png", + "image_sha256": "ef5a04a35de56c777fd09b581d604f04ac76571a3cacba21fe8388dea1f4b077", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 16, + "num_rejected_candidates": 27 + }, + "detections": [ + { + "observation_id": "5160414d-907c-4323-9f67-fb7299d0f610", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 906.0 + ], + [ + 962.0, + 900.0 + ], + [ + 968.0, + 961.0 + ], + [ + 906.0, + 967.0 + ] + ], + "center_px": [ + 934.0, + 933.5 + ], + "quality": { + "area_px": 3818.0, + "perimeter_px": 247.16803741455078, + "sharpness": { + "laplacian_var": 454.5613926289 + }, + "contrast": { + "p05": 15.0, + "p95": 169.0, + "dynamic_range": 154.0, + "mean_gray": 63.889708737864076, + "std_gray": 64.10002098444608 + }, + "geometry": { + "distance_to_center_norm": 0.4976962208747864, + "distance_to_border_px": 113.0 + }, + "edge_ratio": 1.0162376014068253, + "edge_lengths_px": [ + 62.28964614868164, + 61.29437255859375, + 62.28964614868164, + 61.29437255859375 + ] + }, + "confidence": 0.9840218454972077 + }, + { + "observation_id": "01a969cd-90e5-4858-ae34-53f2ceb8ecbf", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 930.0, + 548.0 + ], + [ + 989.0, + 541.0 + ], + [ + 989.0, + 599.0 + ], + [ + 930.0, + 606.0 + ] + ], + "center_px": [ + 959.5, + 573.5 + ], + "quality": { + "area_px": 3422.0, + "perimeter_px": 234.82760620117188, + "sharpness": { + "laplacian_var": 615.7225970995563 + }, + "contrast": { + "p05": 62.0, + "p95": 187.0, + "dynamic_range": 125.0, + "mean_gray": 96.38732088580113, + "std_gray": 49.78957244242085 + }, + "geometry": { + "distance_to_center_norm": 0.2687017321586609, + "distance_to_border_px": 451.0 + }, + "edge_ratio": 1.0243759155273438, + "edge_lengths_px": [ + 59.41380310058594, + 58.0, + 59.41380310058594, + 58.0 + ] + }, + "confidence": 0.976204130575644 + }, + { + "observation_id": "3bd4694b-f2ba-4a71-aa51-3f55ebdff2f6", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 876.0, + 137.0 + ], + [ + 933.0, + 136.0 + ], + [ + 934.0, + 184.0 + ], + [ + 876.0, + 186.0 + ] + ], + "center_px": [ + 904.75, + 160.75 + ], + "quality": { + "area_px": 2789.5, + "perimeter_px": 212.05365753173828, + "sharpness": { + "laplacian_var": 1207.1695390581717 + }, + "contrast": { + "p05": 35.0, + "p95": 183.0, + "dynamic_range": 148.0, + "mean_gray": 111.8242105263158, + "std_gray": 63.973025920534376 + }, + "geometry": { + "distance_to_center_norm": 0.46872973442077637, + "distance_to_border_px": 136.0 + }, + "edge_ratio": 1.2087892695501747, + "edge_lengths_px": [ + 57.00876998901367, + 48.010414123535156, + 58.03447341918945, + 49.0 + ] + }, + "confidence": 0.8272740544529559 + }, + { + "observation_id": "2364d694-4493-40c3-84a9-e79eef94e7f3", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 967.0, + 151.0 + ], + [ + 1024.0, + 150.0 + ], + [ + 1025.0, + 197.0 + ], + [ + 966.0, + 195.0 + ] + ], + "center_px": [ + 995.5, + 173.25 + ], + "quality": { + "area_px": 2639.0, + "perimeter_px": 207.06465911865234, + "sharpness": { + "laplacian_var": 866.93707361974 + }, + "contrast": { + "p05": 32.0, + "p95": 181.0, + "dynamic_range": 149.0, + "mean_gray": 84.58143413007227, + "std_gray": 62.405948444667175 + }, + "geometry": { + "distance_to_center_norm": 0.5096668004989624, + "distance_to_border_px": 150.0 + }, + "edge_ratio": 1.3413328837775513, + "edge_lengths_px": [ + 57.00876998901367, + 47.01063537597656, + 59.03388977050781, + 44.0113639831543 + ] + }, + "confidence": 0.745527088834006 + }, + { + "observation_id": "52c9d28a-d4eb-4218-b5ec-17498e520a1a", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 806.0, + 242.0 + ], + [ + 809.0, + 286.0 + ], + [ + 756.0, + 287.0 + ], + [ + 750.0, + 243.0 + ] + ], + "center_px": [ + 780.25, + 264.5 + ], + "quality": { + "area_px": 2402.5, + "perimeter_px": 197.5277214050293, + "sharpness": { + "laplacian_var": 621.9365906774973 + }, + "contrast": { + "p05": 17.0, + "p95": 154.0, + "dynamic_range": 137.0, + "mean_gray": 67.55327102803739, + "std_gray": 57.80557538313361 + }, + "geometry": { + "distance_to_center_norm": 0.3133457899093628, + "distance_to_border_px": 242.0 + }, + "edge_ratio": 1.2699816583435075, + "edge_lengths_px": [ + 44.10215377807617, + 53.00943374633789, + 44.40720748901367, + 56.00892639160156 + ] + }, + "confidence": 0.7874129468171561 + }, + { + "observation_id": "4ad8ef85-3eb7-408f-8a4f-0296d836a864", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 907.0 + ], + [ + 1083.0, + 943.0 + ], + [ + 1048.0, + 989.0 + ], + [ + 1034.0, + 955.0 + ] + ], + "center_px": [ + 1059.0, + 948.5 + ], + "quality": { + "area_px": 1871.0, + "perimeter_px": 193.12355041503906, + "sharpness": { + "laplacian_var": 160.55753056192668 + }, + "contrast": { + "p05": 14.0, + "p95": 100.0, + "dynamic_range": 86.0, + "mean_gray": 57.872306464485234, + "std_gray": 34.11093550486432 + }, + "geometry": { + "distance_to_center_norm": 0.5898244976997375, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.648246307313746, + "edge_lengths_px": [ + 37.947330474853516, + 57.80138397216797, + 36.769554138183594, + 60.605281829833984 + ] + }, + "confidence": 0.606705439328279 + }, + { + "observation_id": "3dcf846c-e0ec-4375-b354-94328c2d59e8", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 244.0, + 1048.0 + ], + [ + 264.0, + 1017.0 + ], + [ + 321.0, + 1020.0 + ], + [ + 304.0, + 1051.0 + ] + ], + "center_px": [ + 283.25, + 1034.0 + ], + "quality": { + "area_px": 1869.0, + "perimeter_px": 189.40092086791992, + "sharpness": { + "laplacian_var": 1265.0345875985527 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 76.71025841816758, + "std_gray": 66.37082174674407 + }, + "geometry": { + "distance_to_center_norm": 0.7326483130455017, + "distance_to_border_px": 29.0 + }, + "edge_ratio": 1.6991763224534673, + "edge_lengths_px": [ + 36.8917350769043, + 57.07889175415039, + 35.35533905029297, + 60.074954986572266 + ] + }, + "confidence": 0.34134185624863755 + }, + { + "observation_id": "49d72220-2670-43ca-b642-7d932c50aad4", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1145.0, + 1043.0 + ], + [ + 1138.0, + 1012.0 + ], + [ + 1196.0, + 1014.0 + ], + [ + 1207.0, + 1045.0 + ] + ], + "center_px": [ + 1171.5, + 1028.5 + ], + "quality": { + "area_px": 1842.0, + "perimeter_px": 184.74098777770996, + "sharpness": { + "laplacian_var": 687.4367780505567 + }, + "contrast": { + "p05": 12.0, + "p95": 150.0, + "dynamic_range": 138.0, + "mean_gray": 38.430939226519335, + "std_gray": 45.8298447545998 + }, + "geometry": { + "distance_to_center_norm": 0.7391056418418884, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.9518967949661667, + "edge_lengths_px": [ + 31.78049659729004, + 58.03447341918945, + 32.893768310546875, + 62.032249450683594 + ] + }, + "confidence": 0.3586255184214969 + }, + { + "observation_id": "83e2691a-dd44-4993-9e1a-50a7d5082dfc", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1069.0, + 1053.0 + ], + [ + 1066.0, + 1021.0 + ], + [ + 1125.0, + 1025.0 + ], + [ + 1130.0, + 1056.0 + ] + ], + "center_px": [ + 1097.5, + 1038.75 + ], + "quality": { + "area_px": 1876.0, + "perimeter_px": 183.7501163482666, + "sharpness": { + "laplacian_var": 663.3293461676229 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 73.64136328427576, + "std_gray": 59.64429126415427 + }, + "geometry": { + "distance_to_center_norm": 0.6950067281723022, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.9449837049520267, + "edge_lengths_px": [ + 32.140316009521484, + 59.13543701171875, + 31.400636672973633, + 61.073726654052734 + ] + }, + "confidence": 0.24678869996591526 + }, + { + "observation_id": "eacaf946-b4fa-42c2-8218-9f68e655d775", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 110.0, + 1003.0 + ], + [ + 134.0, + 974.0 + ], + [ + 187.0, + 977.0 + ], + [ + 166.0, + 1006.0 + ] + ], + "center_px": [ + 149.25, + 990.0 + ], + "quality": { + "area_px": 1648.0, + "perimeter_px": 182.61322402954102, + "sharpness": { + "laplacian_var": 1879.918969718065 + }, + "contrast": { + "p05": 12.0, + "p95": 173.0, + "dynamic_range": 161.0, + "mean_gray": 75.38733031674208, + "std_gray": 68.98136821451206 + }, + "geometry": { + "distance_to_center_norm": 0.8075687885284424, + "distance_to_border_px": 74.0 + }, + "edge_ratio": 1.5662688751728226, + "edge_lengths_px": [ + 37.64305877685547, + 53.0848388671875, + 35.80502700805664, + 56.080299377441406 + ] + }, + "confidence": 0.6384599833726886 + }, + { + "observation_id": "f25f6947-0c4b-42c5-bb15-16b3d062b896", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 403.0, + 1023.0 + ], + [ + 418.0, + 993.0 + ], + [ + 474.0, + 996.0 + ], + [ + 462.0, + 1025.0 + ] + ], + "center_px": [ + 439.25, + 1009.25 + ], + "quality": { + "area_px": 1730.0, + "perimeter_px": 180.03991889953613, + "sharpness": { + "laplacian_var": 950.8899639839916 + }, + "contrast": { + "p05": 20.0, + "p95": 172.0, + "dynamic_range": 152.0, + "mean_gray": 116.20102214650767, + "std_gray": 61.636543611115094 + }, + "geometry": { + "distance_to_center_norm": 0.6075818538665771, + "distance_to_border_px": 55.0 + }, + "edge_ratio": 1.8809760926212427, + "edge_lengths_px": [ + 33.541019439697266, + 56.080299377441406, + 31.38471031188965, + 59.03388977050781 + ] + }, + "confidence": 0.5316388676723932 + }, + { + "observation_id": "3be216bb-0bdb-4e34-b3ee-158d38beaa97", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 564.0, + 1008.0 + ], + [ + 576.0, + 980.0 + ], + [ + 632.0, + 984.0 + ], + [ + 622.0, + 1013.0 + ] + ], + "center_px": [ + 598.5, + 996.25 + ], + "quality": { + "area_px": 1674.0, + "perimeter_px": 175.49660873413086, + "sharpness": { + "laplacian_var": 1393.7942302804506 + }, + "contrast": { + "p05": 28.0, + "p95": 171.0, + "dynamic_range": 143.0, + "mean_gray": 84.15052816901408, + "std_gray": 59.917896140385736 + }, + "geometry": { + "distance_to_center_norm": 0.5246118903160095, + "distance_to_border_px": 67.0 + }, + "edge_ratio": 1.9110048603024625, + "edge_lengths_px": [ + 30.463092803955078, + 56.14267349243164, + 30.675724029541016, + 58.215118408203125 + ] + }, + "confidence": 0.5232849066860699 + }, + { + "observation_id": "e7ba6ae7-1de6-424b-9734-153a97e97145", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 760.0, + 132.0 + ], + [ + 813.0, + 133.0 + ], + [ + 809.0, + 166.0 + ], + [ + 754.0, + 165.0 + ] + ], + "center_px": [ + 784.0, + 149.0 + ], + "quality": { + "area_px": 1787.0, + "perimeter_px": 174.80108261108398, + "sharpness": { + "laplacian_var": 1005.8917346464419 + }, + "contrast": { + "p05": 15.0, + "p95": 180.0, + "dynamic_range": 165.0, + "mean_gray": 83.3435684647303, + "std_gray": 70.8540535076814 + }, + "geometry": { + "distance_to_center_norm": 0.4402258098125458, + "distance_to_border_px": 132.0 + }, + "edge_ratio": 1.6548298326729072, + "edge_lengths_px": [ + 53.00943374633789, + 33.241539001464844, + 55.009090423583984, + 33.541019439697266 + ] + }, + "confidence": 0.6042917406104434 + }, + { + "observation_id": "ba5254de-ab98-414e-86f6-b6bfdcb59aad", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 760.0 + ], + [ + 387.0, + 761.0 + ], + [ + 376.0, + 780.0 + ], + [ + 327.0, + 778.0 + ] + ], + "center_px": [ + 357.5, + 769.75 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 140.20953559875488, + "sharpness": { + "laplacian_var": 1714.673355751594 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 84.31152647975078, + "std_gray": 58.656873492799065 + }, + "geometry": { + "distance_to_center_norm": 0.47686126828193665, + "distance_to_border_px": 300.0 + }, + "edge_ratio": 2.233747159110654, + "edge_lengths_px": [ + 47.01063537597656, + 21.954498291015625, + 49.04079818725586, + 22.203603744506836 + ] + }, + "confidence": 0.27039765782644665 + }, + { + "observation_id": "63236c81-aaf1-4577-b309-8dcf53a91fe0", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 808.0, + 771.0 + ], + [ + 855.0, + 774.0 + ], + [ + 851.0, + 794.0 + ], + [ + 801.0, + 790.0 + ] + ], + "center_px": [ + 828.75, + 782.25 + ], + "quality": { + "area_px": 965.0, + "perimeter_px": 137.8999252319336, + "sharpness": { + "laplacian_var": 980.8435808712625 + }, + "contrast": { + "p05": 19.0, + "p95": 166.0, + "dynamic_range": 147.0, + "mean_gray": 88.28657616892912, + "std_gray": 59.05852033640571 + }, + "geometry": { + "distance_to_center_norm": 0.2950447201728821, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 2.4772131710716905, + "edge_lengths_px": [ + 47.095645904541016, + 20.39607810974121, + 50.15974426269531, + 20.248456954956055 + ] + }, + "confidence": 0.25970043306972035 + }, + { + "observation_id": "ca3f88b6-49b5-4f4f-b3a6-9bedf46bc413", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1385.0, + 700.0 + ], + [ + 1377.0, + 686.0 + ], + [ + 1418.0, + 688.0 + ], + [ + 1428.0, + 701.0 + ] + ], + "center_px": [ + 1402.0, + 693.75 + ], + "quality": { + "area_px": 553.5, + "perimeter_px": 116.58611488342285, + "sharpness": { + "laplacian_var": 1051.381376540531 + }, + "contrast": { + "p05": 12.0, + "p95": 126.0, + "dynamic_range": 114.0, + "mean_gray": 64.25196850393701, + "std_gray": 39.063170154625084 + }, + "geometry": { + "distance_to_center_norm": 0.7767954468727112, + "distance_to_border_px": 12.0 + }, + "edge_ratio": 2.6674678757353125, + "edge_lengths_px": [ + 16.124515533447266, + 41.04875183105469, + 16.401220321655273, + 43.011627197265625 + ] + }, + "confidence": 0.03320002493960217 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 975.0, + 684.0 + ], + [ + 987.0, + 688.0 + ], + [ + 989.0, + 763.0 + ], + [ + 968.0, + 765.0 + ] + ], + "center_px": [ + 979.75, + 725.0 + ], + "area_px": 1289.5 + }, + { + "image_points_px": [ + [ + 790.0, + 489.0 + ], + [ + 804.0, + 493.0 + ], + [ + 807.0, + 565.0 + ], + [ + 793.0, + 568.0 + ] + ], + "center_px": [ + 798.5, + 528.75 + ], + "area_px": 1055.5 + }, + { + "image_points_px": [ + [ + 536.0, + 599.0 + ], + [ + 540.0, + 677.0 + ], + [ + 531.0, + 664.0 + ], + [ + 529.0, + 604.0 + ] + ], + "center_px": [ + 534.0, + 636.0 + ], + "area_px": 540.0 + }, + { + "image_points_px": [ + [ + 782.0, + 864.0 + ], + [ + 789.0, + 841.0 + ], + [ + 842.0, + 845.0 + ], + [ + 837.0, + 868.0 + ] + ], + "center_px": [ + 812.5, + 854.5 + ], + "area_px": 1266.0 + }, + { + "image_points_px": [ + [ + 1232.0, + 678.0 + ], + [ + 1273.0, + 679.0 + ], + [ + 1279.0, + 694.0 + ], + [ + 1237.0, + 692.0 + ] + ], + "center_px": [ + 1255.25, + 685.75 + ], + "area_px": 593.5 + }, + { + "image_points_px": [ + [ + 1154.0, + 689.0 + ], + [ + 1194.0, + 690.0 + ], + [ + 1201.0, + 704.0 + ], + [ + 1160.0, + 703.0 + ] + ], + "center_px": [ + 1177.25, + 696.5 + ], + "area_px": 560.5 + }, + { + "image_points_px": [ + [ + 425.0, + 674.0 + ], + [ + 435.0, + 661.0 + ], + [ + 473.0, + 663.0 + ], + [ + 462.0, + 676.0 + ] + ], + "center_px": [ + 448.75, + 668.5 + ], + "area_px": 508.5 + }, + { + "image_points_px": [ + [ + 1281.0, + 650.0 + ], + [ + 1319.0, + 651.0 + ], + [ + 1327.0, + 663.0 + ], + [ + 1288.0, + 663.0 + ] + ], + "center_px": [ + 1303.75, + 656.75 + ], + "area_px": 477.5 + }, + { + "image_points_px": [ + [ + 1068.0, + 669.0 + ], + [ + 1077.0, + 679.0 + ], + [ + 1075.0, + 717.0 + ], + [ + 1068.0, + 710.0 + ] + ], + "center_px": [ + 1072.0, + 693.75 + ], + "area_px": 324.5 + }, + { + "image_points_px": [ + [ + 784.0, + 627.0 + ], + [ + 788.0, + 615.0 + ], + [ + 824.0, + 619.0 + ], + [ + 820.0, + 629.0 + ] + ], + "center_px": [ + 804.0, + 622.5 + ], + "area_px": 408.0 + }, + { + "image_points_px": [ + [ + 426.0, + 594.0 + ], + [ + 434.0, + 583.0 + ], + [ + 467.0, + 585.0 + ], + [ + 462.0, + 595.0 + ] + ], + "center_px": [ + 447.25, + 589.25 + ], + "area_px": 372.0 + }, + { + "image_points_px": [ + [ + 978.0, + 308.0 + ], + [ + 1021.0, + 310.0 + ], + [ + 1019.0, + 316.0 + ], + [ + 991.0, + 314.0 + ] + ], + "center_px": [ + 1002.25, + 312.0 + ], + "area_px": 202.0 + }, + { + "image_points_px": [ + [ + 936.0, + 582.0 + ], + [ + 951.0, + 580.0 + ], + [ + 965.0, + 595.0 + ], + [ + 937.0, + 600.0 + ] + ], + "center_px": [ + 947.25, + 589.25 + ], + "area_px": 381.0 + }, + { + "image_points_px": [ + [ + 120.0, + 998.0 + ], + [ + 124.0, + 993.0 + ], + [ + 158.0, + 996.0 + ], + [ + 153.0, + 1001.0 + ] + ], + "center_px": [ + 138.75, + 997.0 + ], + "area_px": 181.0 + }, + { + "image_points_px": [ + [ + 734.0, + 639.0 + ], + [ + 730.0, + 666.0 + ], + [ + 725.0, + 676.0 + ], + [ + 729.0, + 642.0 + ] + ], + "center_px": [ + 729.5, + 655.75 + ], + "area_px": 126.5 + }, + { + "image_points_px": [ + [ + 1360.0, + 644.0 + ], + [ + 1390.0, + 645.0 + ], + [ + 1394.0, + 648.0 + ], + [ + 1366.0, + 647.0 + ] + ], + "center_px": [ + 1377.5, + 646.0 + ], + "area_px": 82.0 + }, + { + "image_points_px": [ + [ + 339.0, + 768.0 + ], + [ + 354.0, + 762.0 + ], + [ + 372.0, + 767.0 + ], + [ + 366.0, + 771.0 + ] + ], + "center_px": [ + 357.75, + 767.0 + ], + "area_px": 154.5 + }, + { + "image_points_px": [ + [ + 732.0, + 273.0 + ], + [ + 735.0, + 284.0 + ], + [ + 735.0, + 305.0 + ], + [ + 732.0, + 301.0 + ] + ], + "center_px": [ + 733.5, + 290.75 + ], + "area_px": 73.5 + }, + { + "image_points_px": [ + [ + 990.0, + 337.0 + ], + [ + 996.0, + 351.0 + ], + [ + 997.0, + 366.0 + ], + [ + 991.0, + 364.0 + ] + ], + "center_px": [ + 993.5, + 354.5 + ], + "area_px": 118.0 + }, + { + "image_points_px": [ + [ + 774.0, + 249.0 + ], + [ + 799.0, + 247.0 + ], + [ + 800.0, + 251.0 + ], + [ + 776.0, + 252.0 + ] + ], + "center_px": [ + 787.25, + 249.75 + ], + "area_px": 88.0 + }, + { + "image_points_px": [ + [ + 900.0, + 973.0 + ], + [ + 923.0, + 973.0 + ], + [ + 926.0, + 975.0 + ], + [ + 903.0, + 975.0 + ] + ], + "center_px": [ + 913.0, + 974.0 + ], + "area_px": 46.0 + }, + { + "image_points_px": [ + [ + 957.0, + 967.0 + ], + [ + 968.0, + 965.0 + ], + [ + 970.0, + 984.0 + ], + [ + 957.0, + 971.0 + ] + ], + "center_px": [ + 963.0, + 971.75 + ], + "area_px": 132.5 + }, + { + "image_points_px": [ + [ + 1374.0, + 718.0 + ], + [ + 1394.0, + 718.0 + ], + [ + 1398.0, + 721.0 + ], + [ + 1378.0, + 721.0 + ] + ], + "center_px": [ + 1386.0, + 719.5 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 999.0, + 762.0 + ], + [ + 1017.0, + 761.0 + ], + [ + 1023.0, + 763.0 + ], + [ + 1001.0, + 764.0 + ] + ], + "center_px": [ + 1010.0, + 762.5 + ], + "area_px": 44.0 + }, + { + "image_points_px": [ + [ + 565.0, + 1022.0 + ], + [ + 584.0, + 1021.0 + ], + [ + 588.0, + 1023.0 + ], + [ + 573.0, + 1024.0 + ] + ], + "center_px": [ + 577.5, + 1022.5 + ], + "area_px": 40.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 1023.0 + ], + [ + 1182.0, + 1022.0 + ], + [ + 1185.0, + 1028.0 + ], + [ + 1169.0, + 1029.0 + ] + ], + "center_px": [ + 1175.5, + 1025.5 + ], + "area_px": 99.0 + }, + { + "image_points_px": [ + [ + 222.0, + 1034.0 + ], + [ + 241.0, + 1035.0 + ], + [ + 244.0, + 1037.0 + ], + [ + 231.0, + 1037.0 + ] + ], + "center_px": [ + 234.5, + 1035.75 + ], + "area_px": 37.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/render_c_camera_pose.json b/data/camera_study/Scene10/k3_bcd/render_c_camera_pose.json new file mode 100644 index 0000000..541621a --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/render_c_camera_pose.json @@ -0,0 +1,327 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:28Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_bcd\\render_c_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "c", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 9, + "used_marker_ids": [ + 58, + 62, + 96, + 64, + 103, + 51, + 210, + 211, + 50 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.00850343514866048, + 0.001919637477748798, + 0.0018871327733089188, + 0.0018871325208839012 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.3388483305404, + "residual_median_px": 5.837108638574855, + "residual_max_px": 7.851369272055891, + "sigma2_normalized": 5.341903727059073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9935113787651062, + 0.11363770067691803, + -0.004644200671464205 + ], + [ + 0.029086070135235786, + -0.2933460772037506, + -0.9555637240409851 + ], + [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + ], + "translation_m": [ + -0.19824764132499695, + 0.1074121966958046, + 1.0073933601379395 + ], + "rvec_rad": [ + 1.86796171410195, + 0.10327005514572164, + -0.08291676493169096 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30460041761398315, + -0.9022090435028076, + 0.3986456096172333 + ], + "position_mm": [ + 304.60040283203125, + -902.2090454101562, + 398.6455993652344 + ], + "orientation_deg": { + "roll": 107.25025177001953, + "pitch": 6.31245756149292, + "yaw": 1.676913857460022 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 6.283611814350516e-05, + 9.967111903139419e-06, + 1.624804290129494e-05, + -1.577288611905233e-07, + -9.565179969225538e-06, + 1.214388304696983e-06 + ], + [ + 9.967111903139312e-06, + 2.0431750224389534e-05, + -7.770857724352742e-06, + 2.1849187906882535e-06, + -2.4827730156902525e-06, + 5.834590888095247e-06 + ], + [ + 1.6248042901295073e-05, + -7.770857724352725e-06, + 6.21251942958819e-05, + -3.1440970658187606e-06, + -8.329233497858997e-06, + -1.5661804579884994e-05 + ], + [ + -1.5772886119053934e-07, + 2.184918790688258e-06, + -3.14409706581878e-06, + 7.844339725202242e-07, + 9.395641917069299e-08, + 8.922273151494254e-07 + ], + [ + -9.56517996922555e-06, + -2.482773015690273e-06, + -8.329233497858978e-06, + 9.395641917068812e-08, + 3.1785216658280216e-06, + 3.2374032099410526e-06 + ], + [ + 1.2143883046968984e-06, + 5.834590888095236e-06, + -1.566180457988501e-05, + 8.922273151494167e-07, + 3.237403209941067e-06, + 1.5241091941001921e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.45417926818777943, + 0.2589854810186854, + 0.45160268193428 + ], + "tvec_std_m": [ + 0.0008856827719450255, + 0.0017828408975082497, + 0.0039039841112640202 + ] + }, + "camera_center_std_m": [ + 0.006432764403295309, + 0.003956846704431741, + 0.006949550969225763 + ], + "camera_center_std_mm": [ + 6.432764403295309, + 3.956846704431741, + 6.949550969225763 + ], + "orientation_std_deg": { + "roll": 0.42334339423542505, + "pitch": 0.36500393244331925, + "yaw": 0.2715300326454473 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 58, + "observed_center_px": [ + 283.25, + 1034.0 + ], + "projected_center_px": [ + 289.1312255859375, + 1036.682861328125 + ], + "reprojection_error_px": 6.4642524160675014, + "confidence": 0.34134185624863755 + }, + { + "marker_id": 62, + "observed_center_px": [ + 1171.5, + 1028.5 + ], + "projected_center_px": [ + 1177.343505859375, + 1029.8663330078125 + ], + "reprojection_error_px": 6.0011187804265225, + "confidence": 0.3586255184214969 + }, + { + "marker_id": 96, + "observed_center_px": [ + 1097.5, + 1038.75 + ], + "projected_center_px": [ + 1091.03857421875, + 1039.8277587890625 + ], + "reprojection_error_px": 6.550693637623701, + "confidence": 0.24678869996591526 + }, + { + "marker_id": 64, + "observed_center_px": [ + 149.25, + 990.0 + ], + "projected_center_px": [ + 146.69277954101562, + 989.6632080078125 + ], + "reprojection_error_px": 2.579303262869623, + "confidence": 0.6384599833726886 + }, + { + "marker_id": 103, + "observed_center_px": [ + 439.25, + 1009.25 + ], + "projected_center_px": [ + 443.3174743652344, + 1005.0634155273438 + ], + "reprojection_error_px": 5.837108638574855, + "confidence": 0.5316388676723932 + }, + { + "marker_id": 51, + "observed_center_px": [ + 598.5, + 996.25 + ], + "projected_center_px": [ + 598.08349609375, + 993.7927856445312 + ], + "reprojection_error_px": 2.492263608176955, + "confidence": 0.5232849066860699 + }, + { + "marker_id": 210, + "observed_center_px": [ + 357.5, + 769.75 + ], + "projected_center_px": [ + 354.4071044921875, + 771.2721557617188 + ], + "reprojection_error_px": 3.4471670666186647, + "confidence": 0.27039765782644665 + }, + { + "marker_id": 211, + "observed_center_px": [ + 828.75, + 782.25 + ], + "projected_center_px": [ + 820.9069213867188, + 782.6107177734375 + ], + "reprojection_error_px": 7.851369272055891, + "confidence": 0.25970043306972035 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1402.0, + 693.75 + ], + "projected_center_px": [ + 1405.9166259765625, + 693.873291015625 + ], + "reprojection_error_px": 3.918566027875248, + "confidence": 0.03320002493960217 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/render_d_aruco_detection.json b/data/camera_study/Scene10/k3_bcd/render_d_aruco_detection.json new file mode 100644 index 0000000..6bf5f2f --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/render_d_aruco_detection.json @@ -0,0 +1,1311 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:27Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "d", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.npz", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.png", + "image_sha256": "62e03d1a72df6ace64f3edf39f814b0e48c63c4b06cd21705bd69cd08afa442a", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 15, + "num_rejected_candidates": 18 + }, + "detections": [ + { + "observation_id": "16a3a5ed-3a54-4f4a-bf57-94105b8dcdab", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 742.0, + 906.0 + ], + [ + 797.0, + 913.0 + ], + [ + 796.0, + 973.0 + ], + [ + 741.0, + 965.0 + ] + ], + "center_px": [ + 769.0, + 939.25 + ], + "quality": { + "area_px": 3280.0, + "perimeter_px": 230.03924179077148, + "sharpness": { + "laplacian_var": 235.03135651883824 + }, + "contrast": { + "p05": 24.0, + "p95": 170.0, + "dynamic_range": 146.0, + "mean_gray": 71.34429223744293, + "std_gray": 60.34595999329839 + }, + "geometry": { + "distance_to_center_norm": 0.4469395875930786, + "distance_to_border_px": 107.0 + }, + "edge_ratio": 1.0823298168515911, + "edge_lengths_px": [ + 55.44366455078125, + 60.008331298828125, + 55.578773498535156, + 59.00847244262695 + ] + }, + "confidence": 0.9239327831777916 + }, + { + "observation_id": "1ccff371-105e-4aa2-9e4a-bb2a0cf2064f", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 889.0, + 943.0 + ], + [ + 916.0, + 987.0 + ], + [ + 864.0, + 1021.0 + ], + [ + 835.0, + 979.0 + ] + ], + "center_px": [ + 876.0, + 982.5 + ], + "quality": { + "area_px": 3259.0, + "perimeter_px": 229.6916618347168, + "sharpness": { + "laplacian_var": 61.572482510446996 + }, + "contrast": { + "p05": 8.0, + "p95": 102.0, + "dynamic_range": 94.0, + "mean_gray": 52.3137789904502, + "std_gray": 40.795642464164395 + }, + "geometry": { + "distance_to_center_norm": 0.5213257670402527, + "distance_to_border_px": 59.0 + }, + "edge_ratio": 1.2715701940712816, + "edge_lengths_px": [ + 51.62363815307617, + 62.12889862060547, + 51.03919982910156, + 64.8999252319336 + ] + }, + "confidence": 0.4035200127470337 + }, + { + "observation_id": "ba12b12c-f2b5-4519-9013-08ee36ddb06d", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 685.0 + ], + [ + 956.0, + 716.0 + ], + [ + 934.0, + 773.0 + ], + [ + 895.0, + 742.0 + ] + ], + "center_px": [ + 925.75, + 729.0 + ], + "quality": { + "area_px": 2892.0, + "perimeter_px": 221.4241943359375, + "sharpness": { + "laplacian_var": 65.75925962559084 + }, + "contrast": { + "p05": 5.0, + "p95": 83.0, + "dynamic_range": 78.0, + "mean_gray": 36.39875065070276, + "std_gray": 31.82755916882834 + }, + "geometry": { + "distance_to_center_norm": 0.31042397022247314, + "distance_to_border_px": 307.0 + }, + "edge_ratio": 1.2533531491081307, + "edge_lengths_px": [ + 49.04079818725586, + 61.09828186035156, + 49.81967544555664, + 61.46543884277344 + ] + }, + "confidence": 0.4262916519882062 + }, + { + "observation_id": "01f2274f-06f5-4684-9496-b9d7e2b0f925", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1006.0, + 434.0 + ], + [ + 1040.0, + 464.0 + ], + [ + 1023.0, + 519.0 + ], + [ + 983.0, + 494.0 + ] + ], + "center_px": [ + 1013.0, + 477.75 + ], + "quality": { + "area_px": 2677.5, + "perimeter_px": 214.33768844604492, + "sharpness": { + "laplacian_var": 63.84585482864622 + }, + "contrast": { + "p05": 4.0, + "p95": 81.0, + "dynamic_range": 77.0, + "mean_gray": 29.46114864864865, + "std_gray": 31.00050238673812 + }, + "geometry": { + "distance_to_center_norm": 0.33282196521759033, + "distance_to_border_px": 400.0 + }, + "edge_ratio": 1.4171338730692165, + "edge_lengths_px": [ + 45.343135833740234, + 57.567352294921875, + 47.16990661621094, + 64.25729370117188 + ] + }, + "confidence": 0.3613610332351109 + }, + { + "observation_id": "d2504a53-9a2a-418c-b67a-2b17dc45b032", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 994.0, + 187.0 + ], + [ + 1046.0, + 190.0 + ], + [ + 1029.0, + 238.0 + ], + [ + 978.0, + 230.0 + ] + ], + "center_px": [ + 1011.75, + 211.25 + ], + "quality": { + "area_px": 2434.0, + "perimeter_px": 200.51189422607422, + "sharpness": { + "laplacian_var": 737.7557921421737 + }, + "contrast": { + "p05": 56.0, + "p95": 183.0, + "dynamic_range": 127.0, + "mean_gray": 101.10567632850241, + "std_gray": 52.34786160983359 + }, + "geometry": { + "distance_to_center_norm": 0.48837676644325256, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.1352691889411037, + "edge_lengths_px": [ + 52.08646774291992, + 50.9215087890625, + 51.62363815307617, + 45.880279541015625 + ] + }, + "confidence": 0.8808483571484285 + }, + { + "observation_id": "9f02c92b-4377-4e1d-8a3a-20a52391fe6d", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 920.0, + 169.0 + ], + [ + 969.0, + 170.0 + ], + [ + 953.0, + 218.0 + ], + [ + 902.0, + 215.0 + ] + ], + "center_px": [ + 936.0, + 193.0 + ], + "quality": { + "area_px": 2384.0, + "perimeter_px": 200.09115982055664, + "sharpness": { + "laplacian_var": 675.8367068624159 + }, + "contrast": { + "p05": 58.0, + "p95": 184.0, + "dynamic_range": 126.0, + "mean_gray": 125.61893054701905, + "std_gray": 52.20639937589474 + }, + "geometry": { + "distance_to_center_norm": 0.4541509747505188, + "distance_to_border_px": 169.0 + }, + "edge_ratio": 1.042398381472962, + "edge_lengths_px": [ + 49.01020431518555, + 50.59644317626953, + 51.088157653808594, + 49.39635467529297 + ] + }, + "confidence": 0.9593261249954639 + }, + { + "observation_id": "3bbbc001-8955-4ea3-a1e7-b0e4136a29c7", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 837.0, + 569.0 + ], + [ + 877.0, + 568.0 + ], + [ + 857.0, + 624.0 + ], + [ + 816.0, + 623.0 + ] + ], + "center_px": [ + 846.75, + 596.0 + ], + "quality": { + "area_px": 2227.5, + "perimeter_px": 198.4285888671875, + "sharpness": { + "laplacian_var": 456.8683277511788 + }, + "contrast": { + "p05": 43.0, + "p95": 185.0, + "dynamic_range": 142.0, + "mean_gray": 85.2088948787062, + "std_gray": 56.487417453665174 + }, + "geometry": { + "distance_to_center_norm": 0.15396633744239807, + "distance_to_border_px": 456.0 + }, + "edge_ratio": 1.486142577830794, + "edge_lengths_px": [ + 40.01249694824219, + 59.46427536010742, + 41.01219177246094, + 57.93962478637695 + ] + }, + "confidence": 0.6728829487273165 + }, + { + "observation_id": "ad699b36-9959-4f2c-96e0-9af96905b7da", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 380.0, + 1053.0 + ], + [ + 418.0, + 1028.0 + ], + [ + 462.0, + 1043.0 + ], + [ + 426.0, + 1069.0 + ] + ], + "center_px": [ + 421.5, + 1048.25 + ], + "quality": { + "area_px": 1721.0, + "perimeter_px": 185.08320999145508, + "sharpness": { + "laplacian_var": 401.0408793146889 + }, + "contrast": { + "p05": 16.0, + "p95": 171.0, + "dynamic_range": 155.0, + "mean_gray": 91.72839506172839, + "std_gray": 64.0365880429505 + }, + "geometry": { + "distance_to_center_norm": 0.6549152135848999, + "distance_to_border_px": 11.0 + }, + "edge_ratio": 1.0967404836818018, + "edge_lengths_px": [ + 45.486263275146484, + 46.48655700683594, + 44.40720748901367, + 48.703182220458984 + ] + }, + "confidence": 0.20059440065661768 + }, + { + "observation_id": "f062fb57-cf66-4c96-8a48-8e34e13ab1d7", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 839.0, + 266.0 + ], + [ + 854.0, + 309.0 + ], + [ + 811.0, + 306.0 + ], + [ + 796.0, + 265.0 + ] + ], + "center_px": [ + 825.0, + 286.5 + ], + "quality": { + "area_px": 1776.0, + "perimeter_px": 175.31510162353516, + "sharpness": { + "laplacian_var": 240.92017426523984 + }, + "contrast": { + "p05": 22.0, + "p95": 153.0, + "dynamic_range": 131.0, + "mean_gray": 74.06045751633987, + "std_gray": 53.6075481691311 + }, + "geometry": { + "distance_to_center_norm": 0.3048724830150604, + "distance_to_border_px": 265.0 + }, + "edge_ratio": 1.0588111649951575, + "edge_lengths_px": [ + 45.54119110107422, + 43.104522705078125, + 43.65776062011719, + 43.011627197265625 + ] + }, + "confidence": 0.9444554733275536 + }, + { + "observation_id": "033f1b15-5d4d-4251-9215-6a848dea4c75", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 992.0, + 902.0 + ], + [ + 1041.0, + 917.0 + ], + [ + 1015.0, + 938.0 + ], + [ + 966.0, + 922.0 + ] + ], + "center_px": [ + 1003.5, + 919.75 + ], + "quality": { + "area_px": 1407.5, + "perimeter_px": 169.01459884643555, + "sharpness": { + "laplacian_var": 202.21712799530312 + }, + "contrast": { + "p05": 11.0, + "p95": 135.0, + "dynamic_range": 124.0, + "mean_gray": 60.230610134436404, + "std_gray": 46.98590047860021 + }, + "geometry": { + "distance_to_center_norm": 0.5265568494796753, + "distance_to_border_px": 142.0 + }, + "edge_ratio": 1.5714104130928346, + "edge_lengths_px": [ + 51.244510650634766, + 33.42155075073242, + 51.54609680175781, + 32.80244064331055 + ] + }, + "confidence": 0.5971281121184089 + }, + { + "observation_id": "2050d15b-7e4a-4394-a59c-9409a373fb00", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 828.0, + 160.0 + ], + [ + 872.0, + 162.0 + ], + [ + 849.0, + 192.0 + ], + [ + 804.0, + 188.0 + ] + ], + "center_px": [ + 838.25, + 175.5 + ], + "quality": { + "area_px": 1361.0, + "perimeter_px": 163.9031524658203, + "sharpness": { + "laplacian_var": 634.8821505010796 + }, + "contrast": { + "p05": 22.0, + "p95": 179.0, + "dynamic_range": 157.0, + "mean_gray": 93.81072210065645, + "std_gray": 65.74062367039625 + }, + "geometry": { + "distance_to_center_norm": 0.4257793128490448, + "distance_to_border_px": 160.0 + }, + "edge_ratio": 1.2250450560973367, + "edge_lengths_px": [ + 44.04542922973633, + 37.80211639404297, + 45.17742919921875, + 36.878177642822266 + ] + }, + "confidence": 0.740653030529222 + }, + { + "observation_id": "0894d85d-d48a-49f9-b1d0-bffc26d89dbb", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 91.0, + 932.0 + ], + [ + 132.0, + 913.0 + ], + [ + 165.0, + 927.0 + ], + [ + 125.0, + 947.0 + ] + ], + "center_px": [ + 128.25, + 929.75 + ], + "quality": { + "area_px": 1240.5, + "perimeter_px": 162.91856002807617, + "sharpness": { + "laplacian_var": 640.6271417753217 + }, + "contrast": { + "p05": 17.0, + "p95": 172.0, + "dynamic_range": 155.0, + "mean_gray": 88.50410316529894, + "std_gray": 59.8365616473406 + }, + "geometry": { + "distance_to_center_norm": 0.7873013019561768, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.2605971300139012, + "edge_lengths_px": [ + 45.18849563598633, + 35.84689712524414, + 44.72135925292969, + 37.161808013916016 + ] + }, + "confidence": 0.6560383014602613 + }, + { + "observation_id": "94acbaa1-b943-42a3-92f3-542a7f981c74", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 384.0, + 918.0 + ], + [ + 416.0, + 899.0 + ], + [ + 455.0, + 911.0 + ], + [ + 424.0, + 931.0 + ] + ], + "center_px": [ + 419.75, + 914.75 + ], + "quality": { + "area_px": 1164.0, + "perimeter_px": 156.97121810913086, + "sharpness": { + "laplacian_var": 1305.0180528018368 + }, + "contrast": { + "p05": 23.0, + "p95": 171.0, + "dynamic_range": 148.0, + "mean_gray": 125.7001287001287, + "std_gray": 50.591649190438574 + }, + "geometry": { + "distance_to_center_norm": 0.5335504412651062, + "distance_to_border_px": 149.0 + }, + "edge_ratio": 1.1400787327238997, + "edge_lengths_px": [ + 37.2155876159668, + 40.804412841796875, + 36.8917350769043, + 42.05948257446289 + ] + }, + "confidence": 0.6806547457875692 + }, + { + "observation_id": "57e28479-5aea-41b6-8dde-09713b923382", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1061.0, + 838.0 + ], + [ + 1107.0, + 851.0 + ], + [ + 1086.0, + 869.0 + ], + [ + 1038.0, + 855.0 + ] + ], + "center_px": [ + 1073.0, + 853.25 + ], + "quality": { + "area_px": 1119.5, + "perimeter_px": 154.0610065460205, + "sharpness": { + "laplacian_var": 699.1501103553894 + }, + "contrast": { + "p05": 27.0, + "p95": 147.0, + "dynamic_range": 120.0, + "mean_gray": 93.41610738255034, + "std_gray": 44.372659317587036 + }, + "geometry": { + "distance_to_center_norm": 0.5243862867355347, + "distance_to_border_px": 211.0 + }, + "edge_ratio": 1.8077537619585837, + "edge_lengths_px": [ + 47.801673889160156, + 27.658634185791016, + 50.0, + 28.600698471069336 + ] + }, + "confidence": 0.41285121294657384 + }, + { + "observation_id": "6b5b5677-addf-4058-a25f-c52de9344dcf", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 205.0, + 850.0 + ], + [ + 240.0, + 834.0 + ], + [ + 272.0, + 846.0 + ], + [ + 238.0, + 862.0 + ] + ], + "center_px": [ + 238.75, + 848.0 + ], + "quality": { + "area_px": 934.0, + "perimeter_px": 145.35046768188477, + "sharpness": { + "laplacian_var": 1079.742643238912 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 86.53560830860535, + "std_gray": 57.948273841825284 + }, + "geometry": { + "distance_to_center_norm": 0.6348573565483093, + "distance_to_border_px": 205.0 + }, + "edge_ratio": 1.1260460248127115, + "edge_lengths_px": [ + 38.4837646484375, + 34.1760139465332, + 37.57658767700195, + 35.11410140991211 + ] + }, + "confidence": 0.5529673325477359 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 539.0, + 665.0 + ], + [ + 601.0, + 657.0 + ], + [ + 722.0, + 692.0 + ], + [ + 705.0, + 711.0 + ] + ], + "center_px": [ + 641.75, + 681.25 + ], + "area_px": 3537.0 + }, + { + "image_points_px": [ + [ + 513.0, + 939.0 + ], + [ + 547.0, + 920.0 + ], + [ + 585.0, + 935.0 + ], + [ + 554.0, + 954.0 + ] + ], + "center_px": [ + 549.75, + 937.0 + ], + "area_px": 1238.0 + }, + { + "image_points_px": [ + [ + 256.0, + 906.0 + ], + [ + 289.0, + 888.0 + ], + [ + 327.0, + 900.0 + ], + [ + 291.0, + 919.0 + ] + ], + "center_px": [ + 290.75, + 903.25 + ], + "area_px": 1106.5 + }, + { + "image_points_px": [ + [ + 1378.0, + 809.0 + ], + [ + 1388.0, + 794.0 + ], + [ + 1434.0, + 804.0 + ], + [ + 1425.0, + 819.0 + ] + ], + "center_px": [ + 1406.25, + 806.5 + ], + "area_px": 792.5 + }, + { + "image_points_px": [ + [ + 492.0, + 714.0 + ], + [ + 517.0, + 702.0 + ], + [ + 551.0, + 710.0 + ], + [ + 527.0, + 723.0 + ] + ], + "center_px": [ + 521.75, + 712.25 + ], + "area_px": 639.5 + }, + { + "image_points_px": [ + [ + 1357.0, + 753.0 + ], + [ + 1371.0, + 740.0 + ], + [ + 1413.0, + 751.0 + ], + [ + 1400.0, + 763.0 + ] + ], + "center_px": [ + 1385.25, + 751.75 + ], + "area_px": 673.0 + }, + { + "image_points_px": [ + [ + 861.0, + 864.0 + ], + [ + 906.0, + 866.0 + ], + [ + 914.0, + 872.0 + ], + [ + 888.0, + 873.0 + ] + ], + "center_px": [ + 892.25, + 868.75 + ], + "area_px": 257.5 + }, + { + "image_points_px": [ + [ + 910.0, + 411.0 + ], + [ + 902.0, + 436.0 + ], + [ + 884.0, + 439.0 + ], + [ + 897.0, + 405.0 + ] + ], + "center_px": [ + 898.25, + 422.75 + ], + "area_px": 473.0 + }, + { + "image_points_px": [ + [ + 926.0, + 925.0 + ], + [ + 927.0, + 944.0 + ], + [ + 919.0, + 968.0 + ], + [ + 918.0, + 955.0 + ] + ], + "center_px": [ + 922.5, + 948.0 + ], + "area_px": 155.0 + }, + { + "image_points_px": [ + [ + 848.0, + 907.0 + ], + [ + 854.0, + 911.0 + ], + [ + 859.0, + 937.0 + ], + [ + 857.0, + 945.0 + ] + ], + "center_px": [ + 854.5, + 925.0 + ], + "area_px": 142.0 + }, + { + "image_points_px": [ + [ + 973.0, + 589.0 + ], + [ + 977.0, + 595.0 + ], + [ + 965.0, + 626.0 + ], + [ + 962.0, + 618.0 + ] + ], + "center_px": [ + 969.25, + 607.0 + ], + "area_px": 185.5 + }, + { + "image_points_px": [ + [ + 946.0, + 260.0 + ], + [ + 928.0, + 294.0 + ], + [ + 936.0, + 270.0 + ], + [ + 942.0, + 260.0 + ] + ], + "center_px": [ + 938.0, + 271.0 + ], + "area_px": 100.0 + }, + { + "image_points_px": [ + [ + 831.0, + 639.0 + ], + [ + 795.0, + 649.0 + ], + [ + 796.0, + 645.0 + ], + [ + 812.0, + 640.0 + ] + ], + "center_px": [ + 808.5, + 643.25 + ], + "area_px": 106.5 + }, + { + "image_points_px": [ + [ + 957.0, + 355.0 + ], + [ + 971.0, + 365.0 + ], + [ + 967.0, + 381.0 + ], + [ + 961.0, + 372.0 + ] + ], + "center_px": [ + 964.0, + 368.25 + ], + "area_px": 165.0 + }, + { + "image_points_px": [ + [ + 1107.0, + 214.0 + ], + [ + 1106.0, + 229.0 + ], + [ + 1099.0, + 243.0 + ], + [ + 1103.0, + 219.0 + ] + ], + "center_px": [ + 1103.75, + 226.25 + ], + "area_px": 83.5 + }, + { + "image_points_px": [ + [ + 275.0, + 926.0 + ], + [ + 284.0, + 927.0 + ], + [ + 303.0, + 935.0 + ], + [ + 277.0, + 929.0 + ] + ], + "center_px": [ + 284.75, + 929.25 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 927.0, + 944.0 + ], + [ + 921.0, + 969.0 + ], + [ + 918.0, + 971.0 + ], + [ + 922.0, + 951.0 + ] + ], + "center_px": [ + 922.0, + 958.75 + ], + "area_px": 67.5 + }, + { + "image_points_px": [ + [ + 507.0, + 975.0 + ], + [ + 526.0, + 982.0 + ], + [ + 529.0, + 986.0 + ], + [ + 509.0, + 979.0 + ] + ], + "center_px": [ + 517.75, + 980.5 + ], + "area_px": 60.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/render_d_camera_pose.json b/data/camera_study/Scene10/k3_bcd/render_d_camera_pose.json new file mode 100644 index 0000000..34a3cc0 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/render_d_camera_pose.json @@ -0,0 +1,285 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:28Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_bcd\\render_d_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "d", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 6, + "used_marker_ids": [ + 95, + 208, + 69, + 103, + 214, + 64 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.010671415477997622, + 0.0018696542807179611, + 0.001824150025738836, + 0.0018241474426834877 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.164164330259058, + "residual_median_px": 5.398072385043921, + "residual_max_px": 7.027422341283123, + "sigma2_normalized": 6.6550277836154934e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8166700601577759, + 0.5771039724349976, + -0.0010227123275399208 + ], + [ + 0.16298067569732666, + -0.2323361337184906, + -0.9588833451271057 + ], + [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + ], + "translation_m": [ + -0.11485252529382706, + 0.08547275513410568, + 1.1249300241470337 + ], + "rvec_rad": [ + 1.7923624327425687, + 0.5686287097896567, + -0.4261428430202902 + ] + }, + "camera_in_world": { + "position_m": [ + 0.7026420831680298, + -0.7945951223373413, + 0.4010946750640869 + ], + "position_mm": [ + 702.64208984375, + -794.5950927734375, + 401.09466552734375 + ], + "orientation_deg": { + "roll": 109.92484283447266, + "pitch": 33.615230560302734, + "yaw": 11.286093711853027 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.0003498424001015397, + 6.823486661029942e-05, + 4.142063730678703e-05, + -5.345001723379169e-06, + -7.396858110018478e-05, + -1.2641475041979003e-05 + ], + [ + 6.823486661029988e-05, + 0.00010295516106391171, + -9.137229494897015e-05, + 2.281178954254835e-05, + -1.979611332364414e-05, + -7.605354993482835e-06 + ], + [ + 4.142063730678625e-05, + -9.137229494897096e-05, + 0.0002702927022549336, + -4.213130837183371e-05, + -7.56149612726986e-06, + 9.26150663825411e-06 + ], + [ + -5.345001723379082e-06, + 2.281178954254845e-05, + -4.2131308371833616e-05, + 8.962887675732753e-06, + -2.575675434153523e-07, + -3.848871385514968e-06 + ], + [ + -7.396858110018466e-05, + -1.9796113323644056e-05, + -7.561496127270001e-06, + -2.575675434153093e-07, + 1.8000566759428326e-05, + 7.99389653027148e-06 + ], + [ + -1.2641475041978559e-05, + -7.605354993482897e-06, + 9.261506638254348e-06, + -3.848871385514858e-06, + 7.993896530271401e-06, + 2.7756310749504287e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 1.07166452425966, + 0.581362070062273, + 0.9419759016685776 + ], + "tvec_std_m": [ + 0.0029938082229382617, + 0.004242707479832698, + 0.005268425832210631 + ] + }, + "camera_center_std_m": [ + 0.01190826606439346, + 0.013088153786860686, + 0.01603645350806163 + ], + "camera_center_std_mm": [ + 11.90826606439346, + 13.088153786860685, + 16.03645350806163 + ], + "orientation_std_deg": { + "roll": 1.2477636245413861, + "pitch": 0.8325671808473429, + "yaw": 0.699613718760565 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 421.5, + 1048.25 + ], + "projected_center_px": [ + 423.55438232421875, + 1045.9644775390625 + ], + "reprojection_error_px": 3.0731253885112206, + "confidence": 0.20059440065661768 + }, + { + "marker_id": 208, + "observed_center_px": [ + 1003.5, + 919.75 + ], + "projected_center_px": [ + 996.4899291992188, + 920.2435302734375 + ], + "reprojection_error_px": 7.027422341283123, + "confidence": 0.5971281121184089 + }, + { + "marker_id": 69, + "observed_center_px": [ + 128.25, + 929.75 + ], + "projected_center_px": [ + 123.95993041992188, + 934.0740966796875 + ], + "reprojection_error_px": 6.091182898025322, + "confidence": 0.6560383014602613 + }, + { + "marker_id": 103, + "observed_center_px": [ + 419.75, + 914.75 + ], + "projected_center_px": [ + 425.61590576171875, + 913.2058715820312 + ], + "reprojection_error_px": 6.065738452698394, + "confidence": 0.6806547457875692 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1073.0, + 853.25 + ], + "projected_center_px": [ + 1077.615234375, + 854.2874755859375 + ], + "reprojection_error_px": 4.730406317389448, + "confidence": 0.41285121294657384 + }, + { + "marker_id": 64, + "observed_center_px": [ + 238.75, + 848.0 + ], + "projected_center_px": [ + 237.76194763183594, + 846.0165405273438 + ], + "reprojection_error_px": 2.2159329777555143, + "confidence": 0.5529673325477359 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/robot_state.eval.json b/data/camera_study/Scene10/k3_bcd/robot_state.eval.json new file mode 100644 index 0000000..fcce49c --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 121.27134160774754, + "gt": 120.0, + "error": 1.2713416077475443, + "unit": "mm", + "observable": true, + "n_markers": 2 + }, + { + "joint": "y", + "estimate": 59.80841500666919, + "gt": 60.0, + "error": 0.1915849933308209, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "z", + "estimate": -109.7207730165188, + "gt": -110.0, + "error": 0.27922698348118047, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "a", + "estimate": 19.854937387103185, + "gt": 20.0, + "error": 0.14506261289682243, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "b", + "estimate": 30.44512103476282, + "gt": 30.0, + "error": 0.4451210347628205, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "c", + "estimate": -179.73042461990534, + "gt": 180.0, + "error": 0.2695753800946932, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "e", + "estimate": 4.932308696008035, + "gt": 4.0, + "error": 0.9323086960080351, + "unit": "mm", + "observable": true, + "n_markers": 2 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.2661142009132675, + "max_abs_deg": 0.4451210347628205, + "mean_abs_mm": 1.1018251518777897, + "max_abs_mm": 1.2713416077475443 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcd/robot_state.json b/data/camera_study/Scene10/k3_bcd/robot_state.json new file mode 100644 index 0000000..36795ad --- /dev/null +++ b/data/camera_study/Scene10/k3_bcd/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:32Z", + "method": "hybrid", + "movements": { + "x": { + "value": 121.27134160774754, + "unit": "mm", + "observable": true, + "confidence": "medium", + "n_markers": 2 + }, + "y": { + "value": 59.80841500666919, + "unit": "deg", + "observable": true, + "confidence": "medium", + "n_markers": 2 + }, + "z": { + "value": -109.7207730165188, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "a": { + "value": 19.854937387103185, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "b": { + "value": 30.44512103476282, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "c": { + "value": -179.73042461990534, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "e": { + "value": 4.932308696008035, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 2 + } + }, + "residual_rms": 1.6532262456453697, + "num_markers": 18 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/aruco_marker_poses.json b/data/camera_study/Scene10/k3_bcf/aruco_marker_poses.json new file mode 100644 index 0000000..cd46439 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/aruco_marker_poses.json @@ -0,0 +1,970 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:18:24Z", + "summary": { + "num_cameras": 3, + "num_markers": 21 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.3436166481186511, + -0.28821171226467623, + -0.02826860490789652 + ], + "position_mm": [ + 343.61664811865114, + -288.21171226467624, + -28.26860490789652 + ], + "normal": [ + 0.007209352101609322, + 0.09829365627164044, + 0.9951313392608172 + ], + "corners_m": [ + [ + 0.33202807746381735, + -0.3000897160896099, + -0.02692916230025777 + ], + [ + 0.3317349116344921, + -0.276115991188456, + -0.02945767156122523 + ], + [ + 0.3554715890660271, + -0.2764584958427844, + -0.02943406347377223 + ], + [ + 0.3552320143102679, + -0.30018264593785465, + -0.02725352229633085 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.719845695325144 + }, + { + "marker_id": 50, + "link": "Board", + "position_m": [ + 0.5710832583917255, + 0.2116990032274318, + -0.027206452686000037 + ], + "position_mm": [ + 571.0832583917255, + 211.6990032274318, + -27.206452686000038 + ], + "normal": [ + -0.0021351011189268904, + 0.03872167744333939, + 0.9992477535822565 + ], + "corners_m": [ + [ + 0.5597433253260713, + 0.1997060226348541, + -0.026893711012318293 + ], + [ + 0.5595176351052566, + 0.22363229001403293, + -0.02756428106695161 + ], + [ + 0.5822918235446088, + 0.2234173386146327, + -0.02776881159262562 + ], + [ + 0.582780249590965, + 0.20004036164620748, + -0.02659900707210462 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.29135146226515 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16791872374759645, + -0.17342961591184627, + -0.02765114834793561 + ], + "position_mm": [ + 167.91872374759646, + -173.42961591184627, + -27.65114834793561 + ], + "normal": [ + -0.0073555997645547095, + 0.0046426269654396566, + 0.9999621698679223 + ], + "corners_m": [ + [ + 0.15589472544740357, + -0.18440985808702454, + -0.027669270016932455 + ], + [ + 0.15631651583135628, + -0.16136651257446266, + -0.0278116138956659 + ], + [ + 0.18009237675097942, + -0.16220951217838367, + -0.027594981218068197 + ], + [ + 0.1793712769606465, + -0.1857325808075142, + -0.027528728261075906 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.4719622085978 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.4887749088558654, + 0.2151305617304476, + -0.027257104749172038 + ], + "position_mm": [ + 488.77490885586536, + 215.1305617304476, + -27.257104749172036 + ], + "normal": [ + -0.032364710715890845, + 0.050705056870831045, + 0.9981891217139178 + ], + "corners_m": [ + [ + 0.47699430612106947, + 0.20340471073717656, + -0.027263892163923574 + ], + [ + 0.47726095275340014, + 0.22755352164452325, + -0.028037232326808686 + ], + [ + 0.5003725394594621, + 0.22666304788001002, + -0.02769443228403516 + ], + [ + 0.5004718370895298, + 0.20290096666008045, + -0.02603286222192074 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.657356615577978 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3397714028477032, + -0.3275278626596011, + -0.027389597745727173 + ], + "position_mm": [ + 339.7714028477032, + -327.5278626596011, + -27.389597745727173 + ], + "normal": [ + -0.008783081997324433, + 0.006358985973062059, + 0.9999412086558003 + ], + "corners_m": [ + [ + 0.32790872658783493, + -0.3389676678343468, + -0.027101377695907626 + ], + [ + 0.32822767221786747, + -0.3160360742992918, + -0.027889943252199158 + ], + [ + 0.3514031722118431, + -0.3160229628313947, + -0.027036416975363235 + ], + [ + 0.35154604037326725, + -0.3390847456733711, + -0.027530653059438682 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.21190055480645 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.2845060641699074, + -0.26113810355463385, + -0.027318476129432744 + ], + "position_mm": [ + 284.5060641699074, + -261.13810355463386, + -27.318476129432742 + ], + "normal": [ + -0.1049588853997393, + 0.06572656653138365, + 0.9923021973308535 + ], + "corners_m": [ + [ + 0.27239014525854466, + -0.2724678567977236, + -0.027870705905749728 + ], + [ + 0.27307733601892176, + -0.24851949440187393, + -0.02934174304491615 + ], + [ + 0.2964742666445531, + -0.2502003210170896, + -0.026799167937915227 + ], + [ + 0.2960825087576102, + -0.27336474200184824, + -0.025262287629149865 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.667250261152997 + }, + { + "marker_id": 58, + "link": "Board", + "position_m": [ + 0.047336861700937254, + -0.21643100832679277, + -0.027209077984690494 + ], + "position_mm": [ + 47.336861700937256, + -216.43100832679278, + -27.209077984690495 + ], + "normal": [ + 0.0013588198906133635, + -0.0036434141538534276, + 0.999992439542324 + ], + "corners_m": [ + [ + 0.035361871794753426, + -0.22834202681993007, + -0.027259175356223724 + ], + [ + 0.035636338795523775, + -0.20492512880256072, + -0.027128009198217347 + ], + [ + 0.059170172929795664, + -0.2045790098019498, + -0.027205336754186512 + ], + [ + 0.05917906328367614, + -0.22787786788273048, + -0.027243790630134396 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.51899761077337 + }, + { + "marker_id": 62, + "link": "Board", + "position_m": [ + 0.40195893468389354, + -0.1730690690188278, + -0.027852010065405726 + ], + "position_mm": [ + 401.9589346838935, + -173.0690690188278, + -27.852010065405725 + ], + "normal": [ + 0.0017212777438192811, + -0.0053587107259354125, + 0.9999841605856987 + ], + "corners_m": [ + [ + 0.3906574557457861, + -0.1848411392095625, + -0.028039702097584905 + ], + [ + 0.3898255212778355, + -0.1623495548051233, + -0.027627887490897778 + ], + [ + 0.4130975129900397, + -0.16085020238787334, + -0.027945900724468786 + ], + [ + 0.41425524872191294, + -0.18423537967275203, + -0.027794549948671442 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.213572182010246 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.019382650059862762, + -0.18917653791773745, + -0.026957093891842268 + ], + "position_mm": [ + -19.382650059862762, + -189.17653791773745, + -26.95709389184227 + ], + "normal": [ + -0.0036895694854724224, + -0.002089752665000555, + 0.9999910099649952 + ], + "corners_m": [ + [ + -0.03137708625041169, + -0.20074261484200326, + -0.027071480712948175 + ], + [ + -0.030734222604308494, + -0.17724794781407496, + -0.02692736504164147 + ], + [ + -0.007571739034749721, + -0.1777707612798837, + -0.026937017399137193 + ], + [ + -0.007847552349981128, + -0.2009448277349879, + -0.026892512413642246 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.344780326701905 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.005461376006755128, + -0.2771866591269858, + -0.02862082525934384 + ], + "position_mm": [ + 5.4613760067551285, + -277.18665912698583, + -28.62082525934384 + ], + "normal": [ + -0.0481151300319273, + 0.04461057597814089, + 0.9978450935756058 + ], + "corners_m": [ + [ + -0.006626639484829631, + -0.2887188238947474, + -0.028701492094985924 + ], + [ + -0.005884142071034708, + -0.2647413483611325, + -0.029710809034653167 + ], + [ + 0.01744885102852476, + -0.26568526813911403, + -0.028570507713787125 + ], + [ + 0.01690743455436009, + -0.28960119611294954, + -0.027500492193949153 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.729320661458335 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.4418452616655221, + 0.19411425116661324, + -0.02779585459975433 + ], + "position_mm": [ + 441.8452616655221, + 194.11425116661323, + -27.795854599754332 + ], + "normal": [ + 0.07280118041719603, + 0.022422351374504552, + 0.9970943918650336 + ], + "corners_m": [ + [ + 0.4307227295960595, + 0.18191561788154603, + -0.027235283274477804 + ], + [ + 0.4297867172132932, + 0.2046788349673567, + -0.02663320550543597 + ], + [ + 0.4530171550582433, + 0.20660276862766846, + -0.029398595655283615 + ], + [ + 0.4538544447944925, + 0.18325978318988173, + -0.027916333963819928 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.212391570768254 + }, + { + "marker_id": 75, + "link": "Board", + "position_m": [ + -0.02691801127237862, + 0.19203042112323523, + -0.026095455172446387 + ], + "position_mm": [ + -26.918011272378617, + 192.03042112323524, + -26.095455172446385 + ], + "normal": [ + 0.01151440600903989, + 0.11716089972169964, + 0.9930461933015305 + ], + "corners_m": [ + [ + -0.038675716193917666, + 0.18060309130469676, + -0.02467789751476288 + ], + [ + -0.03805691243723057, + 0.20490089438667064, + -0.027416756722324426 + ], + [ + -0.015336524287976463, + 0.2035022598635591, + -0.02765095163100934 + ], + [ + -0.015602892170389763, + 0.17911543893801443, + -0.024636214821688904 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.72969522078461 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18644805757385213, + -0.2768058988097969, + -0.028211526205636286 + ], + "position_mm": [ + 186.44805757385214, + -276.8058988097969, + -28.211526205636286 + ], + "normal": [ + 0.03651643975758265, + 0.033286483429586844, + 0.9987785338343644 + ], + "corners_m": [ + [ + 0.17532045939457383, + -0.2890628991211558, + -0.027326940392448328 + ], + [ + 0.17412976540180114, + -0.2657845680626329, + -0.028198598897121965 + ], + [ + 0.1974545314721962, + -0.26488243788460775, + -0.02893913975631757 + ], + [ + 0.19888747402683743, + -0.2874936901707913, + -0.02838142577665728 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.246301820606973 + }, + { + "marker_id": 96, + "link": "Board", + "position_m": [ + 0.3718203946498768, + -0.1837009344760794, + -0.02820900376572861 + ], + "position_mm": [ + 371.8203946498768, + -183.7009344760794, + -28.20900376572861 + ], + "normal": [ + 0.0034740978700644374, + -0.0317367185226094, + 0.9994902257358027 + ], + "corners_m": [ + [ + 0.3601217296589553, + -0.19460186516196362, + -0.028921668543352534 + ], + [ + 0.3600538880189521, + -0.17292637116137147, + -0.02741065045791009 + ], + [ + 0.38326420381864224, + -0.17196902579574286, + -0.02826311606244047 + ], + [ + 0.3838417571029574, + -0.19530647578523977, + -0.028240579999211333 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.014689793132913 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10456381589335591, + -0.19064892488121357, + -0.027670939918298124 + ], + "position_mm": [ + 104.56381589335591, + -190.64892488121356, + -27.670939918298124 + ], + "normal": [ + -0.014024578586648682, + 0.0013919085417397612, + 0.9999006819610028 + ], + "corners_m": [ + [ + 0.09267552109965288, + -0.20234038613754946, + -0.02796226355325225 + ], + [ + 0.09267244388156116, + -0.17913679174319896, + -0.027710192478489028 + ], + [ + 0.11622754936021389, + -0.17884697856436124, + -0.02766596753476839 + ], + [ + 0.11667974923199569, + -0.2022715430797446, + -0.02734533610668283 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.55131738245559 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.31039227929765967, + -0.15598524044581777, + 0.1572958810864113 + ], + "position_mm": [ + 310.3922792976597, + -155.98524044581777, + 157.2958810864113 + ], + "normal": [ + -0.3523307546205755, + -0.7400907877620138, + 0.5728251611253629 + ], + "corners_m": [ + [ + 0.2989045733970478, + -0.14539244558516162, + 0.1639854616851988 + ], + [ + 0.321415532748828, + -0.15163565827722417, + 0.16962635397157097 + ], + [ + 0.32189599456689566, + -0.1666660181859877, + 0.15064101666023955 + ], + [ + 0.29935301647786705, + -0.1602468397348976, + 0.1449306920286359 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.135271992450146 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.021975144504317434, + -0.020746981627774087, + 0.0014059822413918699 + ], + "position_mm": [ + 21.975144504317434, + -20.746981627774087, + 1.40598224139187 + ], + "normal": [ + -0.012440384263256164, + 0.013570809776063732, + 0.999830520619072 + ], + "corners_m": [ + [ + 0.009676386055767804, + -0.009348808121466521, + 0.0010156376305461585 + ], + [ + 0.03352532573343293, + -0.009117561782226958, + 0.0014762355424533058 + ], + [ + 0.03437181181260819, + -0.031898977433100155, + 0.0016279283849387832 + ], + [ + 0.010327054415460815, + -0.032622579174302724, + 0.0015041274076292327 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.49902482373173 + }, + { + "marker_id": 211, + "link": "Board", + "position_m": [ + 0.2534765799640006, + -0.00990533115235763, + 0.0006711686243000316 + ], + "position_mm": [ + 253.4765799640006, + -9.905331152357629, + 0.6711686243000315 + ], + "normal": [ + 0.023329877674467217, + -0.016810548612876453, + 0.9995864756303121 + ], + "corners_m": [ + [ + 0.24219874745725403, + 0.002005050181631297, + 0.0008280087991426144 + ], + [ + 0.2658100613955452, + 0.0006598283581765684, + 0.0008935683482172707 + ], + [ + 0.26508194039842825, + -0.020888471275625264, + -0.0001090963102060543 + ], + [ + 0.24081557060477496, + -0.021397731873613123, + 0.0010721936600462953 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.244732406710717 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.23058518440123105, + -0.03899965767942197, + 0.30795571718757914 + ], + "position_mm": [ + 230.58518440123106, + -38.99965767942197, + 307.9557171875791 + ], + "normal": [ + 0.01036094699270762, + -0.5013938483026384, + 0.8651571300415232 + ], + "corners_m": [ + [ + 0.21903500810874385, + -0.028879099739025374, + 0.31406441172189514 + ], + [ + 0.24243313914800302, + -0.02875136488391475, + 0.3136490564549332 + ], + [ + 0.24221662581691708, + -0.049310531507073055, + 0.3019442073233465 + ], + [ + 0.21865596453126024, + -0.04905763458767469, + 0.30216519325014163 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.513155299972457 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.32041224968964754, + -0.04728793598870259, + 0.2994420726242033 + ], + "position_mm": [ + 320.4122496896475, + -47.287935988702586, + 299.4420726242033 + ], + "normal": [ + -0.03828882276087287, + -0.7662805941680575, + 0.6413641844171182 + ], + "corners_m": [ + [ + 0.30817379432501346, + -0.039890508675053234, + 0.30778706560026853 + ], + [ + 0.33203442942844696, + -0.040194785996597676, + 0.30839043754631623 + ], + [ + 0.33289549656321266, + -0.05547177774194027, + 0.29062528663143866 + ], + [ + 0.30854527844191704, + -0.0535946715412192, + 0.2909655007187897 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.36042949027438 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.282155127445799, + -0.04331542452832001, + 0.3039341910161659 + ], + "position_mm": [ + 282.155127445799, + -43.31542452832001, + 303.9341910161659 + ], + "normal": [ + -0.003020500813369656, + -0.7713254285207605, + 0.6364337828023444 + ], + "corners_m": [ + [ + 0.26969955946937557, + -0.036068358675150555, + 0.31277948789125415 + ], + [ + 0.2936821255827764, + -0.03531216016679997, + 0.3135673259300738 + ], + [ + 0.2946107824515746, + -0.05069491166717042, + 0.2951708662213472 + ], + [ + 0.27062804227946935, + -0.05118626760415909, + 0.2942190840219886 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.99216745866251 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/aruco_positions_initial.json b/data/camera_study/Scene10/k3_bcf/aruco_positions_initial.json new file mode 100644 index 0000000..f174ba1 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/aruco_positions_initial.json @@ -0,0 +1,467 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:18:22Z", + "summary": { + "num_cameras": 3, + "num_markers": 21, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "position_m": [ + 0.34362376119505184, + -0.28822802330848873, + -0.02838439981716169 + ], + "position_mm": [ + 343.6237611950518, + -288.22802330848873, + -28.38439981716169 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 50, + "position_m": [ + 0.5711062778300803, + 0.21167185790153248, + -0.027236392665058094 + ], + "position_mm": [ + 571.1062778300803, + 211.6718579015325, + -27.236392665058094 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.1681080245114533, + -0.17338209734396196, + -0.027665654811361316 + ], + "position_mm": [ + 168.1080245114533, + -173.38209734396196, + -27.665654811361318 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4887969373394409, + 0.2151519019436198, + -0.027344778657349317 + ], + "position_mm": [ + 488.7969373394409, + 215.1519019436198, + -27.344778657349316 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.33977845371465965, + -0.3275377366355863, + -0.027511385593835203 + ], + "position_mm": [ + 339.77845371465963, + -327.53773663558627, + -27.511385593835204 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28451831695033303, + -0.2611490420952993, + -0.027432455430368343 + ], + "position_mm": [ + 284.51831695033303, + -261.1490420952993, + -27.432455430368343 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.04730748420954963, + -0.21643106768910866, + -0.02731427763285767 + ], + "position_mm": [ + 47.30748420954963, + -216.43106768910866, + -27.31427763285767 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.40224108783950074, + -0.17317266047438684, + -0.027915283076296118 + ], + "position_mm": [ + 402.2410878395007, + -173.17266047438684, + -27.915283076296117 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.0193340456258843, + -0.18908183378146987, + -0.0269886851594388 + ], + "position_mm": [ + -19.3340456258843, + -189.08183378146987, + -26.988685159438802 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005437878298835949, + -0.27719563632950794, + -0.028747015326655703 + ], + "position_mm": [ + 5.437878298835949, + -277.1956363295079, + -28.747015326655703 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4418532539715914, + 0.19413790567464606, + -0.027882661763834013 + ], + "position_mm": [ + 441.8532539715914, + 194.13790567464605, + -27.88266176383401 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.026936945718752204, + 0.19204390531856444, + -0.026180302369459785 + ], + "position_mm": [ + -26.936945718752202, + 192.04390531856444, + -26.180302369459785 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18643705281694659, + -0.2768133218389805, + -0.028327734678142556 + ], + "position_mm": [ + 186.4370528169466, + -276.81332183898047, + -28.327734678142555 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 96, + "position_m": [ + 0.37184117858824706, + -0.18370226748878932, + -0.028303665298172874 + ], + "position_mm": [ + 371.84117858824703, + -183.70226748878932, + -28.303665298172874 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.104643992349152, + -0.19049889834733683, + -0.02767913014219985 + ], + "position_mm": [ + 104.643992349152, + -190.49889834733682, + -27.67913014219985 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3104023247371725, + -0.156306068910436, + 0.15701631582941594 + ], + "position_mm": [ + 310.4023247371725, + -156.306068910436, + 157.01631582941593 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021879164348029265, + -0.020554696828167546, + 0.0014186542106848566 + ], + "position_mm": [ + 21.879164348029263, + -20.554696828167547, + 1.4186542106848565 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.2534764225210652, + -0.009923104246820535, + 0.0006217621524497073 + ], + "position_mm": [ + 253.47642252106522, + -9.923104246820534, + 0.6217621524497072 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23007529276737815, + -0.039070066670461895, + 0.30766836125299685 + ], + "position_mm": [ + 230.07529276737816, + -39.0700666704619, + 307.6683612529969 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32003366451689874, + -0.047550984998695776, + 0.29904813179015116 + ], + "position_mm": [ + 320.03366451689874, + -47.550984998695775, + 299.04813179015116 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2817741877107397, + -0.04353822356404724, + 0.30355372204569236 + ], + "position_mm": [ + 281.7741877107397, + -43.53822356404724, + 303.5537220456924 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/aruco_positions_optimized.json b/data/camera_study/Scene10/k3_bcf/aruco_positions_optimized.json new file mode 100644 index 0000000..718f937 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/aruco_positions_optimized.json @@ -0,0 +1,466 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:18:23Z", + "summary": { + "num_cameras": 3, + "num_markers": 21, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "position_m": [ + 0.3435625355559886, + -0.2872244885753075, + -0.03284846919997607 + ], + "position_mm": [ + 343.5625355559886, + -287.22448857530753, + -32.848469199976066 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 50, + "position_m": [ + 0.5711319307113435, + 0.21166459153790063, + -0.027235486495907867 + ], + "position_mm": [ + 571.1319307113434, + 211.66459153790063, + -27.235486495907868 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16768915276401217, + -0.17421241547278415, + -0.02723316096374491 + ], + "position_mm": [ + 167.68915276401216, + -174.21241547278416, + -27.23316096374491 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4877971078673603, + 0.21334664320899632, + -0.02479507468260547 + ], + "position_mm": [ + 487.7971078673603, + 213.3466432089963, + -24.79507468260547 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3399432756521919, + -0.32960914296293337, + -0.021243141956293742 + ], + "position_mm": [ + 339.9432756521919, + -329.6091429629334, + -21.24314195629374 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2842427960912926, + -0.26092179659099485, + -0.02786074101423009 + ], + "position_mm": [ + 284.24279609129263, + -260.92179659099486, + -27.86074101423009 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.04897095179281787, + -0.21820511649277657, + -0.025746562498617363 + ], + "position_mm": [ + 48.97095179281787, + -218.20511649277657, + -25.74656249861736 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.40317399381142904, + -0.17093303515331834, + -0.029760191929519737 + ], + "position_mm": [ + 403.17399381142906, + -170.93303515331834, + -29.76019192951974 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.021567387874784783, + -0.18660383431735045, + -0.029025717853098168 + ], + "position_mm": [ + -21.56738787478478, + -186.60383431735045, + -29.02571785309817 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005395431793948969, + -0.2805304142229221, + -0.024049577382291448 + ], + "position_mm": [ + 5.395431793948969, + -280.53041422292205, + -24.049577382291446 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4427691357193352, + 0.19552685680445794, + -0.02974821913422018 + ], + "position_mm": [ + 442.76913571933517, + 195.52685680445794, + -29.74821913422018 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.02692349351398255, + 0.19204202689794925, + -0.026186451843355028 + ], + "position_mm": [ + -26.92349351398255, + 192.04202689794926, + -26.186451843355027 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18617189933554046, + -0.276129199263809, + -0.029686130247326085 + ], + "position_mm": [ + 186.17189933554045, + -276.129199263809, + -29.686130247326084 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 96, + "position_m": [ + 0.37097626902001196, + -0.18798036529463916, + -0.0250139470463718 + ], + "position_mm": [ + 370.97626902001196, + -187.98036529463917, + -25.0139470463718 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10559727807703266, + -0.18981502215816604, + -0.028026461410815606 + ], + "position_mm": [ + 105.59727807703266, + -189.81502215816604, + -28.026461410815607 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3115882650496422, + -0.15563078372138794, + 0.15663619654616454 + ], + "position_mm": [ + 311.5882650496422, + -155.63078372138796, + 156.63619654616454 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021636348526758453, + -0.01919993864964246, + 0.0005659834902662942 + ], + "position_mm": [ + 21.636348526758454, + -19.199938649642462, + 0.5659834902662942 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.2536098556730264, + -0.009915933869616303, + 0.0006227845538387605 + ], + "position_mm": [ + 253.6098556730264, + -9.915933869616303, + 0.6227845538387605 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23082950112723635, + -0.03884518953580116, + 0.3076383019450992 + ], + "position_mm": [ + 230.82950112723634, + -38.84518953580116, + 307.6383019450992 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3206281948834059, + -0.04687063045469324, + 0.2989468843166457 + ], + "position_mm": [ + 320.62819488340585, + -46.870630454693234, + 298.94688431664565 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2835693260820873, + -0.043242225693266, + 0.30338907016444805 + ], + "position_mm": [ + 283.5693260820873, + -43.242225693266, + 303.38907016444807 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/render_b_aruco_detection.json b/data/camera_study/Scene10/k3_bcf/render_b_aruco_detection.json new file mode 100644 index 0000000..75855f6 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:20Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "010cbbd0-9e70-4038-9498-231de76ea374", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "13aafd33-c315-4d87-b5f0-bee266019db2", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "dda51250-c0e7-4a48-9394-6ebfd618549b", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "16f1bbde-e960-4fd1-9c0c-b1e8d50bf07d", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "ec33a2e1-4d31-407b-8687-d40ebf175b33", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "198129ad-b813-4549-b13d-594a82247473", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "2f102604-ea61-4f82-9ff6-06b0cac57cfd", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "f3deb6b7-c801-48f5-af75-5cb2da13b5cb", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "fe96c289-bb45-40c1-8e19-f2b7ea52ae60", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "4754fbc0-3a66-415e-817b-78dc52523480", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "0fc90252-ff62-4cea-a6db-771da05145f7", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "e5c867c4-ad21-4be1-9f3c-6eac6e816201", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "8806cd01-eab5-4b5e-9ec4-44459b28d234", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "dd4bd797-9bf6-4564-9330-114dcc200431", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "a5c5cedb-67df-4dcf-b762-58478756daa8", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "ae716839-c558-4b81-b7c2-513d9e63ea5a", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "ad44a30a-f0f6-4a53-ba59-408b943dac2c", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "41accae8-6756-4d95-afde-0f5fbffd9bf7", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "4c171c54-d126-4f47-90bb-aea2872eab77", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "ad3b8bc5-fb79-4b25-bce2-e81f186ba0b5", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "a7e1bec1-93ba-4c76-8cf5-24b3ef2adb7c", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "fad2fb6b-b3b8-4d26-93bd-c70b26ddea68", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "826d3a70-3f4e-4a5d-abd3-7a6ee92f82fb", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "336fdccc-1bd8-46dc-9b27-e169848e0acf", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "c8ea7e86-06e6-46ed-bae5-18c36068dd4d", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "b1fec94a-e96a-49ee-9663-f03f0000da7b", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "3aa143be-0cc2-4167-845b-3954f45b1617", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "4ade1c10-9e38-4b10-a73e-5441733fefd5", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "e9df2399-8cdf-494f-a240-8ea4fac0ea3b", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "f697c84e-65a0-4c42-bcaf-5d46f2349863", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "377b91c3-c53a-4097-be4b-d45514ac6c63", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "8200b15f-2ad3-4043-a77d-9ee26b364c92", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "5a96f958-9d3e-4902-9c73-8ffe900f3df5", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "58255c1f-6afd-44dc-8590-47a04cceac2d", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "72d11a5e-ff0a-420f-94c2-d5ecd02e86b2", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "91136373-be0f-4136-86ca-012db6902c27", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/render_b_camera_pose.json b/data/camera_study/Scene10/k3_bcf/render_b_camera_pose.json new file mode 100644 index 0000000..3bc99b5 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:21Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_bcf\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/render_c_aruco_detection.json b/data/camera_study/Scene10/k3_bcf/render_c_aruco_detection.json new file mode 100644 index 0000000..7b304f4 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/render_c_aruco_detection.json @@ -0,0 +1,1590 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:20Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "c", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.npz", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.png", + "image_sha256": "ef5a04a35de56c777fd09b581d604f04ac76571a3cacba21fe8388dea1f4b077", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 16, + "num_rejected_candidates": 27 + }, + "detections": [ + { + "observation_id": "9d894d34-0498-4b72-95c1-3c8d7080d60b", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 906.0 + ], + [ + 962.0, + 900.0 + ], + [ + 968.0, + 961.0 + ], + [ + 906.0, + 967.0 + ] + ], + "center_px": [ + 934.0, + 933.5 + ], + "quality": { + "area_px": 3818.0, + "perimeter_px": 247.16803741455078, + "sharpness": { + "laplacian_var": 454.5613926289 + }, + "contrast": { + "p05": 15.0, + "p95": 169.0, + "dynamic_range": 154.0, + "mean_gray": 63.889708737864076, + "std_gray": 64.10002098444608 + }, + "geometry": { + "distance_to_center_norm": 0.4976962208747864, + "distance_to_border_px": 113.0 + }, + "edge_ratio": 1.0162376014068253, + "edge_lengths_px": [ + 62.28964614868164, + 61.29437255859375, + 62.28964614868164, + 61.29437255859375 + ] + }, + "confidence": 0.9840218454972077 + }, + { + "observation_id": "b1771db1-1cb4-4954-a124-42c58d912907", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 930.0, + 548.0 + ], + [ + 989.0, + 541.0 + ], + [ + 989.0, + 599.0 + ], + [ + 930.0, + 606.0 + ] + ], + "center_px": [ + 959.5, + 573.5 + ], + "quality": { + "area_px": 3422.0, + "perimeter_px": 234.82760620117188, + "sharpness": { + "laplacian_var": 615.7225970995563 + }, + "contrast": { + "p05": 62.0, + "p95": 187.0, + "dynamic_range": 125.0, + "mean_gray": 96.38732088580113, + "std_gray": 49.78957244242085 + }, + "geometry": { + "distance_to_center_norm": 0.2687017321586609, + "distance_to_border_px": 451.0 + }, + "edge_ratio": 1.0243759155273438, + "edge_lengths_px": [ + 59.41380310058594, + 58.0, + 59.41380310058594, + 58.0 + ] + }, + "confidence": 0.976204130575644 + }, + { + "observation_id": "a271a7fc-7a4a-43aa-81e4-a80e38212399", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 876.0, + 137.0 + ], + [ + 933.0, + 136.0 + ], + [ + 934.0, + 184.0 + ], + [ + 876.0, + 186.0 + ] + ], + "center_px": [ + 904.75, + 160.75 + ], + "quality": { + "area_px": 2789.5, + "perimeter_px": 212.05365753173828, + "sharpness": { + "laplacian_var": 1207.1695390581717 + }, + "contrast": { + "p05": 35.0, + "p95": 183.0, + "dynamic_range": 148.0, + "mean_gray": 111.8242105263158, + "std_gray": 63.973025920534376 + }, + "geometry": { + "distance_to_center_norm": 0.46872973442077637, + "distance_to_border_px": 136.0 + }, + "edge_ratio": 1.2087892695501747, + "edge_lengths_px": [ + 57.00876998901367, + 48.010414123535156, + 58.03447341918945, + 49.0 + ] + }, + "confidence": 0.8272740544529559 + }, + { + "observation_id": "2093f4d1-f1cb-4248-8909-814fc958b55a", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 967.0, + 151.0 + ], + [ + 1024.0, + 150.0 + ], + [ + 1025.0, + 197.0 + ], + [ + 966.0, + 195.0 + ] + ], + "center_px": [ + 995.5, + 173.25 + ], + "quality": { + "area_px": 2639.0, + "perimeter_px": 207.06465911865234, + "sharpness": { + "laplacian_var": 866.93707361974 + }, + "contrast": { + "p05": 32.0, + "p95": 181.0, + "dynamic_range": 149.0, + "mean_gray": 84.58143413007227, + "std_gray": 62.405948444667175 + }, + "geometry": { + "distance_to_center_norm": 0.5096668004989624, + "distance_to_border_px": 150.0 + }, + "edge_ratio": 1.3413328837775513, + "edge_lengths_px": [ + 57.00876998901367, + 47.01063537597656, + 59.03388977050781, + 44.0113639831543 + ] + }, + "confidence": 0.745527088834006 + }, + { + "observation_id": "e54f9bd7-eedb-4878-aa36-a816b220817c", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 806.0, + 242.0 + ], + [ + 809.0, + 286.0 + ], + [ + 756.0, + 287.0 + ], + [ + 750.0, + 243.0 + ] + ], + "center_px": [ + 780.25, + 264.5 + ], + "quality": { + "area_px": 2402.5, + "perimeter_px": 197.5277214050293, + "sharpness": { + "laplacian_var": 621.9365906774973 + }, + "contrast": { + "p05": 17.0, + "p95": 154.0, + "dynamic_range": 137.0, + "mean_gray": 67.55327102803739, + "std_gray": 57.80557538313361 + }, + "geometry": { + "distance_to_center_norm": 0.3133457899093628, + "distance_to_border_px": 242.0 + }, + "edge_ratio": 1.2699816583435075, + "edge_lengths_px": [ + 44.10215377807617, + 53.00943374633789, + 44.40720748901367, + 56.00892639160156 + ] + }, + "confidence": 0.7874129468171561 + }, + { + "observation_id": "deec846b-4cd4-42c2-b601-2ab93da9d391", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 907.0 + ], + [ + 1083.0, + 943.0 + ], + [ + 1048.0, + 989.0 + ], + [ + 1034.0, + 955.0 + ] + ], + "center_px": [ + 1059.0, + 948.5 + ], + "quality": { + "area_px": 1871.0, + "perimeter_px": 193.12355041503906, + "sharpness": { + "laplacian_var": 160.55753056192668 + }, + "contrast": { + "p05": 14.0, + "p95": 100.0, + "dynamic_range": 86.0, + "mean_gray": 57.872306464485234, + "std_gray": 34.11093550486432 + }, + "geometry": { + "distance_to_center_norm": 0.5898244976997375, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.648246307313746, + "edge_lengths_px": [ + 37.947330474853516, + 57.80138397216797, + 36.769554138183594, + 60.605281829833984 + ] + }, + "confidence": 0.606705439328279 + }, + { + "observation_id": "2dbc157d-9263-4ab5-bb34-15960af53f06", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 244.0, + 1048.0 + ], + [ + 264.0, + 1017.0 + ], + [ + 321.0, + 1020.0 + ], + [ + 304.0, + 1051.0 + ] + ], + "center_px": [ + 283.25, + 1034.0 + ], + "quality": { + "area_px": 1869.0, + "perimeter_px": 189.40092086791992, + "sharpness": { + "laplacian_var": 1265.0345875985527 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 76.71025841816758, + "std_gray": 66.37082174674407 + }, + "geometry": { + "distance_to_center_norm": 0.7326483130455017, + "distance_to_border_px": 29.0 + }, + "edge_ratio": 1.6991763224534673, + "edge_lengths_px": [ + 36.8917350769043, + 57.07889175415039, + 35.35533905029297, + 60.074954986572266 + ] + }, + "confidence": 0.34134185624863755 + }, + { + "observation_id": "08dbfd78-4614-433f-87bf-6eee004623ff", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1145.0, + 1043.0 + ], + [ + 1138.0, + 1012.0 + ], + [ + 1196.0, + 1014.0 + ], + [ + 1207.0, + 1045.0 + ] + ], + "center_px": [ + 1171.5, + 1028.5 + ], + "quality": { + "area_px": 1842.0, + "perimeter_px": 184.74098777770996, + "sharpness": { + "laplacian_var": 687.4367780505567 + }, + "contrast": { + "p05": 12.0, + "p95": 150.0, + "dynamic_range": 138.0, + "mean_gray": 38.430939226519335, + "std_gray": 45.8298447545998 + }, + "geometry": { + "distance_to_center_norm": 0.7391056418418884, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.9518967949661667, + "edge_lengths_px": [ + 31.78049659729004, + 58.03447341918945, + 32.893768310546875, + 62.032249450683594 + ] + }, + "confidence": 0.3586255184214969 + }, + { + "observation_id": "c2ea288f-b945-4ec9-b804-98c3037edce2", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1069.0, + 1053.0 + ], + [ + 1066.0, + 1021.0 + ], + [ + 1125.0, + 1025.0 + ], + [ + 1130.0, + 1056.0 + ] + ], + "center_px": [ + 1097.5, + 1038.75 + ], + "quality": { + "area_px": 1876.0, + "perimeter_px": 183.7501163482666, + "sharpness": { + "laplacian_var": 663.3293461676229 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 73.64136328427576, + "std_gray": 59.64429126415427 + }, + "geometry": { + "distance_to_center_norm": 0.6950067281723022, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.9449837049520267, + "edge_lengths_px": [ + 32.140316009521484, + 59.13543701171875, + 31.400636672973633, + 61.073726654052734 + ] + }, + "confidence": 0.24678869996591526 + }, + { + "observation_id": "878f9ed6-05e4-45b2-b2a3-6cf055f58fef", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 110.0, + 1003.0 + ], + [ + 134.0, + 974.0 + ], + [ + 187.0, + 977.0 + ], + [ + 166.0, + 1006.0 + ] + ], + "center_px": [ + 149.25, + 990.0 + ], + "quality": { + "area_px": 1648.0, + "perimeter_px": 182.61322402954102, + "sharpness": { + "laplacian_var": 1879.918969718065 + }, + "contrast": { + "p05": 12.0, + "p95": 173.0, + "dynamic_range": 161.0, + "mean_gray": 75.38733031674208, + "std_gray": 68.98136821451206 + }, + "geometry": { + "distance_to_center_norm": 0.8075687885284424, + "distance_to_border_px": 74.0 + }, + "edge_ratio": 1.5662688751728226, + "edge_lengths_px": [ + 37.64305877685547, + 53.0848388671875, + 35.80502700805664, + 56.080299377441406 + ] + }, + "confidence": 0.6384599833726886 + }, + { + "observation_id": "2d1d265c-4041-4bf6-a8d9-d33e39fae152", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 403.0, + 1023.0 + ], + [ + 418.0, + 993.0 + ], + [ + 474.0, + 996.0 + ], + [ + 462.0, + 1025.0 + ] + ], + "center_px": [ + 439.25, + 1009.25 + ], + "quality": { + "area_px": 1730.0, + "perimeter_px": 180.03991889953613, + "sharpness": { + "laplacian_var": 950.8899639839916 + }, + "contrast": { + "p05": 20.0, + "p95": 172.0, + "dynamic_range": 152.0, + "mean_gray": 116.20102214650767, + "std_gray": 61.636543611115094 + }, + "geometry": { + "distance_to_center_norm": 0.6075818538665771, + "distance_to_border_px": 55.0 + }, + "edge_ratio": 1.8809760926212427, + "edge_lengths_px": [ + 33.541019439697266, + 56.080299377441406, + 31.38471031188965, + 59.03388977050781 + ] + }, + "confidence": 0.5316388676723932 + }, + { + "observation_id": "08631c7f-4860-458a-9449-63f9f213534c", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 564.0, + 1008.0 + ], + [ + 576.0, + 980.0 + ], + [ + 632.0, + 984.0 + ], + [ + 622.0, + 1013.0 + ] + ], + "center_px": [ + 598.5, + 996.25 + ], + "quality": { + "area_px": 1674.0, + "perimeter_px": 175.49660873413086, + "sharpness": { + "laplacian_var": 1393.7942302804506 + }, + "contrast": { + "p05": 28.0, + "p95": 171.0, + "dynamic_range": 143.0, + "mean_gray": 84.15052816901408, + "std_gray": 59.917896140385736 + }, + "geometry": { + "distance_to_center_norm": 0.5246118903160095, + "distance_to_border_px": 67.0 + }, + "edge_ratio": 1.9110048603024625, + "edge_lengths_px": [ + 30.463092803955078, + 56.14267349243164, + 30.675724029541016, + 58.215118408203125 + ] + }, + "confidence": 0.5232849066860699 + }, + { + "observation_id": "7cc290a9-576d-4c42-ba49-053345cd5fe2", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 760.0, + 132.0 + ], + [ + 813.0, + 133.0 + ], + [ + 809.0, + 166.0 + ], + [ + 754.0, + 165.0 + ] + ], + "center_px": [ + 784.0, + 149.0 + ], + "quality": { + "area_px": 1787.0, + "perimeter_px": 174.80108261108398, + "sharpness": { + "laplacian_var": 1005.8917346464419 + }, + "contrast": { + "p05": 15.0, + "p95": 180.0, + "dynamic_range": 165.0, + "mean_gray": 83.3435684647303, + "std_gray": 70.8540535076814 + }, + "geometry": { + "distance_to_center_norm": 0.4402258098125458, + "distance_to_border_px": 132.0 + }, + "edge_ratio": 1.6548298326729072, + "edge_lengths_px": [ + 53.00943374633789, + 33.241539001464844, + 55.009090423583984, + 33.541019439697266 + ] + }, + "confidence": 0.6042917406104434 + }, + { + "observation_id": "6b19cee3-3a93-413e-b498-dabc606dace7", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 760.0 + ], + [ + 387.0, + 761.0 + ], + [ + 376.0, + 780.0 + ], + [ + 327.0, + 778.0 + ] + ], + "center_px": [ + 357.5, + 769.75 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 140.20953559875488, + "sharpness": { + "laplacian_var": 1714.673355751594 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 84.31152647975078, + "std_gray": 58.656873492799065 + }, + "geometry": { + "distance_to_center_norm": 0.47686126828193665, + "distance_to_border_px": 300.0 + }, + "edge_ratio": 2.233747159110654, + "edge_lengths_px": [ + 47.01063537597656, + 21.954498291015625, + 49.04079818725586, + 22.203603744506836 + ] + }, + "confidence": 0.27039765782644665 + }, + { + "observation_id": "22a4e903-e5be-4d55-bc1e-af2ea50d07ba", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 808.0, + 771.0 + ], + [ + 855.0, + 774.0 + ], + [ + 851.0, + 794.0 + ], + [ + 801.0, + 790.0 + ] + ], + "center_px": [ + 828.75, + 782.25 + ], + "quality": { + "area_px": 965.0, + "perimeter_px": 137.8999252319336, + "sharpness": { + "laplacian_var": 980.8435808712625 + }, + "contrast": { + "p05": 19.0, + "p95": 166.0, + "dynamic_range": 147.0, + "mean_gray": 88.28657616892912, + "std_gray": 59.05852033640571 + }, + "geometry": { + "distance_to_center_norm": 0.2950447201728821, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 2.4772131710716905, + "edge_lengths_px": [ + 47.095645904541016, + 20.39607810974121, + 50.15974426269531, + 20.248456954956055 + ] + }, + "confidence": 0.25970043306972035 + }, + { + "observation_id": "2522019d-fc73-4b51-bf27-c7627a88d475", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1385.0, + 700.0 + ], + [ + 1377.0, + 686.0 + ], + [ + 1418.0, + 688.0 + ], + [ + 1428.0, + 701.0 + ] + ], + "center_px": [ + 1402.0, + 693.75 + ], + "quality": { + "area_px": 553.5, + "perimeter_px": 116.58611488342285, + "sharpness": { + "laplacian_var": 1051.381376540531 + }, + "contrast": { + "p05": 12.0, + "p95": 126.0, + "dynamic_range": 114.0, + "mean_gray": 64.25196850393701, + "std_gray": 39.063170154625084 + }, + "geometry": { + "distance_to_center_norm": 0.7767954468727112, + "distance_to_border_px": 12.0 + }, + "edge_ratio": 2.6674678757353125, + "edge_lengths_px": [ + 16.124515533447266, + 41.04875183105469, + 16.401220321655273, + 43.011627197265625 + ] + }, + "confidence": 0.03320002493960217 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 975.0, + 684.0 + ], + [ + 987.0, + 688.0 + ], + [ + 989.0, + 763.0 + ], + [ + 968.0, + 765.0 + ] + ], + "center_px": [ + 979.75, + 725.0 + ], + "area_px": 1289.5 + }, + { + "image_points_px": [ + [ + 790.0, + 489.0 + ], + [ + 804.0, + 493.0 + ], + [ + 807.0, + 565.0 + ], + [ + 793.0, + 568.0 + ] + ], + "center_px": [ + 798.5, + 528.75 + ], + "area_px": 1055.5 + }, + { + "image_points_px": [ + [ + 536.0, + 599.0 + ], + [ + 540.0, + 677.0 + ], + [ + 531.0, + 664.0 + ], + [ + 529.0, + 604.0 + ] + ], + "center_px": [ + 534.0, + 636.0 + ], + "area_px": 540.0 + }, + { + "image_points_px": [ + [ + 782.0, + 864.0 + ], + [ + 789.0, + 841.0 + ], + [ + 842.0, + 845.0 + ], + [ + 837.0, + 868.0 + ] + ], + "center_px": [ + 812.5, + 854.5 + ], + "area_px": 1266.0 + }, + { + "image_points_px": [ + [ + 1232.0, + 678.0 + ], + [ + 1273.0, + 679.0 + ], + [ + 1279.0, + 694.0 + ], + [ + 1237.0, + 692.0 + ] + ], + "center_px": [ + 1255.25, + 685.75 + ], + "area_px": 593.5 + }, + { + "image_points_px": [ + [ + 1154.0, + 689.0 + ], + [ + 1194.0, + 690.0 + ], + [ + 1201.0, + 704.0 + ], + [ + 1160.0, + 703.0 + ] + ], + "center_px": [ + 1177.25, + 696.5 + ], + "area_px": 560.5 + }, + { + "image_points_px": [ + [ + 425.0, + 674.0 + ], + [ + 435.0, + 661.0 + ], + [ + 473.0, + 663.0 + ], + [ + 462.0, + 676.0 + ] + ], + "center_px": [ + 448.75, + 668.5 + ], + "area_px": 508.5 + }, + { + "image_points_px": [ + [ + 1281.0, + 650.0 + ], + [ + 1319.0, + 651.0 + ], + [ + 1327.0, + 663.0 + ], + [ + 1288.0, + 663.0 + ] + ], + "center_px": [ + 1303.75, + 656.75 + ], + "area_px": 477.5 + }, + { + "image_points_px": [ + [ + 1068.0, + 669.0 + ], + [ + 1077.0, + 679.0 + ], + [ + 1075.0, + 717.0 + ], + [ + 1068.0, + 710.0 + ] + ], + "center_px": [ + 1072.0, + 693.75 + ], + "area_px": 324.5 + }, + { + "image_points_px": [ + [ + 784.0, + 627.0 + ], + [ + 788.0, + 615.0 + ], + [ + 824.0, + 619.0 + ], + [ + 820.0, + 629.0 + ] + ], + "center_px": [ + 804.0, + 622.5 + ], + "area_px": 408.0 + }, + { + "image_points_px": [ + [ + 426.0, + 594.0 + ], + [ + 434.0, + 583.0 + ], + [ + 467.0, + 585.0 + ], + [ + 462.0, + 595.0 + ] + ], + "center_px": [ + 447.25, + 589.25 + ], + "area_px": 372.0 + }, + { + "image_points_px": [ + [ + 978.0, + 308.0 + ], + [ + 1021.0, + 310.0 + ], + [ + 1019.0, + 316.0 + ], + [ + 991.0, + 314.0 + ] + ], + "center_px": [ + 1002.25, + 312.0 + ], + "area_px": 202.0 + }, + { + "image_points_px": [ + [ + 936.0, + 582.0 + ], + [ + 951.0, + 580.0 + ], + [ + 965.0, + 595.0 + ], + [ + 937.0, + 600.0 + ] + ], + "center_px": [ + 947.25, + 589.25 + ], + "area_px": 381.0 + }, + { + "image_points_px": [ + [ + 120.0, + 998.0 + ], + [ + 124.0, + 993.0 + ], + [ + 158.0, + 996.0 + ], + [ + 153.0, + 1001.0 + ] + ], + "center_px": [ + 138.75, + 997.0 + ], + "area_px": 181.0 + }, + { + "image_points_px": [ + [ + 734.0, + 639.0 + ], + [ + 730.0, + 666.0 + ], + [ + 725.0, + 676.0 + ], + [ + 729.0, + 642.0 + ] + ], + "center_px": [ + 729.5, + 655.75 + ], + "area_px": 126.5 + }, + { + "image_points_px": [ + [ + 1360.0, + 644.0 + ], + [ + 1390.0, + 645.0 + ], + [ + 1394.0, + 648.0 + ], + [ + 1366.0, + 647.0 + ] + ], + "center_px": [ + 1377.5, + 646.0 + ], + "area_px": 82.0 + }, + { + "image_points_px": [ + [ + 339.0, + 768.0 + ], + [ + 354.0, + 762.0 + ], + [ + 372.0, + 767.0 + ], + [ + 366.0, + 771.0 + ] + ], + "center_px": [ + 357.75, + 767.0 + ], + "area_px": 154.5 + }, + { + "image_points_px": [ + [ + 732.0, + 273.0 + ], + [ + 735.0, + 284.0 + ], + [ + 735.0, + 305.0 + ], + [ + 732.0, + 301.0 + ] + ], + "center_px": [ + 733.5, + 290.75 + ], + "area_px": 73.5 + }, + { + "image_points_px": [ + [ + 990.0, + 337.0 + ], + [ + 996.0, + 351.0 + ], + [ + 997.0, + 366.0 + ], + [ + 991.0, + 364.0 + ] + ], + "center_px": [ + 993.5, + 354.5 + ], + "area_px": 118.0 + }, + { + "image_points_px": [ + [ + 774.0, + 249.0 + ], + [ + 799.0, + 247.0 + ], + [ + 800.0, + 251.0 + ], + [ + 776.0, + 252.0 + ] + ], + "center_px": [ + 787.25, + 249.75 + ], + "area_px": 88.0 + }, + { + "image_points_px": [ + [ + 900.0, + 973.0 + ], + [ + 923.0, + 973.0 + ], + [ + 926.0, + 975.0 + ], + [ + 903.0, + 975.0 + ] + ], + "center_px": [ + 913.0, + 974.0 + ], + "area_px": 46.0 + }, + { + "image_points_px": [ + [ + 957.0, + 967.0 + ], + [ + 968.0, + 965.0 + ], + [ + 970.0, + 984.0 + ], + [ + 957.0, + 971.0 + ] + ], + "center_px": [ + 963.0, + 971.75 + ], + "area_px": 132.5 + }, + { + "image_points_px": [ + [ + 1374.0, + 718.0 + ], + [ + 1394.0, + 718.0 + ], + [ + 1398.0, + 721.0 + ], + [ + 1378.0, + 721.0 + ] + ], + "center_px": [ + 1386.0, + 719.5 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 999.0, + 762.0 + ], + [ + 1017.0, + 761.0 + ], + [ + 1023.0, + 763.0 + ], + [ + 1001.0, + 764.0 + ] + ], + "center_px": [ + 1010.0, + 762.5 + ], + "area_px": 44.0 + }, + { + "image_points_px": [ + [ + 565.0, + 1022.0 + ], + [ + 584.0, + 1021.0 + ], + [ + 588.0, + 1023.0 + ], + [ + 573.0, + 1024.0 + ] + ], + "center_px": [ + 577.5, + 1022.5 + ], + "area_px": 40.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 1023.0 + ], + [ + 1182.0, + 1022.0 + ], + [ + 1185.0, + 1028.0 + ], + [ + 1169.0, + 1029.0 + ] + ], + "center_px": [ + 1175.5, + 1025.5 + ], + "area_px": 99.0 + }, + { + "image_points_px": [ + [ + 222.0, + 1034.0 + ], + [ + 241.0, + 1035.0 + ], + [ + 244.0, + 1037.0 + ], + [ + 231.0, + 1037.0 + ] + ], + "center_px": [ + 234.5, + 1035.75 + ], + "area_px": 37.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/render_c_camera_pose.json b/data/camera_study/Scene10/k3_bcf/render_c_camera_pose.json new file mode 100644 index 0000000..f470032 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/render_c_camera_pose.json @@ -0,0 +1,327 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:22Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_bcf\\render_c_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "c", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 9, + "used_marker_ids": [ + 58, + 62, + 96, + 64, + 103, + 51, + 210, + 211, + 50 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.00850343514866048, + 0.001919637477748798, + 0.0018871327733089188, + 0.0018871325208839012 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.3388483305404, + "residual_median_px": 5.837108638574855, + "residual_max_px": 7.851369272055891, + "sigma2_normalized": 5.341903727059073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9935113787651062, + 0.11363770067691803, + -0.004644200671464205 + ], + [ + 0.029086070135235786, + -0.2933460772037506, + -0.9555637240409851 + ], + [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + ], + "translation_m": [ + -0.19824764132499695, + 0.1074121966958046, + 1.0073933601379395 + ], + "rvec_rad": [ + 1.86796171410195, + 0.10327005514572164, + -0.08291676493169096 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30460041761398315, + -0.9022090435028076, + 0.3986456096172333 + ], + "position_mm": [ + 304.60040283203125, + -902.2090454101562, + 398.6455993652344 + ], + "orientation_deg": { + "roll": 107.25025177001953, + "pitch": 6.31245756149292, + "yaw": 1.676913857460022 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 6.283611814350516e-05, + 9.967111903139419e-06, + 1.624804290129494e-05, + -1.577288611905233e-07, + -9.565179969225538e-06, + 1.214388304696983e-06 + ], + [ + 9.967111903139312e-06, + 2.0431750224389534e-05, + -7.770857724352742e-06, + 2.1849187906882535e-06, + -2.4827730156902525e-06, + 5.834590888095247e-06 + ], + [ + 1.6248042901295073e-05, + -7.770857724352725e-06, + 6.21251942958819e-05, + -3.1440970658187606e-06, + -8.329233497858997e-06, + -1.5661804579884994e-05 + ], + [ + -1.5772886119053934e-07, + 2.184918790688258e-06, + -3.14409706581878e-06, + 7.844339725202242e-07, + 9.395641917069299e-08, + 8.922273151494254e-07 + ], + [ + -9.56517996922555e-06, + -2.482773015690273e-06, + -8.329233497858978e-06, + 9.395641917068812e-08, + 3.1785216658280216e-06, + 3.2374032099410526e-06 + ], + [ + 1.2143883046968984e-06, + 5.834590888095236e-06, + -1.566180457988501e-05, + 8.922273151494167e-07, + 3.237403209941067e-06, + 1.5241091941001921e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.45417926818777943, + 0.2589854810186854, + 0.45160268193428 + ], + "tvec_std_m": [ + 0.0008856827719450255, + 0.0017828408975082497, + 0.0039039841112640202 + ] + }, + "camera_center_std_m": [ + 0.006432764403295309, + 0.003956846704431741, + 0.006949550969225763 + ], + "camera_center_std_mm": [ + 6.432764403295309, + 3.956846704431741, + 6.949550969225763 + ], + "orientation_std_deg": { + "roll": 0.42334339423542505, + "pitch": 0.36500393244331925, + "yaw": 0.2715300326454473 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 58, + "observed_center_px": [ + 283.25, + 1034.0 + ], + "projected_center_px": [ + 289.1312255859375, + 1036.682861328125 + ], + "reprojection_error_px": 6.4642524160675014, + "confidence": 0.34134185624863755 + }, + { + "marker_id": 62, + "observed_center_px": [ + 1171.5, + 1028.5 + ], + "projected_center_px": [ + 1177.343505859375, + 1029.8663330078125 + ], + "reprojection_error_px": 6.0011187804265225, + "confidence": 0.3586255184214969 + }, + { + "marker_id": 96, + "observed_center_px": [ + 1097.5, + 1038.75 + ], + "projected_center_px": [ + 1091.03857421875, + 1039.8277587890625 + ], + "reprojection_error_px": 6.550693637623701, + "confidence": 0.24678869996591526 + }, + { + "marker_id": 64, + "observed_center_px": [ + 149.25, + 990.0 + ], + "projected_center_px": [ + 146.69277954101562, + 989.6632080078125 + ], + "reprojection_error_px": 2.579303262869623, + "confidence": 0.6384599833726886 + }, + { + "marker_id": 103, + "observed_center_px": [ + 439.25, + 1009.25 + ], + "projected_center_px": [ + 443.3174743652344, + 1005.0634155273438 + ], + "reprojection_error_px": 5.837108638574855, + "confidence": 0.5316388676723932 + }, + { + "marker_id": 51, + "observed_center_px": [ + 598.5, + 996.25 + ], + "projected_center_px": [ + 598.08349609375, + 993.7927856445312 + ], + "reprojection_error_px": 2.492263608176955, + "confidence": 0.5232849066860699 + }, + { + "marker_id": 210, + "observed_center_px": [ + 357.5, + 769.75 + ], + "projected_center_px": [ + 354.4071044921875, + 771.2721557617188 + ], + "reprojection_error_px": 3.4471670666186647, + "confidence": 0.27039765782644665 + }, + { + "marker_id": 211, + "observed_center_px": [ + 828.75, + 782.25 + ], + "projected_center_px": [ + 820.9069213867188, + 782.6107177734375 + ], + "reprojection_error_px": 7.851369272055891, + "confidence": 0.25970043306972035 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1402.0, + 693.75 + ], + "projected_center_px": [ + 1405.9166259765625, + 693.873291015625 + ], + "reprojection_error_px": 3.918566027875248, + "confidence": 0.03320002493960217 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/render_f_aruco_detection.json b/data/camera_study/Scene10/k3_bcf/render_f_aruco_detection.json new file mode 100644 index 0000000..b71ff6b --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/render_f_aruco_detection.json @@ -0,0 +1,2058 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:21Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "f", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.npz", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.png", + "image_sha256": "aa67ae34760d38a87903e73b4020db43742a978458949ff309a7b2527c548cd4", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 33, + "num_rejected_candidates": 9 + }, + "detections": [ + { + "observation_id": "22bd7300-8381-4967-84ba-017f0851caf5", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1111.0, + 551.0 + ], + [ + 1128.0, + 590.0 + ], + [ + 1088.0, + 605.0 + ], + [ + 1071.0, + 566.0 + ] + ], + "center_px": [ + 1099.5, + 578.0 + ], + "quality": { + "area_px": 1815.0, + "perimeter_px": 170.52822875976562, + "sharpness": { + "laplacian_var": 705.4441714458114 + }, + "contrast": { + "p05": 20.0, + "p95": 169.0, + "dynamic_range": 149.0, + "mean_gray": 91.23937908496733, + "std_gray": 63.85244467612601 + }, + "geometry": { + "distance_to_center_norm": 0.4237752854824066, + "distance_to_border_px": 312.0 + }, + "edge_ratio": 1.0041351499491737, + "edge_lengths_px": [ + 42.54409408569336, + 42.72002029418945, + 42.54409408569336, + 42.72002029418945 + ] + }, + "confidence": 0.9958818790982638 + }, + { + "observation_id": "e3e4e108-1739-4f36-ae62-ba9c94228f1e", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1016.0, + 419.0 + ], + [ + 1031.0, + 457.0 + ], + [ + 994.0, + 474.0 + ], + [ + 980.0, + 436.0 + ] + ], + "center_px": [ + 1005.25, + 446.5 + ], + "quality": { + "area_px": 1633.5, + "perimeter_px": 161.88091659545898, + "sharpness": { + "laplacian_var": 1206.2538238529316 + }, + "contrast": { + "p05": 64.0, + "p95": 184.0, + "dynamic_range": 120.0, + "mean_gray": 109.98129092609916, + "std_gray": 52.10421328381854 + }, + "geometry": { + "distance_to_center_norm": 0.33353662490844727, + "distance_to_border_px": 409.0 + }, + "edge_ratio": 1.0261563943133383, + "edge_lengths_px": [ + 40.853397369384766, + 40.71854782104492, + 40.49691390991211, + 39.81205749511719 + ] + }, + "confidence": 0.9745103237106064 + }, + { + "observation_id": "84b623c9-91db-4680-8dce-2c3fb2c60082", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1036.0, + 506.0 + ], + [ + 1052.0, + 544.0 + ], + [ + 1022.0, + 561.0 + ], + [ + 1006.0, + 523.0 + ] + ], + "center_px": [ + 1029.0, + 533.5 + ], + "quality": { + "area_px": 1412.0, + "perimeter_px": 151.42587280273438, + "sharpness": { + "laplacian_var": 1012.7025030399973 + }, + "contrast": { + "p05": 38.0, + "p95": 183.0, + "dynamic_range": 145.0, + "mean_gray": 116.22860125260961, + "std_gray": 60.975378654093674 + }, + "geometry": { + "distance_to_center_norm": 0.34340929985046387, + "distance_to_border_px": 388.0 + }, + "edge_ratio": 1.1957310908974648, + "edge_lengths_px": [ + 41.231056213378906, + 34.48188018798828, + 41.231056213378906, + 34.48188018798828 + ] + }, + "confidence": 0.7872450089315723 + }, + { + "observation_id": "39df8e0d-5371-4b6a-8ffd-a488f23e4edd", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1052.0, + 572.0 + ], + [ + 1067.0, + 612.0 + ], + [ + 1037.0, + 628.0 + ], + [ + 1025.0, + 587.0 + ] + ], + "center_px": [ + 1045.25, + 599.75 + ], + "quality": { + "area_px": 1363.5, + "perimeter_px": 150.32693099975586, + "sharpness": { + "laplacian_var": 1006.0857327103973 + }, + "contrast": { + "p05": 35.0, + "p95": 182.0, + "dynamic_range": 147.0, + "mean_gray": 87.55157437567861, + "std_gray": 61.08527885104246 + }, + "geometry": { + "distance_to_center_norm": 0.3674362897872925, + "distance_to_border_px": 373.0 + }, + "edge_ratio": 1.38311172556412, + "edge_lengths_px": [ + 42.72002029418945, + 34.0, + 42.72002029418945, + 30.886890411376953 + ] + }, + "confidence": 0.6572137183127795 + }, + { + "observation_id": "46159ae8-d3bb-4625-968a-c7da18084f1d", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1373.0, + 931.0 + ], + [ + 1403.0, + 920.0 + ], + [ + 1417.0, + 952.0 + ], + [ + 1387.0, + 964.0 + ] + ], + "center_px": [ + 1395.0, + 941.75 + ], + "quality": { + "area_px": 1136.0, + "perimeter_px": 135.0394744873047, + "sharpness": { + "laplacian_var": 536.3795719450814 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 59.547588005215125, + "std_gray": 52.80020659255208 + }, + "geometry": { + "distance_to_center_norm": 0.8727903962135315, + "distance_to_border_px": 23.0 + }, + "edge_ratio": 1.1218600885282315, + "edge_lengths_px": [ + 31.95309066772461, + 34.928497314453125, + 32.31098937988281, + 35.84689712524414 + ] + }, + "confidence": 0.3105318897567382 + }, + { + "observation_id": "428b8aae-2665-4c07-95eb-56df8d3e24e3", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1361.0, + 872.0 + ], + [ + 1392.0, + 861.0 + ], + [ + 1405.0, + 893.0 + ], + [ + 1375.0, + 904.0 + ] + ], + "center_px": [ + 1383.25, + 882.5 + ], + "quality": { + "area_px": 1124.5, + "perimeter_px": 134.31518936157227, + "sharpness": { + "laplacian_var": 517.914546739087 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 76.5836627140975, + "std_gray": 53.471581821317514 + }, + "geometry": { + "distance_to_center_norm": 0.8294032216072083, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.0931179608780046, + "edge_lengths_px": [ + 32.893768310546875, + 34.539833068847656, + 31.95309066772461, + 34.928497314453125 + ] + }, + "confidence": 0.480064078578645 + }, + { + "observation_id": "f40f122e-bf9c-4d33-a55f-86d8dedf9a51", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 948.0, + 734.0 + ], + [ + 958.0, + 766.0 + ], + [ + 926.0, + 775.0 + ], + [ + 916.0, + 742.0 + ] + ], + "center_px": [ + 937.0, + 754.25 + ], + "quality": { + "area_px": 1125.0, + "perimeter_px": 134.23437118530273, + "sharpness": { + "laplacian_var": 451.55598900708645 + }, + "contrast": { + "p05": 10.0, + "p95": 140.0, + "dynamic_range": 130.0, + "mean_gray": 60.31848852901484, + "std_gray": 51.76857091737675 + }, + "geometry": { + "distance_to_center_norm": 0.3388288915157318, + "distance_to_border_px": 305.0 + }, + "edge_ratio": 1.0453855707425852, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 34.48188018798828, + 32.98484420776367 + ] + }, + "confidence": 0.717438637944123 + }, + { + "observation_id": "038f1e7c-bfc4-40b2-9fb0-5d3d238e5afe", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 644.0, + 826.0 + ], + [ + 676.0, + 815.0 + ], + [ + 686.0, + 847.0 + ], + [ + 654.0, + 857.0 + ] + ], + "center_px": [ + 665.0, + 836.25 + ], + "quality": { + "area_px": 1113.0, + "perimeter_px": 133.4630584716797, + "sharpness": { + "laplacian_var": 852.4779615278809 + }, + "contrast": { + "p05": 29.0, + "p95": 169.0, + "dynamic_range": 140.0, + "mean_gray": 86.11354309165527, + "std_gray": 58.71854981961371 + }, + "geometry": { + "distance_to_center_norm": 0.334791362285614, + "distance_to_border_px": 223.0 + }, + "edge_ratio": 1.0388313835116465, + "edge_lengths_px": [ + 33.83784866333008, + 33.52610778808594, + 33.52610778808594, + 32.572994232177734 + ] + }, + "confidence": 0.714264135428559 + }, + { + "observation_id": "a7200454-efa7-4c61-919a-c817d630ec3e", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1320.0, + 833.0 + ], + [ + 1351.0, + 823.0 + ], + [ + 1363.0, + 855.0 + ], + [ + 1333.0, + 865.0 + ] + ], + "center_px": [ + 1341.75, + 844.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 451.19488172035136 + }, + "contrast": { + "p05": 7.0, + "p95": 137.0, + "dynamic_range": 130.0, + "mean_gray": 45.32476319350474, + "std_gray": 49.27193956190029 + }, + "geometry": { + "distance_to_center_norm": 0.7689892649650574, + "distance_to_border_px": 77.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.6720101269988878 + }, + { + "observation_id": "75b8c0a5-7b49-4035-847b-29be57f69dfd", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1378.0, + 795.0 + ], + [ + 1409.0, + 785.0 + ], + [ + 1421.0, + 817.0 + ], + [ + 1391.0, + 827.0 + ] + ], + "center_px": [ + 1399.75, + 806.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 495.05510317310643 + }, + "contrast": { + "p05": 8.0, + "p95": 139.0, + "dynamic_range": 131.0, + "mean_gray": 82.98646820027064, + "std_gray": 51.90790044031631 + }, + "geometry": { + "distance_to_center_norm": 0.8110472559928894, + "distance_to_border_px": 19.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.25536384825957736 + }, + { + "observation_id": "05247d8f-58f0-4031-ac70-692c23d5ab34", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 534.0, + 807.0 + ], + [ + 566.0, + 797.0 + ], + [ + 575.0, + 829.0 + ], + [ + 544.0, + 839.0 + ] + ], + "center_px": [ + 554.75, + 818.0 + ], + "quality": { + "area_px": 1103.0, + "perimeter_px": 132.86674880981445, + "sharpness": { + "laplacian_var": 743.494629148182 + }, + "contrast": { + "p05": 35.0, + "p95": 172.0, + "dynamic_range": 137.0, + "mean_gray": 110.58367911479945, + "std_gray": 58.20082187769058 + }, + "geometry": { + "distance_to_center_norm": 0.35934022068977356, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 32.572994232177734, + 33.52610778808594 + ] + }, + "confidence": 0.7144285455619288 + }, + { + "observation_id": "8dc6a9b8-87aa-455e-9ba8-74ab9e07a631", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 824.0, + 853.0 + ], + [ + 854.0, + 841.0 + ], + [ + 867.0, + 872.0 + ], + [ + 836.0, + 884.0 + ] + ], + "center_px": [ + 845.25, + 862.5 + ], + "quality": { + "area_px": 1095.5, + "perimeter_px": 132.40953826904297, + "sharpness": { + "laplacian_var": 442.72637538104226 + }, + "contrast": { + "p05": 14.0, + "p95": 151.0, + "dynamic_range": 137.0, + "mean_gray": 42.81124497991968, + "std_gray": 45.242857765301586 + }, + "geometry": { + "distance_to_center_norm": 0.3844088017940521, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.040372688406745, + "edge_lengths_px": [ + 32.31098937988281, + 33.61547088623047, + 33.241539001464844, + 33.241539001464844 + ] + }, + "confidence": 0.7019920279258633 + }, + { + "observation_id": "42f49ac5-feb5-4d59-973d-fbaf3360af7a", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 590.0, + 838.0 + ], + [ + 621.0, + 828.0 + ], + [ + 631.0, + 859.0 + ], + [ + 600.0, + 870.0 + ] + ], + "center_px": [ + 610.5, + 848.75 + ], + "quality": { + "area_px": 1081.5, + "perimeter_px": 131.56586456298828, + "sharpness": { + "laplacian_var": 731.9229727377668 + }, + "contrast": { + "p05": 31.0, + "p95": 169.0, + "dynamic_range": 138.0, + "mean_gray": 66.63649222065064, + "std_gray": 51.73446481181097 + }, + "geometry": { + "distance_to_center_norm": 0.3639915883541107, + "distance_to_border_px": 210.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 32.572994232177734, + 32.572994232177734, + 32.893768310546875, + 33.52610778808594 + ] + }, + "confidence": 0.7005026944924987 + }, + { + "observation_id": "c787e96b-b620-4bf2-8b24-95f66ea6097d", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 655.0, + 735.0 + ], + [ + 687.0, + 726.0 + ], + [ + 695.0, + 757.0 + ], + [ + 664.0, + 766.0 + ] + ], + "center_px": [ + 675.25, + 746.0 + ], + "quality": { + "area_px": 1053.0, + "perimeter_px": 129.81721115112305, + "sharpness": { + "laplacian_var": 717.9247585125308 + }, + "contrast": { + "p05": 30.0, + "p95": 171.0, + "dynamic_range": 141.0, + "mean_gray": 93.84776536312849, + "std_gray": 59.42619485270114 + }, + "geometry": { + "distance_to_center_norm": 0.23422729969024658, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0382912394254866, + "edge_lengths_px": [ + 33.241539001464844, + 32.015621185302734, + 32.280025482177734, + 32.280025482177734 + ] + }, + "confidence": 0.6761108765479277 + }, + { + "observation_id": "dce0f5e2-dff7-487f-9862-40257295996e", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1325.0, + 744.0 + ], + [ + 1354.0, + 732.0 + ], + [ + 1368.0, + 763.0 + ], + [ + 1339.0, + 774.0 + ] + ], + "center_px": [ + 1346.5, + 753.25 + ], + "quality": { + "area_px": 1045.5, + "perimeter_px": 129.52142906188965, + "sharpness": { + "laplacian_var": 401.9192193180268 + }, + "contrast": { + "p05": 7.0, + "p95": 133.0, + "dynamic_range": 126.0, + "mean_gray": 49.76628895184136, + "std_gray": 49.769446320789825 + }, + "geometry": { + "distance_to_center_norm": 0.735332190990448, + "distance_to_border_px": 72.0 + }, + "edge_ratio": 1.096678006826234, + "edge_lengths_px": [ + 31.38471031188965, + 34.01470184326172, + 31.016124725341797, + 33.105892181396484 + ] + }, + "confidence": 0.63555573802114 + }, + { + "observation_id": "a56080cb-73d1-446f-b890-13e7b0db846a", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 488.0, + 682.0 + ], + [ + 520.0, + 673.0 + ], + [ + 528.0, + 703.0 + ], + [ + 497.0, + 713.0 + ] + ], + "center_px": [ + 508.25, + 692.75 + ], + "quality": { + "area_px": 1041.5, + "perimeter_px": 129.14290809631348, + "sharpness": { + "laplacian_var": 854.9291926161701 + }, + "contrast": { + "p05": 39.0, + "p95": 174.0, + "dynamic_range": 135.0, + "mean_gray": 85.3946251768034, + "std_gray": 55.88886855913174 + }, + "geometry": { + "distance_to_center_norm": 0.2901056110858917, + "distance_to_border_px": 367.0 + }, + "edge_ratio": 1.070637881392484, + "edge_lengths_px": [ + 33.241539001464844, + 31.048349380493164, + 32.572994232177734, + 32.280025482177734 + ] + }, + "confidence": 0.6485230397697823 + }, + { + "observation_id": "c3b29dfd-0483-4285-862e-55aa5080f5a7", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1047.0, + 694.0 + ], + [ + 1058.0, + 725.0 + ], + [ + 1029.0, + 735.0 + ], + [ + 1017.0, + 703.0 + ] + ], + "center_px": [ + 1037.75, + 714.25 + ], + "quality": { + "area_px": 1038.5, + "perimeter_px": 129.06642532348633, + "sharpness": { + "laplacian_var": 702.8589017712277 + }, + "contrast": { + "p05": 13.0, + "p95": 151.0, + "dynamic_range": 138.0, + "mean_gray": 91.26308139534883, + "std_gray": 55.34838633216663 + }, + "geometry": { + "distance_to_center_norm": 0.40265801548957825, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 1.1141061874732403, + "edge_lengths_px": [ + 32.893768310546875, + 30.675724029541016, + 34.1760139465332, + 31.320919036865234 + ] + }, + "confidence": 0.62142490645665 + }, + { + "observation_id": "bef0b9f4-baff-4efa-b7d8-863299b07df7", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 592.0, + 617.0 + ], + [ + 622.0, + 606.0 + ], + [ + 633.0, + 635.0 + ], + [ + 604.0, + 647.0 + ] + ], + "center_px": [ + 612.75, + 626.25 + ], + "quality": { + "area_px": 1002.5, + "perimeter_px": 126.66491508483887, + "sharpness": { + "laplacian_var": 861.4333753048808 + }, + "contrast": { + "p05": 34.0, + "p95": 174.0, + "dynamic_range": 140.0, + "mean_gray": 97.54451038575668, + "std_gray": 59.64062956897272 + }, + "geometry": { + "distance_to_center_norm": 0.15292063355445862, + "distance_to_border_px": 433.0 + }, + "edge_ratio": 1.041748112183823, + "edge_lengths_px": [ + 31.95309066772461, + 31.016124725341797, + 31.38471031188965, + 32.31098937988281 + ] + }, + "confidence": 0.6415498386959416 + }, + { + "observation_id": "07feba3f-7a10-4843-90dc-041f59a43246", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 852.0, + 664.0 + ], + [ + 855.0, + 699.0 + ], + [ + 831.0, + 712.0 + ], + [ + 828.0, + 677.0 + ] + ], + "center_px": [ + 841.5, + 688.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 124.84605026245117, + "sharpness": { + "laplacian_var": 964.1437813663806 + }, + "contrast": { + "p05": 35.0, + "p95": 185.0, + "dynamic_range": 150.0, + "mean_gray": 80.50977198697069, + "std_gray": 59.04237755633671 + }, + "geometry": { + "distance_to_center_norm": 0.21276035904884338, + "distance_to_border_px": 368.0 + }, + "edge_ratio": 1.2870027603239267, + "edge_lengths_px": [ + 35.12833786010742, + 27.294687271118164, + 35.12833786010742, + 27.294687271118164 + ] + }, + "confidence": 0.45532147876086076 + }, + { + "observation_id": "342bce7a-4547-4e8e-b446-3954a3bc8d54", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 549.0 + ], + [ + 750.0, + 540.0 + ], + [ + 759.0, + 570.0 + ], + [ + 728.0, + 578.0 + ] + ], + "center_px": [ + 739.25, + 559.25 + ], + "quality": { + "area_px": 972.0, + "perimeter_px": 124.74067687988281, + "sharpness": { + "laplacian_var": 858.8311608781246 + }, + "contrast": { + "p05": 30.0, + "p95": 176.0, + "dynamic_range": 146.0, + "mean_gray": 89.6813509544787, + "std_gray": 60.460128160193484 + }, + "geometry": { + "distance_to_center_norm": 0.030248457565903664, + "distance_to_border_px": 502.0 + }, + "edge_ratio": 1.0642352686074992, + "edge_lengths_px": [ + 31.320919036865234, + 31.320919036865234, + 32.015621185302734, + 30.08321762084961 + ] + }, + "confidence": 0.6088879208521975 + }, + { + "observation_id": "5397550c-c648-46d7-a05c-00c1af104a7a", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 670.0, + 478.0 + ], + [ + 700.0, + 469.0 + ], + [ + 710.0, + 497.0 + ], + [ + 680.0, + 507.0 + ] + ], + "center_px": [ + 690.0, + 487.75 + ], + "quality": { + "area_px": 950.0, + "perimeter_px": 123.3515567779541, + "sharpness": { + "laplacian_var": 744.1718727855725 + }, + "contrast": { + "p05": 33.0, + "p95": 177.0, + "dynamic_range": 144.0, + "mean_gray": 123.30505952380952, + "std_gray": 58.57233093015588 + }, + "geometry": { + "distance_to_center_norm": 0.06694444268941879, + "distance_to_border_px": 469.0 + }, + "edge_ratio": 1.0635890487184443, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.62277603149414, + 30.675724029541016 + ] + }, + "confidence": 0.5954680843098741 + }, + { + "observation_id": "3d92ed0d-8be5-4bd1-874f-a527fb1c2987", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 519.0, + 393.0 + ], + [ + 550.0, + 385.0 + ], + [ + 558.0, + 413.0 + ], + [ + 527.0, + 421.0 + ] + ], + "center_px": [ + 538.5, + 403.0 + ], + "quality": { + "area_px": 932.0, + "perimeter_px": 122.27212142944336, + "sharpness": { + "laplacian_var": 797.3173110559737 + }, + "contrast": { + "p05": 38.0, + "p95": 176.19999999999993, + "dynamic_range": 138.19999999999993, + "mean_gray": 94.14307458143075, + "std_gray": 55.87143525094488 + }, + "geometry": { + "distance_to_center_norm": 0.2526678740978241, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0994209463411062, + "edge_lengths_px": [ + 32.015621185302734, + 29.120439529418945, + 32.015621185302734, + 29.120439529418945 + ] + }, + "confidence": 0.5651459847123547 + }, + { + "observation_id": "40c7811c-c972-4114-8318-935c27b99e22", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 613.0, + 419.0 + ], + [ + 643.0, + 410.0 + ], + [ + 653.0, + 438.0 + ], + [ + 623.0, + 447.0 + ] + ], + "center_px": [ + 633.0, + 428.5 + ], + "quality": { + "area_px": 930.0, + "perimeter_px": 122.10611343383789, + "sharpness": { + "laplacian_var": 823.1077646304283 + }, + "contrast": { + "p05": 33.0, + "p95": 175.0, + "dynamic_range": 142.0, + "mean_gray": 90.3810975609756, + "std_gray": 58.11551162536803 + }, + "geometry": { + "distance_to_center_norm": 0.15713976323604584, + "distance_to_border_px": 410.0 + }, + "edge_ratio": 1.0534364993835403, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.320919036865234, + 29.73213768005371 + ] + }, + "confidence": 0.5885499509109636 + }, + { + "observation_id": "6fe50e0d-f6cc-4fec-b612-c2465237f544", + "type": "aruco", + "marker_id": 82, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 420.0 + ], + [ + 1365.0, + 411.0 + ], + [ + 1377.0, + 439.0 + ], + [ + 1348.0, + 448.0 + ] + ], + "center_px": [ + 1356.5, + 429.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 492.47728625272765 + }, + "contrast": { + "p05": 8.0, + "p95": 144.0, + "dynamic_range": 136.0, + "mean_gray": 74.61658841940532, + "std_gray": 56.63950003540781 + }, + "geometry": { + "distance_to_center_norm": 0.7178005576133728, + "distance_to_border_px": 63.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.6113473409254715 + }, + { + "observation_id": "458ed9b3-74b8-4f05-b2f8-3de59d838c2f", + "type": "aruco", + "marker_id": 73, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1381.0, + 409.0 + ], + [ + 1410.0, + 400.0 + ], + [ + 1422.0, + 428.0 + ], + [ + 1393.0, + 437.0 + ] + ], + "center_px": [ + 1401.5, + 418.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 771.0965392424098 + }, + "contrast": { + "p05": 9.0, + "p95": 148.0, + "dynamic_range": 139.0, + "mean_gray": 87.07042253521126, + "std_gray": 52.83472667385498 + }, + "geometry": { + "distance_to_center_norm": 0.7691621780395508, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.22008504273316973 + }, + { + "observation_id": "6c16ffbd-7862-4eea-9bc9-cc7f3672bbd1", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 881.0, + 288.0 + ], + [ + 892.0, + 316.0 + ], + [ + 863.0, + 326.0 + ], + [ + 852.0, + 298.0 + ] + ], + "center_px": [ + 872.0, + 307.0 + ], + "quality": { + "area_px": 922.0, + "perimeter_px": 121.51788330078125, + "sharpness": { + "laplacian_var": 865.0098318523201 + }, + "contrast": { + "p05": 22.0, + "p95": 172.0, + "dynamic_range": 150.0, + "mean_gray": 82.59908536585365, + "std_gray": 60.95016906391271 + }, + "geometry": { + "distance_to_center_norm": 0.30910664796829224, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.0196955796470641, + "edge_lengths_px": [ + 30.08321762084961, + 30.675724029541016, + 30.08321762084961, + 30.675724029541016 + ] + }, + "confidence": 0.60279428383853 + }, + { + "observation_id": "08e39b93-94f1-4901-afd7-8b2cfabbb5a6", + "type": "aruco", + "marker_id": 52, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1170.0, + 304.0 + ], + [ + 1198.0, + 294.0 + ], + [ + 1211.0, + 321.0 + ], + [ + 1182.0, + 331.0 + ] + ], + "center_px": [ + 1190.25, + 312.5 + ], + "quality": { + "area_px": 894.5, + "perimeter_px": 119.92108345031738, + "sharpness": { + "laplacian_var": 736.7821607663999 + }, + "contrast": { + "p05": 12.0, + "p95": 162.0, + "dynamic_range": 150.0, + "mean_gray": 73.56239870340356, + "std_gray": 59.95824921853181 + }, + "geometry": { + "distance_to_center_norm": 0.5804333686828613, + "distance_to_border_px": 229.0 + }, + "edge_ratio": 1.038215950330626, + "edge_lengths_px": [ + 29.73213768005371, + 29.96664810180664, + 30.675724029541016, + 29.546573638916016 + ] + }, + "confidence": 0.5743827506632194 + }, + { + "observation_id": "dbbb740f-4d01-4449-8737-44d9acf4a7cd", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 621.0, + 329.0 + ], + [ + 651.0, + 320.0 + ], + [ + 660.0, + 347.0 + ], + [ + 630.0, + 356.0 + ] + ], + "center_px": [ + 640.5, + 338.0 + ], + "quality": { + "area_px": 891.0, + "perimeter_px": 119.56283569335938, + "sharpness": { + "laplacian_var": 820.498501862312 + }, + "contrast": { + "p05": 32.0, + "p95": 175.0, + "dynamic_range": 143.0, + "mean_gray": 89.84786053882726, + "std_gray": 58.95198554771998 + }, + "geometry": { + "distance_to_center_norm": 0.24120134115219116, + "distance_to_border_px": 320.0 + }, + "edge_ratio": 1.1005049224950472, + "edge_lengths_px": [ + 31.320919036865234, + 28.460498809814453, + 31.320919036865234, + 28.460498809814453 + ] + }, + "confidence": 0.5397522426826521 + }, + { + "observation_id": "637fc96a-a4e3-4a1a-aeef-2f078b23a7b6", + "type": "aruco", + "marker_id": 77, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1106.0, + 220.0 + ], + [ + 1135.0, + 213.0 + ], + [ + 1145.0, + 239.0 + ], + [ + 1116.0, + 248.0 + ] + ], + "center_px": [ + 1125.5, + 230.0 + ], + "quality": { + "area_px": 863.0, + "perimeter_px": 117.78623580932617, + "sharpness": { + "laplacian_var": 634.9850778546712 + }, + "contrast": { + "p05": 11.0, + "p95": 158.0, + "dynamic_range": 147.0, + "mean_gray": 69.19607843137256, + "std_gray": 58.47258547896745 + }, + "geometry": { + "distance_to_center_norm": 0.5671351552009583, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.0900202903476583, + "edge_lengths_px": [ + 29.832868576049805, + 27.85677719116211, + 30.364452362060547, + 29.73213768005371 + ] + }, + "confidence": 0.5278189208292927 + }, + { + "observation_id": "3acdcf7b-31f9-4db5-ab19-b6cb082c31dc", + "type": "aruco", + "marker_id": 83, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1304.0, + 199.0 + ], + [ + 1332.0, + 191.0 + ], + [ + 1343.0, + 218.0 + ], + [ + 1314.0, + 226.0 + ] + ], + "center_px": [ + 1323.25, + 208.5 + ], + "quality": { + "area_px": 853.5, + "perimeter_px": 117.15077781677246, + "sharpness": { + "laplacian_var": 787.246986385212 + }, + "contrast": { + "p05": 11.0, + "p95": 159.19999999999993, + "dynamic_range": 148.19999999999993, + "mean_gray": 92.65964343598056, + "std_gray": 57.146865375444264 + }, + "geometry": { + "distance_to_center_norm": 0.7648148536682129, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0448333273602466, + "edge_lengths_px": [ + 29.120439529418945, + 29.154760360717773, + 30.08321762084961, + 28.792360305786133 + ] + }, + "confidence": 0.5445844663450473 + }, + { + "observation_id": "f9d50d40-d75e-4206-91ef-adcb603d7743", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1089.0, + 172.0 + ], + [ + 1118.0, + 165.0 + ], + [ + 1127.0, + 192.0 + ], + [ + 1098.0, + 199.0 + ] + ], + "center_px": [ + 1108.0, + 182.0 + ], + "quality": { + "area_px": 846.0, + "perimeter_px": 116.58673477172852, + "sharpness": { + "laplacian_var": 840.0864058387932 + }, + "contrast": { + "p05": 18.0, + "p95": 165.0, + "dynamic_range": 147.0, + "mean_gray": 108.12054329371817, + "std_gray": 55.17911014115476 + }, + "geometry": { + "distance_to_center_norm": 0.5865867137908936, + "distance_to_border_px": 165.0 + }, + "edge_ratio": 1.048220158592656, + "edge_lengths_px": [ + 29.832868576049805, + 28.460498809814453, + 29.832868576049805, + 28.460498809814453 + ] + }, + "confidence": 0.5380549070504695 + }, + { + "observation_id": "d2a264e0-3bfb-4145-a74b-70f2d353ad12", + "type": "aruco", + "marker_id": 61, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1260.0, + 127.0 + ], + [ + 1287.0, + 117.0 + ], + [ + 1300.0, + 143.0 + ], + [ + 1273.0, + 153.0 + ] + ], + "center_px": [ + 1280.0, + 135.0 + ], + "quality": { + "area_px": 832.0, + "perimeter_px": 115.72248840332031, + "sharpness": { + "laplacian_var": 747.7801521890221 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 95.53195164075993, + "std_gray": 57.42506055833918 + }, + "geometry": { + "distance_to_center_norm": 0.7678935527801514, + "distance_to_border_px": 117.0 + }, + "edge_ratio": 1.0096040611867558, + "edge_lengths_px": [ + 28.792360305786133, + 29.068883895874023, + 28.792360305786133, + 29.068883895874023 + ] + }, + "confidence": 0.5493902887184056 + }, + { + "observation_id": "88a7806a-1a6a-4550-b5fa-401dd1df5f37", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 842.0, + 759.0 + ], + [ + 869.0, + 767.0 + ], + [ + 844.0, + 778.0 + ], + [ + 816.0, + 770.0 + ] + ], + "center_px": [ + 842.75, + 768.5 + ], + "quality": { + "area_px": 506.5, + "perimeter_px": 112.82488250732422, + "sharpness": { + "laplacian_var": 927.7063988919667 + }, + "contrast": { + "p05": 19.0, + "p95": 83.0, + "dynamic_range": 64.0, + "mean_gray": 43.613157894736844, + "std_gray": 22.719116354348767 + }, + "geometry": { + "distance_to_center_norm": 0.2882038950920105, + "distance_to_border_px": 302.0 + }, + "edge_ratio": 1.0661750749552474, + "edge_lengths_px": [ + 28.160255432128906, + 27.312999725341797, + 29.120439529418945, + 28.23118782043457 + ] + }, + "confidence": 0.25336676844060735 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1315.0, + 285.0 + ], + [ + 1328.0, + 312.0 + ], + [ + 1300.0, + 322.0 + ], + [ + 1287.0, + 295.0 + ] + ], + "center_px": [ + 1307.5, + 303.5 + ], + "area_px": 886.0 + }, + { + "image_points_px": [ + [ + 1003.0, + 394.0 + ], + [ + 972.0, + 415.0 + ], + [ + 973.0, + 410.0 + ], + [ + 985.0, + 400.0 + ] + ], + "center_px": [ + 983.25, + 404.75 + ], + "area_px": 121.0 + }, + { + "image_points_px": [ + [ + 780.0, + 278.0 + ], + [ + 783.0, + 279.0 + ], + [ + 797.0, + 300.0 + ], + [ + 795.0, + 302.0 + ] + ], + "center_px": [ + 788.75, + 289.75 + ], + "area_px": 63.5 + }, + { + "image_points_px": [ + [ + 1087.0, + 550.0 + ], + [ + 1063.0, + 565.0 + ], + [ + 1074.0, + 554.0 + ], + [ + 1082.0, + 550.0 + ] + ], + "center_px": [ + 1076.5, + 554.75 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 665.0, + 67.0 + ], + [ + 675.0, + 85.0 + ], + [ + 674.0, + 91.0 + ], + [ + 667.0, + 78.0 + ] + ], + "center_px": [ + 670.25, + 80.25 + ], + "area_px": 64.5 + }, + { + "image_points_px": [ + [ + 1107.0, + 93.0 + ], + [ + 1110.0, + 95.0 + ], + [ + 1120.0, + 115.0 + ], + [ + 1115.0, + 111.0 + ] + ], + "center_px": [ + 1113.0, + 103.5 + ], + "area_px": 49.0 + }, + { + "image_points_px": [ + [ + 735.0, + 232.0 + ], + [ + 745.0, + 254.0 + ], + [ + 742.0, + 252.0 + ], + [ + 736.0, + 239.0 + ] + ], + "center_px": [ + 739.5, + 244.25 + ], + "area_px": 37.5 + }, + { + "image_points_px": [ + [ + 1214.0, + 340.0 + ], + [ + 1219.0, + 346.0 + ], + [ + 1223.0, + 362.0 + ], + [ + 1216.0, + 349.0 + ] + ], + "center_px": [ + 1218.0, + 349.25 + ], + "area_px": 46.5 + }, + { + "image_points_px": [ + [ + 1121.0, + 562.0 + ], + [ + 1129.0, + 569.0 + ], + [ + 1131.0, + 577.0 + ], + [ + 1130.0, + 583.0 + ] + ], + "center_px": [ + 1127.75, + 572.75 + ], + "area_px": 62.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/render_f_camera_pose.json b/data/camera_study/Scene10/k3_bcf/render_f_camera_pose.json new file mode 100644 index 0000000..d326f72 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/render_f_camera_pose.json @@ -0,0 +1,582 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:22Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_bcf\\render_f_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "f", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 27, + "used_marker_ids": [ + 68, + 46, + 208, + 47, + 56, + 53, + 97, + 62, + 54, + 55, + 72, + 66, + 214, + 95, + 51, + 103, + 69, + 58, + 82, + 73, + 210, + 52, + 64, + 77, + 83, + 75, + 61 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3, + 4 + ], + "rms": [ + 0.00918677717341902, + 0.0014933429518723808, + 0.001390373853667637, + 0.0013903699834861628, + 0.0013903699807887252 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125, + 6.25e-05 + ] + }, + "residual_rms_px": 3.941603533751138, + "residual_median_px": 3.7352373317630128, + "residual_max_px": 5.771900878439298, + "sigma2_normalized": 2.17476976890378e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.31769248843193054, + 0.9481521248817444, + 0.008892479352653027 + ], + [ + 0.9206541180610657, + -0.30620789527893066, + -0.242141991853714 + ], + [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + ], + "translation_m": [ + 0.12344730645418167, + -0.19988536834716797, + 1.4972078800201416 + ], + "rvec_rad": [ + 2.378352663832453, + 1.7133801592888853, + -0.1998435821316908 + ] + }, + "camera_in_world": { + "position_m": [ + 0.48447033762931824, + -0.3056860566139221, + 1.4030927419662476 + ], + "position_mm": [ + 484.4703369140625, + -305.6860656738281, + 1403.0927734375 + ], + "orientation_deg": { + "roll": 174.98638916015625, + "pitch": 13.112541198730469, + "yaw": 70.96184539794922 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 3.2311819447272024e-05, + 1.8832577487974546e-05, + -4.656767371183097e-06, + -4.18150026429738e-07, + 2.6114865287331025e-07, + 2.406181848846857e-06 + ], + [ + 1.8832577487974533e-05, + 1.683541014579236e-05, + -7.3574856590594524e-06, + 4.5948447714477966e-07, + 3.095065254407523e-08, + 2.3847847067019377e-06 + ], + [ + -4.6567673711861375e-06, + -7.357485659062205e-06, + 0.00016783973036034415, + 1.5647826411604766e-06, + -1.729586622472892e-06, + -2.906231789157714e-05 + ], + [ + -4.1815002642977447e-07, + 4.594844771447391e-07, + 1.5647826411606013e-06, + 3.507815548304795e-07, + -2.7134564617847737e-08, + 2.4204791300702807e-07 + ], + [ + 2.611486528733672e-07, + 3.0950652544076366e-08, + -1.729586622472832e-06, + -2.7134564617850665e-08, + 1.9997327434023874e-07, + 4.1386012647726157e-07 + ], + [ + 2.4061818488473495e-06, + 2.384784706702394e-06, + -2.9062317891576876e-05, + 2.420479130070509e-07, + 4.138601264772586e-07, + 9.270646369219581e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.3256891862833913, + 0.23509017702077495, + 0.7422838625560957 + ], + "tvec_std_m": [ + 0.0005922681443657758, + 0.00044718371430569644, + 0.003044773615430149 + ] + }, + "camera_center_std_m": [ + 0.011255169411300251, + 0.011919325044430497, + 0.004596769734438054 + ], + "camera_center_std_mm": [ + 11.255169411300251, + 11.919325044430497, + 4.5967697344380545 + ], + "orientation_std_deg": { + "roll": 0.5094522091773732, + "pitch": 0.4352540861263008, + "yaw": 0.1004884180203833 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 68, + "observed_center_px": [ + 1395.0, + 941.75 + ], + "projected_center_px": [ + 1389.3548583984375, + 940.5469970703125 + ], + "reprojection_error_px": 5.771900878439298, + "confidence": 0.3105318897567382 + }, + { + "marker_id": 46, + "observed_center_px": [ + 1383.25, + 882.5 + ], + "projected_center_px": [ + 1387.9061279296875, + 883.3380737304688 + ], + "reprojection_error_px": 4.7309507369362676, + "confidence": 0.480064078578645 + }, + { + "marker_id": 208, + "observed_center_px": [ + 937.0, + 754.25 + ], + "projected_center_px": [ + 934.9244995117188, + 751.2972412109375 + ], + "reprojection_error_px": 3.6092224568792584, + "confidence": 0.717438637944123 + }, + { + "marker_id": 47, + "observed_center_px": [ + 665.0, + 836.25 + ], + "projected_center_px": [ + 667.4868774414062, + 835.926025390625 + ], + "reprojection_error_px": 2.507891336580391, + "confidence": 0.714264135428559 + }, + { + "marker_id": 56, + "observed_center_px": [ + 1341.75, + 844.0 + ], + "projected_center_px": [ + 1344.8751220703125, + 839.613037109375 + ], + "reprojection_error_px": 5.386263209134431, + "confidence": 0.6720101269988878 + }, + { + "marker_id": 53, + "observed_center_px": [ + 1399.75, + 806.0 + ], + "projected_center_px": [ + 1394.572998046875, + 803.723388671875 + ], + "reprojection_error_px": 5.655467121468141, + "confidence": 0.25536384825957736 + }, + { + "marker_id": 97, + "observed_center_px": [ + 554.75, + 818.0 + ], + "projected_center_px": [ + 552.1571044921875, + 815.3113403320312 + ], + "reprojection_error_px": 3.7352373317630128, + "confidence": 0.7144285455619288 + }, + { + "marker_id": 62, + "observed_center_px": [ + 845.25, + 862.5 + ], + "projected_center_px": [ + 843.9764404296875, + 867.170166015625 + ], + "reprojection_error_px": 4.840702902743903, + "confidence": 0.7019920279258633 + }, + { + "marker_id": 54, + "observed_center_px": [ + 610.5, + 848.75 + ], + "projected_center_px": [ + 607.426025390625, + 853.0718994140625 + ], + "reprojection_error_px": 5.30359636891383, + "confidence": 0.7005026944924987 + }, + { + "marker_id": 55, + "observed_center_px": [ + 675.25, + 746.0 + ], + "projected_center_px": [ + 672.9774169921875, + 745.18359375 + ], + "reprojection_error_px": 2.4147779799470532, + "confidence": 0.6761108765479277 + }, + { + "marker_id": 72, + "observed_center_px": [ + 1346.5, + 753.25 + ], + "projected_center_px": [ + 1346.513671875, + 751.8689575195312 + ], + "reprojection_error_px": 1.381110152386584, + "confidence": 0.63555573802114 + }, + { + "marker_id": 66, + "observed_center_px": [ + 508.25, + 692.75 + ], + "projected_center_px": [ + 508.324951171875, + 692.6304321289062 + ], + "reprojection_error_px": 0.14111751827228045, + "confidence": 0.6485230397697823 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1037.75, + 714.25 + ], + "projected_center_px": [ + 1041.2877197265625, + 715.8521118164062 + ], + "reprojection_error_px": 3.8835838005607632, + "confidence": 0.62142490645665 + }, + { + "marker_id": 95, + "observed_center_px": [ + 612.75, + 626.25 + ], + "projected_center_px": [ + 616.0951538085938, + 624.1017456054688 + ], + "reprojection_error_px": 3.975556683883667, + "confidence": 0.6415498386959416 + }, + { + "marker_id": 51, + "observed_center_px": [ + 739.25, + 559.25 + ], + "projected_center_px": [ + 740.84765625, + 558.3189086914062 + ], + "reprojection_error_px": 1.8491718465580436, + "confidence": 0.6088879208521975 + }, + { + "marker_id": 103, + "observed_center_px": [ + 690.0, + 487.75 + ], + "projected_center_px": [ + 694.0453491210938, + 487.8307800292969 + ], + "reprojection_error_px": 4.046155573463183, + "confidence": 0.5954680843098741 + }, + { + "marker_id": 69, + "observed_center_px": [ + 538.5, + 403.0 + ], + "projected_center_px": [ + 534.0264892578125, + 406.2565612792969 + ], + "reprojection_error_px": 5.5333073045225545, + "confidence": 0.5651459847123547 + }, + { + "marker_id": 58, + "observed_center_px": [ + 633.0, + 428.5 + ], + "projected_center_px": [ + 631.8712768554688, + 432.2906494140625 + ], + "reprojection_error_px": 3.9551281796337383, + "confidence": 0.5885499509109636 + }, + { + "marker_id": 82, + "observed_center_px": [ + 1356.5, + 429.5 + ], + "projected_center_px": [ + 1358.176025390625, + 429.6244201660156 + ], + "reprojection_error_px": 1.6806372266884486, + "confidence": 0.6113473409254715 + }, + { + "marker_id": 73, + "observed_center_px": [ + 1401.5, + 418.5 + ], + "projected_center_px": [ + 1403.8709716796875, + 418.31756591796875 + ], + "reprojection_error_px": 2.377980004156206, + "confidence": 0.22008504273316973 + }, + { + "marker_id": 210, + "observed_center_px": [ + 872.0, + 307.0 + ], + "projected_center_px": [ + 871.6832885742188, + 304.965087890625 + ], + "reprojection_error_px": 2.0594109400751965, + "confidence": 0.60279428383853 + }, + { + "marker_id": 52, + "observed_center_px": [ + 1190.25, + 312.5 + ], + "projected_center_px": [ + 1186.0579833984375, + 316.39373779296875 + ], + "reprojection_error_px": 5.7213807064526625, + "confidence": 0.5743827506632194 + }, + { + "marker_id": 64, + "observed_center_px": [ + 640.5, + 338.0 + ], + "projected_center_px": [ + 640.4821166992188, + 334.9952087402344 + ], + "reprojection_error_px": 3.0048444763765603, + "confidence": 0.5397522426826521 + }, + { + "marker_id": 77, + "observed_center_px": [ + 1125.5, + 230.0 + ], + "projected_center_px": [ + 1128.3472900390625, + 234.04983520507812 + ], + "reprojection_error_px": 4.950578325290361, + "confidence": 0.5278189208292927 + }, + { + "marker_id": 83, + "observed_center_px": [ + 1323.25, + 208.5 + ], + "projected_center_px": [ + 1319.932373046875, + 207.5139923095703 + ], + "reprojection_error_px": 3.461048940088533, + "confidence": 0.5445844663450473 + }, + { + "marker_id": 75, + "observed_center_px": [ + 1108.0, + 182.0 + ], + "projected_center_px": [ + 1111.3167724609375, + 182.71337890625 + ], + "reprojection_error_px": 3.392622734922916, + "confidence": 0.5380549070504695 + }, + { + "marker_id": 61, + "observed_center_px": [ + 1280.0, + 135.0 + ], + "projected_center_px": [ + 1282.8663330078125, + 133.39898681640625 + ], + "reprojection_error_px": 3.283155208898362, + "confidence": 0.5493902887184056 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/robot_state.eval.json b/data/camera_study/Scene10/k3_bcf/robot_state.eval.json new file mode 100644 index 0000000..17852f2 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 120.38686657326853, + "gt": 120.0, + "error": 0.38686657326853435, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 59.74079147271642, + "gt": 60.0, + "error": 0.25920852728359023, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.88832943232683, + "gt": -110.0, + "error": 0.11167056767317263, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "a", + "estimate": 20.49075144528145, + "gt": 20.0, + "error": 0.490751445281461, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "b", + "estimate": 0.0, + "gt": 30.0, + "error": 30.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "c", + "estimate": 0.0, + "gt": 180.0, + "error": 180.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "e", + "estimate": 0.0, + "gt": 4.0, + "error": 4.0, + "unit": "mm", + "observable": false, + "n_markers": 0 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.28721018007940796, + "max_abs_deg": 0.490751445281461, + "mean_abs_mm": 0.38686657326853435, + "max_abs_mm": 0.38686657326853435 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bcf/robot_state.json b/data/camera_study/Scene10/k3_bcf/robot_state.json new file mode 100644 index 0000000..243b3a4 --- /dev/null +++ b/data/camera_study/Scene10/k3_bcf/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:25Z", + "method": "hybrid", + "movements": { + "x": { + "value": 120.38686657326853, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 59.74079147271642, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.88832943232683, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "a": { + "value": 20.49075144528145, + "unit": "deg", + "observable": true, + "confidence": "medium", + "n_markers": 1 + }, + "b": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "c": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "e": { + "value": 0.0, + "unit": "mm", + "observable": false, + "confidence": "none", + "n_markers": 0 + } + }, + "residual_rms": 2.554417606163099, + "num_markers": 21 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/aruco_marker_poses.json b/data/camera_study/Scene10/k3_bdg/aruco_marker_poses.json new file mode 100644 index 0000000..b2d4f33 --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/aruco_marker_poses.json @@ -0,0 +1,1099 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:19:04Z", + "summary": { + "num_cameras": 3, + "num_markers": 24 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.3437577637113646, + -0.28838525752123456, + -0.027508709721255294 + ], + "position_mm": [ + 343.7577637113646, + -288.38525752123456, + -27.508709721255293 + ], + "normal": [ + 0.02290139577590852, + -0.00474600713390405, + 0.9997264633327458 + ], + "corners_m": [ + [ + 0.33178886903351323, + -0.29979220964636605, + -0.027350709629939154 + ], + [ + 0.33241569742607135, + -0.27685310661369833, + -0.02713248865104889 + ], + [ + 0.3557952405334664, + -0.27694375859998144, + -0.027791613491446248 + ], + [ + 0.35503124785240725, + -0.2999519552248923, + -0.027760027112586873 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.151285517508793 + }, + { + "marker_id": 48, + "link": "Board", + "position_m": [ + 0.6869175479989345, + -0.318269455183772, + -0.026615550426303296 + ], + "position_mm": [ + 686.9175479989344, + -318.269455183772, + -26.615550426303297 + ], + "normal": [ + 0.019203495951754204, + 0.01551879044723681, + 0.9996951499763744 + ], + "corners_m": [ + [ + 0.6751413755528558, + -0.3304082207649319, + -0.026241531682561478 + ], + [ + 0.6756073850806442, + -0.30646781658535543, + -0.026538611405195544 + ], + [ + 0.6980966149767299, + -0.30696259434947254, + -0.0270517758810516 + ], + [ + 0.6988248163855075, + -0.3292391890353282, + -0.02663028273640457 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.113811794498364 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16791509828576257, + -0.17356612585643777, + -0.027389647328830386 + ], + "position_mm": [ + 167.91509828576255, + -173.56612585643776, + -27.389647328830385 + ], + "normal": [ + -0.014525107175956765, + -0.003574152644957307, + 0.9998881170883058 + ], + "corners_m": [ + [ + 0.15582664248498654, + -0.18455681701293383, + -0.02767348462735602 + ], + [ + 0.1566254224467779, + -0.16166444121973297, + -0.027441491532093725 + ], + [ + 0.17990200993508204, + -0.16219139909354996, + -0.027242251440187038 + ], + [ + 0.1793063182762038, + -0.18585184609953426, + -0.02720136171568477 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.344741926612517 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.4882003560338498, + 0.21454919235920805, + -0.026922011646615267 + ], + "position_mm": [ + 488.2003560338498, + 214.54919235920806, + -26.922011646615267 + ], + "normal": [ + -0.029659504505452988, + -0.017595028497744532, + 0.9994051874813612 + ], + "corners_m": [ + [ + 0.4767699379764077, + 0.20330095680321536, + -0.027672222780932863 + ], + [ + 0.47706098604732483, + 0.22627406811344827, + -0.026831355258605454 + ], + [ + 0.4995452085482018, + 0.22579164311548014, + -0.02660250535209066 + ], + [ + 0.499425291563465, + 0.20283010140468835, + -0.026581963194832095 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.782305498437523 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.33983215091536567, + -0.32773152671307126, + -0.026417068136973178 + ], + "position_mm": [ + 339.8321509153657, + -327.7315267130713, + -26.417068136973178 + ], + "normal": [ + 0.008806718301750185, + 0.018148609167345897, + 0.9997965141457759 + ], + "corners_m": [ + [ + 0.32787207295185494, + -0.3393877394738691, + -0.02560940682237308 + ], + [ + 0.32884608301774315, + -0.3160057739443904, + -0.027037110752624396 + ], + [ + 0.3514929458617336, + -0.316224134609103, + -0.026217462235393174 + ], + [ + 0.3511175018301311, + -0.3393084588249228, + -0.02680429273750206 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.119895944931365 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.28445732745582347, + -0.26106235286605983, + -0.027127443792702346 + ], + "position_mm": [ + 284.4573274558235, + -261.0623528660598, + -27.127443792702344 + ], + "normal": [ + -0.01515388465873932, + 0.007020801424972412, + 0.99986052433682 + ], + "corners_m": [ + [ + 0.2724882022547233, + -0.2725441165389951, + -0.02740414690326164 + ], + [ + 0.27330457036437134, + -0.24930809929726835, + -0.027201889568481616 + ], + [ + 0.29634998972056853, + -0.2496963815903531, + -0.027205881996666865 + ], + [ + 0.2956865474836307, + -0.2727008140376229, + -0.026697856702399273 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.132287815360648 + }, + { + "marker_id": 59, + "link": "Board", + "position_m": [ + 0.6271531267350818, + -0.2767460787695593, + -0.02680912156499644 + ], + "position_mm": [ + 627.1531267350819, + -276.7460787695593, + -26.809121564996442 + ], + "normal": [ + -0.017553027598460103, + -0.018829929153653342, + 0.9996686075846316 + ], + "corners_m": [ + [ + 0.6163665738281722, + -0.2884168282951614, + -0.02708587373036205 + ], + [ + 0.615419349019124, + -0.2658152874581792, + -0.026941169391599955 + ], + [ + 0.6379736103226642, + -0.2648156154961137, + -0.02626549888750094 + ], + [ + 0.6388529737703668, + -0.28793658382878307, + -0.026943944250522805 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.711990484789286 + }, + { + "marker_id": 63, + "link": "Board", + "position_m": [ + 0.7745275530930732, + -0.23668902044925139, + -0.0268275714430213 + ], + "position_mm": [ + 774.5275530930732, + -236.6890204492514, + -26.827571443021302 + ], + "normal": [ + 2.1180374299654616e-05, + 0.0409148460165396, + 0.9991626368749157 + ], + "corners_m": [ + [ + 0.7633842187513384, + -0.2489041225725764, + -0.02604133462583499 + ], + [ + 0.7631291842153038, + -0.22554286848148805, + -0.02757565605017666 + ], + [ + 0.7854454231093616, + -0.22485982283181333, + -0.027010091014729357 + ], + [ + 0.7861513862962891, + -0.2474492679111277, + -0.0266832040813442 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.79307389516771 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.01909267534900415, + -0.18960982971739926, + -0.02694392592200973 + ], + "position_mm": [ + -19.09267534900415, + -189.60982971739926, + -26.94392592200973 + ], + "normal": [ + 0.015514117729334222, + 0.01456470478785899, + 0.9997735651263855 + ], + "corners_m": [ + [ + -0.030889716700635582, + -0.20101004954329457, + -0.02670887459358297 + ], + [ + -0.0307015158384876, + -0.17805559282454522, + -0.026817352770505353 + ], + [ + -0.007367211791633825, + -0.17824705885828548, + -0.027406509444755277 + ], + [ + -0.007412257065259577, + -0.20112661764347178, + -0.02684296687919531 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.16567114925995 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.005943372748162582, + -0.2778036799466163, + -0.026960847894043037 + ], + "position_mm": [ + 5.943372748162582, + -277.8036799466163, + -26.960847894043038 + ], + "normal": [ + 0.012798047414919163, + 0.0019636994971768966, + 0.9999161734198774 + ], + "corners_m": [ + [ + -0.005840977855237068, + -0.2893581398202042, + -0.026757518275956096 + ], + [ + -0.0054972965063023625, + -0.26610055483532946, + -0.026867614464344144 + ], + [ + 0.017571837089716245, + -0.2662597619975393, + -0.027102108843662123 + ], + [ + 0.017539928264473512, + -0.2894962631333922, + -0.02711614999220978 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.237962765555313 + }, + { + "marker_id": 71, + "link": "Board", + "position_m": [ + 0.7509111191421864, + -0.2855038724522174, + -0.026645208288605504 + ], + "position_mm": [ + 750.9111191421864, + -285.5038724522174, + -26.645208288605502 + ], + "normal": [ + -0.041777888769783986, + -0.024469560501440446, + 0.9988272366224331 + ], + "corners_m": [ + [ + 0.7391127988200036, + -0.29637083291585326, + -0.027120191741793056 + ], + [ + 0.740890300929251, + -0.2730886316287105, + -0.027058084553021295 + ], + [ + 0.762190290099723, + -0.2746721988504304, + -0.0256087849700469 + ], + [ + 0.7614510867197684, + -0.29788382641387556, + -0.026793771889560763 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.60084523822078 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.4414133198826211, + 0.1935115960456138, + -0.02738745789971034 + ], + "position_mm": [ + 441.4133198826211, + 193.5115960456138, + -27.38745789971034 + ], + "normal": [ + 0.02298579013478705, + 0.036855436629363525, + 0.9990562197607994 + ], + "corners_m": [ + [ + 0.4301134974182766, + 0.181338076255318, + -0.02689044864326103 + ], + [ + 0.4298312782010313, + 0.2048251085816973, + -0.027324806173678603 + ], + [ + 0.4526236030052486, + 0.20567530528523256, + -0.0283074767187113 + ], + [ + 0.45308490090592785, + 0.18220789406020726, + -0.027027100063190434 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.20429774164863 + }, + { + "marker_id": 85, + "link": "Board", + "position_m": [ + 0.5067727893206623, + -0.31348907655683783, + -0.027707681605646822 + ], + "position_mm": [ + 506.7727893206623, + -313.48907655683786, + -27.707681605646822 + ], + "normal": [ + -0.032945795040505654, + 0.05215154093488273, + 0.9980955822802074 + ], + "corners_m": [ + [ + 0.49421550049692786, + -0.3253465551636556, + -0.02711418319382728 + ], + [ + 0.49696840583839097, + -0.3000632428500328, + -0.029147219073527336 + ], + [ + 0.5185232235795795, + -0.3026497389850415, + -0.02743328595044878 + ], + [ + 0.5173840273677507, + -0.3258967692286214, + -0.0271360382047839 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.435690938999276 + }, + { + "marker_id": 92, + "link": "Board", + "position_m": [ + 0.6466525463525512, + -0.18705950518033754, + -0.027251640596468882 + ], + "position_mm": [ + 646.6525463525512, + -187.05950518033754, + -27.25164059646888 + ], + "normal": [ + 0.03825629107142391, + 0.02106249247983472, + 0.9990459587046011 + ], + "corners_m": [ + [ + 0.6348169438992656, + -0.19908819490408183, + -0.026701161792317577 + ], + [ + 0.6351422984165451, + -0.17561611521746853, + -0.026896089255574587 + ], + [ + 0.6584931113326336, + -0.17533126963333032, + -0.02811237794189459 + ], + [ + 0.6581578317617608, + -0.1982024409664695, + -0.02729693339608876 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.278197887009746 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18671289900640264, + -0.2767623809748032, + -0.027035042415907394 + ], + "position_mm": [ + 186.71289900640264, + -276.7623809748032, + -27.035042415907395 + ], + "normal": [ + -0.01728779257004626, + -0.015625415792302033, + 0.9997284524356466 + ], + "corners_m": [ + [ + 0.17539267492957167, + -0.28870989276368425, + -0.027210355991566983 + ], + [ + 0.17430416077232844, + -0.2656762054997167, + -0.027280754756906434 + ], + [ + 0.19820533551855377, + -0.2654051086208797, + -0.026443293809925442 + ], + [ + 0.19894942480515662, + -0.287258317014932, + -0.02720576510523072 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.114368169403654 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6508984198189813, + -0.22390587425253766, + -0.027013853823539845 + ], + "position_mm": [ + 650.8984198189813, + -223.90587425253767, + -27.013853823539844 + ], + "normal": [ + -0.06581537704849401, + -0.02721379388204547, + 0.9974606486305664 + ], + "corners_m": [ + [ + 0.6391277813046056, + -0.23441211578824458, + -0.027879437170814852 + ], + [ + 0.6403303995521552, + -0.21179732974409585, + -0.027583063332261896 + ], + [ + 0.6623940193944019, + -0.2132394773366519, + -0.025764732324145025 + ], + [ + 0.6617414790247629, + -0.23617457414115822, + -0.0268281824669376 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.627413651210944 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10481493724866515, + -0.19095126176675475, + -0.02706882513267902 + ], + "position_mm": [ + 104.81493724866516, + -190.95126176675475, + -27.068825132679017 + ], + "normal": [ + 0.017854473840836587, + -0.004615256006110568, + 0.9998299441284328 + ], + "corners_m": [ + [ + 0.09359867691028155, + -0.20307323686871165, + -0.026788263127785227 + ], + [ + 0.09246234192052012, + -0.1801133134273898, + -0.02693307194763498 + ], + [ + 0.11616203953098217, + -0.17901953224414652, + -0.027079170764286883 + ], + [ + 0.11703669063287676, + -0.20159896452677104, + -0.027474794691008976 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.202013215473194 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.31042093304446305, + -0.15449021016899928, + 0.15658919803872182 + ], + "position_mm": [ + 310.420933044463, + -154.49021016899928, + 156.5891980387218 + ], + "normal": [ + -0.35220874295814975, + -0.7212354749736437, + 0.596463235265496 + ], + "corners_m": [ + [ + 0.29901187678128033, + -0.1436046937411828, + 0.16285307026993506 + ], + [ + 0.3212607398917116, + -0.1498176322863212, + 0.1688003917666407 + ], + [ + 0.322080272372025, + -0.16535797917096684, + 0.15017506585369042 + ], + [ + 0.2993308431328351, + -0.15918053547752625, + 0.1445282642646211 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.10414304917018 + }, + { + "marker_id": 205, + "link": "Board", + "position_m": [ + 0.7523866981099311, + -0.090266534421375, + 0.0005166891777635844 + ], + "position_mm": [ + 752.3866981099311, + -90.266534421375, + 0.5166891777635845 + ], + "normal": [ + -0.04342385360375668, + -0.038606341462984466, + 0.9983105325183357 + ], + "corners_m": [ + [ + 0.7409380072354944, + -0.07871761057079167, + 0.00023159890688253374 + ], + [ + 0.7634346575714828, + -0.07879370503656513, + 0.0016733728383624752 + ], + [ + 0.7641046726529462, + -0.10186220687786679, + 0.00035053988795575794 + ], + [ + 0.7410694549798009, + -0.10169261520027639, + -0.0001887549221464292 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.92010559101538 + }, + { + "marker_id": 215, + "link": "Board", + "position_m": [ + 0.25050212322468346, + -0.08867039437519665, + 1.8410056185108915e-05 + ], + "position_mm": [ + 250.50212322468346, + -88.67039437519665, + 0.018410056185108915 + ], + "normal": [ + 0.0065759612378247095, + -0.0030190545894855925, + 0.9999738206789138 + ], + "corners_m": [ + [ + 0.23918328153011878, + -0.0764679161283234, + 0.0001202431620144573 + ], + [ + 0.26269855317308277, + -0.0774118587850395, + -1.838444746108705e-05 + ], + [ + 0.26197534814958345, + -0.10090703355156008, + -0.00010328013146210398 + ], + [ + 0.2381513100459489, + -0.09989476903586364, + 7.506164164916939e-05 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.584222355612194 + }, + { + "marker_id": 218, + "link": "Arm2", + "position_m": [ + 0.35368209771592496, + -0.0994615110956942, + 0.19956017109351087 + ], + "position_mm": [ + 353.68209771592495, + -99.4615110956942, + 199.56017109351086 + ], + "normal": [ + 0.9434809764113783, + -0.26499455108402514, + 0.19905158890500788 + ], + "corners_m": [ + [ + 0.3497794886952876, + -0.10014350713255572, + 0.21689899514496166 + ], + [ + 0.3575047054831509, + -0.08385275617174048, + 0.20249292431168991 + ], + [ + 0.3576879112447054, + -0.09770028835233091, + 0.1826592092085517 + ], + [ + 0.349756285440556, + -0.11614949272614974, + 0.19618955570884017 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.41424801234189 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.23054756028481954, + -0.03625124160459173, + 0.30533190804836013 + ], + "position_mm": [ + 230.54756028481955, + -36.251241604591726, + 305.33190804836016 + ], + "normal": [ + -0.01052684120353379, + -0.48082389838687645, + 0.8767539930643728 + ], + "corners_m": [ + [ + 0.2189687881727314, + -0.025935906162139928, + 0.31079249001717185 + ], + [ + 0.24244558572689678, + -0.026155574720319628, + 0.31106801773775716 + ], + [ + 0.24218177513180797, + -0.046665417557109685, + 0.2997039401944188 + ], + [ + 0.218594092107842, + -0.046248067978797665, + 0.29976318424409265 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.40913617422814 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3209366759603642, + -0.04471277825168639, + 0.29724999716892325 + ], + "position_mm": [ + 320.9366759603642, + -44.71277825168639, + 297.24999716892324 + ], + "normal": [ + 0.008379965337362856, + -0.7549783610914556, + 0.6556961571220351 + ], + "corners_m": [ + [ + 0.30871594348269454, + -0.03752190207245656, + 0.3057331363197743 + ], + [ + 0.3323663998910075, + -0.03703178565741633, + 0.30590464730961353 + ], + [ + 0.3334063885001284, + -0.052610876387174856, + 0.2880391263034304 + ], + [ + 0.3092579719676263, + -0.0516865488896978, + 0.2893230787428747 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.31695882958696 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.28218486419552014, + -0.040577289388547266, + 0.30154793182702916 + ], + "position_mm": [ + 282.18486419552016, + -40.577289388547264, + 301.5479318270292 + ], + "normal": [ + 0.002984545943804635, + -0.7675119010169338, + 0.6410277484500041 + ], + "corners_m": [ + [ + 0.2698323239724669, + -0.03327904640768656, + 0.31022388794058814 + ], + [ + 0.2935381761107519, + -0.032516145108743545, + 0.31126459403148615 + ], + [ + 0.2946686165707101, + -0.047888707563492026, + 0.29261916506824504 + ], + [ + 0.27070034012815164, + -0.04862525847426694, + 0.29208408026779736 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.92366321578508 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/aruco_positions_initial.json b/data/camera_study/Scene10/k3_bdg/aruco_positions_initial.json new file mode 100644 index 0000000..2766b5d --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/aruco_positions_initial.json @@ -0,0 +1,524 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:19:03Z", + "summary": { + "num_cameras": 3, + "num_markers": 24, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "position_m": [ + 0.34376654762038256, + -0.28839563095466614, + -0.02760537942584299 + ], + "position_mm": [ + 343.76654762038254, + -288.39563095466616, + -27.60537942584299 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6869553120509962, + -0.31828288284648676, + -0.026714386151434642 + ], + "position_mm": [ + 686.9553120509962, + -318.28288284648676, + -26.714386151434642 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16791244327108318, + -0.17356576866439072, + -0.02748782876628542 + ], + "position_mm": [ + 167.9124432710832, + -173.56576866439073, + -27.487828766285418 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4882162799182303, + 0.2145787188045998, + -0.027009952548570484 + ], + "position_mm": [ + 488.2162799182303, + 214.57871880459982, + -27.009952548570485 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.339841934667412, + -0.3277465381175194, + -0.026516689054223226 + ], + "position_mm": [ + 339.84193466741203, + -327.74653811751944, + -26.516689054223225 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2844629212143551, + -0.2610707104386771, + -0.027225119001680127 + ], + "position_mm": [ + 284.4629212143551, + -261.07071043867705, + -27.225119001680127 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 59, + "position_m": [ + 0.6271865903718744, + -0.27675395886676263, + -0.026907347912707404 + ], + "position_mm": [ + 627.1865903718744, + -276.7539588667626, + -26.907347912707404 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7745703446602326, + -0.23669721919029751, + -0.02692049447484487 + ], + "position_mm": [ + 774.5703446602325, + -236.69721919029752, + -26.920494474844872 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01884321403035284, + -0.1897498250154755, + -0.027136995944053673 + ], + "position_mm": [ + -18.84321403035284, + -189.7498250154755, + -27.136995944053673 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.006150609479969763, + -0.2777950294615375, + -0.027010644320756547 + ], + "position_mm": [ + 6.150609479969763, + -277.7950294615375, + -27.010644320756548 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 71, + "position_m": [ + 0.7509604864944157, + -0.28551125075942685, + -0.02674480689368867 + ], + "position_mm": [ + 750.9604864944157, + -285.51125075942684, + -26.744806893688672 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.441421275570027, + 0.19353518392648628, + -0.027474752620069133 + ], + "position_mm": [ + 441.42127557002703, + 193.53518392648627, + -27.474752620069133 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5068041661114264, + -0.3135045828070479, + -0.02781607148385666 + ], + "position_mm": [ + 506.8041661114264, + -313.5045828070479, + -27.81607148385666 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 92, + "position_m": [ + 0.6466795964899504, + -0.187063834404983, + -0.027344911707301592 + ], + "position_mm": [ + 646.6795964899504, + -187.063834404983, + -27.34491170730159 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18670280180648224, + -0.2767750701934641, + -0.02712429999447797 + ], + "position_mm": [ + 186.70280180648226, + -276.7750701934641, + -27.12429999447797 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6509379503738589, + -0.22390846020799526, + -0.027109690309085218 + ], + "position_mm": [ + 650.9379503738589, + -223.90846020799526, + -27.109690309085217 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10497805201041903, + -0.19080856212389075, + -0.027006345982441688 + ], + "position_mm": [ + 104.97805201041903, + -190.80856212389074, + -27.006345982441687 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3103743137123175, + -0.15428307632816093, + 0.15665617276472968 + ], + "position_mm": [ + 310.3743137123175, + -154.28307632816094, + 156.6561727647297 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7524289457637402, + -0.09025863172893372, + 0.0004226980684333642 + ], + "position_mm": [ + 752.4289457637402, + -90.25863172893372, + 0.4226980684333642 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25050098796217085, + -0.08866387046146879, + -7.820550617432224e-05 + ], + "position_mm": [ + 250.50098796217085, + -88.66387046146879, + -0.07820550617432225 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3536314171939221, + -0.09947516209694193, + 0.19956923774735225 + ], + "position_mm": [ + 353.6314171939221, + -99.47516209694193, + 199.56923774735225 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23001007116575176, + -0.036080233689634644, + 0.30535428122393937 + ], + "position_mm": [ + 230.01007116575175, + -36.080233689634646, + 305.3542812239394 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3209492607624974, + -0.04460980298778073, + 0.29718427648412704 + ], + "position_mm": [ + 320.94926076249743, + -44.60980298778073, + 297.18427648412705 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2818068163969561, + -0.04051140855357585, + 0.3014757489894613 + ], + "position_mm": [ + 281.8068163969561, + -40.51140855357585, + 301.4757489894613 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/aruco_positions_optimized.json b/data/camera_study/Scene10/k3_bdg/aruco_positions_optimized.json new file mode 100644 index 0000000..edc80a8 --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/aruco_positions_optimized.json @@ -0,0 +1,523 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:19:04Z", + "summary": { + "num_cameras": 3, + "num_markers": 24, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "position_m": [ + 0.34421502526235714, + -0.2864195130617076, + -0.030467622841937523 + ], + "position_mm": [ + 344.21502526235713, + -286.4195130617076, + -30.467622841937523 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6877362125336597, + -0.3188162398946479, + -0.02765951358773155 + ], + "position_mm": [ + 687.7362125336597, + -318.81623989464794, + -27.659513587731553 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16709424525941116, + -0.17418870557302754, + -0.026849462544061235 + ], + "position_mm": [ + 167.09424525941117, + -174.18870557302753, + -26.849462544061236 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4869722465606384, + 0.21379586963158387, + -0.02561393153398371 + ], + "position_mm": [ + 486.97224656063844, + 213.79586963158386, + -25.61393153398371 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.339312063872206, + -0.32974927120719577, + -0.023930541476812842 + ], + "position_mm": [ + 339.312063872206, + -329.74927120719576, + -23.93054147681284 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28436545376780753, + -0.2610634472835442, + -0.02720569043255427 + ], + "position_mm": [ + 284.36545376780754, + -261.0634472835442, + -27.20569043255427 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 59, + "position_m": [ + 0.624817408996523, + -0.2777070730358591, + -0.023599055924437867 + ], + "position_mm": [ + 624.817408996523, + -277.70707303585914, + -23.599055924437867 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7750764831650965, + -0.23613686164671213, + -0.027869510142145802 + ], + "position_mm": [ + 775.0764831650964, + -236.13686164671213, + -27.869510142145803 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01910957101284406, + -0.18958152801850414, + -0.02716361750283962 + ], + "position_mm": [ + -19.10957101284406, + -189.58152801850414, + -27.16361750283962 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005942588834296783, + -0.27766593705475817, + -0.02714208418416944 + ], + "position_mm": [ + 5.942588834296783, + -277.66593705475816, + -27.14208418416944 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 71, + "position_m": [ + 0.7508675500350238, + -0.28581101163804773, + -0.02664175418495815 + ], + "position_mm": [ + 750.8675500350238, + -285.8110116380477, + -26.64175418495815 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4425077325425105, + 0.19423558351620573, + -0.028760049887480706 + ], + "position_mm": [ + 442.5077325425105, + 194.23558351620574, + -28.760049887480708 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5066743379002978, + -0.3135574558879566, + -0.027863065163372384 + ], + "position_mm": [ + 506.6743379002978, + -313.55745588795656, + -27.863065163372383 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 92, + "position_m": [ + 0.6468623944506966, + -0.1857312743404602, + -0.028282053449732895 + ], + "position_mm": [ + 646.8623944506966, + -185.7312743404602, + -28.282053449732896 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18641729511628122, + -0.27597665946561983, + -0.02755047770089365 + ], + "position_mm": [ + 186.41729511628122, + -275.97665946561983, + -27.550477700893648 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6519018475703534, + -0.22383528554779838, + -0.028460506794054024 + ], + "position_mm": [ + 651.9018475703534, + -223.83528554779838, + -28.460506794054023 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.105325898481508, + -0.19104512896385506, + -0.026868535544532553 + ], + "position_mm": [ + 105.325898481508, + -191.04512896385506, + -26.868535544532552 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31072275621955114, + -0.15428533175010042, + 0.1567040883267913 + ], + "position_mm": [ + 310.7227562195511, + -154.28533175010043, + 156.70408832679132 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7524334187887157, + -0.09025695811126759, + 0.0004261225569682343 + ], + "position_mm": [ + 752.4334187887157, + -90.2569581112676, + 0.4261225569682343 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25050076930082443, + -0.08866396246645876, + -7.82695224510594e-05 + ], + "position_mm": [ + 250.50076930082443, + -88.66396246645876, + -0.0782695224510594 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.35372038515495335, + -0.09941566413453984, + 0.19962133788916045 + ], + "position_mm": [ + 353.72038515495336, + -99.41566413453984, + 199.62133788916046 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23059386539111318, + -0.03626811472388687, + 0.3053839326030027 + ], + "position_mm": [ + 230.59386539111318, + -36.268114723886875, + 305.3839326030027 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.319950039374846, + -0.04355069628302047, + 0.2968561867166629 + ], + "position_mm": [ + 319.950039374846, + -43.55069628302047, + 296.85618671666293 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.28284410441431873, + -0.040982910003091406, + 0.3016321649937213 + ], + "position_mm": [ + 282.84410441431874, + -40.982910003091405, + 301.6321649937213 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/render_b_aruco_detection.json b/data/camera_study/Scene10/k3_bdg/render_b_aruco_detection.json new file mode 100644 index 0000000..fa3e974 --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:01Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "b74645a8-dcca-4245-a369-fb0e75c3c233", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "09dc9e4e-42a5-40cd-aa84-e86e962df9f5", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "a638edb2-6f6c-4cc3-a9ef-9ef26e048820", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "8aeeaf15-6a40-41c4-bf03-27d742c642c7", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "f57e7036-eb90-4f36-85c0-67aefbd2491d", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "4900b1b2-1fb3-49bc-a3e6-3bc91e98edb4", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "6b9dd7b4-7075-41a1-90fc-ba6b1c977cff", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "0289b4f9-5fd7-4fa5-b206-e6ab5bbdf49e", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "8629c3db-8297-4195-8c49-4d19c31346bd", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "0e44303d-9246-47c4-9c48-5df8f0d5292f", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "79a59bb9-92b8-489f-80f7-d777eae2edf1", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "d783558b-f66b-4766-8804-f41ff8bec652", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "b8fada57-c0a9-4a98-9cf3-3547f6ccf05f", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "e81e3813-992c-403e-b038-d60d402053d2", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "e77de7d3-5066-4067-abbb-a4070e421b21", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "6dfef21d-ac38-4c10-85f2-2ba0bd471c1b", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "ad3adbba-4aba-4d53-a09b-90689d00d5af", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "8d11c3ee-bbd0-4180-8269-95e4cb30fcd0", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "f64f3999-6b6b-4fdb-b115-30c2cfb1f142", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "3d3b7950-c3ae-4013-9783-45650ef899d7", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "439d627c-7eb2-45fe-a837-4d702999202d", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "5f7fb7cf-0436-48d1-b534-001a7f67f0f6", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "12ef30b6-9f4d-494e-954c-d9a32e6ed6d2", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "470c7023-3384-4e58-ad5d-927d15a126ad", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "cca555fd-abfa-4be1-87bf-ecf134db4144", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "5b069082-c9de-4b6d-a605-7188fd9efdfc", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "abd0d972-ae66-4575-a98a-0a571deed3b6", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "e088c341-327f-4a4c-89e2-c5fc1d612f1b", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "b8b75d49-d7d3-4a27-9c6d-44c4055ab378", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "531ce8a4-4d47-4afb-990a-a7920967f8b8", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "6b85d10a-26c7-4793-b306-5b3ed51a4691", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "882372a7-07b1-4ba4-8807-e01e53ca6f16", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "2bc07539-d94a-4e01-8dea-5b80bb0956bc", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "b9130190-6cfa-4317-b552-f447546e5abb", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "71722913-64e0-4398-a44b-ee12824ac6b6", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "bee2e2b9-e7bb-469f-aa07-3fa500eb039d", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/render_b_camera_pose.json b/data/camera_study/Scene10/k3_bdg/render_b_camera_pose.json new file mode 100644 index 0000000..2394b31 --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:02Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_bdg\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/render_d_aruco_detection.json b/data/camera_study/Scene10/k3_bdg/render_d_aruco_detection.json new file mode 100644 index 0000000..12b13df --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/render_d_aruco_detection.json @@ -0,0 +1,1311 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:01Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "d", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.npz", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.png", + "image_sha256": "62e03d1a72df6ace64f3edf39f814b0e48c63c4b06cd21705bd69cd08afa442a", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 15, + "num_rejected_candidates": 18 + }, + "detections": [ + { + "observation_id": "f10cb5b1-f191-426f-bb77-f7cfc91c7301", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 742.0, + 906.0 + ], + [ + 797.0, + 913.0 + ], + [ + 796.0, + 973.0 + ], + [ + 741.0, + 965.0 + ] + ], + "center_px": [ + 769.0, + 939.25 + ], + "quality": { + "area_px": 3280.0, + "perimeter_px": 230.03924179077148, + "sharpness": { + "laplacian_var": 235.03135651883824 + }, + "contrast": { + "p05": 24.0, + "p95": 170.0, + "dynamic_range": 146.0, + "mean_gray": 71.34429223744293, + "std_gray": 60.34595999329839 + }, + "geometry": { + "distance_to_center_norm": 0.4469395875930786, + "distance_to_border_px": 107.0 + }, + "edge_ratio": 1.0823298168515911, + "edge_lengths_px": [ + 55.44366455078125, + 60.008331298828125, + 55.578773498535156, + 59.00847244262695 + ] + }, + "confidence": 0.9239327831777916 + }, + { + "observation_id": "ee863deb-024b-4c25-b116-395cf11a2402", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 889.0, + 943.0 + ], + [ + 916.0, + 987.0 + ], + [ + 864.0, + 1021.0 + ], + [ + 835.0, + 979.0 + ] + ], + "center_px": [ + 876.0, + 982.5 + ], + "quality": { + "area_px": 3259.0, + "perimeter_px": 229.6916618347168, + "sharpness": { + "laplacian_var": 61.572482510446996 + }, + "contrast": { + "p05": 8.0, + "p95": 102.0, + "dynamic_range": 94.0, + "mean_gray": 52.3137789904502, + "std_gray": 40.795642464164395 + }, + "geometry": { + "distance_to_center_norm": 0.5213257670402527, + "distance_to_border_px": 59.0 + }, + "edge_ratio": 1.2715701940712816, + "edge_lengths_px": [ + 51.62363815307617, + 62.12889862060547, + 51.03919982910156, + 64.8999252319336 + ] + }, + "confidence": 0.4035200127470337 + }, + { + "observation_id": "eb2f942b-4d2f-4533-90aa-2bb40d7fdc2c", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 685.0 + ], + [ + 956.0, + 716.0 + ], + [ + 934.0, + 773.0 + ], + [ + 895.0, + 742.0 + ] + ], + "center_px": [ + 925.75, + 729.0 + ], + "quality": { + "area_px": 2892.0, + "perimeter_px": 221.4241943359375, + "sharpness": { + "laplacian_var": 65.75925962559084 + }, + "contrast": { + "p05": 5.0, + "p95": 83.0, + "dynamic_range": 78.0, + "mean_gray": 36.39875065070276, + "std_gray": 31.82755916882834 + }, + "geometry": { + "distance_to_center_norm": 0.31042397022247314, + "distance_to_border_px": 307.0 + }, + "edge_ratio": 1.2533531491081307, + "edge_lengths_px": [ + 49.04079818725586, + 61.09828186035156, + 49.81967544555664, + 61.46543884277344 + ] + }, + "confidence": 0.4262916519882062 + }, + { + "observation_id": "bf9a07c4-7bc8-4cd7-bc89-3c8ad687d14a", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1006.0, + 434.0 + ], + [ + 1040.0, + 464.0 + ], + [ + 1023.0, + 519.0 + ], + [ + 983.0, + 494.0 + ] + ], + "center_px": [ + 1013.0, + 477.75 + ], + "quality": { + "area_px": 2677.5, + "perimeter_px": 214.33768844604492, + "sharpness": { + "laplacian_var": 63.84585482864622 + }, + "contrast": { + "p05": 4.0, + "p95": 81.0, + "dynamic_range": 77.0, + "mean_gray": 29.46114864864865, + "std_gray": 31.00050238673812 + }, + "geometry": { + "distance_to_center_norm": 0.33282196521759033, + "distance_to_border_px": 400.0 + }, + "edge_ratio": 1.4171338730692165, + "edge_lengths_px": [ + 45.343135833740234, + 57.567352294921875, + 47.16990661621094, + 64.25729370117188 + ] + }, + "confidence": 0.3613610332351109 + }, + { + "observation_id": "50cc11f1-8e01-4cc4-84bf-2ef42de1863a", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 994.0, + 187.0 + ], + [ + 1046.0, + 190.0 + ], + [ + 1029.0, + 238.0 + ], + [ + 978.0, + 230.0 + ] + ], + "center_px": [ + 1011.75, + 211.25 + ], + "quality": { + "area_px": 2434.0, + "perimeter_px": 200.51189422607422, + "sharpness": { + "laplacian_var": 737.7557921421737 + }, + "contrast": { + "p05": 56.0, + "p95": 183.0, + "dynamic_range": 127.0, + "mean_gray": 101.10567632850241, + "std_gray": 52.34786160983359 + }, + "geometry": { + "distance_to_center_norm": 0.48837676644325256, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.1352691889411037, + "edge_lengths_px": [ + 52.08646774291992, + 50.9215087890625, + 51.62363815307617, + 45.880279541015625 + ] + }, + "confidence": 0.8808483571484285 + }, + { + "observation_id": "e538292b-3bf6-425f-9bc8-92d4941b21c2", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 920.0, + 169.0 + ], + [ + 969.0, + 170.0 + ], + [ + 953.0, + 218.0 + ], + [ + 902.0, + 215.0 + ] + ], + "center_px": [ + 936.0, + 193.0 + ], + "quality": { + "area_px": 2384.0, + "perimeter_px": 200.09115982055664, + "sharpness": { + "laplacian_var": 675.8367068624159 + }, + "contrast": { + "p05": 58.0, + "p95": 184.0, + "dynamic_range": 126.0, + "mean_gray": 125.61893054701905, + "std_gray": 52.20639937589474 + }, + "geometry": { + "distance_to_center_norm": 0.4541509747505188, + "distance_to_border_px": 169.0 + }, + "edge_ratio": 1.042398381472962, + "edge_lengths_px": [ + 49.01020431518555, + 50.59644317626953, + 51.088157653808594, + 49.39635467529297 + ] + }, + "confidence": 0.9593261249954639 + }, + { + "observation_id": "d485c2c4-9b5b-449c-9f22-44700b705f56", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 837.0, + 569.0 + ], + [ + 877.0, + 568.0 + ], + [ + 857.0, + 624.0 + ], + [ + 816.0, + 623.0 + ] + ], + "center_px": [ + 846.75, + 596.0 + ], + "quality": { + "area_px": 2227.5, + "perimeter_px": 198.4285888671875, + "sharpness": { + "laplacian_var": 456.8683277511788 + }, + "contrast": { + "p05": 43.0, + "p95": 185.0, + "dynamic_range": 142.0, + "mean_gray": 85.2088948787062, + "std_gray": 56.487417453665174 + }, + "geometry": { + "distance_to_center_norm": 0.15396633744239807, + "distance_to_border_px": 456.0 + }, + "edge_ratio": 1.486142577830794, + "edge_lengths_px": [ + 40.01249694824219, + 59.46427536010742, + 41.01219177246094, + 57.93962478637695 + ] + }, + "confidence": 0.6728829487273165 + }, + { + "observation_id": "ddaa2b33-0686-4f4f-8210-ff18fe00b3a3", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 380.0, + 1053.0 + ], + [ + 418.0, + 1028.0 + ], + [ + 462.0, + 1043.0 + ], + [ + 426.0, + 1069.0 + ] + ], + "center_px": [ + 421.5, + 1048.25 + ], + "quality": { + "area_px": 1721.0, + "perimeter_px": 185.08320999145508, + "sharpness": { + "laplacian_var": 401.0408793146889 + }, + "contrast": { + "p05": 16.0, + "p95": 171.0, + "dynamic_range": 155.0, + "mean_gray": 91.72839506172839, + "std_gray": 64.0365880429505 + }, + "geometry": { + "distance_to_center_norm": 0.6549152135848999, + "distance_to_border_px": 11.0 + }, + "edge_ratio": 1.0967404836818018, + "edge_lengths_px": [ + 45.486263275146484, + 46.48655700683594, + 44.40720748901367, + 48.703182220458984 + ] + }, + "confidence": 0.20059440065661768 + }, + { + "observation_id": "47f1b242-0b91-4919-b131-6e0bcbb8f54d", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 839.0, + 266.0 + ], + [ + 854.0, + 309.0 + ], + [ + 811.0, + 306.0 + ], + [ + 796.0, + 265.0 + ] + ], + "center_px": [ + 825.0, + 286.5 + ], + "quality": { + "area_px": 1776.0, + "perimeter_px": 175.31510162353516, + "sharpness": { + "laplacian_var": 240.92017426523984 + }, + "contrast": { + "p05": 22.0, + "p95": 153.0, + "dynamic_range": 131.0, + "mean_gray": 74.06045751633987, + "std_gray": 53.6075481691311 + }, + "geometry": { + "distance_to_center_norm": 0.3048724830150604, + "distance_to_border_px": 265.0 + }, + "edge_ratio": 1.0588111649951575, + "edge_lengths_px": [ + 45.54119110107422, + 43.104522705078125, + 43.65776062011719, + 43.011627197265625 + ] + }, + "confidence": 0.9444554733275536 + }, + { + "observation_id": "b1a2f552-438b-46a1-bcbf-64bb1451a4f2", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 992.0, + 902.0 + ], + [ + 1041.0, + 917.0 + ], + [ + 1015.0, + 938.0 + ], + [ + 966.0, + 922.0 + ] + ], + "center_px": [ + 1003.5, + 919.75 + ], + "quality": { + "area_px": 1407.5, + "perimeter_px": 169.01459884643555, + "sharpness": { + "laplacian_var": 202.21712799530312 + }, + "contrast": { + "p05": 11.0, + "p95": 135.0, + "dynamic_range": 124.0, + "mean_gray": 60.230610134436404, + "std_gray": 46.98590047860021 + }, + "geometry": { + "distance_to_center_norm": 0.5265568494796753, + "distance_to_border_px": 142.0 + }, + "edge_ratio": 1.5714104130928346, + "edge_lengths_px": [ + 51.244510650634766, + 33.42155075073242, + 51.54609680175781, + 32.80244064331055 + ] + }, + "confidence": 0.5971281121184089 + }, + { + "observation_id": "5fbf6920-bd2c-48e7-8c32-501d7ceb0735", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 828.0, + 160.0 + ], + [ + 872.0, + 162.0 + ], + [ + 849.0, + 192.0 + ], + [ + 804.0, + 188.0 + ] + ], + "center_px": [ + 838.25, + 175.5 + ], + "quality": { + "area_px": 1361.0, + "perimeter_px": 163.9031524658203, + "sharpness": { + "laplacian_var": 634.8821505010796 + }, + "contrast": { + "p05": 22.0, + "p95": 179.0, + "dynamic_range": 157.0, + "mean_gray": 93.81072210065645, + "std_gray": 65.74062367039625 + }, + "geometry": { + "distance_to_center_norm": 0.4257793128490448, + "distance_to_border_px": 160.0 + }, + "edge_ratio": 1.2250450560973367, + "edge_lengths_px": [ + 44.04542922973633, + 37.80211639404297, + 45.17742919921875, + 36.878177642822266 + ] + }, + "confidence": 0.740653030529222 + }, + { + "observation_id": "3e6c8a8e-1d91-4b1e-9a9b-51194d98aaf7", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 91.0, + 932.0 + ], + [ + 132.0, + 913.0 + ], + [ + 165.0, + 927.0 + ], + [ + 125.0, + 947.0 + ] + ], + "center_px": [ + 128.25, + 929.75 + ], + "quality": { + "area_px": 1240.5, + "perimeter_px": 162.91856002807617, + "sharpness": { + "laplacian_var": 640.6271417753217 + }, + "contrast": { + "p05": 17.0, + "p95": 172.0, + "dynamic_range": 155.0, + "mean_gray": 88.50410316529894, + "std_gray": 59.8365616473406 + }, + "geometry": { + "distance_to_center_norm": 0.7873013019561768, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.2605971300139012, + "edge_lengths_px": [ + 45.18849563598633, + 35.84689712524414, + 44.72135925292969, + 37.161808013916016 + ] + }, + "confidence": 0.6560383014602613 + }, + { + "observation_id": "412a653f-2dba-4085-b4d1-5d5a05c47ee7", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 384.0, + 918.0 + ], + [ + 416.0, + 899.0 + ], + [ + 455.0, + 911.0 + ], + [ + 424.0, + 931.0 + ] + ], + "center_px": [ + 419.75, + 914.75 + ], + "quality": { + "area_px": 1164.0, + "perimeter_px": 156.97121810913086, + "sharpness": { + "laplacian_var": 1305.0180528018368 + }, + "contrast": { + "p05": 23.0, + "p95": 171.0, + "dynamic_range": 148.0, + "mean_gray": 125.7001287001287, + "std_gray": 50.591649190438574 + }, + "geometry": { + "distance_to_center_norm": 0.5335504412651062, + "distance_to_border_px": 149.0 + }, + "edge_ratio": 1.1400787327238997, + "edge_lengths_px": [ + 37.2155876159668, + 40.804412841796875, + 36.8917350769043, + 42.05948257446289 + ] + }, + "confidence": 0.6806547457875692 + }, + { + "observation_id": "b6e2c5fa-f399-4af8-9c3f-255692da4096", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1061.0, + 838.0 + ], + [ + 1107.0, + 851.0 + ], + [ + 1086.0, + 869.0 + ], + [ + 1038.0, + 855.0 + ] + ], + "center_px": [ + 1073.0, + 853.25 + ], + "quality": { + "area_px": 1119.5, + "perimeter_px": 154.0610065460205, + "sharpness": { + "laplacian_var": 699.1501103553894 + }, + "contrast": { + "p05": 27.0, + "p95": 147.0, + "dynamic_range": 120.0, + "mean_gray": 93.41610738255034, + "std_gray": 44.372659317587036 + }, + "geometry": { + "distance_to_center_norm": 0.5243862867355347, + "distance_to_border_px": 211.0 + }, + "edge_ratio": 1.8077537619585837, + "edge_lengths_px": [ + 47.801673889160156, + 27.658634185791016, + 50.0, + 28.600698471069336 + ] + }, + "confidence": 0.41285121294657384 + }, + { + "observation_id": "23013b97-7afe-4ff2-82f1-b403743a110a", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 205.0, + 850.0 + ], + [ + 240.0, + 834.0 + ], + [ + 272.0, + 846.0 + ], + [ + 238.0, + 862.0 + ] + ], + "center_px": [ + 238.75, + 848.0 + ], + "quality": { + "area_px": 934.0, + "perimeter_px": 145.35046768188477, + "sharpness": { + "laplacian_var": 1079.742643238912 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 86.53560830860535, + "std_gray": 57.948273841825284 + }, + "geometry": { + "distance_to_center_norm": 0.6348573565483093, + "distance_to_border_px": 205.0 + }, + "edge_ratio": 1.1260460248127115, + "edge_lengths_px": [ + 38.4837646484375, + 34.1760139465332, + 37.57658767700195, + 35.11410140991211 + ] + }, + "confidence": 0.5529673325477359 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 539.0, + 665.0 + ], + [ + 601.0, + 657.0 + ], + [ + 722.0, + 692.0 + ], + [ + 705.0, + 711.0 + ] + ], + "center_px": [ + 641.75, + 681.25 + ], + "area_px": 3537.0 + }, + { + "image_points_px": [ + [ + 513.0, + 939.0 + ], + [ + 547.0, + 920.0 + ], + [ + 585.0, + 935.0 + ], + [ + 554.0, + 954.0 + ] + ], + "center_px": [ + 549.75, + 937.0 + ], + "area_px": 1238.0 + }, + { + "image_points_px": [ + [ + 256.0, + 906.0 + ], + [ + 289.0, + 888.0 + ], + [ + 327.0, + 900.0 + ], + [ + 291.0, + 919.0 + ] + ], + "center_px": [ + 290.75, + 903.25 + ], + "area_px": 1106.5 + }, + { + "image_points_px": [ + [ + 1378.0, + 809.0 + ], + [ + 1388.0, + 794.0 + ], + [ + 1434.0, + 804.0 + ], + [ + 1425.0, + 819.0 + ] + ], + "center_px": [ + 1406.25, + 806.5 + ], + "area_px": 792.5 + }, + { + "image_points_px": [ + [ + 492.0, + 714.0 + ], + [ + 517.0, + 702.0 + ], + [ + 551.0, + 710.0 + ], + [ + 527.0, + 723.0 + ] + ], + "center_px": [ + 521.75, + 712.25 + ], + "area_px": 639.5 + }, + { + "image_points_px": [ + [ + 1357.0, + 753.0 + ], + [ + 1371.0, + 740.0 + ], + [ + 1413.0, + 751.0 + ], + [ + 1400.0, + 763.0 + ] + ], + "center_px": [ + 1385.25, + 751.75 + ], + "area_px": 673.0 + }, + { + "image_points_px": [ + [ + 861.0, + 864.0 + ], + [ + 906.0, + 866.0 + ], + [ + 914.0, + 872.0 + ], + [ + 888.0, + 873.0 + ] + ], + "center_px": [ + 892.25, + 868.75 + ], + "area_px": 257.5 + }, + { + "image_points_px": [ + [ + 910.0, + 411.0 + ], + [ + 902.0, + 436.0 + ], + [ + 884.0, + 439.0 + ], + [ + 897.0, + 405.0 + ] + ], + "center_px": [ + 898.25, + 422.75 + ], + "area_px": 473.0 + }, + { + "image_points_px": [ + [ + 926.0, + 925.0 + ], + [ + 927.0, + 944.0 + ], + [ + 919.0, + 968.0 + ], + [ + 918.0, + 955.0 + ] + ], + "center_px": [ + 922.5, + 948.0 + ], + "area_px": 155.0 + }, + { + "image_points_px": [ + [ + 848.0, + 907.0 + ], + [ + 854.0, + 911.0 + ], + [ + 859.0, + 937.0 + ], + [ + 857.0, + 945.0 + ] + ], + "center_px": [ + 854.5, + 925.0 + ], + "area_px": 142.0 + }, + { + "image_points_px": [ + [ + 973.0, + 589.0 + ], + [ + 977.0, + 595.0 + ], + [ + 965.0, + 626.0 + ], + [ + 962.0, + 618.0 + ] + ], + "center_px": [ + 969.25, + 607.0 + ], + "area_px": 185.5 + }, + { + "image_points_px": [ + [ + 946.0, + 260.0 + ], + [ + 928.0, + 294.0 + ], + [ + 936.0, + 270.0 + ], + [ + 942.0, + 260.0 + ] + ], + "center_px": [ + 938.0, + 271.0 + ], + "area_px": 100.0 + }, + { + "image_points_px": [ + [ + 831.0, + 639.0 + ], + [ + 795.0, + 649.0 + ], + [ + 796.0, + 645.0 + ], + [ + 812.0, + 640.0 + ] + ], + "center_px": [ + 808.5, + 643.25 + ], + "area_px": 106.5 + }, + { + "image_points_px": [ + [ + 957.0, + 355.0 + ], + [ + 971.0, + 365.0 + ], + [ + 967.0, + 381.0 + ], + [ + 961.0, + 372.0 + ] + ], + "center_px": [ + 964.0, + 368.25 + ], + "area_px": 165.0 + }, + { + "image_points_px": [ + [ + 1107.0, + 214.0 + ], + [ + 1106.0, + 229.0 + ], + [ + 1099.0, + 243.0 + ], + [ + 1103.0, + 219.0 + ] + ], + "center_px": [ + 1103.75, + 226.25 + ], + "area_px": 83.5 + }, + { + "image_points_px": [ + [ + 275.0, + 926.0 + ], + [ + 284.0, + 927.0 + ], + [ + 303.0, + 935.0 + ], + [ + 277.0, + 929.0 + ] + ], + "center_px": [ + 284.75, + 929.25 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 927.0, + 944.0 + ], + [ + 921.0, + 969.0 + ], + [ + 918.0, + 971.0 + ], + [ + 922.0, + 951.0 + ] + ], + "center_px": [ + 922.0, + 958.75 + ], + "area_px": 67.5 + }, + { + "image_points_px": [ + [ + 507.0, + 975.0 + ], + [ + 526.0, + 982.0 + ], + [ + 529.0, + 986.0 + ], + [ + 509.0, + 979.0 + ] + ], + "center_px": [ + 517.75, + 980.5 + ], + "area_px": 60.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/render_d_camera_pose.json b/data/camera_study/Scene10/k3_bdg/render_d_camera_pose.json new file mode 100644 index 0000000..4d0b031 --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/render_d_camera_pose.json @@ -0,0 +1,285 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:03Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_bdg\\render_d_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "d", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 6, + "used_marker_ids": [ + 95, + 208, + 69, + 103, + 214, + 64 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.010671415477997622, + 0.0018696542807179611, + 0.001824150025738836, + 0.0018241474426834877 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.164164330259058, + "residual_median_px": 5.398072385043921, + "residual_max_px": 7.027422341283123, + "sigma2_normalized": 6.6550277836154934e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8166700601577759, + 0.5771039724349976, + -0.0010227123275399208 + ], + [ + 0.16298067569732666, + -0.2323361337184906, + -0.9588833451271057 + ], + [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + ], + "translation_m": [ + -0.11485252529382706, + 0.08547275513410568, + 1.1249300241470337 + ], + "rvec_rad": [ + 1.7923624327425687, + 0.5686287097896567, + -0.4261428430202902 + ] + }, + "camera_in_world": { + "position_m": [ + 0.7026420831680298, + -0.7945951223373413, + 0.4010946750640869 + ], + "position_mm": [ + 702.64208984375, + -794.5950927734375, + 401.09466552734375 + ], + "orientation_deg": { + "roll": 109.92484283447266, + "pitch": 33.615230560302734, + "yaw": 11.286093711853027 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.0003498424001015397, + 6.823486661029942e-05, + 4.142063730678703e-05, + -5.345001723379169e-06, + -7.396858110018478e-05, + -1.2641475041979003e-05 + ], + [ + 6.823486661029988e-05, + 0.00010295516106391171, + -9.137229494897015e-05, + 2.281178954254835e-05, + -1.979611332364414e-05, + -7.605354993482835e-06 + ], + [ + 4.142063730678625e-05, + -9.137229494897096e-05, + 0.0002702927022549336, + -4.213130837183371e-05, + -7.56149612726986e-06, + 9.26150663825411e-06 + ], + [ + -5.345001723379082e-06, + 2.281178954254845e-05, + -4.2131308371833616e-05, + 8.962887675732753e-06, + -2.575675434153523e-07, + -3.848871385514968e-06 + ], + [ + -7.396858110018466e-05, + -1.9796113323644056e-05, + -7.561496127270001e-06, + -2.575675434153093e-07, + 1.8000566759428326e-05, + 7.99389653027148e-06 + ], + [ + -1.2641475041978559e-05, + -7.605354993482897e-06, + 9.261506638254348e-06, + -3.848871385514858e-06, + 7.993896530271401e-06, + 2.7756310749504287e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 1.07166452425966, + 0.581362070062273, + 0.9419759016685776 + ], + "tvec_std_m": [ + 0.0029938082229382617, + 0.004242707479832698, + 0.005268425832210631 + ] + }, + "camera_center_std_m": [ + 0.01190826606439346, + 0.013088153786860686, + 0.01603645350806163 + ], + "camera_center_std_mm": [ + 11.90826606439346, + 13.088153786860685, + 16.03645350806163 + ], + "orientation_std_deg": { + "roll": 1.2477636245413861, + "pitch": 0.8325671808473429, + "yaw": 0.699613718760565 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 421.5, + 1048.25 + ], + "projected_center_px": [ + 423.55438232421875, + 1045.9644775390625 + ], + "reprojection_error_px": 3.0731253885112206, + "confidence": 0.20059440065661768 + }, + { + "marker_id": 208, + "observed_center_px": [ + 1003.5, + 919.75 + ], + "projected_center_px": [ + 996.4899291992188, + 920.2435302734375 + ], + "reprojection_error_px": 7.027422341283123, + "confidence": 0.5971281121184089 + }, + { + "marker_id": 69, + "observed_center_px": [ + 128.25, + 929.75 + ], + "projected_center_px": [ + 123.95993041992188, + 934.0740966796875 + ], + "reprojection_error_px": 6.091182898025322, + "confidence": 0.6560383014602613 + }, + { + "marker_id": 103, + "observed_center_px": [ + 419.75, + 914.75 + ], + "projected_center_px": [ + 425.61590576171875, + 913.2058715820312 + ], + "reprojection_error_px": 6.065738452698394, + "confidence": 0.6806547457875692 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1073.0, + 853.25 + ], + "projected_center_px": [ + 1077.615234375, + 854.2874755859375 + ], + "reprojection_error_px": 4.730406317389448, + "confidence": 0.41285121294657384 + }, + { + "marker_id": 64, + "observed_center_px": [ + 238.75, + 848.0 + ], + "projected_center_px": [ + 237.76194763183594, + 846.0165405273438 + ], + "reprojection_error_px": 2.2159329777555143, + "confidence": 0.5529673325477359 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/render_g_aruco_detection.json b/data/camera_study/Scene10/k3_bdg/render_g_aruco_detection.json new file mode 100644 index 0000000..a81bd6c --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/render_g_aruco_detection.json @@ -0,0 +1,2224 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:02Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "g", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.npz", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.png", + "image_sha256": "6f328ef148dd5b73d40dbd9254ac0545dbd7393ed4666dd8eee8d3e346b4448b", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 37, + "num_rejected_candidates": 7 + }, + "detections": [ + { + "observation_id": "9e65cf7d-ae4d-4e4a-a978-426dbf9ba7f3", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 361.0, + 538.0 + ], + [ + 334.0, + 513.0 + ], + [ + 364.0, + 489.0 + ], + [ + 391.0, + 513.0 + ] + ], + "center_px": [ + 362.5, + 513.25 + ], + "quality": { + "area_px": 1396.5, + "perimeter_px": 150.3915138244629, + "sharpness": { + "laplacian_var": 1014.5935798624517 + }, + "contrast": { + "p05": 15.0, + "p95": 168.0, + "dynamic_range": 153.0, + "mean_gray": 87.64736297828335, + "std_gray": 65.25681309567548 + }, + "geometry": { + "distance_to_center_norm": 0.3983326554298401, + "distance_to_border_px": 334.0 + }, + "edge_ratio": 1.0810098739215166, + "edge_lengths_px": [ + 36.79673767089844, + 38.41874694824219, + 36.12478256225586, + 39.051246643066406 + ] + }, + "confidence": 0.8612317264250932 + }, + { + "observation_id": "b7978999-3f72-4d15-af93-c274de957087", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 490.0, + 612.0 + ], + [ + 463.0, + 586.0 + ], + [ + 492.0, + 572.0 + ], + [ + 518.0, + 598.0 + ] + ], + "center_px": [ + 490.75, + 592.0 + ], + "quality": { + "area_px": 1112.0, + "perimeter_px": 137.76032066345215, + "sharpness": { + "laplacian_var": 1213.9038992326398 + }, + "contrast": { + "p05": 22.0, + "p95": 181.0, + "dynamic_range": 159.0, + "mean_gray": 82.85922974767597, + "std_gray": 68.84435047820993 + }, + "geometry": { + "distance_to_center_norm": 0.26119279861450195, + "distance_to_border_px": 463.0 + }, + "edge_ratio": 1.1973610126869798, + "edge_lengths_px": [ + 37.48332977294922, + 32.202484130859375, + 36.769554138183594, + 31.30495262145996 + ] + }, + "confidence": 0.619139361878602 + }, + { + "observation_id": "4f756548-0a11-4ab0-9ecb-3e71ef9785a5", + "type": "aruco", + "marker_id": 86, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 94.0, + 958.0 + ], + [ + 68.0, + 982.0 + ], + [ + 47.0, + 960.0 + ], + [ + 73.0, + 936.0 + ] + ], + "center_px": [ + 70.5, + 959.0 + ], + "quality": { + "area_px": 1076.0, + "perimeter_px": 131.59485244750977, + "sharpness": { + "laplacian_var": 500.4565883722073 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 68.66531713900135, + "std_gray": 56.437884581126355 + }, + "geometry": { + "distance_to_center_norm": 0.8588042259216309, + "distance_to_border_px": 47.0 + }, + "edge_ratio": 1.1634060487042286, + "edge_lengths_px": [ + 35.38361358642578, + 30.4138126373291, + 35.38361358642578, + 30.4138126373291 + ] + }, + "confidence": 0.5795855489013004 + }, + { + "observation_id": "af4d934b-6f01-408f-897b-61040a2e72a1", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 944.0, + 859.0 + ], + [ + 923.0, + 881.0 + ], + [ + 899.0, + 859.0 + ], + [ + 921.0, + 837.0 + ] + ], + "center_px": [ + 921.75, + 859.0 + ], + "quality": { + "area_px": 990.0, + "perimeter_px": 125.91181182861328, + "sharpness": { + "laplacian_var": 1254.5651387199953 + }, + "contrast": { + "p05": 37.0, + "p95": 176.0, + "dynamic_range": 139.0, + "mean_gray": 94.86206896551724, + "std_gray": 57.98150599974307 + }, + "geometry": { + "distance_to_center_norm": 0.41938236355781555, + "distance_to_border_px": 199.0 + }, + "edge_ratio": 1.070488611997406, + "edge_lengths_px": [ + 30.4138126373291, + 32.557640075683594, + 31.11269760131836, + 31.827661514282227 + ] + }, + "confidence": 0.616540888528013 + }, + { + "observation_id": "b28aac66-1faf-44d0-863a-42b9d572358d", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 442.0, + 549.0 + ], + [ + 415.0, + 524.0 + ], + [ + 437.0, + 520.0 + ], + [ + 464.0, + 545.0 + ] + ], + "center_px": [ + 439.5, + 534.5 + ], + "quality": { + "area_px": 658.0, + "perimeter_px": 118.31483459472656, + "sharpness": { + "laplacian_var": 2355.6744409733983 + }, + "contrast": { + "p05": 23.0, + "p95": 180.0, + "dynamic_range": 157.0, + "mean_gray": 108.16359918200409, + "std_gray": 61.881853788931394 + }, + "geometry": { + "distance_to_center_norm": 0.31172657012939453, + "distance_to_border_px": 415.0 + }, + "edge_ratio": 1.6456001465781875, + "edge_lengths_px": [ + 36.79673767089844, + 22.360679626464844, + 36.79673767089844, + 22.360679626464844 + ] + }, + "confidence": 0.2665694139483502 + }, + { + "observation_id": "4dd6b9e0-545b-49d7-aafb-351438947864", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 565.0, + 714.0 + ], + [ + 544.0, + 692.0 + ], + [ + 568.0, + 672.0 + ], + [ + 589.0, + 694.0 + ] + ], + "center_px": [ + 566.5, + 693.0 + ], + "quality": { + "area_px": 948.0, + "perimeter_px": 123.30962371826172, + "sharpness": { + "laplacian_var": 948.7205075308444 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 87.45253164556962, + "std_gray": 63.36793023445192 + }, + "geometry": { + "distance_to_center_norm": 0.24080945551395416, + "distance_to_border_px": 366.0 + }, + "edge_ratio": 1.027197727372641, + "edge_lengths_px": [ + 30.4138126373291, + 31.240999221801758, + 30.4138126373291, + 31.240999221801758 + ] + }, + "confidence": 0.6152661587526339 + }, + { + "observation_id": "abc9339d-1880-4cd2-97c0-30db1c7772c7", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 903.0, + 772.0 + ], + [ + 882.0, + 794.0 + ], + [ + 858.0, + 773.0 + ], + [ + 879.0, + 752.0 + ] + ], + "center_px": [ + 880.5, + 772.75 + ], + "quality": { + "area_px": 946.5, + "perimeter_px": 123.24373435974121, + "sharpness": { + "laplacian_var": 1446.0998691484099 + }, + "contrast": { + "p05": 34.0, + "p95": 175.0, + "dynamic_range": 141.0, + "mean_gray": 92.60221870047543, + "std_gray": 58.54318515049794 + }, + "geometry": { + "distance_to_center_norm": 0.31413766741752625, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 1.0738069198414777, + "edge_lengths_px": [ + 30.4138126373291, + 31.890438079833984, + 29.698484420776367, + 31.240999221801758 + ] + }, + "confidence": 0.5876289194459208 + }, + { + "observation_id": "b4c3fe77-cf08-4edf-8070-fa6f238e059d", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 138.0, + 787.0 + ], + [ + 113.0, + 809.0 + ], + [ + 93.0, + 789.0 + ], + [ + 118.0, + 767.0 + ] + ], + "center_px": [ + 115.5, + 788.0 + ], + "quality": { + "area_px": 940.0, + "perimeter_px": 123.17184448242188, + "sharpness": { + "laplacian_var": 604.4415315905076 + }, + "contrast": { + "p05": 6.0, + "p95": 133.0, + "dynamic_range": 127.0, + "mean_gray": 50.246422893481714, + "std_gray": 50.2390597357709 + }, + "geometry": { + "distance_to_center_norm": 0.725993812084198, + "distance_to_border_px": 93.0 + }, + "edge_ratio": 1.177391162675776, + "edge_lengths_px": [ + 33.30165100097656, + 28.284271240234375, + 33.30165100097656, + 28.284271240234375 + ] + }, + "confidence": 0.5322501871361803 + }, + { + "observation_id": "9f52b98c-c9f6-4288-8150-dd0f6e3f031a", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 999.0, + 755.0 + ], + [ + 978.0, + 776.0 + ], + [ + 955.0, + 755.0 + ], + [ + 976.0, + 734.0 + ] + ], + "center_px": [ + 977.0, + 755.0 + ], + "quality": { + "area_px": 924.0, + "perimeter_px": 121.68661499023438, + "sharpness": { + "laplacian_var": 1427.420428863967 + }, + "contrast": { + "p05": 40.0, + "p95": 177.0, + "dynamic_range": 137.0, + "mean_gray": 98.6042345276873, + "std_gray": 56.7245592071717 + }, + "geometry": { + "distance_to_center_norm": 0.37230345606803894, + "distance_to_border_px": 304.0 + }, + "edge_ratio": 1.0487007563440722, + "edge_lengths_px": [ + 29.698484420776367, + 31.14482307434082, + 29.698484420776367, + 31.14482307434082 + ] + }, + "confidence": 0.5873934926369923 + }, + { + "observation_id": "0e404890-a46e-4a81-9685-2309c2837a58", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 76.0, + 765.0 + ], + [ + 50.0, + 785.0 + ], + [ + 32.0, + 764.0 + ], + [ + 58.0, + 744.0 + ] + ], + "center_px": [ + 54.0, + 764.5 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.92214965820312, + "sharpness": { + "laplacian_var": 1149.1764888888888 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 87.18, + "std_gray": 50.17918824904737 + }, + "geometry": { + "distance_to_center_norm": 0.7809113264083862, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.1859747094873558, + "edge_lengths_px": [ + 32.80244064331055, + 27.658634185791016, + 32.80244064331055, + 27.658634185791016 + ] + }, + "confidence": 0.32594286952973284 + }, + { + "observation_id": "0424349e-9314-4fbf-a708-452c641f1ac9", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 823.0, + 743.0 + ], + [ + 803.0, + 765.0 + ], + [ + 779.0, + 745.0 + ], + [ + 799.0, + 724.0 + ] + ], + "center_px": [ + 801.0, + 744.25 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.58359336853027, + "sharpness": { + "laplacian_var": 1584.9415918166465 + }, + "contrast": { + "p05": 30.0, + "p95": 174.0, + "dynamic_range": 144.0, + "mean_gray": 126.23913043478261, + "std_gray": 56.63381767927601 + }, + "geometry": { + "distance_to_center_norm": 0.24413886666297913, + "distance_to_border_px": 315.0 + }, + "edge_ratio": 1.0772758352345433, + "edge_lengths_px": [ + 29.73213768005371, + 31.240999221801758, + 29.0, + 30.610456466674805 + ] + }, + "confidence": 0.5606734879266068 + }, + { + "observation_id": "0ef4255e-c46a-42ee-94f1-d7b8450febfa", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 747.0, + 705.0 + ], + [ + 724.0, + 724.0 + ], + [ + 703.0, + 703.0 + ], + [ + 726.0, + 683.0 + ] + ], + "center_px": [ + 725.0, + 703.75 + ], + "quality": { + "area_px": 904.0, + "perimeter_px": 120.42466735839844, + "sharpness": { + "laplacian_var": 1425.730397310992 + }, + "contrast": { + "p05": 25.0, + "p95": 173.0, + "dynamic_range": 148.0, + "mean_gray": 88.02341137123746, + "std_gray": 60.58805571551177 + }, + "geometry": { + "distance_to_center_norm": 0.18202924728393555, + "distance_to_border_px": 356.0 + }, + "edge_ratio": 1.0262982208923905, + "edge_lengths_px": [ + 29.832868576049805, + 29.698484420776367, + 30.479501724243164, + 30.4138126373291 + ] + }, + "confidence": 0.5872237273710109 + }, + { + "observation_id": "816dd499-61d3-4249-9bae-34393a022878", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 119.0, + 710.0 + ], + [ + 94.0, + 730.0 + ], + [ + 76.0, + 709.0 + ], + [ + 102.0, + 690.0 + ] + ], + "center_px": [ + 97.75, + 709.75 + ], + "quality": { + "area_px": 864.0, + "perimeter_px": 118.12554931640625, + "sharpness": { + "laplacian_var": 968.3578168166666 + }, + "contrast": { + "p05": 6.0, + "p95": 136.0, + "dynamic_range": 130.0, + "mean_gray": 46.16981132075472, + "std_gray": 49.20730448013899 + }, + "geometry": { + "distance_to_center_norm": 0.7166538238525391, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.226816924595493, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 32.202484130859375, + 26.248809814453125 + ] + }, + "confidence": 0.46950770604173 + }, + { + "observation_id": "6fde1b5e-304b-47f7-881a-7c9be500d1cf", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 73.0, + 695.0 + ], + [ + 48.0, + 715.0 + ], + [ + 30.0, + 694.0 + ], + [ + 55.0, + 675.0 + ] + ], + "center_px": [ + 51.5, + 694.75 + ], + "quality": { + "area_px": 863.5, + "perimeter_px": 117.98213958740234, + "sharpness": { + "laplacian_var": 900.750086057507 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 80.92109777015438, + "std_gray": 51.03488818616118 + }, + "geometry": { + "distance_to_center_norm": 0.7624196410179138, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 31.400636672973633, + 26.90724754333496 + ] + }, + "confidence": 0.2902883953953809 + }, + { + "observation_id": "01e08026-a540-424b-a067-9da0e169713a", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 50.0, + 652.0 + ], + [ + 25.0, + 672.0 + ], + [ + 7.0, + 652.0 + ], + [ + 31.0, + 632.0 + ] + ], + "center_px": [ + 28.25, + 652.0 + ], + "quality": { + "area_px": 860.0, + "perimeter_px": 117.75009727478027, + "sharpness": { + "laplacian_var": 765.5794806391044 + }, + "contrast": { + "p05": 6.0, + "p95": 138.0, + "dynamic_range": 132.0, + "mean_gray": 60.22508591065292, + "std_gray": 51.90037234016344 + }, + "geometry": { + "distance_to_center_norm": 0.778620183467865, + "distance_to_border_px": 7.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 26.90724754333496, + 31.240999221801758, + 27.58622932434082 + ] + }, + "confidence": 0.06745941479560678 + }, + { + "observation_id": "35eda4c9-42e3-4b8d-9f21-bcefd181faf4", + "type": "aruco", + "marker_id": 79, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 603.0, + 594.0 + ], + [ + 579.0, + 612.0 + ], + [ + 561.0, + 592.0 + ], + [ + 584.0, + 574.0 + ] + ], + "center_px": [ + 581.75, + 593.0 + ], + "quality": { + "area_px": 803.0, + "perimeter_px": 113.69964027404785, + "sharpness": { + "laplacian_var": 1656.0680687854385 + }, + "contrast": { + "p05": 12.0, + "p95": 161.0, + "dynamic_range": 149.0, + "mean_gray": 98.64845173041894, + "std_gray": 55.913593747198206 + }, + "geometry": { + "distance_to_center_norm": 0.16451223194599152, + "distance_to_border_px": 468.0 + }, + "edge_ratio": 1.1149412421944707, + "edge_lengths_px": [ + 30.0, + 26.90724754333496, + 29.20616340637207, + 27.58622932434082 + ] + }, + "confidence": 0.48014488393995497 + }, + { + "observation_id": "a7a3d0d1-e174-426b-99f5-0713a14977a5", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 532.0 + ], + [ + 698.0, + 550.0 + ], + [ + 678.0, + 531.0 + ], + [ + 700.0, + 513.0 + ] + ], + "center_px": [ + 699.0, + 531.5 + ], + "quality": { + "area_px": 778.0, + "perimeter_px": 112.02313995361328, + "sharpness": { + "laplacian_var": 1630.603042441958 + }, + "contrast": { + "p05": 23.0, + "p95": 174.0, + "dynamic_range": 151.0, + "mean_gray": 95.26275992438563, + "std_gray": 62.75795126376546 + }, + "geometry": { + "distance_to_center_norm": 0.025172246620059013, + "distance_to_border_px": 513.0 + }, + "edge_ratio": 1.0304177609146679, + "edge_lengths_px": [ + 28.42534065246582, + 27.58622932434082, + 28.42534065246582, + 27.58622932434082 + ] + }, + "confidence": 0.5033557129355607 + }, + { + "observation_id": "8fcaa507-e546-4bd1-a233-7a1a38edfb36", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 879.0, + 509.0 + ], + [ + 858.0, + 527.0 + ], + [ + 837.0, + 508.0 + ], + [ + 857.0, + 490.0 + ] + ], + "center_px": [ + 857.75, + 508.5 + ], + "quality": { + "area_px": 776.5, + "perimeter_px": 111.95437049865723, + "sharpness": { + "laplacian_var": 1308.7119920798898 + }, + "contrast": { + "p05": 28.0, + "p95": 174.0, + "dynamic_range": 146.0, + "mean_gray": 80.56060606060606, + "std_gray": 60.05184093458493 + }, + "geometry": { + "distance_to_center_norm": 0.1570063829421997, + "distance_to_border_px": 490.0 + }, + "edge_ratio": 1.0803365840024208, + "edge_lengths_px": [ + 27.658634185791016, + 28.319604873657227, + 26.90724754333496, + 29.068883895874023 + ] + }, + "confidence": 0.4791716529202595 + }, + { + "observation_id": "0f10e971-99bc-4de1-b44e-9edb1bca9ae1", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 692.0, + 463.0 + ], + [ + 670.0, + 480.0 + ], + [ + 650.0, + 462.0 + ], + [ + 672.0, + 445.0 + ] + ], + "center_px": [ + 671.0, + 462.5 + ], + "quality": { + "area_px": 736.0, + "perimeter_px": 109.42024993896484, + "sharpness": { + "laplacian_var": 1430.0492813475546 + }, + "contrast": { + "p05": 18.0, + "p95": 168.0, + "dynamic_range": 150.0, + "mean_gray": 84.02217741935483, + "std_gray": 61.295601129603824 + }, + "geometry": { + "distance_to_center_norm": 0.10187894850969315, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 1.0332858231363153, + "edge_lengths_px": [ + 27.80287742614746, + 26.90724754333496, + 27.80287742614746, + 26.90724754333496 + ] + }, + "confidence": 0.47486054263026106 + }, + { + "observation_id": "d7262499-e72e-4120-81da-4c6addde7575", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 226.0, + 383.0 + ], + [ + 209.0, + 365.0 + ], + [ + 233.0, + 348.0 + ], + [ + 250.0, + 366.0 + ] + ], + "center_px": [ + 229.5, + 365.5 + ], + "quality": { + "area_px": 721.0, + "perimeter_px": 108.33943939208984, + "sharpness": { + "laplacian_var": 1811.1556224254036 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 72.70393374741201, + "std_gray": 58.0764945436627 + }, + "geometry": { + "distance_to_center_norm": 0.5784616470336914, + "distance_to_border_px": 209.0 + }, + "edge_ratio": 1.187894376916731, + "edge_lengths_px": [ + 24.75883674621582, + 29.4108829498291, + 24.75883674621582, + 29.4108829498291 + ] + }, + "confidence": 0.4046375469124394 + }, + { + "observation_id": "d1335227-cf8a-493b-999c-d1da35aebe22", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 437.0 + ], + [ + 765.0, + 454.0 + ], + [ + 745.0, + 436.0 + ], + [ + 767.0, + 419.0 + ] + ], + "center_px": [ + 765.75, + 436.5 + ], + "quality": { + "area_px": 718.5, + "perimeter_px": 107.90114212036133, + "sharpness": { + "laplacian_var": 1491.443337468285 + }, + "contrast": { + "p05": 22.0, + "p95": 171.0, + "dynamic_range": 149.0, + "mean_gray": 109.3970893970894, + "std_gray": 60.642148532506475 + }, + "geometry": { + "distance_to_center_norm": 0.12573395669460297, + "distance_to_border_px": 419.0 + }, + "edge_ratio": 1.0622933508624515, + "edge_lengths_px": [ + 27.018512725830078, + 26.90724754333496, + 27.80287742614746, + 26.172504425048828 + ] + }, + "confidence": 0.4509112286273005 + }, + { + "observation_id": "04c9f37a-cfc4-4af2-8333-5cc2a2390069", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 730.0, + 434.0 + ], + [ + 708.0, + 452.0 + ], + [ + 689.0, + 434.0 + ], + [ + 710.0, + 417.0 + ] + ], + "center_px": [ + 709.25, + 434.25 + ], + "quality": { + "area_px": 717.5, + "perimeter_px": 107.86516761779785, + "sharpness": { + "laplacian_var": 1736.662652737497 + }, + "contrast": { + "p05": 19.0, + "p95": 167.0, + "dynamic_range": 148.0, + "mean_gray": 58.66320166320166, + "std_gray": 55.157409197074806 + }, + "geometry": { + "distance_to_center_norm": 0.11810554563999176, + "distance_to_border_px": 417.0 + }, + "edge_ratio": 1.0860764484296306, + "edge_lengths_px": [ + 28.42534065246582, + 26.172504425048828, + 27.018512725830078, + 26.248809814453125 + ] + }, + "confidence": 0.44042326304466006 + }, + { + "observation_id": "2a51d8c2-c211-4af9-a2f3-b7c92b0881c0", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 576.0, + 320.0 + ], + [ + 550.0, + 337.0 + ], + [ + 536.0, + 319.0 + ], + [ + 558.0, + 303.0 + ] + ], + "center_px": [ + 555.0, + 319.75 + ], + "quality": { + "area_px": 684.0, + "perimeter_px": 105.82973670959473, + "sharpness": { + "laplacian_var": 2755.9650784771356 + }, + "contrast": { + "p05": 18.3, + "p95": 164.0, + "dynamic_range": 145.7, + "mean_gray": 118.58029978586724, + "std_gray": 53.53363006243584 + }, + "geometry": { + "distance_to_center_norm": 0.30577781796455383, + "distance_to_border_px": 303.0 + }, + "edge_ratio": 1.362266203821036, + "edge_lengths_px": [ + 31.064449310302734, + 22.803508758544922, + 27.20294189453125, + 24.75883674621582 + ] + }, + "confidence": 0.33473633767097827 + }, + { + "observation_id": "f9e3719f-e9fb-41c7-a1e8-c5b1d11939c7", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 146.0, + 302.0 + ], + [ + 128.0, + 284.0 + ], + [ + 151.0, + 268.0 + ], + [ + 168.0, + 285.0 + ] + ], + "center_px": [ + 148.25, + 284.75 + ], + "quality": { + "area_px": 682.5, + "perimeter_px": 105.31820297241211, + "sharpness": { + "laplacian_var": 1274.9818476124406 + }, + "contrast": { + "p05": 8.0, + "p95": 153.0, + "dynamic_range": 145.0, + "mean_gray": 78.65806451612903, + "std_gray": 55.65065056297059 + }, + "geometry": { + "distance_to_center_norm": 0.6957105398178101, + "distance_to_border_px": 128.0 + }, + "edge_ratio": 1.1653889989621362, + "edge_lengths_px": [ + 25.45584487915039, + 28.017850875854492, + 24.041629791259766, + 27.80287742614746 + ] + }, + "confidence": 0.3904275743165678 + }, + { + "observation_id": "5254a27a-7b1d-438a-884b-5aa29ad1fa18", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 561.0, + 509.0 + ], + [ + 545.0, + 479.0 + ], + [ + 562.0, + 476.0 + ], + [ + 579.0, + 506.0 + ] + ], + "center_px": [ + 561.75, + 492.5 + ], + "quality": { + "area_px": 574.5, + "perimeter_px": 103.99284362792969, + "sharpness": { + "laplacian_var": 2618.6153012470177 + }, + "contrast": { + "p05": 28.0, + "p95": 182.0, + "dynamic_range": 154.0, + "mean_gray": 76.1413881748072, + "std_gray": 60.266572002236316 + }, + "geometry": { + "distance_to_center_norm": 0.18358337879180908, + "distance_to_border_px": 476.0 + }, + "edge_ratio": 1.997481717814946, + "edge_lengths_px": [ + 34.0, + 17.262676239013672, + 34.48188018798828, + 18.248287200927734 + ] + }, + "confidence": 0.19174142951303974 + }, + { + "observation_id": "2fb45211-c2a5-472a-9c80-24e337878a42", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 349.0, + 309.0 + ], + [ + 327.0, + 326.0 + ], + [ + 309.0, + 310.0 + ], + [ + 330.0, + 293.0 + ] + ], + "center_px": [ + 328.75, + 309.5 + ], + "quality": { + "area_px": 658.5, + "perimeter_px": 103.74406433105469, + "sharpness": { + "laplacian_var": 1094.0317657154478 + }, + "contrast": { + "p05": 9.0, + "p95": 158.0, + "dynamic_range": 149.0, + "mean_gray": 66.65924276169265, + "std_gray": 58.28183701574557 + }, + "geometry": { + "distance_to_center_norm": 0.5045555830001831, + "distance_to_border_px": 293.0 + }, + "edge_ratio": 1.1544516556294537, + "edge_lengths_px": [ + 27.80287742614746, + 24.083189010620117, + 27.018512725830078, + 24.83948516845703 + ] + }, + "confidence": 0.38026711457279644 + }, + { + "observation_id": "74f2e82c-2592-47b5-b0bf-385d8642b21d", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 341.0 + ], + [ + 501.0, + 358.0 + ], + [ + 483.0, + 341.0 + ], + [ + 503.0, + 325.0 + ] + ], + "center_px": [ + 502.25, + 341.25 + ], + "quality": { + "area_px": 643.5, + "perimeter_px": 102.22933197021484, + "sharpness": { + "laplacian_var": 792.6312567894008 + }, + "contrast": { + "p05": 12.0, + "p95": 156.59999999999997, + "dynamic_range": 144.59999999999997, + "mean_gray": 44.28285077951002, + "std_gray": 50.37014613113326 + }, + "geometry": { + "distance_to_center_norm": 0.32757362723350525, + "distance_to_border_px": 325.0 + }, + "edge_ratio": 1.0912674534258815, + "edge_lengths_px": [ + 27.018512725830078, + 24.75883674621582, + 25.612497329711914, + 24.83948516845703 + ] + }, + "confidence": 0.3931208602008742 + }, + { + "observation_id": "ed6ef14f-5cc9-4120-a4f7-c9c59f337975", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 378.0, + 281.0 + ], + [ + 356.0, + 296.0 + ], + [ + 340.0, + 278.0 + ], + [ + 362.0, + 263.0 + ] + ], + "center_px": [ + 359.0, + 279.5 + ], + "quality": { + "area_px": 636.0, + "perimeter_px": 101.42048645019531, + "sharpness": { + "laplacian_var": 1475.439773960402 + }, + "contrast": { + "p05": 12.0, + "p95": 159.0, + "dynamic_range": 147.0, + "mean_gray": 104.82805429864253, + "std_gray": 54.152686185461974 + }, + "geometry": { + "distance_to_center_norm": 0.49463948607444763, + "distance_to_border_px": 263.0 + }, + "edge_ratio": 1.1056282539133682, + "edge_lengths_px": [ + 26.62705421447754, + 24.083189010620117, + 26.62705421447754, + 24.083189010620117 + ] + }, + "confidence": 0.3834923705135548 + }, + { + "observation_id": "14aaaea5-2066-470a-810e-d7c594e45951", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 444.0, + 258.0 + ], + [ + 425.0, + 275.0 + ], + [ + 406.0, + 259.0 + ], + [ + 427.0, + 243.0 + ] + ], + "center_px": [ + 425.5, + 258.75 + ], + "quality": { + "area_px": 607.0, + "perimeter_px": 99.40690803527832, + "sharpness": { + "laplacian_var": 1418.6926709234967 + }, + "contrast": { + "p05": 11.0, + "p95": 160.0, + "dynamic_range": 149.0, + "mean_gray": 106.14797136038186, + "std_gray": 57.2326997711296 + }, + "geometry": { + "distance_to_center_norm": 0.45247167348861694, + "distance_to_border_px": 243.0 + }, + "edge_ratio": 1.1644874731532113, + "edge_lengths_px": [ + 25.495098114013672, + 24.83948516845703, + 26.4007568359375, + 22.671567916870117 + ] + }, + "confidence": 0.3475062428717297 + }, + { + "observation_id": "db5dabc5-cacb-4282-a341-82087667c3b4", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 540.0, + 214.0 + ], + [ + 518.0, + 229.0 + ], + [ + 502.0, + 212.0 + ], + [ + 524.0, + 198.0 + ] + ], + "center_px": [ + 521.0, + 213.25 + ], + "quality": { + "area_px": 595.0, + "perimeter_px": 98.67651557922363, + "sharpness": { + "laplacian_var": 2376.767235312675 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 88.00492610837438, + "std_gray": 57.82609375178821 + }, + "geometry": { + "distance_to_center_norm": 0.425087571144104, + "distance_to_border_px": 198.0 + }, + "edge_ratio": 1.176760682519333, + "edge_lengths_px": [ + 26.62705421447754, + 23.34523582458496, + 26.07680892944336, + 22.627416610717773 + ] + }, + "confidence": 0.3370835485575886 + }, + { + "observation_id": "18ac5854-aaad-4e36-bed8-b34ccceb5c78", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 435.0, + 187.0 + ], + [ + 413.0, + 203.0 + ], + [ + 397.0, + 188.0 + ], + [ + 416.0, + 172.0 + ] + ], + "center_px": [ + 415.25, + 187.5 + ], + "quality": { + "area_px": 587.5, + "perimeter_px": 98.18157768249512, + "sharpness": { + "laplacian_var": 1963.1431301414739 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 65.73891625615764, + "std_gray": 57.77965459852634 + }, + "geometry": { + "distance_to_center_norm": 0.5177453756332397, + "distance_to_border_px": 172.0 + }, + "edge_ratio": 1.2403473347124077, + "edge_lengths_px": [ + 27.20294189453125, + 21.931713104248047, + 24.83948516845703, + 24.20743751525879 + ] + }, + "confidence": 0.3157717646545193 + }, + { + "observation_id": "cab63293-9d05-41a7-9dcc-23032ec101da", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 295.0, + 182.0 + ], + [ + 274.0, + 199.0 + ], + [ + 257.0, + 184.0 + ], + [ + 277.0, + 168.0 + ] + ], + "center_px": [ + 275.75, + 183.25 + ], + "quality": { + "area_px": 586.0, + "perimeter_px": 98.10608673095703, + "sharpness": { + "laplacian_var": 1004.0248132785243 + }, + "contrast": { + "p05": 8.0, + "p95": 152.0, + "dynamic_range": 144.0, + "mean_gray": 57.34663341645885, + "std_gray": 54.68788834886238 + }, + "geometry": { + "distance_to_center_norm": 0.6330687999725342, + "distance_to_border_px": 168.0 + }, + "edge_ratio": 1.1917355175830322, + "edge_lengths_px": [ + 27.018512725830078, + 22.671567916870117, + 25.612497329711914, + 22.803508758544922 + ] + }, + "confidence": 0.32781322776968225 + }, + { + "observation_id": "72428a4f-7d14-4b93-aa93-f2b0a475921e", + "type": "aruco", + "marker_id": 65, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 330.0, + 124.0 + ], + [ + 309.0, + 139.0 + ], + [ + 292.0, + 125.0 + ], + [ + 312.0, + 109.0 + ] + ], + "center_px": [ + 310.75, + 124.25 + ], + "quality": { + "area_px": 568.5, + "perimeter_px": 96.87293815612793, + "sharpness": { + "laplacian_var": 1300.0755674364495 + }, + "contrast": { + "p05": 8.0, + "p95": 155.0, + "dynamic_range": 147.0, + "mean_gray": 86.9776119402985, + "std_gray": 55.68315657930573 + }, + "geometry": { + "distance_to_center_norm": 0.6482013463973999, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.1718344795212643, + "edge_lengths_px": [ + 25.806976318359375, + 22.022714614868164, + 25.612497329711914, + 23.430749893188477 + ] + }, + "confidence": 0.323424516536529 + }, + { + "observation_id": "72aa2d7d-15f4-4ef7-a098-d0d3db3c1ff0", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 356.0, + 167.0 + ], + [ + 333.0, + 181.0 + ], + [ + 319.0, + 165.0 + ], + [ + 341.0, + 151.0 + ] + ], + "center_px": [ + 337.25, + 166.0 + ], + "quality": { + "area_px": 563.0, + "perimeter_px": 96.19463729858398, + "sharpness": { + "laplacian_var": 1894.9311071943598 + }, + "contrast": { + "p05": 9.0, + "p95": 156.0, + "dynamic_range": 147.0, + "mean_gray": 103.9113924050633, + "std_gray": 53.71344264563591 + }, + "geometry": { + "distance_to_center_norm": 0.5945987105369568, + "distance_to_border_px": 151.0 + }, + "edge_ratio": 1.266484164199827, + "edge_lengths_px": [ + 26.925823211669922, + 21.260292053222656, + 26.07680892944336, + 21.931713104248047 + ] + }, + "confidence": 0.2963584890699928 + }, + { + "observation_id": "1582977a-0c9f-4e96-a4ee-18a6ab92edb9", + "type": "aruco", + "marker_id": 87, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 180.0, + 65.0 + ], + [ + 159.0, + 81.0 + ], + [ + 143.0, + 66.0 + ], + [ + 164.0, + 52.0 + ] + ], + "center_px": [ + 161.5, + 66.0 + ], + "quality": { + "area_px": 534.0, + "perimeter_px": 94.18685722351074, + "sharpness": { + "laplacian_var": 1427.9534499507668 + }, + "contrast": { + "p05": 8.0, + "p95": 150.0, + "dynamic_range": 142.0, + "mean_gray": 94.2133676092545, + "std_gray": 52.32608089294961 + }, + "geometry": { + "distance_to_center_norm": 0.8139207363128662, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.2806248134565528, + "edge_lengths_px": [ + 26.4007568359375, + 21.931713104248047, + 25.238859176635742, + 20.615528106689453 + ] + }, + "confidence": 0.27798930354872264 + }, + { + "observation_id": "5e51ad24-afb4-4c73-bda9-b148174bbbc7", + "type": "aruco", + "marker_id": 80, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 318.0, + 56.0 + ], + [ + 297.0, + 71.0 + ], + [ + 281.0, + 57.0 + ], + [ + 301.0, + 42.0 + ] + ], + "center_px": [ + 299.25, + 56.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 847.3843286787691 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 66.73007712082263, + "std_gray": 58.398961546954666 + }, + "geometry": { + "distance_to_center_norm": 0.7121544480323792, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.806976318359375, + 21.260292053222656, + 25.0, + 22.022714614868164 + ] + }, + "confidence": 0.24658567276025462 + }, + { + "observation_id": "1d6f0086-d897-4c76-bb8b-7715ad5a76ba", + "type": "aruco", + "marker_id": 78, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 352.0, + 82.0 + ], + [ + 332.0, + 97.0 + ], + [ + 315.0, + 83.0 + ], + [ + 336.0, + 68.0 + ] + ], + "center_px": [ + 333.75, + 82.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 1495.6557828150394 + }, + "contrast": { + "p05": 8.0, + "p95": 154.39999999999998, + "dynamic_range": 146.39999999999998, + "mean_gray": 80.43256997455471, + "std_gray": 54.727417597641875 + }, + "geometry": { + "distance_to_center_norm": 0.6652719378471375, + "distance_to_border_px": 68.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.0, + 22.022714614868164, + 25.806976318359375, + 21.260292053222656 + ] + }, + "confidence": 0.29355437233363646 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 486.0, + 719.0 + ], + [ + 454.0, + 799.0 + ], + [ + 418.0, + 837.0 + ], + [ + 463.0, + 740.0 + ] + ], + "center_px": [ + 455.25, + 773.75 + ], + "area_px": 1475.0 + }, + { + "image_points_px": [ + [ + 438.0, + 753.0 + ], + [ + 414.0, + 813.0 + ], + [ + 410.0, + 798.0 + ], + [ + 428.0, + 756.0 + ] + ], + "center_px": [ + 422.5, + 780.0 + ], + "area_px": 483.0 + }, + { + "image_points_px": [ + [ + 800.0, + 580.0 + ], + [ + 824.0, + 598.0 + ], + [ + 805.0, + 618.0 + ], + [ + 781.0, + 600.0 + ] + ], + "center_px": [ + 802.5, + 599.0 + ], + "area_px": 822.0 + }, + { + "image_points_px": [ + [ + 347.0, + 811.0 + ], + [ + 356.0, + 811.0 + ], + [ + 379.0, + 836.0 + ], + [ + 372.0, + 837.0 + ] + ], + "center_px": [ + 363.5, + 823.75 + ], + "area_px": 216.0 + }, + { + "image_points_px": [ + [ + 606.0, + 542.0 + ], + [ + 580.0, + 559.0 + ], + [ + 569.0, + 560.0 + ], + [ + 589.0, + 544.0 + ] + ], + "center_px": [ + 586.0, + 551.25 + ], + "area_px": 196.5 + }, + { + "image_points_px": [ + [ + 523.0, + 557.0 + ], + [ + 498.0, + 574.0 + ], + [ + 494.0, + 570.0 + ], + [ + 503.0, + 561.0 + ] + ], + "center_px": [ + 504.5, + 565.5 + ], + "area_px": 156.0 + }, + { + "image_points_px": [ + [ + 803.0, + 972.0 + ], + [ + 814.0, + 977.0 + ], + [ + 824.0, + 985.0 + ], + [ + 808.0, + 977.0 + ] + ], + "center_px": [ + 812.25, + 977.75 + ], + "area_px": 39.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/render_g_camera_pose.json b/data/camera_study/Scene10/k3_bdg/render_g_camera_pose.json new file mode 100644 index 0000000..9036715 --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/render_g_camera_pose.json @@ -0,0 +1,663 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:03Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_bdg\\render_g_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "g", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 33, + "used_marker_ids": [ + 86, + 64, + 215, + 58, + 72, + 69, + 53, + 103, + 51, + 56, + 46, + 68, + 79, + 55, + 66, + 47, + 217, + 97, + 54, + 85, + 205, + 92, + 105, + 102, + 59, + 57, + 48, + 63, + 65, + 71, + 87, + 80, + 78 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.009919110626502768, + 0.00131603695020182, + 0.001107937977321884, + 0.0011079307333379282 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.1533723108903047, + "residual_median_px": 2.642822899939481, + "residual_max_px": 5.712847334889287, + "sigma2_normalized": 1.3502615607878073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + -0.7068235278129578, + -0.7073897123336792, + 0.0005333506851457059 + ], + [ + -0.6407679319381714, + 0.6399352550506592, + -0.424145370721817 + ], + [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + ], + "translation_m": [ + -0.00025032571284100413, + 0.3299143314361572, + 1.3926880359649658 + ], + "rvec_rad": [ + 1.1160234227786252, + -2.692342329270323, + 0.5995714660194011 + ] + }, + "camera_in_world": { + "position_m": [ + -0.20615969598293304, + 0.20669731497764587, + 1.40114164352417 + ], + "position_mm": [ + -206.15969848632812, + 206.6973114013672, + 1401.1416015625 + ], + "orientation_deg": { + "roll": -161.66343688964844, + "pitch": -17.43927001953125, + "yaw": -137.80624389648438 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 4.975476294351241e-06, + -6.1997390444361685e-06, + 4.6125841623440254e-06, + 3.8792135706014886e-07, + 1.0177551175558624e-06, + 4.222247510549453e-06 + ], + [ + -6.199739044436152e-06, + 1.6975220993135513e-05, + -1.1554389240886986e-05, + -2.6694426951616535e-06, + -1.5071367865932754e-06, + -1.0044703768545779e-05 + ], + [ + 4.61258416234392e-06, + -1.1554389240886865e-05, + 4.305804556659614e-05, + 4.2916213343878956e-06, + -2.367994951969628e-06, + 1.1642827799058608e-07 + ], + [ + 3.8792135706013785e-07, + -2.66944269516164e-06, + 4.29162133438789e-06, + 8.873234421723078e-07, + -1.077878898019132e-07, + 5.938016020714988e-07 + ], + [ + 1.0177551175558734e-06, + -1.5071367865932949e-06, + -2.3679949519695885e-06, + -1.0778788980190919e-07, + 6.616834799099002e-07, + 1.592756267167381e-06 + ], + [ + 4.2222475105494726e-06, + -1.0044703768545826e-05, + 1.1642827799072875e-07, + 5.938016020715144e-07, + 1.5927562671673749e-06, + 1.016526335390813e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.12780268061910577, + 0.23606432019497975, + 0.37596705361655935 + ], + "tvec_std_m": [ + 0.0009419784722446197, + 0.0008134392908569761, + 0.0031883010136917957 + ] + }, + "camera_center_std_m": [ + 0.005660072460127804, + 0.007818574448214759, + 0.0036781658638248924 + ], + "camera_center_std_mm": [ + 5.660072460127804, + 7.8185744482147586, + 3.6781658638248924 + ], + "orientation_std_deg": { + "roll": 0.33214565947431973, + "pitch": 0.23919321283200756, + "yaw": 0.12115842919429226 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 86, + "observed_center_px": [ + 70.5, + 959.0 + ], + "projected_center_px": [ + 72.42671966552734, + 955.485107421875 + ], + "reprojection_error_px": 4.0083311371801615, + "confidence": 0.5795855489013004 + }, + { + "marker_id": 64, + "observed_center_px": [ + 921.75, + 859.0 + ], + "projected_center_px": [ + 922.7560424804688, + 862.7833251953125 + ], + "reprojection_error_px": 3.9148015283017963, + "confidence": 0.616540888528013 + }, + { + "marker_id": 215, + "observed_center_px": [ + 566.5, + 693.0 + ], + "projected_center_px": [ + 568.2459106445312, + 692.080322265625 + ], + "reprojection_error_px": 1.9733248880487617, + "confidence": 0.6152661587526339 + }, + { + "marker_id": 58, + "observed_center_px": [ + 880.5, + 772.75 + ], + "projected_center_px": [ + 879.3278198242188, + 769.2518310546875 + ], + "reprojection_error_px": 3.689334944735071, + "confidence": 0.5876289194459208 + }, + { + "marker_id": 72, + "observed_center_px": [ + 115.5, + 788.0 + ], + "projected_center_px": [ + 114.51494598388672, + 788.7781982421875 + ], + "reprojection_error_px": 1.2553580838966305, + "confidence": 0.5322501871361803 + }, + { + "marker_id": 69, + "observed_center_px": [ + 977.0, + 755.0 + ], + "projected_center_px": [ + 978.3434448242188, + 750.7787475585938 + ], + "reprojection_error_px": 4.429877669845791, + "confidence": 0.5873934926369923 + }, + { + "marker_id": 53, + "observed_center_px": [ + 54.0, + 764.5 + ], + "projected_center_px": [ + 57.76123046875, + 763.97119140625 + ], + "reprojection_error_px": 3.79822236946143, + "confidence": 0.32594286952973284 + }, + { + "marker_id": 103, + "observed_center_px": [ + 801.0, + 744.25 + ], + "projected_center_px": [ + 797.4358520507812, + 746.4951782226562 + ], + "reprojection_error_px": 4.212359891487205, + "confidence": 0.5606734879266068 + }, + { + "marker_id": 51, + "observed_center_px": [ + 725.0, + 703.75 + ], + "projected_center_px": [ + 724.1592407226562, + 705.2492065429688 + ], + "reprojection_error_px": 1.7188648640657866, + "confidence": 0.5872237273710109 + }, + { + "marker_id": 56, + "observed_center_px": [ + 97.75, + 709.75 + ], + "projected_center_px": [ + 94.510986328125, + 713.8988647460938 + ], + "reprojection_error_px": 5.263486320678788, + "confidence": 0.46950770604173 + }, + { + "marker_id": 46, + "observed_center_px": [ + 51.5, + 694.75 + ], + "projected_center_px": [ + 45.80540466308594, + 695.206298828125 + ], + "reprojection_error_px": 5.712847334889287, + "confidence": 0.2902883953953809 + }, + { + "marker_id": 68, + "observed_center_px": [ + 28.25, + 652.0 + ], + "projected_center_px": [ + 32.07790756225586, + 650.2508544921875 + ], + "reprojection_error_px": 4.20860859580411, + "confidence": 0.06745941479560678 + }, + { + "marker_id": 79, + "observed_center_px": [ + 581.75, + 593.0 + ], + "projected_center_px": [ + 580.7769775390625, + 592.564453125 + ], + "reprojection_error_px": 1.0660552470726525, + "confidence": 0.48014488393995497 + }, + { + "marker_id": 55, + "observed_center_px": [ + 699.0, + 531.5 + ], + "projected_center_px": [ + 701.2785034179688, + 531.0349731445312 + ], + "reprojection_error_px": 2.3254736726100407, + "confidence": 0.5033557129355607 + }, + { + "marker_id": 66, + "observed_center_px": [ + 857.75, + 508.5 + ], + "projected_center_px": [ + 857.27294921875, + 509.6018981933594 + ], + "reprojection_error_px": 1.200731891980841, + "confidence": 0.4791716529202595 + }, + { + "marker_id": 47, + "observed_center_px": [ + 671.0, + 462.5 + ], + "projected_center_px": [ + 669.33203125, + 463.6061096191406 + ], + "reprojection_error_px": 2.001399070783231, + "confidence": 0.47486054263026106 + }, + { + "marker_id": 217, + "observed_center_px": [ + 229.5, + 365.5 + ], + "projected_center_px": [ + 227.5244140625, + 361.9618225097656 + ], + "reprojection_error_px": 4.052362243044047, + "confidence": 0.4046375469124394 + }, + { + "marker_id": 97, + "observed_center_px": [ + 765.75, + 436.5 + ], + "projected_center_px": [ + 768.8408203125, + 437.7091064453125 + ], + "reprojection_error_px": 3.318901715968526, + "confidence": 0.4509112286273005 + }, + { + "marker_id": 54, + "observed_center_px": [ + 709.25, + 434.25 + ], + "projected_center_px": [ + 710.0586547851562, + 430.8271789550781 + ], + "reprojection_error_px": 3.5170479762317965, + "confidence": 0.44042326304466006 + }, + { + "marker_id": 85, + "observed_center_px": [ + 555.0, + 319.75 + ], + "projected_center_px": [ + 556.587158203125, + 321.8631591796875 + ], + "reprojection_error_px": 2.642822899939481, + "confidence": 0.33473633767097827 + }, + { + "marker_id": 205, + "observed_center_px": [ + 148.25, + 284.75 + ], + "projected_center_px": [ + 149.84744262695312, + 286.7835693359375 + ], + "reprojection_error_px": 2.5859673606741804, + "confidence": 0.3904275743165678 + }, + { + "marker_id": 92, + "observed_center_px": [ + 328.75, + 309.5 + ], + "projected_center_px": [ + 328.0833435058594, + 312.3528137207031 + ], + "reprojection_error_px": 2.929671825684897, + "confidence": 0.38026711457279644 + }, + { + "marker_id": 105, + "observed_center_px": [ + 502.25, + 341.25 + ], + "projected_center_px": [ + 498.5203857421875, + 341.1575622558594 + ], + "reprojection_error_px": 3.730759607455309, + "confidence": 0.3931208602008742 + }, + { + "marker_id": 102, + "observed_center_px": [ + 359.0, + 279.5 + ], + "projected_center_px": [ + 359.4945373535156, + 281.3692626953125 + ], + "reprojection_error_px": 1.9335744666573331, + "confidence": 0.3834923705135548 + }, + { + "marker_id": 59, + "observed_center_px": [ + 425.5, + 258.75 + ], + "projected_center_px": [ + 428.2454833984375, + 258.3636779785156 + ], + "reprojection_error_px": 2.7725302154132963, + "confidence": 0.3475062428717297 + }, + { + "marker_id": 57, + "observed_center_px": [ + 521.0, + 213.25 + ], + "projected_center_px": [ + 521.8204956054688, + 214.8630828857422 + ], + "reprojection_error_px": 1.8097650220036505, + "confidence": 0.3370835485575886 + }, + { + "marker_id": 48, + "observed_center_px": [ + 415.25, + 187.5 + ], + "projected_center_px": [ + 416.5931396484375, + 185.31541442871094 + ], + "reprojection_error_px": 2.564456713124472, + "confidence": 0.3157717646545193 + }, + { + "marker_id": 63, + "observed_center_px": [ + 275.75, + 183.25 + ], + "projected_center_px": [ + 273.6121826171875, + 182.2046661376953 + ], + "reprojection_error_px": 2.379702932287163, + "confidence": 0.32781322776968225 + }, + { + "marker_id": 65, + "observed_center_px": [ + 310.75, + 124.25 + ], + "projected_center_px": [ + 308.9479675292969, + 123.33204650878906 + ], + "reprojection_error_px": 2.022364862603867, + "confidence": 0.323424516536529 + }, + { + "marker_id": 71, + "observed_center_px": [ + 337.25, + 166.0 + ], + "projected_center_px": [ + 337.3795471191406, + 168.51844787597656 + ], + "reprojection_error_px": 2.52177757942458, + "confidence": 0.2963584890699928 + }, + { + "marker_id": 87, + "observed_center_px": [ + 161.5, + 66.0 + ], + "projected_center_px": [ + 160.9746551513672, + 64.77437591552734 + ], + "reprojection_error_px": 1.33346976209604, + "confidence": 0.27798930354872264 + }, + { + "marker_id": 80, + "observed_center_px": [ + 299.25, + 56.5 + ], + "projected_center_px": [ + 298.39697265625, + 58.612037658691406 + ], + "reprojection_error_px": 2.277796900716975, + "confidence": 0.24658567276025462 + }, + { + "marker_id": 78, + "observed_center_px": [ + 333.75, + 82.5 + ], + "projected_center_px": [ + 335.54010009765625, + 79.4444351196289 + ], + "reprojection_error_px": 3.5413182711789872, + "confidence": 0.29355437233363646 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/robot_state.eval.json b/data/camera_study/Scene10/k3_bdg/robot_state.eval.json new file mode 100644 index 0000000..a69528e --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 120.53724780263954, + "gt": 120.0, + "error": 0.5372478026395413, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 59.96819205257466, + "gt": 60.0, + "error": 0.031807947425335215, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.9127526700837, + "gt": -110.0, + "error": 0.0872473299162948, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "a", + "estimate": 20.06121661895802, + "gt": 20.0, + "error": 0.06121661895801367, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "b", + "estimate": 0.0, + "gt": 30.0, + "error": 30.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "c", + "estimate": 0.0, + "gt": 180.0, + "error": 180.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "e", + "estimate": 0.0, + "gt": 4.0, + "error": 4.0, + "unit": "mm", + "observable": false, + "n_markers": 0 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.060090632099881226, + "max_abs_deg": 0.0872473299162948, + "mean_abs_mm": 0.5372478026395413, + "max_abs_mm": 0.5372478026395413 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_bdg/robot_state.json b/data/camera_study/Scene10/k3_bdg/robot_state.json new file mode 100644 index 0000000..1548c04 --- /dev/null +++ b/data/camera_study/Scene10/k3_bdg/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:06Z", + "method": "hybrid", + "movements": { + "x": { + "value": 120.53724780263954, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 59.96819205257466, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.9127526700837, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "a": { + "value": 20.06121661895802, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "b": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "c": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "e": { + "value": 0.0, + "unit": "mm", + "observable": false, + "confidence": "none", + "n_markers": 0 + } + }, + "residual_rms": 1.7292867925662687, + "num_markers": 24 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/aruco_marker_poses.json b/data/camera_study/Scene10/k3_beg/aruco_marker_poses.json new file mode 100644 index 0000000..d82b8dd --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/aruco_marker_poses.json @@ -0,0 +1,1056 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:18:52Z", + "summary": { + "num_cameras": 3, + "num_markers": 23 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.3437577637113646, + -0.28838525752123456, + -0.027508709721255294 + ], + "position_mm": [ + 343.7577637113646, + -288.38525752123456, + -27.508709721255293 + ], + "normal": [ + 0.02290139577590852, + -0.00474600713390405, + 0.9997264633327458 + ], + "corners_m": [ + [ + 0.33178886903351323, + -0.29979220964636605, + -0.027350709629939154 + ], + [ + 0.33241569742607135, + -0.27685310661369833, + -0.02713248865104889 + ], + [ + 0.3557952405334664, + -0.27694375859998144, + -0.027791613491446248 + ], + [ + 0.35503124785240725, + -0.2999519552248923, + -0.027760027112586873 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.151285517508793 + }, + { + "marker_id": 48, + "link": "Board", + "position_m": [ + 0.6871947960317375, + -0.31830325546674715, + -0.0273252660629332 + ], + "position_mm": [ + 687.1947960317375, + -318.30325546674715, + -27.325266062933203 + ], + "normal": [ + 0.0175680862909672, + 0.022045683267781332, + 0.9996025961317476 + ], + "corners_m": [ + [ + 0.6754758319591488, + -0.33029745292430457, + -0.026807680495840758 + ], + [ + 0.6759935179428941, + -0.3064593138474955, + -0.02743904568359012 + ], + [ + 0.6983779602140827, + -0.306972533383419, + -0.027719433353828517 + ], + [ + 0.6989318740108247, + -0.32948372171176954, + -0.027334904718473406 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.06038909847641 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16791509828576257, + -0.17356612585643777, + -0.027389647328830386 + ], + "position_mm": [ + 167.91509828576255, + -173.56612585643776, + -27.389647328830385 + ], + "normal": [ + -0.014525107175956765, + -0.003574152644957307, + 0.9998881170883058 + ], + "corners_m": [ + [ + 0.15582664248498654, + -0.18455681701293383, + -0.02767348462735602 + ], + [ + 0.1566254224467779, + -0.16166444121973297, + -0.027441491532093725 + ], + [ + 0.17990200993508204, + -0.16219139909354996, + -0.027242251440187038 + ], + [ + 0.1793063182762038, + -0.18585184609953426, + -0.02720136171568477 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.344741926612517 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.4882003560338498, + 0.21454919235920805, + -0.026922011646615267 + ], + "position_mm": [ + 488.2003560338498, + 214.54919235920806, + -26.922011646615267 + ], + "normal": [ + -0.029659504505452988, + -0.017595028497744532, + 0.9994051874813612 + ], + "corners_m": [ + [ + 0.4767699379764077, + 0.20330095680321536, + -0.027672222780932863 + ], + [ + 0.47706098604732483, + 0.22627406811344827, + -0.026831355258605454 + ], + [ + 0.4995452085482018, + 0.22579164311548014, + -0.02660250535209066 + ], + [ + 0.499425291563465, + 0.20283010140468835, + -0.026581963194832095 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.782305498437523 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3398014869433083, + -0.3281882562234325, + -0.02732289847621484 + ], + "position_mm": [ + 339.8014869433083, + -328.1882562234325, + -27.32289847621484 + ], + "normal": [ + 0.029687440469347803, + 0.03423897997795744, + 0.998972646336449 + ], + "corners_m": [ + [ + 0.32792505218477247, + -0.339676029361475, + -0.026498316047462524 + ], + [ + 0.3285562368013931, + -0.31673929942986834, + -0.02745901243175828 + ], + [ + 0.35168547315792564, + -0.31663475840022887, + -0.027994565082298053 + ], + [ + 0.35103918562914216, + -0.3397029377021578, + -0.0273397003433405 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.07929151313496 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.28445732745582347, + -0.26106235286605983, + -0.027127443792702346 + ], + "position_mm": [ + 284.4573274558235, + -261.0623528660598, + -27.127443792702344 + ], + "normal": [ + -0.01515388465873932, + 0.007020801424972412, + 0.99986052433682 + ], + "corners_m": [ + [ + 0.2724882022547233, + -0.2725441165389951, + -0.02740414690326164 + ], + [ + 0.27330457036437134, + -0.24930809929726835, + -0.027201889568481616 + ], + [ + 0.29634998972056853, + -0.2496963815903531, + -0.027205881996666865 + ], + [ + 0.2956865474836307, + -0.2727008140376229, + -0.026697856702399273 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.132287815360648 + }, + { + "marker_id": 57, + "link": "Board", + "position_m": [ + 0.6043014556076433, + -0.36522271977523946, + -0.027512117134979735 + ], + "position_mm": [ + 604.3014556076432, + -365.22271977523945, + -27.512117134979736 + ], + "normal": [ + 0.03495884584046278, + -0.005462497311808814, + 0.9993738240621581 + ], + "corners_m": [ + [ + 0.591968639923899, + -0.37591941696440434, + -0.02692398942041797 + ], + [ + 0.5940115776187654, + -0.35273718727345393, + -0.027299077808318407 + ], + [ + 0.6166315474518378, + -0.3547479630737979, + -0.02766687294690424 + ], + [ + 0.6145940574360705, + -0.3774863117893017, + -0.028158528364278318 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.88379257230473 + }, + { + "marker_id": 59, + "link": "Board", + "position_m": [ + 0.6271531267350818, + -0.2767460787695593, + -0.02680912156499644 + ], + "position_mm": [ + 627.1531267350819, + -276.7460787695593, + -26.809121564996442 + ], + "normal": [ + -0.017553027598460103, + -0.018829929153653342, + 0.9996686075846316 + ], + "corners_m": [ + [ + 0.6163665738281722, + -0.2884168282951614, + -0.02708587373036205 + ], + [ + 0.615419349019124, + -0.2658152874581792, + -0.026941169391599955 + ], + [ + 0.6379736103226642, + -0.2648156154961137, + -0.02626549888750094 + ], + [ + 0.6388529737703668, + -0.28793658382878307, + -0.026943944250522805 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.711990484789286 + }, + { + "marker_id": 63, + "link": "Board", + "position_m": [ + 0.7753197148635416, + -0.2362528568405718, + -0.02759305362330218 + ], + "position_mm": [ + 775.3197148635415, + -236.25285684057178, + -27.59305362330218 + ], + "normal": [ + 0.008475408855243238, + 0.022416341480833102, + 0.9997127962966921 + ], + "corners_m": [ + [ + 0.7643720804046347, + -0.24839323542519956, + -0.02710655933505356 + ], + [ + 0.7636751096275167, + -0.22513444993330092, + -0.027864973212857535 + ], + [ + 0.7862897533769408, + -0.2244049659291749, + -0.02782718592938572 + ], + [ + 0.7869419160450744, + -0.24707877607461187, + -0.027573496015911914 + ] + ], + "num_cameras": 3, + "edge_length_mm": 22.80138178550564 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.019136925157356512, + -0.18966352968628727, + -0.02633690535953152 + ], + "position_mm": [ + -19.13692515735651, + -189.66352968628726, + -26.33690535953152 + ], + "normal": [ + 0.0335473261019229, + 0.041382666254256344, + 0.9985800177477516 + ], + "corners_m": [ + [ + -0.030952879598025205, + -0.20108907376971233, + -0.02572743623952128 + ], + [ + -0.03065500587455008, + -0.17797561697314282, + -0.026173330855649875 + ], + [ + -0.0073381559244813585, + -0.17820500155163885, + -0.027467907019117655 + ], + [ + -0.007601659232369399, + -0.2013844264506551, + -0.025978947323837265 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.264174679646008 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.0058454909381415576, + -0.2779529691729145, + -0.026744981749715912 + ], + "position_mm": [ + 5.845490938141557, + -277.9529691729145, + -26.74498174971591 + ], + "normal": [ + 0.008348706528634037, + 0.00841253737090253, + 0.9999297616904309 + ], + "corners_m": [ + [ + -0.0059699188531544675, + -0.28957114009973217, + -0.026540419042121156 + ], + [ + -0.005508067389890795, + -0.26610984892756606, + -0.02675808413668042 + ], + [ + 0.017531975404024958, + -0.26630848619103503, + -0.02693228068755591 + ], + [ + 0.017327974591586536, + -0.2898224014733248, + -0.026749143132506162 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.33102505299792 + }, + { + "marker_id": 71, + "link": "Board", + "position_m": [ + 0.7509111191421864, + -0.2855038724522174, + -0.026645208288605504 + ], + "position_mm": [ + 750.9111191421864, + -285.5038724522174, + -26.645208288605502 + ], + "normal": [ + -0.041777888769783986, + -0.024469560501440446, + 0.9988272366224331 + ], + "corners_m": [ + [ + 0.7391127988200036, + -0.29637083291585326, + -0.027120191741793056 + ], + [ + 0.740890300929251, + -0.2730886316287105, + -0.027058084553021295 + ], + [ + 0.762190290099723, + -0.2746721988504304, + -0.0256087849700469 + ], + [ + 0.7614510867197684, + -0.29788382641387556, + -0.026793771889560763 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.60084523822078 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.4414133198826211, + 0.1935115960456138, + -0.02738745789971034 + ], + "position_mm": [ + 441.4133198826211, + 193.5115960456138, + -27.38745789971034 + ], + "normal": [ + 0.02298579013478705, + 0.036855436629363525, + 0.9990562197607994 + ], + "corners_m": [ + [ + 0.4301134974182766, + 0.181338076255318, + -0.02689044864326103 + ], + [ + 0.4298312782010313, + 0.2048251085816973, + -0.027324806173678603 + ], + [ + 0.4526236030052486, + 0.20567530528523256, + -0.0283074767187113 + ], + [ + 0.45308490090592785, + 0.18220789406020726, + -0.027027100063190434 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.20429774164863 + }, + { + "marker_id": 85, + "link": "Board", + "position_m": [ + 0.5067727893206623, + -0.31348907655683783, + -0.027707681605646822 + ], + "position_mm": [ + 506.7727893206623, + -313.48907655683786, + -27.707681605646822 + ], + "normal": [ + -0.032945795040505654, + 0.05215154093488273, + 0.9980955822802074 + ], + "corners_m": [ + [ + 0.49421550049692786, + -0.3253465551636556, + -0.02711418319382728 + ], + [ + 0.49696840583839097, + -0.3000632428500328, + -0.029147219073527336 + ], + [ + 0.5185232235795795, + -0.3026497389850415, + -0.02743328595044878 + ], + [ + 0.5173840273677507, + -0.3258967692286214, + -0.0271360382047839 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.435690938999276 + }, + { + "marker_id": 92, + "link": "Board", + "position_m": [ + 0.6466525463525512, + -0.18705950518033754, + -0.027251640596468882 + ], + "position_mm": [ + 646.6525463525512, + -187.05950518033754, + -27.25164059646888 + ], + "normal": [ + 0.03825629107142391, + 0.02106249247983472, + 0.9990459587046011 + ], + "corners_m": [ + [ + 0.6348169438992656, + -0.19908819490408183, + -0.026701161792317577 + ], + [ + 0.6351422984165451, + -0.17561611521746853, + -0.026896089255574587 + ], + [ + 0.6584931113326336, + -0.17533126963333032, + -0.02811237794189459 + ], + [ + 0.6581578317617608, + -0.1982024409664695, + -0.02729693339608876 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.278197887009746 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6513322273518023, + -0.22364573124221426, + -0.027554712590064274 + ], + "position_mm": [ + 651.3322273518023, + -223.64573124221425, + -27.554712590064273 + ], + "normal": [ + -0.020202469001299475, + -0.005636061944980009, + 0.9997800233311345 + ], + "corners_m": [ + [ + 0.6392066135804306, + -0.23425197374575382, + -0.027716405176585027 + ], + [ + 0.6406210786542871, + -0.21157683326967408, + -0.027849097932630906 + ], + [ + 0.6632326844017368, + -0.21286552352956026, + -0.027109510468121063 + ], + [ + 0.6622685327707547, + -0.23588859442386886, + -0.027543836782920106 + ] + ], + "num_cameras": 3, + "edge_length_mm": 22.886969774988426 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10477363949111898, + -0.1910372455785906, + -0.027307605795290874 + ], + "position_mm": [ + 104.77363949111898, + -191.03724557859059, + -27.307605795290872 + ], + "normal": [ + 0.054814554434349794, + 0.004626774312451287, + 0.9984858324391115 + ], + "corners_m": [ + [ + 0.09345250908720633, + -0.2032330420269969, + -0.026484068087727748 + ], + [ + 0.09246574395614647, + -0.18009791867657293, + -0.026826406559339308 + ], + [ + 0.11625714658489948, + -0.17898891285346402, + -0.027848087500708208 + ], + [ + 0.1169191583362236, + -0.20182910875732857, + -0.028071861033388223 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.352719666651772 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.31027630056211364, + -0.15464396959098062, + 0.15627239362758816 + ], + "position_mm": [ + 310.27630056211365, + -154.64396959098062, + 156.27239362758814 + ], + "normal": [ + -0.34791121009874243, + -0.7211867355544955, + 0.5990387986999497 + ], + "corners_m": [ + [ + 0.2988562590646241, + -0.14376738638878114, + 0.16250897660487118 + ], + [ + 0.321117704646636, + -0.14997105878746853, + 0.1684164504858125 + ], + [ + 0.3219693892757836, + -0.16549761596307191, + 0.14977841286039933 + ], + [ + 0.2991618492614108, + -0.15933981722460086, + 0.14438573455926967 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.06354248237861 + }, + { + "marker_id": 205, + "link": "Board", + "position_m": [ + 0.7523866981099311, + -0.090266534421375, + 0.0005166891777635844 + ], + "position_mm": [ + 752.3866981099311, + -90.266534421375, + 0.5166891777635845 + ], + "normal": [ + -0.04342385360375668, + -0.038606341462984466, + 0.9983105325183357 + ], + "corners_m": [ + [ + 0.7409380072354944, + -0.07871761057079167, + 0.00023159890688253374 + ], + [ + 0.7634346575714828, + -0.07879370503656513, + 0.0016733728383624752 + ], + [ + 0.7641046726529462, + -0.10186220687786679, + 0.00035053988795575794 + ], + [ + 0.7410694549798009, + -0.10169261520027639, + -0.0001887549221464292 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.92010559101538 + }, + { + "marker_id": 215, + "link": "Board", + "position_m": [ + 0.25050212322468346, + -0.08867039437519665, + 1.8410056185108915e-05 + ], + "position_mm": [ + 250.50212322468346, + -88.67039437519665, + 0.018410056185108915 + ], + "normal": [ + 0.0065759612378247095, + -0.0030190545894855925, + 0.9999738206789138 + ], + "corners_m": [ + [ + 0.23918328153011878, + -0.0764679161283234, + 0.0001202431620144573 + ], + [ + 0.26269855317308277, + -0.0774118587850395, + -1.838444746108705e-05 + ], + [ + 0.26197534814958345, + -0.10090703355156008, + -0.00010328013146210398 + ], + [ + 0.2381513100459489, + -0.09989476903586364, + 7.506164164916939e-05 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.584222355612194 + }, + { + "marker_id": 218, + "link": "Arm2", + "position_m": [ + 0.35354182984010896, + -0.10079490299703298, + 0.20137136198281774 + ], + "position_mm": [ + 353.54182984010896, + -100.79490299703298, + 201.37136198281775 + ], + "normal": [ + 0.9455973911499024, + -0.2585165234458553, + 0.1975215961761328 + ], + "corners_m": [ + [ + 0.34922302144953066, + -0.10240620339581082, + 0.2190573592216429 + ], + [ + 0.3574234930607765, + -0.0850627057141222, + 0.20431160374119703 + ], + [ + 0.357559537002442, + -0.09857368301995145, + 0.18412287835732472 + ], + [ + 0.3499612678476868, + -0.11713701985824741, + 0.19799360661110635 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.647762644393513 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.2306485537965676, + -0.03616060424531038, + 0.3049665466654362 + ], + "position_mm": [ + 230.6485537965676, + -36.16060424531038, + 304.9665466654362 + ], + "normal": [ + -0.003842518565302538, + -0.485151413096234, + 0.8744217182926112 + ], + "corners_m": [ + [ + 0.21912895166440735, + -0.025809300219286853, + 0.31080686265701163 + ], + [ + 0.24283139033292567, + -0.02584135480514617, + 0.31059890570170895 + ], + [ + 0.24209384311059443, + -0.046721266231549353, + 0.2993049582213565 + ], + [ + 0.2185400300783429, + -0.04627049572525915, + 0.29915546008166766 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.641371173369333 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.2821913730868761, + -0.04056758651659151, + 0.30138406954227526 + ], + "position_mm": [ + 282.19137308687607, + -40.56758651659151, + 301.38406954227526 + ], + "normal": [ + -0.0058715883555606075, + -0.7714408240992044, + 0.6362739813659861 + ], + "corners_m": [ + [ + 0.2697759584893256, + -0.03331303272707711, + 0.3100793391119179 + ], + [ + 0.29357298328714626, + -0.03249290311894181, + 0.31126516377335484 + ], + [ + 0.2945834344257424, + -0.04794605763646106, + 0.2925665090760388 + ], + [ + 0.27083311614529, + -0.048518352583886044, + 0.2916252662077897 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.957518018127814 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/aruco_positions_initial.json b/data/camera_study/Scene10/k3_beg/aruco_positions_initial.json new file mode 100644 index 0000000..52f4d38 --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/aruco_positions_initial.json @@ -0,0 +1,505 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:18:50Z", + "summary": { + "num_cameras": 3, + "num_markers": 23, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "position_m": [ + 0.34376654762038256, + -0.28839563095466614, + -0.02760537942584299 + ], + "position_mm": [ + 343.76654762038254, + -288.39563095466616, + -27.60537942584299 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6876697828806948, + -0.3186006114330489, + -0.02736316925778259 + ], + "position_mm": [ + 687.6697828806948, + -318.6006114330489, + -27.36316925778259 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16791244327108318, + -0.17356576866439072, + -0.02748782876628542 + ], + "position_mm": [ + 167.9124432710832, + -173.56576866439073, + -27.487828766285418 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4882162799182303, + 0.2145787188045998, + -0.027009952548570484 + ], + "position_mm": [ + 488.2162799182303, + 214.57871880459982, + -27.009952548570485 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.34022600137938147, + -0.3287144924988329, + -0.027671883787346047 + ], + "position_mm": [ + 340.22600137938144, + -328.7144924988329, + -27.671883787346047 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2844629212143551, + -0.2610707104386771, + -0.027225119001680127 + ], + "position_mm": [ + 284.4629212143551, + -261.07071043867705, + -27.225119001680127 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 57, + "position_m": [ + 0.6043205419720532, + -0.3652268610664635, + -0.02758261014495349 + ], + "position_mm": [ + 604.3205419720532, + -365.2268610664635, + -27.58261014495349 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 59, + "position_m": [ + 0.6271865903718744, + -0.27675395886676263, + -0.026907347912707404 + ], + "position_mm": [ + 627.1865903718744, + -276.7539588667626, + -26.907347912707404 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7759056113265437, + -0.23645070279275476, + -0.027438199281543736 + ], + "position_mm": [ + 775.9056113265436, + -236.45070279275475, + -27.438199281543735 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.019161061515149687, + -0.18966800813053222, + -0.02643246570556346 + ], + "position_mm": [ + -19.161061515149687, + -189.66800813053223, + -26.43246570556346 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.0058255026810429935, + -0.27796402910182255, + -0.0268471839268234 + ], + "position_mm": [ + 5.825502681042994, + -277.9640291018226, + -26.847183926823398 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 71, + "position_m": [ + 0.7509604864944157, + -0.28551125075942685, + -0.02674480689368867 + ], + "position_mm": [ + 750.9604864944157, + -285.51125075942684, + -26.744806893688672 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.441421275570027, + 0.19353518392648628, + -0.027474752620069133 + ], + "position_mm": [ + 441.42127557002703, + 193.53518392648627, + -27.474752620069133 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5068041661114264, + -0.3135045828070479, + -0.02781607148385666 + ], + "position_mm": [ + 506.8041661114264, + -313.5045828070479, + -27.81607148385666 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 92, + "position_m": [ + 0.6466795964899504, + -0.187063834404983, + -0.027344911707301592 + ], + "position_mm": [ + 646.6795964899504, + -187.063834404983, + -27.34491170730159 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6517521811062535, + -0.22377333946988334, + -0.027512336599126174 + ], + "position_mm": [ + 651.7521811062536, + -223.77333946988335, + -27.512336599126176 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10475760712391176, + -0.1910399868695238, + -0.027401995726118854 + ], + "position_mm": [ + 104.75760712391175, + -191.0399868695238, + -27.401995726118855 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3103047978697998, + -0.15460664642080307, + 0.1562436623490925 + ], + "position_mm": [ + 310.3047978697998, + -154.60664642080306, + 156.24366234909252 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7524289457637402, + -0.09025863172893372, + 0.0004226980684333642 + ], + "position_mm": [ + 752.4289457637402, + -90.25863172893372, + 0.4226980684333642 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25050098796217085, + -0.08866387046146879, + -7.820550617432224e-05 + ], + "position_mm": [ + 250.50098796217085, + -88.66387046146879, + -0.07820550617432225 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3535050189182776, + -0.10080076085835513, + 0.20138373933533232 + ], + "position_mm": [ + 353.50501891827764, + -100.80076085835513, + 201.38373933533234 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.2306461434605388, + -0.03611686991626039, + 0.30489678148669036 + ], + "position_mm": [ + 230.6461434605388, + -36.11686991626039, + 304.8967814866904 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.28219108489806893, + -0.040522619575214074, + 0.30137183965745123 + ], + "position_mm": [ + 282.19108489806894, + -40.52261957521407, + 301.37183965745123 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/aruco_positions_optimized.json b/data/camera_study/Scene10/k3_beg/aruco_positions_optimized.json new file mode 100644 index 0000000..27b6cb3 --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/aruco_positions_optimized.json @@ -0,0 +1,504 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:18:51Z", + "summary": { + "num_cameras": 3, + "num_markers": 23, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 47, + "position_m": [ + 0.34429663383110787, + -0.28601715524683163, + -0.03057390242243092 + ], + "position_mm": [ + 344.29663383110784, + -286.01715524683163, + -30.57390242243092 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6879353584330493, + -0.31898969103039365, + -0.027252823573099827 + ], + "position_mm": [ + 687.9353584330493, + -318.98969103039366, + -27.25282357309983 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16714781290978736, + -0.173812612354164, + -0.027124785497989832 + ], + "position_mm": [ + 167.14781290978738, + -173.812612354164, + -27.124785497989834 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.48697224655671595, + 0.21379586950391036, + -0.025613930894239443 + ], + "position_mm": [ + 486.97224655671596, + 213.79586950391035, + -25.61393089423944 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3399593914365076, + -0.3297372533559976, + -0.026834811643165445 + ], + "position_mm": [ + 339.9593914365076, + -329.73725335599755, + -26.834811643165445 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2842971189505731, + -0.261036695743506, + -0.027171537824862015 + ], + "position_mm": [ + 284.29711895057306, + -261.036695743506, + -27.171537824862014 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 57, + "position_m": [ + 0.6029435209764987, + -0.36384508242975544, + -0.028431587721122135 + ], + "position_mm": [ + 602.9435209764987, + -363.84508242975545, + -28.431587721122135 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 59, + "position_m": [ + 0.6247336602639617, + -0.2782545847421155, + -0.023873188276680328 + ], + "position_mm": [ + 624.7336602639617, + -278.2545847421155, + -23.873188276680327 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7755922845975175, + -0.23603560309416416, + -0.027680941610887716 + ], + "position_mm": [ + 775.5922845975175, + -236.03560309416417, + -27.680941610887714 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01916952693909354, + -0.18967197229129557, + -0.026432602499291045 + ], + "position_mm": [ + -19.169526939093537, + -189.67197229129556, + -26.432602499291047 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005783058721882763, + -0.27798325916840505, + -0.02684481356873153 + ], + "position_mm": [ + 5.783058721882764, + -277.983259168405, + -26.844813568731528 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 71, + "position_m": [ + 0.7507716494063181, + -0.28541401729759996, + -0.026780278051963542 + ], + "position_mm": [ + 750.7716494063181, + -285.41401729759997, + -26.780278051963542 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.44250773252261993, + 0.19423558362951282, + -0.028760050520245814 + ], + "position_mm": [ + 442.50773252261996, + 194.23558362951283, + -28.760050520245812 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5066743379018885, + -0.31355745588653605, + -0.027863065171753038 + ], + "position_mm": [ + 506.6743379018885, + -313.55745588653605, + -27.86306517175304 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 92, + "position_m": [ + 0.64683153971071, + -0.18614320516443086, + -0.02808490146659395 + ], + "position_mm": [ + 646.83153971071, + -186.14320516443087, + -28.08490146659395 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6517759154070488, + -0.22425232237172354, + -0.02731510787337696 + ], + "position_mm": [ + 651.7759154070488, + -224.25232237172355, + -27.31510787337696 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10543235844086125, + -0.1908547756095127, + -0.02760954947177271 + ], + "position_mm": [ + 105.43235844086125, + -190.8547756095127, + -27.60954947177271 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3103649071013554, + -0.1545821085163364, + 0.1562615936420593 + ], + "position_mm": [ + 310.3649071013554, + -154.58210851633638, + 156.2615936420593 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7524334187894672, + -0.09025695811091856, + 0.00042612255492955866 + ], + "position_mm": [ + 752.4334187894673, + -90.25695811091856, + 0.42612255492955864 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.2505007693008273, + -0.08866396246645535, + -7.826952245481893e-05 + ], + "position_mm": [ + 250.50076930082733, + -88.66396246645535, + -0.07826952245481893 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.35353963153656087, + -0.10075500100502381, + 0.201422479238611 + ], + "position_mm": [ + 353.5396315365609, + -100.75500100502381, + 201.422479238611 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23074537748544427, + -0.03607661531808609, + 0.3049272430322251 + ], + "position_mm": [ + 230.74537748544427, + -36.07661531808609, + 304.92724303222514 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.28239365558271046, + -0.04044322176805608, + 0.30144382436999856 + ], + "position_mm": [ + 282.39365558271044, + -40.44322176805608, + 301.44382436999854 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/render_b_aruco_detection.json b/data/camera_study/Scene10/k3_beg/render_b_aruco_detection.json new file mode 100644 index 0000000..b1a2dbb --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:48Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "22862da9-1657-4a59-b257-f930c6718983", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "42c9617a-93de-40a5-83ef-4a5139be0e27", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "79535f5e-ab8e-4c9f-a9fa-f8603d0c2577", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "12b894e6-354b-4f59-b637-4783e035acfd", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "7172d97a-baa6-4dbb-955e-3492160740b2", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "0280abf6-f4c6-4de4-813f-abe4d39727f0", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "bf9b6871-6c17-4558-b3f5-129c785e6cd6", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "8b90f633-0e6e-4346-a287-de05c8d610ed", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "43134c15-a0c3-4fb4-a5e3-7f7ea013ade1", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "e149f9df-c57a-4a87-99bc-fe6d4ee80473", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "cf7b1384-d989-453d-8104-166e5e8e303d", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "32dc6f5a-4bc7-4ecf-a8a6-e66c3ec4f047", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "baf4c621-6e32-4f7c-a5d6-40a3004d08b4", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "491a7044-d381-45b5-9c56-050c0c549bfa", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "290557ff-b427-4a4a-b35b-33fae920c28d", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "34fd96e4-1d47-4607-b964-194524ca456a", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "aef1a20c-e995-4a68-9d87-7d8061828f3d", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "fde39689-42aa-4d9e-9ed6-5eee66b2ef17", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "68f761d4-e0ca-4fd0-a110-3a093b58d94a", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "87183b4d-7c76-455d-af2a-4fbe94d871c4", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "e63243df-ac2d-45a5-9841-9950e78d4347", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "5c4ee48d-cb8a-4e6d-97bd-391ac986a41e", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "24371e3f-fbb3-49e4-8b76-dd72bd1d19e7", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "5959737d-8974-4e3f-8373-1ec046333446", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "87e46b6f-4417-487a-b510-9509b134bfd7", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "d13a022b-84c2-41c9-a21d-d8dd3aa467f1", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "08e7bc8f-3548-496c-95a5-94733d0d42e7", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "6f689422-da0c-4a30-9e80-752fefcf0234", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "0c164539-2200-4965-ba89-f1ff18208429", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "02827f6c-7221-40fa-8479-82405b633160", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "3c4394a4-95c3-47ca-93c3-6038196030bf", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "e025a589-8c92-49d1-b244-0fa34f3777fd", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "46f64536-cb18-4d70-8e18-48e96c54b722", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "8309ddb1-77de-4f03-afbd-069b976a31cc", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "2955c298-20c8-4966-8cd1-9a4c94829fcd", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "a725dcfc-02c0-4f50-9501-5230926015cc", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/render_b_camera_pose.json b/data/camera_study/Scene10/k3_beg/render_b_camera_pose.json new file mode 100644 index 0000000..624a7a3 --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:49Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_beg\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/render_e_aruco_detection.json b/data/camera_study/Scene10/k3_beg/render_e_aruco_detection.json new file mode 100644 index 0000000..5b9ec31 --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/render_e_aruco_detection.json @@ -0,0 +1,1199 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:48Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "e", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.npz", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.png", + "image_sha256": "d9465055b192acfccc2cb79885882693d4f0d01141ecc06177116dded5d564cb", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 12, + "num_rejected_candidates": 20 + }, + "detections": [ + { + "observation_id": "3383f1fe-42dd-4f7b-82ec-a5051b6ee38e", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 986.0, + 1027.0 + ], + [ + 1024.0, + 1012.0 + ], + [ + 1062.0, + 1033.0 + ], + [ + 1026.0, + 1050.0 + ] + ], + "center_px": [ + 1024.5, + 1030.5 + ], + "quality": { + "area_px": 1438.0, + "perimeter_px": 170.22312927246094, + "sharpness": { + "laplacian_var": 453.1861132150195 + }, + "contrast": { + "p05": 14.0, + "p95": 153.0, + "dynamic_range": 139.0, + "mean_gray": 72.75522388059701, + "std_gray": 50.64349874612125 + }, + "geometry": { + "distance_to_center_norm": 0.6414783596992493, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1589726701270886, + "edge_lengths_px": [ + 40.853397369384766, + 43.416587829589844, + 39.81205749511719, + 46.14108657836914 + ] + }, + "confidence": 0.4963016081621025 + }, + { + "observation_id": "6d380b37-bc5c-44ef-af1a-aeffbd15b61c", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1277.0, + 1049.0 + ], + [ + 1308.0, + 1032.0 + ], + [ + 1355.0, + 1053.0 + ], + [ + 1324.0, + 1071.0 + ] + ], + "center_px": [ + 1316.0, + 1051.25 + ], + "quality": { + "area_px": 1489.0, + "perimeter_px": 174.5745086669922, + "sharpness": { + "laplacian_var": 412.816421944627 + }, + "contrast": { + "p05": 13.0, + "p95": 145.0, + "dynamic_range": 132.0, + "mean_gray": 61.47008547008547, + "std_gray": 49.57416295951042 + }, + "geometry": { + "distance_to_center_norm": 0.8724822998046875, + "distance_to_border_px": 9.0 + }, + "edge_ratio": 1.46778745364521, + "edge_lengths_px": [ + 35.35533905029297, + 51.4781494140625, + 35.84689712524414, + 51.89412307739258 + ] + }, + "confidence": 0.12173424671007582 + }, + { + "observation_id": "01926842-8c4a-4986-b06d-9ddd6e830c24", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 780.0, + 466.0 + ], + [ + 811.0, + 497.0 + ], + [ + 790.0, + 533.0 + ], + [ + 759.0, + 507.0 + ] + ], + "center_px": [ + 785.0, + 500.75 + ], + "quality": { + "area_px": 1792.0, + "perimeter_px": 172.04298400878906, + "sharpness": { + "laplacian_var": 431.52108687263 + }, + "contrast": { + "p05": 4.0, + "p95": 86.0, + "dynamic_range": 82.0, + "mean_gray": 35.97742474916388, + "std_gray": 31.48995686460428 + }, + "geometry": { + "distance_to_center_norm": 0.08436811715364456, + "distance_to_border_px": 466.0 + }, + "edge_ratio": 1.138540089676814, + "edge_lengths_px": [ + 43.84062194824219, + 41.67733383178711, + 40.45985794067383, + 46.06517028808594 + ] + }, + "confidence": 0.8783177764815114 + }, + { + "observation_id": "b792a114-cc65-48bb-a310-019088ebbecc", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 777.0, + 986.0 + ], + [ + 818.0, + 973.0 + ], + [ + 849.0, + 994.0 + ], + [ + 809.0, + 1009.0 + ] + ], + "center_px": [ + 813.25, + 990.5 + ], + "quality": { + "area_px": 1332.0, + "perimeter_px": 162.58305740356445, + "sharpness": { + "laplacian_var": 675.3602149959689 + }, + "contrast": { + "p05": 19.700000000000003, + "p95": 154.0, + "dynamic_range": 134.3, + "mean_gray": 93.49617486338798, + "std_gray": 46.101180438545676 + }, + "geometry": { + "distance_to_center_norm": 0.5111664533615112, + "distance_to_border_px": 71.0 + }, + "edge_ratio": 1.1487138651855313, + "edge_lengths_px": [ + 43.011627197265625, + 37.44329071044922, + 42.72002029418945, + 39.408119201660156 + ] + }, + "confidence": 0.7730384623298485 + }, + { + "observation_id": "c9b45ea9-c844-4356-99df-c75f5fca06af", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 749.0, + 642.0 + ], + [ + 771.0, + 676.0 + ], + [ + 734.0, + 695.0 + ], + [ + 713.0, + 662.0 + ] + ], + "center_px": [ + 741.75, + 668.75 + ], + "quality": { + "area_px": 1642.0, + "perimeter_px": 162.38792037963867, + "sharpness": { + "laplacian_var": 92.67615631030367 + }, + "contrast": { + "p05": 7.0, + "p95": 101.0, + "dynamic_range": 94.0, + "mean_gray": 53.06440071556351, + "std_gray": 38.78329965301281 + }, + "geometry": { + "distance_to_center_norm": 0.14508245885372162, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0633526883983422, + "edge_lengths_px": [ + 40.49691390991211, + 41.59326934814453, + 39.11521530151367, + 41.18252182006836 + ] + }, + "confidence": 0.7262889453443055 + }, + { + "observation_id": "573adb4c-30d3-48d0-a5ab-185a934f1ae2", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 865.0, + 314.0 + ], + [ + 896.0, + 337.0 + ], + [ + 879.0, + 373.0 + ], + [ + 847.0, + 352.0 + ] + ], + "center_px": [ + 871.75, + 344.0 + ], + "quality": { + "area_px": 1550.5, + "perimeter_px": 158.7354850769043, + "sharpness": { + "laplacian_var": 91.32963410546913 + }, + "contrast": { + "p05": 3.0, + "p95": 80.0, + "dynamic_range": 77.0, + "mean_gray": 29.31711880261927, + "std_gray": 30.16374856556423 + }, + "geometry": { + "distance_to_center_norm": 0.27542126178741455, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0985563073040754, + "edge_lengths_px": [ + 38.60051727294922, + 39.81205749511719, + 38.27531814575195, + 42.04759216308594 + ] + }, + "confidence": 0.6668204157436237 + }, + { + "observation_id": "04292845-264a-4f66-a53d-e875f987ec3b", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 934.0 + ], + [ + 1105.0, + 922.0 + ], + [ + 1141.0, + 939.0 + ], + [ + 1107.0, + 953.0 + ] + ], + "center_px": [ + 1106.0, + 937.0 + ], + "quality": { + "area_px": 1080.0, + "perimeter_px": 153.34338760375977, + "sharpness": { + "laplacian_var": 1315.6913698207666 + }, + "contrast": { + "p05": 34.0, + "p95": 156.0, + "dynamic_range": 122.0, + "mean_gray": 112.49931224209078, + "std_gray": 38.505501664035826 + }, + "geometry": { + "distance_to_center_norm": 0.6152436137199402, + "distance_to_border_px": 127.0 + }, + "edge_ratio": 1.128988685253164, + "edge_lengths_px": [ + 36.055511474609375, + 39.81205749511719, + 36.769554138183594, + 40.70626449584961 + ] + }, + "confidence": 0.6377388980107869 + }, + { + "observation_id": "d64b2042-cc75-4a44-9f70-24bd21c25274", + "type": "aruco", + "marker_id": 244, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 981.0, + 163.0 + ], + [ + 1000.0, + 190.0 + ], + [ + 982.0, + 224.0 + ], + [ + 962.0, + 201.0 + ] + ], + "center_px": [ + 981.25, + 194.5 + ], + "quality": { + "area_px": 1164.5, + "perimeter_px": 144.45070838928223, + "sharpness": { + "laplacian_var": 96.06874104557231 + }, + "contrast": { + "p05": 4.0, + "p95": 67.0, + "dynamic_range": 63.0, + "mean_gray": 33.3358024691358, + "std_gray": 25.95401112529325 + }, + "geometry": { + "distance_to_center_norm": 0.48128148913383484, + "distance_to_border_px": 163.0 + }, + "edge_ratio": 1.393897148047905, + "edge_lengths_px": [ + 33.0151481628418, + 38.470767974853516, + 30.479501724243164, + 42.48529052734375 + ] + }, + "confidence": 0.35113079528934743 + }, + { + "observation_id": "94edc122-3d16-4277-b6ba-4030f819df33", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 674.0, + 619.0 + ], + [ + 703.0, + 624.0 + ], + [ + 700.0, + 664.0 + ], + [ + 672.0, + 658.0 + ] + ], + "center_px": [ + 687.25, + 641.25 + ], + "quality": { + "area_px": 1139.5, + "perimeter_px": 137.22710990905762, + "sharpness": { + "laplacian_var": 863.1978615203191 + }, + "contrast": { + "p05": 32.0, + "p95": 169.0, + "dynamic_range": 137.0, + "mean_gray": 80.9662775616083, + "std_gray": 55.08560868618617 + }, + "geometry": { + "distance_to_center_norm": 0.11823874711990356, + "distance_to_border_px": 416.0 + }, + "edge_ratio": 1.4007837305049835, + "edge_lengths_px": [ + 29.42787742614746, + 40.112342834472656, + 28.635643005371094, + 39.051246643066406 + ] + }, + "confidence": 0.542315455357842 + }, + { + "observation_id": "eb4f15a5-b475-47f3-bb2a-f9865378e3bf", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 517.0, + 788.0 + ], + [ + 550.0, + 780.0 + ], + [ + 575.0, + 794.0 + ], + [ + 540.0, + 802.0 + ] + ], + "center_px": [ + 545.5, + 791.0 + ], + "quality": { + "area_px": 668.0, + "perimeter_px": 125.43741798400879, + "sharpness": { + "laplacian_var": 1607.3082682839233 + }, + "contrast": { + "p05": 19.0, + "p95": 147.0, + "dynamic_range": 128.0, + "mean_gray": 65.39445628997868, + "std_gray": 47.873144952539 + }, + "geometry": { + "distance_to_center_norm": 0.33966439962387085, + "distance_to_border_px": 278.0 + }, + "edge_ratio": 1.3333908058760269, + "edge_lengths_px": [ + 33.95585250854492, + 28.65309715270996, + 35.902645111083984, + 26.925823211669922 + ] + }, + "confidence": 0.33398560374859715 + }, + { + "observation_id": "baec1207-99ec-4f7f-a9ce-c8d912fd7c24", + "type": "aruco", + "marker_id": 114, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 846.0, + 444.0 + ], + [ + 854.0, + 462.0 + ], + [ + 835.0, + 496.0 + ], + [ + 827.0, + 477.0 + ] + ], + "center_px": [ + 840.5, + 469.75 + ], + "quality": { + "area_px": 619.5, + "perimeter_px": 117.34079360961914, + "sharpness": { + "laplacian_var": 515.9082048204126 + }, + "contrast": { + "p05": 13.0, + "p95": 77.0, + "dynamic_range": 64.0, + "mean_gray": 34.12249443207127, + "std_gray": 22.140483977294974 + }, + "geometry": { + "distance_to_center_norm": 0.15498033165931702, + "distance_to_border_px": 444.0 + }, + "edge_ratio": 1.977319866342296, + "edge_lengths_px": [ + 19.697715759277344, + 38.94868469238281, + 20.615528106689453, + 38.07886505126953 + ] + }, + "confidence": 0.16709486695806255 + }, + { + "observation_id": "17879d4e-9caa-4d3e-9784-a8800bbd444b", + "type": "aruco", + "marker_id": 120, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 904.0, + 345.0 + ], + [ + 911.0, + 366.0 + ], + [ + 893.0, + 397.0 + ], + [ + 885.0, + 381.0 + ] + ], + "center_px": [ + 898.25, + 372.25 + ], + "quality": { + "area_px": 593.5, + "perimeter_px": 116.57765007019043, + "sharpness": { + "laplacian_var": 612.2280321521758 + }, + "contrast": { + "p05": 13.75, + "p95": 72.0, + "dynamic_range": 58.25, + "mean_gray": 30.091743119266056, + "std_gray": 19.626461861945877 + }, + "geometry": { + "distance_to_center_norm": 0.27196842432022095, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 2.2755493296600644, + "edge_lengths_px": [ + 22.135944366455078, + 35.84689712524414, + 17.8885440826416, + 40.70626449584961 + ] + }, + "confidence": 0.12660450288269692 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 955.0, + 949.0 + ], + [ + 989.0, + 936.0 + ], + [ + 1024.0, + 953.0 + ], + [ + 991.0, + 967.0 + ] + ], + "center_px": [ + 989.75, + 951.25 + ], + "area_px": 1065.5 + }, + { + "image_points_px": [ + [ + 727.0, + 881.0 + ], + [ + 763.0, + 870.0 + ], + [ + 792.0, + 891.0 + ], + [ + 756.0, + 904.0 + ] + ], + "center_px": [ + 759.5, + 886.5 + ], + "area_px": 1140.0 + }, + { + "image_points_px": [ + [ + 818.0, + 869.0 + ], + [ + 850.0, + 858.0 + ], + [ + 887.0, + 875.0 + ], + [ + 849.0, + 885.0 + ] + ], + "center_px": [ + 851.0, + 871.75 + ], + "area_px": 934.5 + }, + { + "image_points_px": [ + [ + 1115.0, + 909.0 + ], + [ + 1146.0, + 897.0 + ], + [ + 1182.0, + 914.0 + ], + [ + 1154.0, + 927.0 + ] + ], + "center_px": [ + 1149.25, + 911.75 + ], + "area_px": 985.0 + }, + { + "image_points_px": [ + [ + 1244.0, + 805.0 + ], + [ + 1274.0, + 794.0 + ], + [ + 1312.0, + 812.0 + ], + [ + 1282.0, + 821.0 + ] + ], + "center_px": [ + 1278.0, + 808.0 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 891.0, + 399.0 + ], + [ + 918.0, + 457.0 + ], + [ + 898.0, + 447.0 + ], + [ + 884.0, + 415.0 + ] + ], + "center_px": [ + 897.75, + 429.5 + ], + "area_px": 669.0 + }, + { + "image_points_px": [ + [ + 495.0, + 791.0 + ], + [ + 459.0, + 801.0 + ], + [ + 438.0, + 784.0 + ], + [ + 473.0, + 774.0 + ] + ], + "center_px": [ + 466.25, + 787.5 + ], + "area_px": 818.5 + }, + { + "image_points_px": [ + [ + 888.0, + 139.0 + ], + [ + 871.0, + 170.0 + ], + [ + 844.0, + 169.0 + ], + [ + 861.0, + 139.0 + ] + ], + "center_px": [ + 866.0, + 154.25 + ], + "area_px": 832.0 + }, + { + "image_points_px": [ + [ + 635.0, + 778.0 + ], + [ + 606.0, + 791.0 + ], + [ + 580.0, + 773.0 + ], + [ + 612.0, + 764.0 + ] + ], + "center_px": [ + 608.25, + 776.5 + ], + "area_px": 757.5 + }, + { + "image_points_px": [ + [ + 754.0, + 745.0 + ], + [ + 784.0, + 735.0 + ], + [ + 806.0, + 749.0 + ], + [ + 780.0, + 762.0 + ] + ], + "center_px": [ + 781.0, + 747.75 + ], + "area_px": 710.0 + }, + { + "image_points_px": [ + [ + 852.0, + 659.0 + ], + [ + 882.0, + 653.0 + ], + [ + 906.0, + 665.0 + ], + [ + 877.0, + 672.0 + ] + ], + "center_px": [ + 879.25, + 662.25 + ], + "area_px": 528.0 + }, + { + "image_points_px": [ + [ + 613.0, + 739.0 + ], + [ + 581.0, + 746.0 + ], + [ + 560.0, + 733.0 + ], + [ + 592.0, + 726.0 + ] + ], + "center_px": [ + 586.5, + 736.0 + ], + "area_px": 563.0 + }, + { + "image_points_px": [ + [ + 770.0, + 398.0 + ], + [ + 751.0, + 432.0 + ], + [ + 736.0, + 433.0 + ], + [ + 753.0, + 403.0 + ] + ], + "center_px": [ + 752.5, + 416.5 + ], + "area_px": 458.0 + }, + { + "image_points_px": [ + [ + 937.0, + 633.0 + ], + [ + 963.0, + 626.0 + ], + [ + 986.0, + 637.0 + ], + [ + 962.0, + 645.0 + ] + ], + "center_px": [ + 962.0, + 635.25 + ], + "area_px": 467.5 + }, + { + "image_points_px": [ + [ + 496.0, + 636.0 + ], + [ + 518.0, + 630.0 + ], + [ + 542.0, + 641.0 + ], + [ + 514.0, + 648.0 + ] + ], + "center_px": [ + 517.5, + 638.75 + ], + "area_px": 424.0 + }, + { + "image_points_px": [ + [ + 706.0, + 672.0 + ], + [ + 713.0, + 681.0 + ], + [ + 712.0, + 701.0 + ], + [ + 705.0, + 700.0 + ] + ], + "center_px": [ + 709.0, + 688.5 + ], + "area_px": 173.0 + }, + { + "image_points_px": [ + [ + 1270.0, + 652.0 + ], + [ + 1277.0, + 642.0 + ], + [ + 1299.0, + 649.0 + ], + [ + 1283.0, + 656.0 + ] + ], + "center_px": [ + 1282.25, + 649.75 + ], + "area_px": 212.0 + }, + { + "image_points_px": [ + [ + 1324.0, + 677.0 + ], + [ + 1334.0, + 678.0 + ], + [ + 1347.0, + 684.0 + ], + [ + 1327.0, + 680.0 + ] + ], + "center_px": [ + 1333.0, + 679.75 + ], + "area_px": 47.5 + }, + { + "image_points_px": [ + [ + 1335.0, + 615.0 + ], + [ + 1338.0, + 613.0 + ], + [ + 1347.0, + 613.0 + ], + [ + 1358.0, + 618.0 + ] + ], + "center_px": [ + 1344.5, + 614.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 779.0, + 642.0 + ], + [ + 777.0, + 658.0 + ], + [ + 774.0, + 665.0 + ], + [ + 773.0, + 659.0 + ] + ], + "center_px": [ + 775.75, + 656.0 + ], + "area_px": 43.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/render_e_camera_pose.json b/data/camera_study/Scene10/k3_beg/render_e_camera_pose.json new file mode 100644 index 0000000..8bc5af1 --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/render_e_camera_pose.json @@ -0,0 +1,271 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:50Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_beg\\render_e_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "e", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 5, + "used_marker_ids": [ + 48, + 63, + 57, + 102, + 54 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.007197111808548965, + 0.001098276420089881, + 0.0009620344476883504, + 0.0009620205232011758 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 2.7281525726006493, + "residual_median_px": 2.5183121097354597, + "residual_max_px": 3.7576731420043146, + "sigma2_normalized": 2.3137087159701097e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.6321497559547424, + 0.7748407125473022, + 0.0029369741678237915 + ], + [ + 0.21024876832962036, + -0.16787971556186676, + -0.9631260633468628 + ], + [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + ], + "translation_m": [ + -0.056855153292417526, + -0.012442845851182938, + 1.5609862804412842 + ], + "rvec_rad": [ + 1.7048273936309237, + 0.8116750457158921, + -0.6120703769873145 + ] + }, + "camera_in_world": { + "position_m": [ + 1.2027034759521484, + -0.909389853477478, + 0.40814200043678284 + ], + "position_mm": [ + 1202.7034912109375, + -909.3898315429688, + 408.1419982910156 + ], + "orientation_deg": { + "roll": 113.81822204589844, + "pitch": 48.22581100463867, + "yaw": 18.396778106689453 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.00022441890537757206, + -7.963567536396464e-06, + -2.9398649194599163e-05, + -1.4795386871224034e-05, + -9.369620603686464e-05, + -1.2702492726669124e-05 + ], + [ + -7.963567536395407e-06, + 3.7068884464340944e-05, + -3.338378703660994e-05, + 2.6508530508930155e-05, + -6.804904795036776e-06, + -8.467045467073405e-06 + ], + [ + -2.939864919460005e-05, + -3.338378703660865e-05, + 0.00015704190560829434, + -5.550273740425191e-05, + 8.385195749589376e-06, + 3.13758938875245e-05 + ], + [ + -1.4795386871223326e-05, + 2.6508530508929867e-05, + -5.5502737404252506e-05, + 2.9231680266895845e-05, + 3.3812426915121855e-06, + -8.125563844390692e-06 + ], + [ + -9.369620603686502e-05, + -6.80490479503646e-06, + 8.385195749589481e-06, + 3.3812426915123345e-06, + 4.4878486349463374e-05, + 1.0425895360947247e-05 + ], + [ + -1.2702492726669507e-05, + -8.467045467073171e-06, + 3.137589388752461e-05, + -8.125563844390541e-06, + 1.0425895360947318e-05, + 2.9592030404347494e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.8583261662306342, + 0.3488408939722953, + 0.7180098641027528 + ], + "tvec_std_m": [ + 0.005406632987996859, + 0.006699140717246009, + 0.0054398557337807674 + ] + }, + "camera_center_std_m": [ + 0.006976893112270283, + 0.012106263892740327, + 0.01216157052134005 + ], + "camera_center_std_mm": [ + 6.976893112270283, + 12.106263892740326, + 12.16157052134005 + ], + "orientation_std_deg": { + "roll": 1.0513875130551562, + "pitch": 0.6166264667162378, + "yaw": 0.5162490597129769 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1024.5, + 1030.5 + ], + "projected_center_px": [ + 1023.4668579101562, + 1032.796630859375 + ], + "reprojection_error_px": 2.5183121097354597, + "confidence": 0.4963016081621025 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1316.0, + 1051.25 + ], + "projected_center_px": [ + 1318.0511474609375, + 1052.518798828125 + ], + "reprojection_error_px": 2.4118574528279497, + "confidence": 0.12173424671007582 + }, + { + "marker_id": 57, + "observed_center_px": [ + 813.25, + 990.5 + ], + "projected_center_px": [ + 814.3992309570312, + 987.8240966796875 + ], + "reprojection_error_px": 2.912248336295932, + "confidence": 0.7730384623298485 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1106.0, + 937.0 + ], + "projected_center_px": [ + 1103.0518798828125, + 934.6700439453125 + ], + "reprojection_error_px": 3.7576731420043146, + "confidence": 0.6377388980107869 + }, + { + "marker_id": 54, + "observed_center_px": [ + 545.5, + 791.0 + ], + "projected_center_px": [ + 546.1773071289062, + 792.4124755859375 + ], + "reprojection_error_px": 1.5664712661701496, + "confidence": 0.33398560374859715 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/render_g_aruco_detection.json b/data/camera_study/Scene10/k3_beg/render_g_aruco_detection.json new file mode 100644 index 0000000..e05f85f --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/render_g_aruco_detection.json @@ -0,0 +1,2224 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:49Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "g", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.npz", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.png", + "image_sha256": "6f328ef148dd5b73d40dbd9254ac0545dbd7393ed4666dd8eee8d3e346b4448b", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 37, + "num_rejected_candidates": 7 + }, + "detections": [ + { + "observation_id": "313bb271-1e4d-49e9-ba84-da0039768c75", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 361.0, + 538.0 + ], + [ + 334.0, + 513.0 + ], + [ + 364.0, + 489.0 + ], + [ + 391.0, + 513.0 + ] + ], + "center_px": [ + 362.5, + 513.25 + ], + "quality": { + "area_px": 1396.5, + "perimeter_px": 150.3915138244629, + "sharpness": { + "laplacian_var": 1014.5935798624517 + }, + "contrast": { + "p05": 15.0, + "p95": 168.0, + "dynamic_range": 153.0, + "mean_gray": 87.64736297828335, + "std_gray": 65.25681309567548 + }, + "geometry": { + "distance_to_center_norm": 0.3983326554298401, + "distance_to_border_px": 334.0 + }, + "edge_ratio": 1.0810098739215166, + "edge_lengths_px": [ + 36.79673767089844, + 38.41874694824219, + 36.12478256225586, + 39.051246643066406 + ] + }, + "confidence": 0.8612317264250932 + }, + { + "observation_id": "085b4640-59fb-4214-8d61-617ff3c65633", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 490.0, + 612.0 + ], + [ + 463.0, + 586.0 + ], + [ + 492.0, + 572.0 + ], + [ + 518.0, + 598.0 + ] + ], + "center_px": [ + 490.75, + 592.0 + ], + "quality": { + "area_px": 1112.0, + "perimeter_px": 137.76032066345215, + "sharpness": { + "laplacian_var": 1213.9038992326398 + }, + "contrast": { + "p05": 22.0, + "p95": 181.0, + "dynamic_range": 159.0, + "mean_gray": 82.85922974767597, + "std_gray": 68.84435047820993 + }, + "geometry": { + "distance_to_center_norm": 0.26119279861450195, + "distance_to_border_px": 463.0 + }, + "edge_ratio": 1.1973610126869798, + "edge_lengths_px": [ + 37.48332977294922, + 32.202484130859375, + 36.769554138183594, + 31.30495262145996 + ] + }, + "confidence": 0.619139361878602 + }, + { + "observation_id": "d1e2c776-dc6d-4969-8a9f-ef40cf78d3b8", + "type": "aruco", + "marker_id": 86, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 94.0, + 958.0 + ], + [ + 68.0, + 982.0 + ], + [ + 47.0, + 960.0 + ], + [ + 73.0, + 936.0 + ] + ], + "center_px": [ + 70.5, + 959.0 + ], + "quality": { + "area_px": 1076.0, + "perimeter_px": 131.59485244750977, + "sharpness": { + "laplacian_var": 500.4565883722073 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 68.66531713900135, + "std_gray": 56.437884581126355 + }, + "geometry": { + "distance_to_center_norm": 0.8588042259216309, + "distance_to_border_px": 47.0 + }, + "edge_ratio": 1.1634060487042286, + "edge_lengths_px": [ + 35.38361358642578, + 30.4138126373291, + 35.38361358642578, + 30.4138126373291 + ] + }, + "confidence": 0.5795855489013004 + }, + { + "observation_id": "88f3e20a-312d-4c11-80ff-5a6c0c6bc021", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 944.0, + 859.0 + ], + [ + 923.0, + 881.0 + ], + [ + 899.0, + 859.0 + ], + [ + 921.0, + 837.0 + ] + ], + "center_px": [ + 921.75, + 859.0 + ], + "quality": { + "area_px": 990.0, + "perimeter_px": 125.91181182861328, + "sharpness": { + "laplacian_var": 1254.5651387199953 + }, + "contrast": { + "p05": 37.0, + "p95": 176.0, + "dynamic_range": 139.0, + "mean_gray": 94.86206896551724, + "std_gray": 57.98150599974307 + }, + "geometry": { + "distance_to_center_norm": 0.41938236355781555, + "distance_to_border_px": 199.0 + }, + "edge_ratio": 1.070488611997406, + "edge_lengths_px": [ + 30.4138126373291, + 32.557640075683594, + 31.11269760131836, + 31.827661514282227 + ] + }, + "confidence": 0.616540888528013 + }, + { + "observation_id": "5d026815-f982-4904-90af-2d307167e021", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 442.0, + 549.0 + ], + [ + 415.0, + 524.0 + ], + [ + 437.0, + 520.0 + ], + [ + 464.0, + 545.0 + ] + ], + "center_px": [ + 439.5, + 534.5 + ], + "quality": { + "area_px": 658.0, + "perimeter_px": 118.31483459472656, + "sharpness": { + "laplacian_var": 2355.6744409733983 + }, + "contrast": { + "p05": 23.0, + "p95": 180.0, + "dynamic_range": 157.0, + "mean_gray": 108.16359918200409, + "std_gray": 61.881853788931394 + }, + "geometry": { + "distance_to_center_norm": 0.31172657012939453, + "distance_to_border_px": 415.0 + }, + "edge_ratio": 1.6456001465781875, + "edge_lengths_px": [ + 36.79673767089844, + 22.360679626464844, + 36.79673767089844, + 22.360679626464844 + ] + }, + "confidence": 0.2665694139483502 + }, + { + "observation_id": "eba3ba22-bf91-49f2-a877-11d5a962988c", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 565.0, + 714.0 + ], + [ + 544.0, + 692.0 + ], + [ + 568.0, + 672.0 + ], + [ + 589.0, + 694.0 + ] + ], + "center_px": [ + 566.5, + 693.0 + ], + "quality": { + "area_px": 948.0, + "perimeter_px": 123.30962371826172, + "sharpness": { + "laplacian_var": 948.7205075308444 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 87.45253164556962, + "std_gray": 63.36793023445192 + }, + "geometry": { + "distance_to_center_norm": 0.24080945551395416, + "distance_to_border_px": 366.0 + }, + "edge_ratio": 1.027197727372641, + "edge_lengths_px": [ + 30.4138126373291, + 31.240999221801758, + 30.4138126373291, + 31.240999221801758 + ] + }, + "confidence": 0.6152661587526339 + }, + { + "observation_id": "308c9f92-00c1-41a4-a230-ce134980552b", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 903.0, + 772.0 + ], + [ + 882.0, + 794.0 + ], + [ + 858.0, + 773.0 + ], + [ + 879.0, + 752.0 + ] + ], + "center_px": [ + 880.5, + 772.75 + ], + "quality": { + "area_px": 946.5, + "perimeter_px": 123.24373435974121, + "sharpness": { + "laplacian_var": 1446.0998691484099 + }, + "contrast": { + "p05": 34.0, + "p95": 175.0, + "dynamic_range": 141.0, + "mean_gray": 92.60221870047543, + "std_gray": 58.54318515049794 + }, + "geometry": { + "distance_to_center_norm": 0.31413766741752625, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 1.0738069198414777, + "edge_lengths_px": [ + 30.4138126373291, + 31.890438079833984, + 29.698484420776367, + 31.240999221801758 + ] + }, + "confidence": 0.5876289194459208 + }, + { + "observation_id": "aebe717b-0c5d-4ce6-a29f-b05a7a2ee5de", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 138.0, + 787.0 + ], + [ + 113.0, + 809.0 + ], + [ + 93.0, + 789.0 + ], + [ + 118.0, + 767.0 + ] + ], + "center_px": [ + 115.5, + 788.0 + ], + "quality": { + "area_px": 940.0, + "perimeter_px": 123.17184448242188, + "sharpness": { + "laplacian_var": 604.4415315905076 + }, + "contrast": { + "p05": 6.0, + "p95": 133.0, + "dynamic_range": 127.0, + "mean_gray": 50.246422893481714, + "std_gray": 50.2390597357709 + }, + "geometry": { + "distance_to_center_norm": 0.725993812084198, + "distance_to_border_px": 93.0 + }, + "edge_ratio": 1.177391162675776, + "edge_lengths_px": [ + 33.30165100097656, + 28.284271240234375, + 33.30165100097656, + 28.284271240234375 + ] + }, + "confidence": 0.5322501871361803 + }, + { + "observation_id": "317b33e6-05e6-4a8f-9da8-928a50e738dc", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 999.0, + 755.0 + ], + [ + 978.0, + 776.0 + ], + [ + 955.0, + 755.0 + ], + [ + 976.0, + 734.0 + ] + ], + "center_px": [ + 977.0, + 755.0 + ], + "quality": { + "area_px": 924.0, + "perimeter_px": 121.68661499023438, + "sharpness": { + "laplacian_var": 1427.420428863967 + }, + "contrast": { + "p05": 40.0, + "p95": 177.0, + "dynamic_range": 137.0, + "mean_gray": 98.6042345276873, + "std_gray": 56.7245592071717 + }, + "geometry": { + "distance_to_center_norm": 0.37230345606803894, + "distance_to_border_px": 304.0 + }, + "edge_ratio": 1.0487007563440722, + "edge_lengths_px": [ + 29.698484420776367, + 31.14482307434082, + 29.698484420776367, + 31.14482307434082 + ] + }, + "confidence": 0.5873934926369923 + }, + { + "observation_id": "cafb30ee-279b-48c4-af54-5da0e1104a95", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 76.0, + 765.0 + ], + [ + 50.0, + 785.0 + ], + [ + 32.0, + 764.0 + ], + [ + 58.0, + 744.0 + ] + ], + "center_px": [ + 54.0, + 764.5 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.92214965820312, + "sharpness": { + "laplacian_var": 1149.1764888888888 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 87.18, + "std_gray": 50.17918824904737 + }, + "geometry": { + "distance_to_center_norm": 0.7809113264083862, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.1859747094873558, + "edge_lengths_px": [ + 32.80244064331055, + 27.658634185791016, + 32.80244064331055, + 27.658634185791016 + ] + }, + "confidence": 0.32594286952973284 + }, + { + "observation_id": "079bbc23-9c4e-4ea4-894f-d1cfba887fed", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 823.0, + 743.0 + ], + [ + 803.0, + 765.0 + ], + [ + 779.0, + 745.0 + ], + [ + 799.0, + 724.0 + ] + ], + "center_px": [ + 801.0, + 744.25 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.58359336853027, + "sharpness": { + "laplacian_var": 1584.9415918166465 + }, + "contrast": { + "p05": 30.0, + "p95": 174.0, + "dynamic_range": 144.0, + "mean_gray": 126.23913043478261, + "std_gray": 56.63381767927601 + }, + "geometry": { + "distance_to_center_norm": 0.24413886666297913, + "distance_to_border_px": 315.0 + }, + "edge_ratio": 1.0772758352345433, + "edge_lengths_px": [ + 29.73213768005371, + 31.240999221801758, + 29.0, + 30.610456466674805 + ] + }, + "confidence": 0.5606734879266068 + }, + { + "observation_id": "192e165c-e32f-433e-b01e-e392ea3fd0f9", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 747.0, + 705.0 + ], + [ + 724.0, + 724.0 + ], + [ + 703.0, + 703.0 + ], + [ + 726.0, + 683.0 + ] + ], + "center_px": [ + 725.0, + 703.75 + ], + "quality": { + "area_px": 904.0, + "perimeter_px": 120.42466735839844, + "sharpness": { + "laplacian_var": 1425.730397310992 + }, + "contrast": { + "p05": 25.0, + "p95": 173.0, + "dynamic_range": 148.0, + "mean_gray": 88.02341137123746, + "std_gray": 60.58805571551177 + }, + "geometry": { + "distance_to_center_norm": 0.18202924728393555, + "distance_to_border_px": 356.0 + }, + "edge_ratio": 1.0262982208923905, + "edge_lengths_px": [ + 29.832868576049805, + 29.698484420776367, + 30.479501724243164, + 30.4138126373291 + ] + }, + "confidence": 0.5872237273710109 + }, + { + "observation_id": "f0b52831-a534-49df-9b81-d88a702d0edc", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 119.0, + 710.0 + ], + [ + 94.0, + 730.0 + ], + [ + 76.0, + 709.0 + ], + [ + 102.0, + 690.0 + ] + ], + "center_px": [ + 97.75, + 709.75 + ], + "quality": { + "area_px": 864.0, + "perimeter_px": 118.12554931640625, + "sharpness": { + "laplacian_var": 968.3578168166666 + }, + "contrast": { + "p05": 6.0, + "p95": 136.0, + "dynamic_range": 130.0, + "mean_gray": 46.16981132075472, + "std_gray": 49.20730448013899 + }, + "geometry": { + "distance_to_center_norm": 0.7166538238525391, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.226816924595493, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 32.202484130859375, + 26.248809814453125 + ] + }, + "confidence": 0.46950770604173 + }, + { + "observation_id": "3356242b-d4d7-4573-8e1d-0903a0139272", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 73.0, + 695.0 + ], + [ + 48.0, + 715.0 + ], + [ + 30.0, + 694.0 + ], + [ + 55.0, + 675.0 + ] + ], + "center_px": [ + 51.5, + 694.75 + ], + "quality": { + "area_px": 863.5, + "perimeter_px": 117.98213958740234, + "sharpness": { + "laplacian_var": 900.750086057507 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 80.92109777015438, + "std_gray": 51.03488818616118 + }, + "geometry": { + "distance_to_center_norm": 0.7624196410179138, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 31.400636672973633, + 26.90724754333496 + ] + }, + "confidence": 0.2902883953953809 + }, + { + "observation_id": "7478157d-deeb-41c2-abf5-8063ee30c208", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 50.0, + 652.0 + ], + [ + 25.0, + 672.0 + ], + [ + 7.0, + 652.0 + ], + [ + 31.0, + 632.0 + ] + ], + "center_px": [ + 28.25, + 652.0 + ], + "quality": { + "area_px": 860.0, + "perimeter_px": 117.75009727478027, + "sharpness": { + "laplacian_var": 765.5794806391044 + }, + "contrast": { + "p05": 6.0, + "p95": 138.0, + "dynamic_range": 132.0, + "mean_gray": 60.22508591065292, + "std_gray": 51.90037234016344 + }, + "geometry": { + "distance_to_center_norm": 0.778620183467865, + "distance_to_border_px": 7.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 26.90724754333496, + 31.240999221801758, + 27.58622932434082 + ] + }, + "confidence": 0.06745941479560678 + }, + { + "observation_id": "f8adb3d8-7f91-4202-96bf-ff5a90583959", + "type": "aruco", + "marker_id": 79, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 603.0, + 594.0 + ], + [ + 579.0, + 612.0 + ], + [ + 561.0, + 592.0 + ], + [ + 584.0, + 574.0 + ] + ], + "center_px": [ + 581.75, + 593.0 + ], + "quality": { + "area_px": 803.0, + "perimeter_px": 113.69964027404785, + "sharpness": { + "laplacian_var": 1656.0680687854385 + }, + "contrast": { + "p05": 12.0, + "p95": 161.0, + "dynamic_range": 149.0, + "mean_gray": 98.64845173041894, + "std_gray": 55.913593747198206 + }, + "geometry": { + "distance_to_center_norm": 0.16451223194599152, + "distance_to_border_px": 468.0 + }, + "edge_ratio": 1.1149412421944707, + "edge_lengths_px": [ + 30.0, + 26.90724754333496, + 29.20616340637207, + 27.58622932434082 + ] + }, + "confidence": 0.48014488393995497 + }, + { + "observation_id": "640f3a88-4a29-4bad-8491-04b74dd16c45", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 532.0 + ], + [ + 698.0, + 550.0 + ], + [ + 678.0, + 531.0 + ], + [ + 700.0, + 513.0 + ] + ], + "center_px": [ + 699.0, + 531.5 + ], + "quality": { + "area_px": 778.0, + "perimeter_px": 112.02313995361328, + "sharpness": { + "laplacian_var": 1630.603042441958 + }, + "contrast": { + "p05": 23.0, + "p95": 174.0, + "dynamic_range": 151.0, + "mean_gray": 95.26275992438563, + "std_gray": 62.75795126376546 + }, + "geometry": { + "distance_to_center_norm": 0.025172246620059013, + "distance_to_border_px": 513.0 + }, + "edge_ratio": 1.0304177609146679, + "edge_lengths_px": [ + 28.42534065246582, + 27.58622932434082, + 28.42534065246582, + 27.58622932434082 + ] + }, + "confidence": 0.5033557129355607 + }, + { + "observation_id": "c6ef246b-f67f-416d-9439-d22214cb8849", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 879.0, + 509.0 + ], + [ + 858.0, + 527.0 + ], + [ + 837.0, + 508.0 + ], + [ + 857.0, + 490.0 + ] + ], + "center_px": [ + 857.75, + 508.5 + ], + "quality": { + "area_px": 776.5, + "perimeter_px": 111.95437049865723, + "sharpness": { + "laplacian_var": 1308.7119920798898 + }, + "contrast": { + "p05": 28.0, + "p95": 174.0, + "dynamic_range": 146.0, + "mean_gray": 80.56060606060606, + "std_gray": 60.05184093458493 + }, + "geometry": { + "distance_to_center_norm": 0.1570063829421997, + "distance_to_border_px": 490.0 + }, + "edge_ratio": 1.0803365840024208, + "edge_lengths_px": [ + 27.658634185791016, + 28.319604873657227, + 26.90724754333496, + 29.068883895874023 + ] + }, + "confidence": 0.4791716529202595 + }, + { + "observation_id": "55c6cc61-e627-4733-9762-a000c76e9bed", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 692.0, + 463.0 + ], + [ + 670.0, + 480.0 + ], + [ + 650.0, + 462.0 + ], + [ + 672.0, + 445.0 + ] + ], + "center_px": [ + 671.0, + 462.5 + ], + "quality": { + "area_px": 736.0, + "perimeter_px": 109.42024993896484, + "sharpness": { + "laplacian_var": 1430.0492813475546 + }, + "contrast": { + "p05": 18.0, + "p95": 168.0, + "dynamic_range": 150.0, + "mean_gray": 84.02217741935483, + "std_gray": 61.295601129603824 + }, + "geometry": { + "distance_to_center_norm": 0.10187894850969315, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 1.0332858231363153, + "edge_lengths_px": [ + 27.80287742614746, + 26.90724754333496, + 27.80287742614746, + 26.90724754333496 + ] + }, + "confidence": 0.47486054263026106 + }, + { + "observation_id": "2955e32c-bca0-46fa-aa1f-16000716cb92", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 226.0, + 383.0 + ], + [ + 209.0, + 365.0 + ], + [ + 233.0, + 348.0 + ], + [ + 250.0, + 366.0 + ] + ], + "center_px": [ + 229.5, + 365.5 + ], + "quality": { + "area_px": 721.0, + "perimeter_px": 108.33943939208984, + "sharpness": { + "laplacian_var": 1811.1556224254036 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 72.70393374741201, + "std_gray": 58.0764945436627 + }, + "geometry": { + "distance_to_center_norm": 0.5784616470336914, + "distance_to_border_px": 209.0 + }, + "edge_ratio": 1.187894376916731, + "edge_lengths_px": [ + 24.75883674621582, + 29.4108829498291, + 24.75883674621582, + 29.4108829498291 + ] + }, + "confidence": 0.4046375469124394 + }, + { + "observation_id": "e17e7432-3609-4d0b-a400-313be19d3c9a", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 437.0 + ], + [ + 765.0, + 454.0 + ], + [ + 745.0, + 436.0 + ], + [ + 767.0, + 419.0 + ] + ], + "center_px": [ + 765.75, + 436.5 + ], + "quality": { + "area_px": 718.5, + "perimeter_px": 107.90114212036133, + "sharpness": { + "laplacian_var": 1491.443337468285 + }, + "contrast": { + "p05": 22.0, + "p95": 171.0, + "dynamic_range": 149.0, + "mean_gray": 109.3970893970894, + "std_gray": 60.642148532506475 + }, + "geometry": { + "distance_to_center_norm": 0.12573395669460297, + "distance_to_border_px": 419.0 + }, + "edge_ratio": 1.0622933508624515, + "edge_lengths_px": [ + 27.018512725830078, + 26.90724754333496, + 27.80287742614746, + 26.172504425048828 + ] + }, + "confidence": 0.4509112286273005 + }, + { + "observation_id": "24a1a61e-1943-4a9f-af0e-af062530a3c9", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 730.0, + 434.0 + ], + [ + 708.0, + 452.0 + ], + [ + 689.0, + 434.0 + ], + [ + 710.0, + 417.0 + ] + ], + "center_px": [ + 709.25, + 434.25 + ], + "quality": { + "area_px": 717.5, + "perimeter_px": 107.86516761779785, + "sharpness": { + "laplacian_var": 1736.662652737497 + }, + "contrast": { + "p05": 19.0, + "p95": 167.0, + "dynamic_range": 148.0, + "mean_gray": 58.66320166320166, + "std_gray": 55.157409197074806 + }, + "geometry": { + "distance_to_center_norm": 0.11810554563999176, + "distance_to_border_px": 417.0 + }, + "edge_ratio": 1.0860764484296306, + "edge_lengths_px": [ + 28.42534065246582, + 26.172504425048828, + 27.018512725830078, + 26.248809814453125 + ] + }, + "confidence": 0.44042326304466006 + }, + { + "observation_id": "0a525591-8700-47bb-981d-deb1d9496d19", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 576.0, + 320.0 + ], + [ + 550.0, + 337.0 + ], + [ + 536.0, + 319.0 + ], + [ + 558.0, + 303.0 + ] + ], + "center_px": [ + 555.0, + 319.75 + ], + "quality": { + "area_px": 684.0, + "perimeter_px": 105.82973670959473, + "sharpness": { + "laplacian_var": 2755.9650784771356 + }, + "contrast": { + "p05": 18.3, + "p95": 164.0, + "dynamic_range": 145.7, + "mean_gray": 118.58029978586724, + "std_gray": 53.53363006243584 + }, + "geometry": { + "distance_to_center_norm": 0.30577781796455383, + "distance_to_border_px": 303.0 + }, + "edge_ratio": 1.362266203821036, + "edge_lengths_px": [ + 31.064449310302734, + 22.803508758544922, + 27.20294189453125, + 24.75883674621582 + ] + }, + "confidence": 0.33473633767097827 + }, + { + "observation_id": "8b90de72-0fec-4e60-a52d-e54879fb02d1", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 146.0, + 302.0 + ], + [ + 128.0, + 284.0 + ], + [ + 151.0, + 268.0 + ], + [ + 168.0, + 285.0 + ] + ], + "center_px": [ + 148.25, + 284.75 + ], + "quality": { + "area_px": 682.5, + "perimeter_px": 105.31820297241211, + "sharpness": { + "laplacian_var": 1274.9818476124406 + }, + "contrast": { + "p05": 8.0, + "p95": 153.0, + "dynamic_range": 145.0, + "mean_gray": 78.65806451612903, + "std_gray": 55.65065056297059 + }, + "geometry": { + "distance_to_center_norm": 0.6957105398178101, + "distance_to_border_px": 128.0 + }, + "edge_ratio": 1.1653889989621362, + "edge_lengths_px": [ + 25.45584487915039, + 28.017850875854492, + 24.041629791259766, + 27.80287742614746 + ] + }, + "confidence": 0.3904275743165678 + }, + { + "observation_id": "18f7c6f1-c62f-4f8b-b711-bbbecaeeb49c", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 561.0, + 509.0 + ], + [ + 545.0, + 479.0 + ], + [ + 562.0, + 476.0 + ], + [ + 579.0, + 506.0 + ] + ], + "center_px": [ + 561.75, + 492.5 + ], + "quality": { + "area_px": 574.5, + "perimeter_px": 103.99284362792969, + "sharpness": { + "laplacian_var": 2618.6153012470177 + }, + "contrast": { + "p05": 28.0, + "p95": 182.0, + "dynamic_range": 154.0, + "mean_gray": 76.1413881748072, + "std_gray": 60.266572002236316 + }, + "geometry": { + "distance_to_center_norm": 0.18358337879180908, + "distance_to_border_px": 476.0 + }, + "edge_ratio": 1.997481717814946, + "edge_lengths_px": [ + 34.0, + 17.262676239013672, + 34.48188018798828, + 18.248287200927734 + ] + }, + "confidence": 0.19174142951303974 + }, + { + "observation_id": "a5eeb33e-8361-407b-8914-96b4b1778b97", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 349.0, + 309.0 + ], + [ + 327.0, + 326.0 + ], + [ + 309.0, + 310.0 + ], + [ + 330.0, + 293.0 + ] + ], + "center_px": [ + 328.75, + 309.5 + ], + "quality": { + "area_px": 658.5, + "perimeter_px": 103.74406433105469, + "sharpness": { + "laplacian_var": 1094.0317657154478 + }, + "contrast": { + "p05": 9.0, + "p95": 158.0, + "dynamic_range": 149.0, + "mean_gray": 66.65924276169265, + "std_gray": 58.28183701574557 + }, + "geometry": { + "distance_to_center_norm": 0.5045555830001831, + "distance_to_border_px": 293.0 + }, + "edge_ratio": 1.1544516556294537, + "edge_lengths_px": [ + 27.80287742614746, + 24.083189010620117, + 27.018512725830078, + 24.83948516845703 + ] + }, + "confidence": 0.38026711457279644 + }, + { + "observation_id": "b153ac2a-d0b8-4fc7-98e7-bce68bd7b10f", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 341.0 + ], + [ + 501.0, + 358.0 + ], + [ + 483.0, + 341.0 + ], + [ + 503.0, + 325.0 + ] + ], + "center_px": [ + 502.25, + 341.25 + ], + "quality": { + "area_px": 643.5, + "perimeter_px": 102.22933197021484, + "sharpness": { + "laplacian_var": 792.6312567894008 + }, + "contrast": { + "p05": 12.0, + "p95": 156.59999999999997, + "dynamic_range": 144.59999999999997, + "mean_gray": 44.28285077951002, + "std_gray": 50.37014613113326 + }, + "geometry": { + "distance_to_center_norm": 0.32757362723350525, + "distance_to_border_px": 325.0 + }, + "edge_ratio": 1.0912674534258815, + "edge_lengths_px": [ + 27.018512725830078, + 24.75883674621582, + 25.612497329711914, + 24.83948516845703 + ] + }, + "confidence": 0.3931208602008742 + }, + { + "observation_id": "ef14bc5b-a6ec-446d-908c-0fe20ae7a776", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 378.0, + 281.0 + ], + [ + 356.0, + 296.0 + ], + [ + 340.0, + 278.0 + ], + [ + 362.0, + 263.0 + ] + ], + "center_px": [ + 359.0, + 279.5 + ], + "quality": { + "area_px": 636.0, + "perimeter_px": 101.42048645019531, + "sharpness": { + "laplacian_var": 1475.439773960402 + }, + "contrast": { + "p05": 12.0, + "p95": 159.0, + "dynamic_range": 147.0, + "mean_gray": 104.82805429864253, + "std_gray": 54.152686185461974 + }, + "geometry": { + "distance_to_center_norm": 0.49463948607444763, + "distance_to_border_px": 263.0 + }, + "edge_ratio": 1.1056282539133682, + "edge_lengths_px": [ + 26.62705421447754, + 24.083189010620117, + 26.62705421447754, + 24.083189010620117 + ] + }, + "confidence": 0.3834923705135548 + }, + { + "observation_id": "1fd1f866-b066-4482-98f2-8e8d5028f93f", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 444.0, + 258.0 + ], + [ + 425.0, + 275.0 + ], + [ + 406.0, + 259.0 + ], + [ + 427.0, + 243.0 + ] + ], + "center_px": [ + 425.5, + 258.75 + ], + "quality": { + "area_px": 607.0, + "perimeter_px": 99.40690803527832, + "sharpness": { + "laplacian_var": 1418.6926709234967 + }, + "contrast": { + "p05": 11.0, + "p95": 160.0, + "dynamic_range": 149.0, + "mean_gray": 106.14797136038186, + "std_gray": 57.2326997711296 + }, + "geometry": { + "distance_to_center_norm": 0.45247167348861694, + "distance_to_border_px": 243.0 + }, + "edge_ratio": 1.1644874731532113, + "edge_lengths_px": [ + 25.495098114013672, + 24.83948516845703, + 26.4007568359375, + 22.671567916870117 + ] + }, + "confidence": 0.3475062428717297 + }, + { + "observation_id": "7b85f4e0-2292-46c9-af27-71bfcefd6684", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 540.0, + 214.0 + ], + [ + 518.0, + 229.0 + ], + [ + 502.0, + 212.0 + ], + [ + 524.0, + 198.0 + ] + ], + "center_px": [ + 521.0, + 213.25 + ], + "quality": { + "area_px": 595.0, + "perimeter_px": 98.67651557922363, + "sharpness": { + "laplacian_var": 2376.767235312675 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 88.00492610837438, + "std_gray": 57.82609375178821 + }, + "geometry": { + "distance_to_center_norm": 0.425087571144104, + "distance_to_border_px": 198.0 + }, + "edge_ratio": 1.176760682519333, + "edge_lengths_px": [ + 26.62705421447754, + 23.34523582458496, + 26.07680892944336, + 22.627416610717773 + ] + }, + "confidence": 0.3370835485575886 + }, + { + "observation_id": "24878ca4-902d-48f6-85f2-8c04e4626ec2", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 435.0, + 187.0 + ], + [ + 413.0, + 203.0 + ], + [ + 397.0, + 188.0 + ], + [ + 416.0, + 172.0 + ] + ], + "center_px": [ + 415.25, + 187.5 + ], + "quality": { + "area_px": 587.5, + "perimeter_px": 98.18157768249512, + "sharpness": { + "laplacian_var": 1963.1431301414739 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 65.73891625615764, + "std_gray": 57.77965459852634 + }, + "geometry": { + "distance_to_center_norm": 0.5177453756332397, + "distance_to_border_px": 172.0 + }, + "edge_ratio": 1.2403473347124077, + "edge_lengths_px": [ + 27.20294189453125, + 21.931713104248047, + 24.83948516845703, + 24.20743751525879 + ] + }, + "confidence": 0.3157717646545193 + }, + { + "observation_id": "ee8ecc9a-c01f-498f-8bdb-39d4be6db355", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 295.0, + 182.0 + ], + [ + 274.0, + 199.0 + ], + [ + 257.0, + 184.0 + ], + [ + 277.0, + 168.0 + ] + ], + "center_px": [ + 275.75, + 183.25 + ], + "quality": { + "area_px": 586.0, + "perimeter_px": 98.10608673095703, + "sharpness": { + "laplacian_var": 1004.0248132785243 + }, + "contrast": { + "p05": 8.0, + "p95": 152.0, + "dynamic_range": 144.0, + "mean_gray": 57.34663341645885, + "std_gray": 54.68788834886238 + }, + "geometry": { + "distance_to_center_norm": 0.6330687999725342, + "distance_to_border_px": 168.0 + }, + "edge_ratio": 1.1917355175830322, + "edge_lengths_px": [ + 27.018512725830078, + 22.671567916870117, + 25.612497329711914, + 22.803508758544922 + ] + }, + "confidence": 0.32781322776968225 + }, + { + "observation_id": "def62832-34ba-4a9e-9747-5bec3e2084e9", + "type": "aruco", + "marker_id": 65, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 330.0, + 124.0 + ], + [ + 309.0, + 139.0 + ], + [ + 292.0, + 125.0 + ], + [ + 312.0, + 109.0 + ] + ], + "center_px": [ + 310.75, + 124.25 + ], + "quality": { + "area_px": 568.5, + "perimeter_px": 96.87293815612793, + "sharpness": { + "laplacian_var": 1300.0755674364495 + }, + "contrast": { + "p05": 8.0, + "p95": 155.0, + "dynamic_range": 147.0, + "mean_gray": 86.9776119402985, + "std_gray": 55.68315657930573 + }, + "geometry": { + "distance_to_center_norm": 0.6482013463973999, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.1718344795212643, + "edge_lengths_px": [ + 25.806976318359375, + 22.022714614868164, + 25.612497329711914, + 23.430749893188477 + ] + }, + "confidence": 0.323424516536529 + }, + { + "observation_id": "c593529c-9ae9-4fa4-9413-12fbc5b39553", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 356.0, + 167.0 + ], + [ + 333.0, + 181.0 + ], + [ + 319.0, + 165.0 + ], + [ + 341.0, + 151.0 + ] + ], + "center_px": [ + 337.25, + 166.0 + ], + "quality": { + "area_px": 563.0, + "perimeter_px": 96.19463729858398, + "sharpness": { + "laplacian_var": 1894.9311071943598 + }, + "contrast": { + "p05": 9.0, + "p95": 156.0, + "dynamic_range": 147.0, + "mean_gray": 103.9113924050633, + "std_gray": 53.71344264563591 + }, + "geometry": { + "distance_to_center_norm": 0.5945987105369568, + "distance_to_border_px": 151.0 + }, + "edge_ratio": 1.266484164199827, + "edge_lengths_px": [ + 26.925823211669922, + 21.260292053222656, + 26.07680892944336, + 21.931713104248047 + ] + }, + "confidence": 0.2963584890699928 + }, + { + "observation_id": "ba64d3ff-156c-4c0c-8517-f1dda8e6fa41", + "type": "aruco", + "marker_id": 87, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 180.0, + 65.0 + ], + [ + 159.0, + 81.0 + ], + [ + 143.0, + 66.0 + ], + [ + 164.0, + 52.0 + ] + ], + "center_px": [ + 161.5, + 66.0 + ], + "quality": { + "area_px": 534.0, + "perimeter_px": 94.18685722351074, + "sharpness": { + "laplacian_var": 1427.9534499507668 + }, + "contrast": { + "p05": 8.0, + "p95": 150.0, + "dynamic_range": 142.0, + "mean_gray": 94.2133676092545, + "std_gray": 52.32608089294961 + }, + "geometry": { + "distance_to_center_norm": 0.8139207363128662, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.2806248134565528, + "edge_lengths_px": [ + 26.4007568359375, + 21.931713104248047, + 25.238859176635742, + 20.615528106689453 + ] + }, + "confidence": 0.27798930354872264 + }, + { + "observation_id": "97da8553-c114-42c5-b8bd-1468fcfe27fd", + "type": "aruco", + "marker_id": 80, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 318.0, + 56.0 + ], + [ + 297.0, + 71.0 + ], + [ + 281.0, + 57.0 + ], + [ + 301.0, + 42.0 + ] + ], + "center_px": [ + 299.25, + 56.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 847.3843286787691 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 66.73007712082263, + "std_gray": 58.398961546954666 + }, + "geometry": { + "distance_to_center_norm": 0.7121544480323792, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.806976318359375, + 21.260292053222656, + 25.0, + 22.022714614868164 + ] + }, + "confidence": 0.24658567276025462 + }, + { + "observation_id": "f7c00d9b-944d-41bb-9fdb-4e0578fb1853", + "type": "aruco", + "marker_id": 78, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 352.0, + 82.0 + ], + [ + 332.0, + 97.0 + ], + [ + 315.0, + 83.0 + ], + [ + 336.0, + 68.0 + ] + ], + "center_px": [ + 333.75, + 82.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 1495.6557828150394 + }, + "contrast": { + "p05": 8.0, + "p95": 154.39999999999998, + "dynamic_range": 146.39999999999998, + "mean_gray": 80.43256997455471, + "std_gray": 54.727417597641875 + }, + "geometry": { + "distance_to_center_norm": 0.6652719378471375, + "distance_to_border_px": 68.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.0, + 22.022714614868164, + 25.806976318359375, + 21.260292053222656 + ] + }, + "confidence": 0.29355437233363646 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 486.0, + 719.0 + ], + [ + 454.0, + 799.0 + ], + [ + 418.0, + 837.0 + ], + [ + 463.0, + 740.0 + ] + ], + "center_px": [ + 455.25, + 773.75 + ], + "area_px": 1475.0 + }, + { + "image_points_px": [ + [ + 438.0, + 753.0 + ], + [ + 414.0, + 813.0 + ], + [ + 410.0, + 798.0 + ], + [ + 428.0, + 756.0 + ] + ], + "center_px": [ + 422.5, + 780.0 + ], + "area_px": 483.0 + }, + { + "image_points_px": [ + [ + 800.0, + 580.0 + ], + [ + 824.0, + 598.0 + ], + [ + 805.0, + 618.0 + ], + [ + 781.0, + 600.0 + ] + ], + "center_px": [ + 802.5, + 599.0 + ], + "area_px": 822.0 + }, + { + "image_points_px": [ + [ + 347.0, + 811.0 + ], + [ + 356.0, + 811.0 + ], + [ + 379.0, + 836.0 + ], + [ + 372.0, + 837.0 + ] + ], + "center_px": [ + 363.5, + 823.75 + ], + "area_px": 216.0 + }, + { + "image_points_px": [ + [ + 606.0, + 542.0 + ], + [ + 580.0, + 559.0 + ], + [ + 569.0, + 560.0 + ], + [ + 589.0, + 544.0 + ] + ], + "center_px": [ + 586.0, + 551.25 + ], + "area_px": 196.5 + }, + { + "image_points_px": [ + [ + 523.0, + 557.0 + ], + [ + 498.0, + 574.0 + ], + [ + 494.0, + 570.0 + ], + [ + 503.0, + 561.0 + ] + ], + "center_px": [ + 504.5, + 565.5 + ], + "area_px": 156.0 + }, + { + "image_points_px": [ + [ + 803.0, + 972.0 + ], + [ + 814.0, + 977.0 + ], + [ + 824.0, + 985.0 + ], + [ + 808.0, + 977.0 + ] + ], + "center_px": [ + 812.25, + 977.75 + ], + "area_px": 39.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/render_g_camera_pose.json b/data/camera_study/Scene10/k3_beg/render_g_camera_pose.json new file mode 100644 index 0000000..d51c4ed --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/render_g_camera_pose.json @@ -0,0 +1,663 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:50Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_beg\\render_g_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "g", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 33, + "used_marker_ids": [ + 86, + 64, + 215, + 58, + 72, + 69, + 53, + 103, + 51, + 56, + 46, + 68, + 79, + 55, + 66, + 47, + 217, + 97, + 54, + 85, + 205, + 92, + 105, + 102, + 59, + 57, + 48, + 63, + 65, + 71, + 87, + 80, + 78 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.009919110626502768, + 0.00131603695020182, + 0.001107937977321884, + 0.0011079307333379282 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.1533723108903047, + "residual_median_px": 2.642822899939481, + "residual_max_px": 5.712847334889287, + "sigma2_normalized": 1.3502615607878073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + -0.7068235278129578, + -0.7073897123336792, + 0.0005333506851457059 + ], + [ + -0.6407679319381714, + 0.6399352550506592, + -0.424145370721817 + ], + [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + ], + "translation_m": [ + -0.00025032571284100413, + 0.3299143314361572, + 1.3926880359649658 + ], + "rvec_rad": [ + 1.1160234227786252, + -2.692342329270323, + 0.5995714660194011 + ] + }, + "camera_in_world": { + "position_m": [ + -0.20615969598293304, + 0.20669731497764587, + 1.40114164352417 + ], + "position_mm": [ + -206.15969848632812, + 206.6973114013672, + 1401.1416015625 + ], + "orientation_deg": { + "roll": -161.66343688964844, + "pitch": -17.43927001953125, + "yaw": -137.80624389648438 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 4.975476294351241e-06, + -6.1997390444361685e-06, + 4.6125841623440254e-06, + 3.8792135706014886e-07, + 1.0177551175558624e-06, + 4.222247510549453e-06 + ], + [ + -6.199739044436152e-06, + 1.6975220993135513e-05, + -1.1554389240886986e-05, + -2.6694426951616535e-06, + -1.5071367865932754e-06, + -1.0044703768545779e-05 + ], + [ + 4.61258416234392e-06, + -1.1554389240886865e-05, + 4.305804556659614e-05, + 4.2916213343878956e-06, + -2.367994951969628e-06, + 1.1642827799058608e-07 + ], + [ + 3.8792135706013785e-07, + -2.66944269516164e-06, + 4.29162133438789e-06, + 8.873234421723078e-07, + -1.077878898019132e-07, + 5.938016020714988e-07 + ], + [ + 1.0177551175558734e-06, + -1.5071367865932949e-06, + -2.3679949519695885e-06, + -1.0778788980190919e-07, + 6.616834799099002e-07, + 1.592756267167381e-06 + ], + [ + 4.2222475105494726e-06, + -1.0044703768545826e-05, + 1.1642827799072875e-07, + 5.938016020715144e-07, + 1.5927562671673749e-06, + 1.016526335390813e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.12780268061910577, + 0.23606432019497975, + 0.37596705361655935 + ], + "tvec_std_m": [ + 0.0009419784722446197, + 0.0008134392908569761, + 0.0031883010136917957 + ] + }, + "camera_center_std_m": [ + 0.005660072460127804, + 0.007818574448214759, + 0.0036781658638248924 + ], + "camera_center_std_mm": [ + 5.660072460127804, + 7.8185744482147586, + 3.6781658638248924 + ], + "orientation_std_deg": { + "roll": 0.33214565947431973, + "pitch": 0.23919321283200756, + "yaw": 0.12115842919429226 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 86, + "observed_center_px": [ + 70.5, + 959.0 + ], + "projected_center_px": [ + 72.42671966552734, + 955.485107421875 + ], + "reprojection_error_px": 4.0083311371801615, + "confidence": 0.5795855489013004 + }, + { + "marker_id": 64, + "observed_center_px": [ + 921.75, + 859.0 + ], + "projected_center_px": [ + 922.7560424804688, + 862.7833251953125 + ], + "reprojection_error_px": 3.9148015283017963, + "confidence": 0.616540888528013 + }, + { + "marker_id": 215, + "observed_center_px": [ + 566.5, + 693.0 + ], + "projected_center_px": [ + 568.2459106445312, + 692.080322265625 + ], + "reprojection_error_px": 1.9733248880487617, + "confidence": 0.6152661587526339 + }, + { + "marker_id": 58, + "observed_center_px": [ + 880.5, + 772.75 + ], + "projected_center_px": [ + 879.3278198242188, + 769.2518310546875 + ], + "reprojection_error_px": 3.689334944735071, + "confidence": 0.5876289194459208 + }, + { + "marker_id": 72, + "observed_center_px": [ + 115.5, + 788.0 + ], + "projected_center_px": [ + 114.51494598388672, + 788.7781982421875 + ], + "reprojection_error_px": 1.2553580838966305, + "confidence": 0.5322501871361803 + }, + { + "marker_id": 69, + "observed_center_px": [ + 977.0, + 755.0 + ], + "projected_center_px": [ + 978.3434448242188, + 750.7787475585938 + ], + "reprojection_error_px": 4.429877669845791, + "confidence": 0.5873934926369923 + }, + { + "marker_id": 53, + "observed_center_px": [ + 54.0, + 764.5 + ], + "projected_center_px": [ + 57.76123046875, + 763.97119140625 + ], + "reprojection_error_px": 3.79822236946143, + "confidence": 0.32594286952973284 + }, + { + "marker_id": 103, + "observed_center_px": [ + 801.0, + 744.25 + ], + "projected_center_px": [ + 797.4358520507812, + 746.4951782226562 + ], + "reprojection_error_px": 4.212359891487205, + "confidence": 0.5606734879266068 + }, + { + "marker_id": 51, + "observed_center_px": [ + 725.0, + 703.75 + ], + "projected_center_px": [ + 724.1592407226562, + 705.2492065429688 + ], + "reprojection_error_px": 1.7188648640657866, + "confidence": 0.5872237273710109 + }, + { + "marker_id": 56, + "observed_center_px": [ + 97.75, + 709.75 + ], + "projected_center_px": [ + 94.510986328125, + 713.8988647460938 + ], + "reprojection_error_px": 5.263486320678788, + "confidence": 0.46950770604173 + }, + { + "marker_id": 46, + "observed_center_px": [ + 51.5, + 694.75 + ], + "projected_center_px": [ + 45.80540466308594, + 695.206298828125 + ], + "reprojection_error_px": 5.712847334889287, + "confidence": 0.2902883953953809 + }, + { + "marker_id": 68, + "observed_center_px": [ + 28.25, + 652.0 + ], + "projected_center_px": [ + 32.07790756225586, + 650.2508544921875 + ], + "reprojection_error_px": 4.20860859580411, + "confidence": 0.06745941479560678 + }, + { + "marker_id": 79, + "observed_center_px": [ + 581.75, + 593.0 + ], + "projected_center_px": [ + 580.7769775390625, + 592.564453125 + ], + "reprojection_error_px": 1.0660552470726525, + "confidence": 0.48014488393995497 + }, + { + "marker_id": 55, + "observed_center_px": [ + 699.0, + 531.5 + ], + "projected_center_px": [ + 701.2785034179688, + 531.0349731445312 + ], + "reprojection_error_px": 2.3254736726100407, + "confidence": 0.5033557129355607 + }, + { + "marker_id": 66, + "observed_center_px": [ + 857.75, + 508.5 + ], + "projected_center_px": [ + 857.27294921875, + 509.6018981933594 + ], + "reprojection_error_px": 1.200731891980841, + "confidence": 0.4791716529202595 + }, + { + "marker_id": 47, + "observed_center_px": [ + 671.0, + 462.5 + ], + "projected_center_px": [ + 669.33203125, + 463.6061096191406 + ], + "reprojection_error_px": 2.001399070783231, + "confidence": 0.47486054263026106 + }, + { + "marker_id": 217, + "observed_center_px": [ + 229.5, + 365.5 + ], + "projected_center_px": [ + 227.5244140625, + 361.9618225097656 + ], + "reprojection_error_px": 4.052362243044047, + "confidence": 0.4046375469124394 + }, + { + "marker_id": 97, + "observed_center_px": [ + 765.75, + 436.5 + ], + "projected_center_px": [ + 768.8408203125, + 437.7091064453125 + ], + "reprojection_error_px": 3.318901715968526, + "confidence": 0.4509112286273005 + }, + { + "marker_id": 54, + "observed_center_px": [ + 709.25, + 434.25 + ], + "projected_center_px": [ + 710.0586547851562, + 430.8271789550781 + ], + "reprojection_error_px": 3.5170479762317965, + "confidence": 0.44042326304466006 + }, + { + "marker_id": 85, + "observed_center_px": [ + 555.0, + 319.75 + ], + "projected_center_px": [ + 556.587158203125, + 321.8631591796875 + ], + "reprojection_error_px": 2.642822899939481, + "confidence": 0.33473633767097827 + }, + { + "marker_id": 205, + "observed_center_px": [ + 148.25, + 284.75 + ], + "projected_center_px": [ + 149.84744262695312, + 286.7835693359375 + ], + "reprojection_error_px": 2.5859673606741804, + "confidence": 0.3904275743165678 + }, + { + "marker_id": 92, + "observed_center_px": [ + 328.75, + 309.5 + ], + "projected_center_px": [ + 328.0833435058594, + 312.3528137207031 + ], + "reprojection_error_px": 2.929671825684897, + "confidence": 0.38026711457279644 + }, + { + "marker_id": 105, + "observed_center_px": [ + 502.25, + 341.25 + ], + "projected_center_px": [ + 498.5203857421875, + 341.1575622558594 + ], + "reprojection_error_px": 3.730759607455309, + "confidence": 0.3931208602008742 + }, + { + "marker_id": 102, + "observed_center_px": [ + 359.0, + 279.5 + ], + "projected_center_px": [ + 359.4945373535156, + 281.3692626953125 + ], + "reprojection_error_px": 1.9335744666573331, + "confidence": 0.3834923705135548 + }, + { + "marker_id": 59, + "observed_center_px": [ + 425.5, + 258.75 + ], + "projected_center_px": [ + 428.2454833984375, + 258.3636779785156 + ], + "reprojection_error_px": 2.7725302154132963, + "confidence": 0.3475062428717297 + }, + { + "marker_id": 57, + "observed_center_px": [ + 521.0, + 213.25 + ], + "projected_center_px": [ + 521.8204956054688, + 214.8630828857422 + ], + "reprojection_error_px": 1.8097650220036505, + "confidence": 0.3370835485575886 + }, + { + "marker_id": 48, + "observed_center_px": [ + 415.25, + 187.5 + ], + "projected_center_px": [ + 416.5931396484375, + 185.31541442871094 + ], + "reprojection_error_px": 2.564456713124472, + "confidence": 0.3157717646545193 + }, + { + "marker_id": 63, + "observed_center_px": [ + 275.75, + 183.25 + ], + "projected_center_px": [ + 273.6121826171875, + 182.2046661376953 + ], + "reprojection_error_px": 2.379702932287163, + "confidence": 0.32781322776968225 + }, + { + "marker_id": 65, + "observed_center_px": [ + 310.75, + 124.25 + ], + "projected_center_px": [ + 308.9479675292969, + 123.33204650878906 + ], + "reprojection_error_px": 2.022364862603867, + "confidence": 0.323424516536529 + }, + { + "marker_id": 71, + "observed_center_px": [ + 337.25, + 166.0 + ], + "projected_center_px": [ + 337.3795471191406, + 168.51844787597656 + ], + "reprojection_error_px": 2.52177757942458, + "confidence": 0.2963584890699928 + }, + { + "marker_id": 87, + "observed_center_px": [ + 161.5, + 66.0 + ], + "projected_center_px": [ + 160.9746551513672, + 64.77437591552734 + ], + "reprojection_error_px": 1.33346976209604, + "confidence": 0.27798930354872264 + }, + { + "marker_id": 80, + "observed_center_px": [ + 299.25, + 56.5 + ], + "projected_center_px": [ + 298.39697265625, + 58.612037658691406 + ], + "reprojection_error_px": 2.277796900716975, + "confidence": 0.24658567276025462 + }, + { + "marker_id": 78, + "observed_center_px": [ + 333.75, + 82.5 + ], + "projected_center_px": [ + 335.54010009765625, + 79.4444351196289 + ], + "reprojection_error_px": 3.5413182711789872, + "confidence": 0.29355437233363646 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/robot_state.eval.json b/data/camera_study/Scene10/k3_beg/robot_state.eval.json new file mode 100644 index 0000000..31571bc --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 120.37548008829184, + "gt": 120.0, + "error": 0.37548008829183743, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 60.02813121619397, + "gt": 60.0, + "error": 0.02813121619396952, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.86205745073617, + "gt": -110.0, + "error": 0.137942549263812, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "a", + "estimate": 19.961028290019488, + "gt": 20.0, + "error": 0.038971709980501146, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "b", + "estimate": 0.0, + "gt": 30.0, + "error": 30.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "c", + "estimate": 0.0, + "gt": 180.0, + "error": 180.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "e", + "estimate": 0.0, + "gt": 4.0, + "error": 4.0, + "unit": "mm", + "observable": false, + "n_markers": 0 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.06834849181276088, + "max_abs_deg": 0.137942549263812, + "mean_abs_mm": 0.37548008829183743, + "max_abs_mm": 0.37548008829183743 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_beg/robot_state.json b/data/camera_study/Scene10/k3_beg/robot_state.json new file mode 100644 index 0000000..970a68b --- /dev/null +++ b/data/camera_study/Scene10/k3_beg/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:53Z", + "method": "hybrid", + "movements": { + "x": { + "value": 120.37548008829184, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 60.02813121619397, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.86205745073617, + "unit": "deg", + "observable": true, + "confidence": "medium", + "n_markers": 1 + }, + "a": { + "value": 19.961028290019488, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "b": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "c": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "e": { + "value": 0.0, + "unit": "mm", + "observable": false, + "confidence": "none", + "n_markers": 0 + } + }, + "residual_rms": 1.770742480780729, + "num_markers": 23 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/aruco_marker_poses.json b/data/camera_study/Scene10/k3_cef/aruco_marker_poses.json new file mode 100644 index 0000000..2f9e55f --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/aruco_marker_poses.json @@ -0,0 +1,669 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:19:10Z", + "summary": { + "num_cameras": 3, + "num_markers": 14 + }, + "cameras": [ + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.30627874061044535, + -0.2024479501775244, + 0.02490867113543083 + ], + "position_mm": [ + 306.27874061044537, + -202.4479501775244, + 24.90867113543083 + ], + "normal": [ + 0.10774274837190172, + -0.9746691516570191, + 0.19598863482726736 + ], + "corners_m": [ + [ + 0.29290073767985364, + -0.20194182228134053, + 0.035613437490268414 + ], + [ + 0.31667438164545786, + -0.19854631406230183, + 0.03776464993565031 + ], + [ + 0.3196875506495991, + -0.20327582086089682, + 0.014252984580857643 + ], + [ + 0.2958522924668708, + -0.2060278435055585, + 0.01200361253494696 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.130737232384902 + }, + { + "marker_id": 45, + "link": "FingerB", + "position_m": [ + 0.35453041386340756, + -0.19993074993515453, + 0.01994433421750827 + ], + "position_mm": [ + 354.53041386340755, + -199.93074993515452, + 19.94433421750827 + ], + "normal": [ + 0.7845391013156591, + -0.6134528820597979, + -0.09040995520044212 + ], + "corners_m": [ + [ + 0.3583807462748322, + -0.1978308113206838, + 0.03697290617433989 + ], + [ + 0.36464284540629915, + -0.18599712219246078, + 0.015288064602151036 + ], + [ + 0.35083376428900714, + -0.2025524950699911, + 0.0034110197743016228 + ], + [ + 0.3442642994834916, + -0.21334257115748245, + 0.02410534631924053 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.737552031584258 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16811061010485806, + -0.1733849815321152, + -0.027571339882465837 + ], + "position_mm": [ + 168.11061010485807, + -173.3849815321152, + -27.571339882465836 + ], + "normal": [ + -0.006808305099773449, + 0.0014286921225075688, + 0.9999758026174871 + ], + "corners_m": [ + [ + 0.15592828065145872, + -0.18434147280992005, + -0.02763162667022281 + ], + [ + 0.1565253508269994, + -0.16119709591780068, + -0.027674537965899967 + ], + [ + 0.18046288751396589, + -0.1622593262233565, + -0.027496333447128724 + ], + [ + 0.17952592142700827, + -0.1857420311773836, + -0.027482861446611842 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.563725485722934 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.33951148216784577, + -0.32822688051036886, + -0.027977570091669214 + ], + "position_mm": [ + 339.51148216784577, + -328.22688051036886, + -27.977570091669214 + ], + "normal": [ + 0.03163638693581026, + 0.05895165625504107, + 0.9977594105025697 + ], + "corners_m": [ + [ + 0.327865046690233, + -0.3395822909650562, + -0.02703416333249037 + ], + [ + 0.32775713800464434, + -0.31687579832690943, + -0.028177634814200003 + ], + [ + 0.3510131671550386, + -0.31655128021110995, + -0.029127240387164657 + ], + [ + 0.3514105768214669, + -0.33989815253839983, + -0.027571241832821815 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.242251672611896 + }, + { + "marker_id": 58, + "link": "Board", + "position_m": [ + 0.047336861700937254, + -0.21643100832679277, + -0.027209077984690494 + ], + "position_mm": [ + 47.336861700937256, + -216.43100832679278, + -27.209077984690495 + ], + "normal": [ + 0.0013588198906133635, + -0.0036434141538534276, + 0.999992439542324 + ], + "corners_m": [ + [ + 0.035361871794753426, + -0.22834202681993007, + -0.027259175356223724 + ], + [ + 0.035636338795523775, + -0.20492512880256072, + -0.027128009198217347 + ], + [ + 0.059170172929795664, + -0.2045790098019498, + -0.027205336754186512 + ], + [ + 0.05917906328367614, + -0.22787786788273048, + -0.027243790630134396 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.51899761077337 + }, + { + "marker_id": 62, + "link": "Board", + "position_m": [ + 0.40220949700173025, + -0.17317235483066087, + -0.027821052839376182 + ], + "position_mm": [ + 402.20949700173026, + -173.17235483066088, + -27.821052839376183 + ], + "normal": [ + -0.000862606022259764, + -0.00901458539334854, + 0.9999589957398436 + ], + "corners_m": [ + [ + 0.3909174820686879, + -0.1851716932202503, + -0.028094810616444352 + ], + [ + 0.38988424659088694, + -0.16226388452025312, + -0.027575815762105355 + ], + [ + 0.41335360429422346, + -0.16080146679790683, + -0.02785248190488175 + ], + [ + 0.41468265505312274, + -0.18445237478423324, + -0.027761103074073267 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.480067655548915 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.019295995226067536, + -0.18908317231704055, + -0.026886827273300915 + ], + "position_mm": [ + -19.295995226067536, + -189.08317231704055, + -26.886827273300916 + ], + "normal": [ + -0.006578296524961398, + -0.005970322012047947, + 0.9999605398563997 + ], + "corners_m": [ + [ + -0.03115874300702659, + -0.20089619465711786, + -0.027059973406095738 + ], + [ + -0.030698654304655165, + -0.1771341298911751, + -0.02686556864261637 + ], + [ + -0.007599296097562615, + -0.1773431994189574, + -0.026764870702709966 + ], + [ + -0.007727287495025766, + -0.20095916530091187, + -0.026856896341781584 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.479187389961393 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10465909801282489, + -0.19050018203130686, + -0.027580714322921154 + ], + "position_mm": [ + 104.65909801282488, + -190.50018203130688, + -27.580714322921153 + ], + "normal": [ + -0.013133347235482564, + -0.0015286879870387573, + 0.9999125853310531 + ], + "corners_m": [ + [ + 0.09262505355541921, + -0.20219857778494604, + -0.027924319217480835 + ], + [ + 0.09293120022838401, + -0.17893679485133848, + -0.027543668833643273 + ], + [ + 0.11629477202709634, + -0.1786915884418234, + -0.027581613424266512 + ], + [ + 0.1167853662404, + -0.2021737670471195, + -0.027273255816294004 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.572555944026497 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.31034662707489735, + -0.15635237158087367, + 0.1570810626993659 + ], + "position_mm": [ + 310.34662707489736, + -156.35237158087367, + 157.0810626993659 + ], + "normal": [ + -0.35206906062659116, + -0.741310523076759, + 0.5714071096207779 + ], + "corners_m": [ + [ + 0.29879887821261114, + -0.14573452627091252, + 0.16376634937049206 + ], + [ + 0.3214049869039743, + -0.1521349367086835, + 0.16934045955538704 + ], + [ + 0.3219012237910287, + -0.16693414093137918, + 0.15049774076070763 + ], + [ + 0.29928141939197533, + -0.1606058824125195, + 0.14471970111087687 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.11744156038541 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.021892093009216525, + -0.020559375178687493, + 0.0014809771164032766 + ], + "position_mm": [ + 21.892093009216524, + -20.559375178687493, + 1.4809771164032766 + ], + "normal": [ + -0.00829379625146859, + 0.010414422804847947, + 0.9999113724432687 + ], + "corners_m": [ + [ + 0.00958904812178603, + -0.009087623290963355, + 0.0011313342853706083 + ], + [ + 0.0334326887857314, + -0.008865751099244649, + 0.0015843141137006926 + ], + [ + 0.03424082308685001, + -0.03191652652817047, + 0.0015727962576019487 + ], + [ + 0.010305812042498669, + -0.0323675997963715, + 0.001635463808939857 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.537430428378414 + }, + { + "marker_id": 219, + "link": "Arm2", + "position_m": [ + 0.353296522983271, + -0.16754703618556033, + 0.116391390986823 + ], + "position_mm": [ + 353.296522983271, + -167.54703618556033, + 116.391390986823 + ], + "normal": [ + 0.9429348319065125, + -0.27723367740171956, + 0.1844326188388501 + ], + "corners_m": [ + [ + 0.34938012387506767, + -0.16821330519460226, + 0.1366115264200989 + ], + [ + 0.3577197898558521, + -0.15126903452003512, + 0.11694241305157758 + ], + [ + 0.3574201486189585, + -0.16690238097006818, + 0.0976604830405311 + ], + [ + 0.3486660295832058, + -0.18380342405753586, + 0.11435114143508439 + ] + ], + "num_cameras": 2, + "edge_length_mm": 26.14854433521585 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.23007004103264184, + -0.039125012809118884, + 0.3077395317766217 + ], + "position_mm": [ + 230.07004103264183, + -39.125012809118886, + 307.73953177662173 + ], + "normal": [ + 0.010300455601001792, + -0.5001742609246566, + 0.8658635050184789 + ], + "corners_m": [ + [ + 0.21843943584451833, + -0.02897234074413081, + 0.31385066872768125 + ], + [ + 0.24180645290747713, + -0.028825738996379233, + 0.3134428871089034 + ], + [ + 0.24183429613618018, + -0.049513497129538245, + 0.30170387290001627 + ], + [ + 0.21819997924239165, + -0.04918847436642726, + 0.30196069836988587 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.56248652540642 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3200092116819535, + -0.04761511590718486, + 0.299102053137564 + ], + "position_mm": [ + 320.0092116819535, + -47.61511590718486, + 299.102053137564 + ], + "normal": [ + -0.04020259360653547, + -0.7669711412278505, + 0.6404209709175336 + ], + "corners_m": [ + [ + 0.30770530558703435, + -0.04019473631062422, + 0.3074462751545289 + ], + [ + 0.33176337288245605, + -0.04062679003190598, + 0.3079957532010715 + ], + [ + 0.33251001863986285, + -0.05580155859916461, + 0.2902926915392687 + ], + [ + 0.30805814961846084, + -0.053837378687044635, + 0.290673492655387 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.388489110898014 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.2817592583542392, + -0.04361698425213553, + 0.30361402598517373 + ], + "position_mm": [ + 281.7592583542392, + -43.61698425213553, + 303.6140259851737 + ], + "normal": [ + -0.00539313482551296, + -0.7717319978386132, + 0.6359250251474434 + ], + "corners_m": [ + [ + 0.26940274313702545, + -0.036216109978604846, + 0.31259765143192925 + ], + [ + 0.29333220459915776, + -0.03575642363079036, + 0.3131428820549796 + ], + [ + 0.29425472780023126, + -0.05101253318180559, + 0.2948523145502718 + ], + [ + 0.27004735788054246, + -0.05148287021734133, + 0.2938632559035144 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.04593987411097 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/aruco_positions_initial.json b/data/camera_study/Scene10/k3_cef/aruco_positions_initial.json new file mode 100644 index 0000000..38beef4 --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/aruco_positions_initial.json @@ -0,0 +1,334 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:19:09Z", + "summary": { + "num_cameras": 3, + "num_markers": 14, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3062805662542438, + -0.2023726992378452, + 0.024887344814375448 + ], + "position_mm": [ + 306.2805662542438, + -202.3726992378452, + 24.88734481437545 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.3544632515108612, + -0.1998865406173633, + 0.019945246703772904 + ], + "position_mm": [ + 354.4632515108612, + -199.8865406173633, + 19.945246703772906 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.1681080245114533, + -0.17338209734396196, + -0.027665654811361316 + ], + "position_mm": [ + 168.1080245114533, + -173.38209734396196, + -27.665654811361318 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.33952290427782084, + -0.32824329387678847, + -0.028018696911322458 + ], + "position_mm": [ + 339.5229042778208, + -328.24329387678847, + -28.018696911322458 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.04730748420954963, + -0.21643106768910866, + -0.02731427763285767 + ], + "position_mm": [ + 47.30748420954963, + -216.43106768910866, + -27.31427763285767 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.40224108783950074, + -0.17317266047438684, + -0.027915283076296118 + ], + "position_mm": [ + 402.2410878395007, + -173.17266047438684, + -27.915283076296117 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.0193340456258843, + -0.18908183378146987, + -0.0269886851594388 + ], + "position_mm": [ + -19.3340456258843, + -189.08183378146987, + -26.988685159438802 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.104643992349152, + -0.19049889834733683, + -0.02767913014219985 + ], + "position_mm": [ + 104.643992349152, + -190.49889834733682, + -27.67913014219985 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3104023247371725, + -0.156306068910436, + 0.15701631582941594 + ], + "position_mm": [ + 310.4023247371725, + -156.306068910436, + 157.01631582941593 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021879164348029265, + -0.020554696828167546, + 0.0014186542106848566 + ], + "position_mm": [ + 21.879164348029263, + -20.554696828167547, + 1.4186542106848565 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3532496825723185, + -0.16754453874706673, + 0.1163962636425716 + ], + "position_mm": [ + 353.2496825723185, + -167.54453874706672, + 116.39626364257161 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23007529276737815, + -0.039070066670461895, + 0.30766836125299685 + ], + "position_mm": [ + 230.07529276737816, + -39.0700666704619, + 307.6683612529969 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32003366451689874, + -0.047550984998695776, + 0.29904813179015116 + ], + "position_mm": [ + 320.03366451689874, + -47.550984998695775, + 299.04813179015116 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2817741877107397, + -0.04353822356404724, + 0.30355372204569236 + ], + "position_mm": [ + 281.7741877107397, + -43.53822356404724, + 303.5537220456924 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/aruco_positions_optimized.json b/data/camera_study/Scene10/k3_cef/aruco_positions_optimized.json new file mode 100644 index 0000000..f7479b4 --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/aruco_positions_optimized.json @@ -0,0 +1,333 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:19:10Z", + "summary": { + "num_cameras": 3, + "num_markers": 14, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3062787233845976, + -0.2024230538408693, + 0.024789302553969658 + ], + "position_mm": [ + 306.2787233845976, + -202.4230538408693, + 24.78930255396966 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.35446046709676565, + -0.19993112744732655, + 0.019857617922673765 + ], + "position_mm": [ + 354.4604670967656, + -199.93112744732656, + 19.857617922673764 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16734247267901253, + -0.17385735540825206, + -0.027516544510875006 + ], + "position_mm": [ + 167.34247267901253, + -173.85735540825206, + -27.516544510875004 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3394596097104881, + -0.328333574366859, + -0.028009472576537606 + ], + "position_mm": [ + 339.4596097104881, + -328.333574366859, + -28.009472576537608 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.04903671540742669, + -0.2192159822222692, + -0.02521712431483487 + ], + "position_mm": [ + 49.03671540742669, + -219.21598222226922, + -25.21712431483487 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.40241347303811903, + -0.17320426077354706, + -0.02791730975892443 + ], + "position_mm": [ + 402.41347303811904, + -173.20426077354705, + -27.917309758924432 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.021184172953033698, + -0.1869137831534417, + -0.028480777143359604 + ], + "position_mm": [ + -21.1841729530337, + -186.9137831534417, + -28.480777143359603 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10553554719130112, + -0.1905719394747788, + -0.027485582154653194 + ], + "position_mm": [ + 105.53554719130112, + -190.5719394747788, + -27.485582154653194 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31176674771472984, + -0.1563780324702152, + 0.15680834030077126 + ], + "position_mm": [ + 311.76674771472983, + -156.3780324702152, + 156.80834030077125 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.0216052901956493, + -0.01936577179635719, + 0.0008965242621090869 + ], + "position_mm": [ + 21.605290195649303, + -19.36577179635719, + 0.896524262109087 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3534017845270041, + -0.16736096623755142, + 0.11639755577665035 + ], + "position_mm": [ + 353.4017845270041, + -167.36096623755142, + 116.39755577665035 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23061320547042344, + -0.0390087713208665, + 0.3075312163048041 + ], + "position_mm": [ + 230.61320547042345, + -39.0087713208665, + 307.5312163048041 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3206623858401159, + -0.04737259117302177, + 0.2988500595626523 + ], + "position_mm": [ + 320.6623858401159, + -47.37259117302177, + 298.8500595626523 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2835990470750743, + -0.043779407196596, + 0.3032833715815786 + ], + "position_mm": [ + 283.5990470750743, + -43.779407196596004, + 303.2833715815786 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/render_c_aruco_detection.json b/data/camera_study/Scene10/k3_cef/render_c_aruco_detection.json new file mode 100644 index 0000000..f921a74 --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/render_c_aruco_detection.json @@ -0,0 +1,1590 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:07Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "c", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.npz", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.png", + "image_sha256": "ef5a04a35de56c777fd09b581d604f04ac76571a3cacba21fe8388dea1f4b077", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 16, + "num_rejected_candidates": 27 + }, + "detections": [ + { + "observation_id": "14fe6709-4333-4f64-87d6-58d5c0616b1d", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 906.0 + ], + [ + 962.0, + 900.0 + ], + [ + 968.0, + 961.0 + ], + [ + 906.0, + 967.0 + ] + ], + "center_px": [ + 934.0, + 933.5 + ], + "quality": { + "area_px": 3818.0, + "perimeter_px": 247.16803741455078, + "sharpness": { + "laplacian_var": 454.5613926289 + }, + "contrast": { + "p05": 15.0, + "p95": 169.0, + "dynamic_range": 154.0, + "mean_gray": 63.889708737864076, + "std_gray": 64.10002098444608 + }, + "geometry": { + "distance_to_center_norm": 0.4976962208747864, + "distance_to_border_px": 113.0 + }, + "edge_ratio": 1.0162376014068253, + "edge_lengths_px": [ + 62.28964614868164, + 61.29437255859375, + 62.28964614868164, + 61.29437255859375 + ] + }, + "confidence": 0.9840218454972077 + }, + { + "observation_id": "9e3ccccf-a901-41bc-858b-d2141beb1312", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 930.0, + 548.0 + ], + [ + 989.0, + 541.0 + ], + [ + 989.0, + 599.0 + ], + [ + 930.0, + 606.0 + ] + ], + "center_px": [ + 959.5, + 573.5 + ], + "quality": { + "area_px": 3422.0, + "perimeter_px": 234.82760620117188, + "sharpness": { + "laplacian_var": 615.7225970995563 + }, + "contrast": { + "p05": 62.0, + "p95": 187.0, + "dynamic_range": 125.0, + "mean_gray": 96.38732088580113, + "std_gray": 49.78957244242085 + }, + "geometry": { + "distance_to_center_norm": 0.2687017321586609, + "distance_to_border_px": 451.0 + }, + "edge_ratio": 1.0243759155273438, + "edge_lengths_px": [ + 59.41380310058594, + 58.0, + 59.41380310058594, + 58.0 + ] + }, + "confidence": 0.976204130575644 + }, + { + "observation_id": "9d92adc6-7399-4727-a6bb-3fdae6a83372", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 876.0, + 137.0 + ], + [ + 933.0, + 136.0 + ], + [ + 934.0, + 184.0 + ], + [ + 876.0, + 186.0 + ] + ], + "center_px": [ + 904.75, + 160.75 + ], + "quality": { + "area_px": 2789.5, + "perimeter_px": 212.05365753173828, + "sharpness": { + "laplacian_var": 1207.1695390581717 + }, + "contrast": { + "p05": 35.0, + "p95": 183.0, + "dynamic_range": 148.0, + "mean_gray": 111.8242105263158, + "std_gray": 63.973025920534376 + }, + "geometry": { + "distance_to_center_norm": 0.46872973442077637, + "distance_to_border_px": 136.0 + }, + "edge_ratio": 1.2087892695501747, + "edge_lengths_px": [ + 57.00876998901367, + 48.010414123535156, + 58.03447341918945, + 49.0 + ] + }, + "confidence": 0.8272740544529559 + }, + { + "observation_id": "d662cef9-ac90-44b2-94d5-084c11951ed3", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 967.0, + 151.0 + ], + [ + 1024.0, + 150.0 + ], + [ + 1025.0, + 197.0 + ], + [ + 966.0, + 195.0 + ] + ], + "center_px": [ + 995.5, + 173.25 + ], + "quality": { + "area_px": 2639.0, + "perimeter_px": 207.06465911865234, + "sharpness": { + "laplacian_var": 866.93707361974 + }, + "contrast": { + "p05": 32.0, + "p95": 181.0, + "dynamic_range": 149.0, + "mean_gray": 84.58143413007227, + "std_gray": 62.405948444667175 + }, + "geometry": { + "distance_to_center_norm": 0.5096668004989624, + "distance_to_border_px": 150.0 + }, + "edge_ratio": 1.3413328837775513, + "edge_lengths_px": [ + 57.00876998901367, + 47.01063537597656, + 59.03388977050781, + 44.0113639831543 + ] + }, + "confidence": 0.745527088834006 + }, + { + "observation_id": "42b219e4-51ce-48d2-9926-ca7ccda32ed9", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 806.0, + 242.0 + ], + [ + 809.0, + 286.0 + ], + [ + 756.0, + 287.0 + ], + [ + 750.0, + 243.0 + ] + ], + "center_px": [ + 780.25, + 264.5 + ], + "quality": { + "area_px": 2402.5, + "perimeter_px": 197.5277214050293, + "sharpness": { + "laplacian_var": 621.9365906774973 + }, + "contrast": { + "p05": 17.0, + "p95": 154.0, + "dynamic_range": 137.0, + "mean_gray": 67.55327102803739, + "std_gray": 57.80557538313361 + }, + "geometry": { + "distance_to_center_norm": 0.3133457899093628, + "distance_to_border_px": 242.0 + }, + "edge_ratio": 1.2699816583435075, + "edge_lengths_px": [ + 44.10215377807617, + 53.00943374633789, + 44.40720748901367, + 56.00892639160156 + ] + }, + "confidence": 0.7874129468171561 + }, + { + "observation_id": "4dde33ec-00d7-4926-ad45-0cd757dd9d64", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 907.0 + ], + [ + 1083.0, + 943.0 + ], + [ + 1048.0, + 989.0 + ], + [ + 1034.0, + 955.0 + ] + ], + "center_px": [ + 1059.0, + 948.5 + ], + "quality": { + "area_px": 1871.0, + "perimeter_px": 193.12355041503906, + "sharpness": { + "laplacian_var": 160.55753056192668 + }, + "contrast": { + "p05": 14.0, + "p95": 100.0, + "dynamic_range": 86.0, + "mean_gray": 57.872306464485234, + "std_gray": 34.11093550486432 + }, + "geometry": { + "distance_to_center_norm": 0.5898244976997375, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.648246307313746, + "edge_lengths_px": [ + 37.947330474853516, + 57.80138397216797, + 36.769554138183594, + 60.605281829833984 + ] + }, + "confidence": 0.606705439328279 + }, + { + "observation_id": "620f7b17-e66e-4d24-892b-9cc860f0f3cf", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 244.0, + 1048.0 + ], + [ + 264.0, + 1017.0 + ], + [ + 321.0, + 1020.0 + ], + [ + 304.0, + 1051.0 + ] + ], + "center_px": [ + 283.25, + 1034.0 + ], + "quality": { + "area_px": 1869.0, + "perimeter_px": 189.40092086791992, + "sharpness": { + "laplacian_var": 1265.0345875985527 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 76.71025841816758, + "std_gray": 66.37082174674407 + }, + "geometry": { + "distance_to_center_norm": 0.7326483130455017, + "distance_to_border_px": 29.0 + }, + "edge_ratio": 1.6991763224534673, + "edge_lengths_px": [ + 36.8917350769043, + 57.07889175415039, + 35.35533905029297, + 60.074954986572266 + ] + }, + "confidence": 0.34134185624863755 + }, + { + "observation_id": "46768167-cf29-4f2f-81fe-edc0f681b248", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1145.0, + 1043.0 + ], + [ + 1138.0, + 1012.0 + ], + [ + 1196.0, + 1014.0 + ], + [ + 1207.0, + 1045.0 + ] + ], + "center_px": [ + 1171.5, + 1028.5 + ], + "quality": { + "area_px": 1842.0, + "perimeter_px": 184.74098777770996, + "sharpness": { + "laplacian_var": 687.4367780505567 + }, + "contrast": { + "p05": 12.0, + "p95": 150.0, + "dynamic_range": 138.0, + "mean_gray": 38.430939226519335, + "std_gray": 45.8298447545998 + }, + "geometry": { + "distance_to_center_norm": 0.7391056418418884, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.9518967949661667, + "edge_lengths_px": [ + 31.78049659729004, + 58.03447341918945, + 32.893768310546875, + 62.032249450683594 + ] + }, + "confidence": 0.3586255184214969 + }, + { + "observation_id": "6bc89cb1-b7bf-4542-bf26-d49cfcc72538", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1069.0, + 1053.0 + ], + [ + 1066.0, + 1021.0 + ], + [ + 1125.0, + 1025.0 + ], + [ + 1130.0, + 1056.0 + ] + ], + "center_px": [ + 1097.5, + 1038.75 + ], + "quality": { + "area_px": 1876.0, + "perimeter_px": 183.7501163482666, + "sharpness": { + "laplacian_var": 663.3293461676229 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 73.64136328427576, + "std_gray": 59.64429126415427 + }, + "geometry": { + "distance_to_center_norm": 0.6950067281723022, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.9449837049520267, + "edge_lengths_px": [ + 32.140316009521484, + 59.13543701171875, + 31.400636672973633, + 61.073726654052734 + ] + }, + "confidence": 0.24678869996591526 + }, + { + "observation_id": "da827211-4c73-4ffa-b2a3-acc1f25e178d", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 110.0, + 1003.0 + ], + [ + 134.0, + 974.0 + ], + [ + 187.0, + 977.0 + ], + [ + 166.0, + 1006.0 + ] + ], + "center_px": [ + 149.25, + 990.0 + ], + "quality": { + "area_px": 1648.0, + "perimeter_px": 182.61322402954102, + "sharpness": { + "laplacian_var": 1879.918969718065 + }, + "contrast": { + "p05": 12.0, + "p95": 173.0, + "dynamic_range": 161.0, + "mean_gray": 75.38733031674208, + "std_gray": 68.98136821451206 + }, + "geometry": { + "distance_to_center_norm": 0.8075687885284424, + "distance_to_border_px": 74.0 + }, + "edge_ratio": 1.5662688751728226, + "edge_lengths_px": [ + 37.64305877685547, + 53.0848388671875, + 35.80502700805664, + 56.080299377441406 + ] + }, + "confidence": 0.6384599833726886 + }, + { + "observation_id": "0c7cfa66-07e9-4fb6-8817-3c859ee613e4", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 403.0, + 1023.0 + ], + [ + 418.0, + 993.0 + ], + [ + 474.0, + 996.0 + ], + [ + 462.0, + 1025.0 + ] + ], + "center_px": [ + 439.25, + 1009.25 + ], + "quality": { + "area_px": 1730.0, + "perimeter_px": 180.03991889953613, + "sharpness": { + "laplacian_var": 950.8899639839916 + }, + "contrast": { + "p05": 20.0, + "p95": 172.0, + "dynamic_range": 152.0, + "mean_gray": 116.20102214650767, + "std_gray": 61.636543611115094 + }, + "geometry": { + "distance_to_center_norm": 0.6075818538665771, + "distance_to_border_px": 55.0 + }, + "edge_ratio": 1.8809760926212427, + "edge_lengths_px": [ + 33.541019439697266, + 56.080299377441406, + 31.38471031188965, + 59.03388977050781 + ] + }, + "confidence": 0.5316388676723932 + }, + { + "observation_id": "39dafa9b-f201-4ddd-93e5-43839e3b628f", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 564.0, + 1008.0 + ], + [ + 576.0, + 980.0 + ], + [ + 632.0, + 984.0 + ], + [ + 622.0, + 1013.0 + ] + ], + "center_px": [ + 598.5, + 996.25 + ], + "quality": { + "area_px": 1674.0, + "perimeter_px": 175.49660873413086, + "sharpness": { + "laplacian_var": 1393.7942302804506 + }, + "contrast": { + "p05": 28.0, + "p95": 171.0, + "dynamic_range": 143.0, + "mean_gray": 84.15052816901408, + "std_gray": 59.917896140385736 + }, + "geometry": { + "distance_to_center_norm": 0.5246118903160095, + "distance_to_border_px": 67.0 + }, + "edge_ratio": 1.9110048603024625, + "edge_lengths_px": [ + 30.463092803955078, + 56.14267349243164, + 30.675724029541016, + 58.215118408203125 + ] + }, + "confidence": 0.5232849066860699 + }, + { + "observation_id": "9adcde8d-c098-4cdf-88be-20d4545b275d", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 760.0, + 132.0 + ], + [ + 813.0, + 133.0 + ], + [ + 809.0, + 166.0 + ], + [ + 754.0, + 165.0 + ] + ], + "center_px": [ + 784.0, + 149.0 + ], + "quality": { + "area_px": 1787.0, + "perimeter_px": 174.80108261108398, + "sharpness": { + "laplacian_var": 1005.8917346464419 + }, + "contrast": { + "p05": 15.0, + "p95": 180.0, + "dynamic_range": 165.0, + "mean_gray": 83.3435684647303, + "std_gray": 70.8540535076814 + }, + "geometry": { + "distance_to_center_norm": 0.4402258098125458, + "distance_to_border_px": 132.0 + }, + "edge_ratio": 1.6548298326729072, + "edge_lengths_px": [ + 53.00943374633789, + 33.241539001464844, + 55.009090423583984, + 33.541019439697266 + ] + }, + "confidence": 0.6042917406104434 + }, + { + "observation_id": "0c032357-2f43-4e3b-8862-5fb5f27373ae", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 760.0 + ], + [ + 387.0, + 761.0 + ], + [ + 376.0, + 780.0 + ], + [ + 327.0, + 778.0 + ] + ], + "center_px": [ + 357.5, + 769.75 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 140.20953559875488, + "sharpness": { + "laplacian_var": 1714.673355751594 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 84.31152647975078, + "std_gray": 58.656873492799065 + }, + "geometry": { + "distance_to_center_norm": 0.47686126828193665, + "distance_to_border_px": 300.0 + }, + "edge_ratio": 2.233747159110654, + "edge_lengths_px": [ + 47.01063537597656, + 21.954498291015625, + 49.04079818725586, + 22.203603744506836 + ] + }, + "confidence": 0.27039765782644665 + }, + { + "observation_id": "cc461b80-740d-42ae-9e38-7c728161017f", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 808.0, + 771.0 + ], + [ + 855.0, + 774.0 + ], + [ + 851.0, + 794.0 + ], + [ + 801.0, + 790.0 + ] + ], + "center_px": [ + 828.75, + 782.25 + ], + "quality": { + "area_px": 965.0, + "perimeter_px": 137.8999252319336, + "sharpness": { + "laplacian_var": 980.8435808712625 + }, + "contrast": { + "p05": 19.0, + "p95": 166.0, + "dynamic_range": 147.0, + "mean_gray": 88.28657616892912, + "std_gray": 59.05852033640571 + }, + "geometry": { + "distance_to_center_norm": 0.2950447201728821, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 2.4772131710716905, + "edge_lengths_px": [ + 47.095645904541016, + 20.39607810974121, + 50.15974426269531, + 20.248456954956055 + ] + }, + "confidence": 0.25970043306972035 + }, + { + "observation_id": "b4acfabe-7328-449b-ba5e-58787400f6db", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1385.0, + 700.0 + ], + [ + 1377.0, + 686.0 + ], + [ + 1418.0, + 688.0 + ], + [ + 1428.0, + 701.0 + ] + ], + "center_px": [ + 1402.0, + 693.75 + ], + "quality": { + "area_px": 553.5, + "perimeter_px": 116.58611488342285, + "sharpness": { + "laplacian_var": 1051.381376540531 + }, + "contrast": { + "p05": 12.0, + "p95": 126.0, + "dynamic_range": 114.0, + "mean_gray": 64.25196850393701, + "std_gray": 39.063170154625084 + }, + "geometry": { + "distance_to_center_norm": 0.7767954468727112, + "distance_to_border_px": 12.0 + }, + "edge_ratio": 2.6674678757353125, + "edge_lengths_px": [ + 16.124515533447266, + 41.04875183105469, + 16.401220321655273, + 43.011627197265625 + ] + }, + "confidence": 0.03320002493960217 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 975.0, + 684.0 + ], + [ + 987.0, + 688.0 + ], + [ + 989.0, + 763.0 + ], + [ + 968.0, + 765.0 + ] + ], + "center_px": [ + 979.75, + 725.0 + ], + "area_px": 1289.5 + }, + { + "image_points_px": [ + [ + 790.0, + 489.0 + ], + [ + 804.0, + 493.0 + ], + [ + 807.0, + 565.0 + ], + [ + 793.0, + 568.0 + ] + ], + "center_px": [ + 798.5, + 528.75 + ], + "area_px": 1055.5 + }, + { + "image_points_px": [ + [ + 536.0, + 599.0 + ], + [ + 540.0, + 677.0 + ], + [ + 531.0, + 664.0 + ], + [ + 529.0, + 604.0 + ] + ], + "center_px": [ + 534.0, + 636.0 + ], + "area_px": 540.0 + }, + { + "image_points_px": [ + [ + 782.0, + 864.0 + ], + [ + 789.0, + 841.0 + ], + [ + 842.0, + 845.0 + ], + [ + 837.0, + 868.0 + ] + ], + "center_px": [ + 812.5, + 854.5 + ], + "area_px": 1266.0 + }, + { + "image_points_px": [ + [ + 1232.0, + 678.0 + ], + [ + 1273.0, + 679.0 + ], + [ + 1279.0, + 694.0 + ], + [ + 1237.0, + 692.0 + ] + ], + "center_px": [ + 1255.25, + 685.75 + ], + "area_px": 593.5 + }, + { + "image_points_px": [ + [ + 1154.0, + 689.0 + ], + [ + 1194.0, + 690.0 + ], + [ + 1201.0, + 704.0 + ], + [ + 1160.0, + 703.0 + ] + ], + "center_px": [ + 1177.25, + 696.5 + ], + "area_px": 560.5 + }, + { + "image_points_px": [ + [ + 425.0, + 674.0 + ], + [ + 435.0, + 661.0 + ], + [ + 473.0, + 663.0 + ], + [ + 462.0, + 676.0 + ] + ], + "center_px": [ + 448.75, + 668.5 + ], + "area_px": 508.5 + }, + { + "image_points_px": [ + [ + 1281.0, + 650.0 + ], + [ + 1319.0, + 651.0 + ], + [ + 1327.0, + 663.0 + ], + [ + 1288.0, + 663.0 + ] + ], + "center_px": [ + 1303.75, + 656.75 + ], + "area_px": 477.5 + }, + { + "image_points_px": [ + [ + 1068.0, + 669.0 + ], + [ + 1077.0, + 679.0 + ], + [ + 1075.0, + 717.0 + ], + [ + 1068.0, + 710.0 + ] + ], + "center_px": [ + 1072.0, + 693.75 + ], + "area_px": 324.5 + }, + { + "image_points_px": [ + [ + 784.0, + 627.0 + ], + [ + 788.0, + 615.0 + ], + [ + 824.0, + 619.0 + ], + [ + 820.0, + 629.0 + ] + ], + "center_px": [ + 804.0, + 622.5 + ], + "area_px": 408.0 + }, + { + "image_points_px": [ + [ + 426.0, + 594.0 + ], + [ + 434.0, + 583.0 + ], + [ + 467.0, + 585.0 + ], + [ + 462.0, + 595.0 + ] + ], + "center_px": [ + 447.25, + 589.25 + ], + "area_px": 372.0 + }, + { + "image_points_px": [ + [ + 978.0, + 308.0 + ], + [ + 1021.0, + 310.0 + ], + [ + 1019.0, + 316.0 + ], + [ + 991.0, + 314.0 + ] + ], + "center_px": [ + 1002.25, + 312.0 + ], + "area_px": 202.0 + }, + { + "image_points_px": [ + [ + 936.0, + 582.0 + ], + [ + 951.0, + 580.0 + ], + [ + 965.0, + 595.0 + ], + [ + 937.0, + 600.0 + ] + ], + "center_px": [ + 947.25, + 589.25 + ], + "area_px": 381.0 + }, + { + "image_points_px": [ + [ + 120.0, + 998.0 + ], + [ + 124.0, + 993.0 + ], + [ + 158.0, + 996.0 + ], + [ + 153.0, + 1001.0 + ] + ], + "center_px": [ + 138.75, + 997.0 + ], + "area_px": 181.0 + }, + { + "image_points_px": [ + [ + 734.0, + 639.0 + ], + [ + 730.0, + 666.0 + ], + [ + 725.0, + 676.0 + ], + [ + 729.0, + 642.0 + ] + ], + "center_px": [ + 729.5, + 655.75 + ], + "area_px": 126.5 + }, + { + "image_points_px": [ + [ + 1360.0, + 644.0 + ], + [ + 1390.0, + 645.0 + ], + [ + 1394.0, + 648.0 + ], + [ + 1366.0, + 647.0 + ] + ], + "center_px": [ + 1377.5, + 646.0 + ], + "area_px": 82.0 + }, + { + "image_points_px": [ + [ + 339.0, + 768.0 + ], + [ + 354.0, + 762.0 + ], + [ + 372.0, + 767.0 + ], + [ + 366.0, + 771.0 + ] + ], + "center_px": [ + 357.75, + 767.0 + ], + "area_px": 154.5 + }, + { + "image_points_px": [ + [ + 732.0, + 273.0 + ], + [ + 735.0, + 284.0 + ], + [ + 735.0, + 305.0 + ], + [ + 732.0, + 301.0 + ] + ], + "center_px": [ + 733.5, + 290.75 + ], + "area_px": 73.5 + }, + { + "image_points_px": [ + [ + 990.0, + 337.0 + ], + [ + 996.0, + 351.0 + ], + [ + 997.0, + 366.0 + ], + [ + 991.0, + 364.0 + ] + ], + "center_px": [ + 993.5, + 354.5 + ], + "area_px": 118.0 + }, + { + "image_points_px": [ + [ + 774.0, + 249.0 + ], + [ + 799.0, + 247.0 + ], + [ + 800.0, + 251.0 + ], + [ + 776.0, + 252.0 + ] + ], + "center_px": [ + 787.25, + 249.75 + ], + "area_px": 88.0 + }, + { + "image_points_px": [ + [ + 900.0, + 973.0 + ], + [ + 923.0, + 973.0 + ], + [ + 926.0, + 975.0 + ], + [ + 903.0, + 975.0 + ] + ], + "center_px": [ + 913.0, + 974.0 + ], + "area_px": 46.0 + }, + { + "image_points_px": [ + [ + 957.0, + 967.0 + ], + [ + 968.0, + 965.0 + ], + [ + 970.0, + 984.0 + ], + [ + 957.0, + 971.0 + ] + ], + "center_px": [ + 963.0, + 971.75 + ], + "area_px": 132.5 + }, + { + "image_points_px": [ + [ + 1374.0, + 718.0 + ], + [ + 1394.0, + 718.0 + ], + [ + 1398.0, + 721.0 + ], + [ + 1378.0, + 721.0 + ] + ], + "center_px": [ + 1386.0, + 719.5 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 999.0, + 762.0 + ], + [ + 1017.0, + 761.0 + ], + [ + 1023.0, + 763.0 + ], + [ + 1001.0, + 764.0 + ] + ], + "center_px": [ + 1010.0, + 762.5 + ], + "area_px": 44.0 + }, + { + "image_points_px": [ + [ + 565.0, + 1022.0 + ], + [ + 584.0, + 1021.0 + ], + [ + 588.0, + 1023.0 + ], + [ + 573.0, + 1024.0 + ] + ], + "center_px": [ + 577.5, + 1022.5 + ], + "area_px": 40.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 1023.0 + ], + [ + 1182.0, + 1022.0 + ], + [ + 1185.0, + 1028.0 + ], + [ + 1169.0, + 1029.0 + ] + ], + "center_px": [ + 1175.5, + 1025.5 + ], + "area_px": 99.0 + }, + { + "image_points_px": [ + [ + 222.0, + 1034.0 + ], + [ + 241.0, + 1035.0 + ], + [ + 244.0, + 1037.0 + ], + [ + 231.0, + 1037.0 + ] + ], + "center_px": [ + 234.5, + 1035.75 + ], + "area_px": 37.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/render_c_camera_pose.json b/data/camera_study/Scene10/k3_cef/render_c_camera_pose.json new file mode 100644 index 0000000..964169a --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/render_c_camera_pose.json @@ -0,0 +1,327 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:08Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_cef\\render_c_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "c", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 9, + "used_marker_ids": [ + 58, + 62, + 96, + 64, + 103, + 51, + 210, + 211, + 50 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.00850343514866048, + 0.001919637477748798, + 0.0018871327733089188, + 0.0018871325208839012 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.3388483305404, + "residual_median_px": 5.837108638574855, + "residual_max_px": 7.851369272055891, + "sigma2_normalized": 5.341903727059073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9935113787651062, + 0.11363770067691803, + -0.004644200671464205 + ], + [ + 0.029086070135235786, + -0.2933460772037506, + -0.9555637240409851 + ], + [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + ], + "translation_m": [ + -0.19824764132499695, + 0.1074121966958046, + 1.0073933601379395 + ], + "rvec_rad": [ + 1.86796171410195, + 0.10327005514572164, + -0.08291676493169096 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30460041761398315, + -0.9022090435028076, + 0.3986456096172333 + ], + "position_mm": [ + 304.60040283203125, + -902.2090454101562, + 398.6455993652344 + ], + "orientation_deg": { + "roll": 107.25025177001953, + "pitch": 6.31245756149292, + "yaw": 1.676913857460022 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 6.283611814350516e-05, + 9.967111903139419e-06, + 1.624804290129494e-05, + -1.577288611905233e-07, + -9.565179969225538e-06, + 1.214388304696983e-06 + ], + [ + 9.967111903139312e-06, + 2.0431750224389534e-05, + -7.770857724352742e-06, + 2.1849187906882535e-06, + -2.4827730156902525e-06, + 5.834590888095247e-06 + ], + [ + 1.6248042901295073e-05, + -7.770857724352725e-06, + 6.21251942958819e-05, + -3.1440970658187606e-06, + -8.329233497858997e-06, + -1.5661804579884994e-05 + ], + [ + -1.5772886119053934e-07, + 2.184918790688258e-06, + -3.14409706581878e-06, + 7.844339725202242e-07, + 9.395641917069299e-08, + 8.922273151494254e-07 + ], + [ + -9.56517996922555e-06, + -2.482773015690273e-06, + -8.329233497858978e-06, + 9.395641917068812e-08, + 3.1785216658280216e-06, + 3.2374032099410526e-06 + ], + [ + 1.2143883046968984e-06, + 5.834590888095236e-06, + -1.566180457988501e-05, + 8.922273151494167e-07, + 3.237403209941067e-06, + 1.5241091941001921e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.45417926818777943, + 0.2589854810186854, + 0.45160268193428 + ], + "tvec_std_m": [ + 0.0008856827719450255, + 0.0017828408975082497, + 0.0039039841112640202 + ] + }, + "camera_center_std_m": [ + 0.006432764403295309, + 0.003956846704431741, + 0.006949550969225763 + ], + "camera_center_std_mm": [ + 6.432764403295309, + 3.956846704431741, + 6.949550969225763 + ], + "orientation_std_deg": { + "roll": 0.42334339423542505, + "pitch": 0.36500393244331925, + "yaw": 0.2715300326454473 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 58, + "observed_center_px": [ + 283.25, + 1034.0 + ], + "projected_center_px": [ + 289.1312255859375, + 1036.682861328125 + ], + "reprojection_error_px": 6.4642524160675014, + "confidence": 0.34134185624863755 + }, + { + "marker_id": 62, + "observed_center_px": [ + 1171.5, + 1028.5 + ], + "projected_center_px": [ + 1177.343505859375, + 1029.8663330078125 + ], + "reprojection_error_px": 6.0011187804265225, + "confidence": 0.3586255184214969 + }, + { + "marker_id": 96, + "observed_center_px": [ + 1097.5, + 1038.75 + ], + "projected_center_px": [ + 1091.03857421875, + 1039.8277587890625 + ], + "reprojection_error_px": 6.550693637623701, + "confidence": 0.24678869996591526 + }, + { + "marker_id": 64, + "observed_center_px": [ + 149.25, + 990.0 + ], + "projected_center_px": [ + 146.69277954101562, + 989.6632080078125 + ], + "reprojection_error_px": 2.579303262869623, + "confidence": 0.6384599833726886 + }, + { + "marker_id": 103, + "observed_center_px": [ + 439.25, + 1009.25 + ], + "projected_center_px": [ + 443.3174743652344, + 1005.0634155273438 + ], + "reprojection_error_px": 5.837108638574855, + "confidence": 0.5316388676723932 + }, + { + "marker_id": 51, + "observed_center_px": [ + 598.5, + 996.25 + ], + "projected_center_px": [ + 598.08349609375, + 993.7927856445312 + ], + "reprojection_error_px": 2.492263608176955, + "confidence": 0.5232849066860699 + }, + { + "marker_id": 210, + "observed_center_px": [ + 357.5, + 769.75 + ], + "projected_center_px": [ + 354.4071044921875, + 771.2721557617188 + ], + "reprojection_error_px": 3.4471670666186647, + "confidence": 0.27039765782644665 + }, + { + "marker_id": 211, + "observed_center_px": [ + 828.75, + 782.25 + ], + "projected_center_px": [ + 820.9069213867188, + 782.6107177734375 + ], + "reprojection_error_px": 7.851369272055891, + "confidence": 0.25970043306972035 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1402.0, + 693.75 + ], + "projected_center_px": [ + 1405.9166259765625, + 693.873291015625 + ], + "reprojection_error_px": 3.918566027875248, + "confidence": 0.03320002493960217 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/render_e_aruco_detection.json b/data/camera_study/Scene10/k3_cef/render_e_aruco_detection.json new file mode 100644 index 0000000..519d7ea --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/render_e_aruco_detection.json @@ -0,0 +1,1199 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:07Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "e", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.npz", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.png", + "image_sha256": "d9465055b192acfccc2cb79885882693d4f0d01141ecc06177116dded5d564cb", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 12, + "num_rejected_candidates": 20 + }, + "detections": [ + { + "observation_id": "b39d0ab3-06b7-4565-8a1d-bf5f3605630b", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 986.0, + 1027.0 + ], + [ + 1024.0, + 1012.0 + ], + [ + 1062.0, + 1033.0 + ], + [ + 1026.0, + 1050.0 + ] + ], + "center_px": [ + 1024.5, + 1030.5 + ], + "quality": { + "area_px": 1438.0, + "perimeter_px": 170.22312927246094, + "sharpness": { + "laplacian_var": 453.1861132150195 + }, + "contrast": { + "p05": 14.0, + "p95": 153.0, + "dynamic_range": 139.0, + "mean_gray": 72.75522388059701, + "std_gray": 50.64349874612125 + }, + "geometry": { + "distance_to_center_norm": 0.6414783596992493, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1589726701270886, + "edge_lengths_px": [ + 40.853397369384766, + 43.416587829589844, + 39.81205749511719, + 46.14108657836914 + ] + }, + "confidence": 0.4963016081621025 + }, + { + "observation_id": "a1a2cc12-7ac5-4a33-bccc-b7ba64bcbf4c", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1277.0, + 1049.0 + ], + [ + 1308.0, + 1032.0 + ], + [ + 1355.0, + 1053.0 + ], + [ + 1324.0, + 1071.0 + ] + ], + "center_px": [ + 1316.0, + 1051.25 + ], + "quality": { + "area_px": 1489.0, + "perimeter_px": 174.5745086669922, + "sharpness": { + "laplacian_var": 412.816421944627 + }, + "contrast": { + "p05": 13.0, + "p95": 145.0, + "dynamic_range": 132.0, + "mean_gray": 61.47008547008547, + "std_gray": 49.57416295951042 + }, + "geometry": { + "distance_to_center_norm": 0.8724822998046875, + "distance_to_border_px": 9.0 + }, + "edge_ratio": 1.46778745364521, + "edge_lengths_px": [ + 35.35533905029297, + 51.4781494140625, + 35.84689712524414, + 51.89412307739258 + ] + }, + "confidence": 0.12173424671007582 + }, + { + "observation_id": "89565d0e-cac1-4906-a97f-2010601b0e81", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 780.0, + 466.0 + ], + [ + 811.0, + 497.0 + ], + [ + 790.0, + 533.0 + ], + [ + 759.0, + 507.0 + ] + ], + "center_px": [ + 785.0, + 500.75 + ], + "quality": { + "area_px": 1792.0, + "perimeter_px": 172.04298400878906, + "sharpness": { + "laplacian_var": 431.52108687263 + }, + "contrast": { + "p05": 4.0, + "p95": 86.0, + "dynamic_range": 82.0, + "mean_gray": 35.97742474916388, + "std_gray": 31.48995686460428 + }, + "geometry": { + "distance_to_center_norm": 0.08436811715364456, + "distance_to_border_px": 466.0 + }, + "edge_ratio": 1.138540089676814, + "edge_lengths_px": [ + 43.84062194824219, + 41.67733383178711, + 40.45985794067383, + 46.06517028808594 + ] + }, + "confidence": 0.8783177764815114 + }, + { + "observation_id": "e2d0e91e-b69b-4c85-8ade-f9e3fefd688e", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 777.0, + 986.0 + ], + [ + 818.0, + 973.0 + ], + [ + 849.0, + 994.0 + ], + [ + 809.0, + 1009.0 + ] + ], + "center_px": [ + 813.25, + 990.5 + ], + "quality": { + "area_px": 1332.0, + "perimeter_px": 162.58305740356445, + "sharpness": { + "laplacian_var": 675.3602149959689 + }, + "contrast": { + "p05": 19.700000000000003, + "p95": 154.0, + "dynamic_range": 134.3, + "mean_gray": 93.49617486338798, + "std_gray": 46.101180438545676 + }, + "geometry": { + "distance_to_center_norm": 0.5111664533615112, + "distance_to_border_px": 71.0 + }, + "edge_ratio": 1.1487138651855313, + "edge_lengths_px": [ + 43.011627197265625, + 37.44329071044922, + 42.72002029418945, + 39.408119201660156 + ] + }, + "confidence": 0.7730384623298485 + }, + { + "observation_id": "dde92b2e-7121-40c7-9000-9376349de5f0", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 749.0, + 642.0 + ], + [ + 771.0, + 676.0 + ], + [ + 734.0, + 695.0 + ], + [ + 713.0, + 662.0 + ] + ], + "center_px": [ + 741.75, + 668.75 + ], + "quality": { + "area_px": 1642.0, + "perimeter_px": 162.38792037963867, + "sharpness": { + "laplacian_var": 92.67615631030367 + }, + "contrast": { + "p05": 7.0, + "p95": 101.0, + "dynamic_range": 94.0, + "mean_gray": 53.06440071556351, + "std_gray": 38.78329965301281 + }, + "geometry": { + "distance_to_center_norm": 0.14508245885372162, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0633526883983422, + "edge_lengths_px": [ + 40.49691390991211, + 41.59326934814453, + 39.11521530151367, + 41.18252182006836 + ] + }, + "confidence": 0.7262889453443055 + }, + { + "observation_id": "76777954-691d-4106-aa06-93df0977668c", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 865.0, + 314.0 + ], + [ + 896.0, + 337.0 + ], + [ + 879.0, + 373.0 + ], + [ + 847.0, + 352.0 + ] + ], + "center_px": [ + 871.75, + 344.0 + ], + "quality": { + "area_px": 1550.5, + "perimeter_px": 158.7354850769043, + "sharpness": { + "laplacian_var": 91.32963410546913 + }, + "contrast": { + "p05": 3.0, + "p95": 80.0, + "dynamic_range": 77.0, + "mean_gray": 29.31711880261927, + "std_gray": 30.16374856556423 + }, + "geometry": { + "distance_to_center_norm": 0.27542126178741455, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0985563073040754, + "edge_lengths_px": [ + 38.60051727294922, + 39.81205749511719, + 38.27531814575195, + 42.04759216308594 + ] + }, + "confidence": 0.6668204157436237 + }, + { + "observation_id": "86d7bd50-415f-4f38-836b-1a80621e1945", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 934.0 + ], + [ + 1105.0, + 922.0 + ], + [ + 1141.0, + 939.0 + ], + [ + 1107.0, + 953.0 + ] + ], + "center_px": [ + 1106.0, + 937.0 + ], + "quality": { + "area_px": 1080.0, + "perimeter_px": 153.34338760375977, + "sharpness": { + "laplacian_var": 1315.6913698207666 + }, + "contrast": { + "p05": 34.0, + "p95": 156.0, + "dynamic_range": 122.0, + "mean_gray": 112.49931224209078, + "std_gray": 38.505501664035826 + }, + "geometry": { + "distance_to_center_norm": 0.6152436137199402, + "distance_to_border_px": 127.0 + }, + "edge_ratio": 1.128988685253164, + "edge_lengths_px": [ + 36.055511474609375, + 39.81205749511719, + 36.769554138183594, + 40.70626449584961 + ] + }, + "confidence": 0.6377388980107869 + }, + { + "observation_id": "61176163-c755-4d3a-995b-470d08e22511", + "type": "aruco", + "marker_id": 244, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 981.0, + 163.0 + ], + [ + 1000.0, + 190.0 + ], + [ + 982.0, + 224.0 + ], + [ + 962.0, + 201.0 + ] + ], + "center_px": [ + 981.25, + 194.5 + ], + "quality": { + "area_px": 1164.5, + "perimeter_px": 144.45070838928223, + "sharpness": { + "laplacian_var": 96.06874104557231 + }, + "contrast": { + "p05": 4.0, + "p95": 67.0, + "dynamic_range": 63.0, + "mean_gray": 33.3358024691358, + "std_gray": 25.95401112529325 + }, + "geometry": { + "distance_to_center_norm": 0.48128148913383484, + "distance_to_border_px": 163.0 + }, + "edge_ratio": 1.393897148047905, + "edge_lengths_px": [ + 33.0151481628418, + 38.470767974853516, + 30.479501724243164, + 42.48529052734375 + ] + }, + "confidence": 0.35113079528934743 + }, + { + "observation_id": "6ababfc8-6351-4b44-af7b-9b27b5903534", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 674.0, + 619.0 + ], + [ + 703.0, + 624.0 + ], + [ + 700.0, + 664.0 + ], + [ + 672.0, + 658.0 + ] + ], + "center_px": [ + 687.25, + 641.25 + ], + "quality": { + "area_px": 1139.5, + "perimeter_px": 137.22710990905762, + "sharpness": { + "laplacian_var": 863.1978615203191 + }, + "contrast": { + "p05": 32.0, + "p95": 169.0, + "dynamic_range": 137.0, + "mean_gray": 80.9662775616083, + "std_gray": 55.08560868618617 + }, + "geometry": { + "distance_to_center_norm": 0.11823874711990356, + "distance_to_border_px": 416.0 + }, + "edge_ratio": 1.4007837305049835, + "edge_lengths_px": [ + 29.42787742614746, + 40.112342834472656, + 28.635643005371094, + 39.051246643066406 + ] + }, + "confidence": 0.542315455357842 + }, + { + "observation_id": "64deb436-c5d8-4709-b081-cef7bad37655", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 517.0, + 788.0 + ], + [ + 550.0, + 780.0 + ], + [ + 575.0, + 794.0 + ], + [ + 540.0, + 802.0 + ] + ], + "center_px": [ + 545.5, + 791.0 + ], + "quality": { + "area_px": 668.0, + "perimeter_px": 125.43741798400879, + "sharpness": { + "laplacian_var": 1607.3082682839233 + }, + "contrast": { + "p05": 19.0, + "p95": 147.0, + "dynamic_range": 128.0, + "mean_gray": 65.39445628997868, + "std_gray": 47.873144952539 + }, + "geometry": { + "distance_to_center_norm": 0.33966439962387085, + "distance_to_border_px": 278.0 + }, + "edge_ratio": 1.3333908058760269, + "edge_lengths_px": [ + 33.95585250854492, + 28.65309715270996, + 35.902645111083984, + 26.925823211669922 + ] + }, + "confidence": 0.33398560374859715 + }, + { + "observation_id": "143d7faa-5047-490a-82b8-9c89e8b0f4b5", + "type": "aruco", + "marker_id": 114, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 846.0, + 444.0 + ], + [ + 854.0, + 462.0 + ], + [ + 835.0, + 496.0 + ], + [ + 827.0, + 477.0 + ] + ], + "center_px": [ + 840.5, + 469.75 + ], + "quality": { + "area_px": 619.5, + "perimeter_px": 117.34079360961914, + "sharpness": { + "laplacian_var": 515.9082048204126 + }, + "contrast": { + "p05": 13.0, + "p95": 77.0, + "dynamic_range": 64.0, + "mean_gray": 34.12249443207127, + "std_gray": 22.140483977294974 + }, + "geometry": { + "distance_to_center_norm": 0.15498033165931702, + "distance_to_border_px": 444.0 + }, + "edge_ratio": 1.977319866342296, + "edge_lengths_px": [ + 19.697715759277344, + 38.94868469238281, + 20.615528106689453, + 38.07886505126953 + ] + }, + "confidence": 0.16709486695806255 + }, + { + "observation_id": "9a4cefe1-579a-4fbb-a2c9-87e9c3ce9535", + "type": "aruco", + "marker_id": 120, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 904.0, + 345.0 + ], + [ + 911.0, + 366.0 + ], + [ + 893.0, + 397.0 + ], + [ + 885.0, + 381.0 + ] + ], + "center_px": [ + 898.25, + 372.25 + ], + "quality": { + "area_px": 593.5, + "perimeter_px": 116.57765007019043, + "sharpness": { + "laplacian_var": 612.2280321521758 + }, + "contrast": { + "p05": 13.75, + "p95": 72.0, + "dynamic_range": 58.25, + "mean_gray": 30.091743119266056, + "std_gray": 19.626461861945877 + }, + "geometry": { + "distance_to_center_norm": 0.27196842432022095, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 2.2755493296600644, + "edge_lengths_px": [ + 22.135944366455078, + 35.84689712524414, + 17.8885440826416, + 40.70626449584961 + ] + }, + "confidence": 0.12660450288269692 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 955.0, + 949.0 + ], + [ + 989.0, + 936.0 + ], + [ + 1024.0, + 953.0 + ], + [ + 991.0, + 967.0 + ] + ], + "center_px": [ + 989.75, + 951.25 + ], + "area_px": 1065.5 + }, + { + "image_points_px": [ + [ + 727.0, + 881.0 + ], + [ + 763.0, + 870.0 + ], + [ + 792.0, + 891.0 + ], + [ + 756.0, + 904.0 + ] + ], + "center_px": [ + 759.5, + 886.5 + ], + "area_px": 1140.0 + }, + { + "image_points_px": [ + [ + 818.0, + 869.0 + ], + [ + 850.0, + 858.0 + ], + [ + 887.0, + 875.0 + ], + [ + 849.0, + 885.0 + ] + ], + "center_px": [ + 851.0, + 871.75 + ], + "area_px": 934.5 + }, + { + "image_points_px": [ + [ + 1115.0, + 909.0 + ], + [ + 1146.0, + 897.0 + ], + [ + 1182.0, + 914.0 + ], + [ + 1154.0, + 927.0 + ] + ], + "center_px": [ + 1149.25, + 911.75 + ], + "area_px": 985.0 + }, + { + "image_points_px": [ + [ + 1244.0, + 805.0 + ], + [ + 1274.0, + 794.0 + ], + [ + 1312.0, + 812.0 + ], + [ + 1282.0, + 821.0 + ] + ], + "center_px": [ + 1278.0, + 808.0 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 891.0, + 399.0 + ], + [ + 918.0, + 457.0 + ], + [ + 898.0, + 447.0 + ], + [ + 884.0, + 415.0 + ] + ], + "center_px": [ + 897.75, + 429.5 + ], + "area_px": 669.0 + }, + { + "image_points_px": [ + [ + 495.0, + 791.0 + ], + [ + 459.0, + 801.0 + ], + [ + 438.0, + 784.0 + ], + [ + 473.0, + 774.0 + ] + ], + "center_px": [ + 466.25, + 787.5 + ], + "area_px": 818.5 + }, + { + "image_points_px": [ + [ + 888.0, + 139.0 + ], + [ + 871.0, + 170.0 + ], + [ + 844.0, + 169.0 + ], + [ + 861.0, + 139.0 + ] + ], + "center_px": [ + 866.0, + 154.25 + ], + "area_px": 832.0 + }, + { + "image_points_px": [ + [ + 635.0, + 778.0 + ], + [ + 606.0, + 791.0 + ], + [ + 580.0, + 773.0 + ], + [ + 612.0, + 764.0 + ] + ], + "center_px": [ + 608.25, + 776.5 + ], + "area_px": 757.5 + }, + { + "image_points_px": [ + [ + 754.0, + 745.0 + ], + [ + 784.0, + 735.0 + ], + [ + 806.0, + 749.0 + ], + [ + 780.0, + 762.0 + ] + ], + "center_px": [ + 781.0, + 747.75 + ], + "area_px": 710.0 + }, + { + "image_points_px": [ + [ + 852.0, + 659.0 + ], + [ + 882.0, + 653.0 + ], + [ + 906.0, + 665.0 + ], + [ + 877.0, + 672.0 + ] + ], + "center_px": [ + 879.25, + 662.25 + ], + "area_px": 528.0 + }, + { + "image_points_px": [ + [ + 613.0, + 739.0 + ], + [ + 581.0, + 746.0 + ], + [ + 560.0, + 733.0 + ], + [ + 592.0, + 726.0 + ] + ], + "center_px": [ + 586.5, + 736.0 + ], + "area_px": 563.0 + }, + { + "image_points_px": [ + [ + 770.0, + 398.0 + ], + [ + 751.0, + 432.0 + ], + [ + 736.0, + 433.0 + ], + [ + 753.0, + 403.0 + ] + ], + "center_px": [ + 752.5, + 416.5 + ], + "area_px": 458.0 + }, + { + "image_points_px": [ + [ + 937.0, + 633.0 + ], + [ + 963.0, + 626.0 + ], + [ + 986.0, + 637.0 + ], + [ + 962.0, + 645.0 + ] + ], + "center_px": [ + 962.0, + 635.25 + ], + "area_px": 467.5 + }, + { + "image_points_px": [ + [ + 496.0, + 636.0 + ], + [ + 518.0, + 630.0 + ], + [ + 542.0, + 641.0 + ], + [ + 514.0, + 648.0 + ] + ], + "center_px": [ + 517.5, + 638.75 + ], + "area_px": 424.0 + }, + { + "image_points_px": [ + [ + 706.0, + 672.0 + ], + [ + 713.0, + 681.0 + ], + [ + 712.0, + 701.0 + ], + [ + 705.0, + 700.0 + ] + ], + "center_px": [ + 709.0, + 688.5 + ], + "area_px": 173.0 + }, + { + "image_points_px": [ + [ + 1270.0, + 652.0 + ], + [ + 1277.0, + 642.0 + ], + [ + 1299.0, + 649.0 + ], + [ + 1283.0, + 656.0 + ] + ], + "center_px": [ + 1282.25, + 649.75 + ], + "area_px": 212.0 + }, + { + "image_points_px": [ + [ + 1324.0, + 677.0 + ], + [ + 1334.0, + 678.0 + ], + [ + 1347.0, + 684.0 + ], + [ + 1327.0, + 680.0 + ] + ], + "center_px": [ + 1333.0, + 679.75 + ], + "area_px": 47.5 + }, + { + "image_points_px": [ + [ + 1335.0, + 615.0 + ], + [ + 1338.0, + 613.0 + ], + [ + 1347.0, + 613.0 + ], + [ + 1358.0, + 618.0 + ] + ], + "center_px": [ + 1344.5, + 614.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 779.0, + 642.0 + ], + [ + 777.0, + 658.0 + ], + [ + 774.0, + 665.0 + ], + [ + 773.0, + 659.0 + ] + ], + "center_px": [ + 775.75, + 656.0 + ], + "area_px": 43.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/render_e_camera_pose.json b/data/camera_study/Scene10/k3_cef/render_e_camera_pose.json new file mode 100644 index 0000000..dfb27a1 --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/render_e_camera_pose.json @@ -0,0 +1,271 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:08Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_cef\\render_e_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "e", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 5, + "used_marker_ids": [ + 48, + 63, + 57, + 102, + 54 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.007197111808548965, + 0.001098276420089881, + 0.0009620344476883504, + 0.0009620205232011758 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 2.7281525726006493, + "residual_median_px": 2.5183121097354597, + "residual_max_px": 3.7576731420043146, + "sigma2_normalized": 2.3137087159701097e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.6321497559547424, + 0.7748407125473022, + 0.0029369741678237915 + ], + [ + 0.21024876832962036, + -0.16787971556186676, + -0.9631260633468628 + ], + [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + ], + "translation_m": [ + -0.056855153292417526, + -0.012442845851182938, + 1.5609862804412842 + ], + "rvec_rad": [ + 1.7048273936309237, + 0.8116750457158921, + -0.6120703769873145 + ] + }, + "camera_in_world": { + "position_m": [ + 1.2027034759521484, + -0.909389853477478, + 0.40814200043678284 + ], + "position_mm": [ + 1202.7034912109375, + -909.3898315429688, + 408.1419982910156 + ], + "orientation_deg": { + "roll": 113.81822204589844, + "pitch": 48.22581100463867, + "yaw": 18.396778106689453 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.00022441890537757206, + -7.963567536396464e-06, + -2.9398649194599163e-05, + -1.4795386871224034e-05, + -9.369620603686464e-05, + -1.2702492726669124e-05 + ], + [ + -7.963567536395407e-06, + 3.7068884464340944e-05, + -3.338378703660994e-05, + 2.6508530508930155e-05, + -6.804904795036776e-06, + -8.467045467073405e-06 + ], + [ + -2.939864919460005e-05, + -3.338378703660865e-05, + 0.00015704190560829434, + -5.550273740425191e-05, + 8.385195749589376e-06, + 3.13758938875245e-05 + ], + [ + -1.4795386871223326e-05, + 2.6508530508929867e-05, + -5.5502737404252506e-05, + 2.9231680266895845e-05, + 3.3812426915121855e-06, + -8.125563844390692e-06 + ], + [ + -9.369620603686502e-05, + -6.80490479503646e-06, + 8.385195749589481e-06, + 3.3812426915123345e-06, + 4.4878486349463374e-05, + 1.0425895360947247e-05 + ], + [ + -1.2702492726669507e-05, + -8.467045467073171e-06, + 3.137589388752461e-05, + -8.125563844390541e-06, + 1.0425895360947318e-05, + 2.9592030404347494e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.8583261662306342, + 0.3488408939722953, + 0.7180098641027528 + ], + "tvec_std_m": [ + 0.005406632987996859, + 0.006699140717246009, + 0.0054398557337807674 + ] + }, + "camera_center_std_m": [ + 0.006976893112270283, + 0.012106263892740327, + 0.01216157052134005 + ], + "camera_center_std_mm": [ + 6.976893112270283, + 12.106263892740326, + 12.16157052134005 + ], + "orientation_std_deg": { + "roll": 1.0513875130551562, + "pitch": 0.6166264667162378, + "yaw": 0.5162490597129769 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1024.5, + 1030.5 + ], + "projected_center_px": [ + 1023.4668579101562, + 1032.796630859375 + ], + "reprojection_error_px": 2.5183121097354597, + "confidence": 0.4963016081621025 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1316.0, + 1051.25 + ], + "projected_center_px": [ + 1318.0511474609375, + 1052.518798828125 + ], + "reprojection_error_px": 2.4118574528279497, + "confidence": 0.12173424671007582 + }, + { + "marker_id": 57, + "observed_center_px": [ + 813.25, + 990.5 + ], + "projected_center_px": [ + 814.3992309570312, + 987.8240966796875 + ], + "reprojection_error_px": 2.912248336295932, + "confidence": 0.7730384623298485 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1106.0, + 937.0 + ], + "projected_center_px": [ + 1103.0518798828125, + 934.6700439453125 + ], + "reprojection_error_px": 3.7576731420043146, + "confidence": 0.6377388980107869 + }, + { + "marker_id": 54, + "observed_center_px": [ + 545.5, + 791.0 + ], + "projected_center_px": [ + 546.1773071289062, + 792.4124755859375 + ], + "reprojection_error_px": 1.5664712661701496, + "confidence": 0.33398560374859715 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/render_f_aruco_detection.json b/data/camera_study/Scene10/k3_cef/render_f_aruco_detection.json new file mode 100644 index 0000000..eda8f8a --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/render_f_aruco_detection.json @@ -0,0 +1,2058 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:08Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "f", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.npz", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.png", + "image_sha256": "aa67ae34760d38a87903e73b4020db43742a978458949ff309a7b2527c548cd4", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 33, + "num_rejected_candidates": 9 + }, + "detections": [ + { + "observation_id": "3bdb5e4b-52ab-4394-97d4-2db3ee382038", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1111.0, + 551.0 + ], + [ + 1128.0, + 590.0 + ], + [ + 1088.0, + 605.0 + ], + [ + 1071.0, + 566.0 + ] + ], + "center_px": [ + 1099.5, + 578.0 + ], + "quality": { + "area_px": 1815.0, + "perimeter_px": 170.52822875976562, + "sharpness": { + "laplacian_var": 705.4441714458114 + }, + "contrast": { + "p05": 20.0, + "p95": 169.0, + "dynamic_range": 149.0, + "mean_gray": 91.23937908496733, + "std_gray": 63.85244467612601 + }, + "geometry": { + "distance_to_center_norm": 0.4237752854824066, + "distance_to_border_px": 312.0 + }, + "edge_ratio": 1.0041351499491737, + "edge_lengths_px": [ + 42.54409408569336, + 42.72002029418945, + 42.54409408569336, + 42.72002029418945 + ] + }, + "confidence": 0.9958818790982638 + }, + { + "observation_id": "2b0f77ab-5a27-4019-a197-1f860ef31d0f", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1016.0, + 419.0 + ], + [ + 1031.0, + 457.0 + ], + [ + 994.0, + 474.0 + ], + [ + 980.0, + 436.0 + ] + ], + "center_px": [ + 1005.25, + 446.5 + ], + "quality": { + "area_px": 1633.5, + "perimeter_px": 161.88091659545898, + "sharpness": { + "laplacian_var": 1206.2538238529316 + }, + "contrast": { + "p05": 64.0, + "p95": 184.0, + "dynamic_range": 120.0, + "mean_gray": 109.98129092609916, + "std_gray": 52.10421328381854 + }, + "geometry": { + "distance_to_center_norm": 0.33353662490844727, + "distance_to_border_px": 409.0 + }, + "edge_ratio": 1.0261563943133383, + "edge_lengths_px": [ + 40.853397369384766, + 40.71854782104492, + 40.49691390991211, + 39.81205749511719 + ] + }, + "confidence": 0.9745103237106064 + }, + { + "observation_id": "210d1c7a-160e-4177-a418-b5bb10470cd8", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1036.0, + 506.0 + ], + [ + 1052.0, + 544.0 + ], + [ + 1022.0, + 561.0 + ], + [ + 1006.0, + 523.0 + ] + ], + "center_px": [ + 1029.0, + 533.5 + ], + "quality": { + "area_px": 1412.0, + "perimeter_px": 151.42587280273438, + "sharpness": { + "laplacian_var": 1012.7025030399973 + }, + "contrast": { + "p05": 38.0, + "p95": 183.0, + "dynamic_range": 145.0, + "mean_gray": 116.22860125260961, + "std_gray": 60.975378654093674 + }, + "geometry": { + "distance_to_center_norm": 0.34340929985046387, + "distance_to_border_px": 388.0 + }, + "edge_ratio": 1.1957310908974648, + "edge_lengths_px": [ + 41.231056213378906, + 34.48188018798828, + 41.231056213378906, + 34.48188018798828 + ] + }, + "confidence": 0.7872450089315723 + }, + { + "observation_id": "9d0bb338-9d76-4d99-ad66-a1b3f08d0c60", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1052.0, + 572.0 + ], + [ + 1067.0, + 612.0 + ], + [ + 1037.0, + 628.0 + ], + [ + 1025.0, + 587.0 + ] + ], + "center_px": [ + 1045.25, + 599.75 + ], + "quality": { + "area_px": 1363.5, + "perimeter_px": 150.32693099975586, + "sharpness": { + "laplacian_var": 1006.0857327103973 + }, + "contrast": { + "p05": 35.0, + "p95": 182.0, + "dynamic_range": 147.0, + "mean_gray": 87.55157437567861, + "std_gray": 61.08527885104246 + }, + "geometry": { + "distance_to_center_norm": 0.3674362897872925, + "distance_to_border_px": 373.0 + }, + "edge_ratio": 1.38311172556412, + "edge_lengths_px": [ + 42.72002029418945, + 34.0, + 42.72002029418945, + 30.886890411376953 + ] + }, + "confidence": 0.6572137183127795 + }, + { + "observation_id": "834abae3-6d13-4679-bc23-c54aee6b01d1", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1373.0, + 931.0 + ], + [ + 1403.0, + 920.0 + ], + [ + 1417.0, + 952.0 + ], + [ + 1387.0, + 964.0 + ] + ], + "center_px": [ + 1395.0, + 941.75 + ], + "quality": { + "area_px": 1136.0, + "perimeter_px": 135.0394744873047, + "sharpness": { + "laplacian_var": 536.3795719450814 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 59.547588005215125, + "std_gray": 52.80020659255208 + }, + "geometry": { + "distance_to_center_norm": 0.8727903962135315, + "distance_to_border_px": 23.0 + }, + "edge_ratio": 1.1218600885282315, + "edge_lengths_px": [ + 31.95309066772461, + 34.928497314453125, + 32.31098937988281, + 35.84689712524414 + ] + }, + "confidence": 0.3105318897567382 + }, + { + "observation_id": "0f06199a-51e2-4c11-964d-8750b8d22121", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1361.0, + 872.0 + ], + [ + 1392.0, + 861.0 + ], + [ + 1405.0, + 893.0 + ], + [ + 1375.0, + 904.0 + ] + ], + "center_px": [ + 1383.25, + 882.5 + ], + "quality": { + "area_px": 1124.5, + "perimeter_px": 134.31518936157227, + "sharpness": { + "laplacian_var": 517.914546739087 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 76.5836627140975, + "std_gray": 53.471581821317514 + }, + "geometry": { + "distance_to_center_norm": 0.8294032216072083, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.0931179608780046, + "edge_lengths_px": [ + 32.893768310546875, + 34.539833068847656, + 31.95309066772461, + 34.928497314453125 + ] + }, + "confidence": 0.480064078578645 + }, + { + "observation_id": "cdf6f8e0-3957-461e-a3d8-fe0aa435dbcd", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 948.0, + 734.0 + ], + [ + 958.0, + 766.0 + ], + [ + 926.0, + 775.0 + ], + [ + 916.0, + 742.0 + ] + ], + "center_px": [ + 937.0, + 754.25 + ], + "quality": { + "area_px": 1125.0, + "perimeter_px": 134.23437118530273, + "sharpness": { + "laplacian_var": 451.55598900708645 + }, + "contrast": { + "p05": 10.0, + "p95": 140.0, + "dynamic_range": 130.0, + "mean_gray": 60.31848852901484, + "std_gray": 51.76857091737675 + }, + "geometry": { + "distance_to_center_norm": 0.3388288915157318, + "distance_to_border_px": 305.0 + }, + "edge_ratio": 1.0453855707425852, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 34.48188018798828, + 32.98484420776367 + ] + }, + "confidence": 0.717438637944123 + }, + { + "observation_id": "dbcbe53e-0a93-45a1-94b8-ad7be160bfc8", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 644.0, + 826.0 + ], + [ + 676.0, + 815.0 + ], + [ + 686.0, + 847.0 + ], + [ + 654.0, + 857.0 + ] + ], + "center_px": [ + 665.0, + 836.25 + ], + "quality": { + "area_px": 1113.0, + "perimeter_px": 133.4630584716797, + "sharpness": { + "laplacian_var": 852.4779615278809 + }, + "contrast": { + "p05": 29.0, + "p95": 169.0, + "dynamic_range": 140.0, + "mean_gray": 86.11354309165527, + "std_gray": 58.71854981961371 + }, + "geometry": { + "distance_to_center_norm": 0.334791362285614, + "distance_to_border_px": 223.0 + }, + "edge_ratio": 1.0388313835116465, + "edge_lengths_px": [ + 33.83784866333008, + 33.52610778808594, + 33.52610778808594, + 32.572994232177734 + ] + }, + "confidence": 0.714264135428559 + }, + { + "observation_id": "28c11094-f590-477b-8fb8-da0a22a8c91b", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1320.0, + 833.0 + ], + [ + 1351.0, + 823.0 + ], + [ + 1363.0, + 855.0 + ], + [ + 1333.0, + 865.0 + ] + ], + "center_px": [ + 1341.75, + 844.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 451.19488172035136 + }, + "contrast": { + "p05": 7.0, + "p95": 137.0, + "dynamic_range": 130.0, + "mean_gray": 45.32476319350474, + "std_gray": 49.27193956190029 + }, + "geometry": { + "distance_to_center_norm": 0.7689892649650574, + "distance_to_border_px": 77.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.6720101269988878 + }, + { + "observation_id": "4b3f0544-7409-4689-a3de-7078e05d7236", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1378.0, + 795.0 + ], + [ + 1409.0, + 785.0 + ], + [ + 1421.0, + 817.0 + ], + [ + 1391.0, + 827.0 + ] + ], + "center_px": [ + 1399.75, + 806.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 495.05510317310643 + }, + "contrast": { + "p05": 8.0, + "p95": 139.0, + "dynamic_range": 131.0, + "mean_gray": 82.98646820027064, + "std_gray": 51.90790044031631 + }, + "geometry": { + "distance_to_center_norm": 0.8110472559928894, + "distance_to_border_px": 19.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.25536384825957736 + }, + { + "observation_id": "963f49bd-e790-4645-b9c7-a98905acc649", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 534.0, + 807.0 + ], + [ + 566.0, + 797.0 + ], + [ + 575.0, + 829.0 + ], + [ + 544.0, + 839.0 + ] + ], + "center_px": [ + 554.75, + 818.0 + ], + "quality": { + "area_px": 1103.0, + "perimeter_px": 132.86674880981445, + "sharpness": { + "laplacian_var": 743.494629148182 + }, + "contrast": { + "p05": 35.0, + "p95": 172.0, + "dynamic_range": 137.0, + "mean_gray": 110.58367911479945, + "std_gray": 58.20082187769058 + }, + "geometry": { + "distance_to_center_norm": 0.35934022068977356, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 32.572994232177734, + 33.52610778808594 + ] + }, + "confidence": 0.7144285455619288 + }, + { + "observation_id": "8e8e51fc-353b-46fa-a451-f08978984c33", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 824.0, + 853.0 + ], + [ + 854.0, + 841.0 + ], + [ + 867.0, + 872.0 + ], + [ + 836.0, + 884.0 + ] + ], + "center_px": [ + 845.25, + 862.5 + ], + "quality": { + "area_px": 1095.5, + "perimeter_px": 132.40953826904297, + "sharpness": { + "laplacian_var": 442.72637538104226 + }, + "contrast": { + "p05": 14.0, + "p95": 151.0, + "dynamic_range": 137.0, + "mean_gray": 42.81124497991968, + "std_gray": 45.242857765301586 + }, + "geometry": { + "distance_to_center_norm": 0.3844088017940521, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.040372688406745, + "edge_lengths_px": [ + 32.31098937988281, + 33.61547088623047, + 33.241539001464844, + 33.241539001464844 + ] + }, + "confidence": 0.7019920279258633 + }, + { + "observation_id": "1102f596-0f29-48f9-a356-d30dc63623a2", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 590.0, + 838.0 + ], + [ + 621.0, + 828.0 + ], + [ + 631.0, + 859.0 + ], + [ + 600.0, + 870.0 + ] + ], + "center_px": [ + 610.5, + 848.75 + ], + "quality": { + "area_px": 1081.5, + "perimeter_px": 131.56586456298828, + "sharpness": { + "laplacian_var": 731.9229727377668 + }, + "contrast": { + "p05": 31.0, + "p95": 169.0, + "dynamic_range": 138.0, + "mean_gray": 66.63649222065064, + "std_gray": 51.73446481181097 + }, + "geometry": { + "distance_to_center_norm": 0.3639915883541107, + "distance_to_border_px": 210.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 32.572994232177734, + 32.572994232177734, + 32.893768310546875, + 33.52610778808594 + ] + }, + "confidence": 0.7005026944924987 + }, + { + "observation_id": "fead1c63-53fd-4e08-887e-e0f5e876044f", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 655.0, + 735.0 + ], + [ + 687.0, + 726.0 + ], + [ + 695.0, + 757.0 + ], + [ + 664.0, + 766.0 + ] + ], + "center_px": [ + 675.25, + 746.0 + ], + "quality": { + "area_px": 1053.0, + "perimeter_px": 129.81721115112305, + "sharpness": { + "laplacian_var": 717.9247585125308 + }, + "contrast": { + "p05": 30.0, + "p95": 171.0, + "dynamic_range": 141.0, + "mean_gray": 93.84776536312849, + "std_gray": 59.42619485270114 + }, + "geometry": { + "distance_to_center_norm": 0.23422729969024658, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0382912394254866, + "edge_lengths_px": [ + 33.241539001464844, + 32.015621185302734, + 32.280025482177734, + 32.280025482177734 + ] + }, + "confidence": 0.6761108765479277 + }, + { + "observation_id": "c410e946-ba45-41a2-93da-5c393986a920", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1325.0, + 744.0 + ], + [ + 1354.0, + 732.0 + ], + [ + 1368.0, + 763.0 + ], + [ + 1339.0, + 774.0 + ] + ], + "center_px": [ + 1346.5, + 753.25 + ], + "quality": { + "area_px": 1045.5, + "perimeter_px": 129.52142906188965, + "sharpness": { + "laplacian_var": 401.9192193180268 + }, + "contrast": { + "p05": 7.0, + "p95": 133.0, + "dynamic_range": 126.0, + "mean_gray": 49.76628895184136, + "std_gray": 49.769446320789825 + }, + "geometry": { + "distance_to_center_norm": 0.735332190990448, + "distance_to_border_px": 72.0 + }, + "edge_ratio": 1.096678006826234, + "edge_lengths_px": [ + 31.38471031188965, + 34.01470184326172, + 31.016124725341797, + 33.105892181396484 + ] + }, + "confidence": 0.63555573802114 + }, + { + "observation_id": "9430b5e9-8d04-4026-884e-692120244ab1", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 488.0, + 682.0 + ], + [ + 520.0, + 673.0 + ], + [ + 528.0, + 703.0 + ], + [ + 497.0, + 713.0 + ] + ], + "center_px": [ + 508.25, + 692.75 + ], + "quality": { + "area_px": 1041.5, + "perimeter_px": 129.14290809631348, + "sharpness": { + "laplacian_var": 854.9291926161701 + }, + "contrast": { + "p05": 39.0, + "p95": 174.0, + "dynamic_range": 135.0, + "mean_gray": 85.3946251768034, + "std_gray": 55.88886855913174 + }, + "geometry": { + "distance_to_center_norm": 0.2901056110858917, + "distance_to_border_px": 367.0 + }, + "edge_ratio": 1.070637881392484, + "edge_lengths_px": [ + 33.241539001464844, + 31.048349380493164, + 32.572994232177734, + 32.280025482177734 + ] + }, + "confidence": 0.6485230397697823 + }, + { + "observation_id": "c984ff3d-bf98-4ee5-8a5b-e9e1444877d4", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1047.0, + 694.0 + ], + [ + 1058.0, + 725.0 + ], + [ + 1029.0, + 735.0 + ], + [ + 1017.0, + 703.0 + ] + ], + "center_px": [ + 1037.75, + 714.25 + ], + "quality": { + "area_px": 1038.5, + "perimeter_px": 129.06642532348633, + "sharpness": { + "laplacian_var": 702.8589017712277 + }, + "contrast": { + "p05": 13.0, + "p95": 151.0, + "dynamic_range": 138.0, + "mean_gray": 91.26308139534883, + "std_gray": 55.34838633216663 + }, + "geometry": { + "distance_to_center_norm": 0.40265801548957825, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 1.1141061874732403, + "edge_lengths_px": [ + 32.893768310546875, + 30.675724029541016, + 34.1760139465332, + 31.320919036865234 + ] + }, + "confidence": 0.62142490645665 + }, + { + "observation_id": "a64f2c2f-8e40-4e36-b139-e81c6b00f996", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 592.0, + 617.0 + ], + [ + 622.0, + 606.0 + ], + [ + 633.0, + 635.0 + ], + [ + 604.0, + 647.0 + ] + ], + "center_px": [ + 612.75, + 626.25 + ], + "quality": { + "area_px": 1002.5, + "perimeter_px": 126.66491508483887, + "sharpness": { + "laplacian_var": 861.4333753048808 + }, + "contrast": { + "p05": 34.0, + "p95": 174.0, + "dynamic_range": 140.0, + "mean_gray": 97.54451038575668, + "std_gray": 59.64062956897272 + }, + "geometry": { + "distance_to_center_norm": 0.15292063355445862, + "distance_to_border_px": 433.0 + }, + "edge_ratio": 1.041748112183823, + "edge_lengths_px": [ + 31.95309066772461, + 31.016124725341797, + 31.38471031188965, + 32.31098937988281 + ] + }, + "confidence": 0.6415498386959416 + }, + { + "observation_id": "f6580133-f606-4be8-a7d9-32a0f6508521", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 852.0, + 664.0 + ], + [ + 855.0, + 699.0 + ], + [ + 831.0, + 712.0 + ], + [ + 828.0, + 677.0 + ] + ], + "center_px": [ + 841.5, + 688.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 124.84605026245117, + "sharpness": { + "laplacian_var": 964.1437813663806 + }, + "contrast": { + "p05": 35.0, + "p95": 185.0, + "dynamic_range": 150.0, + "mean_gray": 80.50977198697069, + "std_gray": 59.04237755633671 + }, + "geometry": { + "distance_to_center_norm": 0.21276035904884338, + "distance_to_border_px": 368.0 + }, + "edge_ratio": 1.2870027603239267, + "edge_lengths_px": [ + 35.12833786010742, + 27.294687271118164, + 35.12833786010742, + 27.294687271118164 + ] + }, + "confidence": 0.45532147876086076 + }, + { + "observation_id": "a8e7bfe3-8581-40e7-8292-eb944b46a666", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 549.0 + ], + [ + 750.0, + 540.0 + ], + [ + 759.0, + 570.0 + ], + [ + 728.0, + 578.0 + ] + ], + "center_px": [ + 739.25, + 559.25 + ], + "quality": { + "area_px": 972.0, + "perimeter_px": 124.74067687988281, + "sharpness": { + "laplacian_var": 858.8311608781246 + }, + "contrast": { + "p05": 30.0, + "p95": 176.0, + "dynamic_range": 146.0, + "mean_gray": 89.6813509544787, + "std_gray": 60.460128160193484 + }, + "geometry": { + "distance_to_center_norm": 0.030248457565903664, + "distance_to_border_px": 502.0 + }, + "edge_ratio": 1.0642352686074992, + "edge_lengths_px": [ + 31.320919036865234, + 31.320919036865234, + 32.015621185302734, + 30.08321762084961 + ] + }, + "confidence": 0.6088879208521975 + }, + { + "observation_id": "ca0b10a7-016a-4d44-8b2b-3fe1e3fc1360", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 670.0, + 478.0 + ], + [ + 700.0, + 469.0 + ], + [ + 710.0, + 497.0 + ], + [ + 680.0, + 507.0 + ] + ], + "center_px": [ + 690.0, + 487.75 + ], + "quality": { + "area_px": 950.0, + "perimeter_px": 123.3515567779541, + "sharpness": { + "laplacian_var": 744.1718727855725 + }, + "contrast": { + "p05": 33.0, + "p95": 177.0, + "dynamic_range": 144.0, + "mean_gray": 123.30505952380952, + "std_gray": 58.57233093015588 + }, + "geometry": { + "distance_to_center_norm": 0.06694444268941879, + "distance_to_border_px": 469.0 + }, + "edge_ratio": 1.0635890487184443, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.62277603149414, + 30.675724029541016 + ] + }, + "confidence": 0.5954680843098741 + }, + { + "observation_id": "0087f9f9-8b86-4e77-9fc1-2568807ee273", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 519.0, + 393.0 + ], + [ + 550.0, + 385.0 + ], + [ + 558.0, + 413.0 + ], + [ + 527.0, + 421.0 + ] + ], + "center_px": [ + 538.5, + 403.0 + ], + "quality": { + "area_px": 932.0, + "perimeter_px": 122.27212142944336, + "sharpness": { + "laplacian_var": 797.3173110559737 + }, + "contrast": { + "p05": 38.0, + "p95": 176.19999999999993, + "dynamic_range": 138.19999999999993, + "mean_gray": 94.14307458143075, + "std_gray": 55.87143525094488 + }, + "geometry": { + "distance_to_center_norm": 0.2526678740978241, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0994209463411062, + "edge_lengths_px": [ + 32.015621185302734, + 29.120439529418945, + 32.015621185302734, + 29.120439529418945 + ] + }, + "confidence": 0.5651459847123547 + }, + { + "observation_id": "9f763b13-2186-439d-95e5-84c1179a9493", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 613.0, + 419.0 + ], + [ + 643.0, + 410.0 + ], + [ + 653.0, + 438.0 + ], + [ + 623.0, + 447.0 + ] + ], + "center_px": [ + 633.0, + 428.5 + ], + "quality": { + "area_px": 930.0, + "perimeter_px": 122.10611343383789, + "sharpness": { + "laplacian_var": 823.1077646304283 + }, + "contrast": { + "p05": 33.0, + "p95": 175.0, + "dynamic_range": 142.0, + "mean_gray": 90.3810975609756, + "std_gray": 58.11551162536803 + }, + "geometry": { + "distance_to_center_norm": 0.15713976323604584, + "distance_to_border_px": 410.0 + }, + "edge_ratio": 1.0534364993835403, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.320919036865234, + 29.73213768005371 + ] + }, + "confidence": 0.5885499509109636 + }, + { + "observation_id": "c9effbec-f3d7-4af5-a849-28f1043fe3cf", + "type": "aruco", + "marker_id": 82, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 420.0 + ], + [ + 1365.0, + 411.0 + ], + [ + 1377.0, + 439.0 + ], + [ + 1348.0, + 448.0 + ] + ], + "center_px": [ + 1356.5, + 429.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 492.47728625272765 + }, + "contrast": { + "p05": 8.0, + "p95": 144.0, + "dynamic_range": 136.0, + "mean_gray": 74.61658841940532, + "std_gray": 56.63950003540781 + }, + "geometry": { + "distance_to_center_norm": 0.7178005576133728, + "distance_to_border_px": 63.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.6113473409254715 + }, + { + "observation_id": "146be7aa-b671-4124-aa59-2165c96edef4", + "type": "aruco", + "marker_id": 73, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1381.0, + 409.0 + ], + [ + 1410.0, + 400.0 + ], + [ + 1422.0, + 428.0 + ], + [ + 1393.0, + 437.0 + ] + ], + "center_px": [ + 1401.5, + 418.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 771.0965392424098 + }, + "contrast": { + "p05": 9.0, + "p95": 148.0, + "dynamic_range": 139.0, + "mean_gray": 87.07042253521126, + "std_gray": 52.83472667385498 + }, + "geometry": { + "distance_to_center_norm": 0.7691621780395508, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.22008504273316973 + }, + { + "observation_id": "33f0c05a-b284-44b5-b84c-5de1d24c86e8", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 881.0, + 288.0 + ], + [ + 892.0, + 316.0 + ], + [ + 863.0, + 326.0 + ], + [ + 852.0, + 298.0 + ] + ], + "center_px": [ + 872.0, + 307.0 + ], + "quality": { + "area_px": 922.0, + "perimeter_px": 121.51788330078125, + "sharpness": { + "laplacian_var": 865.0098318523201 + }, + "contrast": { + "p05": 22.0, + "p95": 172.0, + "dynamic_range": 150.0, + "mean_gray": 82.59908536585365, + "std_gray": 60.95016906391271 + }, + "geometry": { + "distance_to_center_norm": 0.30910664796829224, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.0196955796470641, + "edge_lengths_px": [ + 30.08321762084961, + 30.675724029541016, + 30.08321762084961, + 30.675724029541016 + ] + }, + "confidence": 0.60279428383853 + }, + { + "observation_id": "7df1ec81-6fb5-4e9a-aaba-68130263fd8c", + "type": "aruco", + "marker_id": 52, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1170.0, + 304.0 + ], + [ + 1198.0, + 294.0 + ], + [ + 1211.0, + 321.0 + ], + [ + 1182.0, + 331.0 + ] + ], + "center_px": [ + 1190.25, + 312.5 + ], + "quality": { + "area_px": 894.5, + "perimeter_px": 119.92108345031738, + "sharpness": { + "laplacian_var": 736.7821607663999 + }, + "contrast": { + "p05": 12.0, + "p95": 162.0, + "dynamic_range": 150.0, + "mean_gray": 73.56239870340356, + "std_gray": 59.95824921853181 + }, + "geometry": { + "distance_to_center_norm": 0.5804333686828613, + "distance_to_border_px": 229.0 + }, + "edge_ratio": 1.038215950330626, + "edge_lengths_px": [ + 29.73213768005371, + 29.96664810180664, + 30.675724029541016, + 29.546573638916016 + ] + }, + "confidence": 0.5743827506632194 + }, + { + "observation_id": "7e582977-cba9-43a8-9f92-a781a03c6b9f", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 621.0, + 329.0 + ], + [ + 651.0, + 320.0 + ], + [ + 660.0, + 347.0 + ], + [ + 630.0, + 356.0 + ] + ], + "center_px": [ + 640.5, + 338.0 + ], + "quality": { + "area_px": 891.0, + "perimeter_px": 119.56283569335938, + "sharpness": { + "laplacian_var": 820.498501862312 + }, + "contrast": { + "p05": 32.0, + "p95": 175.0, + "dynamic_range": 143.0, + "mean_gray": 89.84786053882726, + "std_gray": 58.95198554771998 + }, + "geometry": { + "distance_to_center_norm": 0.24120134115219116, + "distance_to_border_px": 320.0 + }, + "edge_ratio": 1.1005049224950472, + "edge_lengths_px": [ + 31.320919036865234, + 28.460498809814453, + 31.320919036865234, + 28.460498809814453 + ] + }, + "confidence": 0.5397522426826521 + }, + { + "observation_id": "7bb6f8f6-951c-42a1-87e9-6d6a4dd856a7", + "type": "aruco", + "marker_id": 77, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1106.0, + 220.0 + ], + [ + 1135.0, + 213.0 + ], + [ + 1145.0, + 239.0 + ], + [ + 1116.0, + 248.0 + ] + ], + "center_px": [ + 1125.5, + 230.0 + ], + "quality": { + "area_px": 863.0, + "perimeter_px": 117.78623580932617, + "sharpness": { + "laplacian_var": 634.9850778546712 + }, + "contrast": { + "p05": 11.0, + "p95": 158.0, + "dynamic_range": 147.0, + "mean_gray": 69.19607843137256, + "std_gray": 58.47258547896745 + }, + "geometry": { + "distance_to_center_norm": 0.5671351552009583, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.0900202903476583, + "edge_lengths_px": [ + 29.832868576049805, + 27.85677719116211, + 30.364452362060547, + 29.73213768005371 + ] + }, + "confidence": 0.5278189208292927 + }, + { + "observation_id": "bd0813bb-d4a4-4369-a212-961f4bec59bf", + "type": "aruco", + "marker_id": 83, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1304.0, + 199.0 + ], + [ + 1332.0, + 191.0 + ], + [ + 1343.0, + 218.0 + ], + [ + 1314.0, + 226.0 + ] + ], + "center_px": [ + 1323.25, + 208.5 + ], + "quality": { + "area_px": 853.5, + "perimeter_px": 117.15077781677246, + "sharpness": { + "laplacian_var": 787.246986385212 + }, + "contrast": { + "p05": 11.0, + "p95": 159.19999999999993, + "dynamic_range": 148.19999999999993, + "mean_gray": 92.65964343598056, + "std_gray": 57.146865375444264 + }, + "geometry": { + "distance_to_center_norm": 0.7648148536682129, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0448333273602466, + "edge_lengths_px": [ + 29.120439529418945, + 29.154760360717773, + 30.08321762084961, + 28.792360305786133 + ] + }, + "confidence": 0.5445844663450473 + }, + { + "observation_id": "75e0a58d-94e9-4c5c-bbcc-6eacdfd9be22", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1089.0, + 172.0 + ], + [ + 1118.0, + 165.0 + ], + [ + 1127.0, + 192.0 + ], + [ + 1098.0, + 199.0 + ] + ], + "center_px": [ + 1108.0, + 182.0 + ], + "quality": { + "area_px": 846.0, + "perimeter_px": 116.58673477172852, + "sharpness": { + "laplacian_var": 840.0864058387932 + }, + "contrast": { + "p05": 18.0, + "p95": 165.0, + "dynamic_range": 147.0, + "mean_gray": 108.12054329371817, + "std_gray": 55.17911014115476 + }, + "geometry": { + "distance_to_center_norm": 0.5865867137908936, + "distance_to_border_px": 165.0 + }, + "edge_ratio": 1.048220158592656, + "edge_lengths_px": [ + 29.832868576049805, + 28.460498809814453, + 29.832868576049805, + 28.460498809814453 + ] + }, + "confidence": 0.5380549070504695 + }, + { + "observation_id": "eaf2e576-bd10-4f5b-b4ec-296b084ba2cf", + "type": "aruco", + "marker_id": 61, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1260.0, + 127.0 + ], + [ + 1287.0, + 117.0 + ], + [ + 1300.0, + 143.0 + ], + [ + 1273.0, + 153.0 + ] + ], + "center_px": [ + 1280.0, + 135.0 + ], + "quality": { + "area_px": 832.0, + "perimeter_px": 115.72248840332031, + "sharpness": { + "laplacian_var": 747.7801521890221 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 95.53195164075993, + "std_gray": 57.42506055833918 + }, + "geometry": { + "distance_to_center_norm": 0.7678935527801514, + "distance_to_border_px": 117.0 + }, + "edge_ratio": 1.0096040611867558, + "edge_lengths_px": [ + 28.792360305786133, + 29.068883895874023, + 28.792360305786133, + 29.068883895874023 + ] + }, + "confidence": 0.5493902887184056 + }, + { + "observation_id": "ec6f8688-77d7-4b99-87c6-849ad70e291c", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 842.0, + 759.0 + ], + [ + 869.0, + 767.0 + ], + [ + 844.0, + 778.0 + ], + [ + 816.0, + 770.0 + ] + ], + "center_px": [ + 842.75, + 768.5 + ], + "quality": { + "area_px": 506.5, + "perimeter_px": 112.82488250732422, + "sharpness": { + "laplacian_var": 927.7063988919667 + }, + "contrast": { + "p05": 19.0, + "p95": 83.0, + "dynamic_range": 64.0, + "mean_gray": 43.613157894736844, + "std_gray": 22.719116354348767 + }, + "geometry": { + "distance_to_center_norm": 0.2882038950920105, + "distance_to_border_px": 302.0 + }, + "edge_ratio": 1.0661750749552474, + "edge_lengths_px": [ + 28.160255432128906, + 27.312999725341797, + 29.120439529418945, + 28.23118782043457 + ] + }, + "confidence": 0.25336676844060735 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1315.0, + 285.0 + ], + [ + 1328.0, + 312.0 + ], + [ + 1300.0, + 322.0 + ], + [ + 1287.0, + 295.0 + ] + ], + "center_px": [ + 1307.5, + 303.5 + ], + "area_px": 886.0 + }, + { + "image_points_px": [ + [ + 1003.0, + 394.0 + ], + [ + 972.0, + 415.0 + ], + [ + 973.0, + 410.0 + ], + [ + 985.0, + 400.0 + ] + ], + "center_px": [ + 983.25, + 404.75 + ], + "area_px": 121.0 + }, + { + "image_points_px": [ + [ + 780.0, + 278.0 + ], + [ + 783.0, + 279.0 + ], + [ + 797.0, + 300.0 + ], + [ + 795.0, + 302.0 + ] + ], + "center_px": [ + 788.75, + 289.75 + ], + "area_px": 63.5 + }, + { + "image_points_px": [ + [ + 1087.0, + 550.0 + ], + [ + 1063.0, + 565.0 + ], + [ + 1074.0, + 554.0 + ], + [ + 1082.0, + 550.0 + ] + ], + "center_px": [ + 1076.5, + 554.75 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 665.0, + 67.0 + ], + [ + 675.0, + 85.0 + ], + [ + 674.0, + 91.0 + ], + [ + 667.0, + 78.0 + ] + ], + "center_px": [ + 670.25, + 80.25 + ], + "area_px": 64.5 + }, + { + "image_points_px": [ + [ + 1107.0, + 93.0 + ], + [ + 1110.0, + 95.0 + ], + [ + 1120.0, + 115.0 + ], + [ + 1115.0, + 111.0 + ] + ], + "center_px": [ + 1113.0, + 103.5 + ], + "area_px": 49.0 + }, + { + "image_points_px": [ + [ + 735.0, + 232.0 + ], + [ + 745.0, + 254.0 + ], + [ + 742.0, + 252.0 + ], + [ + 736.0, + 239.0 + ] + ], + "center_px": [ + 739.5, + 244.25 + ], + "area_px": 37.5 + }, + { + "image_points_px": [ + [ + 1214.0, + 340.0 + ], + [ + 1219.0, + 346.0 + ], + [ + 1223.0, + 362.0 + ], + [ + 1216.0, + 349.0 + ] + ], + "center_px": [ + 1218.0, + 349.25 + ], + "area_px": 46.5 + }, + { + "image_points_px": [ + [ + 1121.0, + 562.0 + ], + [ + 1129.0, + 569.0 + ], + [ + 1131.0, + 577.0 + ], + [ + 1130.0, + 583.0 + ] + ], + "center_px": [ + 1127.75, + 572.75 + ], + "area_px": 62.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/render_f_camera_pose.json b/data/camera_study/Scene10/k3_cef/render_f_camera_pose.json new file mode 100644 index 0000000..5971ac3 --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/render_f_camera_pose.json @@ -0,0 +1,582 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:09Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_cef\\render_f_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "f", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 27, + "used_marker_ids": [ + 68, + 46, + 208, + 47, + 56, + 53, + 97, + 62, + 54, + 55, + 72, + 66, + 214, + 95, + 51, + 103, + 69, + 58, + 82, + 73, + 210, + 52, + 64, + 77, + 83, + 75, + 61 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3, + 4 + ], + "rms": [ + 0.00918677717341902, + 0.0014933429518723808, + 0.001390373853667637, + 0.0013903699834861628, + 0.0013903699807887252 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125, + 6.25e-05 + ] + }, + "residual_rms_px": 3.941603533751138, + "residual_median_px": 3.7352373317630128, + "residual_max_px": 5.771900878439298, + "sigma2_normalized": 2.17476976890378e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.31769248843193054, + 0.9481521248817444, + 0.008892479352653027 + ], + [ + 0.9206541180610657, + -0.30620789527893066, + -0.242141991853714 + ], + [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + ], + "translation_m": [ + 0.12344730645418167, + -0.19988536834716797, + 1.4972078800201416 + ], + "rvec_rad": [ + 2.378352663832453, + 1.7133801592888853, + -0.1998435821316908 + ] + }, + "camera_in_world": { + "position_m": [ + 0.48447033762931824, + -0.3056860566139221, + 1.4030927419662476 + ], + "position_mm": [ + 484.4703369140625, + -305.6860656738281, + 1403.0927734375 + ], + "orientation_deg": { + "roll": 174.98638916015625, + "pitch": 13.112541198730469, + "yaw": 70.96184539794922 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 3.2311819447272024e-05, + 1.8832577487974546e-05, + -4.656767371183097e-06, + -4.18150026429738e-07, + 2.6114865287331025e-07, + 2.406181848846857e-06 + ], + [ + 1.8832577487974533e-05, + 1.683541014579236e-05, + -7.3574856590594524e-06, + 4.5948447714477966e-07, + 3.095065254407523e-08, + 2.3847847067019377e-06 + ], + [ + -4.6567673711861375e-06, + -7.357485659062205e-06, + 0.00016783973036034415, + 1.5647826411604766e-06, + -1.729586622472892e-06, + -2.906231789157714e-05 + ], + [ + -4.1815002642977447e-07, + 4.594844771447391e-07, + 1.5647826411606013e-06, + 3.507815548304795e-07, + -2.7134564617847737e-08, + 2.4204791300702807e-07 + ], + [ + 2.611486528733672e-07, + 3.0950652544076366e-08, + -1.729586622472832e-06, + -2.7134564617850665e-08, + 1.9997327434023874e-07, + 4.1386012647726157e-07 + ], + [ + 2.4061818488473495e-06, + 2.384784706702394e-06, + -2.9062317891576876e-05, + 2.420479130070509e-07, + 4.138601264772586e-07, + 9.270646369219581e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.3256891862833913, + 0.23509017702077495, + 0.7422838625560957 + ], + "tvec_std_m": [ + 0.0005922681443657758, + 0.00044718371430569644, + 0.003044773615430149 + ] + }, + "camera_center_std_m": [ + 0.011255169411300251, + 0.011919325044430497, + 0.004596769734438054 + ], + "camera_center_std_mm": [ + 11.255169411300251, + 11.919325044430497, + 4.5967697344380545 + ], + "orientation_std_deg": { + "roll": 0.5094522091773732, + "pitch": 0.4352540861263008, + "yaw": 0.1004884180203833 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 68, + "observed_center_px": [ + 1395.0, + 941.75 + ], + "projected_center_px": [ + 1389.3548583984375, + 940.5469970703125 + ], + "reprojection_error_px": 5.771900878439298, + "confidence": 0.3105318897567382 + }, + { + "marker_id": 46, + "observed_center_px": [ + 1383.25, + 882.5 + ], + "projected_center_px": [ + 1387.9061279296875, + 883.3380737304688 + ], + "reprojection_error_px": 4.7309507369362676, + "confidence": 0.480064078578645 + }, + { + "marker_id": 208, + "observed_center_px": [ + 937.0, + 754.25 + ], + "projected_center_px": [ + 934.9244995117188, + 751.2972412109375 + ], + "reprojection_error_px": 3.6092224568792584, + "confidence": 0.717438637944123 + }, + { + "marker_id": 47, + "observed_center_px": [ + 665.0, + 836.25 + ], + "projected_center_px": [ + 667.4868774414062, + 835.926025390625 + ], + "reprojection_error_px": 2.507891336580391, + "confidence": 0.714264135428559 + }, + { + "marker_id": 56, + "observed_center_px": [ + 1341.75, + 844.0 + ], + "projected_center_px": [ + 1344.8751220703125, + 839.613037109375 + ], + "reprojection_error_px": 5.386263209134431, + "confidence": 0.6720101269988878 + }, + { + "marker_id": 53, + "observed_center_px": [ + 1399.75, + 806.0 + ], + "projected_center_px": [ + 1394.572998046875, + 803.723388671875 + ], + "reprojection_error_px": 5.655467121468141, + "confidence": 0.25536384825957736 + }, + { + "marker_id": 97, + "observed_center_px": [ + 554.75, + 818.0 + ], + "projected_center_px": [ + 552.1571044921875, + 815.3113403320312 + ], + "reprojection_error_px": 3.7352373317630128, + "confidence": 0.7144285455619288 + }, + { + "marker_id": 62, + "observed_center_px": [ + 845.25, + 862.5 + ], + "projected_center_px": [ + 843.9764404296875, + 867.170166015625 + ], + "reprojection_error_px": 4.840702902743903, + "confidence": 0.7019920279258633 + }, + { + "marker_id": 54, + "observed_center_px": [ + 610.5, + 848.75 + ], + "projected_center_px": [ + 607.426025390625, + 853.0718994140625 + ], + "reprojection_error_px": 5.30359636891383, + "confidence": 0.7005026944924987 + }, + { + "marker_id": 55, + "observed_center_px": [ + 675.25, + 746.0 + ], + "projected_center_px": [ + 672.9774169921875, + 745.18359375 + ], + "reprojection_error_px": 2.4147779799470532, + "confidence": 0.6761108765479277 + }, + { + "marker_id": 72, + "observed_center_px": [ + 1346.5, + 753.25 + ], + "projected_center_px": [ + 1346.513671875, + 751.8689575195312 + ], + "reprojection_error_px": 1.381110152386584, + "confidence": 0.63555573802114 + }, + { + "marker_id": 66, + "observed_center_px": [ + 508.25, + 692.75 + ], + "projected_center_px": [ + 508.324951171875, + 692.6304321289062 + ], + "reprojection_error_px": 0.14111751827228045, + "confidence": 0.6485230397697823 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1037.75, + 714.25 + ], + "projected_center_px": [ + 1041.2877197265625, + 715.8521118164062 + ], + "reprojection_error_px": 3.8835838005607632, + "confidence": 0.62142490645665 + }, + { + "marker_id": 95, + "observed_center_px": [ + 612.75, + 626.25 + ], + "projected_center_px": [ + 616.0951538085938, + 624.1017456054688 + ], + "reprojection_error_px": 3.975556683883667, + "confidence": 0.6415498386959416 + }, + { + "marker_id": 51, + "observed_center_px": [ + 739.25, + 559.25 + ], + "projected_center_px": [ + 740.84765625, + 558.3189086914062 + ], + "reprojection_error_px": 1.8491718465580436, + "confidence": 0.6088879208521975 + }, + { + "marker_id": 103, + "observed_center_px": [ + 690.0, + 487.75 + ], + "projected_center_px": [ + 694.0453491210938, + 487.8307800292969 + ], + "reprojection_error_px": 4.046155573463183, + "confidence": 0.5954680843098741 + }, + { + "marker_id": 69, + "observed_center_px": [ + 538.5, + 403.0 + ], + "projected_center_px": [ + 534.0264892578125, + 406.2565612792969 + ], + "reprojection_error_px": 5.5333073045225545, + "confidence": 0.5651459847123547 + }, + { + "marker_id": 58, + "observed_center_px": [ + 633.0, + 428.5 + ], + "projected_center_px": [ + 631.8712768554688, + 432.2906494140625 + ], + "reprojection_error_px": 3.9551281796337383, + "confidence": 0.5885499509109636 + }, + { + "marker_id": 82, + "observed_center_px": [ + 1356.5, + 429.5 + ], + "projected_center_px": [ + 1358.176025390625, + 429.6244201660156 + ], + "reprojection_error_px": 1.6806372266884486, + "confidence": 0.6113473409254715 + }, + { + "marker_id": 73, + "observed_center_px": [ + 1401.5, + 418.5 + ], + "projected_center_px": [ + 1403.8709716796875, + 418.31756591796875 + ], + "reprojection_error_px": 2.377980004156206, + "confidence": 0.22008504273316973 + }, + { + "marker_id": 210, + "observed_center_px": [ + 872.0, + 307.0 + ], + "projected_center_px": [ + 871.6832885742188, + 304.965087890625 + ], + "reprojection_error_px": 2.0594109400751965, + "confidence": 0.60279428383853 + }, + { + "marker_id": 52, + "observed_center_px": [ + 1190.25, + 312.5 + ], + "projected_center_px": [ + 1186.0579833984375, + 316.39373779296875 + ], + "reprojection_error_px": 5.7213807064526625, + "confidence": 0.5743827506632194 + }, + { + "marker_id": 64, + "observed_center_px": [ + 640.5, + 338.0 + ], + "projected_center_px": [ + 640.4821166992188, + 334.9952087402344 + ], + "reprojection_error_px": 3.0048444763765603, + "confidence": 0.5397522426826521 + }, + { + "marker_id": 77, + "observed_center_px": [ + 1125.5, + 230.0 + ], + "projected_center_px": [ + 1128.3472900390625, + 234.04983520507812 + ], + "reprojection_error_px": 4.950578325290361, + "confidence": 0.5278189208292927 + }, + { + "marker_id": 83, + "observed_center_px": [ + 1323.25, + 208.5 + ], + "projected_center_px": [ + 1319.932373046875, + 207.5139923095703 + ], + "reprojection_error_px": 3.461048940088533, + "confidence": 0.5445844663450473 + }, + { + "marker_id": 75, + "observed_center_px": [ + 1108.0, + 182.0 + ], + "projected_center_px": [ + 1111.3167724609375, + 182.71337890625 + ], + "reprojection_error_px": 3.392622734922916, + "confidence": 0.5380549070504695 + }, + { + "marker_id": 61, + "observed_center_px": [ + 1280.0, + 135.0 + ], + "projected_center_px": [ + 1282.8663330078125, + 133.39898681640625 + ], + "reprojection_error_px": 3.283155208898362, + "confidence": 0.5493902887184056 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/robot_state.eval.json b/data/camera_study/Scene10/k3_cef/robot_state.eval.json new file mode 100644 index 0000000..9000510 --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 120.11635128397742, + "gt": 120.0, + "error": 0.11635128397742278, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 59.605705616189844, + "gt": 60.0, + "error": 0.3942943838101485, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.48656437118899, + "gt": -110.0, + "error": 0.5134356288110098, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "a", + "estimate": 19.742666203350293, + "gt": 20.0, + "error": 0.2573337966497036, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "b", + "estimate": 31.294181606949486, + "gt": 30.0, + "error": 1.2941816069494791, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "c", + "estimate": -179.32184542714344, + "gt": 180.0, + "error": 0.6781545728565561, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "e", + "estimate": 4.790638782260976, + "gt": 4.0, + "error": 0.7906387822609764, + "unit": "mm", + "observable": true, + "n_markers": 2 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.6274799978153794, + "max_abs_deg": 1.2941816069494791, + "mean_abs_mm": 0.4534950331191996, + "max_abs_mm": 0.7906387822609764 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_cef/robot_state.json b/data/camera_study/Scene10/k3_cef/robot_state.json new file mode 100644 index 0000000..b305fcd --- /dev/null +++ b/data/camera_study/Scene10/k3_cef/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:12Z", + "method": "hybrid", + "movements": { + "x": { + "value": 120.11635128397742, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 59.605705616189844, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.48656437118899, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "a": { + "value": 19.742666203350293, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "b": { + "value": 31.294181606949486, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "c": { + "value": -179.32184542714344, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "e": { + "value": 4.790638782260976, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 2 + } + }, + "residual_rms": 1.6321175699221144, + "num_markers": 14 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/aruco_marker_poses.json b/data/camera_study/Scene10/k3_efg/aruco_marker_poses.json new file mode 100644 index 0000000..36de5d0 --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/aruco_marker_poses.json @@ -0,0 +1,1099 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:18:38Z", + "summary": { + "num_cameras": 3, + "num_markers": 24 + }, + "cameras": [ + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 46, + "link": "Board", + "position_m": [ + 0.5348839313677058, + 0.18248827930854533, + -0.028329775906617814 + ], + "position_mm": [ + 534.8839313677058, + 182.48827930854534, + -28.329775906617815 + ], + "normal": [ + 0.012883936111433134, + -0.08089675465500801, + 0.9966392121909332 + ], + "corners_m": [ + [ + 0.5233215897416643, + 0.17094002326432559, + -0.02896325392247736 + ], + [ + 0.5229731544270956, + 0.19414640256343507, + -0.027384331705183448 + ], + [ + 0.5464252622786153, + 0.19371638751808895, + -0.027408740692494618 + ], + [ + 0.5468157190234477, + 0.17115030388833177, + -0.029562777306315836 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.22336011833314 + }, + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.34392760223654334, + -0.28822712673086337, + -0.02716033475194136 + ], + "position_mm": [ + 343.92760223654335, + -288.22712673086335, + -27.16033475194136 + ], + "normal": [ + 0.03859322580117324, + -0.10443255994406445, + 0.9937828753534592 + ], + "corners_m": [ + [ + 0.33216233691876645, + -0.30013962152789125, + -0.02830830072761615 + ], + [ + 0.33238863561110865, + -0.2760581031820233, + -0.025088604728902883 + ], + [ + 0.3559324855248196, + -0.2764822678780206, + -0.02674415662077287 + ], + [ + 0.3552269508914787, + -0.30022851433551845, + -0.028500276930473533 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.697445051974984 + }, + { + "marker_id": 48, + "link": "Board", + "position_m": [ + 0.6876438813301919, + -0.3185980163387512, + -0.02729134285766872 + ], + "position_mm": [ + 687.6438813301919, + -318.59801633875117, + -27.29134285766872 + ], + "normal": [ + 0.029132493038135934, + 0.017486234998161154, + 0.9994225980209633 + ], + "corners_m": [ + [ + 0.6759252916051173, + -0.3304756327585794, + -0.02669423244581551 + ], + [ + 0.676847651856678, + -0.3068131732115735, + -0.02723369308680622 + ], + [ + 0.698656198745171, + -0.30724418299370815, + -0.027757855674612312 + ], + [ + 0.6991463831138015, + -0.3298590763911436, + -0.027479590223440833 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.842535044675618 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.1681500562940063, + -0.17339476001268136, + -0.027095991100171826 + ], + "position_mm": [ + 168.1500562940063, + -173.39476001268136, + -27.095991100171826 + ], + "normal": [ + -0.006929446431457085, + -0.00851759103960492, + 0.9999397148903706 + ], + "corners_m": [ + [ + 0.15598934848340218, + -0.18446315356881943, + -0.027910324678300444 + ], + [ + 0.15698070985298238, + -0.16123072887144413, + -0.026438445217859517 + ], + [ + 0.18040880815324517, + -0.16217068294824014, + -0.027538753020782958 + ], + [ + 0.17922135868639552, + -0.1857144746622218, + -0.026496441483744387 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.419552221511367 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.48860093452214415, + 0.21483772182745947, + -0.027876507029536736 + ], + "position_mm": [ + 488.60093452214414, + 214.83772182745946, + -27.876507029536736 + ], + "normal": [ + 0.0670186617365675, + -0.058470563469820616, + 0.9960369933825557 + ], + "corners_m": [ + [ + 0.4765721705864046, + 0.2034188838355537, + -0.02793027164749703 + ], + [ + 0.47689705061916854, + 0.2265439372882084, + -0.026209353028194726 + ], + [ + 0.5006234325681025, + 0.22618755532488607, + -0.028213166450377997 + ], + [ + 0.5003110843149011, + 0.20320051086118976, + -0.0291532369920772 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.446141458504894 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.34002828137880914, + -0.32824737340461296, + -0.02759083073330129 + ], + "position_mm": [ + 340.02828137880914, + -328.247373404613, + -27.590830733301292 + ], + "normal": [ + 0.036775079395671616, + 0.03547480362833722, + 0.9986937127282683 + ], + "corners_m": [ + [ + 0.32823485132107605, + -0.33967917843491247, + -0.026705851876983065 + ], + [ + 0.32868576970190566, + -0.31669249758240975, + -0.027628360754826633 + ], + [ + 0.3517942480549486, + -0.31681652787414105, + -0.028385357493838498 + ], + [ + 0.35139825643730643, + -0.3398012897269887, + -0.027643752807556977 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.078412233887164 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.28477842600539216, + -0.2611650589753979, + -0.027525185806588387 + ], + "position_mm": [ + 284.77842600539213, + -261.16505897539787, + -27.525185806588386 + ], + "normal": [ + 0.04974367674799338, + -0.016319395833623962, + 0.9986286817146887 + ], + "corners_m": [ + [ + 0.27265733835131517, + -0.27246884312007635, + -0.02728097019191235 + ], + [ + 0.2736909463935873, + -0.2488218421511797, + -0.02659619499397128 + ], + [ + 0.296862522187932, + -0.25007220938081587, + -0.028124104059557332 + ], + [ + 0.295902897088734, + -0.2732973412495196, + -0.02809947398091258 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.363673333190896 + }, + { + "marker_id": 56, + "link": "Board", + "position_m": [ + 0.5005522218504468, + 0.16524596347644882, + -0.02835240804549706 + ], + "position_mm": [ + 500.5522218504468, + 165.24596347644882, + -28.35240804549706 + ], + "normal": [ + 0.0527402827343598, + -0.05030602546449371, + 0.9973403463106592 + ], + "corners_m": [ + [ + 0.4886781269718622, + 0.1538432628221342, + -0.028113348573127635 + ], + [ + 0.4889499379348003, + 0.17709052906714923, + -0.027326576153834548 + ], + [ + 0.5125157561924402, + 0.17647036210029796, + -0.028231176020749253 + ], + [ + 0.5120650663026843, + 0.15357969991621392, + -0.029738531434276794 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.31074416442109 + }, + { + "marker_id": 57, + "link": "Board", + "position_m": [ + 0.6043014556076433, + -0.36522271977523946, + -0.027512117134979735 + ], + "position_mm": [ + 604.3014556076432, + -365.22271977523945, + -27.512117134979736 + ], + "normal": [ + 0.03495884584046278, + -0.005462497311808814, + 0.9993738240621581 + ], + "corners_m": [ + [ + 0.591968639923899, + -0.37591941696440434, + -0.02692398942041797 + ], + [ + 0.5940115776187654, + -0.35273718727345393, + -0.027299077808318407 + ], + [ + 0.6166315474518378, + -0.3547479630737979, + -0.02766687294690424 + ], + [ + 0.6145940574360705, + -0.3774863117893017, + -0.028158528364278318 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.88379257230473 + }, + { + "marker_id": 58, + "link": "Board", + "position_m": [ + 0.04760162186008221, + -0.21650619986728217, + -0.02677272699998955 + ], + "position_mm": [ + 47.60162186008221, + -216.50619986728216, + -26.77272699998955 + ], + "normal": [ + 0.006309275874434729, + 0.04051778376148621, + 0.9991588973917 + ], + "corners_m": [ + [ + 0.03603072326420602, + -0.22848435252703095, + -0.025990143627254922 + ], + [ + 0.03577529389163546, + -0.2051414276152632, + -0.027379940578314103 + ], + [ + 0.0593199417821514, + -0.2046101468460103, + -0.027106104806548518 + ], + [ + 0.05928052850233596, + -0.22778887248082422, + -0.026614718987840652 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.34761142616873 + }, + { + "marker_id": 63, + "link": "Board", + "position_m": [ + 0.7758681074652511, + -0.2364546663327315, + -0.027363799088751195 + ], + "position_mm": [ + 775.8681074652511, + -236.45466633273148, + -27.363799088751193 + ], + "normal": [ + 0.016512641877972543, + 0.015848793332588703, + 0.9997380398925064 + ], + "corners_m": [ + [ + 0.7650184393516647, + -0.24869024415251365, + -0.026893262316393118 + ], + [ + 0.764292751942433, + -0.22514738038218757, + -0.027448595673385347 + ], + [ + 0.7868041617433558, + -0.22463207704736096, + -0.027631538196366136 + ], + [ + 0.7873570768235513, + -0.24734896374886378, + -0.02748180016886017 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.7973387713386 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.018784584618846252, + -0.1892738368663314, + -0.02617775205684006 + ], + "position_mm": [ + -18.784584618846253, + -189.2738368663314, + -26.17775205684006 + ], + "normal": [ + -0.024930911127222594, + 0.0026123252229242055, + 0.9996857633413094 + ], + "corners_m": [ + [ + -0.030309202976442757, + -0.20092241420261475, + -0.02648678055266714 + ], + [ + -0.030343436292427806, + -0.17754807323944988, + -0.026445052328746797 + ], + [ + -0.007155383280337833, + -0.1775074527791335, + -0.025969565865479664 + ], + [ + -0.007330315926176617, + -0.2011174072441274, + -0.025809609480466636 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.292050122502626 + }, + { + "marker_id": 66, + "link": "Board", + "position_m": [ + 0.20990669716717614, + -0.3634472612804458, + -0.02588885696370904 + ], + "position_mm": [ + 209.90669716717613, + -363.4472612804458, + -25.888856963709042 + ], + "normal": [ + 0.012455509741676002, + -0.02534222775607698, + 0.9996012363785042 + ], + "corners_m": [ + [ + 0.1977338253291003, + -0.3750066398088528, + -0.025974374678080347 + ], + [ + 0.19864287958955043, + -0.35137598712177837, + -0.02550025569330157 + ], + [ + 0.22168255306184745, + -0.35211479413871305, + -0.02568935814285184 + ], + [ + 0.2215675306882064, + -0.3752916240524389, + -0.02639143934060241 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.43299493987875 + }, + { + "marker_id": 68, + "link": "Board", + "position_m": [ + 0.5754937488305435, + 0.1739026337658878, + -0.02814406128721321 + ], + "position_mm": [ + 575.4937488305435, + 173.9026337658878, + -28.14406128721321 + ], + "normal": [ + 0.010595298660023306, + -0.02949033806782853, + 0.9995089092183972 + ], + "corners_m": [ + [ + 0.563793520025014, + 0.1622208598839474, + -0.0282233351916166 + ], + [ + 0.5635350035300265, + 0.18535298012599644, + -0.02782569728221914 + ], + [ + 0.5868003879620242, + 0.1854698327902097, + -0.027775101859398948 + ], + [ + 0.5878460838051093, + 0.16256686226339764, + -0.02875211081561815 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.35280402637364 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.0062070754639299555, + -0.2775342667483787, + -0.02662823562461876 + ], + "position_mm": [ + 6.2070754639299555, + -277.53426674837874, + -26.62823562461876 + ], + "normal": [ + 0.01908621302162013, + 0.051919220009262634, + 0.9984688833740004 + ], + "corners_m": [ + [ + -0.005593474244015122, + -0.2889796405230794, + -0.025901602353184238 + ], + [ + -0.005046810740465004, + -0.26550251882347337, + -0.02694446924057375 + ], + [ + 0.017980080232306805, + -0.266109162875886, + -0.027541743412466974 + ], + [ + 0.017488506607893143, + -0.28954574477107614, + -0.02612512749225007 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.28093955176518 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.441613256669648, + 0.19375047402920076, + -0.027945499783633698 + ], + "position_mm": [ + 441.613256669648, + 193.75047402920075, + -27.9454997836337 + ], + "normal": [ + 0.04220768065798484, + -0.007873810972323092, + 0.9990778322003976 + ], + "corners_m": [ + [ + 0.4305027624240687, + 0.18162223572143135, + -0.02796083196738758 + ], + [ + 0.4292931992664901, + 0.2048075097408415, + -0.026960055064253453 + ], + [ + 0.45303574262546853, + 0.205949769498186, + -0.028708120754145548 + ], + [ + 0.45362132236256464, + 0.18262238115634424, + -0.028152991348748213 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.388719820652703 + }, + { + "marker_id": 97, + "link": "Board", + "position_m": [ + 0.30677164259746004, + -0.3585092395303406, + -0.026846631840577458 + ], + "position_mm": [ + 306.77164259746, + -358.5092395303406, + -26.84663184057746 + ], + "normal": [ + 0.06135651527372787, + -0.06297425279623779, + 0.9961273119025602 + ], + "corners_m": [ + [ + 0.29478730754227783, + -0.36995221565412945, + -0.026943406977521914 + ], + [ + 0.2953709675227311, + -0.34626460095416045, + -0.02525987408991113 + ], + [ + 0.31885544888676287, + -0.34713502763295234, + -0.02698304796080108 + ], + [ + 0.31807284643806827, + -0.3706851138801202, + -0.028200198334075707 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.560920112321003 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6517295714590179, + -0.22378395786176808, + -0.027447714728502406 + ], + "position_mm": [ + 651.7295714590178, + -223.78395786176807, + -27.447714728502405 + ], + "normal": [ + -0.011856932918780372, + -0.008084638519855527, + 0.9998970205785008 + ], + "corners_m": [ + [ + 0.6393528676706781, + -0.23413234980278727, + -0.027543396825760274 + ], + [ + 0.6411178962348237, + -0.21161457276202672, + -0.027612287132815307 + ], + [ + 0.6639092499664809, + -0.21330120094591223, + -0.027082834577027898 + ], + [ + 0.6625382719640891, + -0.2360877079363461, + -0.027552340378406145 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.886753330749595 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10490972692025931, + -0.19061973720674327, + -0.026395562564093034 + ], + "position_mm": [ + 104.9097269202593, + -190.61973720674328, + -26.395562564093034 + ], + "normal": [ + 0.05171329009085219, + 0.050972603886716095, + 0.9973602805811886 + ], + "corners_m": [ + [ + 0.09355384622430646, + -0.2024722333969847, + -0.02467059596369542 + ], + [ + 0.09295010971087048, + -0.179511056699502, + -0.02687762787344988 + ], + [ + 0.11623289297383516, + -0.17873079809297396, + -0.02705515714055202 + ], + [ + 0.11690205877202513, + -0.20176486063751242, + -0.02697886927867481 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.22200923569569 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.30916732776846334, + -0.155347955677207, + 0.15693635293139 + ], + "position_mm": [ + 309.16732776846334, + -155.34795567720698, + 156.93635293139 + ], + "normal": [ + -0.3480922051205892, + -0.7149967462110525, + 0.6063097142895646 + ], + "corners_m": [ + [ + 0.29772356266107153, + -0.14461185796629566, + 0.1630016984092485 + ], + [ + 0.32010305036735703, + -0.1509573437631679, + 0.16841822452982824 + ], + [ + 0.32084973170293074, + -0.16595579483288433, + 0.1511087087296771 + ], + [ + 0.29799296634249406, + -0.15986682614648004, + 0.14521678005680616 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.65226563765349 + }, + { + "marker_id": 219, + "link": "Arm2", + "position_m": [ + 0.353296522983271, + -0.16754703618556033, + 0.116391390986823 + ], + "position_mm": [ + 353.296522983271, + -167.54703618556033, + 116.391390986823 + ], + "normal": [ + 0.9429348319065125, + -0.27723367740171956, + 0.1844326188388501 + ], + "corners_m": [ + [ + 0.34938012387506767, + -0.16821330519460226, + 0.1366115264200989 + ], + [ + 0.3577197898558521, + -0.15126903452003512, + 0.11694241305157758 + ], + [ + 0.3574201486189585, + -0.16690238097006818, + 0.0976604830405311 + ], + [ + 0.3486660295832058, + -0.18380342405753586, + 0.11435114143508439 + ] + ], + "num_cameras": 2, + "edge_length_mm": 26.14854433521585 + }, + { + "marker_id": 231, + "link": "Ellbow", + "position_m": [ + 0.31824921959028274, + -0.016035507600091033, + 0.3135986490437831 + ], + "position_mm": [ + 318.24921959028273, + -16.035507600091034, + 313.5986490437831 + ], + "normal": [ + 0.0005824365474253744, + -0.08099115372901211, + 0.9967146501307743 + ], + "corners_m": [ + [ + 0.30590463783433564, + -0.004474298298663191, + 0.31442391696499733 + ], + [ + 0.32989185023675466, + -0.0037498715444060854, + 0.31471253076414046 + ], + [ + 0.3305488397065397, + -0.027481821072554636, + 0.31253855017589033 + ], + [ + 0.30665155058350096, + -0.028436039484740216, + 0.3127195982701044 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.947789324562574 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.22797046584594605, + -0.03742735667982421, + 0.30693695059386855 + ], + "position_mm": [ + 227.97046584594605, + -37.427356679824214, + 306.9369505938686 + ], + "normal": [ + 0.004899324452569835, + -0.5145190550788412, + 0.8574649488933556 + ], + "corners_m": [ + [ + 0.2161127277496516, + -0.02717452054820297, + 0.3132155829526895 + ], + [ + 0.23994457454316345, + -0.02707731611271736, + 0.31302142712476516 + ], + [ + 0.23981081271264895, + -0.047923429731846184, + 0.30062886043333803 + ], + [ + 0.21601374837832016, + -0.047534160326530336, + 0.3008819318646816 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.922648868027512 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.2796917403076659, + -0.04183661030159608, + 0.3028413597803695 + ], + "position_mm": [ + 279.6917403076659, + -41.836610301596075, + 302.84135978036954 + ], + "normal": [ + 0.004795305874728056, + -0.7639918573978333, + 0.6452080647910229 + ], + "corners_m": [ + [ + 0.26752869505668286, + -0.034461747792544205, + 0.3117039443187621 + ], + [ + 0.29122684003548704, + -0.03389608820533303, + 0.31211815861465403 + ], + [ + 0.2920186705722407, + -0.04919704505019012, + 0.2940735484210467 + ], + [ + 0.2679927555662531, + -0.04979156015831697, + 0.2934697877670154 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.811921569958436 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/aruco_positions_initial.json b/data/camera_study/Scene10/k3_efg/aruco_positions_initial.json new file mode 100644 index 0000000..2bf2463 --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/aruco_positions_initial.json @@ -0,0 +1,524 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:18:35Z", + "summary": { + "num_cameras": 3, + "num_markers": 24, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 46, + "position_m": [ + 0.5349079942904118, + 0.18252164857567585, + -0.02842723749678798 + ], + "position_mm": [ + 534.9079942904118, + 182.52164857567584, + -28.42723749678798 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3439378056698193, + -0.2882251402059977, + -0.027252363811304914 + ], + "position_mm": [ + 343.9378056698193, + -288.2251402059977, + -27.252363811304914 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6876697828806948, + -0.3186006114330489, + -0.02736316925778259 + ], + "position_mm": [ + 687.6697828806948, + -318.6006114330489, + -27.36316925778259 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.1681498607745509, + -0.1733931351685966, + -0.027195535438267544 + ], + "position_mm": [ + 168.14986077455092, + -173.39313516859661, + -27.195535438267544 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4886167926345748, + 0.2148715292403088, + -0.027973477565740586 + ], + "position_mm": [ + 488.6167926345748, + 214.8715292403088, + -27.973477565740588 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.34022600137938147, + -0.3287144924988329, + -0.027671883787346047 + ], + "position_mm": [ + 340.22600137938144, + -328.7144924988329, + -27.671883787346047 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28478271028907015, + -0.2611695674782507, + -0.02762087551779145 + ], + "position_mm": [ + 284.78271028907017, + -261.1695674782507, + -27.62087551779145 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 56, + "position_m": [ + 0.5005702459128442, + 0.1652755130493694, + -0.02844878851727275 + ], + "position_mm": [ + 500.57024591284414, + 165.2755130493694, + -28.448788517272753 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 57, + "position_m": [ + 0.6043205419720532, + -0.3652268610664635, + -0.02758261014495349 + ], + "position_mm": [ + 604.3205419720532, + -365.2268610664635, + -27.58261014495349 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.047590227673648566, + -0.21651182831467572, + -0.02687041535464316 + ], + "position_mm": [ + 47.59022767364856, + -216.5118283146757, + -26.87041535464316 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7759056113265437, + -0.23645070279275476, + -0.027438199281543736 + ], + "position_mm": [ + 775.9056113265436, + -236.45070279275475, + -27.438199281543735 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.018799169010563516, + -0.18927372107675208, + -0.02627585869090804 + ], + "position_mm": [ + -18.799169010563517, + -189.27372107675208, + -26.275858690908038 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 66, + "position_m": [ + 0.20990747429586668, + -0.363458557506648, + -0.025984227806609046 + ], + "position_mm": [ + 209.90747429586668, + -363.458557506648, + -25.984227806609045 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 68, + "position_m": [ + 0.5755216018841531, + 0.1739311004631154, + -0.028243797921295614 + ], + "position_mm": [ + 575.5216018841531, + 173.9311004631154, + -28.243797921295613 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.006190691231565941, + -0.2775452480978005, + -0.026725659867523937 + ], + "position_mm": [ + 6.190691231565941, + -277.54524809780054, + -26.725659867523937 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4416282110583098, + 0.19377892494058815, + -0.028043346549176788 + ], + "position_mm": [ + 441.6282110583098, + 193.77892494058815, + -28.04334654917679 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.306777022111503, + -0.35851600203924405, + -0.026940389443805817 + ], + "position_mm": [ + 306.77702211150296, + -358.51600203924403, + -26.940389443805817 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6517521811062535, + -0.22377333946988334, + -0.027512336599126174 + ], + "position_mm": [ + 651.7521811062536, + -223.77333946988335, + -27.512336599126176 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10489865671904526, + -0.190625214898906, + -0.02649419323756548 + ], + "position_mm": [ + 104.89865671904526, + -190.625214898906, + -26.49419323756548 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3092001790781952, + -0.15530933541454842, + 0.15689564018737753 + ], + "position_mm": [ + 309.2001790781952, + -155.30933541454843, + 156.89564018737752 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3532496825723185, + -0.16754453874706673, + 0.1163962636425716 + ], + "position_mm": [ + 353.2496825723185, + -167.54453874706672, + 116.39626364257161 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.31826909720982144, + -0.016008708472818794, + 0.31349603415864846 + ], + "position_mm": [ + 318.26909720982144, + -16.008708472818796, + 313.49603415864846 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.22798165254532435, + -0.037365751906833486, + 0.3068808033272097 + ], + "position_mm": [ + 227.98165254532435, + -37.36575190683349, + 306.88080332720966 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.27970579764162246, + -0.041775395534143354, + 0.30283527051897075 + ], + "position_mm": [ + 279.70579764162244, + -41.77539553414336, + 302.83527051897073 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/aruco_positions_optimized.json b/data/camera_study/Scene10/k3_efg/aruco_positions_optimized.json new file mode 100644 index 0000000..61004c1 --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/aruco_positions_optimized.json @@ -0,0 +1,523 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:18:37Z", + "summary": { + "num_cameras": 3, + "num_markers": 24, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 46, + "position_m": [ + 0.5367817986988177, + 0.1833977979284732, + -0.03243198345497099 + ], + "position_mm": [ + 536.7817986988177, + 183.39779792847318, + -32.43198345497099 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.34399187272737003, + -0.2857294242156785, + -0.02008056835554137 + ], + "position_mm": [ + 343.99187272737004, + -285.7294242156785, + -20.08056835554137 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.687561797140629, + -0.3187236239469884, + -0.027392390362999872 + ], + "position_mm": [ + 687.561797140629, + -318.72362394698837, + -27.392390362999873 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.1680861557389929, + -0.1734103076719183, + -0.027211959667938927 + ], + "position_mm": [ + 168.08615573899291, + -173.4103076719183, + -27.211959667938928 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4879366617365328, + 0.21131654994418275, + -0.024293649417195654 + ], + "position_mm": [ + 487.93666173653276, + 211.31654994418275, + -24.293649417195653 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3411340693838677, + -0.3290575537718514, + -0.027745100469637955 + ], + "position_mm": [ + 341.1340693838677, + -329.0575537718514, + -27.745100469637954 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28430739522543796, + -0.2609921808958032, + -0.027914582683867935 + ], + "position_mm": [ + 284.307395225438, + -260.99218089580324, + -27.914582683867934 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 56, + "position_m": [ + 0.4988231892108944, + 0.16741030424337544, + -0.026859188004313608 + ], + "position_mm": [ + 498.82318921089444, + 167.41030424337544, + -26.85918800431361 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 57, + "position_m": [ + 0.6040255225635438, + -0.3655867425238744, + -0.02761145920893268 + ], + "position_mm": [ + 604.0255225635439, + -365.5867425238744, + -27.611459208932683 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.049384428987362824, + -0.21680763957824165, + -0.019409427875485136 + ], + "position_mm": [ + 49.384428987362824, + -216.80763957824163, + -19.409427875485136 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7761506146472855, + -0.23619672231688918, + -0.027315011406529636 + ], + "position_mm": [ + 776.1506146472855, + -236.19672231688918, + -27.315011406529635 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.021627709264877903, + -0.18892705631026896, + -0.03225478363423408 + ], + "position_mm": [ + -21.627709264877904, + -188.92705631026897, + -32.25478363423408 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 66, + "position_m": [ + 0.21036610252869659, + -0.36345386843090044, + -0.02614090665936316 + ], + "position_mm": [ + 210.3661025286966, + -363.45386843090046, + -26.14090665936316 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 68, + "position_m": [ + 0.5752693970434081, + 0.17398873312347005, + -0.027994061957817264 + ], + "position_mm": [ + 575.269397043408, + 173.98873312347004, + -27.994061957817262 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.00567124592043169, + -0.2783459833030344, + -0.02880878171256234 + ], + "position_mm": [ + 5.67124592043169, + -278.3459833030344, + -28.80878171256234 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4426197949877123, + 0.19423204660293075, + -0.02920257492703485 + ], + "position_mm": [ + 442.61979498771234, + 194.23204660293075, + -29.20257492703485 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.3049199335928492, + -0.3601910233279945, + -0.029421556880636777 + ], + "position_mm": [ + 304.9199335928492, + -360.1910233279945, + -29.42155688063678 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6518917468354243, + -0.22362319522267482, + -0.0274641642870156 + ], + "position_mm": [ + 651.8917468354243, + -223.6231952226748, + -27.464164287015603 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10628173286703718, + -0.1901270416324641, + -0.02769084969850148 + ], + "position_mm": [ + 106.28173286703718, + -190.1270416324641, + -27.690849698501477 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3091384001797609, + -0.15539048735895145, + 0.15689080146771528 + ], + "position_mm": [ + 309.13840017976094, + -155.39048735895145, + 156.89080146771528 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3534017845260349, + -0.16736096623653873, + 0.11639755577577807 + ], + "position_mm": [ + 353.4017845260349, + -167.36096623653873, + 116.39755577577807 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.31807107752216507, + -0.016271558175105786, + 0.3134426807041533 + ], + "position_mm": [ + 318.07107752216507, + -16.271558175105785, + 313.4426807041533 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.22766356062976253, + -0.03778445268952457, + 0.3068376140577087 + ], + "position_mm": [ + 227.66356062976254, + -37.78445268952457, + 306.8376140577087 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2793626193234886, + -0.04223167769723384, + 0.3027787257124482 + ], + "position_mm": [ + 279.3626193234886, + -42.23167769723384, + 302.7787257124482 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/render_e_aruco_detection.json b/data/camera_study/Scene10/k3_efg/render_e_aruco_detection.json new file mode 100644 index 0000000..eb6723e --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/render_e_aruco_detection.json @@ -0,0 +1,1199 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:32Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "e", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.npz", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.png", + "image_sha256": "d9465055b192acfccc2cb79885882693d4f0d01141ecc06177116dded5d564cb", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 12, + "num_rejected_candidates": 20 + }, + "detections": [ + { + "observation_id": "44963f0d-f1d3-4034-8e5e-1f69e3249c0f", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 986.0, + 1027.0 + ], + [ + 1024.0, + 1012.0 + ], + [ + 1062.0, + 1033.0 + ], + [ + 1026.0, + 1050.0 + ] + ], + "center_px": [ + 1024.5, + 1030.5 + ], + "quality": { + "area_px": 1438.0, + "perimeter_px": 170.22312927246094, + "sharpness": { + "laplacian_var": 453.1861132150195 + }, + "contrast": { + "p05": 14.0, + "p95": 153.0, + "dynamic_range": 139.0, + "mean_gray": 72.75522388059701, + "std_gray": 50.64349874612125 + }, + "geometry": { + "distance_to_center_norm": 0.6414783596992493, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1589726701270886, + "edge_lengths_px": [ + 40.853397369384766, + 43.416587829589844, + 39.81205749511719, + 46.14108657836914 + ] + }, + "confidence": 0.4963016081621025 + }, + { + "observation_id": "2ca0df48-95d4-418b-9147-b8bfb7b61e12", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1277.0, + 1049.0 + ], + [ + 1308.0, + 1032.0 + ], + [ + 1355.0, + 1053.0 + ], + [ + 1324.0, + 1071.0 + ] + ], + "center_px": [ + 1316.0, + 1051.25 + ], + "quality": { + "area_px": 1489.0, + "perimeter_px": 174.5745086669922, + "sharpness": { + "laplacian_var": 412.816421944627 + }, + "contrast": { + "p05": 13.0, + "p95": 145.0, + "dynamic_range": 132.0, + "mean_gray": 61.47008547008547, + "std_gray": 49.57416295951042 + }, + "geometry": { + "distance_to_center_norm": 0.8724822998046875, + "distance_to_border_px": 9.0 + }, + "edge_ratio": 1.46778745364521, + "edge_lengths_px": [ + 35.35533905029297, + 51.4781494140625, + 35.84689712524414, + 51.89412307739258 + ] + }, + "confidence": 0.12173424671007582 + }, + { + "observation_id": "4af23d8d-09ca-44b8-89e7-8e76a786b5d5", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 780.0, + 466.0 + ], + [ + 811.0, + 497.0 + ], + [ + 790.0, + 533.0 + ], + [ + 759.0, + 507.0 + ] + ], + "center_px": [ + 785.0, + 500.75 + ], + "quality": { + "area_px": 1792.0, + "perimeter_px": 172.04298400878906, + "sharpness": { + "laplacian_var": 431.52108687263 + }, + "contrast": { + "p05": 4.0, + "p95": 86.0, + "dynamic_range": 82.0, + "mean_gray": 35.97742474916388, + "std_gray": 31.48995686460428 + }, + "geometry": { + "distance_to_center_norm": 0.08436811715364456, + "distance_to_border_px": 466.0 + }, + "edge_ratio": 1.138540089676814, + "edge_lengths_px": [ + 43.84062194824219, + 41.67733383178711, + 40.45985794067383, + 46.06517028808594 + ] + }, + "confidence": 0.8783177764815114 + }, + { + "observation_id": "4f7824e5-e382-4c7a-83a4-e29cc5a6b490", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 777.0, + 986.0 + ], + [ + 818.0, + 973.0 + ], + [ + 849.0, + 994.0 + ], + [ + 809.0, + 1009.0 + ] + ], + "center_px": [ + 813.25, + 990.5 + ], + "quality": { + "area_px": 1332.0, + "perimeter_px": 162.58305740356445, + "sharpness": { + "laplacian_var": 675.3602149959689 + }, + "contrast": { + "p05": 19.700000000000003, + "p95": 154.0, + "dynamic_range": 134.3, + "mean_gray": 93.49617486338798, + "std_gray": 46.101180438545676 + }, + "geometry": { + "distance_to_center_norm": 0.5111664533615112, + "distance_to_border_px": 71.0 + }, + "edge_ratio": 1.1487138651855313, + "edge_lengths_px": [ + 43.011627197265625, + 37.44329071044922, + 42.72002029418945, + 39.408119201660156 + ] + }, + "confidence": 0.7730384623298485 + }, + { + "observation_id": "041c59a9-c210-4ec4-93d9-27f5277d0d5c", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 749.0, + 642.0 + ], + [ + 771.0, + 676.0 + ], + [ + 734.0, + 695.0 + ], + [ + 713.0, + 662.0 + ] + ], + "center_px": [ + 741.75, + 668.75 + ], + "quality": { + "area_px": 1642.0, + "perimeter_px": 162.38792037963867, + "sharpness": { + "laplacian_var": 92.67615631030367 + }, + "contrast": { + "p05": 7.0, + "p95": 101.0, + "dynamic_range": 94.0, + "mean_gray": 53.06440071556351, + "std_gray": 38.78329965301281 + }, + "geometry": { + "distance_to_center_norm": 0.14508245885372162, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0633526883983422, + "edge_lengths_px": [ + 40.49691390991211, + 41.59326934814453, + 39.11521530151367, + 41.18252182006836 + ] + }, + "confidence": 0.7262889453443055 + }, + { + "observation_id": "c4ad7554-f66d-42bf-bdc1-200a3b0e4e84", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 865.0, + 314.0 + ], + [ + 896.0, + 337.0 + ], + [ + 879.0, + 373.0 + ], + [ + 847.0, + 352.0 + ] + ], + "center_px": [ + 871.75, + 344.0 + ], + "quality": { + "area_px": 1550.5, + "perimeter_px": 158.7354850769043, + "sharpness": { + "laplacian_var": 91.32963410546913 + }, + "contrast": { + "p05": 3.0, + "p95": 80.0, + "dynamic_range": 77.0, + "mean_gray": 29.31711880261927, + "std_gray": 30.16374856556423 + }, + "geometry": { + "distance_to_center_norm": 0.27542126178741455, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0985563073040754, + "edge_lengths_px": [ + 38.60051727294922, + 39.81205749511719, + 38.27531814575195, + 42.04759216308594 + ] + }, + "confidence": 0.6668204157436237 + }, + { + "observation_id": "668414cc-c5a5-43ea-9e29-84147807f9fd", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 934.0 + ], + [ + 1105.0, + 922.0 + ], + [ + 1141.0, + 939.0 + ], + [ + 1107.0, + 953.0 + ] + ], + "center_px": [ + 1106.0, + 937.0 + ], + "quality": { + "area_px": 1080.0, + "perimeter_px": 153.34338760375977, + "sharpness": { + "laplacian_var": 1315.6913698207666 + }, + "contrast": { + "p05": 34.0, + "p95": 156.0, + "dynamic_range": 122.0, + "mean_gray": 112.49931224209078, + "std_gray": 38.505501664035826 + }, + "geometry": { + "distance_to_center_norm": 0.6152436137199402, + "distance_to_border_px": 127.0 + }, + "edge_ratio": 1.128988685253164, + "edge_lengths_px": [ + 36.055511474609375, + 39.81205749511719, + 36.769554138183594, + 40.70626449584961 + ] + }, + "confidence": 0.6377388980107869 + }, + { + "observation_id": "706008eb-1325-46d5-bd17-3cc1a455c3ed", + "type": "aruco", + "marker_id": 244, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 981.0, + 163.0 + ], + [ + 1000.0, + 190.0 + ], + [ + 982.0, + 224.0 + ], + [ + 962.0, + 201.0 + ] + ], + "center_px": [ + 981.25, + 194.5 + ], + "quality": { + "area_px": 1164.5, + "perimeter_px": 144.45070838928223, + "sharpness": { + "laplacian_var": 96.06874104557231 + }, + "contrast": { + "p05": 4.0, + "p95": 67.0, + "dynamic_range": 63.0, + "mean_gray": 33.3358024691358, + "std_gray": 25.95401112529325 + }, + "geometry": { + "distance_to_center_norm": 0.48128148913383484, + "distance_to_border_px": 163.0 + }, + "edge_ratio": 1.393897148047905, + "edge_lengths_px": [ + 33.0151481628418, + 38.470767974853516, + 30.479501724243164, + 42.48529052734375 + ] + }, + "confidence": 0.35113079528934743 + }, + { + "observation_id": "3f75df8e-8379-4c99-9232-aa022a55c7d7", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 674.0, + 619.0 + ], + [ + 703.0, + 624.0 + ], + [ + 700.0, + 664.0 + ], + [ + 672.0, + 658.0 + ] + ], + "center_px": [ + 687.25, + 641.25 + ], + "quality": { + "area_px": 1139.5, + "perimeter_px": 137.22710990905762, + "sharpness": { + "laplacian_var": 863.1978615203191 + }, + "contrast": { + "p05": 32.0, + "p95": 169.0, + "dynamic_range": 137.0, + "mean_gray": 80.9662775616083, + "std_gray": 55.08560868618617 + }, + "geometry": { + "distance_to_center_norm": 0.11823874711990356, + "distance_to_border_px": 416.0 + }, + "edge_ratio": 1.4007837305049835, + "edge_lengths_px": [ + 29.42787742614746, + 40.112342834472656, + 28.635643005371094, + 39.051246643066406 + ] + }, + "confidence": 0.542315455357842 + }, + { + "observation_id": "84cf0560-4614-4c5d-ac31-e3e03e226b82", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 517.0, + 788.0 + ], + [ + 550.0, + 780.0 + ], + [ + 575.0, + 794.0 + ], + [ + 540.0, + 802.0 + ] + ], + "center_px": [ + 545.5, + 791.0 + ], + "quality": { + "area_px": 668.0, + "perimeter_px": 125.43741798400879, + "sharpness": { + "laplacian_var": 1607.3082682839233 + }, + "contrast": { + "p05": 19.0, + "p95": 147.0, + "dynamic_range": 128.0, + "mean_gray": 65.39445628997868, + "std_gray": 47.873144952539 + }, + "geometry": { + "distance_to_center_norm": 0.33966439962387085, + "distance_to_border_px": 278.0 + }, + "edge_ratio": 1.3333908058760269, + "edge_lengths_px": [ + 33.95585250854492, + 28.65309715270996, + 35.902645111083984, + 26.925823211669922 + ] + }, + "confidence": 0.33398560374859715 + }, + { + "observation_id": "d8e1d2b6-41b3-4682-acca-d92d2d8d20db", + "type": "aruco", + "marker_id": 114, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 846.0, + 444.0 + ], + [ + 854.0, + 462.0 + ], + [ + 835.0, + 496.0 + ], + [ + 827.0, + 477.0 + ] + ], + "center_px": [ + 840.5, + 469.75 + ], + "quality": { + "area_px": 619.5, + "perimeter_px": 117.34079360961914, + "sharpness": { + "laplacian_var": 515.9082048204126 + }, + "contrast": { + "p05": 13.0, + "p95": 77.0, + "dynamic_range": 64.0, + "mean_gray": 34.12249443207127, + "std_gray": 22.140483977294974 + }, + "geometry": { + "distance_to_center_norm": 0.15498033165931702, + "distance_to_border_px": 444.0 + }, + "edge_ratio": 1.977319866342296, + "edge_lengths_px": [ + 19.697715759277344, + 38.94868469238281, + 20.615528106689453, + 38.07886505126953 + ] + }, + "confidence": 0.16709486695806255 + }, + { + "observation_id": "f1db70cf-18d1-48ad-9098-b402e8b3a337", + "type": "aruco", + "marker_id": 120, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 904.0, + 345.0 + ], + [ + 911.0, + 366.0 + ], + [ + 893.0, + 397.0 + ], + [ + 885.0, + 381.0 + ] + ], + "center_px": [ + 898.25, + 372.25 + ], + "quality": { + "area_px": 593.5, + "perimeter_px": 116.57765007019043, + "sharpness": { + "laplacian_var": 612.2280321521758 + }, + "contrast": { + "p05": 13.75, + "p95": 72.0, + "dynamic_range": 58.25, + "mean_gray": 30.091743119266056, + "std_gray": 19.626461861945877 + }, + "geometry": { + "distance_to_center_norm": 0.27196842432022095, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 2.2755493296600644, + "edge_lengths_px": [ + 22.135944366455078, + 35.84689712524414, + 17.8885440826416, + 40.70626449584961 + ] + }, + "confidence": 0.12660450288269692 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 955.0, + 949.0 + ], + [ + 989.0, + 936.0 + ], + [ + 1024.0, + 953.0 + ], + [ + 991.0, + 967.0 + ] + ], + "center_px": [ + 989.75, + 951.25 + ], + "area_px": 1065.5 + }, + { + "image_points_px": [ + [ + 727.0, + 881.0 + ], + [ + 763.0, + 870.0 + ], + [ + 792.0, + 891.0 + ], + [ + 756.0, + 904.0 + ] + ], + "center_px": [ + 759.5, + 886.5 + ], + "area_px": 1140.0 + }, + { + "image_points_px": [ + [ + 818.0, + 869.0 + ], + [ + 850.0, + 858.0 + ], + [ + 887.0, + 875.0 + ], + [ + 849.0, + 885.0 + ] + ], + "center_px": [ + 851.0, + 871.75 + ], + "area_px": 934.5 + }, + { + "image_points_px": [ + [ + 1115.0, + 909.0 + ], + [ + 1146.0, + 897.0 + ], + [ + 1182.0, + 914.0 + ], + [ + 1154.0, + 927.0 + ] + ], + "center_px": [ + 1149.25, + 911.75 + ], + "area_px": 985.0 + }, + { + "image_points_px": [ + [ + 1244.0, + 805.0 + ], + [ + 1274.0, + 794.0 + ], + [ + 1312.0, + 812.0 + ], + [ + 1282.0, + 821.0 + ] + ], + "center_px": [ + 1278.0, + 808.0 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 891.0, + 399.0 + ], + [ + 918.0, + 457.0 + ], + [ + 898.0, + 447.0 + ], + [ + 884.0, + 415.0 + ] + ], + "center_px": [ + 897.75, + 429.5 + ], + "area_px": 669.0 + }, + { + "image_points_px": [ + [ + 495.0, + 791.0 + ], + [ + 459.0, + 801.0 + ], + [ + 438.0, + 784.0 + ], + [ + 473.0, + 774.0 + ] + ], + "center_px": [ + 466.25, + 787.5 + ], + "area_px": 818.5 + }, + { + "image_points_px": [ + [ + 888.0, + 139.0 + ], + [ + 871.0, + 170.0 + ], + [ + 844.0, + 169.0 + ], + [ + 861.0, + 139.0 + ] + ], + "center_px": [ + 866.0, + 154.25 + ], + "area_px": 832.0 + }, + { + "image_points_px": [ + [ + 635.0, + 778.0 + ], + [ + 606.0, + 791.0 + ], + [ + 580.0, + 773.0 + ], + [ + 612.0, + 764.0 + ] + ], + "center_px": [ + 608.25, + 776.5 + ], + "area_px": 757.5 + }, + { + "image_points_px": [ + [ + 754.0, + 745.0 + ], + [ + 784.0, + 735.0 + ], + [ + 806.0, + 749.0 + ], + [ + 780.0, + 762.0 + ] + ], + "center_px": [ + 781.0, + 747.75 + ], + "area_px": 710.0 + }, + { + "image_points_px": [ + [ + 852.0, + 659.0 + ], + [ + 882.0, + 653.0 + ], + [ + 906.0, + 665.0 + ], + [ + 877.0, + 672.0 + ] + ], + "center_px": [ + 879.25, + 662.25 + ], + "area_px": 528.0 + }, + { + "image_points_px": [ + [ + 613.0, + 739.0 + ], + [ + 581.0, + 746.0 + ], + [ + 560.0, + 733.0 + ], + [ + 592.0, + 726.0 + ] + ], + "center_px": [ + 586.5, + 736.0 + ], + "area_px": 563.0 + }, + { + "image_points_px": [ + [ + 770.0, + 398.0 + ], + [ + 751.0, + 432.0 + ], + [ + 736.0, + 433.0 + ], + [ + 753.0, + 403.0 + ] + ], + "center_px": [ + 752.5, + 416.5 + ], + "area_px": 458.0 + }, + { + "image_points_px": [ + [ + 937.0, + 633.0 + ], + [ + 963.0, + 626.0 + ], + [ + 986.0, + 637.0 + ], + [ + 962.0, + 645.0 + ] + ], + "center_px": [ + 962.0, + 635.25 + ], + "area_px": 467.5 + }, + { + "image_points_px": [ + [ + 496.0, + 636.0 + ], + [ + 518.0, + 630.0 + ], + [ + 542.0, + 641.0 + ], + [ + 514.0, + 648.0 + ] + ], + "center_px": [ + 517.5, + 638.75 + ], + "area_px": 424.0 + }, + { + "image_points_px": [ + [ + 706.0, + 672.0 + ], + [ + 713.0, + 681.0 + ], + [ + 712.0, + 701.0 + ], + [ + 705.0, + 700.0 + ] + ], + "center_px": [ + 709.0, + 688.5 + ], + "area_px": 173.0 + }, + { + "image_points_px": [ + [ + 1270.0, + 652.0 + ], + [ + 1277.0, + 642.0 + ], + [ + 1299.0, + 649.0 + ], + [ + 1283.0, + 656.0 + ] + ], + "center_px": [ + 1282.25, + 649.75 + ], + "area_px": 212.0 + }, + { + "image_points_px": [ + [ + 1324.0, + 677.0 + ], + [ + 1334.0, + 678.0 + ], + [ + 1347.0, + 684.0 + ], + [ + 1327.0, + 680.0 + ] + ], + "center_px": [ + 1333.0, + 679.75 + ], + "area_px": 47.5 + }, + { + "image_points_px": [ + [ + 1335.0, + 615.0 + ], + [ + 1338.0, + 613.0 + ], + [ + 1347.0, + 613.0 + ], + [ + 1358.0, + 618.0 + ] + ], + "center_px": [ + 1344.5, + 614.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 779.0, + 642.0 + ], + [ + 777.0, + 658.0 + ], + [ + 774.0, + 665.0 + ], + [ + 773.0, + 659.0 + ] + ], + "center_px": [ + 775.75, + 656.0 + ], + "area_px": 43.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/render_e_camera_pose.json b/data/camera_study/Scene10/k3_efg/render_e_camera_pose.json new file mode 100644 index 0000000..bc8461d --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/render_e_camera_pose.json @@ -0,0 +1,271 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:34Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_efg\\render_e_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "e", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 5, + "used_marker_ids": [ + 48, + 63, + 57, + 102, + 54 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.007197111808548965, + 0.001098276420089881, + 0.0009620344476883504, + 0.0009620205232011758 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 2.7281525726006493, + "residual_median_px": 2.5183121097354597, + "residual_max_px": 3.7576731420043146, + "sigma2_normalized": 2.3137087159701097e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.6321497559547424, + 0.7748407125473022, + 0.0029369741678237915 + ], + [ + 0.21024876832962036, + -0.16787971556186676, + -0.9631260633468628 + ], + [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + ], + "translation_m": [ + -0.056855153292417526, + -0.012442845851182938, + 1.5609862804412842 + ], + "rvec_rad": [ + 1.7048273936309237, + 0.8116750457158921, + -0.6120703769873145 + ] + }, + "camera_in_world": { + "position_m": [ + 1.2027034759521484, + -0.909389853477478, + 0.40814200043678284 + ], + "position_mm": [ + 1202.7034912109375, + -909.3898315429688, + 408.1419982910156 + ], + "orientation_deg": { + "roll": 113.81822204589844, + "pitch": 48.22581100463867, + "yaw": 18.396778106689453 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.00022441890537757206, + -7.963567536396464e-06, + -2.9398649194599163e-05, + -1.4795386871224034e-05, + -9.369620603686464e-05, + -1.2702492726669124e-05 + ], + [ + -7.963567536395407e-06, + 3.7068884464340944e-05, + -3.338378703660994e-05, + 2.6508530508930155e-05, + -6.804904795036776e-06, + -8.467045467073405e-06 + ], + [ + -2.939864919460005e-05, + -3.338378703660865e-05, + 0.00015704190560829434, + -5.550273740425191e-05, + 8.385195749589376e-06, + 3.13758938875245e-05 + ], + [ + -1.4795386871223326e-05, + 2.6508530508929867e-05, + -5.5502737404252506e-05, + 2.9231680266895845e-05, + 3.3812426915121855e-06, + -8.125563844390692e-06 + ], + [ + -9.369620603686502e-05, + -6.80490479503646e-06, + 8.385195749589481e-06, + 3.3812426915123345e-06, + 4.4878486349463374e-05, + 1.0425895360947247e-05 + ], + [ + -1.2702492726669507e-05, + -8.467045467073171e-06, + 3.137589388752461e-05, + -8.125563844390541e-06, + 1.0425895360947318e-05, + 2.9592030404347494e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.8583261662306342, + 0.3488408939722953, + 0.7180098641027528 + ], + "tvec_std_m": [ + 0.005406632987996859, + 0.006699140717246009, + 0.0054398557337807674 + ] + }, + "camera_center_std_m": [ + 0.006976893112270283, + 0.012106263892740327, + 0.01216157052134005 + ], + "camera_center_std_mm": [ + 6.976893112270283, + 12.106263892740326, + 12.16157052134005 + ], + "orientation_std_deg": { + "roll": 1.0513875130551562, + "pitch": 0.6166264667162378, + "yaw": 0.5162490597129769 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1024.5, + 1030.5 + ], + "projected_center_px": [ + 1023.4668579101562, + 1032.796630859375 + ], + "reprojection_error_px": 2.5183121097354597, + "confidence": 0.4963016081621025 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1316.0, + 1051.25 + ], + "projected_center_px": [ + 1318.0511474609375, + 1052.518798828125 + ], + "reprojection_error_px": 2.4118574528279497, + "confidence": 0.12173424671007582 + }, + { + "marker_id": 57, + "observed_center_px": [ + 813.25, + 990.5 + ], + "projected_center_px": [ + 814.3992309570312, + 987.8240966796875 + ], + "reprojection_error_px": 2.912248336295932, + "confidence": 0.7730384623298485 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1106.0, + 937.0 + ], + "projected_center_px": [ + 1103.0518798828125, + 934.6700439453125 + ], + "reprojection_error_px": 3.7576731420043146, + "confidence": 0.6377388980107869 + }, + { + "marker_id": 54, + "observed_center_px": [ + 545.5, + 791.0 + ], + "projected_center_px": [ + 546.1773071289062, + 792.4124755859375 + ], + "reprojection_error_px": 1.5664712661701496, + "confidence": 0.33398560374859715 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/render_f_aruco_detection.json b/data/camera_study/Scene10/k3_efg/render_f_aruco_detection.json new file mode 100644 index 0000000..a7b871c --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/render_f_aruco_detection.json @@ -0,0 +1,2058 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:33Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "f", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.npz", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.png", + "image_sha256": "aa67ae34760d38a87903e73b4020db43742a978458949ff309a7b2527c548cd4", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 33, + "num_rejected_candidates": 9 + }, + "detections": [ + { + "observation_id": "e1328044-e94e-441e-9132-5785b0fe47b0", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1111.0, + 551.0 + ], + [ + 1128.0, + 590.0 + ], + [ + 1088.0, + 605.0 + ], + [ + 1071.0, + 566.0 + ] + ], + "center_px": [ + 1099.5, + 578.0 + ], + "quality": { + "area_px": 1815.0, + "perimeter_px": 170.52822875976562, + "sharpness": { + "laplacian_var": 705.4441714458114 + }, + "contrast": { + "p05": 20.0, + "p95": 169.0, + "dynamic_range": 149.0, + "mean_gray": 91.23937908496733, + "std_gray": 63.85244467612601 + }, + "geometry": { + "distance_to_center_norm": 0.4237752854824066, + "distance_to_border_px": 312.0 + }, + "edge_ratio": 1.0041351499491737, + "edge_lengths_px": [ + 42.54409408569336, + 42.72002029418945, + 42.54409408569336, + 42.72002029418945 + ] + }, + "confidence": 0.9958818790982638 + }, + { + "observation_id": "134938a9-4996-4f50-b82b-4096b932a95d", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1016.0, + 419.0 + ], + [ + 1031.0, + 457.0 + ], + [ + 994.0, + 474.0 + ], + [ + 980.0, + 436.0 + ] + ], + "center_px": [ + 1005.25, + 446.5 + ], + "quality": { + "area_px": 1633.5, + "perimeter_px": 161.88091659545898, + "sharpness": { + "laplacian_var": 1206.2538238529316 + }, + "contrast": { + "p05": 64.0, + "p95": 184.0, + "dynamic_range": 120.0, + "mean_gray": 109.98129092609916, + "std_gray": 52.10421328381854 + }, + "geometry": { + "distance_to_center_norm": 0.33353662490844727, + "distance_to_border_px": 409.0 + }, + "edge_ratio": 1.0261563943133383, + "edge_lengths_px": [ + 40.853397369384766, + 40.71854782104492, + 40.49691390991211, + 39.81205749511719 + ] + }, + "confidence": 0.9745103237106064 + }, + { + "observation_id": "c825e5ec-3b17-4688-af7b-de95dbf6d332", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1036.0, + 506.0 + ], + [ + 1052.0, + 544.0 + ], + [ + 1022.0, + 561.0 + ], + [ + 1006.0, + 523.0 + ] + ], + "center_px": [ + 1029.0, + 533.5 + ], + "quality": { + "area_px": 1412.0, + "perimeter_px": 151.42587280273438, + "sharpness": { + "laplacian_var": 1012.7025030399973 + }, + "contrast": { + "p05": 38.0, + "p95": 183.0, + "dynamic_range": 145.0, + "mean_gray": 116.22860125260961, + "std_gray": 60.975378654093674 + }, + "geometry": { + "distance_to_center_norm": 0.34340929985046387, + "distance_to_border_px": 388.0 + }, + "edge_ratio": 1.1957310908974648, + "edge_lengths_px": [ + 41.231056213378906, + 34.48188018798828, + 41.231056213378906, + 34.48188018798828 + ] + }, + "confidence": 0.7872450089315723 + }, + { + "observation_id": "5999cff1-b83e-4983-a648-896f644bd692", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1052.0, + 572.0 + ], + [ + 1067.0, + 612.0 + ], + [ + 1037.0, + 628.0 + ], + [ + 1025.0, + 587.0 + ] + ], + "center_px": [ + 1045.25, + 599.75 + ], + "quality": { + "area_px": 1363.5, + "perimeter_px": 150.32693099975586, + "sharpness": { + "laplacian_var": 1006.0857327103973 + }, + "contrast": { + "p05": 35.0, + "p95": 182.0, + "dynamic_range": 147.0, + "mean_gray": 87.55157437567861, + "std_gray": 61.08527885104246 + }, + "geometry": { + "distance_to_center_norm": 0.3674362897872925, + "distance_to_border_px": 373.0 + }, + "edge_ratio": 1.38311172556412, + "edge_lengths_px": [ + 42.72002029418945, + 34.0, + 42.72002029418945, + 30.886890411376953 + ] + }, + "confidence": 0.6572137183127795 + }, + { + "observation_id": "96f37de7-fb3a-4d50-baab-a6f36f563916", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1373.0, + 931.0 + ], + [ + 1403.0, + 920.0 + ], + [ + 1417.0, + 952.0 + ], + [ + 1387.0, + 964.0 + ] + ], + "center_px": [ + 1395.0, + 941.75 + ], + "quality": { + "area_px": 1136.0, + "perimeter_px": 135.0394744873047, + "sharpness": { + "laplacian_var": 536.3795719450814 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 59.547588005215125, + "std_gray": 52.80020659255208 + }, + "geometry": { + "distance_to_center_norm": 0.8727903962135315, + "distance_to_border_px": 23.0 + }, + "edge_ratio": 1.1218600885282315, + "edge_lengths_px": [ + 31.95309066772461, + 34.928497314453125, + 32.31098937988281, + 35.84689712524414 + ] + }, + "confidence": 0.3105318897567382 + }, + { + "observation_id": "c8149135-79f8-452e-a411-416027ccd2f3", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1361.0, + 872.0 + ], + [ + 1392.0, + 861.0 + ], + [ + 1405.0, + 893.0 + ], + [ + 1375.0, + 904.0 + ] + ], + "center_px": [ + 1383.25, + 882.5 + ], + "quality": { + "area_px": 1124.5, + "perimeter_px": 134.31518936157227, + "sharpness": { + "laplacian_var": 517.914546739087 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 76.5836627140975, + "std_gray": 53.471581821317514 + }, + "geometry": { + "distance_to_center_norm": 0.8294032216072083, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.0931179608780046, + "edge_lengths_px": [ + 32.893768310546875, + 34.539833068847656, + 31.95309066772461, + 34.928497314453125 + ] + }, + "confidence": 0.480064078578645 + }, + { + "observation_id": "30d21dff-47ee-49a7-8812-a7843ed449ad", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 948.0, + 734.0 + ], + [ + 958.0, + 766.0 + ], + [ + 926.0, + 775.0 + ], + [ + 916.0, + 742.0 + ] + ], + "center_px": [ + 937.0, + 754.25 + ], + "quality": { + "area_px": 1125.0, + "perimeter_px": 134.23437118530273, + "sharpness": { + "laplacian_var": 451.55598900708645 + }, + "contrast": { + "p05": 10.0, + "p95": 140.0, + "dynamic_range": 130.0, + "mean_gray": 60.31848852901484, + "std_gray": 51.76857091737675 + }, + "geometry": { + "distance_to_center_norm": 0.3388288915157318, + "distance_to_border_px": 305.0 + }, + "edge_ratio": 1.0453855707425852, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 34.48188018798828, + 32.98484420776367 + ] + }, + "confidence": 0.717438637944123 + }, + { + "observation_id": "dff8cc51-64b4-44fd-b697-495e879bad15", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 644.0, + 826.0 + ], + [ + 676.0, + 815.0 + ], + [ + 686.0, + 847.0 + ], + [ + 654.0, + 857.0 + ] + ], + "center_px": [ + 665.0, + 836.25 + ], + "quality": { + "area_px": 1113.0, + "perimeter_px": 133.4630584716797, + "sharpness": { + "laplacian_var": 852.4779615278809 + }, + "contrast": { + "p05": 29.0, + "p95": 169.0, + "dynamic_range": 140.0, + "mean_gray": 86.11354309165527, + "std_gray": 58.71854981961371 + }, + "geometry": { + "distance_to_center_norm": 0.334791362285614, + "distance_to_border_px": 223.0 + }, + "edge_ratio": 1.0388313835116465, + "edge_lengths_px": [ + 33.83784866333008, + 33.52610778808594, + 33.52610778808594, + 32.572994232177734 + ] + }, + "confidence": 0.714264135428559 + }, + { + "observation_id": "7f580ef7-2536-4f02-9dbe-65e037094415", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1320.0, + 833.0 + ], + [ + 1351.0, + 823.0 + ], + [ + 1363.0, + 855.0 + ], + [ + 1333.0, + 865.0 + ] + ], + "center_px": [ + 1341.75, + 844.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 451.19488172035136 + }, + "contrast": { + "p05": 7.0, + "p95": 137.0, + "dynamic_range": 130.0, + "mean_gray": 45.32476319350474, + "std_gray": 49.27193956190029 + }, + "geometry": { + "distance_to_center_norm": 0.7689892649650574, + "distance_to_border_px": 77.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.6720101269988878 + }, + { + "observation_id": "8d62b3c4-45e1-4bad-912e-1ec5816ef87a", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1378.0, + 795.0 + ], + [ + 1409.0, + 785.0 + ], + [ + 1421.0, + 817.0 + ], + [ + 1391.0, + 827.0 + ] + ], + "center_px": [ + 1399.75, + 806.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 495.05510317310643 + }, + "contrast": { + "p05": 8.0, + "p95": 139.0, + "dynamic_range": 131.0, + "mean_gray": 82.98646820027064, + "std_gray": 51.90790044031631 + }, + "geometry": { + "distance_to_center_norm": 0.8110472559928894, + "distance_to_border_px": 19.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.25536384825957736 + }, + { + "observation_id": "efe5919c-c6f9-4441-810a-35a7f5be9073", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 534.0, + 807.0 + ], + [ + 566.0, + 797.0 + ], + [ + 575.0, + 829.0 + ], + [ + 544.0, + 839.0 + ] + ], + "center_px": [ + 554.75, + 818.0 + ], + "quality": { + "area_px": 1103.0, + "perimeter_px": 132.86674880981445, + "sharpness": { + "laplacian_var": 743.494629148182 + }, + "contrast": { + "p05": 35.0, + "p95": 172.0, + "dynamic_range": 137.0, + "mean_gray": 110.58367911479945, + "std_gray": 58.20082187769058 + }, + "geometry": { + "distance_to_center_norm": 0.35934022068977356, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 32.572994232177734, + 33.52610778808594 + ] + }, + "confidence": 0.7144285455619288 + }, + { + "observation_id": "c245aa92-822f-4120-93aa-bb9b463895e0", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 824.0, + 853.0 + ], + [ + 854.0, + 841.0 + ], + [ + 867.0, + 872.0 + ], + [ + 836.0, + 884.0 + ] + ], + "center_px": [ + 845.25, + 862.5 + ], + "quality": { + "area_px": 1095.5, + "perimeter_px": 132.40953826904297, + "sharpness": { + "laplacian_var": 442.72637538104226 + }, + "contrast": { + "p05": 14.0, + "p95": 151.0, + "dynamic_range": 137.0, + "mean_gray": 42.81124497991968, + "std_gray": 45.242857765301586 + }, + "geometry": { + "distance_to_center_norm": 0.3844088017940521, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.040372688406745, + "edge_lengths_px": [ + 32.31098937988281, + 33.61547088623047, + 33.241539001464844, + 33.241539001464844 + ] + }, + "confidence": 0.7019920279258633 + }, + { + "observation_id": "b00b21e5-3168-4990-840c-a0508fb3c507", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 590.0, + 838.0 + ], + [ + 621.0, + 828.0 + ], + [ + 631.0, + 859.0 + ], + [ + 600.0, + 870.0 + ] + ], + "center_px": [ + 610.5, + 848.75 + ], + "quality": { + "area_px": 1081.5, + "perimeter_px": 131.56586456298828, + "sharpness": { + "laplacian_var": 731.9229727377668 + }, + "contrast": { + "p05": 31.0, + "p95": 169.0, + "dynamic_range": 138.0, + "mean_gray": 66.63649222065064, + "std_gray": 51.73446481181097 + }, + "geometry": { + "distance_to_center_norm": 0.3639915883541107, + "distance_to_border_px": 210.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 32.572994232177734, + 32.572994232177734, + 32.893768310546875, + 33.52610778808594 + ] + }, + "confidence": 0.7005026944924987 + }, + { + "observation_id": "affb7a40-106e-423d-88b5-26f1b8a8e83c", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 655.0, + 735.0 + ], + [ + 687.0, + 726.0 + ], + [ + 695.0, + 757.0 + ], + [ + 664.0, + 766.0 + ] + ], + "center_px": [ + 675.25, + 746.0 + ], + "quality": { + "area_px": 1053.0, + "perimeter_px": 129.81721115112305, + "sharpness": { + "laplacian_var": 717.9247585125308 + }, + "contrast": { + "p05": 30.0, + "p95": 171.0, + "dynamic_range": 141.0, + "mean_gray": 93.84776536312849, + "std_gray": 59.42619485270114 + }, + "geometry": { + "distance_to_center_norm": 0.23422729969024658, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0382912394254866, + "edge_lengths_px": [ + 33.241539001464844, + 32.015621185302734, + 32.280025482177734, + 32.280025482177734 + ] + }, + "confidence": 0.6761108765479277 + }, + { + "observation_id": "64815fa4-cbc7-4442-9b8c-9262171c274e", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1325.0, + 744.0 + ], + [ + 1354.0, + 732.0 + ], + [ + 1368.0, + 763.0 + ], + [ + 1339.0, + 774.0 + ] + ], + "center_px": [ + 1346.5, + 753.25 + ], + "quality": { + "area_px": 1045.5, + "perimeter_px": 129.52142906188965, + "sharpness": { + "laplacian_var": 401.9192193180268 + }, + "contrast": { + "p05": 7.0, + "p95": 133.0, + "dynamic_range": 126.0, + "mean_gray": 49.76628895184136, + "std_gray": 49.769446320789825 + }, + "geometry": { + "distance_to_center_norm": 0.735332190990448, + "distance_to_border_px": 72.0 + }, + "edge_ratio": 1.096678006826234, + "edge_lengths_px": [ + 31.38471031188965, + 34.01470184326172, + 31.016124725341797, + 33.105892181396484 + ] + }, + "confidence": 0.63555573802114 + }, + { + "observation_id": "3280f788-28b7-43da-80dc-91490c0a3181", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 488.0, + 682.0 + ], + [ + 520.0, + 673.0 + ], + [ + 528.0, + 703.0 + ], + [ + 497.0, + 713.0 + ] + ], + "center_px": [ + 508.25, + 692.75 + ], + "quality": { + "area_px": 1041.5, + "perimeter_px": 129.14290809631348, + "sharpness": { + "laplacian_var": 854.9291926161701 + }, + "contrast": { + "p05": 39.0, + "p95": 174.0, + "dynamic_range": 135.0, + "mean_gray": 85.3946251768034, + "std_gray": 55.88886855913174 + }, + "geometry": { + "distance_to_center_norm": 0.2901056110858917, + "distance_to_border_px": 367.0 + }, + "edge_ratio": 1.070637881392484, + "edge_lengths_px": [ + 33.241539001464844, + 31.048349380493164, + 32.572994232177734, + 32.280025482177734 + ] + }, + "confidence": 0.6485230397697823 + }, + { + "observation_id": "b890924f-8b9a-4634-8031-54877a05a4fd", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1047.0, + 694.0 + ], + [ + 1058.0, + 725.0 + ], + [ + 1029.0, + 735.0 + ], + [ + 1017.0, + 703.0 + ] + ], + "center_px": [ + 1037.75, + 714.25 + ], + "quality": { + "area_px": 1038.5, + "perimeter_px": 129.06642532348633, + "sharpness": { + "laplacian_var": 702.8589017712277 + }, + "contrast": { + "p05": 13.0, + "p95": 151.0, + "dynamic_range": 138.0, + "mean_gray": 91.26308139534883, + "std_gray": 55.34838633216663 + }, + "geometry": { + "distance_to_center_norm": 0.40265801548957825, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 1.1141061874732403, + "edge_lengths_px": [ + 32.893768310546875, + 30.675724029541016, + 34.1760139465332, + 31.320919036865234 + ] + }, + "confidence": 0.62142490645665 + }, + { + "observation_id": "aeecbc00-8469-4e89-8d7c-44a7ebdeac23", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 592.0, + 617.0 + ], + [ + 622.0, + 606.0 + ], + [ + 633.0, + 635.0 + ], + [ + 604.0, + 647.0 + ] + ], + "center_px": [ + 612.75, + 626.25 + ], + "quality": { + "area_px": 1002.5, + "perimeter_px": 126.66491508483887, + "sharpness": { + "laplacian_var": 861.4333753048808 + }, + "contrast": { + "p05": 34.0, + "p95": 174.0, + "dynamic_range": 140.0, + "mean_gray": 97.54451038575668, + "std_gray": 59.64062956897272 + }, + "geometry": { + "distance_to_center_norm": 0.15292063355445862, + "distance_to_border_px": 433.0 + }, + "edge_ratio": 1.041748112183823, + "edge_lengths_px": [ + 31.95309066772461, + 31.016124725341797, + 31.38471031188965, + 32.31098937988281 + ] + }, + "confidence": 0.6415498386959416 + }, + { + "observation_id": "7afdf7d0-d19e-4788-a335-516131c91bdc", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 852.0, + 664.0 + ], + [ + 855.0, + 699.0 + ], + [ + 831.0, + 712.0 + ], + [ + 828.0, + 677.0 + ] + ], + "center_px": [ + 841.5, + 688.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 124.84605026245117, + "sharpness": { + "laplacian_var": 964.1437813663806 + }, + "contrast": { + "p05": 35.0, + "p95": 185.0, + "dynamic_range": 150.0, + "mean_gray": 80.50977198697069, + "std_gray": 59.04237755633671 + }, + "geometry": { + "distance_to_center_norm": 0.21276035904884338, + "distance_to_border_px": 368.0 + }, + "edge_ratio": 1.2870027603239267, + "edge_lengths_px": [ + 35.12833786010742, + 27.294687271118164, + 35.12833786010742, + 27.294687271118164 + ] + }, + "confidence": 0.45532147876086076 + }, + { + "observation_id": "21f46c5d-07b6-4d45-827d-d954f6d97e50", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 549.0 + ], + [ + 750.0, + 540.0 + ], + [ + 759.0, + 570.0 + ], + [ + 728.0, + 578.0 + ] + ], + "center_px": [ + 739.25, + 559.25 + ], + "quality": { + "area_px": 972.0, + "perimeter_px": 124.74067687988281, + "sharpness": { + "laplacian_var": 858.8311608781246 + }, + "contrast": { + "p05": 30.0, + "p95": 176.0, + "dynamic_range": 146.0, + "mean_gray": 89.6813509544787, + "std_gray": 60.460128160193484 + }, + "geometry": { + "distance_to_center_norm": 0.030248457565903664, + "distance_to_border_px": 502.0 + }, + "edge_ratio": 1.0642352686074992, + "edge_lengths_px": [ + 31.320919036865234, + 31.320919036865234, + 32.015621185302734, + 30.08321762084961 + ] + }, + "confidence": 0.6088879208521975 + }, + { + "observation_id": "56d72dea-b99d-4487-99ae-a22aacb4cb4d", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 670.0, + 478.0 + ], + [ + 700.0, + 469.0 + ], + [ + 710.0, + 497.0 + ], + [ + 680.0, + 507.0 + ] + ], + "center_px": [ + 690.0, + 487.75 + ], + "quality": { + "area_px": 950.0, + "perimeter_px": 123.3515567779541, + "sharpness": { + "laplacian_var": 744.1718727855725 + }, + "contrast": { + "p05": 33.0, + "p95": 177.0, + "dynamic_range": 144.0, + "mean_gray": 123.30505952380952, + "std_gray": 58.57233093015588 + }, + "geometry": { + "distance_to_center_norm": 0.06694444268941879, + "distance_to_border_px": 469.0 + }, + "edge_ratio": 1.0635890487184443, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.62277603149414, + 30.675724029541016 + ] + }, + "confidence": 0.5954680843098741 + }, + { + "observation_id": "81fcee16-e60e-4c8a-9708-bfe76c19d6ec", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 519.0, + 393.0 + ], + [ + 550.0, + 385.0 + ], + [ + 558.0, + 413.0 + ], + [ + 527.0, + 421.0 + ] + ], + "center_px": [ + 538.5, + 403.0 + ], + "quality": { + "area_px": 932.0, + "perimeter_px": 122.27212142944336, + "sharpness": { + "laplacian_var": 797.3173110559737 + }, + "contrast": { + "p05": 38.0, + "p95": 176.19999999999993, + "dynamic_range": 138.19999999999993, + "mean_gray": 94.14307458143075, + "std_gray": 55.87143525094488 + }, + "geometry": { + "distance_to_center_norm": 0.2526678740978241, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0994209463411062, + "edge_lengths_px": [ + 32.015621185302734, + 29.120439529418945, + 32.015621185302734, + 29.120439529418945 + ] + }, + "confidence": 0.5651459847123547 + }, + { + "observation_id": "d2d68db5-5d18-4ed4-b230-e30b997e3293", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 613.0, + 419.0 + ], + [ + 643.0, + 410.0 + ], + [ + 653.0, + 438.0 + ], + [ + 623.0, + 447.0 + ] + ], + "center_px": [ + 633.0, + 428.5 + ], + "quality": { + "area_px": 930.0, + "perimeter_px": 122.10611343383789, + "sharpness": { + "laplacian_var": 823.1077646304283 + }, + "contrast": { + "p05": 33.0, + "p95": 175.0, + "dynamic_range": 142.0, + "mean_gray": 90.3810975609756, + "std_gray": 58.11551162536803 + }, + "geometry": { + "distance_to_center_norm": 0.15713976323604584, + "distance_to_border_px": 410.0 + }, + "edge_ratio": 1.0534364993835403, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.320919036865234, + 29.73213768005371 + ] + }, + "confidence": 0.5885499509109636 + }, + { + "observation_id": "ee9e52cf-1c49-4538-9409-11114017eb52", + "type": "aruco", + "marker_id": 82, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 420.0 + ], + [ + 1365.0, + 411.0 + ], + [ + 1377.0, + 439.0 + ], + [ + 1348.0, + 448.0 + ] + ], + "center_px": [ + 1356.5, + 429.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 492.47728625272765 + }, + "contrast": { + "p05": 8.0, + "p95": 144.0, + "dynamic_range": 136.0, + "mean_gray": 74.61658841940532, + "std_gray": 56.63950003540781 + }, + "geometry": { + "distance_to_center_norm": 0.7178005576133728, + "distance_to_border_px": 63.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.6113473409254715 + }, + { + "observation_id": "6f31ece2-919a-4096-b2b7-5d4d2c46d962", + "type": "aruco", + "marker_id": 73, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1381.0, + 409.0 + ], + [ + 1410.0, + 400.0 + ], + [ + 1422.0, + 428.0 + ], + [ + 1393.0, + 437.0 + ] + ], + "center_px": [ + 1401.5, + 418.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 771.0965392424098 + }, + "contrast": { + "p05": 9.0, + "p95": 148.0, + "dynamic_range": 139.0, + "mean_gray": 87.07042253521126, + "std_gray": 52.83472667385498 + }, + "geometry": { + "distance_to_center_norm": 0.7691621780395508, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.22008504273316973 + }, + { + "observation_id": "7f755ef6-1da5-4757-8c5b-22db8fe59b8d", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 881.0, + 288.0 + ], + [ + 892.0, + 316.0 + ], + [ + 863.0, + 326.0 + ], + [ + 852.0, + 298.0 + ] + ], + "center_px": [ + 872.0, + 307.0 + ], + "quality": { + "area_px": 922.0, + "perimeter_px": 121.51788330078125, + "sharpness": { + "laplacian_var": 865.0098318523201 + }, + "contrast": { + "p05": 22.0, + "p95": 172.0, + "dynamic_range": 150.0, + "mean_gray": 82.59908536585365, + "std_gray": 60.95016906391271 + }, + "geometry": { + "distance_to_center_norm": 0.30910664796829224, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.0196955796470641, + "edge_lengths_px": [ + 30.08321762084961, + 30.675724029541016, + 30.08321762084961, + 30.675724029541016 + ] + }, + "confidence": 0.60279428383853 + }, + { + "observation_id": "887a5e3a-0517-4354-ada0-cf65e38b2523", + "type": "aruco", + "marker_id": 52, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1170.0, + 304.0 + ], + [ + 1198.0, + 294.0 + ], + [ + 1211.0, + 321.0 + ], + [ + 1182.0, + 331.0 + ] + ], + "center_px": [ + 1190.25, + 312.5 + ], + "quality": { + "area_px": 894.5, + "perimeter_px": 119.92108345031738, + "sharpness": { + "laplacian_var": 736.7821607663999 + }, + "contrast": { + "p05": 12.0, + "p95": 162.0, + "dynamic_range": 150.0, + "mean_gray": 73.56239870340356, + "std_gray": 59.95824921853181 + }, + "geometry": { + "distance_to_center_norm": 0.5804333686828613, + "distance_to_border_px": 229.0 + }, + "edge_ratio": 1.038215950330626, + "edge_lengths_px": [ + 29.73213768005371, + 29.96664810180664, + 30.675724029541016, + 29.546573638916016 + ] + }, + "confidence": 0.5743827506632194 + }, + { + "observation_id": "bf3e84cf-9892-4cb9-a4d6-9a7eb5c143ac", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 621.0, + 329.0 + ], + [ + 651.0, + 320.0 + ], + [ + 660.0, + 347.0 + ], + [ + 630.0, + 356.0 + ] + ], + "center_px": [ + 640.5, + 338.0 + ], + "quality": { + "area_px": 891.0, + "perimeter_px": 119.56283569335938, + "sharpness": { + "laplacian_var": 820.498501862312 + }, + "contrast": { + "p05": 32.0, + "p95": 175.0, + "dynamic_range": 143.0, + "mean_gray": 89.84786053882726, + "std_gray": 58.95198554771998 + }, + "geometry": { + "distance_to_center_norm": 0.24120134115219116, + "distance_to_border_px": 320.0 + }, + "edge_ratio": 1.1005049224950472, + "edge_lengths_px": [ + 31.320919036865234, + 28.460498809814453, + 31.320919036865234, + 28.460498809814453 + ] + }, + "confidence": 0.5397522426826521 + }, + { + "observation_id": "0ef8b76f-2d4a-4554-9a62-b6f980d40ed8", + "type": "aruco", + "marker_id": 77, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1106.0, + 220.0 + ], + [ + 1135.0, + 213.0 + ], + [ + 1145.0, + 239.0 + ], + [ + 1116.0, + 248.0 + ] + ], + "center_px": [ + 1125.5, + 230.0 + ], + "quality": { + "area_px": 863.0, + "perimeter_px": 117.78623580932617, + "sharpness": { + "laplacian_var": 634.9850778546712 + }, + "contrast": { + "p05": 11.0, + "p95": 158.0, + "dynamic_range": 147.0, + "mean_gray": 69.19607843137256, + "std_gray": 58.47258547896745 + }, + "geometry": { + "distance_to_center_norm": 0.5671351552009583, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.0900202903476583, + "edge_lengths_px": [ + 29.832868576049805, + 27.85677719116211, + 30.364452362060547, + 29.73213768005371 + ] + }, + "confidence": 0.5278189208292927 + }, + { + "observation_id": "ca257e7c-df9d-4f43-ac19-3d1bf94c8d06", + "type": "aruco", + "marker_id": 83, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1304.0, + 199.0 + ], + [ + 1332.0, + 191.0 + ], + [ + 1343.0, + 218.0 + ], + [ + 1314.0, + 226.0 + ] + ], + "center_px": [ + 1323.25, + 208.5 + ], + "quality": { + "area_px": 853.5, + "perimeter_px": 117.15077781677246, + "sharpness": { + "laplacian_var": 787.246986385212 + }, + "contrast": { + "p05": 11.0, + "p95": 159.19999999999993, + "dynamic_range": 148.19999999999993, + "mean_gray": 92.65964343598056, + "std_gray": 57.146865375444264 + }, + "geometry": { + "distance_to_center_norm": 0.7648148536682129, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0448333273602466, + "edge_lengths_px": [ + 29.120439529418945, + 29.154760360717773, + 30.08321762084961, + 28.792360305786133 + ] + }, + "confidence": 0.5445844663450473 + }, + { + "observation_id": "694b835d-05e9-4c8a-b499-b89c322a3f5f", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1089.0, + 172.0 + ], + [ + 1118.0, + 165.0 + ], + [ + 1127.0, + 192.0 + ], + [ + 1098.0, + 199.0 + ] + ], + "center_px": [ + 1108.0, + 182.0 + ], + "quality": { + "area_px": 846.0, + "perimeter_px": 116.58673477172852, + "sharpness": { + "laplacian_var": 840.0864058387932 + }, + "contrast": { + "p05": 18.0, + "p95": 165.0, + "dynamic_range": 147.0, + "mean_gray": 108.12054329371817, + "std_gray": 55.17911014115476 + }, + "geometry": { + "distance_to_center_norm": 0.5865867137908936, + "distance_to_border_px": 165.0 + }, + "edge_ratio": 1.048220158592656, + "edge_lengths_px": [ + 29.832868576049805, + 28.460498809814453, + 29.832868576049805, + 28.460498809814453 + ] + }, + "confidence": 0.5380549070504695 + }, + { + "observation_id": "a95c822e-d26a-427d-8343-25eb3daf8029", + "type": "aruco", + "marker_id": 61, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1260.0, + 127.0 + ], + [ + 1287.0, + 117.0 + ], + [ + 1300.0, + 143.0 + ], + [ + 1273.0, + 153.0 + ] + ], + "center_px": [ + 1280.0, + 135.0 + ], + "quality": { + "area_px": 832.0, + "perimeter_px": 115.72248840332031, + "sharpness": { + "laplacian_var": 747.7801521890221 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 95.53195164075993, + "std_gray": 57.42506055833918 + }, + "geometry": { + "distance_to_center_norm": 0.7678935527801514, + "distance_to_border_px": 117.0 + }, + "edge_ratio": 1.0096040611867558, + "edge_lengths_px": [ + 28.792360305786133, + 29.068883895874023, + 28.792360305786133, + 29.068883895874023 + ] + }, + "confidence": 0.5493902887184056 + }, + { + "observation_id": "25d36d49-4a49-439a-96b7-a3bcc8dea257", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 842.0, + 759.0 + ], + [ + 869.0, + 767.0 + ], + [ + 844.0, + 778.0 + ], + [ + 816.0, + 770.0 + ] + ], + "center_px": [ + 842.75, + 768.5 + ], + "quality": { + "area_px": 506.5, + "perimeter_px": 112.82488250732422, + "sharpness": { + "laplacian_var": 927.7063988919667 + }, + "contrast": { + "p05": 19.0, + "p95": 83.0, + "dynamic_range": 64.0, + "mean_gray": 43.613157894736844, + "std_gray": 22.719116354348767 + }, + "geometry": { + "distance_to_center_norm": 0.2882038950920105, + "distance_to_border_px": 302.0 + }, + "edge_ratio": 1.0661750749552474, + "edge_lengths_px": [ + 28.160255432128906, + 27.312999725341797, + 29.120439529418945, + 28.23118782043457 + ] + }, + "confidence": 0.25336676844060735 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1315.0, + 285.0 + ], + [ + 1328.0, + 312.0 + ], + [ + 1300.0, + 322.0 + ], + [ + 1287.0, + 295.0 + ] + ], + "center_px": [ + 1307.5, + 303.5 + ], + "area_px": 886.0 + }, + { + "image_points_px": [ + [ + 1003.0, + 394.0 + ], + [ + 972.0, + 415.0 + ], + [ + 973.0, + 410.0 + ], + [ + 985.0, + 400.0 + ] + ], + "center_px": [ + 983.25, + 404.75 + ], + "area_px": 121.0 + }, + { + "image_points_px": [ + [ + 780.0, + 278.0 + ], + [ + 783.0, + 279.0 + ], + [ + 797.0, + 300.0 + ], + [ + 795.0, + 302.0 + ] + ], + "center_px": [ + 788.75, + 289.75 + ], + "area_px": 63.5 + }, + { + "image_points_px": [ + [ + 1087.0, + 550.0 + ], + [ + 1063.0, + 565.0 + ], + [ + 1074.0, + 554.0 + ], + [ + 1082.0, + 550.0 + ] + ], + "center_px": [ + 1076.5, + 554.75 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 665.0, + 67.0 + ], + [ + 675.0, + 85.0 + ], + [ + 674.0, + 91.0 + ], + [ + 667.0, + 78.0 + ] + ], + "center_px": [ + 670.25, + 80.25 + ], + "area_px": 64.5 + }, + { + "image_points_px": [ + [ + 1107.0, + 93.0 + ], + [ + 1110.0, + 95.0 + ], + [ + 1120.0, + 115.0 + ], + [ + 1115.0, + 111.0 + ] + ], + "center_px": [ + 1113.0, + 103.5 + ], + "area_px": 49.0 + }, + { + "image_points_px": [ + [ + 735.0, + 232.0 + ], + [ + 745.0, + 254.0 + ], + [ + 742.0, + 252.0 + ], + [ + 736.0, + 239.0 + ] + ], + "center_px": [ + 739.5, + 244.25 + ], + "area_px": 37.5 + }, + { + "image_points_px": [ + [ + 1214.0, + 340.0 + ], + [ + 1219.0, + 346.0 + ], + [ + 1223.0, + 362.0 + ], + [ + 1216.0, + 349.0 + ] + ], + "center_px": [ + 1218.0, + 349.25 + ], + "area_px": 46.5 + }, + { + "image_points_px": [ + [ + 1121.0, + 562.0 + ], + [ + 1129.0, + 569.0 + ], + [ + 1131.0, + 577.0 + ], + [ + 1130.0, + 583.0 + ] + ], + "center_px": [ + 1127.75, + 572.75 + ], + "area_px": 62.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/render_f_camera_pose.json b/data/camera_study/Scene10/k3_efg/render_f_camera_pose.json new file mode 100644 index 0000000..a394542 --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/render_f_camera_pose.json @@ -0,0 +1,582 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:35Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_efg\\render_f_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "f", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 27, + "used_marker_ids": [ + 68, + 46, + 208, + 47, + 56, + 53, + 97, + 62, + 54, + 55, + 72, + 66, + 214, + 95, + 51, + 103, + 69, + 58, + 82, + 73, + 210, + 52, + 64, + 77, + 83, + 75, + 61 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3, + 4 + ], + "rms": [ + 0.00918677717341902, + 0.0014933429518723808, + 0.001390373853667637, + 0.0013903699834861628, + 0.0013903699807887252 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125, + 6.25e-05 + ] + }, + "residual_rms_px": 3.941603533751138, + "residual_median_px": 3.7352373317630128, + "residual_max_px": 5.771900878439298, + "sigma2_normalized": 2.17476976890378e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.31769248843193054, + 0.9481521248817444, + 0.008892479352653027 + ], + [ + 0.9206541180610657, + -0.30620789527893066, + -0.242141991853714 + ], + [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + ], + "translation_m": [ + 0.12344730645418167, + -0.19988536834716797, + 1.4972078800201416 + ], + "rvec_rad": [ + 2.378352663832453, + 1.7133801592888853, + -0.1998435821316908 + ] + }, + "camera_in_world": { + "position_m": [ + 0.48447033762931824, + -0.3056860566139221, + 1.4030927419662476 + ], + "position_mm": [ + 484.4703369140625, + -305.6860656738281, + 1403.0927734375 + ], + "orientation_deg": { + "roll": 174.98638916015625, + "pitch": 13.112541198730469, + "yaw": 70.96184539794922 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 3.2311819447272024e-05, + 1.8832577487974546e-05, + -4.656767371183097e-06, + -4.18150026429738e-07, + 2.6114865287331025e-07, + 2.406181848846857e-06 + ], + [ + 1.8832577487974533e-05, + 1.683541014579236e-05, + -7.3574856590594524e-06, + 4.5948447714477966e-07, + 3.095065254407523e-08, + 2.3847847067019377e-06 + ], + [ + -4.6567673711861375e-06, + -7.357485659062205e-06, + 0.00016783973036034415, + 1.5647826411604766e-06, + -1.729586622472892e-06, + -2.906231789157714e-05 + ], + [ + -4.1815002642977447e-07, + 4.594844771447391e-07, + 1.5647826411606013e-06, + 3.507815548304795e-07, + -2.7134564617847737e-08, + 2.4204791300702807e-07 + ], + [ + 2.611486528733672e-07, + 3.0950652544076366e-08, + -1.729586622472832e-06, + -2.7134564617850665e-08, + 1.9997327434023874e-07, + 4.1386012647726157e-07 + ], + [ + 2.4061818488473495e-06, + 2.384784706702394e-06, + -2.9062317891576876e-05, + 2.420479130070509e-07, + 4.138601264772586e-07, + 9.270646369219581e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.3256891862833913, + 0.23509017702077495, + 0.7422838625560957 + ], + "tvec_std_m": [ + 0.0005922681443657758, + 0.00044718371430569644, + 0.003044773615430149 + ] + }, + "camera_center_std_m": [ + 0.011255169411300251, + 0.011919325044430497, + 0.004596769734438054 + ], + "camera_center_std_mm": [ + 11.255169411300251, + 11.919325044430497, + 4.5967697344380545 + ], + "orientation_std_deg": { + "roll": 0.5094522091773732, + "pitch": 0.4352540861263008, + "yaw": 0.1004884180203833 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 68, + "observed_center_px": [ + 1395.0, + 941.75 + ], + "projected_center_px": [ + 1389.3548583984375, + 940.5469970703125 + ], + "reprojection_error_px": 5.771900878439298, + "confidence": 0.3105318897567382 + }, + { + "marker_id": 46, + "observed_center_px": [ + 1383.25, + 882.5 + ], + "projected_center_px": [ + 1387.9061279296875, + 883.3380737304688 + ], + "reprojection_error_px": 4.7309507369362676, + "confidence": 0.480064078578645 + }, + { + "marker_id": 208, + "observed_center_px": [ + 937.0, + 754.25 + ], + "projected_center_px": [ + 934.9244995117188, + 751.2972412109375 + ], + "reprojection_error_px": 3.6092224568792584, + "confidence": 0.717438637944123 + }, + { + "marker_id": 47, + "observed_center_px": [ + 665.0, + 836.25 + ], + "projected_center_px": [ + 667.4868774414062, + 835.926025390625 + ], + "reprojection_error_px": 2.507891336580391, + "confidence": 0.714264135428559 + }, + { + "marker_id": 56, + "observed_center_px": [ + 1341.75, + 844.0 + ], + "projected_center_px": [ + 1344.8751220703125, + 839.613037109375 + ], + "reprojection_error_px": 5.386263209134431, + "confidence": 0.6720101269988878 + }, + { + "marker_id": 53, + "observed_center_px": [ + 1399.75, + 806.0 + ], + "projected_center_px": [ + 1394.572998046875, + 803.723388671875 + ], + "reprojection_error_px": 5.655467121468141, + "confidence": 0.25536384825957736 + }, + { + "marker_id": 97, + "observed_center_px": [ + 554.75, + 818.0 + ], + "projected_center_px": [ + 552.1571044921875, + 815.3113403320312 + ], + "reprojection_error_px": 3.7352373317630128, + "confidence": 0.7144285455619288 + }, + { + "marker_id": 62, + "observed_center_px": [ + 845.25, + 862.5 + ], + "projected_center_px": [ + 843.9764404296875, + 867.170166015625 + ], + "reprojection_error_px": 4.840702902743903, + "confidence": 0.7019920279258633 + }, + { + "marker_id": 54, + "observed_center_px": [ + 610.5, + 848.75 + ], + "projected_center_px": [ + 607.426025390625, + 853.0718994140625 + ], + "reprojection_error_px": 5.30359636891383, + "confidence": 0.7005026944924987 + }, + { + "marker_id": 55, + "observed_center_px": [ + 675.25, + 746.0 + ], + "projected_center_px": [ + 672.9774169921875, + 745.18359375 + ], + "reprojection_error_px": 2.4147779799470532, + "confidence": 0.6761108765479277 + }, + { + "marker_id": 72, + "observed_center_px": [ + 1346.5, + 753.25 + ], + "projected_center_px": [ + 1346.513671875, + 751.8689575195312 + ], + "reprojection_error_px": 1.381110152386584, + "confidence": 0.63555573802114 + }, + { + "marker_id": 66, + "observed_center_px": [ + 508.25, + 692.75 + ], + "projected_center_px": [ + 508.324951171875, + 692.6304321289062 + ], + "reprojection_error_px": 0.14111751827228045, + "confidence": 0.6485230397697823 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1037.75, + 714.25 + ], + "projected_center_px": [ + 1041.2877197265625, + 715.8521118164062 + ], + "reprojection_error_px": 3.8835838005607632, + "confidence": 0.62142490645665 + }, + { + "marker_id": 95, + "observed_center_px": [ + 612.75, + 626.25 + ], + "projected_center_px": [ + 616.0951538085938, + 624.1017456054688 + ], + "reprojection_error_px": 3.975556683883667, + "confidence": 0.6415498386959416 + }, + { + "marker_id": 51, + "observed_center_px": [ + 739.25, + 559.25 + ], + "projected_center_px": [ + 740.84765625, + 558.3189086914062 + ], + "reprojection_error_px": 1.8491718465580436, + "confidence": 0.6088879208521975 + }, + { + "marker_id": 103, + "observed_center_px": [ + 690.0, + 487.75 + ], + "projected_center_px": [ + 694.0453491210938, + 487.8307800292969 + ], + "reprojection_error_px": 4.046155573463183, + "confidence": 0.5954680843098741 + }, + { + "marker_id": 69, + "observed_center_px": [ + 538.5, + 403.0 + ], + "projected_center_px": [ + 534.0264892578125, + 406.2565612792969 + ], + "reprojection_error_px": 5.5333073045225545, + "confidence": 0.5651459847123547 + }, + { + "marker_id": 58, + "observed_center_px": [ + 633.0, + 428.5 + ], + "projected_center_px": [ + 631.8712768554688, + 432.2906494140625 + ], + "reprojection_error_px": 3.9551281796337383, + "confidence": 0.5885499509109636 + }, + { + "marker_id": 82, + "observed_center_px": [ + 1356.5, + 429.5 + ], + "projected_center_px": [ + 1358.176025390625, + 429.6244201660156 + ], + "reprojection_error_px": 1.6806372266884486, + "confidence": 0.6113473409254715 + }, + { + "marker_id": 73, + "observed_center_px": [ + 1401.5, + 418.5 + ], + "projected_center_px": [ + 1403.8709716796875, + 418.31756591796875 + ], + "reprojection_error_px": 2.377980004156206, + "confidence": 0.22008504273316973 + }, + { + "marker_id": 210, + "observed_center_px": [ + 872.0, + 307.0 + ], + "projected_center_px": [ + 871.6832885742188, + 304.965087890625 + ], + "reprojection_error_px": 2.0594109400751965, + "confidence": 0.60279428383853 + }, + { + "marker_id": 52, + "observed_center_px": [ + 1190.25, + 312.5 + ], + "projected_center_px": [ + 1186.0579833984375, + 316.39373779296875 + ], + "reprojection_error_px": 5.7213807064526625, + "confidence": 0.5743827506632194 + }, + { + "marker_id": 64, + "observed_center_px": [ + 640.5, + 338.0 + ], + "projected_center_px": [ + 640.4821166992188, + 334.9952087402344 + ], + "reprojection_error_px": 3.0048444763765603, + "confidence": 0.5397522426826521 + }, + { + "marker_id": 77, + "observed_center_px": [ + 1125.5, + 230.0 + ], + "projected_center_px": [ + 1128.3472900390625, + 234.04983520507812 + ], + "reprojection_error_px": 4.950578325290361, + "confidence": 0.5278189208292927 + }, + { + "marker_id": 83, + "observed_center_px": [ + 1323.25, + 208.5 + ], + "projected_center_px": [ + 1319.932373046875, + 207.5139923095703 + ], + "reprojection_error_px": 3.461048940088533, + "confidence": 0.5445844663450473 + }, + { + "marker_id": 75, + "observed_center_px": [ + 1108.0, + 182.0 + ], + "projected_center_px": [ + 1111.3167724609375, + 182.71337890625 + ], + "reprojection_error_px": 3.392622734922916, + "confidence": 0.5380549070504695 + }, + { + "marker_id": 61, + "observed_center_px": [ + 1280.0, + 135.0 + ], + "projected_center_px": [ + 1282.8663330078125, + 133.39898681640625 + ], + "reprojection_error_px": 3.283155208898362, + "confidence": 0.5493902887184056 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/render_g_aruco_detection.json b/data/camera_study/Scene10/k3_efg/render_g_aruco_detection.json new file mode 100644 index 0000000..f9d0e85 --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/render_g_aruco_detection.json @@ -0,0 +1,2224 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:34Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "g", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.npz", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.png", + "image_sha256": "6f328ef148dd5b73d40dbd9254ac0545dbd7393ed4666dd8eee8d3e346b4448b", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 37, + "num_rejected_candidates": 7 + }, + "detections": [ + { + "observation_id": "28280260-ea3e-4ee8-927d-ee6fb804c013", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 361.0, + 538.0 + ], + [ + 334.0, + 513.0 + ], + [ + 364.0, + 489.0 + ], + [ + 391.0, + 513.0 + ] + ], + "center_px": [ + 362.5, + 513.25 + ], + "quality": { + "area_px": 1396.5, + "perimeter_px": 150.3915138244629, + "sharpness": { + "laplacian_var": 1014.5935798624517 + }, + "contrast": { + "p05": 15.0, + "p95": 168.0, + "dynamic_range": 153.0, + "mean_gray": 87.64736297828335, + "std_gray": 65.25681309567548 + }, + "geometry": { + "distance_to_center_norm": 0.3983326554298401, + "distance_to_border_px": 334.0 + }, + "edge_ratio": 1.0810098739215166, + "edge_lengths_px": [ + 36.79673767089844, + 38.41874694824219, + 36.12478256225586, + 39.051246643066406 + ] + }, + "confidence": 0.8612317264250932 + }, + { + "observation_id": "5d728cad-0142-45e7-9bd6-1277e31fb876", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 490.0, + 612.0 + ], + [ + 463.0, + 586.0 + ], + [ + 492.0, + 572.0 + ], + [ + 518.0, + 598.0 + ] + ], + "center_px": [ + 490.75, + 592.0 + ], + "quality": { + "area_px": 1112.0, + "perimeter_px": 137.76032066345215, + "sharpness": { + "laplacian_var": 1213.9038992326398 + }, + "contrast": { + "p05": 22.0, + "p95": 181.0, + "dynamic_range": 159.0, + "mean_gray": 82.85922974767597, + "std_gray": 68.84435047820993 + }, + "geometry": { + "distance_to_center_norm": 0.26119279861450195, + "distance_to_border_px": 463.0 + }, + "edge_ratio": 1.1973610126869798, + "edge_lengths_px": [ + 37.48332977294922, + 32.202484130859375, + 36.769554138183594, + 31.30495262145996 + ] + }, + "confidence": 0.619139361878602 + }, + { + "observation_id": "66d87600-c31e-4e10-961b-51c5346e746b", + "type": "aruco", + "marker_id": 86, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 94.0, + 958.0 + ], + [ + 68.0, + 982.0 + ], + [ + 47.0, + 960.0 + ], + [ + 73.0, + 936.0 + ] + ], + "center_px": [ + 70.5, + 959.0 + ], + "quality": { + "area_px": 1076.0, + "perimeter_px": 131.59485244750977, + "sharpness": { + "laplacian_var": 500.4565883722073 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 68.66531713900135, + "std_gray": 56.437884581126355 + }, + "geometry": { + "distance_to_center_norm": 0.8588042259216309, + "distance_to_border_px": 47.0 + }, + "edge_ratio": 1.1634060487042286, + "edge_lengths_px": [ + 35.38361358642578, + 30.4138126373291, + 35.38361358642578, + 30.4138126373291 + ] + }, + "confidence": 0.5795855489013004 + }, + { + "observation_id": "953ca4a6-58db-43ba-a961-51a890fe23ff", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 944.0, + 859.0 + ], + [ + 923.0, + 881.0 + ], + [ + 899.0, + 859.0 + ], + [ + 921.0, + 837.0 + ] + ], + "center_px": [ + 921.75, + 859.0 + ], + "quality": { + "area_px": 990.0, + "perimeter_px": 125.91181182861328, + "sharpness": { + "laplacian_var": 1254.5651387199953 + }, + "contrast": { + "p05": 37.0, + "p95": 176.0, + "dynamic_range": 139.0, + "mean_gray": 94.86206896551724, + "std_gray": 57.98150599974307 + }, + "geometry": { + "distance_to_center_norm": 0.41938236355781555, + "distance_to_border_px": 199.0 + }, + "edge_ratio": 1.070488611997406, + "edge_lengths_px": [ + 30.4138126373291, + 32.557640075683594, + 31.11269760131836, + 31.827661514282227 + ] + }, + "confidence": 0.616540888528013 + }, + { + "observation_id": "776d86f9-8198-411d-86a3-20576105caec", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 442.0, + 549.0 + ], + [ + 415.0, + 524.0 + ], + [ + 437.0, + 520.0 + ], + [ + 464.0, + 545.0 + ] + ], + "center_px": [ + 439.5, + 534.5 + ], + "quality": { + "area_px": 658.0, + "perimeter_px": 118.31483459472656, + "sharpness": { + "laplacian_var": 2355.6744409733983 + }, + "contrast": { + "p05": 23.0, + "p95": 180.0, + "dynamic_range": 157.0, + "mean_gray": 108.16359918200409, + "std_gray": 61.881853788931394 + }, + "geometry": { + "distance_to_center_norm": 0.31172657012939453, + "distance_to_border_px": 415.0 + }, + "edge_ratio": 1.6456001465781875, + "edge_lengths_px": [ + 36.79673767089844, + 22.360679626464844, + 36.79673767089844, + 22.360679626464844 + ] + }, + "confidence": 0.2665694139483502 + }, + { + "observation_id": "2ce701f5-5c6b-48d3-b5ba-c7b0a7dda7a9", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 565.0, + 714.0 + ], + [ + 544.0, + 692.0 + ], + [ + 568.0, + 672.0 + ], + [ + 589.0, + 694.0 + ] + ], + "center_px": [ + 566.5, + 693.0 + ], + "quality": { + "area_px": 948.0, + "perimeter_px": 123.30962371826172, + "sharpness": { + "laplacian_var": 948.7205075308444 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 87.45253164556962, + "std_gray": 63.36793023445192 + }, + "geometry": { + "distance_to_center_norm": 0.24080945551395416, + "distance_to_border_px": 366.0 + }, + "edge_ratio": 1.027197727372641, + "edge_lengths_px": [ + 30.4138126373291, + 31.240999221801758, + 30.4138126373291, + 31.240999221801758 + ] + }, + "confidence": 0.6152661587526339 + }, + { + "observation_id": "0c164bb7-30b4-4932-be5e-766c2498588e", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 903.0, + 772.0 + ], + [ + 882.0, + 794.0 + ], + [ + 858.0, + 773.0 + ], + [ + 879.0, + 752.0 + ] + ], + "center_px": [ + 880.5, + 772.75 + ], + "quality": { + "area_px": 946.5, + "perimeter_px": 123.24373435974121, + "sharpness": { + "laplacian_var": 1446.0998691484099 + }, + "contrast": { + "p05": 34.0, + "p95": 175.0, + "dynamic_range": 141.0, + "mean_gray": 92.60221870047543, + "std_gray": 58.54318515049794 + }, + "geometry": { + "distance_to_center_norm": 0.31413766741752625, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 1.0738069198414777, + "edge_lengths_px": [ + 30.4138126373291, + 31.890438079833984, + 29.698484420776367, + 31.240999221801758 + ] + }, + "confidence": 0.5876289194459208 + }, + { + "observation_id": "f29d044d-2717-4114-b358-a945629e1add", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 138.0, + 787.0 + ], + [ + 113.0, + 809.0 + ], + [ + 93.0, + 789.0 + ], + [ + 118.0, + 767.0 + ] + ], + "center_px": [ + 115.5, + 788.0 + ], + "quality": { + "area_px": 940.0, + "perimeter_px": 123.17184448242188, + "sharpness": { + "laplacian_var": 604.4415315905076 + }, + "contrast": { + "p05": 6.0, + "p95": 133.0, + "dynamic_range": 127.0, + "mean_gray": 50.246422893481714, + "std_gray": 50.2390597357709 + }, + "geometry": { + "distance_to_center_norm": 0.725993812084198, + "distance_to_border_px": 93.0 + }, + "edge_ratio": 1.177391162675776, + "edge_lengths_px": [ + 33.30165100097656, + 28.284271240234375, + 33.30165100097656, + 28.284271240234375 + ] + }, + "confidence": 0.5322501871361803 + }, + { + "observation_id": "9b421918-0f4b-4091-96fa-48f30f049631", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 999.0, + 755.0 + ], + [ + 978.0, + 776.0 + ], + [ + 955.0, + 755.0 + ], + [ + 976.0, + 734.0 + ] + ], + "center_px": [ + 977.0, + 755.0 + ], + "quality": { + "area_px": 924.0, + "perimeter_px": 121.68661499023438, + "sharpness": { + "laplacian_var": 1427.420428863967 + }, + "contrast": { + "p05": 40.0, + "p95": 177.0, + "dynamic_range": 137.0, + "mean_gray": 98.6042345276873, + "std_gray": 56.7245592071717 + }, + "geometry": { + "distance_to_center_norm": 0.37230345606803894, + "distance_to_border_px": 304.0 + }, + "edge_ratio": 1.0487007563440722, + "edge_lengths_px": [ + 29.698484420776367, + 31.14482307434082, + 29.698484420776367, + 31.14482307434082 + ] + }, + "confidence": 0.5873934926369923 + }, + { + "observation_id": "dfe96276-aa52-4a1e-8dfb-c0e68fe01464", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 76.0, + 765.0 + ], + [ + 50.0, + 785.0 + ], + [ + 32.0, + 764.0 + ], + [ + 58.0, + 744.0 + ] + ], + "center_px": [ + 54.0, + 764.5 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.92214965820312, + "sharpness": { + "laplacian_var": 1149.1764888888888 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 87.18, + "std_gray": 50.17918824904737 + }, + "geometry": { + "distance_to_center_norm": 0.7809113264083862, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.1859747094873558, + "edge_lengths_px": [ + 32.80244064331055, + 27.658634185791016, + 32.80244064331055, + 27.658634185791016 + ] + }, + "confidence": 0.32594286952973284 + }, + { + "observation_id": "c8b83f73-c9b6-4c3e-897d-adf327868df5", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 823.0, + 743.0 + ], + [ + 803.0, + 765.0 + ], + [ + 779.0, + 745.0 + ], + [ + 799.0, + 724.0 + ] + ], + "center_px": [ + 801.0, + 744.25 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.58359336853027, + "sharpness": { + "laplacian_var": 1584.9415918166465 + }, + "contrast": { + "p05": 30.0, + "p95": 174.0, + "dynamic_range": 144.0, + "mean_gray": 126.23913043478261, + "std_gray": 56.63381767927601 + }, + "geometry": { + "distance_to_center_norm": 0.24413886666297913, + "distance_to_border_px": 315.0 + }, + "edge_ratio": 1.0772758352345433, + "edge_lengths_px": [ + 29.73213768005371, + 31.240999221801758, + 29.0, + 30.610456466674805 + ] + }, + "confidence": 0.5606734879266068 + }, + { + "observation_id": "4e3e1ee2-4a1a-40f6-8c69-a467bc0bb663", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 747.0, + 705.0 + ], + [ + 724.0, + 724.0 + ], + [ + 703.0, + 703.0 + ], + [ + 726.0, + 683.0 + ] + ], + "center_px": [ + 725.0, + 703.75 + ], + "quality": { + "area_px": 904.0, + "perimeter_px": 120.42466735839844, + "sharpness": { + "laplacian_var": 1425.730397310992 + }, + "contrast": { + "p05": 25.0, + "p95": 173.0, + "dynamic_range": 148.0, + "mean_gray": 88.02341137123746, + "std_gray": 60.58805571551177 + }, + "geometry": { + "distance_to_center_norm": 0.18202924728393555, + "distance_to_border_px": 356.0 + }, + "edge_ratio": 1.0262982208923905, + "edge_lengths_px": [ + 29.832868576049805, + 29.698484420776367, + 30.479501724243164, + 30.4138126373291 + ] + }, + "confidence": 0.5872237273710109 + }, + { + "observation_id": "91145650-e4af-438f-86e3-07f3fbac6092", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 119.0, + 710.0 + ], + [ + 94.0, + 730.0 + ], + [ + 76.0, + 709.0 + ], + [ + 102.0, + 690.0 + ] + ], + "center_px": [ + 97.75, + 709.75 + ], + "quality": { + "area_px": 864.0, + "perimeter_px": 118.12554931640625, + "sharpness": { + "laplacian_var": 968.3578168166666 + }, + "contrast": { + "p05": 6.0, + "p95": 136.0, + "dynamic_range": 130.0, + "mean_gray": 46.16981132075472, + "std_gray": 49.20730448013899 + }, + "geometry": { + "distance_to_center_norm": 0.7166538238525391, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.226816924595493, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 32.202484130859375, + 26.248809814453125 + ] + }, + "confidence": 0.46950770604173 + }, + { + "observation_id": "d46c1a70-147a-4df0-aeef-30ab3d118713", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 73.0, + 695.0 + ], + [ + 48.0, + 715.0 + ], + [ + 30.0, + 694.0 + ], + [ + 55.0, + 675.0 + ] + ], + "center_px": [ + 51.5, + 694.75 + ], + "quality": { + "area_px": 863.5, + "perimeter_px": 117.98213958740234, + "sharpness": { + "laplacian_var": 900.750086057507 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 80.92109777015438, + "std_gray": 51.03488818616118 + }, + "geometry": { + "distance_to_center_norm": 0.7624196410179138, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 31.400636672973633, + 26.90724754333496 + ] + }, + "confidence": 0.2902883953953809 + }, + { + "observation_id": "e3bc5a64-b379-4dae-9769-404d9d971ac9", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 50.0, + 652.0 + ], + [ + 25.0, + 672.0 + ], + [ + 7.0, + 652.0 + ], + [ + 31.0, + 632.0 + ] + ], + "center_px": [ + 28.25, + 652.0 + ], + "quality": { + "area_px": 860.0, + "perimeter_px": 117.75009727478027, + "sharpness": { + "laplacian_var": 765.5794806391044 + }, + "contrast": { + "p05": 6.0, + "p95": 138.0, + "dynamic_range": 132.0, + "mean_gray": 60.22508591065292, + "std_gray": 51.90037234016344 + }, + "geometry": { + "distance_to_center_norm": 0.778620183467865, + "distance_to_border_px": 7.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 26.90724754333496, + 31.240999221801758, + 27.58622932434082 + ] + }, + "confidence": 0.06745941479560678 + }, + { + "observation_id": "a7a0b0f9-83ec-4503-bbf7-7dc43791573e", + "type": "aruco", + "marker_id": 79, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 603.0, + 594.0 + ], + [ + 579.0, + 612.0 + ], + [ + 561.0, + 592.0 + ], + [ + 584.0, + 574.0 + ] + ], + "center_px": [ + 581.75, + 593.0 + ], + "quality": { + "area_px": 803.0, + "perimeter_px": 113.69964027404785, + "sharpness": { + "laplacian_var": 1656.0680687854385 + }, + "contrast": { + "p05": 12.0, + "p95": 161.0, + "dynamic_range": 149.0, + "mean_gray": 98.64845173041894, + "std_gray": 55.913593747198206 + }, + "geometry": { + "distance_to_center_norm": 0.16451223194599152, + "distance_to_border_px": 468.0 + }, + "edge_ratio": 1.1149412421944707, + "edge_lengths_px": [ + 30.0, + 26.90724754333496, + 29.20616340637207, + 27.58622932434082 + ] + }, + "confidence": 0.48014488393995497 + }, + { + "observation_id": "2daf9535-121c-4f90-9ddb-52becdb1653d", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 532.0 + ], + [ + 698.0, + 550.0 + ], + [ + 678.0, + 531.0 + ], + [ + 700.0, + 513.0 + ] + ], + "center_px": [ + 699.0, + 531.5 + ], + "quality": { + "area_px": 778.0, + "perimeter_px": 112.02313995361328, + "sharpness": { + "laplacian_var": 1630.603042441958 + }, + "contrast": { + "p05": 23.0, + "p95": 174.0, + "dynamic_range": 151.0, + "mean_gray": 95.26275992438563, + "std_gray": 62.75795126376546 + }, + "geometry": { + "distance_to_center_norm": 0.025172246620059013, + "distance_to_border_px": 513.0 + }, + "edge_ratio": 1.0304177609146679, + "edge_lengths_px": [ + 28.42534065246582, + 27.58622932434082, + 28.42534065246582, + 27.58622932434082 + ] + }, + "confidence": 0.5033557129355607 + }, + { + "observation_id": "4622965e-6a6c-4b58-bf19-04662cdef951", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 879.0, + 509.0 + ], + [ + 858.0, + 527.0 + ], + [ + 837.0, + 508.0 + ], + [ + 857.0, + 490.0 + ] + ], + "center_px": [ + 857.75, + 508.5 + ], + "quality": { + "area_px": 776.5, + "perimeter_px": 111.95437049865723, + "sharpness": { + "laplacian_var": 1308.7119920798898 + }, + "contrast": { + "p05": 28.0, + "p95": 174.0, + "dynamic_range": 146.0, + "mean_gray": 80.56060606060606, + "std_gray": 60.05184093458493 + }, + "geometry": { + "distance_to_center_norm": 0.1570063829421997, + "distance_to_border_px": 490.0 + }, + "edge_ratio": 1.0803365840024208, + "edge_lengths_px": [ + 27.658634185791016, + 28.319604873657227, + 26.90724754333496, + 29.068883895874023 + ] + }, + "confidence": 0.4791716529202595 + }, + { + "observation_id": "f9e9ea19-3124-4f57-9d27-fe798d80ad85", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 692.0, + 463.0 + ], + [ + 670.0, + 480.0 + ], + [ + 650.0, + 462.0 + ], + [ + 672.0, + 445.0 + ] + ], + "center_px": [ + 671.0, + 462.5 + ], + "quality": { + "area_px": 736.0, + "perimeter_px": 109.42024993896484, + "sharpness": { + "laplacian_var": 1430.0492813475546 + }, + "contrast": { + "p05": 18.0, + "p95": 168.0, + "dynamic_range": 150.0, + "mean_gray": 84.02217741935483, + "std_gray": 61.295601129603824 + }, + "geometry": { + "distance_to_center_norm": 0.10187894850969315, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 1.0332858231363153, + "edge_lengths_px": [ + 27.80287742614746, + 26.90724754333496, + 27.80287742614746, + 26.90724754333496 + ] + }, + "confidence": 0.47486054263026106 + }, + { + "observation_id": "a04ac65a-7be9-4441-aba2-29b68fa9752a", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 226.0, + 383.0 + ], + [ + 209.0, + 365.0 + ], + [ + 233.0, + 348.0 + ], + [ + 250.0, + 366.0 + ] + ], + "center_px": [ + 229.5, + 365.5 + ], + "quality": { + "area_px": 721.0, + "perimeter_px": 108.33943939208984, + "sharpness": { + "laplacian_var": 1811.1556224254036 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 72.70393374741201, + "std_gray": 58.0764945436627 + }, + "geometry": { + "distance_to_center_norm": 0.5784616470336914, + "distance_to_border_px": 209.0 + }, + "edge_ratio": 1.187894376916731, + "edge_lengths_px": [ + 24.75883674621582, + 29.4108829498291, + 24.75883674621582, + 29.4108829498291 + ] + }, + "confidence": 0.4046375469124394 + }, + { + "observation_id": "c947b21c-ad46-4fde-93ce-d727eb50450f", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 437.0 + ], + [ + 765.0, + 454.0 + ], + [ + 745.0, + 436.0 + ], + [ + 767.0, + 419.0 + ] + ], + "center_px": [ + 765.75, + 436.5 + ], + "quality": { + "area_px": 718.5, + "perimeter_px": 107.90114212036133, + "sharpness": { + "laplacian_var": 1491.443337468285 + }, + "contrast": { + "p05": 22.0, + "p95": 171.0, + "dynamic_range": 149.0, + "mean_gray": 109.3970893970894, + "std_gray": 60.642148532506475 + }, + "geometry": { + "distance_to_center_norm": 0.12573395669460297, + "distance_to_border_px": 419.0 + }, + "edge_ratio": 1.0622933508624515, + "edge_lengths_px": [ + 27.018512725830078, + 26.90724754333496, + 27.80287742614746, + 26.172504425048828 + ] + }, + "confidence": 0.4509112286273005 + }, + { + "observation_id": "d3e3f527-dcb8-46e4-88d0-e35953035de1", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 730.0, + 434.0 + ], + [ + 708.0, + 452.0 + ], + [ + 689.0, + 434.0 + ], + [ + 710.0, + 417.0 + ] + ], + "center_px": [ + 709.25, + 434.25 + ], + "quality": { + "area_px": 717.5, + "perimeter_px": 107.86516761779785, + "sharpness": { + "laplacian_var": 1736.662652737497 + }, + "contrast": { + "p05": 19.0, + "p95": 167.0, + "dynamic_range": 148.0, + "mean_gray": 58.66320166320166, + "std_gray": 55.157409197074806 + }, + "geometry": { + "distance_to_center_norm": 0.11810554563999176, + "distance_to_border_px": 417.0 + }, + "edge_ratio": 1.0860764484296306, + "edge_lengths_px": [ + 28.42534065246582, + 26.172504425048828, + 27.018512725830078, + 26.248809814453125 + ] + }, + "confidence": 0.44042326304466006 + }, + { + "observation_id": "d3347d08-2083-4121-9060-9945a3dcb2a4", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 576.0, + 320.0 + ], + [ + 550.0, + 337.0 + ], + [ + 536.0, + 319.0 + ], + [ + 558.0, + 303.0 + ] + ], + "center_px": [ + 555.0, + 319.75 + ], + "quality": { + "area_px": 684.0, + "perimeter_px": 105.82973670959473, + "sharpness": { + "laplacian_var": 2755.9650784771356 + }, + "contrast": { + "p05": 18.3, + "p95": 164.0, + "dynamic_range": 145.7, + "mean_gray": 118.58029978586724, + "std_gray": 53.53363006243584 + }, + "geometry": { + "distance_to_center_norm": 0.30577781796455383, + "distance_to_border_px": 303.0 + }, + "edge_ratio": 1.362266203821036, + "edge_lengths_px": [ + 31.064449310302734, + 22.803508758544922, + 27.20294189453125, + 24.75883674621582 + ] + }, + "confidence": 0.33473633767097827 + }, + { + "observation_id": "b045eb6f-3a06-4809-9430-fff9f7711e14", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 146.0, + 302.0 + ], + [ + 128.0, + 284.0 + ], + [ + 151.0, + 268.0 + ], + [ + 168.0, + 285.0 + ] + ], + "center_px": [ + 148.25, + 284.75 + ], + "quality": { + "area_px": 682.5, + "perimeter_px": 105.31820297241211, + "sharpness": { + "laplacian_var": 1274.9818476124406 + }, + "contrast": { + "p05": 8.0, + "p95": 153.0, + "dynamic_range": 145.0, + "mean_gray": 78.65806451612903, + "std_gray": 55.65065056297059 + }, + "geometry": { + "distance_to_center_norm": 0.6957105398178101, + "distance_to_border_px": 128.0 + }, + "edge_ratio": 1.1653889989621362, + "edge_lengths_px": [ + 25.45584487915039, + 28.017850875854492, + 24.041629791259766, + 27.80287742614746 + ] + }, + "confidence": 0.3904275743165678 + }, + { + "observation_id": "7062ab12-d279-4faa-812d-2f76c17956c8", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 561.0, + 509.0 + ], + [ + 545.0, + 479.0 + ], + [ + 562.0, + 476.0 + ], + [ + 579.0, + 506.0 + ] + ], + "center_px": [ + 561.75, + 492.5 + ], + "quality": { + "area_px": 574.5, + "perimeter_px": 103.99284362792969, + "sharpness": { + "laplacian_var": 2618.6153012470177 + }, + "contrast": { + "p05": 28.0, + "p95": 182.0, + "dynamic_range": 154.0, + "mean_gray": 76.1413881748072, + "std_gray": 60.266572002236316 + }, + "geometry": { + "distance_to_center_norm": 0.18358337879180908, + "distance_to_border_px": 476.0 + }, + "edge_ratio": 1.997481717814946, + "edge_lengths_px": [ + 34.0, + 17.262676239013672, + 34.48188018798828, + 18.248287200927734 + ] + }, + "confidence": 0.19174142951303974 + }, + { + "observation_id": "f168eb6d-f8de-4f71-9496-e3fda1b222e3", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 349.0, + 309.0 + ], + [ + 327.0, + 326.0 + ], + [ + 309.0, + 310.0 + ], + [ + 330.0, + 293.0 + ] + ], + "center_px": [ + 328.75, + 309.5 + ], + "quality": { + "area_px": 658.5, + "perimeter_px": 103.74406433105469, + "sharpness": { + "laplacian_var": 1094.0317657154478 + }, + "contrast": { + "p05": 9.0, + "p95": 158.0, + "dynamic_range": 149.0, + "mean_gray": 66.65924276169265, + "std_gray": 58.28183701574557 + }, + "geometry": { + "distance_to_center_norm": 0.5045555830001831, + "distance_to_border_px": 293.0 + }, + "edge_ratio": 1.1544516556294537, + "edge_lengths_px": [ + 27.80287742614746, + 24.083189010620117, + 27.018512725830078, + 24.83948516845703 + ] + }, + "confidence": 0.38026711457279644 + }, + { + "observation_id": "fbd65753-e377-4f4f-8a8b-36fa9fae93c6", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 341.0 + ], + [ + 501.0, + 358.0 + ], + [ + 483.0, + 341.0 + ], + [ + 503.0, + 325.0 + ] + ], + "center_px": [ + 502.25, + 341.25 + ], + "quality": { + "area_px": 643.5, + "perimeter_px": 102.22933197021484, + "sharpness": { + "laplacian_var": 792.6312567894008 + }, + "contrast": { + "p05": 12.0, + "p95": 156.59999999999997, + "dynamic_range": 144.59999999999997, + "mean_gray": 44.28285077951002, + "std_gray": 50.37014613113326 + }, + "geometry": { + "distance_to_center_norm": 0.32757362723350525, + "distance_to_border_px": 325.0 + }, + "edge_ratio": 1.0912674534258815, + "edge_lengths_px": [ + 27.018512725830078, + 24.75883674621582, + 25.612497329711914, + 24.83948516845703 + ] + }, + "confidence": 0.3931208602008742 + }, + { + "observation_id": "ece0ffef-882c-460e-815a-bac5121e1d89", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 378.0, + 281.0 + ], + [ + 356.0, + 296.0 + ], + [ + 340.0, + 278.0 + ], + [ + 362.0, + 263.0 + ] + ], + "center_px": [ + 359.0, + 279.5 + ], + "quality": { + "area_px": 636.0, + "perimeter_px": 101.42048645019531, + "sharpness": { + "laplacian_var": 1475.439773960402 + }, + "contrast": { + "p05": 12.0, + "p95": 159.0, + "dynamic_range": 147.0, + "mean_gray": 104.82805429864253, + "std_gray": 54.152686185461974 + }, + "geometry": { + "distance_to_center_norm": 0.49463948607444763, + "distance_to_border_px": 263.0 + }, + "edge_ratio": 1.1056282539133682, + "edge_lengths_px": [ + 26.62705421447754, + 24.083189010620117, + 26.62705421447754, + 24.083189010620117 + ] + }, + "confidence": 0.3834923705135548 + }, + { + "observation_id": "e8815b2e-f44c-4390-964f-7a8aa6028777", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 444.0, + 258.0 + ], + [ + 425.0, + 275.0 + ], + [ + 406.0, + 259.0 + ], + [ + 427.0, + 243.0 + ] + ], + "center_px": [ + 425.5, + 258.75 + ], + "quality": { + "area_px": 607.0, + "perimeter_px": 99.40690803527832, + "sharpness": { + "laplacian_var": 1418.6926709234967 + }, + "contrast": { + "p05": 11.0, + "p95": 160.0, + "dynamic_range": 149.0, + "mean_gray": 106.14797136038186, + "std_gray": 57.2326997711296 + }, + "geometry": { + "distance_to_center_norm": 0.45247167348861694, + "distance_to_border_px": 243.0 + }, + "edge_ratio": 1.1644874731532113, + "edge_lengths_px": [ + 25.495098114013672, + 24.83948516845703, + 26.4007568359375, + 22.671567916870117 + ] + }, + "confidence": 0.3475062428717297 + }, + { + "observation_id": "2d4485c4-6889-4f7a-a90f-ae99b875f125", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 540.0, + 214.0 + ], + [ + 518.0, + 229.0 + ], + [ + 502.0, + 212.0 + ], + [ + 524.0, + 198.0 + ] + ], + "center_px": [ + 521.0, + 213.25 + ], + "quality": { + "area_px": 595.0, + "perimeter_px": 98.67651557922363, + "sharpness": { + "laplacian_var": 2376.767235312675 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 88.00492610837438, + "std_gray": 57.82609375178821 + }, + "geometry": { + "distance_to_center_norm": 0.425087571144104, + "distance_to_border_px": 198.0 + }, + "edge_ratio": 1.176760682519333, + "edge_lengths_px": [ + 26.62705421447754, + 23.34523582458496, + 26.07680892944336, + 22.627416610717773 + ] + }, + "confidence": 0.3370835485575886 + }, + { + "observation_id": "2aeaded2-5f99-4a07-bca9-fcb3c16168de", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 435.0, + 187.0 + ], + [ + 413.0, + 203.0 + ], + [ + 397.0, + 188.0 + ], + [ + 416.0, + 172.0 + ] + ], + "center_px": [ + 415.25, + 187.5 + ], + "quality": { + "area_px": 587.5, + "perimeter_px": 98.18157768249512, + "sharpness": { + "laplacian_var": 1963.1431301414739 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 65.73891625615764, + "std_gray": 57.77965459852634 + }, + "geometry": { + "distance_to_center_norm": 0.5177453756332397, + "distance_to_border_px": 172.0 + }, + "edge_ratio": 1.2403473347124077, + "edge_lengths_px": [ + 27.20294189453125, + 21.931713104248047, + 24.83948516845703, + 24.20743751525879 + ] + }, + "confidence": 0.3157717646545193 + }, + { + "observation_id": "f2e71c19-f507-44bd-a8ac-c50d4d5f466b", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 295.0, + 182.0 + ], + [ + 274.0, + 199.0 + ], + [ + 257.0, + 184.0 + ], + [ + 277.0, + 168.0 + ] + ], + "center_px": [ + 275.75, + 183.25 + ], + "quality": { + "area_px": 586.0, + "perimeter_px": 98.10608673095703, + "sharpness": { + "laplacian_var": 1004.0248132785243 + }, + "contrast": { + "p05": 8.0, + "p95": 152.0, + "dynamic_range": 144.0, + "mean_gray": 57.34663341645885, + "std_gray": 54.68788834886238 + }, + "geometry": { + "distance_to_center_norm": 0.6330687999725342, + "distance_to_border_px": 168.0 + }, + "edge_ratio": 1.1917355175830322, + "edge_lengths_px": [ + 27.018512725830078, + 22.671567916870117, + 25.612497329711914, + 22.803508758544922 + ] + }, + "confidence": 0.32781322776968225 + }, + { + "observation_id": "0a641f41-8f58-4c1e-9f73-ed2f1fda3aba", + "type": "aruco", + "marker_id": 65, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 330.0, + 124.0 + ], + [ + 309.0, + 139.0 + ], + [ + 292.0, + 125.0 + ], + [ + 312.0, + 109.0 + ] + ], + "center_px": [ + 310.75, + 124.25 + ], + "quality": { + "area_px": 568.5, + "perimeter_px": 96.87293815612793, + "sharpness": { + "laplacian_var": 1300.0755674364495 + }, + "contrast": { + "p05": 8.0, + "p95": 155.0, + "dynamic_range": 147.0, + "mean_gray": 86.9776119402985, + "std_gray": 55.68315657930573 + }, + "geometry": { + "distance_to_center_norm": 0.6482013463973999, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.1718344795212643, + "edge_lengths_px": [ + 25.806976318359375, + 22.022714614868164, + 25.612497329711914, + 23.430749893188477 + ] + }, + "confidence": 0.323424516536529 + }, + { + "observation_id": "84e0dfca-e52d-4f2a-9b20-0a98500678f6", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 356.0, + 167.0 + ], + [ + 333.0, + 181.0 + ], + [ + 319.0, + 165.0 + ], + [ + 341.0, + 151.0 + ] + ], + "center_px": [ + 337.25, + 166.0 + ], + "quality": { + "area_px": 563.0, + "perimeter_px": 96.19463729858398, + "sharpness": { + "laplacian_var": 1894.9311071943598 + }, + "contrast": { + "p05": 9.0, + "p95": 156.0, + "dynamic_range": 147.0, + "mean_gray": 103.9113924050633, + "std_gray": 53.71344264563591 + }, + "geometry": { + "distance_to_center_norm": 0.5945987105369568, + "distance_to_border_px": 151.0 + }, + "edge_ratio": 1.266484164199827, + "edge_lengths_px": [ + 26.925823211669922, + 21.260292053222656, + 26.07680892944336, + 21.931713104248047 + ] + }, + "confidence": 0.2963584890699928 + }, + { + "observation_id": "4d18a40e-7972-419d-8b09-73ec20e17b07", + "type": "aruco", + "marker_id": 87, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 180.0, + 65.0 + ], + [ + 159.0, + 81.0 + ], + [ + 143.0, + 66.0 + ], + [ + 164.0, + 52.0 + ] + ], + "center_px": [ + 161.5, + 66.0 + ], + "quality": { + "area_px": 534.0, + "perimeter_px": 94.18685722351074, + "sharpness": { + "laplacian_var": 1427.9534499507668 + }, + "contrast": { + "p05": 8.0, + "p95": 150.0, + "dynamic_range": 142.0, + "mean_gray": 94.2133676092545, + "std_gray": 52.32608089294961 + }, + "geometry": { + "distance_to_center_norm": 0.8139207363128662, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.2806248134565528, + "edge_lengths_px": [ + 26.4007568359375, + 21.931713104248047, + 25.238859176635742, + 20.615528106689453 + ] + }, + "confidence": 0.27798930354872264 + }, + { + "observation_id": "8d0348c6-91da-47e7-b615-53bff1058bab", + "type": "aruco", + "marker_id": 80, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 318.0, + 56.0 + ], + [ + 297.0, + 71.0 + ], + [ + 281.0, + 57.0 + ], + [ + 301.0, + 42.0 + ] + ], + "center_px": [ + 299.25, + 56.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 847.3843286787691 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 66.73007712082263, + "std_gray": 58.398961546954666 + }, + "geometry": { + "distance_to_center_norm": 0.7121544480323792, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.806976318359375, + 21.260292053222656, + 25.0, + 22.022714614868164 + ] + }, + "confidence": 0.24658567276025462 + }, + { + "observation_id": "ec7369ac-f3d2-4fc6-be33-87b4321b0e57", + "type": "aruco", + "marker_id": 78, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 352.0, + 82.0 + ], + [ + 332.0, + 97.0 + ], + [ + 315.0, + 83.0 + ], + [ + 336.0, + 68.0 + ] + ], + "center_px": [ + 333.75, + 82.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 1495.6557828150394 + }, + "contrast": { + "p05": 8.0, + "p95": 154.39999999999998, + "dynamic_range": 146.39999999999998, + "mean_gray": 80.43256997455471, + "std_gray": 54.727417597641875 + }, + "geometry": { + "distance_to_center_norm": 0.6652719378471375, + "distance_to_border_px": 68.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.0, + 22.022714614868164, + 25.806976318359375, + 21.260292053222656 + ] + }, + "confidence": 0.29355437233363646 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 486.0, + 719.0 + ], + [ + 454.0, + 799.0 + ], + [ + 418.0, + 837.0 + ], + [ + 463.0, + 740.0 + ] + ], + "center_px": [ + 455.25, + 773.75 + ], + "area_px": 1475.0 + }, + { + "image_points_px": [ + [ + 438.0, + 753.0 + ], + [ + 414.0, + 813.0 + ], + [ + 410.0, + 798.0 + ], + [ + 428.0, + 756.0 + ] + ], + "center_px": [ + 422.5, + 780.0 + ], + "area_px": 483.0 + }, + { + "image_points_px": [ + [ + 800.0, + 580.0 + ], + [ + 824.0, + 598.0 + ], + [ + 805.0, + 618.0 + ], + [ + 781.0, + 600.0 + ] + ], + "center_px": [ + 802.5, + 599.0 + ], + "area_px": 822.0 + }, + { + "image_points_px": [ + [ + 347.0, + 811.0 + ], + [ + 356.0, + 811.0 + ], + [ + 379.0, + 836.0 + ], + [ + 372.0, + 837.0 + ] + ], + "center_px": [ + 363.5, + 823.75 + ], + "area_px": 216.0 + }, + { + "image_points_px": [ + [ + 606.0, + 542.0 + ], + [ + 580.0, + 559.0 + ], + [ + 569.0, + 560.0 + ], + [ + 589.0, + 544.0 + ] + ], + "center_px": [ + 586.0, + 551.25 + ], + "area_px": 196.5 + }, + { + "image_points_px": [ + [ + 523.0, + 557.0 + ], + [ + 498.0, + 574.0 + ], + [ + 494.0, + 570.0 + ], + [ + 503.0, + 561.0 + ] + ], + "center_px": [ + 504.5, + 565.5 + ], + "area_px": 156.0 + }, + { + "image_points_px": [ + [ + 803.0, + 972.0 + ], + [ + 814.0, + 977.0 + ], + [ + 824.0, + 985.0 + ], + [ + 808.0, + 977.0 + ] + ], + "center_px": [ + 812.25, + 977.75 + ], + "area_px": 39.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/render_g_camera_pose.json b/data/camera_study/Scene10/k3_efg/render_g_camera_pose.json new file mode 100644 index 0000000..7585947 --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/render_g_camera_pose.json @@ -0,0 +1,663 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:35Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k3_efg\\render_g_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "g", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 33, + "used_marker_ids": [ + 86, + 64, + 215, + 58, + 72, + 69, + 53, + 103, + 51, + 56, + 46, + 68, + 79, + 55, + 66, + 47, + 217, + 97, + 54, + 85, + 205, + 92, + 105, + 102, + 59, + 57, + 48, + 63, + 65, + 71, + 87, + 80, + 78 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.009919110626502768, + 0.00131603695020182, + 0.001107937977321884, + 0.0011079307333379282 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.1533723108903047, + "residual_median_px": 2.642822899939481, + "residual_max_px": 5.712847334889287, + "sigma2_normalized": 1.3502615607878073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + -0.7068235278129578, + -0.7073897123336792, + 0.0005333506851457059 + ], + [ + -0.6407679319381714, + 0.6399352550506592, + -0.424145370721817 + ], + [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + ], + "translation_m": [ + -0.00025032571284100413, + 0.3299143314361572, + 1.3926880359649658 + ], + "rvec_rad": [ + 1.1160234227786252, + -2.692342329270323, + 0.5995714660194011 + ] + }, + "camera_in_world": { + "position_m": [ + -0.20615969598293304, + 0.20669731497764587, + 1.40114164352417 + ], + "position_mm": [ + -206.15969848632812, + 206.6973114013672, + 1401.1416015625 + ], + "orientation_deg": { + "roll": -161.66343688964844, + "pitch": -17.43927001953125, + "yaw": -137.80624389648438 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 4.975476294351241e-06, + -6.1997390444361685e-06, + 4.6125841623440254e-06, + 3.8792135706014886e-07, + 1.0177551175558624e-06, + 4.222247510549453e-06 + ], + [ + -6.199739044436152e-06, + 1.6975220993135513e-05, + -1.1554389240886986e-05, + -2.6694426951616535e-06, + -1.5071367865932754e-06, + -1.0044703768545779e-05 + ], + [ + 4.61258416234392e-06, + -1.1554389240886865e-05, + 4.305804556659614e-05, + 4.2916213343878956e-06, + -2.367994951969628e-06, + 1.1642827799058608e-07 + ], + [ + 3.8792135706013785e-07, + -2.66944269516164e-06, + 4.29162133438789e-06, + 8.873234421723078e-07, + -1.077878898019132e-07, + 5.938016020714988e-07 + ], + [ + 1.0177551175558734e-06, + -1.5071367865932949e-06, + -2.3679949519695885e-06, + -1.0778788980190919e-07, + 6.616834799099002e-07, + 1.592756267167381e-06 + ], + [ + 4.2222475105494726e-06, + -1.0044703768545826e-05, + 1.1642827799072875e-07, + 5.938016020715144e-07, + 1.5927562671673749e-06, + 1.016526335390813e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.12780268061910577, + 0.23606432019497975, + 0.37596705361655935 + ], + "tvec_std_m": [ + 0.0009419784722446197, + 0.0008134392908569761, + 0.0031883010136917957 + ] + }, + "camera_center_std_m": [ + 0.005660072460127804, + 0.007818574448214759, + 0.0036781658638248924 + ], + "camera_center_std_mm": [ + 5.660072460127804, + 7.8185744482147586, + 3.6781658638248924 + ], + "orientation_std_deg": { + "roll": 0.33214565947431973, + "pitch": 0.23919321283200756, + "yaw": 0.12115842919429226 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 86, + "observed_center_px": [ + 70.5, + 959.0 + ], + "projected_center_px": [ + 72.42671966552734, + 955.485107421875 + ], + "reprojection_error_px": 4.0083311371801615, + "confidence": 0.5795855489013004 + }, + { + "marker_id": 64, + "observed_center_px": [ + 921.75, + 859.0 + ], + "projected_center_px": [ + 922.7560424804688, + 862.7833251953125 + ], + "reprojection_error_px": 3.9148015283017963, + "confidence": 0.616540888528013 + }, + { + "marker_id": 215, + "observed_center_px": [ + 566.5, + 693.0 + ], + "projected_center_px": [ + 568.2459106445312, + 692.080322265625 + ], + "reprojection_error_px": 1.9733248880487617, + "confidence": 0.6152661587526339 + }, + { + "marker_id": 58, + "observed_center_px": [ + 880.5, + 772.75 + ], + "projected_center_px": [ + 879.3278198242188, + 769.2518310546875 + ], + "reprojection_error_px": 3.689334944735071, + "confidence": 0.5876289194459208 + }, + { + "marker_id": 72, + "observed_center_px": [ + 115.5, + 788.0 + ], + "projected_center_px": [ + 114.51494598388672, + 788.7781982421875 + ], + "reprojection_error_px": 1.2553580838966305, + "confidence": 0.5322501871361803 + }, + { + "marker_id": 69, + "observed_center_px": [ + 977.0, + 755.0 + ], + "projected_center_px": [ + 978.3434448242188, + 750.7787475585938 + ], + "reprojection_error_px": 4.429877669845791, + "confidence": 0.5873934926369923 + }, + { + "marker_id": 53, + "observed_center_px": [ + 54.0, + 764.5 + ], + "projected_center_px": [ + 57.76123046875, + 763.97119140625 + ], + "reprojection_error_px": 3.79822236946143, + "confidence": 0.32594286952973284 + }, + { + "marker_id": 103, + "observed_center_px": [ + 801.0, + 744.25 + ], + "projected_center_px": [ + 797.4358520507812, + 746.4951782226562 + ], + "reprojection_error_px": 4.212359891487205, + "confidence": 0.5606734879266068 + }, + { + "marker_id": 51, + "observed_center_px": [ + 725.0, + 703.75 + ], + "projected_center_px": [ + 724.1592407226562, + 705.2492065429688 + ], + "reprojection_error_px": 1.7188648640657866, + "confidence": 0.5872237273710109 + }, + { + "marker_id": 56, + "observed_center_px": [ + 97.75, + 709.75 + ], + "projected_center_px": [ + 94.510986328125, + 713.8988647460938 + ], + "reprojection_error_px": 5.263486320678788, + "confidence": 0.46950770604173 + }, + { + "marker_id": 46, + "observed_center_px": [ + 51.5, + 694.75 + ], + "projected_center_px": [ + 45.80540466308594, + 695.206298828125 + ], + "reprojection_error_px": 5.712847334889287, + "confidence": 0.2902883953953809 + }, + { + "marker_id": 68, + "observed_center_px": [ + 28.25, + 652.0 + ], + "projected_center_px": [ + 32.07790756225586, + 650.2508544921875 + ], + "reprojection_error_px": 4.20860859580411, + "confidence": 0.06745941479560678 + }, + { + "marker_id": 79, + "observed_center_px": [ + 581.75, + 593.0 + ], + "projected_center_px": [ + 580.7769775390625, + 592.564453125 + ], + "reprojection_error_px": 1.0660552470726525, + "confidence": 0.48014488393995497 + }, + { + "marker_id": 55, + "observed_center_px": [ + 699.0, + 531.5 + ], + "projected_center_px": [ + 701.2785034179688, + 531.0349731445312 + ], + "reprojection_error_px": 2.3254736726100407, + "confidence": 0.5033557129355607 + }, + { + "marker_id": 66, + "observed_center_px": [ + 857.75, + 508.5 + ], + "projected_center_px": [ + 857.27294921875, + 509.6018981933594 + ], + "reprojection_error_px": 1.200731891980841, + "confidence": 0.4791716529202595 + }, + { + "marker_id": 47, + "observed_center_px": [ + 671.0, + 462.5 + ], + "projected_center_px": [ + 669.33203125, + 463.6061096191406 + ], + "reprojection_error_px": 2.001399070783231, + "confidence": 0.47486054263026106 + }, + { + "marker_id": 217, + "observed_center_px": [ + 229.5, + 365.5 + ], + "projected_center_px": [ + 227.5244140625, + 361.9618225097656 + ], + "reprojection_error_px": 4.052362243044047, + "confidence": 0.4046375469124394 + }, + { + "marker_id": 97, + "observed_center_px": [ + 765.75, + 436.5 + ], + "projected_center_px": [ + 768.8408203125, + 437.7091064453125 + ], + "reprojection_error_px": 3.318901715968526, + "confidence": 0.4509112286273005 + }, + { + "marker_id": 54, + "observed_center_px": [ + 709.25, + 434.25 + ], + "projected_center_px": [ + 710.0586547851562, + 430.8271789550781 + ], + "reprojection_error_px": 3.5170479762317965, + "confidence": 0.44042326304466006 + }, + { + "marker_id": 85, + "observed_center_px": [ + 555.0, + 319.75 + ], + "projected_center_px": [ + 556.587158203125, + 321.8631591796875 + ], + "reprojection_error_px": 2.642822899939481, + "confidence": 0.33473633767097827 + }, + { + "marker_id": 205, + "observed_center_px": [ + 148.25, + 284.75 + ], + "projected_center_px": [ + 149.84744262695312, + 286.7835693359375 + ], + "reprojection_error_px": 2.5859673606741804, + "confidence": 0.3904275743165678 + }, + { + "marker_id": 92, + "observed_center_px": [ + 328.75, + 309.5 + ], + "projected_center_px": [ + 328.0833435058594, + 312.3528137207031 + ], + "reprojection_error_px": 2.929671825684897, + "confidence": 0.38026711457279644 + }, + { + "marker_id": 105, + "observed_center_px": [ + 502.25, + 341.25 + ], + "projected_center_px": [ + 498.5203857421875, + 341.1575622558594 + ], + "reprojection_error_px": 3.730759607455309, + "confidence": 0.3931208602008742 + }, + { + "marker_id": 102, + "observed_center_px": [ + 359.0, + 279.5 + ], + "projected_center_px": [ + 359.4945373535156, + 281.3692626953125 + ], + "reprojection_error_px": 1.9335744666573331, + "confidence": 0.3834923705135548 + }, + { + "marker_id": 59, + "observed_center_px": [ + 425.5, + 258.75 + ], + "projected_center_px": [ + 428.2454833984375, + 258.3636779785156 + ], + "reprojection_error_px": 2.7725302154132963, + "confidence": 0.3475062428717297 + }, + { + "marker_id": 57, + "observed_center_px": [ + 521.0, + 213.25 + ], + "projected_center_px": [ + 521.8204956054688, + 214.8630828857422 + ], + "reprojection_error_px": 1.8097650220036505, + "confidence": 0.3370835485575886 + }, + { + "marker_id": 48, + "observed_center_px": [ + 415.25, + 187.5 + ], + "projected_center_px": [ + 416.5931396484375, + 185.31541442871094 + ], + "reprojection_error_px": 2.564456713124472, + "confidence": 0.3157717646545193 + }, + { + "marker_id": 63, + "observed_center_px": [ + 275.75, + 183.25 + ], + "projected_center_px": [ + 273.6121826171875, + 182.2046661376953 + ], + "reprojection_error_px": 2.379702932287163, + "confidence": 0.32781322776968225 + }, + { + "marker_id": 65, + "observed_center_px": [ + 310.75, + 124.25 + ], + "projected_center_px": [ + 308.9479675292969, + 123.33204650878906 + ], + "reprojection_error_px": 2.022364862603867, + "confidence": 0.323424516536529 + }, + { + "marker_id": 71, + "observed_center_px": [ + 337.25, + 166.0 + ], + "projected_center_px": [ + 337.3795471191406, + 168.51844787597656 + ], + "reprojection_error_px": 2.52177757942458, + "confidence": 0.2963584890699928 + }, + { + "marker_id": 87, + "observed_center_px": [ + 161.5, + 66.0 + ], + "projected_center_px": [ + 160.9746551513672, + 64.77437591552734 + ], + "reprojection_error_px": 1.33346976209604, + "confidence": 0.27798930354872264 + }, + { + "marker_id": 80, + "observed_center_px": [ + 299.25, + 56.5 + ], + "projected_center_px": [ + 298.39697265625, + 58.612037658691406 + ], + "reprojection_error_px": 2.277796900716975, + "confidence": 0.24658567276025462 + }, + { + "marker_id": 78, + "observed_center_px": [ + 333.75, + 82.5 + ], + "projected_center_px": [ + 335.54010009765625, + 79.4444351196289 + ], + "reprojection_error_px": 3.5413182711789872, + "confidence": 0.29355437233363646 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/robot_state.eval.json b/data/camera_study/Scene10/k3_efg/robot_state.eval.json new file mode 100644 index 0000000..f925f41 --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 118.60413900173282, + "gt": 120.0, + "error": 1.3958609982671817, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 60.1146514176725, + "gt": 60.0, + "error": 0.11465141767249065, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.9455818316317, + "gt": -110.0, + "error": 0.05441816836830071, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "a", + "estimate": 19.693381353837186, + "gt": 20.0, + "error": 0.30661864616280354, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "b", + "estimate": 0.0, + "gt": 30.0, + "error": 30.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "c", + "estimate": 0.0, + "gt": 180.0, + "error": 180.0, + "unit": "deg", + "observable": false, + "n_markers": 0 + }, + { + "joint": "e", + "estimate": 0.0, + "gt": 4.0, + "error": 4.0, + "unit": "mm", + "observable": false, + "n_markers": 0 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.15856274406786497, + "max_abs_deg": 0.30661864616280354, + "mean_abs_mm": 1.3958609982671817, + "max_abs_mm": 1.3958609982671817 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k3_efg/robot_state.json b/data/camera_study/Scene10/k3_efg/robot_state.json new file mode 100644 index 0000000..d7d4060 --- /dev/null +++ b/data/camera_study/Scene10/k3_efg/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:18:39Z", + "method": "hybrid", + "movements": { + "x": { + "value": 118.60413900173282, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 60.1146514176725, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.9455818316317, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "a": { + "value": 19.693381353837186, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "b": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "c": { + "value": 0.0, + "unit": "deg", + "observable": false, + "confidence": "none", + "n_markers": 0 + }, + "e": { + "value": 0.0, + "unit": "mm", + "observable": false, + "confidence": "none", + "n_markers": 0 + } + }, + "residual_rms": 2.415154558548236, + "num_markers": 24 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/aruco_marker_poses.json b/data/camera_study/Scene10/k4_abcd/aruco_marker_poses.json new file mode 100644 index 0000000..798a274 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/aruco_marker_poses.json @@ -0,0 +1,1289 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:19:51Z", + "summary": { + "num_cameras": 4, + "num_markers": 28 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.30574984241544506, + -0.20018327032944644, + 0.02421197205521249 + ], + "position_mm": [ + 305.7498424154451, + -200.18327032944643, + 24.211972055212488 + ], + "normal": [ + 0.14515362377677973, + -0.9664097438989231, + 0.21209109458364098 + ], + "corners_m": [ + [ + 0.2924362855987626, + -0.19976177936981124, + 0.03486145391715934 + ], + [ + 0.3161277126438905, + -0.19592107484127722, + 0.03690831075044228 + ], + [ + 0.31898124411545187, + -0.20049157761228903, + 0.013371310562978914 + ], + [ + 0.2954541273036752, + -0.2045586494944083, + 0.011706812990269422 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.001452521516345 + }, + { + "marker_id": 45, + "link": "FingerB", + "position_m": [ + 0.35448346822403853, + -0.1990997583773312, + 0.020182709040362935 + ], + "position_mm": [ + 354.4834682240385, + -199.0997583773312, + 20.182709040362937 + ], + "normal": [ + 0.7784691973136997, + -0.6213808396854295, + -0.08872181752869418 + ], + "corners_m": [ + [ + 0.35835333994020585, + -0.1967137310349807, + 0.03706823919749973 + ], + [ + 0.3645818203773947, + -0.18575909790575154, + 0.015723290503066607 + ], + [ + 0.35081115055869105, + -0.2013880535142798, + 0.0036132217413700654 + ], + [ + 0.34418756201986234, + -0.2125381510543128, + 0.02432608471951535 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.521913755760515 + }, + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.34336973349794175, + -0.2883288904271367, + -0.027091563536929486 + ], + "position_mm": [ + 343.36973349794175, + -288.32889042713674, + -27.091563536929485 + ], + "normal": [ + 0.01066646051461013, + 0.010162648116250226, + 0.999891467712049 + ], + "corners_m": [ + [ + 0.3317696292712468, + -0.3000354419368223, + -0.02703535988469413 + ], + [ + 0.3315096425040896, + -0.2766282501338239, + -0.026900287001694403 + ], + [ + 0.35514578473673564, + -0.2767076408018824, + -0.027520280845220055 + ], + [ + 0.3550538774796951, + -0.29994422883601807, + -0.026910326416109354 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.395741843478206 + }, + { + "marker_id": 50, + "link": "Board", + "position_m": [ + 0.5710832583917255, + 0.2116990032274318, + -0.027206452686000037 + ], + "position_mm": [ + 571.0832583917255, + 211.6990032274318, + -27.206452686000038 + ], + "normal": [ + -0.0021351011189268904, + 0.03872167744333939, + 0.9992477535822565 + ], + "corners_m": [ + [ + 0.5597433253260713, + 0.1997060226348541, + -0.026893711012318293 + ], + [ + 0.5595176351052566, + 0.22363229001403293, + -0.02756428106695161 + ], + [ + 0.5822918235446088, + 0.2234173386146327, + -0.02776881159262562 + ], + [ + 0.582780249590965, + 0.20004036164620748, + -0.02659900707210462 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.29135146226515 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.1678288774987419, + -0.1730554086562342, + -0.027711457913272793 + ], + "position_mm": [ + 167.8288774987419, + -173.0554086562342, + -27.711457913272792 + ], + "normal": [ + 0.010268813379586655, + -0.006191235283313446, + 0.9999281074544519 + ], + "corners_m": [ + [ + 0.1557198940260281, + -0.18423944397798062, + -0.02762784165625269 + ], + [ + 0.15615732548500588, + -0.16119734431644742, + -0.027546699238653067 + ], + [ + 0.17993448309797247, + -0.16177290953515563, + -0.027737637262677774 + ], + [ + 0.17950380738596114, + -0.1850119367953531, + -0.02793365349550764 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.468386947905117 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3395001219210315, + -0.3274645922246717, + -0.027135651210869888 + ], + "position_mm": [ + 339.5001219210315, + -327.4645922246717, + -27.135651210869888 + ], + "normal": [ + 0.00912769179451758, + 0.05144438017763726, + 0.9986341477190949 + ], + "corners_m": [ + [ + 0.32760604789511694, + -0.3393882583021579, + -0.026667943804084774 + ], + [ + 0.3280175930171168, + -0.31577695177799925, + -0.02737469618348002 + ], + [ + 0.3512626808631416, + -0.3152023715268377, + -0.028125212813504486 + ], + [ + 0.3511141659087508, + -0.3394907872916921, + -0.026374752042410264 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.687949534589134 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.28422651120468595, + -0.26086993934626695, + -0.027310466965492983 + ], + "position_mm": [ + 284.22651120468595, + -260.86993934626696, + -27.31046696549298 + ], + "normal": [ + -0.02268612771912359, + -0.002002835887056853, + 0.9997406304924898 + ], + "corners_m": [ + [ + 0.27218724313119824, + -0.27217907292985755, + -0.02751891836729432 + ], + [ + 0.2727209140159184, + -0.24871993668433023, + -0.02763623669755913 + ], + [ + 0.29604322605181455, + -0.24994013093005243, + -0.02692839484918133 + ], + [ + 0.2959546616198126, + -0.27264061684082763, + -0.027158317947937154 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.326722642230475 + }, + { + "marker_id": 62, + "link": "Board", + "position_m": [ + 0.40204411071719404, + -0.17288063919023366, + -0.02803121118708915 + ], + "position_mm": [ + 402.04411071719403, + -172.88063919023367, + -28.03121118708915 + ], + "normal": [ + -0.008593025493367155, + -0.049626125128019005, + 0.9987308984995151 + ], + "corners_m": [ + [ + 0.3907166108293313, + -0.18377656287699715, + -0.02893905060388623 + ], + [ + 0.38994576642061995, + -0.1627177439247683, + -0.027355572638209827 + ], + [ + 0.4130846570564717, + -0.16125703319442974, + -0.02761624703200278 + ], + [ + 0.4144294085623533, + -0.18377121676473954, + -0.028213974474257775 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.651214127696946 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.01959719599468817, + -0.1891549587209903, + -0.027173385092165457 + ], + "position_mm": [ + -19.59719599468817, + -189.1549587209903, + -27.173385092165457 + ], + "normal": [ + -0.0013690596950047752, + -0.03993451097752794, + 0.9992013613424159 + ], + "corners_m": [ + [ + -0.032034380386192, + -0.2000777299900987, + -0.027626877809038577 + ], + [ + -0.03086927634366164, + -0.17784446846803623, + -0.02673688340256198 + ], + [ + -0.007351913975694303, + -0.17850477829399516, + -0.02673086138060643 + ], + [ + -0.008133213273204742, + -0.20019285813183116, + -0.02759891777645485 + ] + ], + "num_cameras": 3, + "edge_length_mm": 22.857285971441993 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.005575105444165888, + -0.27743138997033767, + -0.027415355015344475 + ], + "position_mm": [ + 5.575105444165888, + -277.43138997033765, + -27.415355015344474 + ], + "normal": [ + 0.021487353833786253, + -0.02207211277465515, + 0.9995254451302802 + ], + "corners_m": [ + [ + -0.0063814075681734965, + -0.28887724334500614, + -0.0273675904889414 + ], + [ + -0.005569501196822077, + -0.2660114489306851, + -0.02696783913124729 + ], + [ + 0.017331069390963953, + -0.26604356082452296, + -0.027372143511268824 + ], + [ + 0.01692026115069517, + -0.2887933067811364, + -0.02795384692992038 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.964485206532387 + }, + { + "marker_id": 75, + "link": "Board", + "position_m": [ + -0.027602888025185998, + 0.19326801694123372, + -0.026446125368980555 + ], + "position_mm": [ + -27.602888025185997, + 193.26801694123372, + -26.446125368980557 + ], + "normal": [ + -0.060075453914578344, + -0.029149257025994694, + 0.9977681397257531 + ], + "corners_m": [ + [ + -0.039865687398469705, + 0.18376529148770973, + -0.027259026027503214 + ], + [ + -0.03849624729094642, + 0.20569603404672487, + -0.0269455814096749 + ], + [ + -0.015581080345926531, + 0.20247489956703318, + -0.025240737148984713 + ], + [ + -0.016468537065401335, + 0.18113584266346716, + -0.026339156889759397 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.53174876690096 + }, + { + "marker_id": 85, + "link": "Board", + "position_m": [ + 0.5063396802870157, + -0.3135214763433817, + -0.027594468153602107 + ], + "position_mm": [ + 506.3396802870157, + -313.52147634338166, + -27.594468153602108 + ], + "normal": [ + -0.006990534975307135, + -0.014190489550252539, + 0.9998748733852068 + ], + "corners_m": [ + [ + 0.4940710355094577, + -0.3247132382913153, + -0.027625657177304284 + ], + [ + 0.49514756050654757, + -0.3012518246895481, + -0.027717674370342973 + ], + [ + 0.518290444991102, + -0.3026956342433219, + -0.027131069440025753 + ], + [ + 0.5178496801409558, + -0.3254252081493413, + -0.027903471626735434 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.30486593470645 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18656006837375042, + -0.2765765182824603, + -0.02725779625585082 + ], + "position_mm": [ + 186.56006837375043, + -276.5765182824603, + -27.25779625585082 + ], + "normal": [ + -0.010921636943540468, + -0.0029058969472955942, + 0.9999361347653186 + ], + "corners_m": [ + [ + 0.17536538278118452, + -0.28874319951454275, + -0.02728755747174682 + ], + [ + 0.17408024683028048, + -0.26522792987044846, + -0.027488418440486388 + ], + [ + 0.19782837731264616, + -0.26486913093701886, + -0.02696820561000983 + ], + [ + 0.19896626657089056, + -0.28746581280783146, + -0.02728700350116025 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.392685353949684 + }, + { + "marker_id": 96, + "link": "Board", + "position_m": [ + 0.3718203946498768, + -0.1837009344760794, + -0.02820900376572861 + ], + "position_mm": [ + 371.8203946498768, + -183.7009344760794, + -28.20900376572861 + ], + "normal": [ + 0.0034740978700644374, + -0.0317367185226094, + 0.9994902257358027 + ], + "corners_m": [ + [ + 0.3601217296589553, + -0.19460186516196362, + -0.028921668543352534 + ], + [ + 0.3600538880189521, + -0.17292637116137147, + -0.02741065045791009 + ], + [ + 0.38326420381864224, + -0.17196902579574286, + -0.02826311606244047 + ], + [ + 0.3838417571029574, + -0.19530647578523977, + -0.028240579999211333 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.014689793132913 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6506322993203831, + -0.22404420835307964, + -0.027083346484058766 + ], + "position_mm": [ + 650.6322993203831, + -224.04420835307965, + -27.083346484058765 + ], + "normal": [ + 0.007453559265215193, + -0.04325842158104699, + 0.9990361121684223 + ], + "corners_m": [ + [ + 0.638710707258843, + -0.23493804511008234, + -0.02725591213895623 + ], + [ + 0.6394722593076244, + -0.21238711834152707, + -0.026710930731421133 + ], + [ + 0.6622639251261075, + -0.21317600144133933, + -0.02648361212968244 + ], + [ + 0.6620823055889574, + -0.23567566851936983, + -0.027882930936175266 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.82808024331435 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10453677835525271, + -0.19049635219107433, + -0.027386398128847394 + ], + "position_mm": [ + 104.53677835525271, + -190.49635219107432, + -27.386398128847393 + ], + "normal": [ + 0.005067898135456181, + -0.026324357466779746, + 0.9996406077248212 + ], + "corners_m": [ + [ + 0.0927832836177164, + -0.20221402234387134, + -0.027685879305336093 + ], + [ + 0.09244445782534876, + -0.1795440335028568, + -0.02698547043812926 + ], + [ + 0.11612255988269625, + -0.1787530606348057, + -0.02718696902133632 + ], + [ + 0.11679681209524947, + -0.20147429228276345, + -0.0276872737505879 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.284290385089054 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.31112495103704557, + -0.15457495076178052, + 0.1565259145722656 + ], + "position_mm": [ + 311.12495103704555, + -154.5749507617805, + 156.5259145722656 + ], + "normal": [ + -0.34989725412340067, + -0.7278239020761291, + 0.58978324757794 + ], + "corners_m": [ + [ + 0.29968668371446633, + -0.14377701547563226, + 0.16304231860223958 + ], + [ + 0.32212538826739423, + -0.14997226164876323, + 0.16875484787710027 + ], + [ + 0.3226004912772579, + -0.16539564070704635, + 0.14995788358078663 + ], + [ + 0.3000872408890639, + -0.15915488521568025, + 0.14434860822893592 + ] + ], + "num_cameras": 4, + "edge_length_mm": 24.130967801852997 + }, + { + "marker_id": 205, + "link": "Board", + "position_m": [ + 0.7522864761629531, + -0.0908124559745079, + 0.0008870449859709909 + ], + "position_mm": [ + 752.286476162953, + -90.8124559745079, + 0.8870449859709909 + ], + "normal": [ + -0.01491644266427506, + -0.028263746611815514, + 0.9994891997243924 + ], + "corners_m": [ + [ + 0.7410207214314708, + -0.07877501566903286, + 0.0004942482391278989 + ], + [ + 0.763021651073034, + -0.08016728058282391, + 0.0019727039654060478 + ], + [ + 0.7645804923971876, + -0.10164298920325765, + 0.00019117690202857826 + ], + [ + 0.7405230397501202, + -0.10266453844291722, + 0.0008900508373214385 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.92187474337055 + }, + { + "marker_id": 206, + "link": "Board", + "position_m": [ + 0.6500000814765554, + -0.010119256498941923, + 0.00042321635657145365 + ], + "position_mm": [ + 650.0000814765555, + -10.119256498941922, + 0.4232163565714536 + ], + "normal": [ + 0.011592821740882445, + -0.007759304215309904, + 0.9999026951069682 + ], + "corners_m": [ + [ + 0.6383081225600975, + 0.0013785011640512724, + 0.0006024455240636259 + ], + [ + 0.6615704626944585, + 0.0017490939301256006, + 0.00042655368077619 + ], + [ + 0.6617018160883879, + -0.02165869377987186, + 0.0001526571045244104 + ], + [ + 0.6384199245632778, + -0.021945927310072704, + 0.0005112091169215882 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.321753530436958 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.021697748398602463, + -0.020272377316199207, + 0.0011461375566234524 + ], + "position_mm": [ + 21.697748398602464, + -20.272377316199208, + 1.1461375566234524 + ], + "normal": [ + -0.0012756413350414042, + -0.0041437260974951364, + 0.9999906010924369 + ], + "corners_m": [ + [ + 0.009370479343370475, + -0.008914652142142727, + 0.0009113825491557973 + ], + [ + 0.033431181906874496, + -0.008994823418029261, + 0.0014892054231865738 + ], + [ + 0.03410450311598934, + -0.030991575127494134, + 0.0008383334453227278 + ], + [ + 0.009884829228175542, + -0.03218845857713071, + 0.00134562880882871 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.405631265995936 + }, + { + "marker_id": 211, + "link": "Board", + "position_m": [ + 0.2533057476224028, + -0.008810559868236903, + 3.714412251205133e-05 + ], + "position_mm": [ + 253.30574762240283, + -8.810559868236904, + 0.03714412251205133 + ], + "normal": [ + 0.01186403904204002, + -0.0009584690846691224, + 0.9999291604481902 + ], + "corners_m": [ + [ + 0.24196036982027513, + 0.0034886974714240155, + -6.48452776953702e-06 + ], + [ + 0.26561516474231184, + 0.0020439838742658837, + 9.900561936778592e-05 + ], + [ + 0.2650335231744089, + -0.020671278047862087, + -0.00030503598324687297 + ], + [ + 0.24061393275261525, + -0.020103642770775424, + 0.0003610913816968294 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.623565718732657 + }, + { + "marker_id": 214, + "link": "Board", + "position_m": [ + 0.3479531944962937, + -0.01063423728343781, + 0.0006248797674845711 + ], + "position_mm": [ + 347.9531944962937, + -10.634237283437809, + 0.6248797674845711 + ], + "normal": [ + 0.00856857758665687, + -0.011793694934319256, + 0.9998937384732128 + ], + "corners_m": [ + [ + 0.3363295544417049, + 0.0011143263828779966, + 0.0008739982178064471 + ], + [ + 0.3598615240467987, + 0.0005073083100252126, + 0.0006432684685022758 + ], + [ + 0.35995529437200663, + -0.022348750671823323, + 0.0003944920007030549 + ], + [ + 0.3356664051246645, + -0.02180983315483112, + 0.0005877603829265065 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.407426211605227 + }, + { + "marker_id": 215, + "link": "Board", + "position_m": [ + 0.25042025949499297, + -0.08847065880633932, + 0.0002855341851703378 + ], + "position_mm": [ + 250.42025949499296, + -88.47065880633932, + 0.28553418517033785 + ], + "normal": [ + -0.01815665594731763, + -0.009888596798264981, + 0.9997862529051759 + ], + "corners_m": [ + [ + 0.23914734210610256, + -0.07599756188601692, + 0.0001214116699956801 + ], + [ + 0.262490747221959, + -0.07784321863282265, + 0.000694555600539444 + ], + [ + 0.2618991412619549, + -0.10068622634043879, + 0.0002898402626501584 + ], + [ + 0.23814380738995547, + -0.09935562836607893, + 3.63292074960689e-05 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.36280218717181 + }, + { + "marker_id": 218, + "link": "Arm2", + "position_m": [ + 0.35368209771592496, + -0.0994615110956942, + 0.19956017109351087 + ], + "position_mm": [ + 353.68209771592495, + -99.4615110956942, + 199.56017109351086 + ], + "normal": [ + 0.9434809764113783, + -0.26499455108402514, + 0.19905158890500788 + ], + "corners_m": [ + [ + 0.3497794886952876, + -0.10014350713255572, + 0.21689899514496166 + ], + [ + 0.3575047054831509, + -0.08385275617174048, + 0.20249292431168991 + ], + [ + 0.3576879112447054, + -0.09770028835233091, + 0.1826592092085517 + ], + [ + 0.349756285440556, + -0.11614949272614974, + 0.19618955570884017 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.41424801234189 + }, + { + "marker_id": 242, + "link": "Arm1", + "position_m": [ + 0.23239185290556624, + -0.049012419724834194, + 0.25855071298730925 + ], + "position_mm": [ + 232.39185290556625, + -49.012419724834196, + 258.5507129873092 + ], + "normal": [ + -0.04229778620402568, + -0.8740370204619323, + -0.48401465281979456 + ], + "corners_m": [ + [ + 0.24394033458418934, + -0.05604654150722595, + 0.2695576313811693 + ], + [ + 0.2445171455840555, + -0.04381823738460109, + 0.24883192135240267 + ], + [ + 0.2213437643722699, + -0.042966316292294304, + 0.24783498491914083 + ], + [ + 0.21976616708175023, + -0.05321858371521543, + 0.26797831429652424 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.582261852982302 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.23162767816936614, + -0.03690583039368946, + 0.30629810300612753 + ], + "position_mm": [ + 231.62767816936613, + -36.905830393689456, + 306.2981030061275 + ], + "normal": [ + -0.01728673465867725, + -0.49358675856214235, + 0.8695247440855021 + ], + "corners_m": [ + [ + 0.2199972269951665, + -0.026255708672802032, + 0.31198308121180734 + ], + [ + 0.2434305743146781, + -0.027144248014105154, + 0.31220380311511264 + ], + [ + 0.24334622700384378, + -0.04740648924642934, + 0.30044140836071687 + ], + [ + 0.2197366843637761, + -0.046816875641421306, + 0.3005641193368732 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.50453847342722 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3215782005240369, + -0.04516248089882925, + 0.2977878906922 + ], + "position_mm": [ + 321.5782005240369, + -45.16248089882925, + 297.7878906922 + ], + "normal": [ + -0.008602353621060193, + -0.7592298177368753, + 0.6507657669018934 + ], + "corners_m": [ + [ + 0.3093949379638618, + -0.03785813926086635, + 0.3062751031668798 + ], + [ + 0.33314265608583377, + -0.03765506422812594, + 0.306582674754764 + ], + [ + 0.33402937205865774, + -0.05318922149677021, + 0.2887022349126936 + ], + [ + 0.3097458359877942, + -0.051947498609554485, + 0.28959154993446284 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.406072986787624 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.28333989387261155, + -0.041267091824054344, + 0.3023418593158787 + ], + "position_mm": [ + 283.3398938726115, + -41.26709182405435, + 302.3418593158787 + ], + "normal": [ + 0.006757469067126431, + -0.7724781330229961, + 0.6350054099085404 + ], + "corners_m": [ + [ + 0.27085757771691926, + -0.03405271060909122, + 0.31118809322968105 + ], + [ + 0.2948056979972938, + -0.03326870873676079, + 0.3120118553092161 + ], + [ + 0.295868710001651, + -0.048513330040444086, + 0.29333171117131396 + ], + [ + 0.2718275897745821, + -0.04923361790992127, + 0.2928357775533037 + ] + ], + "num_cameras": 4, + "edge_length_mm": 24.000948179224242 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/aruco_positions_initial.json b/data/camera_study/Scene10/k4_abcd/aruco_positions_initial.json new file mode 100644 index 0000000..3fcf649 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/aruco_positions_initial.json @@ -0,0 +1,618 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:19:50Z", + "summary": { + "num_cameras": 4, + "num_markers": 28, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.30535804316010734, + -0.2000683586434736, + 0.02459227325141969 + ], + "position_mm": [ + 305.35804316010734, + -200.0683586434736, + 24.592273251419687 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.3544143987288283, + -0.19907772692264217, + 0.020194970498508887 + ], + "position_mm": [ + 354.4143987288283, + -199.07772692264217, + 20.194970498508887 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3433730634904833, + -0.28835879724891644, + -0.027168376101358995 + ], + "position_mm": [ + 343.3730634904833, + -288.35879724891646, + -27.168376101358994 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 50, + "position_m": [ + 0.5711062778300803, + 0.21167185790153248, + -0.027236392665058094 + ], + "position_mm": [ + 571.1062778300803, + 211.6718579015325, + -27.236392665058094 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16790472500640152, + -0.1736307928678742, + -0.027565390441993493 + ], + "position_mm": [ + 167.90472500640152, + -173.6307928678742, + -27.565390441993493 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.33950169858604884, + -0.3275067804475449, + -0.027211607353036394 + ], + "position_mm": [ + 339.50169858604886, + -327.5067804475449, + -27.211607353036396 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28422917842345546, + -0.260891074638646, + -0.02739442298722674 + ], + "position_mm": [ + 284.22917842345544, + -260.89107463864605, + -27.39442298722674 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.4020709029134767, + -0.17287683472016446, + -0.028123519131218005 + ], + "position_mm": [ + 402.0709029134767, + -172.87683472016445, + -28.123519131218004 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.019687047586059325, + -0.18904874285087692, + -0.027644316419293775 + ], + "position_mm": [ + -19.687047586059325, + -189.04874285087692, + -27.644316419293776 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.00555495322695158, + -0.2774649024805902, + -0.027478254848490234 + ], + "position_mm": [ + 5.5549532269515804, + -277.4649024805902, + -27.478254848490234 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027619523009286034, + 0.19330209649474686, + -0.02652757806826013 + ], + "position_mm": [ + -27.619523009286034, + 193.30209649474685, + -26.52757806826013 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5063530924316049, + -0.3135538253142812, + -0.02766300592122651 + ], + "position_mm": [ + 506.35309243160486, + -313.5538253142812, + -27.66300592122651 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.186646056280353, + -0.2762214427578817, + -0.027365162092579796 + ], + "position_mm": [ + 186.646056280353, + -276.2214427578817, + -27.365162092579798 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 96, + "position_m": [ + 0.37184117858824706, + -0.18370226748878932, + -0.028303665298172874 + ], + "position_mm": [ + 371.84117858824703, + -183.70226748878932, + -28.303665298172874 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6506496658425812, + -0.22406775861996026, + -0.027142007301685093 + ], + "position_mm": [ + 650.6496658425813, + -224.06775861996024, + -27.142007301685094 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10443137711131635, + -0.1901487365237244, + -0.02732465096966076 + ], + "position_mm": [ + 104.43137711131635, + -190.1487365237244, + -27.32465096966076 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31092214143190405, + -0.1544255496113991, + 0.15668034447010715 + ], + "position_mm": [ + 310.92214143190404, + -154.4255496113991, + 156.68034447010714 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7523091316145816, + -0.0908295201086147, + 0.000834633856532585 + ], + "position_mm": [ + 752.3091316145816, + -90.8295201086147, + 0.8346338565325849 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500135896057839, + -0.010136006087639692, + 0.00037332949430560306 + ], + "position_mm": [ + 650.013589605784, + -10.136006087639691, + 0.3733294943056031 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.022198968910322078, + -0.021583815641211285, + 0.0019081402621860344 + ], + "position_mm": [ + 22.198968910322076, + -21.583815641211284, + 1.9081402621860344 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.2534764225210652, + -0.009923104246820535, + 0.0006217621524497073 + ], + "position_mm": [ + 253.47642252106522, + -9.923104246820534, + 0.6217621524497072 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.347975371322791, + -0.010607968556895574, + 0.0005435925742859373 + ], + "position_mm": [ + 347.975371322791, + -10.607968556895573, + 0.5435925742859373 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25041920016634434, + -0.08847728419421877, + 0.0002108696475885868 + ], + "position_mm": [ + 250.41920016634432, + -88.47728419421877, + 0.21086964758858678 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3536314171939221, + -0.09947516209694193, + 0.19956923774735225 + ], + "position_mm": [ + 353.6314171939221, + -99.47516209694193, + 199.56923774735225 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 242, + "position_m": [ + 0.23240905503122794, + -0.04893755321345677, + 0.2586224195999469 + ], + "position_mm": [ + 232.40905503122795, + -48.937553213456766, + 258.6224195999469 + ], + "link": "Arm1", + "normal": [ + 0.0, + 0.0, + -1.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23106354953734118, + -0.0367713958468442, + 0.30595079257610286 + ], + "position_mm": [ + 231.06354953734117, + -36.7713958468442, + 305.95079257610286 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32103115932158455, + -0.045120380841119606, + 0.2974342388767264 + ], + "position_mm": [ + 321.03115932158454, + -45.120380841119605, + 297.4342388767264 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.28288814687891756, + -0.04126777483996936, + 0.3020280723585196 + ], + "position_mm": [ + 282.88814687891755, + -41.267774839969356, + 302.0280723585196 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/aruco_positions_optimized.json b/data/camera_study/Scene10/k4_abcd/aruco_positions_optimized.json new file mode 100644 index 0000000..cd90e69 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/aruco_positions_optimized.json @@ -0,0 +1,617 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:19:51Z", + "summary": { + "num_cameras": 4, + "num_markers": 28, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.30596345558003313, + -0.20042292742158763, + 0.024421448798568265 + ], + "position_mm": [ + 305.96345558003316, + -200.42292742158762, + 24.421448798568264 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.3544270406319947, + -0.19913623657252885, + 0.020054383256370198 + ], + "position_mm": [ + 354.4270406319947, + -199.13623657252884, + 20.054383256370198 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.34437968854093387, + -0.2863820475811711, + -0.029621849381219357 + ], + "position_mm": [ + 344.3796885409339, + -286.3820475811711, + -29.621849381219356 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 50, + "position_m": [ + 0.5711319307111947, + 0.2116645915376653, + -0.027235486495778706 + ], + "position_mm": [ + 571.1319307111947, + 211.66459153766527, + -27.235486495778705 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16710315188382385, + -0.17435508518393836, + -0.02680974448834387 + ], + "position_mm": [ + 167.10315188382384, + -174.35508518393837, + -26.80974448834387 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.33775386456315915, + -0.329604551708473, + -0.02395128955719628 + ], + "position_mm": [ + 337.75386456315914, + -329.604551708473, + -23.95128955719628 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28464126224632186, + -0.26062083576044864, + -0.027826357964811962 + ], + "position_mm": [ + 284.64126224632184, + -260.62083576044864, + -27.82635796481196 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.40323250300676455, + -0.16884901958135826, + -0.031016910925073717 + ], + "position_mm": [ + 403.23250300676455, + -168.84901958135825, + -31.016910925073716 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01996350272302824, + -0.18858298870536114, + -0.027460426824184706 + ], + "position_mm": [ + -19.96350272302824, + -188.58298870536115, + -27.460426824184704 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.0056045888663616315, + -0.27735299027402693, + -0.02744286606516658 + ], + "position_mm": [ + 5.604588866361632, + -277.3529902740269, + -27.44286606516658 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.02767213564427827, + 0.19341131907202444, + -0.02641797338184077 + ], + "position_mm": [ + -27.67213564427827, + 193.41131907202444, + -26.41797338184077 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5063510811876436, + -0.31353395946809015, + -0.027654667114030286 + ], + "position_mm": [ + 506.3510811876436, + -313.53395946809013, + -27.654667114030286 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.1865225540352178, + -0.2761246748180034, + -0.027515125075775883 + ], + "position_mm": [ + 186.5225540352178, + -276.1246748180034, + -27.515125075775885 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 96, + "position_m": [ + 0.37159280989349447, + -0.1868397330103533, + -0.026007008398885974 + ], + "position_mm": [ + 371.59280989349446, + -186.8397330103533, + -26.007008398885976 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6506496532964451, + -0.22406764829246095, + -0.027141958695372094 + ], + "position_mm": [ + 650.6496532964451, + -224.06764829246094, + -27.141958695372093 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.1050835859553689, + -0.19024723298112262, + -0.027510167298652265 + ], + "position_mm": [ + 105.0835859553689, + -190.2472329811226, + -27.510167298652263 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31155327392345195, + -0.15463562500757527, + 0.15648554212574448 + ], + "position_mm": [ + 311.55327392345197, + -154.63562500757527, + 156.48554212574447 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7523093215252077, + -0.09083060961061572, + 0.0008346340096899863 + ], + "position_mm": [ + 752.3093215252077, + -90.83060961061572, + 0.8346340096899864 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500123085911849, + -0.010129749722694245, + 0.0003763093550787107 + ], + "position_mm": [ + 650.0123085911848, + -10.129749722694244, + 0.3763093550787107 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021584763664385366, + -0.02063683406811379, + 0.0014210494387082288 + ], + "position_mm": [ + 21.584763664385367, + -20.63683406811379, + 1.4210494387082289 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25343701003761626, + -0.008539069636170276, + -0.00013036221826128914 + ], + "position_mm": [ + 253.43701003761626, + -8.539069636170275, + -0.13036221826128913 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.347970387853639, + -0.010616512306889214, + 0.0005313961557937693 + ], + "position_mm": [ + 347.970387853639, + -10.616512306889213, + 0.5313961557937693 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25036773736495543, + -0.08847882085807249, + 0.00033403906093657556 + ], + "position_mm": [ + 250.36773736495545, + -88.47882085807248, + 0.33403906093657554 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.353720385153576, + -0.09941566413063532, + 0.19962133788702632 + ], + "position_mm": [ + 353.720385153576, + -99.41566413063532, + 199.62133788702633 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 242, + "position_m": [ + 0.23249848724555272, + -0.049232345567788965, + 0.25845337281940006 + ], + "position_mm": [ + 232.49848724555272, + -49.23234556778897, + 258.45337281940004 + ], + "link": "Arm1", + "normal": [ + 0.0, + 0.0, + -1.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.2316598327858873, + -0.036913035551698316, + 0.30638590290038065 + ], + "position_mm": [ + 231.65983278588732, + -36.913035551698314, + 306.38590290038064 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32115924920774624, + -0.04513278978714026, + 0.29774693252994083 + ], + "position_mm": [ + 321.15924920774626, + -45.13278978714026, + 297.7469325299408 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.28407568981431763, + -0.04192898018063829, + 0.3023082143683256 + ], + "position_mm": [ + 284.0756898143176, + -41.928980180638284, + 302.3082143683256 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/render_a_aruco_detection.json b/data/camera_study/Scene10/k4_abcd/render_a_aruco_detection.json new file mode 100644 index 0000000..4b33867 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/render_a_aruco_detection.json @@ -0,0 +1,2330 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:47Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "a", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.npz", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.png", + "image_sha256": "3fda1f21fe402f6ca45be61726fe8bc4ff11185ad27638be512a8f4f598b0fe5", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 26, + "num_rejected_candidates": 35 + }, + "detections": [ + { + "observation_id": "33a55c4c-12a4-4110-affc-766ab2d0c685", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 547.0 + ], + [ + 939.0, + 530.0 + ], + [ + 956.0, + 571.0 + ], + [ + 917.0, + 588.0 + ] + ], + "center_px": [ + 928.0, + 559.0 + ], + "quality": { + "area_px": 1888.0, + "perimeter_px": 173.85755157470703, + "sharpness": { + "laplacian_var": 865.6237972020846 + }, + "contrast": { + "p05": 50.0, + "p95": 187.0, + "dynamic_range": 137.0, + "mean_gray": 87.40342679127725, + "std_gray": 54.46998248000789 + }, + "geometry": { + "distance_to_center_norm": 0.23207330703735352, + "distance_to_border_px": 484.0 + }, + "edge_ratio": 1.0432630581405598, + "edge_lengths_px": [ + 42.54409408569336, + 44.384681701660156, + 42.54409408569336, + 44.384681701660156 + ] + }, + "confidence": 0.9585310168868925 + }, + { + "observation_id": "a8088ef4-4a26-49a9-ae70-b3e93c3ddd67", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 739.0, + 242.0 + ], + [ + 774.0, + 228.0 + ], + [ + 792.0, + 270.0 + ], + [ + 757.0, + 283.0 + ] + ], + "center_px": [ + 765.5, + 255.75 + ], + "quality": { + "area_px": 1695.5, + "perimeter_px": 165.50432586669922, + "sharpness": { + "laplacian_var": 972.5653279753307 + }, + "contrast": { + "p05": 17.0, + "p95": 182.0, + "dynamic_range": 165.0, + "mean_gray": 106.18205574912892, + "std_gray": 70.67095657404792 + }, + "geometry": { + "distance_to_center_norm": 0.3198539614677429, + "distance_to_border_px": 228.0 + }, + "edge_ratio": 1.2238659987255158, + "edge_lengths_px": [ + 37.6961555480957, + 45.694637298583984, + 37.336307525634766, + 44.777225494384766 + ] + }, + "confidence": 0.8170829167910206 + }, + { + "observation_id": "678f36ec-3e09-40d5-a31b-ae0d4eaf37bc", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 651.0, + 261.0 + ], + [ + 689.0, + 249.0 + ], + [ + 712.0, + 285.0 + ], + [ + 674.0, + 297.0 + ] + ], + "center_px": [ + 681.5, + 273.0 + ], + "quality": { + "area_px": 1644.0, + "perimeter_px": 165.13947296142578, + "sharpness": { + "laplacian_var": 747.6962819576332 + }, + "contrast": { + "p05": 13.0, + "p95": 180.0, + "dynamic_range": 167.0, + "mean_gray": 76.63693693693693, + "std_gray": 72.66327799511954 + }, + "geometry": { + "distance_to_center_norm": 0.2997349798679352, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.072028219579559, + "edge_lengths_px": [ + 39.84971618652344, + 42.72002029418945, + 39.84971618652344, + 42.72002029418945 + ] + }, + "confidence": 0.9328112653528767 + }, + { + "observation_id": "9e6594c0-a5b4-404d-a120-763cab7936e3", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 880.0, + 1056.0 + ], + [ + 849.0, + 1028.0 + ], + [ + 883.0, + 1007.0 + ], + [ + 913.0, + 1034.0 + ] + ], + "center_px": [ + 881.25, + 1031.25 + ], + "quality": { + "area_px": 1577.0, + "perimeter_px": 161.7576141357422, + "sharpness": { + "laplacian_var": 779.7184102009837 + }, + "contrast": { + "p05": 14.0, + "p95": 173.0, + "dynamic_range": 159.0, + "mean_gray": 81.89795918367346, + "std_gray": 69.37586032500836 + }, + "geometry": { + "distance_to_center_norm": 0.574486494064331, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.053254572752866, + "edge_lengths_px": [ + 41.773197174072266, + 39.96248245239258, + 40.360870361328125, + 39.66106414794922 + ] + }, + "confidence": 0.45573027871641286 + }, + { + "observation_id": "168fe1c8-d869-48c8-bc35-4e21227d3610", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1154.0, + 1048.0 + ], + [ + 1121.0, + 1020.0 + ], + [ + 1153.0, + 1000.0 + ], + [ + 1185.0, + 1028.0 + ] + ], + "center_px": [ + 1153.25, + 1024.0 + ], + "quality": { + "area_px": 1532.0, + "perimeter_px": 160.4264144897461, + "sharpness": { + "laplacian_var": 789.6627377718634 + }, + "contrast": { + "p05": 9.0, + "p95": 170.0, + "dynamic_range": 161.0, + "mean_gray": 94.95602294455067, + "std_gray": 70.53110441036318 + }, + "geometry": { + "distance_to_center_norm": 0.7217618823051453, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.173112932994049, + "edge_lengths_px": [ + 43.27817153930664, + 37.735923767089844, + 42.52058410644531, + 36.8917350769043 + ] + }, + "confidence": 0.5455570235395628 + }, + { + "observation_id": "9942d7cd-5108-4955-b402-b61e11ba29fa", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 800.0, + 233.0 + ], + [ + 834.0, + 221.0 + ], + [ + 852.0, + 261.0 + ], + [ + 816.0, + 271.0 + ] + ], + "center_px": [ + 825.5, + 246.5 + ], + "quality": { + "area_px": 1552.0, + "perimeter_px": 158.51307678222656, + "sharpness": { + "laplacian_var": 863.8906785031452 + }, + "contrast": { + "p05": 15.0, + "p95": 181.0, + "dynamic_range": 166.0, + "mean_gray": 73.38709677419355, + "std_gray": 69.59383427424181 + }, + "geometry": { + "distance_to_center_norm": 0.34653934836387634, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.2165525994378175, + "edge_lengths_px": [ + 36.055511474609375, + 43.863426208496094, + 37.36308288574219, + 41.231056213378906 + ] + }, + "confidence": 0.8219948734334308 + }, + { + "observation_id": "8a96d0fd-b680-4f15-ad54-314d6935d339", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 656.0, + 1024.0 + ], + [ + 631.0, + 996.0 + ], + [ + 666.0, + 976.0 + ], + [ + 692.0, + 1003.0 + ] + ], + "center_px": [ + 661.25, + 999.75 + ], + "quality": { + "area_px": 1499.0, + "perimeter_px": 157.00859832763672, + "sharpness": { + "laplacian_var": 776.3919478120264 + }, + "contrast": { + "p05": 15.0, + "p95": 173.0, + "dynamic_range": 158.0, + "mean_gray": 113.47134387351778, + "std_gray": 66.47315254195442 + }, + "geometry": { + "distance_to_center_norm": 0.5149872303009033, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1118898476800905, + "edge_lengths_px": [ + 37.53664779663086, + 40.31128692626953, + 37.48332977294922, + 41.67733383178711 + ] + }, + "confidence": 0.8987700853806685 + }, + { + "observation_id": "893f3271-dfc0-4194-9c17-ef7347c1929e", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1156.0, + 984.0 + ], + [ + 1124.0, + 957.0 + ], + [ + 1153.0, + 939.0 + ], + [ + 1186.0, + 964.0 + ] + ], + "center_px": [ + 1154.75, + 961.0 + ], + "quality": { + "area_px": 1384.5, + "perimeter_px": 153.4569320678711, + "sharpness": { + "laplacian_var": 641.3717713382066 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 48.07235421166307, + "std_gray": 59.88033560428563 + }, + "geometry": { + "distance_to_center_norm": 0.6724274754524231, + "distance_to_border_px": 96.0 + }, + "edge_ratio": 1.2266707527132645, + "edge_lengths_px": [ + 41.86884307861328, + 34.13209533691406, + 41.400482177734375, + 36.055511474609375 + ] + }, + "confidence": 0.7524431457735686 + }, + { + "observation_id": "39ed039d-7da9-40f5-a2aa-c1bbf9aa8017", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 995.0, + 954.0 + ], + [ + 967.0, + 928.0 + ], + [ + 1000.0, + 911.0 + ], + [ + 1028.0, + 936.0 + ] + ], + "center_px": [ + 997.5, + 932.25 + ], + "quality": { + "area_px": 1331.5, + "perimeter_px": 150.4579086303711, + "sharpness": { + "laplacian_var": 806.253992719468 + }, + "contrast": { + "p05": 12.0, + "p95": 170.0, + "dynamic_range": 158.0, + "mean_gray": 85.1743119266055, + "std_gray": 67.17068414131862 + }, + "geometry": { + "distance_to_center_norm": 0.5338727831840515, + "distance_to_border_px": 126.0 + }, + "edge_ratio": 1.0293233343863084, + "edge_lengths_px": [ + 38.20994567871094, + 37.121421813964844, + 37.53664779663086, + 37.58989334106445 + ] + }, + "confidence": 0.8623788434718633 + }, + { + "observation_id": "80a15d3d-8683-4f46-8c9f-ae8b23b966b7", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 731.0, + 951.0 + ], + [ + 707.0, + 925.0 + ], + [ + 742.0, + 908.0 + ], + [ + 766.0, + 933.0 + ] + ], + "center_px": [ + 736.5, + 929.25 + ], + "quality": { + "area_px": 1312.5, + "perimeter_px": 148.30654907226562, + "sharpness": { + "laplacian_var": 893.1018320987654 + }, + "contrast": { + "p05": 14.0, + "p95": 172.0, + "dynamic_range": 158.0, + "mean_gray": 77.58333333333333, + "std_gray": 66.11167950269201 + }, + "geometry": { + "distance_to_center_norm": 0.432888388633728, + "distance_to_border_px": 129.0 + }, + "edge_ratio": 1.135675442614228, + "edge_lengths_px": [ + 35.38361358642578, + 38.910152435302734, + 34.65544509887695, + 39.357337951660156 + ] + }, + "confidence": 0.7704666026640716 + }, + { + "observation_id": "32aa3746-e9cd-4845-9ad2-6c046a2790eb", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1109.0, + 937.0 + ], + [ + 1078.0, + 911.0 + ], + [ + 1108.0, + 894.0 + ], + [ + 1138.0, + 918.0 + ] + ], + "center_px": [ + 1108.25, + 915.0 + ], + "quality": { + "area_px": 1286.5, + "perimeter_px": 148.03035736083984, + "sharpness": { + "laplacian_var": 849.6744027531824 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 73.16531791907515, + "std_gray": 67.17306919368005 + }, + "geometry": { + "distance_to_center_norm": 0.5997561812400818, + "distance_to_border_px": 143.0 + }, + "edge_ratio": 1.1733657712426009, + "edge_lengths_px": [ + 40.45985794067383, + 34.48188018798828, + 38.41874694824219, + 34.66987228393555 + ] + }, + "confidence": 0.7309457014059588 + }, + { + "observation_id": "25343e9a-4aaa-4fba-9888-9d86d64753a7", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 843.0 + ], + [ + 378.0, + 825.0 + ], + [ + 398.0, + 848.0 + ], + [ + 360.0, + 866.0 + ] + ], + "center_px": [ + 369.0, + 845.5 + ], + "quality": { + "area_px": 1234.0, + "perimeter_px": 145.0541877746582, + "sharpness": { + "laplacian_var": 1107.6063181860204 + }, + "contrast": { + "p05": 14.0, + "p95": 171.0, + "dynamic_range": 157.0, + "mean_gray": 78.54927884615384, + "std_gray": 65.48572197917484 + }, + "geometry": { + "distance_to_center_norm": 0.5170324444770813, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.3795367307347286, + "edge_lengths_px": [ + 42.04759216308594, + 30.479501724243164, + 42.04759216308594, + 30.479501724243164 + ] + }, + "confidence": 0.5963354569243849 + }, + { + "observation_id": "05a778f5-c638-4dd1-9f4d-f66f34b5be4f", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 841.0 + ], + [ + 1306.0, + 818.0 + ], + [ + 1334.0, + 803.0 + ], + [ + 1364.0, + 826.0 + ] + ], + "center_px": [ + 1335.0, + 822.0 + ], + "quality": { + "area_px": 1094.0, + "perimeter_px": 139.1337547302246, + "sharpness": { + "laplacian_var": 703.797937840674 + }, + "contrast": { + "p05": 9.0, + "p95": 164.0, + "dynamic_range": 155.0, + "mean_gray": 113.10478654592497, + "std_gray": 58.52400257567041 + }, + "geometry": { + "distance_to_center_norm": 0.7517461776733398, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.1900645633213587, + "edge_lengths_px": [ + 37.80211639404297, + 31.764760971069336, + 37.80211639404297, + 31.764760971069336 + ] + }, + "confidence": 0.6128519038478318 + }, + { + "observation_id": "cee49a82-9111-4319-b6b4-479dd2cbef59", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 763.0, + 197.0 + ], + [ + 797.0, + 187.0 + ], + [ + 824.0, + 204.0 + ], + [ + 790.0, + 216.0 + ] + ], + "center_px": [ + 793.5, + 201.0 + ], + "quality": { + "area_px": 909.0, + "perimeter_px": 136.41686248779297, + "sharpness": { + "laplacian_var": 1069.7927531569794 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 91.46811819595645, + "std_gray": 62.54740157586658 + }, + "geometry": { + "distance_to_center_norm": 0.38541823625564575, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.130050277403289, + "edge_lengths_px": [ + 35.44009017944336, + 31.906112670898438, + 36.055511474609375, + 33.0151481628418 + ] + }, + "confidence": 0.5362593259058441 + }, + { + "observation_id": "3c45a908-c0e0-45d7-ab7f-7e2d5cc50db4", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 943.0, + 784.0 + ], + [ + 970.0, + 761.0 + ], + [ + 976.0, + 794.0 + ], + [ + 950.0, + 816.0 + ] + ], + "center_px": [ + 959.75, + 788.75 + ], + "quality": { + "area_px": 1007.5, + "perimeter_px": 135.82476806640625, + "sharpness": { + "laplacian_var": 990.0324116822271 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 69.03362573099415, + "std_gray": 62.62781348056947 + }, + "geometry": { + "distance_to_center_norm": 0.3838669955730438, + "distance_to_border_px": 264.0 + }, + "edge_ratio": 1.0827805673411812, + "edge_lengths_px": [ + 35.46829605102539, + 33.541019439697266, + 34.058773040771484, + 32.75667953491211 + ] + }, + "confidence": 0.6203165137290706 + }, + { + "observation_id": "46580c20-8292-4811-8c25-7d21c68268f7", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 736.0, + 748.0 + ], + [ + 769.0, + 734.0 + ], + [ + 791.0, + 755.0 + ], + [ + 758.0, + 770.0 + ] + ], + "center_px": [ + 763.5, + 751.75 + ], + "quality": { + "area_px": 1028.5, + "perimeter_px": 133.62254524230957, + "sharpness": { + "laplacian_var": 740.3312400344904 + }, + "contrast": { + "p05": 9.0, + "p95": 168.0, + "dynamic_range": 159.0, + "mean_gray": 80.6958981612447, + "std_gray": 67.7872078040809 + }, + "geometry": { + "distance_to_center_norm": 0.24019105732440948, + "distance_to_border_px": 310.0 + }, + "edge_ratio": 1.1918643121358203, + "edge_lengths_px": [ + 35.84689712524414, + 30.4138126373291, + 36.24913787841797, + 31.11269760131836 + ] + }, + "confidence": 0.5752892000247514 + }, + { + "observation_id": "c730f694-9def-43bb-9238-db6d827d6796", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1296.0, + 787.0 + ], + [ + 1266.0, + 766.0 + ], + [ + 1291.0, + 751.0 + ], + [ + 1321.0, + 771.0 + ] + ], + "center_px": [ + 1293.5, + 768.75 + ], + "quality": { + "area_px": 977.5, + "perimeter_px": 131.51158332824707, + "sharpness": { + "laplacian_var": 482.2934957475995 + }, + "contrast": { + "p05": 7.0, + "p95": 157.0, + "dynamic_range": 150.0, + "mean_gray": 38.02962962962963, + "std_gray": 51.115372876535595 + }, + "geometry": { + "distance_to_center_norm": 0.6860414743423462, + "distance_to_border_px": 119.0 + }, + "edge_ratio": 1.2560441794117048, + "edge_lengths_px": [ + 36.619667053222656, + 29.154760360717773, + 36.055511474609375, + 29.681644439697266 + ] + }, + "confidence": 0.5188246379772157 + }, + { + "observation_id": "e0b9cb47-aabb-40ac-8ebe-235e31a6a149", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 664.0, + 678.0 + ], + [ + 696.0, + 665.0 + ], + [ + 717.0, + 685.0 + ], + [ + 684.0, + 698.0 + ] + ], + "center_px": [ + 690.25, + 681.5 + ], + "quality": { + "area_px": 916.5, + "perimeter_px": 127.29240036010742, + "sharpness": { + "laplacian_var": 950.4938833487939 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 81.41071428571429, + "std_gray": 66.26803955921937 + }, + "geometry": { + "distance_to_center_norm": 0.1606595665216446, + "distance_to_border_px": 382.0 + }, + "edge_ratio": 1.25399363306104, + "edge_lengths_px": [ + 34.539833068847656, + 29.0, + 35.46829605102539, + 28.284271240234375 + ] + }, + "confidence": 0.4872433032283655 + }, + { + "observation_id": "1e163308-9cc3-4bca-9880-662615a6cd9c", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 132.0, + 733.0 + ], + [ + 120.0, + 713.0 + ], + [ + 156.0, + 700.0 + ], + [ + 169.0, + 720.0 + ] + ], + "center_px": [ + 144.25, + 716.5 + ], + "quality": { + "area_px": 892.5, + "perimeter_px": 124.6701889038086, + "sharpness": { + "laplacian_var": 1275.08402176 + }, + "contrast": { + "p05": 10.200000000000003, + "p95": 164.0, + "dynamic_range": 153.8, + "mean_gray": 105.7888, + "std_gray": 57.0930485660032 + }, + "geometry": { + "distance_to_center_norm": 0.6691069006919861, + "distance_to_border_px": 120.0 + }, + "edge_ratio": 1.6814297415391983, + "edge_lengths_px": [ + 23.323806762695312, + 38.27531814575195, + 23.853721618652344, + 39.217342376708984 + ] + }, + "confidence": 0.3538655141518615 + }, + { + "observation_id": "d8ca2c81-0fc1-419f-9440-1ef434936766", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 624.0 + ], + [ + 815.0, + 612.0 + ], + [ + 837.0, + 630.0 + ], + [ + 807.0, + 643.0 + ] + ], + "center_px": [ + 811.25, + 627.25 + ], + "quality": { + "area_px": 814.5, + "perimeter_px": 120.82522010803223, + "sharpness": { + "laplacian_var": 1125.3635571955213 + }, + "contrast": { + "p05": 8.0, + "p95": 149.0, + "dynamic_range": 141.0, + "mean_gray": 86.07050092764378, + "std_gray": 55.3312393682571 + }, + "geometry": { + "distance_to_center_norm": 0.14027805626392365, + "distance_to_border_px": 437.0 + }, + "edge_ratio": 1.1545204961681088, + "edge_lengths_px": [ + 31.38471031188965, + 28.42534065246582, + 32.69556427001953, + 28.319604873657227 + ] + }, + "confidence": 0.4703251278796996 + }, + { + "observation_id": "0d8adf06-3d55-4fbf-956a-6854a16e1a28", + "type": "aruco", + "marker_id": 74, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 344.0, + 702.0 + ], + [ + 330.0, + 683.0 + ], + [ + 364.0, + 671.0 + ], + [ + 379.0, + 689.0 + ] + ], + "center_px": [ + 354.25, + 686.25 + ], + "quality": { + "area_px": 819.5, + "perimeter_px": 120.42341613769531, + "sharpness": { + "laplacian_var": 1054.273602937478 + }, + "contrast": { + "p05": 7.0, + "p95": 158.0, + "dynamic_range": 151.0, + "mean_gray": 89.94680851063829, + "std_gray": 62.538561214266565 + }, + "geometry": { + "distance_to_center_norm": 0.4376735985279083, + "distance_to_border_px": 330.0 + }, + "edge_ratio": 1.593474715740479, + "edge_lengths_px": [ + 23.600847244262695, + 36.055511474609375, + 23.430749893188477, + 37.336307525634766 + ] + }, + "confidence": 0.3428566063437381 + }, + { + "observation_id": "c3cf5e57-6b96-4b1b-9dea-a7862507c352", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1374.0, + 670.0 + ], + [ + 1347.0, + 651.0 + ], + [ + 1371.0, + 639.0 + ], + [ + 1398.0, + 658.0 + ] + ], + "center_px": [ + 1372.5, + 654.5 + ], + "quality": { + "area_px": 780.0, + "perimeter_px": 119.69592666625977, + "sharpness": { + "laplacian_var": 1109.98644924121 + }, + "contrast": { + "p05": 10.700000000000003, + "p95": 158.0, + "dynamic_range": 147.3, + "mean_gray": 106.3378640776699, + "std_gray": 52.12042090245902 + }, + "geometry": { + "distance_to_center_norm": 0.7360777258872986, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2304019519874827, + "edge_lengths_px": [ + 33.0151481628418, + 26.832815170288086, + 33.0151481628418, + 26.832815170288086 + ] + }, + "confidence": 0.35500593874581543 + }, + { + "observation_id": "889a0ddc-38a2-4753-a217-45fabe6e22a2", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1196.0, + 524.0 + ], + [ + 1220.0, + 514.0 + ], + [ + 1244.0, + 530.0 + ], + [ + 1219.0, + 540.0 + ] + ], + "center_px": [ + 1219.75, + 527.0 + ], + "quality": { + "area_px": 627.0, + "perimeter_px": 109.78808403015137, + "sharpness": { + "laplacian_var": 963.0183950617284 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 73.82444444444444, + "std_gray": 53.419454032550746 + }, + "geometry": { + "distance_to_center_norm": 0.5554656386375427, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.109400382408729, + "edge_lengths_px": [ + 26.0, + 28.844409942626953, + 26.925823211669922, + 28.017850875854492 + ] + }, + "confidence": 0.3767801116964092 + }, + { + "observation_id": "b981c5e3-3871-42eb-9337-31507b68c496", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1299.0, + 475.0 + ], + [ + 1322.0, + 465.0 + ], + [ + 1346.0, + 479.0 + ], + [ + 1325.0, + 490.0 + ] + ], + "center_px": [ + 1323.0, + 477.25 + ], + "quality": { + "area_px": 581.5, + "perimeter_px": 106.58796119689941, + "sharpness": { + "laplacian_var": 922.4211295765532 + }, + "contrast": { + "p05": 9.0, + "p95": 150.0, + "dynamic_range": 141.0, + "mean_gray": 80.53125, + "std_gray": 49.781966772569284 + }, + "geometry": { + "distance_to_center_norm": 0.673617959022522, + "distance_to_border_px": 94.0 + }, + "edge_ratio": 1.2661764925954944, + "edge_lengths_px": [ + 25.079872131347656, + 27.784887313842773, + 23.706539154052734, + 30.01666259765625 + ] + }, + "confidence": 0.3061711135325228 + }, + { + "observation_id": "05f1daea-75d1-4189-a964-77cfd0b803d7", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1117.0, + 472.0 + ], + [ + 1139.0, + 461.0 + ], + [ + 1163.0, + 476.0 + ], + [ + 1140.0, + 486.0 + ] + ], + "center_px": [ + 1139.75, + 473.75 + ], + "quality": { + "area_px": 573.0, + "perimeter_px": 104.90438652038574, + "sharpness": { + "laplacian_var": 1036.3509780861898 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 74.53349875930522, + "std_gray": 50.45210729924828 + }, + "geometry": { + "distance_to_center_norm": 0.47216224670410156, + "distance_to_border_px": 277.0 + }, + "edge_ratio": 1.1506375729114486, + "edge_lengths_px": [ + 24.59674835205078, + 28.301942825317383, + 25.079872131347656, + 26.925823211669922 + ] + }, + "confidence": 0.33198985414097737 + }, + { + "observation_id": "c92faa72-1c75-452e-bb8a-969fd91b72ff", + "type": "aruco", + "marker_id": 184, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 821.0, + 486.0 + ], + [ + 814.0, + 487.0 + ], + [ + 798.0, + 448.0 + ], + [ + 805.0, + 445.0 + ] + ], + "center_px": [ + 809.5, + 466.5 + ], + "quality": { + "area_px": 312.0, + "perimeter_px": 100.85268115997314, + "sharpness": { + "laplacian_var": 2032.911884279329 + }, + "contrast": { + "p05": 22.0, + "p95": 133.5, + "dynamic_range": 111.5, + "mean_gray": 67.10426540284361, + "std_gray": 39.568029255350964 + }, + "geometry": { + "distance_to_center_norm": 0.12868039309978485, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 6.224146785942024, + "edge_lengths_px": [ + 7.071067810058594, + 42.154476165771484, + 7.6157732009887695, + 44.0113639831543 + ] + }, + "confidence": 0.03341823500528502 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 712.0, + 776.0 + ], + [ + 506.0, + 896.0 + ], + [ + 441.0, + 876.0 + ], + [ + 650.0, + 774.0 + ] + ], + "center_px": [ + 577.25, + 830.5 + ], + "area_px": 9331.0 + }, + { + "image_points_px": [ + [ + 1134.0, + 576.0 + ], + [ + 1028.0, + 633.0 + ], + [ + 1010.0, + 609.0 + ], + [ + 1092.0, + 566.0 + ] + ], + "center_px": [ + 1066.0, + 596.0 + ], + "area_px": 3098.0 + }, + { + "image_points_px": [ + [ + 949.0, + 628.0 + ], + [ + 974.0, + 624.0 + ], + [ + 1004.0, + 689.0 + ], + [ + 973.0, + 699.0 + ] + ], + "center_px": [ + 975.0, + 660.0 + ], + "area_px": 2093.0 + }, + { + "image_points_px": [ + [ + 919.0, + 792.0 + ], + [ + 944.0, + 814.0 + ], + [ + 912.0, + 829.0 + ], + [ + 888.0, + 806.0 + ] + ], + "center_px": [ + 915.75, + 810.25 + ], + "area_px": 1064.0 + }, + { + "image_points_px": [ + [ + 964.0, + 655.0 + ], + [ + 985.0, + 654.0 + ], + [ + 1002.0, + 682.0 + ], + [ + 976.0, + 691.0 + ] + ], + "center_px": [ + 981.75, + 670.5 + ], + "area_px": 824.5 + }, + { + "image_points_px": [ + [ + 1299.0, + 626.0 + ], + [ + 1321.0, + 614.0 + ], + [ + 1348.0, + 632.0 + ], + [ + 1326.0, + 644.0 + ] + ], + "center_px": [ + 1323.5, + 629.0 + ], + "area_px": 720.0 + }, + { + "image_points_px": [ + [ + 92.0, + 604.0 + ], + [ + 58.0, + 618.0 + ], + [ + 46.0, + 601.0 + ], + [ + 78.0, + 589.0 + ] + ], + "center_px": [ + 68.5, + 603.0 + ], + "area_px": 697.0 + }, + { + "image_points_px": [ + [ + 180.0, + 565.0 + ], + [ + 147.0, + 577.0 + ], + [ + 137.0, + 560.0 + ], + [ + 168.0, + 550.0 + ] + ], + "center_px": [ + 158.0, + 563.0 + ], + "area_px": 633.0 + }, + { + "image_points_px": [ + [ + 871.0, + 624.0 + ], + [ + 879.0, + 625.0 + ], + [ + 895.0, + 667.0 + ], + [ + 885.0, + 663.0 + ] + ], + "center_px": [ + 882.5, + 644.75 + ], + "area_px": 327.0 + }, + { + "image_points_px": [ + [ + 1217.0, + 427.0 + ], + [ + 1239.0, + 418.0 + ], + [ + 1261.0, + 431.0 + ], + [ + 1241.0, + 441.0 + ] + ], + "center_px": [ + 1239.5, + 429.25 + ], + "area_px": 502.0 + }, + { + "image_points_px": [ + [ + 385.0, + 633.0 + ], + [ + 402.0, + 652.0 + ], + [ + 378.0, + 660.0 + ], + [ + 362.0, + 643.0 + ] + ], + "center_px": [ + 381.75, + 647.0 + ], + "area_px": 571.5 + }, + { + "image_points_px": [ + [ + 717.0, + 471.0 + ], + [ + 742.0, + 462.0 + ], + [ + 760.0, + 475.0 + ], + [ + 736.0, + 485.0 + ] + ], + "center_px": [ + 738.75, + 473.25 + ], + "area_px": 506.5 + }, + { + "image_points_px": [ + [ + 488.0, + 732.0 + ], + [ + 459.0, + 747.0 + ], + [ + 447.0, + 740.0 + ], + [ + 480.0, + 724.0 + ] + ], + "center_px": [ + 468.5, + 735.75 + ], + "area_px": 387.5 + }, + { + "image_points_px": [ + [ + 751.0, + 438.0 + ], + [ + 776.0, + 430.0 + ], + [ + 792.0, + 443.0 + ], + [ + 768.0, + 452.0 + ] + ], + "center_px": [ + 771.75, + 440.75 + ], + "area_px": 471.0 + }, + { + "image_points_px": [ + [ + 984.0, + 384.0 + ], + [ + 1007.0, + 376.0 + ], + [ + 1024.0, + 388.0 + ], + [ + 1002.0, + 397.0 + ] + ], + "center_px": [ + 1004.25, + 386.25 + ], + "area_px": 430.0 + }, + { + "image_points_px": [ + [ + 1088.0, + 340.0 + ], + [ + 1108.0, + 333.0 + ], + [ + 1127.0, + 343.0 + ], + [ + 1106.0, + 351.0 + ] + ], + "center_px": [ + 1107.25, + 341.75 + ], + "area_px": 354.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 297.0 + ], + [ + 1071.0, + 290.0 + ], + [ + 1089.0, + 300.0 + ], + [ + 1070.0, + 308.0 + ] + ], + "center_px": [ + 1070.25, + 298.75 + ], + "area_px": 343.5 + }, + { + "image_points_px": [ + [ + 1145.0, + 312.0 + ], + [ + 1165.0, + 306.0 + ], + [ + 1182.0, + 316.0 + ], + [ + 1163.0, + 324.0 + ] + ], + "center_px": [ + 1163.75, + 314.5 + ], + "area_px": 337.0 + }, + { + "image_points_px": [ + [ + 1227.0, + 309.0 + ], + [ + 1246.0, + 302.0 + ], + [ + 1264.0, + 312.0 + ], + [ + 1247.0, + 320.0 + ] + ], + "center_px": [ + 1246.0, + 310.75 + ], + "area_px": 331.5 + }, + { + "image_points_px": [ + [ + 935.0, + 285.0 + ], + [ + 955.0, + 278.0 + ], + [ + 972.0, + 287.0 + ], + [ + 952.0, + 295.0 + ] + ], + "center_px": [ + 953.5, + 286.25 + ], + "area_px": 317.5 + }, + { + "image_points_px": [ + [ + 891.0, + 293.0 + ], + [ + 911.0, + 286.0 + ], + [ + 927.0, + 296.0 + ], + [ + 907.0, + 304.0 + ] + ], + "center_px": [ + 909.0, + 294.75 + ], + "area_px": 330.0 + }, + { + "image_points_px": [ + [ + 1018.0, + 751.0 + ], + [ + 1017.0, + 775.0 + ], + [ + 1013.0, + 785.0 + ], + [ + 1005.0, + 755.0 + ] + ], + "center_px": [ + 1013.25, + 766.5 + ], + "area_px": 254.0 + }, + { + "image_points_px": [ + [ + 278.0, + 1016.0 + ], + [ + 276.0, + 1020.0 + ], + [ + 247.0, + 1035.0 + ], + [ + 268.0, + 1019.0 + ] + ], + "center_px": [ + 267.25, + 1022.5 + ], + "area_px": 91.5 + }, + { + "image_points_px": [ + [ + 1273.0, + 316.0 + ], + [ + 1258.0, + 325.0 + ], + [ + 1242.0, + 330.0 + ], + [ + 1245.0, + 326.0 + ] + ], + "center_px": [ + 1254.5, + 324.25 + ], + "area_px": 75.5 + }, + { + "image_points_px": [ + [ + 627.0, + 394.0 + ], + [ + 630.0, + 413.0 + ], + [ + 628.0, + 428.0 + ], + [ + 625.0, + 409.0 + ] + ], + "center_px": [ + 627.5, + 411.0 + ], + "area_px": 83.0 + }, + { + "image_points_px": [ + [ + 356.0, + 962.0 + ], + [ + 333.0, + 980.0 + ], + [ + 330.0, + 980.0 + ], + [ + 348.0, + 965.0 + ] + ], + "center_px": [ + 341.75, + 971.75 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 702.0, + 632.0 + ], + [ + 679.0, + 644.0 + ], + [ + 673.0, + 642.0 + ], + [ + 695.0, + 632.0 + ] + ], + "center_px": [ + 687.25, + 637.5 + ], + "area_px": 94.0 + }, + { + "image_points_px": [ + [ + 1001.0, + 496.0 + ], + [ + 997.0, + 501.0 + ], + [ + 977.0, + 510.0 + ], + [ + 973.0, + 509.0 + ] + ], + "center_px": [ + 987.0, + 504.0 + ], + "area_px": 72.0 + }, + { + "image_points_px": [ + [ + 921.0, + 598.0 + ], + [ + 901.0, + 617.0 + ], + [ + 902.0, + 613.0 + ], + [ + 915.0, + 599.0 + ] + ], + "center_px": [ + 909.75, + 606.75 + ], + "area_px": 66.0 + }, + { + "image_points_px": [ + [ + 68.0, + 1031.0 + ], + [ + 60.0, + 1038.0 + ], + [ + 45.0, + 1046.0 + ], + [ + 50.0, + 1041.0 + ] + ], + "center_px": [ + 55.75, + 1039.0 + ], + "area_px": 40.5 + }, + { + "image_points_px": [ + [ + 842.0, + 934.0 + ], + [ + 834.0, + 942.0 + ], + [ + 823.0, + 947.0 + ], + [ + 820.0, + 946.0 + ] + ], + "center_px": [ + 829.75, + 942.25 + ], + "area_px": 53.0 + }, + { + "image_points_px": [ + [ + 806.0, + 955.0 + ], + [ + 791.0, + 965.0 + ], + [ + 783.0, + 965.0 + ], + [ + 802.0, + 955.0 + ] + ], + "center_px": [ + 795.5, + 960.0 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 342.0, + 1004.0 + ], + [ + 320.0, + 1016.0 + ], + [ + 322.0, + 1012.0 + ], + [ + 330.0, + 1007.0 + ] + ], + "center_px": [ + 328.5, + 1009.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 1340.0, + 651.0 + ], + [ + 1334.0, + 656.0 + ], + [ + 1318.0, + 660.0 + ], + [ + 1329.0, + 652.0 + ] + ], + "center_px": [ + 1330.25, + 654.75 + ], + "area_px": 66.5 + }, + { + "image_points_px": [ + [ + 229.0, + 651.0 + ], + [ + 218.0, + 658.0 + ], + [ + 208.0, + 661.0 + ], + [ + 211.0, + 658.0 + ] + ], + "center_px": [ + 216.5, + 657.0 + ], + "area_px": 35.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/render_a_camera_pose.json b/data/camera_study/Scene10/k4_abcd/render_a_camera_pose.json new file mode 100644 index 0000000..aa4004f --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/render_a_camera_pose.json @@ -0,0 +1,467 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:49Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abcd\\render_a_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "a", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 19, + "used_marker_ids": [ + 95, + 97, + 103, + 54, + 55, + 51, + 47, + 210, + 85, + 215, + 105, + 211, + 75, + 214, + 74, + 102, + 217, + 205, + 206 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.01009749778311845, + 0.0013500052634516154, + 0.0012080581027067798, + 0.001208056584232894 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.418903298149159, + "residual_median_px": 2.9058066287550095, + "residual_max_px": 7.881774161943574, + "sigma2_normalized": 1.7330383439497478e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8081126809120178, + -0.5890257358551025, + -0.0016104801325127482 + ], + [ + -0.3439487814903259, + -0.46965670585632324, + -0.8130939602851868 + ], + [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + ], + "translation_m": [ + -0.2276943325996399, + 0.17315705120563507, + 1.1353343725204468 + ], + "rvec_rad": [ + 2.1050851025918234, + -0.6867341612291594, + 0.3507860528401858 + ] + }, + "camera_in_world": { + "position_m": [ + -0.29933083057403564, + -0.7994182705879211, + 0.8013386726379395 + ], + "position_mm": [ + -299.3308410644531, + -799.4182739257812, + 801.3386840820312 + ], + "orientation_deg": { + "roll": 131.5152587890625, + "pitch": -28.5664005279541, + "yaw": -23.05556297302246 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.5705111713147538e-05, + -3.606186641991224e-06, + 9.93455859227922e-07, + 5.974998436558746e-07, + 4.6929081989455075e-07, + 2.8925877037560832e-06 + ], + [ + -3.606186641991253e-06, + 4.525067031199804e-06, + -1.5535915979518367e-06, + -4.146706877795486e-07, + -8.403171882148325e-07, + 3.704138848703875e-08 + ], + [ + 9.93455859228011e-07, + -1.5535915979518793e-06, + 1.4511663564702391e-05, + 8.397716382398054e-07, + -1.8034796850892003e-06, + -4.925606373863842e-06 + ], + [ + 5.974998436558832e-07, + -4.146706877795502e-07, + 8.397716382397962e-07, + 2.430616306834126e-07, + 1.4873676074531513e-08, + 1.58103612736764e-07 + ], + [ + 4.692908198945444e-07, + -8.403171882148285e-07, + -1.8034796850892121e-06, + 1.4873676074530825e-08, + 6.717933155003761e-07, + 1.166485422903723e-06 + ], + [ + 2.892587703756058e-06, + 3.704138848704778e-08, + -4.925606373863879e-06, + 1.5810361273676463e-07, + 1.166485422903725e-06, + 5.922812492193122e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.22706131431744284, + 0.12188075641483156, + 0.21826355925678265 + ], + "tvec_std_m": [ + 0.0004930128098573226, + 0.0008196299869455584, + 0.0024336829070758423 + ] + }, + "camera_center_std_m": [ + 0.0031789461102063005, + 0.004041324498858458, + 0.00434604702092401 + ], + "camera_center_std_mm": [ + 3.1789461102063004, + 4.041324498858458, + 4.3460470209240105 + ], + "orientation_std_deg": { + "roll": 0.2878030578767992, + "pitch": 0.1683177033483575, + "yaw": 0.1374718863525747 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 881.25, + 1031.25 + ], + "projected_center_px": [ + 877.61865234375, + 1028.5360107421875 + ], + "reprojection_error_px": 4.53347807892285, + "confidence": 0.45573027871641286 + }, + { + "marker_id": 97, + "observed_center_px": [ + 1153.25, + 1024.0 + ], + "projected_center_px": [ + 1152.7294921875, + 1027.8443603515625 + ], + "reprojection_error_px": 3.879437445756702, + "confidence": 0.5455570235395628 + }, + { + "marker_id": 103, + "observed_center_px": [ + 661.25, + 999.75 + ], + "projected_center_px": [ + 660.6806030273438, + 996.0768432617188 + ], + "reprojection_error_px": 3.7170274866418533, + "confidence": 0.8987700853806685 + }, + { + "marker_id": 54, + "observed_center_px": [ + 1154.75, + 961.0 + ], + "projected_center_px": [ + 1162.5029296875, + 962.4193115234375 + ], + "reprojection_error_px": 7.881774161943574, + "confidence": 0.7524431457735686 + }, + { + "marker_id": 55, + "observed_center_px": [ + 997.5, + 932.25 + ], + "projected_center_px": [ + 999.1104736328125, + 934.5891723632812 + ], + "reprojection_error_px": 2.8399564551455856, + "confidence": 0.8623788434718633 + }, + { + "marker_id": 51, + "observed_center_px": [ + 736.5, + 929.25 + ], + "projected_center_px": [ + 735.853271484375, + 928.2763061523438 + ], + "reprojection_error_px": 1.1689043938176247, + "confidence": 0.7704666026640716 + }, + { + "marker_id": 47, + "observed_center_px": [ + 1108.25, + 915.0 + ], + "projected_center_px": [ + 1107.45166015625, + 913.0933837890625 + ], + "reprojection_error_px": 2.0670103729610174, + "confidence": 0.7309457014059588 + }, + { + "marker_id": 210, + "observed_center_px": [ + 369.0, + 845.5 + ], + "projected_center_px": [ + 367.08258056640625, + 847.7832641601562 + ], + "reprojection_error_px": 2.98157550791138, + "confidence": 0.5963354569243849 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1335.0, + 822.0 + ], + "projected_center_px": [ + 1332.3167724609375, + 822.3063354492188 + ], + "reprojection_error_px": 2.7006575928524246, + "confidence": 0.6128519038478318 + }, + { + "marker_id": 215, + "observed_center_px": [ + 763.5, + 751.75 + ], + "projected_center_px": [ + 764.8435668945312, + 753.69775390625 + ], + "reprojection_error_px": 2.366203135699148, + "confidence": 0.5752892000247514 + }, + { + "marker_id": 105, + "observed_center_px": [ + 1293.5, + 768.75 + ], + "projected_center_px": [ + 1294.0775146484375, + 765.9021606445312 + ], + "reprojection_error_px": 2.9058066287550095, + "confidence": 0.5188246379772157 + }, + { + "marker_id": 211, + "observed_center_px": [ + 690.25, + 681.5 + ], + "projected_center_px": [ + 687.66943359375, + 684.4354248046875 + ], + "reprojection_error_px": 3.908457721536807, + "confidence": 0.4872433032283655 + }, + { + "marker_id": 75, + "observed_center_px": [ + 144.25, + 716.5 + ], + "projected_center_px": [ + 147.21554565429688, + 715.9539184570312 + ], + "reprojection_error_px": 3.01540479526219, + "confidence": 0.3538655141518615 + }, + { + "marker_id": 214, + "observed_center_px": [ + 811.25, + 627.25 + ], + "projected_center_px": [ + 813.1135864257812, + 626.0042114257812 + ], + "reprojection_error_px": 2.2416385832712016, + "confidence": 0.4703251278796996 + }, + { + "marker_id": 74, + "observed_center_px": [ + 354.25, + 686.25 + ], + "projected_center_px": [ + 353.1841125488281, + 685.2387084960938 + ], + "reprojection_error_px": 1.4692945805517152, + "confidence": 0.3428566063437381 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1372.5, + 654.5 + ], + "projected_center_px": [ + 1370.1954345703125, + 654.4063110351562 + ], + "reprojection_error_px": 2.306469042030312, + "confidence": 0.35500593874581543 + }, + { + "marker_id": 217, + "observed_center_px": [ + 1219.75, + 527.0 + ], + "projected_center_px": [ + 1223.6787109375, + 525.702392578125 + ], + "reprojection_error_px": 4.137457510565784, + "confidence": 0.3767801116964092 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1323.0, + 477.25 + ], + "projected_center_px": [ + 1319.5634765625, + 478.1280212402344 + ], + "reprojection_error_px": 3.5469162147969504, + "confidence": 0.3061711135325228 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1139.75, + 473.75 + ], + "projected_center_px": [ + 1139.77392578125, + 473.96392822265625 + ], + "reprojection_error_px": 0.2152619972435565, + "confidence": 0.33198985414097737 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/render_b_aruco_detection.json b/data/camera_study/Scene10/k4_abcd/render_b_aruco_detection.json new file mode 100644 index 0000000..0c224a6 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:47Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "74e648de-5232-4887-8522-fe21b5a6d277", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "10b96616-bfbf-41d6-8148-8ee58292aeeb", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "18807ffa-4659-4df4-b39c-87518f89222a", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "6d3c8caf-bc7b-445d-890b-463735cbd73c", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "97f38f74-ff47-475b-8b56-56eccdb19085", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "91cd6eb6-1353-4427-a8fe-465df5d30638", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "e154eabb-f983-4bc1-9bad-29a2f83e2230", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "1f3d7ac7-0963-4068-9c8b-147a5481a902", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "dd81cc09-a00d-4e72-9b38-a5cefb52e35c", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "3056c2c5-8788-4386-8930-db55c19df7e2", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "ef44d660-d160-40a2-9782-4b612c6984b4", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "a313d26e-91e1-486d-863e-b96954e61d1e", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "5cdf429f-a6c9-4d92-b298-e0f262b101f7", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "ceeac768-7d23-4753-a70f-8833318f57e7", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "8abf1543-8f14-484b-9e3e-5027565efbff", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "4c20fb0e-139e-4169-82de-d9e6fcfa4ec3", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "534f91fc-565d-40c4-8bca-95338da9b05d", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "65eaf8cc-2680-41e7-863a-2ecee962c1a5", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "1f63ae04-200d-47e5-adc9-9eb672835c3f", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "c103aff5-3021-4749-add9-b5e8e3ba26b5", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "91c84203-8cca-44fb-8d17-1f4b387c7ff2", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "3851933e-6618-4463-b4b0-216bccecf4be", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "aff459f5-5101-4bfa-93fc-f7d63bf43da3", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "6edf649c-d46a-42b7-b5e6-87bc73d9c20a", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "baddb5ea-e2b7-4c4e-b52b-7f0f859a87ce", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "2208e5a6-9ed3-45f5-9485-5c1005ef6e14", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "dc4e41c9-9449-4b96-89cc-ad72e515e5de", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "46231cf6-8f7f-48ed-b540-2252a9fa0e3d", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "7c5aadaf-7fac-4db9-9525-2cd10b4300d0", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "26197331-c498-448f-9c4d-3714aac69ba0", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "f74d85b5-b78a-451d-aace-1651f6137b45", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "91a7542a-7c22-4bcd-9b98-cbfb8d28afce", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "8ae74997-be90-4d44-882c-909fabbae237", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "5a8539e7-dd31-41d6-9bb9-b5af5b473852", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "47803232-50c3-4da5-ba96-095346c3810b", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "49bb8793-e67b-4179-92af-c61703baebbe", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/render_b_camera_pose.json b/data/camera_study/Scene10/k4_abcd/render_b_camera_pose.json new file mode 100644 index 0000000..a91694f --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:49Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abcd\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/render_c_aruco_detection.json b/data/camera_study/Scene10/k4_abcd/render_c_aruco_detection.json new file mode 100644 index 0000000..0500898 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/render_c_aruco_detection.json @@ -0,0 +1,1590 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:48Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "c", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.npz", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.png", + "image_sha256": "ef5a04a35de56c777fd09b581d604f04ac76571a3cacba21fe8388dea1f4b077", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 16, + "num_rejected_candidates": 27 + }, + "detections": [ + { + "observation_id": "5b5beaf5-1562-4dde-995d-e0b2a982f7fe", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 906.0 + ], + [ + 962.0, + 900.0 + ], + [ + 968.0, + 961.0 + ], + [ + 906.0, + 967.0 + ] + ], + "center_px": [ + 934.0, + 933.5 + ], + "quality": { + "area_px": 3818.0, + "perimeter_px": 247.16803741455078, + "sharpness": { + "laplacian_var": 454.5613926289 + }, + "contrast": { + "p05": 15.0, + "p95": 169.0, + "dynamic_range": 154.0, + "mean_gray": 63.889708737864076, + "std_gray": 64.10002098444608 + }, + "geometry": { + "distance_to_center_norm": 0.4976962208747864, + "distance_to_border_px": 113.0 + }, + "edge_ratio": 1.0162376014068253, + "edge_lengths_px": [ + 62.28964614868164, + 61.29437255859375, + 62.28964614868164, + 61.29437255859375 + ] + }, + "confidence": 0.9840218454972077 + }, + { + "observation_id": "921a018d-64aa-45db-8ea7-7cb72495c4e9", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 930.0, + 548.0 + ], + [ + 989.0, + 541.0 + ], + [ + 989.0, + 599.0 + ], + [ + 930.0, + 606.0 + ] + ], + "center_px": [ + 959.5, + 573.5 + ], + "quality": { + "area_px": 3422.0, + "perimeter_px": 234.82760620117188, + "sharpness": { + "laplacian_var": 615.7225970995563 + }, + "contrast": { + "p05": 62.0, + "p95": 187.0, + "dynamic_range": 125.0, + "mean_gray": 96.38732088580113, + "std_gray": 49.78957244242085 + }, + "geometry": { + "distance_to_center_norm": 0.2687017321586609, + "distance_to_border_px": 451.0 + }, + "edge_ratio": 1.0243759155273438, + "edge_lengths_px": [ + 59.41380310058594, + 58.0, + 59.41380310058594, + 58.0 + ] + }, + "confidence": 0.976204130575644 + }, + { + "observation_id": "dedf7ee7-3658-4c57-bf7b-382ca876d06c", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 876.0, + 137.0 + ], + [ + 933.0, + 136.0 + ], + [ + 934.0, + 184.0 + ], + [ + 876.0, + 186.0 + ] + ], + "center_px": [ + 904.75, + 160.75 + ], + "quality": { + "area_px": 2789.5, + "perimeter_px": 212.05365753173828, + "sharpness": { + "laplacian_var": 1207.1695390581717 + }, + "contrast": { + "p05": 35.0, + "p95": 183.0, + "dynamic_range": 148.0, + "mean_gray": 111.8242105263158, + "std_gray": 63.973025920534376 + }, + "geometry": { + "distance_to_center_norm": 0.46872973442077637, + "distance_to_border_px": 136.0 + }, + "edge_ratio": 1.2087892695501747, + "edge_lengths_px": [ + 57.00876998901367, + 48.010414123535156, + 58.03447341918945, + 49.0 + ] + }, + "confidence": 0.8272740544529559 + }, + { + "observation_id": "aa6e7f98-3e78-49db-ac4c-d3006519c29b", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 967.0, + 151.0 + ], + [ + 1024.0, + 150.0 + ], + [ + 1025.0, + 197.0 + ], + [ + 966.0, + 195.0 + ] + ], + "center_px": [ + 995.5, + 173.25 + ], + "quality": { + "area_px": 2639.0, + "perimeter_px": 207.06465911865234, + "sharpness": { + "laplacian_var": 866.93707361974 + }, + "contrast": { + "p05": 32.0, + "p95": 181.0, + "dynamic_range": 149.0, + "mean_gray": 84.58143413007227, + "std_gray": 62.405948444667175 + }, + "geometry": { + "distance_to_center_norm": 0.5096668004989624, + "distance_to_border_px": 150.0 + }, + "edge_ratio": 1.3413328837775513, + "edge_lengths_px": [ + 57.00876998901367, + 47.01063537597656, + 59.03388977050781, + 44.0113639831543 + ] + }, + "confidence": 0.745527088834006 + }, + { + "observation_id": "c5a8934e-9e5b-4515-a60a-a06b7a779a9a", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 806.0, + 242.0 + ], + [ + 809.0, + 286.0 + ], + [ + 756.0, + 287.0 + ], + [ + 750.0, + 243.0 + ] + ], + "center_px": [ + 780.25, + 264.5 + ], + "quality": { + "area_px": 2402.5, + "perimeter_px": 197.5277214050293, + "sharpness": { + "laplacian_var": 621.9365906774973 + }, + "contrast": { + "p05": 17.0, + "p95": 154.0, + "dynamic_range": 137.0, + "mean_gray": 67.55327102803739, + "std_gray": 57.80557538313361 + }, + "geometry": { + "distance_to_center_norm": 0.3133457899093628, + "distance_to_border_px": 242.0 + }, + "edge_ratio": 1.2699816583435075, + "edge_lengths_px": [ + 44.10215377807617, + 53.00943374633789, + 44.40720748901367, + 56.00892639160156 + ] + }, + "confidence": 0.7874129468171561 + }, + { + "observation_id": "527e31b7-ac6f-4c30-98b0-9740dc23481b", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 907.0 + ], + [ + 1083.0, + 943.0 + ], + [ + 1048.0, + 989.0 + ], + [ + 1034.0, + 955.0 + ] + ], + "center_px": [ + 1059.0, + 948.5 + ], + "quality": { + "area_px": 1871.0, + "perimeter_px": 193.12355041503906, + "sharpness": { + "laplacian_var": 160.55753056192668 + }, + "contrast": { + "p05": 14.0, + "p95": 100.0, + "dynamic_range": 86.0, + "mean_gray": 57.872306464485234, + "std_gray": 34.11093550486432 + }, + "geometry": { + "distance_to_center_norm": 0.5898244976997375, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.648246307313746, + "edge_lengths_px": [ + 37.947330474853516, + 57.80138397216797, + 36.769554138183594, + 60.605281829833984 + ] + }, + "confidence": 0.606705439328279 + }, + { + "observation_id": "54b7fe79-2b5d-4b2b-b677-8de69532c987", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 244.0, + 1048.0 + ], + [ + 264.0, + 1017.0 + ], + [ + 321.0, + 1020.0 + ], + [ + 304.0, + 1051.0 + ] + ], + "center_px": [ + 283.25, + 1034.0 + ], + "quality": { + "area_px": 1869.0, + "perimeter_px": 189.40092086791992, + "sharpness": { + "laplacian_var": 1265.0345875985527 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 76.71025841816758, + "std_gray": 66.37082174674407 + }, + "geometry": { + "distance_to_center_norm": 0.7326483130455017, + "distance_to_border_px": 29.0 + }, + "edge_ratio": 1.6991763224534673, + "edge_lengths_px": [ + 36.8917350769043, + 57.07889175415039, + 35.35533905029297, + 60.074954986572266 + ] + }, + "confidence": 0.34134185624863755 + }, + { + "observation_id": "563b5b98-7383-4b00-bc08-2316d2fe211e", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1145.0, + 1043.0 + ], + [ + 1138.0, + 1012.0 + ], + [ + 1196.0, + 1014.0 + ], + [ + 1207.0, + 1045.0 + ] + ], + "center_px": [ + 1171.5, + 1028.5 + ], + "quality": { + "area_px": 1842.0, + "perimeter_px": 184.74098777770996, + "sharpness": { + "laplacian_var": 687.4367780505567 + }, + "contrast": { + "p05": 12.0, + "p95": 150.0, + "dynamic_range": 138.0, + "mean_gray": 38.430939226519335, + "std_gray": 45.8298447545998 + }, + "geometry": { + "distance_to_center_norm": 0.7391056418418884, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.9518967949661667, + "edge_lengths_px": [ + 31.78049659729004, + 58.03447341918945, + 32.893768310546875, + 62.032249450683594 + ] + }, + "confidence": 0.3586255184214969 + }, + { + "observation_id": "e2b4d8e9-e43c-4896-9d62-7f6d8d237597", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1069.0, + 1053.0 + ], + [ + 1066.0, + 1021.0 + ], + [ + 1125.0, + 1025.0 + ], + [ + 1130.0, + 1056.0 + ] + ], + "center_px": [ + 1097.5, + 1038.75 + ], + "quality": { + "area_px": 1876.0, + "perimeter_px": 183.7501163482666, + "sharpness": { + "laplacian_var": 663.3293461676229 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 73.64136328427576, + "std_gray": 59.64429126415427 + }, + "geometry": { + "distance_to_center_norm": 0.6950067281723022, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.9449837049520267, + "edge_lengths_px": [ + 32.140316009521484, + 59.13543701171875, + 31.400636672973633, + 61.073726654052734 + ] + }, + "confidence": 0.24678869996591526 + }, + { + "observation_id": "ef1ca0a5-e9aa-4bab-8a9d-5298d6069c96", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 110.0, + 1003.0 + ], + [ + 134.0, + 974.0 + ], + [ + 187.0, + 977.0 + ], + [ + 166.0, + 1006.0 + ] + ], + "center_px": [ + 149.25, + 990.0 + ], + "quality": { + "area_px": 1648.0, + "perimeter_px": 182.61322402954102, + "sharpness": { + "laplacian_var": 1879.918969718065 + }, + "contrast": { + "p05": 12.0, + "p95": 173.0, + "dynamic_range": 161.0, + "mean_gray": 75.38733031674208, + "std_gray": 68.98136821451206 + }, + "geometry": { + "distance_to_center_norm": 0.8075687885284424, + "distance_to_border_px": 74.0 + }, + "edge_ratio": 1.5662688751728226, + "edge_lengths_px": [ + 37.64305877685547, + 53.0848388671875, + 35.80502700805664, + 56.080299377441406 + ] + }, + "confidence": 0.6384599833726886 + }, + { + "observation_id": "a27aba6f-1015-4c84-a3ea-d93c5b7e3761", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 403.0, + 1023.0 + ], + [ + 418.0, + 993.0 + ], + [ + 474.0, + 996.0 + ], + [ + 462.0, + 1025.0 + ] + ], + "center_px": [ + 439.25, + 1009.25 + ], + "quality": { + "area_px": 1730.0, + "perimeter_px": 180.03991889953613, + "sharpness": { + "laplacian_var": 950.8899639839916 + }, + "contrast": { + "p05": 20.0, + "p95": 172.0, + "dynamic_range": 152.0, + "mean_gray": 116.20102214650767, + "std_gray": 61.636543611115094 + }, + "geometry": { + "distance_to_center_norm": 0.6075818538665771, + "distance_to_border_px": 55.0 + }, + "edge_ratio": 1.8809760926212427, + "edge_lengths_px": [ + 33.541019439697266, + 56.080299377441406, + 31.38471031188965, + 59.03388977050781 + ] + }, + "confidence": 0.5316388676723932 + }, + { + "observation_id": "53dda655-e172-4d32-a671-57c219a6e444", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 564.0, + 1008.0 + ], + [ + 576.0, + 980.0 + ], + [ + 632.0, + 984.0 + ], + [ + 622.0, + 1013.0 + ] + ], + "center_px": [ + 598.5, + 996.25 + ], + "quality": { + "area_px": 1674.0, + "perimeter_px": 175.49660873413086, + "sharpness": { + "laplacian_var": 1393.7942302804506 + }, + "contrast": { + "p05": 28.0, + "p95": 171.0, + "dynamic_range": 143.0, + "mean_gray": 84.15052816901408, + "std_gray": 59.917896140385736 + }, + "geometry": { + "distance_to_center_norm": 0.5246118903160095, + "distance_to_border_px": 67.0 + }, + "edge_ratio": 1.9110048603024625, + "edge_lengths_px": [ + 30.463092803955078, + 56.14267349243164, + 30.675724029541016, + 58.215118408203125 + ] + }, + "confidence": 0.5232849066860699 + }, + { + "observation_id": "6808ffc1-6e06-4fc3-9051-2f4b1f58b0c5", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 760.0, + 132.0 + ], + [ + 813.0, + 133.0 + ], + [ + 809.0, + 166.0 + ], + [ + 754.0, + 165.0 + ] + ], + "center_px": [ + 784.0, + 149.0 + ], + "quality": { + "area_px": 1787.0, + "perimeter_px": 174.80108261108398, + "sharpness": { + "laplacian_var": 1005.8917346464419 + }, + "contrast": { + "p05": 15.0, + "p95": 180.0, + "dynamic_range": 165.0, + "mean_gray": 83.3435684647303, + "std_gray": 70.8540535076814 + }, + "geometry": { + "distance_to_center_norm": 0.4402258098125458, + "distance_to_border_px": 132.0 + }, + "edge_ratio": 1.6548298326729072, + "edge_lengths_px": [ + 53.00943374633789, + 33.241539001464844, + 55.009090423583984, + 33.541019439697266 + ] + }, + "confidence": 0.6042917406104434 + }, + { + "observation_id": "eb075cc7-e089-4f58-a117-43bce6d23db4", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 760.0 + ], + [ + 387.0, + 761.0 + ], + [ + 376.0, + 780.0 + ], + [ + 327.0, + 778.0 + ] + ], + "center_px": [ + 357.5, + 769.75 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 140.20953559875488, + "sharpness": { + "laplacian_var": 1714.673355751594 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 84.31152647975078, + "std_gray": 58.656873492799065 + }, + "geometry": { + "distance_to_center_norm": 0.47686126828193665, + "distance_to_border_px": 300.0 + }, + "edge_ratio": 2.233747159110654, + "edge_lengths_px": [ + 47.01063537597656, + 21.954498291015625, + 49.04079818725586, + 22.203603744506836 + ] + }, + "confidence": 0.27039765782644665 + }, + { + "observation_id": "ebb69616-2b50-4d92-805c-6432dc28ef15", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 808.0, + 771.0 + ], + [ + 855.0, + 774.0 + ], + [ + 851.0, + 794.0 + ], + [ + 801.0, + 790.0 + ] + ], + "center_px": [ + 828.75, + 782.25 + ], + "quality": { + "area_px": 965.0, + "perimeter_px": 137.8999252319336, + "sharpness": { + "laplacian_var": 980.8435808712625 + }, + "contrast": { + "p05": 19.0, + "p95": 166.0, + "dynamic_range": 147.0, + "mean_gray": 88.28657616892912, + "std_gray": 59.05852033640571 + }, + "geometry": { + "distance_to_center_norm": 0.2950447201728821, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 2.4772131710716905, + "edge_lengths_px": [ + 47.095645904541016, + 20.39607810974121, + 50.15974426269531, + 20.248456954956055 + ] + }, + "confidence": 0.25970043306972035 + }, + { + "observation_id": "ff8e3e0a-5a44-4649-ad53-f368e2df9b24", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1385.0, + 700.0 + ], + [ + 1377.0, + 686.0 + ], + [ + 1418.0, + 688.0 + ], + [ + 1428.0, + 701.0 + ] + ], + "center_px": [ + 1402.0, + 693.75 + ], + "quality": { + "area_px": 553.5, + "perimeter_px": 116.58611488342285, + "sharpness": { + "laplacian_var": 1051.381376540531 + }, + "contrast": { + "p05": 12.0, + "p95": 126.0, + "dynamic_range": 114.0, + "mean_gray": 64.25196850393701, + "std_gray": 39.063170154625084 + }, + "geometry": { + "distance_to_center_norm": 0.7767954468727112, + "distance_to_border_px": 12.0 + }, + "edge_ratio": 2.6674678757353125, + "edge_lengths_px": [ + 16.124515533447266, + 41.04875183105469, + 16.401220321655273, + 43.011627197265625 + ] + }, + "confidence": 0.03320002493960217 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 975.0, + 684.0 + ], + [ + 987.0, + 688.0 + ], + [ + 989.0, + 763.0 + ], + [ + 968.0, + 765.0 + ] + ], + "center_px": [ + 979.75, + 725.0 + ], + "area_px": 1289.5 + }, + { + "image_points_px": [ + [ + 790.0, + 489.0 + ], + [ + 804.0, + 493.0 + ], + [ + 807.0, + 565.0 + ], + [ + 793.0, + 568.0 + ] + ], + "center_px": [ + 798.5, + 528.75 + ], + "area_px": 1055.5 + }, + { + "image_points_px": [ + [ + 536.0, + 599.0 + ], + [ + 540.0, + 677.0 + ], + [ + 531.0, + 664.0 + ], + [ + 529.0, + 604.0 + ] + ], + "center_px": [ + 534.0, + 636.0 + ], + "area_px": 540.0 + }, + { + "image_points_px": [ + [ + 782.0, + 864.0 + ], + [ + 789.0, + 841.0 + ], + [ + 842.0, + 845.0 + ], + [ + 837.0, + 868.0 + ] + ], + "center_px": [ + 812.5, + 854.5 + ], + "area_px": 1266.0 + }, + { + "image_points_px": [ + [ + 1232.0, + 678.0 + ], + [ + 1273.0, + 679.0 + ], + [ + 1279.0, + 694.0 + ], + [ + 1237.0, + 692.0 + ] + ], + "center_px": [ + 1255.25, + 685.75 + ], + "area_px": 593.5 + }, + { + "image_points_px": [ + [ + 1154.0, + 689.0 + ], + [ + 1194.0, + 690.0 + ], + [ + 1201.0, + 704.0 + ], + [ + 1160.0, + 703.0 + ] + ], + "center_px": [ + 1177.25, + 696.5 + ], + "area_px": 560.5 + }, + { + "image_points_px": [ + [ + 425.0, + 674.0 + ], + [ + 435.0, + 661.0 + ], + [ + 473.0, + 663.0 + ], + [ + 462.0, + 676.0 + ] + ], + "center_px": [ + 448.75, + 668.5 + ], + "area_px": 508.5 + }, + { + "image_points_px": [ + [ + 1281.0, + 650.0 + ], + [ + 1319.0, + 651.0 + ], + [ + 1327.0, + 663.0 + ], + [ + 1288.0, + 663.0 + ] + ], + "center_px": [ + 1303.75, + 656.75 + ], + "area_px": 477.5 + }, + { + "image_points_px": [ + [ + 1068.0, + 669.0 + ], + [ + 1077.0, + 679.0 + ], + [ + 1075.0, + 717.0 + ], + [ + 1068.0, + 710.0 + ] + ], + "center_px": [ + 1072.0, + 693.75 + ], + "area_px": 324.5 + }, + { + "image_points_px": [ + [ + 784.0, + 627.0 + ], + [ + 788.0, + 615.0 + ], + [ + 824.0, + 619.0 + ], + [ + 820.0, + 629.0 + ] + ], + "center_px": [ + 804.0, + 622.5 + ], + "area_px": 408.0 + }, + { + "image_points_px": [ + [ + 426.0, + 594.0 + ], + [ + 434.0, + 583.0 + ], + [ + 467.0, + 585.0 + ], + [ + 462.0, + 595.0 + ] + ], + "center_px": [ + 447.25, + 589.25 + ], + "area_px": 372.0 + }, + { + "image_points_px": [ + [ + 978.0, + 308.0 + ], + [ + 1021.0, + 310.0 + ], + [ + 1019.0, + 316.0 + ], + [ + 991.0, + 314.0 + ] + ], + "center_px": [ + 1002.25, + 312.0 + ], + "area_px": 202.0 + }, + { + "image_points_px": [ + [ + 936.0, + 582.0 + ], + [ + 951.0, + 580.0 + ], + [ + 965.0, + 595.0 + ], + [ + 937.0, + 600.0 + ] + ], + "center_px": [ + 947.25, + 589.25 + ], + "area_px": 381.0 + }, + { + "image_points_px": [ + [ + 120.0, + 998.0 + ], + [ + 124.0, + 993.0 + ], + [ + 158.0, + 996.0 + ], + [ + 153.0, + 1001.0 + ] + ], + "center_px": [ + 138.75, + 997.0 + ], + "area_px": 181.0 + }, + { + "image_points_px": [ + [ + 734.0, + 639.0 + ], + [ + 730.0, + 666.0 + ], + [ + 725.0, + 676.0 + ], + [ + 729.0, + 642.0 + ] + ], + "center_px": [ + 729.5, + 655.75 + ], + "area_px": 126.5 + }, + { + "image_points_px": [ + [ + 1360.0, + 644.0 + ], + [ + 1390.0, + 645.0 + ], + [ + 1394.0, + 648.0 + ], + [ + 1366.0, + 647.0 + ] + ], + "center_px": [ + 1377.5, + 646.0 + ], + "area_px": 82.0 + }, + { + "image_points_px": [ + [ + 339.0, + 768.0 + ], + [ + 354.0, + 762.0 + ], + [ + 372.0, + 767.0 + ], + [ + 366.0, + 771.0 + ] + ], + "center_px": [ + 357.75, + 767.0 + ], + "area_px": 154.5 + }, + { + "image_points_px": [ + [ + 732.0, + 273.0 + ], + [ + 735.0, + 284.0 + ], + [ + 735.0, + 305.0 + ], + [ + 732.0, + 301.0 + ] + ], + "center_px": [ + 733.5, + 290.75 + ], + "area_px": 73.5 + }, + { + "image_points_px": [ + [ + 990.0, + 337.0 + ], + [ + 996.0, + 351.0 + ], + [ + 997.0, + 366.0 + ], + [ + 991.0, + 364.0 + ] + ], + "center_px": [ + 993.5, + 354.5 + ], + "area_px": 118.0 + }, + { + "image_points_px": [ + [ + 774.0, + 249.0 + ], + [ + 799.0, + 247.0 + ], + [ + 800.0, + 251.0 + ], + [ + 776.0, + 252.0 + ] + ], + "center_px": [ + 787.25, + 249.75 + ], + "area_px": 88.0 + }, + { + "image_points_px": [ + [ + 900.0, + 973.0 + ], + [ + 923.0, + 973.0 + ], + [ + 926.0, + 975.0 + ], + [ + 903.0, + 975.0 + ] + ], + "center_px": [ + 913.0, + 974.0 + ], + "area_px": 46.0 + }, + { + "image_points_px": [ + [ + 957.0, + 967.0 + ], + [ + 968.0, + 965.0 + ], + [ + 970.0, + 984.0 + ], + [ + 957.0, + 971.0 + ] + ], + "center_px": [ + 963.0, + 971.75 + ], + "area_px": 132.5 + }, + { + "image_points_px": [ + [ + 1374.0, + 718.0 + ], + [ + 1394.0, + 718.0 + ], + [ + 1398.0, + 721.0 + ], + [ + 1378.0, + 721.0 + ] + ], + "center_px": [ + 1386.0, + 719.5 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 999.0, + 762.0 + ], + [ + 1017.0, + 761.0 + ], + [ + 1023.0, + 763.0 + ], + [ + 1001.0, + 764.0 + ] + ], + "center_px": [ + 1010.0, + 762.5 + ], + "area_px": 44.0 + }, + { + "image_points_px": [ + [ + 565.0, + 1022.0 + ], + [ + 584.0, + 1021.0 + ], + [ + 588.0, + 1023.0 + ], + [ + 573.0, + 1024.0 + ] + ], + "center_px": [ + 577.5, + 1022.5 + ], + "area_px": 40.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 1023.0 + ], + [ + 1182.0, + 1022.0 + ], + [ + 1185.0, + 1028.0 + ], + [ + 1169.0, + 1029.0 + ] + ], + "center_px": [ + 1175.5, + 1025.5 + ], + "area_px": 99.0 + }, + { + "image_points_px": [ + [ + 222.0, + 1034.0 + ], + [ + 241.0, + 1035.0 + ], + [ + 244.0, + 1037.0 + ], + [ + 231.0, + 1037.0 + ] + ], + "center_px": [ + 234.5, + 1035.75 + ], + "area_px": 37.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/render_c_camera_pose.json b/data/camera_study/Scene10/k4_abcd/render_c_camera_pose.json new file mode 100644 index 0000000..64ef54c --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/render_c_camera_pose.json @@ -0,0 +1,327 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:49Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abcd\\render_c_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "c", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 9, + "used_marker_ids": [ + 58, + 62, + 96, + 64, + 103, + 51, + 210, + 211, + 50 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.00850343514866048, + 0.001919637477748798, + 0.0018871327733089188, + 0.0018871325208839012 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.3388483305404, + "residual_median_px": 5.837108638574855, + "residual_max_px": 7.851369272055891, + "sigma2_normalized": 5.341903727059073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9935113787651062, + 0.11363770067691803, + -0.004644200671464205 + ], + [ + 0.029086070135235786, + -0.2933460772037506, + -0.9555637240409851 + ], + [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + ], + "translation_m": [ + -0.19824764132499695, + 0.1074121966958046, + 1.0073933601379395 + ], + "rvec_rad": [ + 1.86796171410195, + 0.10327005514572164, + -0.08291676493169096 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30460041761398315, + -0.9022090435028076, + 0.3986456096172333 + ], + "position_mm": [ + 304.60040283203125, + -902.2090454101562, + 398.6455993652344 + ], + "orientation_deg": { + "roll": 107.25025177001953, + "pitch": 6.31245756149292, + "yaw": 1.676913857460022 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 6.283611814350516e-05, + 9.967111903139419e-06, + 1.624804290129494e-05, + -1.577288611905233e-07, + -9.565179969225538e-06, + 1.214388304696983e-06 + ], + [ + 9.967111903139312e-06, + 2.0431750224389534e-05, + -7.770857724352742e-06, + 2.1849187906882535e-06, + -2.4827730156902525e-06, + 5.834590888095247e-06 + ], + [ + 1.6248042901295073e-05, + -7.770857724352725e-06, + 6.21251942958819e-05, + -3.1440970658187606e-06, + -8.329233497858997e-06, + -1.5661804579884994e-05 + ], + [ + -1.5772886119053934e-07, + 2.184918790688258e-06, + -3.14409706581878e-06, + 7.844339725202242e-07, + 9.395641917069299e-08, + 8.922273151494254e-07 + ], + [ + -9.56517996922555e-06, + -2.482773015690273e-06, + -8.329233497858978e-06, + 9.395641917068812e-08, + 3.1785216658280216e-06, + 3.2374032099410526e-06 + ], + [ + 1.2143883046968984e-06, + 5.834590888095236e-06, + -1.566180457988501e-05, + 8.922273151494167e-07, + 3.237403209941067e-06, + 1.5241091941001921e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.45417926818777943, + 0.2589854810186854, + 0.45160268193428 + ], + "tvec_std_m": [ + 0.0008856827719450255, + 0.0017828408975082497, + 0.0039039841112640202 + ] + }, + "camera_center_std_m": [ + 0.006432764403295309, + 0.003956846704431741, + 0.006949550969225763 + ], + "camera_center_std_mm": [ + 6.432764403295309, + 3.956846704431741, + 6.949550969225763 + ], + "orientation_std_deg": { + "roll": 0.42334339423542505, + "pitch": 0.36500393244331925, + "yaw": 0.2715300326454473 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 58, + "observed_center_px": [ + 283.25, + 1034.0 + ], + "projected_center_px": [ + 289.1312255859375, + 1036.682861328125 + ], + "reprojection_error_px": 6.4642524160675014, + "confidence": 0.34134185624863755 + }, + { + "marker_id": 62, + "observed_center_px": [ + 1171.5, + 1028.5 + ], + "projected_center_px": [ + 1177.343505859375, + 1029.8663330078125 + ], + "reprojection_error_px": 6.0011187804265225, + "confidence": 0.3586255184214969 + }, + { + "marker_id": 96, + "observed_center_px": [ + 1097.5, + 1038.75 + ], + "projected_center_px": [ + 1091.03857421875, + 1039.8277587890625 + ], + "reprojection_error_px": 6.550693637623701, + "confidence": 0.24678869996591526 + }, + { + "marker_id": 64, + "observed_center_px": [ + 149.25, + 990.0 + ], + "projected_center_px": [ + 146.69277954101562, + 989.6632080078125 + ], + "reprojection_error_px": 2.579303262869623, + "confidence": 0.6384599833726886 + }, + { + "marker_id": 103, + "observed_center_px": [ + 439.25, + 1009.25 + ], + "projected_center_px": [ + 443.3174743652344, + 1005.0634155273438 + ], + "reprojection_error_px": 5.837108638574855, + "confidence": 0.5316388676723932 + }, + { + "marker_id": 51, + "observed_center_px": [ + 598.5, + 996.25 + ], + "projected_center_px": [ + 598.08349609375, + 993.7927856445312 + ], + "reprojection_error_px": 2.492263608176955, + "confidence": 0.5232849066860699 + }, + { + "marker_id": 210, + "observed_center_px": [ + 357.5, + 769.75 + ], + "projected_center_px": [ + 354.4071044921875, + 771.2721557617188 + ], + "reprojection_error_px": 3.4471670666186647, + "confidence": 0.27039765782644665 + }, + { + "marker_id": 211, + "observed_center_px": [ + 828.75, + 782.25 + ], + "projected_center_px": [ + 820.9069213867188, + 782.6107177734375 + ], + "reprojection_error_px": 7.851369272055891, + "confidence": 0.25970043306972035 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1402.0, + 693.75 + ], + "projected_center_px": [ + 1405.9166259765625, + 693.873291015625 + ], + "reprojection_error_px": 3.918566027875248, + "confidence": 0.03320002493960217 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/render_d_aruco_detection.json b/data/camera_study/Scene10/k4_abcd/render_d_aruco_detection.json new file mode 100644 index 0000000..4358a2b --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/render_d_aruco_detection.json @@ -0,0 +1,1311 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:48Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "d", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.npz", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.png", + "image_sha256": "62e03d1a72df6ace64f3edf39f814b0e48c63c4b06cd21705bd69cd08afa442a", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 15, + "num_rejected_candidates": 18 + }, + "detections": [ + { + "observation_id": "066667ad-9041-45e8-bbd4-a7a6967d1a70", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 742.0, + 906.0 + ], + [ + 797.0, + 913.0 + ], + [ + 796.0, + 973.0 + ], + [ + 741.0, + 965.0 + ] + ], + "center_px": [ + 769.0, + 939.25 + ], + "quality": { + "area_px": 3280.0, + "perimeter_px": 230.03924179077148, + "sharpness": { + "laplacian_var": 235.03135651883824 + }, + "contrast": { + "p05": 24.0, + "p95": 170.0, + "dynamic_range": 146.0, + "mean_gray": 71.34429223744293, + "std_gray": 60.34595999329839 + }, + "geometry": { + "distance_to_center_norm": 0.4469395875930786, + "distance_to_border_px": 107.0 + }, + "edge_ratio": 1.0823298168515911, + "edge_lengths_px": [ + 55.44366455078125, + 60.008331298828125, + 55.578773498535156, + 59.00847244262695 + ] + }, + "confidence": 0.9239327831777916 + }, + { + "observation_id": "69eba76f-201f-4667-904e-b850a461c457", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 889.0, + 943.0 + ], + [ + 916.0, + 987.0 + ], + [ + 864.0, + 1021.0 + ], + [ + 835.0, + 979.0 + ] + ], + "center_px": [ + 876.0, + 982.5 + ], + "quality": { + "area_px": 3259.0, + "perimeter_px": 229.6916618347168, + "sharpness": { + "laplacian_var": 61.572482510446996 + }, + "contrast": { + "p05": 8.0, + "p95": 102.0, + "dynamic_range": 94.0, + "mean_gray": 52.3137789904502, + "std_gray": 40.795642464164395 + }, + "geometry": { + "distance_to_center_norm": 0.5213257670402527, + "distance_to_border_px": 59.0 + }, + "edge_ratio": 1.2715701940712816, + "edge_lengths_px": [ + 51.62363815307617, + 62.12889862060547, + 51.03919982910156, + 64.8999252319336 + ] + }, + "confidence": 0.4035200127470337 + }, + { + "observation_id": "f27dc75a-0e3e-4394-a340-aade254360f3", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 685.0 + ], + [ + 956.0, + 716.0 + ], + [ + 934.0, + 773.0 + ], + [ + 895.0, + 742.0 + ] + ], + "center_px": [ + 925.75, + 729.0 + ], + "quality": { + "area_px": 2892.0, + "perimeter_px": 221.4241943359375, + "sharpness": { + "laplacian_var": 65.75925962559084 + }, + "contrast": { + "p05": 5.0, + "p95": 83.0, + "dynamic_range": 78.0, + "mean_gray": 36.39875065070276, + "std_gray": 31.82755916882834 + }, + "geometry": { + "distance_to_center_norm": 0.31042397022247314, + "distance_to_border_px": 307.0 + }, + "edge_ratio": 1.2533531491081307, + "edge_lengths_px": [ + 49.04079818725586, + 61.09828186035156, + 49.81967544555664, + 61.46543884277344 + ] + }, + "confidence": 0.4262916519882062 + }, + { + "observation_id": "bb9ba34b-87db-4fae-8fbb-0b8a8ff8cfe2", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1006.0, + 434.0 + ], + [ + 1040.0, + 464.0 + ], + [ + 1023.0, + 519.0 + ], + [ + 983.0, + 494.0 + ] + ], + "center_px": [ + 1013.0, + 477.75 + ], + "quality": { + "area_px": 2677.5, + "perimeter_px": 214.33768844604492, + "sharpness": { + "laplacian_var": 63.84585482864622 + }, + "contrast": { + "p05": 4.0, + "p95": 81.0, + "dynamic_range": 77.0, + "mean_gray": 29.46114864864865, + "std_gray": 31.00050238673812 + }, + "geometry": { + "distance_to_center_norm": 0.33282196521759033, + "distance_to_border_px": 400.0 + }, + "edge_ratio": 1.4171338730692165, + "edge_lengths_px": [ + 45.343135833740234, + 57.567352294921875, + 47.16990661621094, + 64.25729370117188 + ] + }, + "confidence": 0.3613610332351109 + }, + { + "observation_id": "607dc7eb-97a2-4293-910b-e6627a624416", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 994.0, + 187.0 + ], + [ + 1046.0, + 190.0 + ], + [ + 1029.0, + 238.0 + ], + [ + 978.0, + 230.0 + ] + ], + "center_px": [ + 1011.75, + 211.25 + ], + "quality": { + "area_px": 2434.0, + "perimeter_px": 200.51189422607422, + "sharpness": { + "laplacian_var": 737.7557921421737 + }, + "contrast": { + "p05": 56.0, + "p95": 183.0, + "dynamic_range": 127.0, + "mean_gray": 101.10567632850241, + "std_gray": 52.34786160983359 + }, + "geometry": { + "distance_to_center_norm": 0.48837676644325256, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.1352691889411037, + "edge_lengths_px": [ + 52.08646774291992, + 50.9215087890625, + 51.62363815307617, + 45.880279541015625 + ] + }, + "confidence": 0.8808483571484285 + }, + { + "observation_id": "51e1295b-0403-477f-a435-e375b5425946", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 920.0, + 169.0 + ], + [ + 969.0, + 170.0 + ], + [ + 953.0, + 218.0 + ], + [ + 902.0, + 215.0 + ] + ], + "center_px": [ + 936.0, + 193.0 + ], + "quality": { + "area_px": 2384.0, + "perimeter_px": 200.09115982055664, + "sharpness": { + "laplacian_var": 675.8367068624159 + }, + "contrast": { + "p05": 58.0, + "p95": 184.0, + "dynamic_range": 126.0, + "mean_gray": 125.61893054701905, + "std_gray": 52.20639937589474 + }, + "geometry": { + "distance_to_center_norm": 0.4541509747505188, + "distance_to_border_px": 169.0 + }, + "edge_ratio": 1.042398381472962, + "edge_lengths_px": [ + 49.01020431518555, + 50.59644317626953, + 51.088157653808594, + 49.39635467529297 + ] + }, + "confidence": 0.9593261249954639 + }, + { + "observation_id": "a3e7b974-dfa9-457c-baab-a34c93225840", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 837.0, + 569.0 + ], + [ + 877.0, + 568.0 + ], + [ + 857.0, + 624.0 + ], + [ + 816.0, + 623.0 + ] + ], + "center_px": [ + 846.75, + 596.0 + ], + "quality": { + "area_px": 2227.5, + "perimeter_px": 198.4285888671875, + "sharpness": { + "laplacian_var": 456.8683277511788 + }, + "contrast": { + "p05": 43.0, + "p95": 185.0, + "dynamic_range": 142.0, + "mean_gray": 85.2088948787062, + "std_gray": 56.487417453665174 + }, + "geometry": { + "distance_to_center_norm": 0.15396633744239807, + "distance_to_border_px": 456.0 + }, + "edge_ratio": 1.486142577830794, + "edge_lengths_px": [ + 40.01249694824219, + 59.46427536010742, + 41.01219177246094, + 57.93962478637695 + ] + }, + "confidence": 0.6728829487273165 + }, + { + "observation_id": "36508e57-1bd5-402d-bc17-2d66107d1860", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 380.0, + 1053.0 + ], + [ + 418.0, + 1028.0 + ], + [ + 462.0, + 1043.0 + ], + [ + 426.0, + 1069.0 + ] + ], + "center_px": [ + 421.5, + 1048.25 + ], + "quality": { + "area_px": 1721.0, + "perimeter_px": 185.08320999145508, + "sharpness": { + "laplacian_var": 401.0408793146889 + }, + "contrast": { + "p05": 16.0, + "p95": 171.0, + "dynamic_range": 155.0, + "mean_gray": 91.72839506172839, + "std_gray": 64.0365880429505 + }, + "geometry": { + "distance_to_center_norm": 0.6549152135848999, + "distance_to_border_px": 11.0 + }, + "edge_ratio": 1.0967404836818018, + "edge_lengths_px": [ + 45.486263275146484, + 46.48655700683594, + 44.40720748901367, + 48.703182220458984 + ] + }, + "confidence": 0.20059440065661768 + }, + { + "observation_id": "750cc6b3-c186-4ba8-98e7-77f9cbadcd91", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 839.0, + 266.0 + ], + [ + 854.0, + 309.0 + ], + [ + 811.0, + 306.0 + ], + [ + 796.0, + 265.0 + ] + ], + "center_px": [ + 825.0, + 286.5 + ], + "quality": { + "area_px": 1776.0, + "perimeter_px": 175.31510162353516, + "sharpness": { + "laplacian_var": 240.92017426523984 + }, + "contrast": { + "p05": 22.0, + "p95": 153.0, + "dynamic_range": 131.0, + "mean_gray": 74.06045751633987, + "std_gray": 53.6075481691311 + }, + "geometry": { + "distance_to_center_norm": 0.3048724830150604, + "distance_to_border_px": 265.0 + }, + "edge_ratio": 1.0588111649951575, + "edge_lengths_px": [ + 45.54119110107422, + 43.104522705078125, + 43.65776062011719, + 43.011627197265625 + ] + }, + "confidence": 0.9444554733275536 + }, + { + "observation_id": "3503aa1e-3072-402f-a1cc-be33eaee6c79", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 992.0, + 902.0 + ], + [ + 1041.0, + 917.0 + ], + [ + 1015.0, + 938.0 + ], + [ + 966.0, + 922.0 + ] + ], + "center_px": [ + 1003.5, + 919.75 + ], + "quality": { + "area_px": 1407.5, + "perimeter_px": 169.01459884643555, + "sharpness": { + "laplacian_var": 202.21712799530312 + }, + "contrast": { + "p05": 11.0, + "p95": 135.0, + "dynamic_range": 124.0, + "mean_gray": 60.230610134436404, + "std_gray": 46.98590047860021 + }, + "geometry": { + "distance_to_center_norm": 0.5265568494796753, + "distance_to_border_px": 142.0 + }, + "edge_ratio": 1.5714104130928346, + "edge_lengths_px": [ + 51.244510650634766, + 33.42155075073242, + 51.54609680175781, + 32.80244064331055 + ] + }, + "confidence": 0.5971281121184089 + }, + { + "observation_id": "b892f12e-bda1-4def-be86-a03050a20fda", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 828.0, + 160.0 + ], + [ + 872.0, + 162.0 + ], + [ + 849.0, + 192.0 + ], + [ + 804.0, + 188.0 + ] + ], + "center_px": [ + 838.25, + 175.5 + ], + "quality": { + "area_px": 1361.0, + "perimeter_px": 163.9031524658203, + "sharpness": { + "laplacian_var": 634.8821505010796 + }, + "contrast": { + "p05": 22.0, + "p95": 179.0, + "dynamic_range": 157.0, + "mean_gray": 93.81072210065645, + "std_gray": 65.74062367039625 + }, + "geometry": { + "distance_to_center_norm": 0.4257793128490448, + "distance_to_border_px": 160.0 + }, + "edge_ratio": 1.2250450560973367, + "edge_lengths_px": [ + 44.04542922973633, + 37.80211639404297, + 45.17742919921875, + 36.878177642822266 + ] + }, + "confidence": 0.740653030529222 + }, + { + "observation_id": "38d31b09-d63e-4134-8342-98c86656c423", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 91.0, + 932.0 + ], + [ + 132.0, + 913.0 + ], + [ + 165.0, + 927.0 + ], + [ + 125.0, + 947.0 + ] + ], + "center_px": [ + 128.25, + 929.75 + ], + "quality": { + "area_px": 1240.5, + "perimeter_px": 162.91856002807617, + "sharpness": { + "laplacian_var": 640.6271417753217 + }, + "contrast": { + "p05": 17.0, + "p95": 172.0, + "dynamic_range": 155.0, + "mean_gray": 88.50410316529894, + "std_gray": 59.8365616473406 + }, + "geometry": { + "distance_to_center_norm": 0.7873013019561768, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.2605971300139012, + "edge_lengths_px": [ + 45.18849563598633, + 35.84689712524414, + 44.72135925292969, + 37.161808013916016 + ] + }, + "confidence": 0.6560383014602613 + }, + { + "observation_id": "d7f858e0-aad2-4490-a802-066c689a8e56", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 384.0, + 918.0 + ], + [ + 416.0, + 899.0 + ], + [ + 455.0, + 911.0 + ], + [ + 424.0, + 931.0 + ] + ], + "center_px": [ + 419.75, + 914.75 + ], + "quality": { + "area_px": 1164.0, + "perimeter_px": 156.97121810913086, + "sharpness": { + "laplacian_var": 1305.0180528018368 + }, + "contrast": { + "p05": 23.0, + "p95": 171.0, + "dynamic_range": 148.0, + "mean_gray": 125.7001287001287, + "std_gray": 50.591649190438574 + }, + "geometry": { + "distance_to_center_norm": 0.5335504412651062, + "distance_to_border_px": 149.0 + }, + "edge_ratio": 1.1400787327238997, + "edge_lengths_px": [ + 37.2155876159668, + 40.804412841796875, + 36.8917350769043, + 42.05948257446289 + ] + }, + "confidence": 0.6806547457875692 + }, + { + "observation_id": "3ad7a45d-8d4e-46f6-a405-70421ece8235", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1061.0, + 838.0 + ], + [ + 1107.0, + 851.0 + ], + [ + 1086.0, + 869.0 + ], + [ + 1038.0, + 855.0 + ] + ], + "center_px": [ + 1073.0, + 853.25 + ], + "quality": { + "area_px": 1119.5, + "perimeter_px": 154.0610065460205, + "sharpness": { + "laplacian_var": 699.1501103553894 + }, + "contrast": { + "p05": 27.0, + "p95": 147.0, + "dynamic_range": 120.0, + "mean_gray": 93.41610738255034, + "std_gray": 44.372659317587036 + }, + "geometry": { + "distance_to_center_norm": 0.5243862867355347, + "distance_to_border_px": 211.0 + }, + "edge_ratio": 1.8077537619585837, + "edge_lengths_px": [ + 47.801673889160156, + 27.658634185791016, + 50.0, + 28.600698471069336 + ] + }, + "confidence": 0.41285121294657384 + }, + { + "observation_id": "047b8f45-f45d-4e5e-bce6-4a487197475c", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 205.0, + 850.0 + ], + [ + 240.0, + 834.0 + ], + [ + 272.0, + 846.0 + ], + [ + 238.0, + 862.0 + ] + ], + "center_px": [ + 238.75, + 848.0 + ], + "quality": { + "area_px": 934.0, + "perimeter_px": 145.35046768188477, + "sharpness": { + "laplacian_var": 1079.742643238912 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 86.53560830860535, + "std_gray": 57.948273841825284 + }, + "geometry": { + "distance_to_center_norm": 0.6348573565483093, + "distance_to_border_px": 205.0 + }, + "edge_ratio": 1.1260460248127115, + "edge_lengths_px": [ + 38.4837646484375, + 34.1760139465332, + 37.57658767700195, + 35.11410140991211 + ] + }, + "confidence": 0.5529673325477359 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 539.0, + 665.0 + ], + [ + 601.0, + 657.0 + ], + [ + 722.0, + 692.0 + ], + [ + 705.0, + 711.0 + ] + ], + "center_px": [ + 641.75, + 681.25 + ], + "area_px": 3537.0 + }, + { + "image_points_px": [ + [ + 513.0, + 939.0 + ], + [ + 547.0, + 920.0 + ], + [ + 585.0, + 935.0 + ], + [ + 554.0, + 954.0 + ] + ], + "center_px": [ + 549.75, + 937.0 + ], + "area_px": 1238.0 + }, + { + "image_points_px": [ + [ + 256.0, + 906.0 + ], + [ + 289.0, + 888.0 + ], + [ + 327.0, + 900.0 + ], + [ + 291.0, + 919.0 + ] + ], + "center_px": [ + 290.75, + 903.25 + ], + "area_px": 1106.5 + }, + { + "image_points_px": [ + [ + 1378.0, + 809.0 + ], + [ + 1388.0, + 794.0 + ], + [ + 1434.0, + 804.0 + ], + [ + 1425.0, + 819.0 + ] + ], + "center_px": [ + 1406.25, + 806.5 + ], + "area_px": 792.5 + }, + { + "image_points_px": [ + [ + 492.0, + 714.0 + ], + [ + 517.0, + 702.0 + ], + [ + 551.0, + 710.0 + ], + [ + 527.0, + 723.0 + ] + ], + "center_px": [ + 521.75, + 712.25 + ], + "area_px": 639.5 + }, + { + "image_points_px": [ + [ + 1357.0, + 753.0 + ], + [ + 1371.0, + 740.0 + ], + [ + 1413.0, + 751.0 + ], + [ + 1400.0, + 763.0 + ] + ], + "center_px": [ + 1385.25, + 751.75 + ], + "area_px": 673.0 + }, + { + "image_points_px": [ + [ + 861.0, + 864.0 + ], + [ + 906.0, + 866.0 + ], + [ + 914.0, + 872.0 + ], + [ + 888.0, + 873.0 + ] + ], + "center_px": [ + 892.25, + 868.75 + ], + "area_px": 257.5 + }, + { + "image_points_px": [ + [ + 910.0, + 411.0 + ], + [ + 902.0, + 436.0 + ], + [ + 884.0, + 439.0 + ], + [ + 897.0, + 405.0 + ] + ], + "center_px": [ + 898.25, + 422.75 + ], + "area_px": 473.0 + }, + { + "image_points_px": [ + [ + 926.0, + 925.0 + ], + [ + 927.0, + 944.0 + ], + [ + 919.0, + 968.0 + ], + [ + 918.0, + 955.0 + ] + ], + "center_px": [ + 922.5, + 948.0 + ], + "area_px": 155.0 + }, + { + "image_points_px": [ + [ + 848.0, + 907.0 + ], + [ + 854.0, + 911.0 + ], + [ + 859.0, + 937.0 + ], + [ + 857.0, + 945.0 + ] + ], + "center_px": [ + 854.5, + 925.0 + ], + "area_px": 142.0 + }, + { + "image_points_px": [ + [ + 973.0, + 589.0 + ], + [ + 977.0, + 595.0 + ], + [ + 965.0, + 626.0 + ], + [ + 962.0, + 618.0 + ] + ], + "center_px": [ + 969.25, + 607.0 + ], + "area_px": 185.5 + }, + { + "image_points_px": [ + [ + 946.0, + 260.0 + ], + [ + 928.0, + 294.0 + ], + [ + 936.0, + 270.0 + ], + [ + 942.0, + 260.0 + ] + ], + "center_px": [ + 938.0, + 271.0 + ], + "area_px": 100.0 + }, + { + "image_points_px": [ + [ + 831.0, + 639.0 + ], + [ + 795.0, + 649.0 + ], + [ + 796.0, + 645.0 + ], + [ + 812.0, + 640.0 + ] + ], + "center_px": [ + 808.5, + 643.25 + ], + "area_px": 106.5 + }, + { + "image_points_px": [ + [ + 957.0, + 355.0 + ], + [ + 971.0, + 365.0 + ], + [ + 967.0, + 381.0 + ], + [ + 961.0, + 372.0 + ] + ], + "center_px": [ + 964.0, + 368.25 + ], + "area_px": 165.0 + }, + { + "image_points_px": [ + [ + 1107.0, + 214.0 + ], + [ + 1106.0, + 229.0 + ], + [ + 1099.0, + 243.0 + ], + [ + 1103.0, + 219.0 + ] + ], + "center_px": [ + 1103.75, + 226.25 + ], + "area_px": 83.5 + }, + { + "image_points_px": [ + [ + 275.0, + 926.0 + ], + [ + 284.0, + 927.0 + ], + [ + 303.0, + 935.0 + ], + [ + 277.0, + 929.0 + ] + ], + "center_px": [ + 284.75, + 929.25 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 927.0, + 944.0 + ], + [ + 921.0, + 969.0 + ], + [ + 918.0, + 971.0 + ], + [ + 922.0, + 951.0 + ] + ], + "center_px": [ + 922.0, + 958.75 + ], + "area_px": 67.5 + }, + { + "image_points_px": [ + [ + 507.0, + 975.0 + ], + [ + 526.0, + 982.0 + ], + [ + 529.0, + 986.0 + ], + [ + 509.0, + 979.0 + ] + ], + "center_px": [ + 517.75, + 980.5 + ], + "area_px": 60.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/render_d_camera_pose.json b/data/camera_study/Scene10/k4_abcd/render_d_camera_pose.json new file mode 100644 index 0000000..e6fc756 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/render_d_camera_pose.json @@ -0,0 +1,285 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:49Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abcd\\render_d_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "d", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 6, + "used_marker_ids": [ + 95, + 208, + 69, + 103, + 214, + 64 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.010671415477997622, + 0.0018696542807179611, + 0.001824150025738836, + 0.0018241474426834877 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.164164330259058, + "residual_median_px": 5.398072385043921, + "residual_max_px": 7.027422341283123, + "sigma2_normalized": 6.6550277836154934e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8166700601577759, + 0.5771039724349976, + -0.0010227123275399208 + ], + [ + 0.16298067569732666, + -0.2323361337184906, + -0.9588833451271057 + ], + [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + ], + "translation_m": [ + -0.11485252529382706, + 0.08547275513410568, + 1.1249300241470337 + ], + "rvec_rad": [ + 1.7923624327425687, + 0.5686287097896567, + -0.4261428430202902 + ] + }, + "camera_in_world": { + "position_m": [ + 0.7026420831680298, + -0.7945951223373413, + 0.4010946750640869 + ], + "position_mm": [ + 702.64208984375, + -794.5950927734375, + 401.09466552734375 + ], + "orientation_deg": { + "roll": 109.92484283447266, + "pitch": 33.615230560302734, + "yaw": 11.286093711853027 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.0003498424001015397, + 6.823486661029942e-05, + 4.142063730678703e-05, + -5.345001723379169e-06, + -7.396858110018478e-05, + -1.2641475041979003e-05 + ], + [ + 6.823486661029988e-05, + 0.00010295516106391171, + -9.137229494897015e-05, + 2.281178954254835e-05, + -1.979611332364414e-05, + -7.605354993482835e-06 + ], + [ + 4.142063730678625e-05, + -9.137229494897096e-05, + 0.0002702927022549336, + -4.213130837183371e-05, + -7.56149612726986e-06, + 9.26150663825411e-06 + ], + [ + -5.345001723379082e-06, + 2.281178954254845e-05, + -4.2131308371833616e-05, + 8.962887675732753e-06, + -2.575675434153523e-07, + -3.848871385514968e-06 + ], + [ + -7.396858110018466e-05, + -1.9796113323644056e-05, + -7.561496127270001e-06, + -2.575675434153093e-07, + 1.8000566759428326e-05, + 7.99389653027148e-06 + ], + [ + -1.2641475041978559e-05, + -7.605354993482897e-06, + 9.261506638254348e-06, + -3.848871385514858e-06, + 7.993896530271401e-06, + 2.7756310749504287e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 1.07166452425966, + 0.581362070062273, + 0.9419759016685776 + ], + "tvec_std_m": [ + 0.0029938082229382617, + 0.004242707479832698, + 0.005268425832210631 + ] + }, + "camera_center_std_m": [ + 0.01190826606439346, + 0.013088153786860686, + 0.01603645350806163 + ], + "camera_center_std_mm": [ + 11.90826606439346, + 13.088153786860685, + 16.03645350806163 + ], + "orientation_std_deg": { + "roll": 1.2477636245413861, + "pitch": 0.8325671808473429, + "yaw": 0.699613718760565 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 421.5, + 1048.25 + ], + "projected_center_px": [ + 423.55438232421875, + 1045.9644775390625 + ], + "reprojection_error_px": 3.0731253885112206, + "confidence": 0.20059440065661768 + }, + { + "marker_id": 208, + "observed_center_px": [ + 1003.5, + 919.75 + ], + "projected_center_px": [ + 996.4899291992188, + 920.2435302734375 + ], + "reprojection_error_px": 7.027422341283123, + "confidence": 0.5971281121184089 + }, + { + "marker_id": 69, + "observed_center_px": [ + 128.25, + 929.75 + ], + "projected_center_px": [ + 123.95993041992188, + 934.0740966796875 + ], + "reprojection_error_px": 6.091182898025322, + "confidence": 0.6560383014602613 + }, + { + "marker_id": 103, + "observed_center_px": [ + 419.75, + 914.75 + ], + "projected_center_px": [ + 425.61590576171875, + 913.2058715820312 + ], + "reprojection_error_px": 6.065738452698394, + "confidence": 0.6806547457875692 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1073.0, + 853.25 + ], + "projected_center_px": [ + 1077.615234375, + 854.2874755859375 + ], + "reprojection_error_px": 4.730406317389448, + "confidence": 0.41285121294657384 + }, + { + "marker_id": 64, + "observed_center_px": [ + 238.75, + 848.0 + ], + "projected_center_px": [ + 237.76194763183594, + 846.0165405273438 + ], + "reprojection_error_px": 2.2159329777555143, + "confidence": 0.5529673325477359 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/robot_state.eval.json b/data/camera_study/Scene10/k4_abcd/robot_state.eval.json new file mode 100644 index 0000000..e6b35a9 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 121.09842355339721, + "gt": 120.0, + "error": 1.098423553397211, + "unit": "mm", + "observable": true, + "n_markers": 2 + }, + { + "joint": "y", + "estimate": 59.84857182194975, + "gt": 60.0, + "error": 0.15142817805025288, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "z", + "estimate": -109.84223483792604, + "gt": -110.0, + "error": 0.1577651620739573, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "a", + "estimate": 19.657241006922433, + "gt": 20.0, + "error": 0.34275899307755253, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "b", + "estimate": 30.614951354578, + "gt": 30.0, + "error": 0.614951354578011, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "c", + "estimate": 179.905923866974, + "gt": 180.0, + "error": 0.09407613302599316, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "e", + "estimate": 5.434319591755218, + "gt": 4.0, + "error": 1.4343195917552176, + "unit": "mm", + "observable": true, + "n_markers": 2 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.2721959641611534, + "max_abs_deg": 0.614951354578011, + "mean_abs_mm": 1.2663715725762144, + "max_abs_mm": 1.4343195917552176 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcd/robot_state.json b/data/camera_study/Scene10/k4_abcd/robot_state.json new file mode 100644 index 0000000..25ac547 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcd/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:53Z", + "method": "hybrid", + "movements": { + "x": { + "value": 121.09842355339721, + "unit": "mm", + "observable": true, + "confidence": "medium", + "n_markers": 2 + }, + "y": { + "value": 59.84857182194975, + "unit": "deg", + "observable": true, + "confidence": "medium", + "n_markers": 2 + }, + "z": { + "value": -109.84223483792604, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "a": { + "value": 19.657241006922433, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "b": { + "value": 30.614951354578, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "c": { + "value": 179.905923866974, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "e": { + "value": 5.434319591755218, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 2 + } + }, + "residual_rms": 1.6080091367779337, + "num_markers": 28 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/aruco_marker_poses.json b/data/camera_study/Scene10/k4_abcf/aruco_marker_poses.json new file mode 100644 index 0000000..77ffd74 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/aruco_marker_poses.json @@ -0,0 +1,1375 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:19:44Z", + "summary": { + "num_cameras": 4, + "num_markers": 30 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.30625156692571426, + -0.19943799730493225, + 0.023066068853503038 + ], + "position_mm": [ + 306.25156692571426, + -199.43799730493225, + 23.066068853503037 + ], + "normal": [ + 0.15687904649832402, + -0.9672869492864014, + 0.1993612863872615 + ], + "corners_m": [ + [ + 0.29276560826025194, + -0.19927591653286753, + 0.03403675883942624 + ], + [ + 0.31661308385723946, + -0.19522078707963225, + 0.03579477485318833 + ], + [ + 0.3196696405207763, + -0.1994852544672114, + 0.011854893968842498 + ], + [ + 0.29595793506458934, + -0.20377003114001777, + 0.010577847752555094 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.24727990038044 + }, + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.34361130569687853, + -0.2881949560297543, + -0.02740472368952218 + ], + "position_mm": [ + 343.61130569687856, + -288.19495602975434, + -27.404723689522182 + ], + "normal": [ + 0.004111763330347795, + 0.02766254977368266, + 0.9996088618766511 + ], + "corners_m": [ + [ + 0.33198678316660385, + -0.30000591763906953, + -0.02723624701741222 + ], + [ + 0.3318160332124473, + -0.27626279934396397, + -0.027484388938457886 + ], + [ + 0.3554722583875427, + -0.27647976174616895, + -0.027981171976171795 + ], + [ + 0.3551701480209204, + -0.3000313453898149, + -0.026917086826046814 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.542646315350595 + }, + { + "marker_id": 50, + "link": "Board", + "position_m": [ + 0.5710832583917255, + 0.2116990032274318, + -0.027206452686000037 + ], + "position_mm": [ + 571.0832583917255, + 211.6990032274318, + -27.206452686000038 + ], + "normal": [ + -0.0021351011189268904, + 0.03872167744333939, + 0.9992477535822565 + ], + "corners_m": [ + [ + 0.5597433253260713, + 0.1997060226348541, + -0.026893711012318293 + ], + [ + 0.5595176351052566, + 0.22363229001403293, + -0.02756428106695161 + ], + [ + 0.5822918235446088, + 0.2234173386146327, + -0.02776881159262562 + ], + [ + 0.582780249590965, + 0.20004036164620748, + -0.02659900707210462 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.29135146226515 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16786660278915316, + -0.17322427733007334, + -0.027600607220027655 + ], + "position_mm": [ + 167.86660278915318, + -173.22427733007333, + -27.600607220027655 + ], + "normal": [ + -0.006149838619384908, + 0.0030365829045798103, + 0.999976479047992 + ], + "corners_m": [ + [ + 0.1558333211502882, + -0.1842380346698138, + -0.027691101901552717 + ], + [ + 0.15628172677479366, + -0.16113957331051243, + -0.02765911137729259 + ], + [ + 0.18002451952062457, + -0.1620046003269406, + -0.027608452004247903 + ], + [ + 0.1793268437109063, + -0.18551490101302642, + -0.027443763597017418 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.478039351827583 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.4887749088558654, + 0.2151305617304476, + -0.027257104749172038 + ], + "position_mm": [ + 488.77490885586536, + 215.1305617304476, + -27.257104749172036 + ], + "normal": [ + -0.032364710715890845, + 0.050705056870831045, + 0.9981891217139178 + ], + "corners_m": [ + [ + 0.47699430612106947, + 0.20340471073717656, + -0.027263892163923574 + ], + [ + 0.47726095275340014, + 0.22755352164452325, + -0.028037232326808686 + ], + [ + 0.5003725394594621, + 0.22666304788001002, + -0.02769443228403516 + ], + [ + 0.5004718370895298, + 0.20290096666008045, + -0.02603286222192074 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.657356615577978 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3397346611247085, + -0.32743527721704746, + -0.027358200256640108 + ], + "position_mm": [ + 339.7346611247085, + -327.4352772170475, + -27.358200256640107 + ], + "normal": [ + 0.0018693690032810263, + 0.015989188102273014, + 0.9998704172658374 + ], + "corners_m": [ + [ + 0.3279518353965553, + -0.33908611627545787, + -0.027258947504154953 + ], + [ + 0.3281662138645668, + -0.31586167306264806, + -0.027409945598058136 + ], + [ + 0.35123837923225665, + -0.31563955984886993, + -0.027678637121200892 + ], + [ + 0.35158221600545536, + -0.3391537596812139, + -0.027085270803146443 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.364009055823907 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.2844208863404689, + -0.26095445068143774, + -0.02738766868936351 + ], + "position_mm": [ + 284.42088634046894, + -260.9544506814377, + -27.38766868936351 + ], + "normal": [ + -0.037632844695666606, + 0.024040388690516612, + 0.9990024167697097 + ], + "corners_m": [ + [ + 0.27232193776048697, + -0.2722929792231064, + -0.027520183703303593 + ], + [ + 0.2731034157071807, + -0.2484956394560808, + -0.028164847853168598 + ], + [ + 0.29636316965453496, + -0.2499791940869958, + -0.027149240453943284 + ], + [ + 0.295895022239673, + -0.2730499899595681, + -0.026716402747038574 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.45664038526802 + }, + { + "marker_id": 58, + "link": "Board", + "position_m": [ + 0.047336861700937254, + -0.21643100832679277, + -0.027209077984690494 + ], + "position_mm": [ + 47.336861700937256, + -216.43100832679278, + -27.209077984690495 + ], + "normal": [ + 0.0013588198906133635, + -0.0036434141538534276, + 0.999992439542324 + ], + "corners_m": [ + [ + 0.035361871794753426, + -0.22834202681993007, + -0.027259175356223724 + ], + [ + 0.035636338795523775, + -0.20492512880256072, + -0.027128009198217347 + ], + [ + 0.059170172929795664, + -0.2045790098019498, + -0.027205336754186512 + ], + [ + 0.05917906328367614, + -0.22787786788273048, + -0.027243790630134396 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.51899761077337 + }, + { + "marker_id": 62, + "link": "Board", + "position_m": [ + 0.40195893468389354, + -0.1730690690188278, + -0.027852010065405726 + ], + "position_mm": [ + 401.9589346838935, + -173.0690690188278, + -27.852010065405725 + ], + "normal": [ + 0.0017212777438192811, + -0.0053587107259354125, + 0.9999841605856987 + ], + "corners_m": [ + [ + 0.3906574557457861, + -0.1848411392095625, + -0.028039702097584905 + ], + [ + 0.3898255212778355, + -0.1623495548051233, + -0.027627887490897778 + ], + [ + 0.4130975129900397, + -0.16085020238787334, + -0.027945900724468786 + ], + [ + 0.41425524872191294, + -0.18423537967275203, + -0.027794549948671442 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.213572182010246 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.019382650059862762, + -0.18917653791773745, + -0.026957093891842268 + ], + "position_mm": [ + -19.382650059862762, + -189.17653791773745, + -26.95709389184227 + ], + "normal": [ + -0.0036895694854724224, + -0.002089752665000555, + 0.9999910099649952 + ], + "corners_m": [ + [ + -0.03137708625041169, + -0.20074261484200326, + -0.027071480712948175 + ], + [ + -0.030734222604308494, + -0.17724794781407496, + -0.02692736504164147 + ], + [ + -0.007571739034749721, + -0.1777707612798837, + -0.026937017399137193 + ], + [ + -0.007847552349981128, + -0.2009448277349879, + -0.026892512413642246 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.344780326701905 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.005461376006755128, + -0.2771866591269858, + -0.02862082525934384 + ], + "position_mm": [ + 5.4613760067551285, + -277.18665912698583, + -28.62082525934384 + ], + "normal": [ + -0.0481151300319273, + 0.04461057597814089, + 0.9978450935756058 + ], + "corners_m": [ + [ + -0.006626639484829631, + -0.2887188238947474, + -0.028701492094985924 + ], + [ + -0.005884142071034708, + -0.2647413483611325, + -0.029710809034653167 + ], + [ + 0.01744885102852476, + -0.26568526813911403, + -0.028570507713787125 + ], + [ + 0.01690743455436009, + -0.28960119611294954, + -0.027500492193949153 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.729320661458335 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.4418452616655221, + 0.19411425116661324, + -0.02779585459975433 + ], + "position_mm": [ + 441.8452616655221, + 194.11425116661323, + -27.795854599754332 + ], + "normal": [ + 0.07280118041719603, + 0.022422351374504552, + 0.9970943918650336 + ], + "corners_m": [ + [ + 0.4307227295960595, + 0.18191561788154603, + -0.027235283274477804 + ], + [ + 0.4297867172132932, + 0.2046788349673567, + -0.02663320550543597 + ], + [ + 0.4530171550582433, + 0.20660276862766846, + -0.029398595655283615 + ], + [ + 0.4538544447944925, + 0.18325978318988173, + -0.027916333963819928 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.212391570768254 + }, + { + "marker_id": 75, + "link": "Board", + "position_m": [ + -0.02733332392195131, + 0.19250946762819654, + -0.026105191756293493 + ], + "position_mm": [ + -27.33332392195131, + 192.50946762819655, + -26.105191756293493 + ], + "normal": [ + -0.015591456672604828, + 0.027380262228444585, + 0.9995034905987712 + ], + "corners_m": [ + [ + -0.039632794240308244, + 0.1818324120058419, + -0.025943143130120236 + ], + [ + -0.03826878856566006, + 0.20507182277724684, + -0.026682040816382094 + ], + [ + -0.015172046285233508, + 0.20313583382750997, + -0.02614410310101719 + ], + [ + -0.01625966659660343, + 0.17999780190218734, + -0.02565147997765447 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.27268988675464 + }, + { + "marker_id": 85, + "link": "Board", + "position_m": [ + 0.5063396802870157, + -0.3135214763433817, + -0.027594468153602107 + ], + "position_mm": [ + 506.3396802870157, + -313.52147634338166, + -27.594468153602108 + ], + "normal": [ + -0.006990534975307135, + -0.014190489550252539, + 0.9998748733852068 + ], + "corners_m": [ + [ + 0.4940710355094577, + -0.3247132382913153, + -0.027625657177304284 + ], + [ + 0.49514756050654757, + -0.3012518246895481, + -0.027717674370342973 + ], + [ + 0.518290444991102, + -0.3026956342433219, + -0.027131069440025753 + ], + [ + 0.5178496801409558, + -0.3254252081493413, + -0.027903471626735434 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.30486593470645 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18652665304347865, + -0.27682696831430914, + -0.0274462473034519 + ], + "position_mm": [ + 186.52665304347866, + -276.8269683143091, + -27.446247303451898 + ], + "normal": [ + 0.011134164808346749, + -0.008427872174464722, + 0.9999024959187928 + ], + "corners_m": [ + [ + 0.1753060108774525, + -0.2890244590688937, + -0.027274502713223847 + ], + [ + 0.17412099747766263, + -0.265616408551145, + -0.027364544943970445 + ], + [ + 0.19767070150104946, + -0.2650357863268191, + -0.027314715005614405 + ], + [ + 0.19900890231775, + -0.28763121931037866, + -0.027831226550998903 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.346589847494982 + }, + { + "marker_id": 96, + "link": "Board", + "position_m": [ + 0.3718203946498768, + -0.1837009344760794, + -0.02820900376572861 + ], + "position_mm": [ + 371.8203946498768, + -183.7009344760794, + -28.20900376572861 + ], + "normal": [ + 0.0034740978700644374, + -0.0317367185226094, + 0.9994902257358027 + ], + "corners_m": [ + [ + 0.3601217296589553, + -0.19460186516196362, + -0.028921668543352534 + ], + [ + 0.3600538880189521, + -0.17292637116137147, + -0.02741065045791009 + ], + [ + 0.38326420381864224, + -0.17196902579574286, + -0.02826311606244047 + ], + [ + 0.3838417571029574, + -0.19530647578523977, + -0.028240579999211333 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.014689793132913 + }, + { + "marker_id": 97, + "link": "Board", + "position_m": [ + 0.30659126058462804, + -0.35823125702289793, + -0.027137100462690647 + ], + "position_mm": [ + 306.59126058462806, + -358.2312570228979, + -27.137100462690647 + ], + "normal": [ + 0.010344817335847445, + 0.006407217059227755, + 0.9999259634212144 + ], + "corners_m": [ + [ + 0.2946161460311364, + -0.36999459282310276, + -0.026654228832496046 + ], + [ + 0.294822884320035, + -0.3461892075844944, + -0.027376882527948815 + ], + [ + 0.3185381562342678, + -0.3468183366049846, + -0.027040741795292193 + ], + [ + 0.3183878557530731, + -0.36992289107900994, + -0.027476548695025523 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.60960873094876 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6506322993203831, + -0.22404420835307964, + -0.027083346484058766 + ], + "position_mm": [ + 650.6322993203831, + -224.04420835307965, + -27.083346484058765 + ], + "normal": [ + 0.007453559265215193, + -0.04325842158104699, + 0.9990361121684223 + ], + "corners_m": [ + [ + 0.638710707258843, + -0.23493804511008234, + -0.02725591213895623 + ], + [ + 0.6394722593076244, + -0.21238711834152707, + -0.026710930731421133 + ], + [ + 0.6622639251261075, + -0.21317600144133933, + -0.02648361212968244 + ], + [ + 0.6620823055889574, + -0.23567566851936983, + -0.027882930936175266 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.82808024331435 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10455695377946725, + -0.19048662809635228, + -0.02750657224122096 + ], + "position_mm": [ + 104.55695377946725, + -190.4866280963523, + -27.506572241220958 + ], + "normal": [ + -0.007011108800097909, + -0.002183166375255396, + 0.9999730387055299 + ], + "corners_m": [ + [ + 0.09273494571762052, + -0.20229568677325693, + -0.027724867640116765 + ], + [ + 0.09269127668847638, + -0.17897274967339427, + -0.027453145086415755 + ], + [ + 0.11617963183649521, + -0.17858073693825083, + -0.027509643241291938 + ], + [ + 0.11662196087527688, + -0.20209733900050708, + -0.027338632997059388 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.557149773003516 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.3103074706137392, + -0.15574293090376862, + 0.15721296024311712 + ], + "position_mm": [ + 310.3074706137392, + -155.7429309037686, + 157.21296024311712 + ], + "normal": [ + -0.3471304241805147, + -0.7397232670478825, + 0.5764633178236611 + ], + "corners_m": [ + [ + 0.29882160185777695, + -0.14514871992428927, + 0.16394154306929853 + ], + [ + 0.3212940995717429, + -0.15130581307227003, + 0.16947223409156428 + ], + [ + 0.3218000929396121, + -0.1664081884710766, + 0.15049794984504153 + ], + [ + 0.2993140880858248, + -0.16010900214743856, + 0.14494011396656417 + ] + ], + "num_cameras": 4, + "edge_length_mm": 24.099298351128226 + }, + { + "marker_id": 205, + "link": "Board", + "position_m": [ + 0.7522864761629531, + -0.0908124559745079, + 0.0008870449859709909 + ], + "position_mm": [ + 752.286476162953, + -90.8124559745079, + 0.8870449859709909 + ], + "normal": [ + -0.01491644266427506, + -0.028263746611815514, + 0.9994891997243924 + ], + "corners_m": [ + [ + 0.7410207214314708, + -0.07877501566903286, + 0.0004942482391278989 + ], + [ + 0.763021651073034, + -0.08016728058282391, + 0.0019727039654060478 + ], + [ + 0.7645804923971876, + -0.10164298920325765, + 0.00019117690202857826 + ], + [ + 0.7405230397501202, + -0.10266453844291722, + 0.0008900508373214385 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.92187474337055 + }, + { + "marker_id": 206, + "link": "Board", + "position_m": [ + 0.6500000814765554, + -0.010119256498941923, + 0.00042321635657145365 + ], + "position_mm": [ + 650.0000814765555, + -10.119256498941922, + 0.4232163565714536 + ], + "normal": [ + 0.011592821740882445, + -0.007759304215309904, + 0.9999026951069682 + ], + "corners_m": [ + [ + 0.6383081225600975, + 0.0013785011640512724, + 0.0006024455240636259 + ], + [ + 0.6615704626944585, + 0.0017490939301256006, + 0.00042655368077619 + ], + [ + 0.6617018160883879, + -0.02165869377987186, + 0.0001526571045244104 + ], + [ + 0.6384199245632778, + -0.021945927310072704, + 0.0005112091169215882 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.321753530436958 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.021743186629112392, + -0.020390207974622918, + 0.0012015366528130473 + ], + "position_mm": [ + 21.74318662911239, + -20.390207974622918, + 1.2015366528130473 + ], + "normal": [ + -0.011286508124126593, + 0.0031016650118487208, + 0.999931494857782 + ], + "corners_m": [ + [ + 0.009440790854103327, + -0.008945671210207822, + 0.0008905740710141169 + ], + [ + 0.033412304394977346, + -0.008903453491340951, + 0.001437642904064478 + ], + [ + 0.03409617654512794, + -0.03155054868621455, + 0.0012361978852039773 + ], + [ + 0.010023474722240954, + -0.032161158510728344, + 0.0012417317509696177 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.48550120703001 + }, + { + "marker_id": 211, + "link": "Board", + "position_m": [ + 0.2533057476224028, + -0.008810559868236903, + 3.714412251205133e-05 + ], + "position_mm": [ + 253.30574762240283, + -8.810559868236904, + 0.03714412251205133 + ], + "normal": [ + 0.01186403904204002, + -0.0009584690846691224, + 0.9999291604481902 + ], + "corners_m": [ + [ + 0.24196036982027513, + 0.0034886974714240155, + -6.48452776953702e-06 + ], + [ + 0.26561516474231184, + 0.0020439838742658837, + 9.900561936778592e-05 + ], + [ + 0.2650335231744089, + -0.020671278047862087, + -0.00030503598324687297 + ], + [ + 0.24061393275261525, + -0.020103642770775424, + 0.0003610913816968294 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.623565718732657 + }, + { + "marker_id": 214, + "link": "Board", + "position_m": [ + 0.3478139662502992, + -0.011689059499792712, + 0.0011942742591823064 + ], + "position_mm": [ + 347.8139662502992, + -11.689059499792712, + 1.1942742591823063 + ], + "normal": [ + 0.017934506898424955, + -0.04241325340326119, + 0.9989391720210301 + ], + "corners_m": [ + [ + 0.33620163616912896, + -0.0002794545980037367, + 0.0018627240956748407 + ], + [ + 0.35953174307687874, + -0.000865515740947479, + 0.0014683968248258633 + ], + [ + 0.3598937712787591, + -0.02288182696623332, + 0.0004781755623421224 + ], + [ + 0.33562871447643, + -0.022729440693986313, + 0.0009678005538863992 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.031983483548874 + }, + { + "marker_id": 215, + "link": "Board", + "position_m": [ + 0.25042025949499297, + -0.08847065880633932, + 0.0002855341851703378 + ], + "position_mm": [ + 250.42025949499296, + -88.47065880633932, + 0.28553418517033785 + ], + "normal": [ + -0.01815665594731763, + -0.009888596798264981, + 0.9997862529051759 + ], + "corners_m": [ + [ + 0.23914734210610256, + -0.07599756188601692, + 0.0001214116699956801 + ], + [ + 0.262490747221959, + -0.07784321863282265, + 0.000694555600539444 + ], + [ + 0.2618991412619549, + -0.10068622634043879, + 0.0002898402626501584 + ], + [ + 0.23814380738995547, + -0.09935562836607893, + 3.63292074960689e-05 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.36280218717181 + }, + { + "marker_id": 231, + "link": "Ellbow", + "position_m": [ + 0.3181279544734382, + -0.018690105434870683, + 0.3157597350010689 + ], + "position_mm": [ + 318.12795447343825, + -18.690105434870684, + 315.7597350010689 + ], + "normal": [ + 0.02862980531096407, + -0.0711073197318074, + 0.997057713138219 + ], + "corners_m": [ + [ + 0.3058463554372685, + -0.007306802398638204, + 0.317159271979887 + ], + [ + 0.32981054958999045, + -0.006400015833296374, + 0.3160653722314684 + ], + [ + 0.33042400516398, + -0.03008935587610088, + 0.31482907138786814 + ], + [ + 0.3064309077025141, + -0.03096424763144727, + 0.3149852244050522 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.8774150117515 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.23040228926439196, + -0.03869379930189433, + 0.30770703358471285 + ], + "position_mm": [ + 230.40228926439195, + -38.69379930189433, + 307.70703358471286 + ], + "normal": [ + 0.0019012403150913389, + -0.5014923393644413, + 0.8651599960955455 + ], + "corners_m": [ + [ + 0.2187399582254986, + -0.02836152377276267, + 0.31376054923392394 + ], + [ + 0.24231619431653142, + -0.028531857668857154, + 0.31353282172189734 + ], + [ + 0.24209794720287525, + -0.049147169214982356, + 0.3016603229678026 + ], + [ + 0.21845505731266254, + -0.048734646550975154, + 0.30187444041522765 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.651179255137865 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3202529317855991, + -0.046958448310838105, + 0.2991238234069262 + ], + "position_mm": [ + 320.2529317855991, + -46.95844831083811, + 299.12382340692625 + ], + "normal": [ + -0.025024012752728517, + -0.7665865323820491, + 0.6416532452627487 + ], + "corners_m": [ + [ + 0.30804834188799657, + -0.03961708397452545, + 0.3076351083470482 + ], + [ + 0.3318216988022948, + -0.03973176366853169, + 0.3080078411070063 + ], + [ + 0.3326912122820789, + -0.05505993925061902, + 0.2901271985326896 + ], + [ + 0.30845047417002613, + -0.05342500634967624, + 0.2907251456409607 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.370552357184835 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.2820265428587497, + -0.04308239202708119, + 0.3036860474381198 + ], + "position_mm": [ + 282.0265428587497, + -43.08239202708119, + 303.6860474381198 + ], + "normal": [ + 0.003141255378328109, + -0.7730413685653164, + 0.6343478343947513 + ], + "corners_m": [ + [ + 0.2695846347204597, + -0.035866719476287355, + 0.3125722558110235 + ], + [ + 0.2935642139815995, + -0.03509421712973736, + 0.3133326699332831 + ], + [ + 0.2944400032382659, + -0.050413243902266085, + 0.2947219474143624 + ], + [ + 0.27051731949467367, + -0.050955387600033965, + 0.29411731659381013 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.979330464865576 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/aruco_positions_initial.json b/data/camera_study/Scene10/k4_abcf/aruco_positions_initial.json new file mode 100644 index 0000000..32b5ebe --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/aruco_positions_initial.json @@ -0,0 +1,656 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:19:42Z", + "summary": { + "num_cameras": 4, + "num_markers": 30, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.306241663576913, + -0.19937035731930264, + 0.02304326735140665 + ], + "position_mm": [ + 306.241663576913, + -199.37035731930263, + 23.043267351406648 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3437251241398752, + -0.2880518570653535, + -0.027336175680837974 + ], + "position_mm": [ + 343.7251241398752, + -288.05185706535354, + -27.336175680837975 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 50, + "position_m": [ + 0.5711062778300803, + 0.21167185790153248, + -0.027236392665058094 + ], + "position_mm": [ + 571.1062778300803, + 211.6718579015325, + -27.236392665058094 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.1681080245114533, + -0.17338209734396196, + -0.027665654811361316 + ], + "position_mm": [ + 168.1080245114533, + -173.38209734396196, + -27.665654811361318 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4887969373394409, + 0.2151519019436198, + -0.027344778657349317 + ], + "position_mm": [ + 488.7969373394409, + 215.1519019436198, + -27.344778657349316 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3399007685346788, + -0.32741013108724015, + -0.02754239461514119 + ], + "position_mm": [ + 339.90076853467883, + -327.41013108724013, + -27.542394615141188 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.284542628458916, + -0.2609142429326301, + -0.027523444076098025 + ], + "position_mm": [ + 284.542628458916, + -260.9142429326301, + -27.523444076098023 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.04730748420954963, + -0.21643106768910866, + -0.02731427763285767 + ], + "position_mm": [ + 47.30748420954963, + -216.43106768910866, + -27.31427763285767 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.40224108783950074, + -0.17317266047438684, + -0.027915283076296118 + ], + "position_mm": [ + 402.2410878395007, + -173.17266047438684, + -27.915283076296117 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.0193340456258843, + -0.18908183378146987, + -0.0269886851594388 + ], + "position_mm": [ + -19.3340456258843, + -189.08183378146987, + -26.988685159438802 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005437878298835949, + -0.27719563632950794, + -0.028747015326655703 + ], + "position_mm": [ + 5.437878298835949, + -277.1956363295079, + -28.747015326655703 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4418532539715914, + 0.19413790567464606, + -0.027882661763834013 + ], + "position_mm": [ + 441.8532539715914, + 194.13790567464605, + -27.88266176383401 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027390253334127496, + 0.19253937360267048, + -0.025965078296917538 + ], + "position_mm": [ + -27.390253334127497, + 192.53937360267048, + -25.96507829691754 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5063530924316049, + -0.3135538253142812, + -0.02766300592122651 + ], + "position_mm": [ + 506.35309243160486, + -313.5538253142812, + -27.66300592122651 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18662820880639008, + -0.2766962770611542, + -0.027457045100409562 + ], + "position_mm": [ + 186.6282088063901, + -276.6962770611542, + -27.457045100409562 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 96, + "position_m": [ + 0.37184117858824706, + -0.18370226748878932, + -0.028303665298172874 + ], + "position_mm": [ + 371.84117858824703, + -183.70226748878932, + -28.303665298172874 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.30660433344953525, + -0.35825402004545726, + -0.027246402971970632 + ], + "position_mm": [ + 306.60433344953526, + -358.25402004545725, + -27.24640297197063 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6506496658425812, + -0.22406775861996026, + -0.027142007301685093 + ], + "position_mm": [ + 650.6496658425813, + -224.06775861996024, + -27.142007301685094 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.104643992349152, + -0.19049889834733683, + -0.02767913014219985 + ], + "position_mm": [ + 104.643992349152, + -190.49889834733682, + -27.67913014219985 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3104023247371725, + -0.156306068910436, + 0.15701631582941594 + ], + "position_mm": [ + 310.4023247371725, + -156.306068910436, + 157.01631582941593 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7523091316145816, + -0.0908295201086147, + 0.000834633856532585 + ], + "position_mm": [ + 752.3091316145816, + -90.8295201086147, + 0.8346338565325849 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500135896057839, + -0.010136006087639692, + 0.00037332949430560306 + ], + "position_mm": [ + 650.013589605784, + -10.136006087639691, + 0.3733294943056031 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021879164348029265, + -0.020554696828167546, + 0.0014186542106848566 + ], + "position_mm": [ + 21.879164348029263, + -20.554696828167547, + 1.4186542106848565 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.2534764225210652, + -0.009923104246820535, + 0.0006217621524497073 + ], + "position_mm": [ + 253.47642252106522, + -9.923104246820534, + 0.6217621524497072 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.34782586912632224, + -0.011675676699665745, + 0.0011163084924605883 + ], + "position_mm": [ + 347.82586912632223, + -11.675676699665745, + 1.1163084924605882 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25041920016634434, + -0.08847728419421877, + 0.0002108696475885868 + ], + "position_mm": [ + 250.41920016634432, + -88.47728419421877, + 0.21086964758858678 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.31814418950007245, + -0.018667115816921015, + 0.31569076123152473 + ], + "position_mm": [ + 318.14418950007246, + -18.667115816921015, + 315.69076123152473 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23007529276737815, + -0.039070066670461895, + 0.30766836125299685 + ], + "position_mm": [ + 230.07529276737816, + -39.0700666704619, + 307.6683612529969 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32003366451689874, + -0.047550984998695776, + 0.29904813179015116 + ], + "position_mm": [ + 320.03366451689874, + -47.550984998695775, + 299.04813179015116 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2817741877107397, + -0.04353822356404724, + 0.30355372204569236 + ], + "position_mm": [ + 281.7741877107397, + -43.53822356404724, + 303.5537220456924 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/aruco_positions_optimized.json b/data/camera_study/Scene10/k4_abcf/aruco_positions_optimized.json new file mode 100644 index 0000000..4c02d2f --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/aruco_positions_optimized.json @@ -0,0 +1,655 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:19:43Z", + "summary": { + "num_cameras": 4, + "num_markers": 30, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3062707269039527, + -0.19935053182433896, + 0.023079942213031827 + ], + "position_mm": [ + 306.27072690395266, + -199.35053182433896, + 23.079942213031828 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3445989081143301, + -0.2856340920628151, + -0.03108354907103456 + ], + "position_mm": [ + 344.5989081143301, + -285.6340920628151, + -31.083549071034557 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 50, + "position_m": [ + 0.5711319307105601, + 0.2116645915344052, + -0.027235486494058103 + ], + "position_mm": [ + 571.1319307105601, + 211.6645915344052, + -27.235486494058105 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16753792779799642, + -0.17410556777207434, + -0.02704347504307506 + ], + "position_mm": [ + 167.53792779799642, + -174.10556777207435, + -27.043475043075063 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4877971078714363, + 0.2133466432664643, + -0.024795074794054312 + ], + "position_mm": [ + 487.7971078714363, + 213.3466432664643, + -24.79507479405431 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3397099176318521, + -0.3290856992210068, + -0.025401296019718956 + ], + "position_mm": [ + 339.7099176318521, + -329.0856992210068, + -25.401296019718956 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2845251592786437, + -0.260846589875527, + -0.027581072425078425 + ], + "position_mm": [ + 284.5251592786437, + -260.846589875527, + -27.581072425078425 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.04902651459979145, + -0.21819772416362831, + -0.025726405905392605 + ], + "position_mm": [ + 49.026514599791454, + -218.19772416362832, + -25.726405905392607 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.4036556023776388, + -0.17005334499406027, + -0.030465551089526328 + ], + "position_mm": [ + 403.6556023776388, + -170.05334499406027, + -30.46555108952633 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.02153632721901317, + -0.18664949014010784, + -0.028989183797278027 + ], + "position_mm": [ + -21.53632721901317, + -186.64949014010784, + -28.989183797278027 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.0053613759360006475, + -0.2804648927142762, + -0.024208535860841145 + ], + "position_mm": [ + 5.361375936000647, + -280.46489271427623, + -24.208535860841145 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.44276913572953414, + 0.1955268568227933, + -0.02974821916112706 + ], + "position_mm": [ + 442.7691357295341, + 195.5268568227933, + -29.748219161127057 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027448885668789176, + 0.1926398437814507, + -0.026109561867714647 + ], + "position_mm": [ + -27.448885668789178, + 192.63984378145068, + -26.109561867714646 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5063510811876154, + -0.3135339594681284, + -0.027654667113979802 + ], + "position_mm": [ + 506.3510811876154, + -313.5339594681284, + -27.6546671139798 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.1865679248278696, + -0.2759416731684168, + -0.02843288568056257 + ], + "position_mm": [ + 186.5679248278696, + -275.9416731684168, + -28.43288568056257 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 96, + "position_m": [ + 0.3707286586907173, + -0.18584491740339343, + -0.02643172588428631 + ], + "position_mm": [ + 370.7286586907173, + -185.84491740339342, + -26.431725884286312 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.303720281324833, + -0.36047249021198635, + -0.023617912527973448 + ], + "position_mm": [ + 303.72028132483297, + -360.4724902119863, + -23.61791252797345 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6506496532964352, + -0.2240676482924701, + -0.02714195869535697 + ], + "position_mm": [ + 650.6496532964352, + -224.06764829247012, + -27.14195869535697 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.1053401326844094, + -0.18923327754404057, + -0.028478505804497962 + ], + "position_mm": [ + 105.3401326844094, + -189.23327754404056, + -28.478505804497964 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31146808640257145, + -0.15477963178414395, + 0.15629043300424078 + ], + "position_mm": [ + 311.46808640257143, + -154.77963178414396, + 156.29043300424078 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7523093215208272, + -0.09083060961557907, + 0.0008346340163001021 + ], + "position_mm": [ + 752.3093215208272, + -90.83060961557906, + 0.8346340163001021 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500123085931641, + -0.010129749720070587, + 0.0003763093519980458 + ], + "position_mm": [ + 650.0123085931641, + -10.129749720070587, + 0.3763093519980458 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021641048425174718, + -0.019232420045526725, + 0.0005664398905943242 + ], + "position_mm": [ + 21.641048425174716, + -19.232420045526723, + 0.5664398905943242 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25343701003762975, + -0.008539069635711516, + -0.00013036221862473908 + ], + "position_mm": [ + 253.43701003762976, + -8.539069635711517, + -0.13036221862473907 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.347807910176148, + -0.011649294441236881, + 0.0011185463624972297 + ], + "position_mm": [ + 347.80791017614797, + -11.649294441236881, + 1.1185463624972296 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.2503677373652874, + -0.08847882085763124, + 0.00033403905965896126 + ], + "position_mm": [ + 250.36773736528738, + -88.47882085763125, + 0.33403905965896125 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.3180651380013973, + -0.020966740094644897, + 0.31282785701827426 + ], + "position_mm": [ + 318.0651380013973, + -20.966740094644898, + 312.82785701827424 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23060606568415387, + -0.03843880307829774, + 0.30742140309497556 + ], + "position_mm": [ + 230.60606568415386, + -38.43880307829774, + 307.4214030949756 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32058996345974866, + -0.04361534359839901, + 0.29874576054170077 + ], + "position_mm": [ + 320.5899634597487, + -43.615343598399015, + 298.74576054170075 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.28335375698754833, + -0.042420962286990195, + 0.3030233044915951 + ], + "position_mm": [ + 283.3537569875483, + -42.420962286990196, + 303.02330449159507 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/render_a_aruco_detection.json b/data/camera_study/Scene10/k4_abcf/render_a_aruco_detection.json new file mode 100644 index 0000000..7159e8d --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/render_a_aruco_detection.json @@ -0,0 +1,2330 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:38Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "a", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.npz", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.png", + "image_sha256": "3fda1f21fe402f6ca45be61726fe8bc4ff11185ad27638be512a8f4f598b0fe5", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 26, + "num_rejected_candidates": 35 + }, + "detections": [ + { + "observation_id": "3b5006f5-59b4-455f-a1d8-b2353e632201", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 547.0 + ], + [ + 939.0, + 530.0 + ], + [ + 956.0, + 571.0 + ], + [ + 917.0, + 588.0 + ] + ], + "center_px": [ + 928.0, + 559.0 + ], + "quality": { + "area_px": 1888.0, + "perimeter_px": 173.85755157470703, + "sharpness": { + "laplacian_var": 865.6237972020846 + }, + "contrast": { + "p05": 50.0, + "p95": 187.0, + "dynamic_range": 137.0, + "mean_gray": 87.40342679127725, + "std_gray": 54.46998248000789 + }, + "geometry": { + "distance_to_center_norm": 0.23207330703735352, + "distance_to_border_px": 484.0 + }, + "edge_ratio": 1.0432630581405598, + "edge_lengths_px": [ + 42.54409408569336, + 44.384681701660156, + 42.54409408569336, + 44.384681701660156 + ] + }, + "confidence": 0.9585310168868925 + }, + { + "observation_id": "0f695f5b-151d-432e-a758-a434c7f8d90d", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 739.0, + 242.0 + ], + [ + 774.0, + 228.0 + ], + [ + 792.0, + 270.0 + ], + [ + 757.0, + 283.0 + ] + ], + "center_px": [ + 765.5, + 255.75 + ], + "quality": { + "area_px": 1695.5, + "perimeter_px": 165.50432586669922, + "sharpness": { + "laplacian_var": 972.5653279753307 + }, + "contrast": { + "p05": 17.0, + "p95": 182.0, + "dynamic_range": 165.0, + "mean_gray": 106.18205574912892, + "std_gray": 70.67095657404792 + }, + "geometry": { + "distance_to_center_norm": 0.3198539614677429, + "distance_to_border_px": 228.0 + }, + "edge_ratio": 1.2238659987255158, + "edge_lengths_px": [ + 37.6961555480957, + 45.694637298583984, + 37.336307525634766, + 44.777225494384766 + ] + }, + "confidence": 0.8170829167910206 + }, + { + "observation_id": "3b41d5fd-467d-4f3a-b9fe-b4791111a892", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 651.0, + 261.0 + ], + [ + 689.0, + 249.0 + ], + [ + 712.0, + 285.0 + ], + [ + 674.0, + 297.0 + ] + ], + "center_px": [ + 681.5, + 273.0 + ], + "quality": { + "area_px": 1644.0, + "perimeter_px": 165.13947296142578, + "sharpness": { + "laplacian_var": 747.6962819576332 + }, + "contrast": { + "p05": 13.0, + "p95": 180.0, + "dynamic_range": 167.0, + "mean_gray": 76.63693693693693, + "std_gray": 72.66327799511954 + }, + "geometry": { + "distance_to_center_norm": 0.2997349798679352, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.072028219579559, + "edge_lengths_px": [ + 39.84971618652344, + 42.72002029418945, + 39.84971618652344, + 42.72002029418945 + ] + }, + "confidence": 0.9328112653528767 + }, + { + "observation_id": "07a88686-43fb-4966-96fb-db50b879f5ba", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 880.0, + 1056.0 + ], + [ + 849.0, + 1028.0 + ], + [ + 883.0, + 1007.0 + ], + [ + 913.0, + 1034.0 + ] + ], + "center_px": [ + 881.25, + 1031.25 + ], + "quality": { + "area_px": 1577.0, + "perimeter_px": 161.7576141357422, + "sharpness": { + "laplacian_var": 779.7184102009837 + }, + "contrast": { + "p05": 14.0, + "p95": 173.0, + "dynamic_range": 159.0, + "mean_gray": 81.89795918367346, + "std_gray": 69.37586032500836 + }, + "geometry": { + "distance_to_center_norm": 0.574486494064331, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.053254572752866, + "edge_lengths_px": [ + 41.773197174072266, + 39.96248245239258, + 40.360870361328125, + 39.66106414794922 + ] + }, + "confidence": 0.45573027871641286 + }, + { + "observation_id": "533b43a5-0052-4029-980c-28e94c6529a4", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1154.0, + 1048.0 + ], + [ + 1121.0, + 1020.0 + ], + [ + 1153.0, + 1000.0 + ], + [ + 1185.0, + 1028.0 + ] + ], + "center_px": [ + 1153.25, + 1024.0 + ], + "quality": { + "area_px": 1532.0, + "perimeter_px": 160.4264144897461, + "sharpness": { + "laplacian_var": 789.6627377718634 + }, + "contrast": { + "p05": 9.0, + "p95": 170.0, + "dynamic_range": 161.0, + "mean_gray": 94.95602294455067, + "std_gray": 70.53110441036318 + }, + "geometry": { + "distance_to_center_norm": 0.7217618823051453, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.173112932994049, + "edge_lengths_px": [ + 43.27817153930664, + 37.735923767089844, + 42.52058410644531, + 36.8917350769043 + ] + }, + "confidence": 0.5455570235395628 + }, + { + "observation_id": "25ca768f-283c-4238-99cf-16470b0918f2", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 800.0, + 233.0 + ], + [ + 834.0, + 221.0 + ], + [ + 852.0, + 261.0 + ], + [ + 816.0, + 271.0 + ] + ], + "center_px": [ + 825.5, + 246.5 + ], + "quality": { + "area_px": 1552.0, + "perimeter_px": 158.51307678222656, + "sharpness": { + "laplacian_var": 863.8906785031452 + }, + "contrast": { + "p05": 15.0, + "p95": 181.0, + "dynamic_range": 166.0, + "mean_gray": 73.38709677419355, + "std_gray": 69.59383427424181 + }, + "geometry": { + "distance_to_center_norm": 0.34653934836387634, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.2165525994378175, + "edge_lengths_px": [ + 36.055511474609375, + 43.863426208496094, + 37.36308288574219, + 41.231056213378906 + ] + }, + "confidence": 0.8219948734334308 + }, + { + "observation_id": "d83a7fc6-6d1c-441b-9091-167bc3e1b794", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 656.0, + 1024.0 + ], + [ + 631.0, + 996.0 + ], + [ + 666.0, + 976.0 + ], + [ + 692.0, + 1003.0 + ] + ], + "center_px": [ + 661.25, + 999.75 + ], + "quality": { + "area_px": 1499.0, + "perimeter_px": 157.00859832763672, + "sharpness": { + "laplacian_var": 776.3919478120264 + }, + "contrast": { + "p05": 15.0, + "p95": 173.0, + "dynamic_range": 158.0, + "mean_gray": 113.47134387351778, + "std_gray": 66.47315254195442 + }, + "geometry": { + "distance_to_center_norm": 0.5149872303009033, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1118898476800905, + "edge_lengths_px": [ + 37.53664779663086, + 40.31128692626953, + 37.48332977294922, + 41.67733383178711 + ] + }, + "confidence": 0.8987700853806685 + }, + { + "observation_id": "3262a8ec-b6d8-43b6-b73d-9802a649118a", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1156.0, + 984.0 + ], + [ + 1124.0, + 957.0 + ], + [ + 1153.0, + 939.0 + ], + [ + 1186.0, + 964.0 + ] + ], + "center_px": [ + 1154.75, + 961.0 + ], + "quality": { + "area_px": 1384.5, + "perimeter_px": 153.4569320678711, + "sharpness": { + "laplacian_var": 641.3717713382066 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 48.07235421166307, + "std_gray": 59.88033560428563 + }, + "geometry": { + "distance_to_center_norm": 0.6724274754524231, + "distance_to_border_px": 96.0 + }, + "edge_ratio": 1.2266707527132645, + "edge_lengths_px": [ + 41.86884307861328, + 34.13209533691406, + 41.400482177734375, + 36.055511474609375 + ] + }, + "confidence": 0.7524431457735686 + }, + { + "observation_id": "bc646329-9fb7-463d-a0b5-89bc21afd927", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 995.0, + 954.0 + ], + [ + 967.0, + 928.0 + ], + [ + 1000.0, + 911.0 + ], + [ + 1028.0, + 936.0 + ] + ], + "center_px": [ + 997.5, + 932.25 + ], + "quality": { + "area_px": 1331.5, + "perimeter_px": 150.4579086303711, + "sharpness": { + "laplacian_var": 806.253992719468 + }, + "contrast": { + "p05": 12.0, + "p95": 170.0, + "dynamic_range": 158.0, + "mean_gray": 85.1743119266055, + "std_gray": 67.17068414131862 + }, + "geometry": { + "distance_to_center_norm": 0.5338727831840515, + "distance_to_border_px": 126.0 + }, + "edge_ratio": 1.0293233343863084, + "edge_lengths_px": [ + 38.20994567871094, + 37.121421813964844, + 37.53664779663086, + 37.58989334106445 + ] + }, + "confidence": 0.8623788434718633 + }, + { + "observation_id": "e3faeb54-ef28-4b8c-a9d6-06079a2bf42d", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 731.0, + 951.0 + ], + [ + 707.0, + 925.0 + ], + [ + 742.0, + 908.0 + ], + [ + 766.0, + 933.0 + ] + ], + "center_px": [ + 736.5, + 929.25 + ], + "quality": { + "area_px": 1312.5, + "perimeter_px": 148.30654907226562, + "sharpness": { + "laplacian_var": 893.1018320987654 + }, + "contrast": { + "p05": 14.0, + "p95": 172.0, + "dynamic_range": 158.0, + "mean_gray": 77.58333333333333, + "std_gray": 66.11167950269201 + }, + "geometry": { + "distance_to_center_norm": 0.432888388633728, + "distance_to_border_px": 129.0 + }, + "edge_ratio": 1.135675442614228, + "edge_lengths_px": [ + 35.38361358642578, + 38.910152435302734, + 34.65544509887695, + 39.357337951660156 + ] + }, + "confidence": 0.7704666026640716 + }, + { + "observation_id": "7d62f99e-5ed6-41d7-abed-884652d31181", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1109.0, + 937.0 + ], + [ + 1078.0, + 911.0 + ], + [ + 1108.0, + 894.0 + ], + [ + 1138.0, + 918.0 + ] + ], + "center_px": [ + 1108.25, + 915.0 + ], + "quality": { + "area_px": 1286.5, + "perimeter_px": 148.03035736083984, + "sharpness": { + "laplacian_var": 849.6744027531824 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 73.16531791907515, + "std_gray": 67.17306919368005 + }, + "geometry": { + "distance_to_center_norm": 0.5997561812400818, + "distance_to_border_px": 143.0 + }, + "edge_ratio": 1.1733657712426009, + "edge_lengths_px": [ + 40.45985794067383, + 34.48188018798828, + 38.41874694824219, + 34.66987228393555 + ] + }, + "confidence": 0.7309457014059588 + }, + { + "observation_id": "5a375624-39be-4121-8408-d84c40b846b8", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 843.0 + ], + [ + 378.0, + 825.0 + ], + [ + 398.0, + 848.0 + ], + [ + 360.0, + 866.0 + ] + ], + "center_px": [ + 369.0, + 845.5 + ], + "quality": { + "area_px": 1234.0, + "perimeter_px": 145.0541877746582, + "sharpness": { + "laplacian_var": 1107.6063181860204 + }, + "contrast": { + "p05": 14.0, + "p95": 171.0, + "dynamic_range": 157.0, + "mean_gray": 78.54927884615384, + "std_gray": 65.48572197917484 + }, + "geometry": { + "distance_to_center_norm": 0.5170324444770813, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.3795367307347286, + "edge_lengths_px": [ + 42.04759216308594, + 30.479501724243164, + 42.04759216308594, + 30.479501724243164 + ] + }, + "confidence": 0.5963354569243849 + }, + { + "observation_id": "7370bf64-e4df-4369-95eb-63072bdcee96", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 841.0 + ], + [ + 1306.0, + 818.0 + ], + [ + 1334.0, + 803.0 + ], + [ + 1364.0, + 826.0 + ] + ], + "center_px": [ + 1335.0, + 822.0 + ], + "quality": { + "area_px": 1094.0, + "perimeter_px": 139.1337547302246, + "sharpness": { + "laplacian_var": 703.797937840674 + }, + "contrast": { + "p05": 9.0, + "p95": 164.0, + "dynamic_range": 155.0, + "mean_gray": 113.10478654592497, + "std_gray": 58.52400257567041 + }, + "geometry": { + "distance_to_center_norm": 0.7517461776733398, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.1900645633213587, + "edge_lengths_px": [ + 37.80211639404297, + 31.764760971069336, + 37.80211639404297, + 31.764760971069336 + ] + }, + "confidence": 0.6128519038478318 + }, + { + "observation_id": "ecd54b21-66c0-4bb4-9005-e70f61d322d7", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 763.0, + 197.0 + ], + [ + 797.0, + 187.0 + ], + [ + 824.0, + 204.0 + ], + [ + 790.0, + 216.0 + ] + ], + "center_px": [ + 793.5, + 201.0 + ], + "quality": { + "area_px": 909.0, + "perimeter_px": 136.41686248779297, + "sharpness": { + "laplacian_var": 1069.7927531569794 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 91.46811819595645, + "std_gray": 62.54740157586658 + }, + "geometry": { + "distance_to_center_norm": 0.38541823625564575, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.130050277403289, + "edge_lengths_px": [ + 35.44009017944336, + 31.906112670898438, + 36.055511474609375, + 33.0151481628418 + ] + }, + "confidence": 0.5362593259058441 + }, + { + "observation_id": "5cb4747f-4e46-40bb-b0b5-85ad591b39de", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 943.0, + 784.0 + ], + [ + 970.0, + 761.0 + ], + [ + 976.0, + 794.0 + ], + [ + 950.0, + 816.0 + ] + ], + "center_px": [ + 959.75, + 788.75 + ], + "quality": { + "area_px": 1007.5, + "perimeter_px": 135.82476806640625, + "sharpness": { + "laplacian_var": 990.0324116822271 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 69.03362573099415, + "std_gray": 62.62781348056947 + }, + "geometry": { + "distance_to_center_norm": 0.3838669955730438, + "distance_to_border_px": 264.0 + }, + "edge_ratio": 1.0827805673411812, + "edge_lengths_px": [ + 35.46829605102539, + 33.541019439697266, + 34.058773040771484, + 32.75667953491211 + ] + }, + "confidence": 0.6203165137290706 + }, + { + "observation_id": "18935861-b2c9-4070-8bfe-e9c34561decd", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 736.0, + 748.0 + ], + [ + 769.0, + 734.0 + ], + [ + 791.0, + 755.0 + ], + [ + 758.0, + 770.0 + ] + ], + "center_px": [ + 763.5, + 751.75 + ], + "quality": { + "area_px": 1028.5, + "perimeter_px": 133.62254524230957, + "sharpness": { + "laplacian_var": 740.3312400344904 + }, + "contrast": { + "p05": 9.0, + "p95": 168.0, + "dynamic_range": 159.0, + "mean_gray": 80.6958981612447, + "std_gray": 67.7872078040809 + }, + "geometry": { + "distance_to_center_norm": 0.24019105732440948, + "distance_to_border_px": 310.0 + }, + "edge_ratio": 1.1918643121358203, + "edge_lengths_px": [ + 35.84689712524414, + 30.4138126373291, + 36.24913787841797, + 31.11269760131836 + ] + }, + "confidence": 0.5752892000247514 + }, + { + "observation_id": "8d493240-cd3a-45e0-92b9-85d82d0cc676", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1296.0, + 787.0 + ], + [ + 1266.0, + 766.0 + ], + [ + 1291.0, + 751.0 + ], + [ + 1321.0, + 771.0 + ] + ], + "center_px": [ + 1293.5, + 768.75 + ], + "quality": { + "area_px": 977.5, + "perimeter_px": 131.51158332824707, + "sharpness": { + "laplacian_var": 482.2934957475995 + }, + "contrast": { + "p05": 7.0, + "p95": 157.0, + "dynamic_range": 150.0, + "mean_gray": 38.02962962962963, + "std_gray": 51.115372876535595 + }, + "geometry": { + "distance_to_center_norm": 0.6860414743423462, + "distance_to_border_px": 119.0 + }, + "edge_ratio": 1.2560441794117048, + "edge_lengths_px": [ + 36.619667053222656, + 29.154760360717773, + 36.055511474609375, + 29.681644439697266 + ] + }, + "confidence": 0.5188246379772157 + }, + { + "observation_id": "eca5e519-8d70-40be-933e-4fcb7d4a225e", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 664.0, + 678.0 + ], + [ + 696.0, + 665.0 + ], + [ + 717.0, + 685.0 + ], + [ + 684.0, + 698.0 + ] + ], + "center_px": [ + 690.25, + 681.5 + ], + "quality": { + "area_px": 916.5, + "perimeter_px": 127.29240036010742, + "sharpness": { + "laplacian_var": 950.4938833487939 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 81.41071428571429, + "std_gray": 66.26803955921937 + }, + "geometry": { + "distance_to_center_norm": 0.1606595665216446, + "distance_to_border_px": 382.0 + }, + "edge_ratio": 1.25399363306104, + "edge_lengths_px": [ + 34.539833068847656, + 29.0, + 35.46829605102539, + 28.284271240234375 + ] + }, + "confidence": 0.4872433032283655 + }, + { + "observation_id": "68a5fa9a-bc0d-4406-893f-3be93f040e0f", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 132.0, + 733.0 + ], + [ + 120.0, + 713.0 + ], + [ + 156.0, + 700.0 + ], + [ + 169.0, + 720.0 + ] + ], + "center_px": [ + 144.25, + 716.5 + ], + "quality": { + "area_px": 892.5, + "perimeter_px": 124.6701889038086, + "sharpness": { + "laplacian_var": 1275.08402176 + }, + "contrast": { + "p05": 10.200000000000003, + "p95": 164.0, + "dynamic_range": 153.8, + "mean_gray": 105.7888, + "std_gray": 57.0930485660032 + }, + "geometry": { + "distance_to_center_norm": 0.6691069006919861, + "distance_to_border_px": 120.0 + }, + "edge_ratio": 1.6814297415391983, + "edge_lengths_px": [ + 23.323806762695312, + 38.27531814575195, + 23.853721618652344, + 39.217342376708984 + ] + }, + "confidence": 0.3538655141518615 + }, + { + "observation_id": "afdb456b-3357-4ee5-b143-a54cb829a35f", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 624.0 + ], + [ + 815.0, + 612.0 + ], + [ + 837.0, + 630.0 + ], + [ + 807.0, + 643.0 + ] + ], + "center_px": [ + 811.25, + 627.25 + ], + "quality": { + "area_px": 814.5, + "perimeter_px": 120.82522010803223, + "sharpness": { + "laplacian_var": 1125.3635571955213 + }, + "contrast": { + "p05": 8.0, + "p95": 149.0, + "dynamic_range": 141.0, + "mean_gray": 86.07050092764378, + "std_gray": 55.3312393682571 + }, + "geometry": { + "distance_to_center_norm": 0.14027805626392365, + "distance_to_border_px": 437.0 + }, + "edge_ratio": 1.1545204961681088, + "edge_lengths_px": [ + 31.38471031188965, + 28.42534065246582, + 32.69556427001953, + 28.319604873657227 + ] + }, + "confidence": 0.4703251278796996 + }, + { + "observation_id": "40a72f06-ff83-491c-8184-292ca16a4eb7", + "type": "aruco", + "marker_id": 74, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 344.0, + 702.0 + ], + [ + 330.0, + 683.0 + ], + [ + 364.0, + 671.0 + ], + [ + 379.0, + 689.0 + ] + ], + "center_px": [ + 354.25, + 686.25 + ], + "quality": { + "area_px": 819.5, + "perimeter_px": 120.42341613769531, + "sharpness": { + "laplacian_var": 1054.273602937478 + }, + "contrast": { + "p05": 7.0, + "p95": 158.0, + "dynamic_range": 151.0, + "mean_gray": 89.94680851063829, + "std_gray": 62.538561214266565 + }, + "geometry": { + "distance_to_center_norm": 0.4376735985279083, + "distance_to_border_px": 330.0 + }, + "edge_ratio": 1.593474715740479, + "edge_lengths_px": [ + 23.600847244262695, + 36.055511474609375, + 23.430749893188477, + 37.336307525634766 + ] + }, + "confidence": 0.3428566063437381 + }, + { + "observation_id": "3686629d-504f-4f52-9602-c4ca57dc5c3a", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1374.0, + 670.0 + ], + [ + 1347.0, + 651.0 + ], + [ + 1371.0, + 639.0 + ], + [ + 1398.0, + 658.0 + ] + ], + "center_px": [ + 1372.5, + 654.5 + ], + "quality": { + "area_px": 780.0, + "perimeter_px": 119.69592666625977, + "sharpness": { + "laplacian_var": 1109.98644924121 + }, + "contrast": { + "p05": 10.700000000000003, + "p95": 158.0, + "dynamic_range": 147.3, + "mean_gray": 106.3378640776699, + "std_gray": 52.12042090245902 + }, + "geometry": { + "distance_to_center_norm": 0.7360777258872986, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2304019519874827, + "edge_lengths_px": [ + 33.0151481628418, + 26.832815170288086, + 33.0151481628418, + 26.832815170288086 + ] + }, + "confidence": 0.35500593874581543 + }, + { + "observation_id": "4f522e5a-d674-41ff-9e97-3984f0939ab1", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1196.0, + 524.0 + ], + [ + 1220.0, + 514.0 + ], + [ + 1244.0, + 530.0 + ], + [ + 1219.0, + 540.0 + ] + ], + "center_px": [ + 1219.75, + 527.0 + ], + "quality": { + "area_px": 627.0, + "perimeter_px": 109.78808403015137, + "sharpness": { + "laplacian_var": 963.0183950617284 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 73.82444444444444, + "std_gray": 53.419454032550746 + }, + "geometry": { + "distance_to_center_norm": 0.5554656386375427, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.109400382408729, + "edge_lengths_px": [ + 26.0, + 28.844409942626953, + 26.925823211669922, + 28.017850875854492 + ] + }, + "confidence": 0.3767801116964092 + }, + { + "observation_id": "4e2a423f-0d0b-40ea-852f-a6d59a2b95ec", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1299.0, + 475.0 + ], + [ + 1322.0, + 465.0 + ], + [ + 1346.0, + 479.0 + ], + [ + 1325.0, + 490.0 + ] + ], + "center_px": [ + 1323.0, + 477.25 + ], + "quality": { + "area_px": 581.5, + "perimeter_px": 106.58796119689941, + "sharpness": { + "laplacian_var": 922.4211295765532 + }, + "contrast": { + "p05": 9.0, + "p95": 150.0, + "dynamic_range": 141.0, + "mean_gray": 80.53125, + "std_gray": 49.781966772569284 + }, + "geometry": { + "distance_to_center_norm": 0.673617959022522, + "distance_to_border_px": 94.0 + }, + "edge_ratio": 1.2661764925954944, + "edge_lengths_px": [ + 25.079872131347656, + 27.784887313842773, + 23.706539154052734, + 30.01666259765625 + ] + }, + "confidence": 0.3061711135325228 + }, + { + "observation_id": "e4c1cffa-56e0-4c14-a233-cd05b08a0aab", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1117.0, + 472.0 + ], + [ + 1139.0, + 461.0 + ], + [ + 1163.0, + 476.0 + ], + [ + 1140.0, + 486.0 + ] + ], + "center_px": [ + 1139.75, + 473.75 + ], + "quality": { + "area_px": 573.0, + "perimeter_px": 104.90438652038574, + "sharpness": { + "laplacian_var": 1036.3509780861898 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 74.53349875930522, + "std_gray": 50.45210729924828 + }, + "geometry": { + "distance_to_center_norm": 0.47216224670410156, + "distance_to_border_px": 277.0 + }, + "edge_ratio": 1.1506375729114486, + "edge_lengths_px": [ + 24.59674835205078, + 28.301942825317383, + 25.079872131347656, + 26.925823211669922 + ] + }, + "confidence": 0.33198985414097737 + }, + { + "observation_id": "2c38cd07-6cdd-4aa6-b55d-29484812cc8f", + "type": "aruco", + "marker_id": 184, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 821.0, + 486.0 + ], + [ + 814.0, + 487.0 + ], + [ + 798.0, + 448.0 + ], + [ + 805.0, + 445.0 + ] + ], + "center_px": [ + 809.5, + 466.5 + ], + "quality": { + "area_px": 312.0, + "perimeter_px": 100.85268115997314, + "sharpness": { + "laplacian_var": 2032.911884279329 + }, + "contrast": { + "p05": 22.0, + "p95": 133.5, + "dynamic_range": 111.5, + "mean_gray": 67.10426540284361, + "std_gray": 39.568029255350964 + }, + "geometry": { + "distance_to_center_norm": 0.12868039309978485, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 6.224146785942024, + "edge_lengths_px": [ + 7.071067810058594, + 42.154476165771484, + 7.6157732009887695, + 44.0113639831543 + ] + }, + "confidence": 0.03341823500528502 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 712.0, + 776.0 + ], + [ + 506.0, + 896.0 + ], + [ + 441.0, + 876.0 + ], + [ + 650.0, + 774.0 + ] + ], + "center_px": [ + 577.25, + 830.5 + ], + "area_px": 9331.0 + }, + { + "image_points_px": [ + [ + 1134.0, + 576.0 + ], + [ + 1028.0, + 633.0 + ], + [ + 1010.0, + 609.0 + ], + [ + 1092.0, + 566.0 + ] + ], + "center_px": [ + 1066.0, + 596.0 + ], + "area_px": 3098.0 + }, + { + "image_points_px": [ + [ + 949.0, + 628.0 + ], + [ + 974.0, + 624.0 + ], + [ + 1004.0, + 689.0 + ], + [ + 973.0, + 699.0 + ] + ], + "center_px": [ + 975.0, + 660.0 + ], + "area_px": 2093.0 + }, + { + "image_points_px": [ + [ + 919.0, + 792.0 + ], + [ + 944.0, + 814.0 + ], + [ + 912.0, + 829.0 + ], + [ + 888.0, + 806.0 + ] + ], + "center_px": [ + 915.75, + 810.25 + ], + "area_px": 1064.0 + }, + { + "image_points_px": [ + [ + 964.0, + 655.0 + ], + [ + 985.0, + 654.0 + ], + [ + 1002.0, + 682.0 + ], + [ + 976.0, + 691.0 + ] + ], + "center_px": [ + 981.75, + 670.5 + ], + "area_px": 824.5 + }, + { + "image_points_px": [ + [ + 1299.0, + 626.0 + ], + [ + 1321.0, + 614.0 + ], + [ + 1348.0, + 632.0 + ], + [ + 1326.0, + 644.0 + ] + ], + "center_px": [ + 1323.5, + 629.0 + ], + "area_px": 720.0 + }, + { + "image_points_px": [ + [ + 92.0, + 604.0 + ], + [ + 58.0, + 618.0 + ], + [ + 46.0, + 601.0 + ], + [ + 78.0, + 589.0 + ] + ], + "center_px": [ + 68.5, + 603.0 + ], + "area_px": 697.0 + }, + { + "image_points_px": [ + [ + 180.0, + 565.0 + ], + [ + 147.0, + 577.0 + ], + [ + 137.0, + 560.0 + ], + [ + 168.0, + 550.0 + ] + ], + "center_px": [ + 158.0, + 563.0 + ], + "area_px": 633.0 + }, + { + "image_points_px": [ + [ + 871.0, + 624.0 + ], + [ + 879.0, + 625.0 + ], + [ + 895.0, + 667.0 + ], + [ + 885.0, + 663.0 + ] + ], + "center_px": [ + 882.5, + 644.75 + ], + "area_px": 327.0 + }, + { + "image_points_px": [ + [ + 1217.0, + 427.0 + ], + [ + 1239.0, + 418.0 + ], + [ + 1261.0, + 431.0 + ], + [ + 1241.0, + 441.0 + ] + ], + "center_px": [ + 1239.5, + 429.25 + ], + "area_px": 502.0 + }, + { + "image_points_px": [ + [ + 385.0, + 633.0 + ], + [ + 402.0, + 652.0 + ], + [ + 378.0, + 660.0 + ], + [ + 362.0, + 643.0 + ] + ], + "center_px": [ + 381.75, + 647.0 + ], + "area_px": 571.5 + }, + { + "image_points_px": [ + [ + 717.0, + 471.0 + ], + [ + 742.0, + 462.0 + ], + [ + 760.0, + 475.0 + ], + [ + 736.0, + 485.0 + ] + ], + "center_px": [ + 738.75, + 473.25 + ], + "area_px": 506.5 + }, + { + "image_points_px": [ + [ + 488.0, + 732.0 + ], + [ + 459.0, + 747.0 + ], + [ + 447.0, + 740.0 + ], + [ + 480.0, + 724.0 + ] + ], + "center_px": [ + 468.5, + 735.75 + ], + "area_px": 387.5 + }, + { + "image_points_px": [ + [ + 751.0, + 438.0 + ], + [ + 776.0, + 430.0 + ], + [ + 792.0, + 443.0 + ], + [ + 768.0, + 452.0 + ] + ], + "center_px": [ + 771.75, + 440.75 + ], + "area_px": 471.0 + }, + { + "image_points_px": [ + [ + 984.0, + 384.0 + ], + [ + 1007.0, + 376.0 + ], + [ + 1024.0, + 388.0 + ], + [ + 1002.0, + 397.0 + ] + ], + "center_px": [ + 1004.25, + 386.25 + ], + "area_px": 430.0 + }, + { + "image_points_px": [ + [ + 1088.0, + 340.0 + ], + [ + 1108.0, + 333.0 + ], + [ + 1127.0, + 343.0 + ], + [ + 1106.0, + 351.0 + ] + ], + "center_px": [ + 1107.25, + 341.75 + ], + "area_px": 354.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 297.0 + ], + [ + 1071.0, + 290.0 + ], + [ + 1089.0, + 300.0 + ], + [ + 1070.0, + 308.0 + ] + ], + "center_px": [ + 1070.25, + 298.75 + ], + "area_px": 343.5 + }, + { + "image_points_px": [ + [ + 1145.0, + 312.0 + ], + [ + 1165.0, + 306.0 + ], + [ + 1182.0, + 316.0 + ], + [ + 1163.0, + 324.0 + ] + ], + "center_px": [ + 1163.75, + 314.5 + ], + "area_px": 337.0 + }, + { + "image_points_px": [ + [ + 1227.0, + 309.0 + ], + [ + 1246.0, + 302.0 + ], + [ + 1264.0, + 312.0 + ], + [ + 1247.0, + 320.0 + ] + ], + "center_px": [ + 1246.0, + 310.75 + ], + "area_px": 331.5 + }, + { + "image_points_px": [ + [ + 935.0, + 285.0 + ], + [ + 955.0, + 278.0 + ], + [ + 972.0, + 287.0 + ], + [ + 952.0, + 295.0 + ] + ], + "center_px": [ + 953.5, + 286.25 + ], + "area_px": 317.5 + }, + { + "image_points_px": [ + [ + 891.0, + 293.0 + ], + [ + 911.0, + 286.0 + ], + [ + 927.0, + 296.0 + ], + [ + 907.0, + 304.0 + ] + ], + "center_px": [ + 909.0, + 294.75 + ], + "area_px": 330.0 + }, + { + "image_points_px": [ + [ + 1018.0, + 751.0 + ], + [ + 1017.0, + 775.0 + ], + [ + 1013.0, + 785.0 + ], + [ + 1005.0, + 755.0 + ] + ], + "center_px": [ + 1013.25, + 766.5 + ], + "area_px": 254.0 + }, + { + "image_points_px": [ + [ + 278.0, + 1016.0 + ], + [ + 276.0, + 1020.0 + ], + [ + 247.0, + 1035.0 + ], + [ + 268.0, + 1019.0 + ] + ], + "center_px": [ + 267.25, + 1022.5 + ], + "area_px": 91.5 + }, + { + "image_points_px": [ + [ + 1273.0, + 316.0 + ], + [ + 1258.0, + 325.0 + ], + [ + 1242.0, + 330.0 + ], + [ + 1245.0, + 326.0 + ] + ], + "center_px": [ + 1254.5, + 324.25 + ], + "area_px": 75.5 + }, + { + "image_points_px": [ + [ + 627.0, + 394.0 + ], + [ + 630.0, + 413.0 + ], + [ + 628.0, + 428.0 + ], + [ + 625.0, + 409.0 + ] + ], + "center_px": [ + 627.5, + 411.0 + ], + "area_px": 83.0 + }, + { + "image_points_px": [ + [ + 356.0, + 962.0 + ], + [ + 333.0, + 980.0 + ], + [ + 330.0, + 980.0 + ], + [ + 348.0, + 965.0 + ] + ], + "center_px": [ + 341.75, + 971.75 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 702.0, + 632.0 + ], + [ + 679.0, + 644.0 + ], + [ + 673.0, + 642.0 + ], + [ + 695.0, + 632.0 + ] + ], + "center_px": [ + 687.25, + 637.5 + ], + "area_px": 94.0 + }, + { + "image_points_px": [ + [ + 1001.0, + 496.0 + ], + [ + 997.0, + 501.0 + ], + [ + 977.0, + 510.0 + ], + [ + 973.0, + 509.0 + ] + ], + "center_px": [ + 987.0, + 504.0 + ], + "area_px": 72.0 + }, + { + "image_points_px": [ + [ + 921.0, + 598.0 + ], + [ + 901.0, + 617.0 + ], + [ + 902.0, + 613.0 + ], + [ + 915.0, + 599.0 + ] + ], + "center_px": [ + 909.75, + 606.75 + ], + "area_px": 66.0 + }, + { + "image_points_px": [ + [ + 68.0, + 1031.0 + ], + [ + 60.0, + 1038.0 + ], + [ + 45.0, + 1046.0 + ], + [ + 50.0, + 1041.0 + ] + ], + "center_px": [ + 55.75, + 1039.0 + ], + "area_px": 40.5 + }, + { + "image_points_px": [ + [ + 842.0, + 934.0 + ], + [ + 834.0, + 942.0 + ], + [ + 823.0, + 947.0 + ], + [ + 820.0, + 946.0 + ] + ], + "center_px": [ + 829.75, + 942.25 + ], + "area_px": 53.0 + }, + { + "image_points_px": [ + [ + 806.0, + 955.0 + ], + [ + 791.0, + 965.0 + ], + [ + 783.0, + 965.0 + ], + [ + 802.0, + 955.0 + ] + ], + "center_px": [ + 795.5, + 960.0 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 342.0, + 1004.0 + ], + [ + 320.0, + 1016.0 + ], + [ + 322.0, + 1012.0 + ], + [ + 330.0, + 1007.0 + ] + ], + "center_px": [ + 328.5, + 1009.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 1340.0, + 651.0 + ], + [ + 1334.0, + 656.0 + ], + [ + 1318.0, + 660.0 + ], + [ + 1329.0, + 652.0 + ] + ], + "center_px": [ + 1330.25, + 654.75 + ], + "area_px": 66.5 + }, + { + "image_points_px": [ + [ + 229.0, + 651.0 + ], + [ + 218.0, + 658.0 + ], + [ + 208.0, + 661.0 + ], + [ + 211.0, + 658.0 + ] + ], + "center_px": [ + 216.5, + 657.0 + ], + "area_px": 35.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/render_a_camera_pose.json b/data/camera_study/Scene10/k4_abcf/render_a_camera_pose.json new file mode 100644 index 0000000..57e6617 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/render_a_camera_pose.json @@ -0,0 +1,467 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:40Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abcf\\render_a_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "a", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 19, + "used_marker_ids": [ + 95, + 97, + 103, + 54, + 55, + 51, + 47, + 210, + 85, + 215, + 105, + 211, + 75, + 214, + 74, + 102, + 217, + 205, + 206 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.01009749778311845, + 0.0013500052634516154, + 0.0012080581027067798, + 0.001208056584232894 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.418903298149159, + "residual_median_px": 2.9058066287550095, + "residual_max_px": 7.881774161943574, + "sigma2_normalized": 1.7330383439497478e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8081126809120178, + -0.5890257358551025, + -0.0016104801325127482 + ], + [ + -0.3439487814903259, + -0.46965670585632324, + -0.8130939602851868 + ], + [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + ], + "translation_m": [ + -0.2276943325996399, + 0.17315705120563507, + 1.1353343725204468 + ], + "rvec_rad": [ + 2.1050851025918234, + -0.6867341612291594, + 0.3507860528401858 + ] + }, + "camera_in_world": { + "position_m": [ + -0.29933083057403564, + -0.7994182705879211, + 0.8013386726379395 + ], + "position_mm": [ + -299.3308410644531, + -799.4182739257812, + 801.3386840820312 + ], + "orientation_deg": { + "roll": 131.5152587890625, + "pitch": -28.5664005279541, + "yaw": -23.05556297302246 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.5705111713147538e-05, + -3.606186641991224e-06, + 9.93455859227922e-07, + 5.974998436558746e-07, + 4.6929081989455075e-07, + 2.8925877037560832e-06 + ], + [ + -3.606186641991253e-06, + 4.525067031199804e-06, + -1.5535915979518367e-06, + -4.146706877795486e-07, + -8.403171882148325e-07, + 3.704138848703875e-08 + ], + [ + 9.93455859228011e-07, + -1.5535915979518793e-06, + 1.4511663564702391e-05, + 8.397716382398054e-07, + -1.8034796850892003e-06, + -4.925606373863842e-06 + ], + [ + 5.974998436558832e-07, + -4.146706877795502e-07, + 8.397716382397962e-07, + 2.430616306834126e-07, + 1.4873676074531513e-08, + 1.58103612736764e-07 + ], + [ + 4.692908198945444e-07, + -8.403171882148285e-07, + -1.8034796850892121e-06, + 1.4873676074530825e-08, + 6.717933155003761e-07, + 1.166485422903723e-06 + ], + [ + 2.892587703756058e-06, + 3.704138848704778e-08, + -4.925606373863879e-06, + 1.5810361273676463e-07, + 1.166485422903725e-06, + 5.922812492193122e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.22706131431744284, + 0.12188075641483156, + 0.21826355925678265 + ], + "tvec_std_m": [ + 0.0004930128098573226, + 0.0008196299869455584, + 0.0024336829070758423 + ] + }, + "camera_center_std_m": [ + 0.0031789461102063005, + 0.004041324498858458, + 0.00434604702092401 + ], + "camera_center_std_mm": [ + 3.1789461102063004, + 4.041324498858458, + 4.3460470209240105 + ], + "orientation_std_deg": { + "roll": 0.2878030578767992, + "pitch": 0.1683177033483575, + "yaw": 0.1374718863525747 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 881.25, + 1031.25 + ], + "projected_center_px": [ + 877.61865234375, + 1028.5360107421875 + ], + "reprojection_error_px": 4.53347807892285, + "confidence": 0.45573027871641286 + }, + { + "marker_id": 97, + "observed_center_px": [ + 1153.25, + 1024.0 + ], + "projected_center_px": [ + 1152.7294921875, + 1027.8443603515625 + ], + "reprojection_error_px": 3.879437445756702, + "confidence": 0.5455570235395628 + }, + { + "marker_id": 103, + "observed_center_px": [ + 661.25, + 999.75 + ], + "projected_center_px": [ + 660.6806030273438, + 996.0768432617188 + ], + "reprojection_error_px": 3.7170274866418533, + "confidence": 0.8987700853806685 + }, + { + "marker_id": 54, + "observed_center_px": [ + 1154.75, + 961.0 + ], + "projected_center_px": [ + 1162.5029296875, + 962.4193115234375 + ], + "reprojection_error_px": 7.881774161943574, + "confidence": 0.7524431457735686 + }, + { + "marker_id": 55, + "observed_center_px": [ + 997.5, + 932.25 + ], + "projected_center_px": [ + 999.1104736328125, + 934.5891723632812 + ], + "reprojection_error_px": 2.8399564551455856, + "confidence": 0.8623788434718633 + }, + { + "marker_id": 51, + "observed_center_px": [ + 736.5, + 929.25 + ], + "projected_center_px": [ + 735.853271484375, + 928.2763061523438 + ], + "reprojection_error_px": 1.1689043938176247, + "confidence": 0.7704666026640716 + }, + { + "marker_id": 47, + "observed_center_px": [ + 1108.25, + 915.0 + ], + "projected_center_px": [ + 1107.45166015625, + 913.0933837890625 + ], + "reprojection_error_px": 2.0670103729610174, + "confidence": 0.7309457014059588 + }, + { + "marker_id": 210, + "observed_center_px": [ + 369.0, + 845.5 + ], + "projected_center_px": [ + 367.08258056640625, + 847.7832641601562 + ], + "reprojection_error_px": 2.98157550791138, + "confidence": 0.5963354569243849 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1335.0, + 822.0 + ], + "projected_center_px": [ + 1332.3167724609375, + 822.3063354492188 + ], + "reprojection_error_px": 2.7006575928524246, + "confidence": 0.6128519038478318 + }, + { + "marker_id": 215, + "observed_center_px": [ + 763.5, + 751.75 + ], + "projected_center_px": [ + 764.8435668945312, + 753.69775390625 + ], + "reprojection_error_px": 2.366203135699148, + "confidence": 0.5752892000247514 + }, + { + "marker_id": 105, + "observed_center_px": [ + 1293.5, + 768.75 + ], + "projected_center_px": [ + 1294.0775146484375, + 765.9021606445312 + ], + "reprojection_error_px": 2.9058066287550095, + "confidence": 0.5188246379772157 + }, + { + "marker_id": 211, + "observed_center_px": [ + 690.25, + 681.5 + ], + "projected_center_px": [ + 687.66943359375, + 684.4354248046875 + ], + "reprojection_error_px": 3.908457721536807, + "confidence": 0.4872433032283655 + }, + { + "marker_id": 75, + "observed_center_px": [ + 144.25, + 716.5 + ], + "projected_center_px": [ + 147.21554565429688, + 715.9539184570312 + ], + "reprojection_error_px": 3.01540479526219, + "confidence": 0.3538655141518615 + }, + { + "marker_id": 214, + "observed_center_px": [ + 811.25, + 627.25 + ], + "projected_center_px": [ + 813.1135864257812, + 626.0042114257812 + ], + "reprojection_error_px": 2.2416385832712016, + "confidence": 0.4703251278796996 + }, + { + "marker_id": 74, + "observed_center_px": [ + 354.25, + 686.25 + ], + "projected_center_px": [ + 353.1841125488281, + 685.2387084960938 + ], + "reprojection_error_px": 1.4692945805517152, + "confidence": 0.3428566063437381 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1372.5, + 654.5 + ], + "projected_center_px": [ + 1370.1954345703125, + 654.4063110351562 + ], + "reprojection_error_px": 2.306469042030312, + "confidence": 0.35500593874581543 + }, + { + "marker_id": 217, + "observed_center_px": [ + 1219.75, + 527.0 + ], + "projected_center_px": [ + 1223.6787109375, + 525.702392578125 + ], + "reprojection_error_px": 4.137457510565784, + "confidence": 0.3767801116964092 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1323.0, + 477.25 + ], + "projected_center_px": [ + 1319.5634765625, + 478.1280212402344 + ], + "reprojection_error_px": 3.5469162147969504, + "confidence": 0.3061711135325228 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1139.75, + 473.75 + ], + "projected_center_px": [ + 1139.77392578125, + 473.96392822265625 + ], + "reprojection_error_px": 0.2152619972435565, + "confidence": 0.33198985414097737 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/render_b_aruco_detection.json b/data/camera_study/Scene10/k4_abcf/render_b_aruco_detection.json new file mode 100644 index 0000000..fa05b1d --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:39Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "8a612cb8-e4f6-41fa-9a54-42653a070e57", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "4cf5bf59-9935-4f82-859d-df00bd7fa66b", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "2700fe9a-b292-4a4e-bbca-9cef744370e3", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "06f08f1b-1063-419c-8e0e-e143dc859609", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "659c4eab-20f9-49e7-b407-4109f5c20269", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "bf7d8a91-d5d3-4185-bc0b-e8012ced4294", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "d03e059c-f0c5-4b74-9301-67db9fc3079b", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "71f88f9a-c4c2-477a-a496-7d3f3f38a107", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "7b06b763-e7a0-47d2-a67e-952910c32024", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "67817377-fc8a-43eb-a92b-f9a3bfc6e2d0", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "1646a3c0-b050-45ba-9912-6708c2758b5a", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "9e3cd908-e0be-4306-ae1c-2860587ccd75", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "b379c1bb-975b-4eb5-82ae-e167030f117b", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "797b85a2-edc6-4a82-b93c-20d4dd1b71c8", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "5b1a47c7-f30c-4247-920f-9fc7c1702f45", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "fe64f7bb-fb26-4aec-a492-7cea55506492", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "6c3d81b9-cd4d-4eeb-81bc-147eb94e88de", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "455465b1-04f5-44e1-81a3-2967cbad157c", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "03bdebaa-1a08-4a90-afc2-e8544fcccfe9", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "fad337a0-7f06-44e6-a4ef-a8a07458dc09", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "faf4e340-1c2e-43ef-8df6-3e211475bfa6", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "1ab71630-3815-46c3-bf57-94946a753a46", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "1d7963be-9372-4b1c-8677-79bfee8a246b", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "4974ad76-b7ee-474a-8489-028494e9b0d6", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "a55623ef-59e6-4984-9f46-0d399ae05573", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "9c7e8258-2043-4df9-b516-56ea2728dfef", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "9885109a-bbc9-42ec-8702-4bd6f6b2bf77", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "d8546e01-1853-4a6b-9aba-314aa5761447", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "4f42d6c6-a387-4f26-b5cd-84b361b69cf1", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "627f2c2f-7e32-412f-9683-cdbedbdcde8c", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "880e3367-c12a-4a3f-84d5-f82694df3e8e", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "41e3cbb2-f79b-46e7-add3-a6488f1c1d8c", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "9bc33723-de09-418f-aeb1-40dc579397a5", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "b7555163-ed08-4d32-800e-607de5d9474c", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "06228cc6-014c-4f16-9ba7-92dbcfb39212", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "1f89f1ec-5424-40e3-aceb-3e5814677e3b", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/render_b_camera_pose.json b/data/camera_study/Scene10/k4_abcf/render_b_camera_pose.json new file mode 100644 index 0000000..a45d6d7 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:41Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abcf\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/render_c_aruco_detection.json b/data/camera_study/Scene10/k4_abcf/render_c_aruco_detection.json new file mode 100644 index 0000000..00c2c17 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/render_c_aruco_detection.json @@ -0,0 +1,1590 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:39Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "c", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.npz", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.png", + "image_sha256": "ef5a04a35de56c777fd09b581d604f04ac76571a3cacba21fe8388dea1f4b077", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 16, + "num_rejected_candidates": 27 + }, + "detections": [ + { + "observation_id": "c3c66934-781c-4325-95f0-3270ed0a4b2d", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 906.0 + ], + [ + 962.0, + 900.0 + ], + [ + 968.0, + 961.0 + ], + [ + 906.0, + 967.0 + ] + ], + "center_px": [ + 934.0, + 933.5 + ], + "quality": { + "area_px": 3818.0, + "perimeter_px": 247.16803741455078, + "sharpness": { + "laplacian_var": 454.5613926289 + }, + "contrast": { + "p05": 15.0, + "p95": 169.0, + "dynamic_range": 154.0, + "mean_gray": 63.889708737864076, + "std_gray": 64.10002098444608 + }, + "geometry": { + "distance_to_center_norm": 0.4976962208747864, + "distance_to_border_px": 113.0 + }, + "edge_ratio": 1.0162376014068253, + "edge_lengths_px": [ + 62.28964614868164, + 61.29437255859375, + 62.28964614868164, + 61.29437255859375 + ] + }, + "confidence": 0.9840218454972077 + }, + { + "observation_id": "b5a2f3e9-dd34-4fd1-8bcd-6160844d5ef4", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 930.0, + 548.0 + ], + [ + 989.0, + 541.0 + ], + [ + 989.0, + 599.0 + ], + [ + 930.0, + 606.0 + ] + ], + "center_px": [ + 959.5, + 573.5 + ], + "quality": { + "area_px": 3422.0, + "perimeter_px": 234.82760620117188, + "sharpness": { + "laplacian_var": 615.7225970995563 + }, + "contrast": { + "p05": 62.0, + "p95": 187.0, + "dynamic_range": 125.0, + "mean_gray": 96.38732088580113, + "std_gray": 49.78957244242085 + }, + "geometry": { + "distance_to_center_norm": 0.2687017321586609, + "distance_to_border_px": 451.0 + }, + "edge_ratio": 1.0243759155273438, + "edge_lengths_px": [ + 59.41380310058594, + 58.0, + 59.41380310058594, + 58.0 + ] + }, + "confidence": 0.976204130575644 + }, + { + "observation_id": "c5a80b3d-097f-4e37-ae82-72cb2dcea28b", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 876.0, + 137.0 + ], + [ + 933.0, + 136.0 + ], + [ + 934.0, + 184.0 + ], + [ + 876.0, + 186.0 + ] + ], + "center_px": [ + 904.75, + 160.75 + ], + "quality": { + "area_px": 2789.5, + "perimeter_px": 212.05365753173828, + "sharpness": { + "laplacian_var": 1207.1695390581717 + }, + "contrast": { + "p05": 35.0, + "p95": 183.0, + "dynamic_range": 148.0, + "mean_gray": 111.8242105263158, + "std_gray": 63.973025920534376 + }, + "geometry": { + "distance_to_center_norm": 0.46872973442077637, + "distance_to_border_px": 136.0 + }, + "edge_ratio": 1.2087892695501747, + "edge_lengths_px": [ + 57.00876998901367, + 48.010414123535156, + 58.03447341918945, + 49.0 + ] + }, + "confidence": 0.8272740544529559 + }, + { + "observation_id": "6a1855d5-b2e9-4745-86e2-3515fc3b39e2", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 967.0, + 151.0 + ], + [ + 1024.0, + 150.0 + ], + [ + 1025.0, + 197.0 + ], + [ + 966.0, + 195.0 + ] + ], + "center_px": [ + 995.5, + 173.25 + ], + "quality": { + "area_px": 2639.0, + "perimeter_px": 207.06465911865234, + "sharpness": { + "laplacian_var": 866.93707361974 + }, + "contrast": { + "p05": 32.0, + "p95": 181.0, + "dynamic_range": 149.0, + "mean_gray": 84.58143413007227, + "std_gray": 62.405948444667175 + }, + "geometry": { + "distance_to_center_norm": 0.5096668004989624, + "distance_to_border_px": 150.0 + }, + "edge_ratio": 1.3413328837775513, + "edge_lengths_px": [ + 57.00876998901367, + 47.01063537597656, + 59.03388977050781, + 44.0113639831543 + ] + }, + "confidence": 0.745527088834006 + }, + { + "observation_id": "7393a8a2-286d-4ed7-8cf9-30e790754475", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 806.0, + 242.0 + ], + [ + 809.0, + 286.0 + ], + [ + 756.0, + 287.0 + ], + [ + 750.0, + 243.0 + ] + ], + "center_px": [ + 780.25, + 264.5 + ], + "quality": { + "area_px": 2402.5, + "perimeter_px": 197.5277214050293, + "sharpness": { + "laplacian_var": 621.9365906774973 + }, + "contrast": { + "p05": 17.0, + "p95": 154.0, + "dynamic_range": 137.0, + "mean_gray": 67.55327102803739, + "std_gray": 57.80557538313361 + }, + "geometry": { + "distance_to_center_norm": 0.3133457899093628, + "distance_to_border_px": 242.0 + }, + "edge_ratio": 1.2699816583435075, + "edge_lengths_px": [ + 44.10215377807617, + 53.00943374633789, + 44.40720748901367, + 56.00892639160156 + ] + }, + "confidence": 0.7874129468171561 + }, + { + "observation_id": "d4d75a26-22eb-4d6a-a6ea-9c2e4db4d810", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 907.0 + ], + [ + 1083.0, + 943.0 + ], + [ + 1048.0, + 989.0 + ], + [ + 1034.0, + 955.0 + ] + ], + "center_px": [ + 1059.0, + 948.5 + ], + "quality": { + "area_px": 1871.0, + "perimeter_px": 193.12355041503906, + "sharpness": { + "laplacian_var": 160.55753056192668 + }, + "contrast": { + "p05": 14.0, + "p95": 100.0, + "dynamic_range": 86.0, + "mean_gray": 57.872306464485234, + "std_gray": 34.11093550486432 + }, + "geometry": { + "distance_to_center_norm": 0.5898244976997375, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.648246307313746, + "edge_lengths_px": [ + 37.947330474853516, + 57.80138397216797, + 36.769554138183594, + 60.605281829833984 + ] + }, + "confidence": 0.606705439328279 + }, + { + "observation_id": "046361b0-eeed-43df-b790-f0ab564fed07", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 244.0, + 1048.0 + ], + [ + 264.0, + 1017.0 + ], + [ + 321.0, + 1020.0 + ], + [ + 304.0, + 1051.0 + ] + ], + "center_px": [ + 283.25, + 1034.0 + ], + "quality": { + "area_px": 1869.0, + "perimeter_px": 189.40092086791992, + "sharpness": { + "laplacian_var": 1265.0345875985527 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 76.71025841816758, + "std_gray": 66.37082174674407 + }, + "geometry": { + "distance_to_center_norm": 0.7326483130455017, + "distance_to_border_px": 29.0 + }, + "edge_ratio": 1.6991763224534673, + "edge_lengths_px": [ + 36.8917350769043, + 57.07889175415039, + 35.35533905029297, + 60.074954986572266 + ] + }, + "confidence": 0.34134185624863755 + }, + { + "observation_id": "9294c674-e075-494e-b4ea-677b96fb867c", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1145.0, + 1043.0 + ], + [ + 1138.0, + 1012.0 + ], + [ + 1196.0, + 1014.0 + ], + [ + 1207.0, + 1045.0 + ] + ], + "center_px": [ + 1171.5, + 1028.5 + ], + "quality": { + "area_px": 1842.0, + "perimeter_px": 184.74098777770996, + "sharpness": { + "laplacian_var": 687.4367780505567 + }, + "contrast": { + "p05": 12.0, + "p95": 150.0, + "dynamic_range": 138.0, + "mean_gray": 38.430939226519335, + "std_gray": 45.8298447545998 + }, + "geometry": { + "distance_to_center_norm": 0.7391056418418884, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.9518967949661667, + "edge_lengths_px": [ + 31.78049659729004, + 58.03447341918945, + 32.893768310546875, + 62.032249450683594 + ] + }, + "confidence": 0.3586255184214969 + }, + { + "observation_id": "54caac99-aeec-4e38-97b8-c0cde0ce3e99", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1069.0, + 1053.0 + ], + [ + 1066.0, + 1021.0 + ], + [ + 1125.0, + 1025.0 + ], + [ + 1130.0, + 1056.0 + ] + ], + "center_px": [ + 1097.5, + 1038.75 + ], + "quality": { + "area_px": 1876.0, + "perimeter_px": 183.7501163482666, + "sharpness": { + "laplacian_var": 663.3293461676229 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 73.64136328427576, + "std_gray": 59.64429126415427 + }, + "geometry": { + "distance_to_center_norm": 0.6950067281723022, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.9449837049520267, + "edge_lengths_px": [ + 32.140316009521484, + 59.13543701171875, + 31.400636672973633, + 61.073726654052734 + ] + }, + "confidence": 0.24678869996591526 + }, + { + "observation_id": "aa44eabf-7990-40c0-8b77-2516220f6d24", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 110.0, + 1003.0 + ], + [ + 134.0, + 974.0 + ], + [ + 187.0, + 977.0 + ], + [ + 166.0, + 1006.0 + ] + ], + "center_px": [ + 149.25, + 990.0 + ], + "quality": { + "area_px": 1648.0, + "perimeter_px": 182.61322402954102, + "sharpness": { + "laplacian_var": 1879.918969718065 + }, + "contrast": { + "p05": 12.0, + "p95": 173.0, + "dynamic_range": 161.0, + "mean_gray": 75.38733031674208, + "std_gray": 68.98136821451206 + }, + "geometry": { + "distance_to_center_norm": 0.8075687885284424, + "distance_to_border_px": 74.0 + }, + "edge_ratio": 1.5662688751728226, + "edge_lengths_px": [ + 37.64305877685547, + 53.0848388671875, + 35.80502700805664, + 56.080299377441406 + ] + }, + "confidence": 0.6384599833726886 + }, + { + "observation_id": "d5f97505-5c7a-456a-a5a6-22e86918fdb0", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 403.0, + 1023.0 + ], + [ + 418.0, + 993.0 + ], + [ + 474.0, + 996.0 + ], + [ + 462.0, + 1025.0 + ] + ], + "center_px": [ + 439.25, + 1009.25 + ], + "quality": { + "area_px": 1730.0, + "perimeter_px": 180.03991889953613, + "sharpness": { + "laplacian_var": 950.8899639839916 + }, + "contrast": { + "p05": 20.0, + "p95": 172.0, + "dynamic_range": 152.0, + "mean_gray": 116.20102214650767, + "std_gray": 61.636543611115094 + }, + "geometry": { + "distance_to_center_norm": 0.6075818538665771, + "distance_to_border_px": 55.0 + }, + "edge_ratio": 1.8809760926212427, + "edge_lengths_px": [ + 33.541019439697266, + 56.080299377441406, + 31.38471031188965, + 59.03388977050781 + ] + }, + "confidence": 0.5316388676723932 + }, + { + "observation_id": "9dc5bf3a-a122-4286-9469-80720eaac019", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 564.0, + 1008.0 + ], + [ + 576.0, + 980.0 + ], + [ + 632.0, + 984.0 + ], + [ + 622.0, + 1013.0 + ] + ], + "center_px": [ + 598.5, + 996.25 + ], + "quality": { + "area_px": 1674.0, + "perimeter_px": 175.49660873413086, + "sharpness": { + "laplacian_var": 1393.7942302804506 + }, + "contrast": { + "p05": 28.0, + "p95": 171.0, + "dynamic_range": 143.0, + "mean_gray": 84.15052816901408, + "std_gray": 59.917896140385736 + }, + "geometry": { + "distance_to_center_norm": 0.5246118903160095, + "distance_to_border_px": 67.0 + }, + "edge_ratio": 1.9110048603024625, + "edge_lengths_px": [ + 30.463092803955078, + 56.14267349243164, + 30.675724029541016, + 58.215118408203125 + ] + }, + "confidence": 0.5232849066860699 + }, + { + "observation_id": "66288f02-822f-472c-937d-21de469652d2", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 760.0, + 132.0 + ], + [ + 813.0, + 133.0 + ], + [ + 809.0, + 166.0 + ], + [ + 754.0, + 165.0 + ] + ], + "center_px": [ + 784.0, + 149.0 + ], + "quality": { + "area_px": 1787.0, + "perimeter_px": 174.80108261108398, + "sharpness": { + "laplacian_var": 1005.8917346464419 + }, + "contrast": { + "p05": 15.0, + "p95": 180.0, + "dynamic_range": 165.0, + "mean_gray": 83.3435684647303, + "std_gray": 70.8540535076814 + }, + "geometry": { + "distance_to_center_norm": 0.4402258098125458, + "distance_to_border_px": 132.0 + }, + "edge_ratio": 1.6548298326729072, + "edge_lengths_px": [ + 53.00943374633789, + 33.241539001464844, + 55.009090423583984, + 33.541019439697266 + ] + }, + "confidence": 0.6042917406104434 + }, + { + "observation_id": "1a7a2436-389b-4a57-b5d8-437e68fc07e3", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 760.0 + ], + [ + 387.0, + 761.0 + ], + [ + 376.0, + 780.0 + ], + [ + 327.0, + 778.0 + ] + ], + "center_px": [ + 357.5, + 769.75 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 140.20953559875488, + "sharpness": { + "laplacian_var": 1714.673355751594 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 84.31152647975078, + "std_gray": 58.656873492799065 + }, + "geometry": { + "distance_to_center_norm": 0.47686126828193665, + "distance_to_border_px": 300.0 + }, + "edge_ratio": 2.233747159110654, + "edge_lengths_px": [ + 47.01063537597656, + 21.954498291015625, + 49.04079818725586, + 22.203603744506836 + ] + }, + "confidence": 0.27039765782644665 + }, + { + "observation_id": "8315d180-253a-4425-b659-81d2097f79df", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 808.0, + 771.0 + ], + [ + 855.0, + 774.0 + ], + [ + 851.0, + 794.0 + ], + [ + 801.0, + 790.0 + ] + ], + "center_px": [ + 828.75, + 782.25 + ], + "quality": { + "area_px": 965.0, + "perimeter_px": 137.8999252319336, + "sharpness": { + "laplacian_var": 980.8435808712625 + }, + "contrast": { + "p05": 19.0, + "p95": 166.0, + "dynamic_range": 147.0, + "mean_gray": 88.28657616892912, + "std_gray": 59.05852033640571 + }, + "geometry": { + "distance_to_center_norm": 0.2950447201728821, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 2.4772131710716905, + "edge_lengths_px": [ + 47.095645904541016, + 20.39607810974121, + 50.15974426269531, + 20.248456954956055 + ] + }, + "confidence": 0.25970043306972035 + }, + { + "observation_id": "446cd397-f09e-48af-9ac1-043309b08b4d", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1385.0, + 700.0 + ], + [ + 1377.0, + 686.0 + ], + [ + 1418.0, + 688.0 + ], + [ + 1428.0, + 701.0 + ] + ], + "center_px": [ + 1402.0, + 693.75 + ], + "quality": { + "area_px": 553.5, + "perimeter_px": 116.58611488342285, + "sharpness": { + "laplacian_var": 1051.381376540531 + }, + "contrast": { + "p05": 12.0, + "p95": 126.0, + "dynamic_range": 114.0, + "mean_gray": 64.25196850393701, + "std_gray": 39.063170154625084 + }, + "geometry": { + "distance_to_center_norm": 0.7767954468727112, + "distance_to_border_px": 12.0 + }, + "edge_ratio": 2.6674678757353125, + "edge_lengths_px": [ + 16.124515533447266, + 41.04875183105469, + 16.401220321655273, + 43.011627197265625 + ] + }, + "confidence": 0.03320002493960217 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 975.0, + 684.0 + ], + [ + 987.0, + 688.0 + ], + [ + 989.0, + 763.0 + ], + [ + 968.0, + 765.0 + ] + ], + "center_px": [ + 979.75, + 725.0 + ], + "area_px": 1289.5 + }, + { + "image_points_px": [ + [ + 790.0, + 489.0 + ], + [ + 804.0, + 493.0 + ], + [ + 807.0, + 565.0 + ], + [ + 793.0, + 568.0 + ] + ], + "center_px": [ + 798.5, + 528.75 + ], + "area_px": 1055.5 + }, + { + "image_points_px": [ + [ + 536.0, + 599.0 + ], + [ + 540.0, + 677.0 + ], + [ + 531.0, + 664.0 + ], + [ + 529.0, + 604.0 + ] + ], + "center_px": [ + 534.0, + 636.0 + ], + "area_px": 540.0 + }, + { + "image_points_px": [ + [ + 782.0, + 864.0 + ], + [ + 789.0, + 841.0 + ], + [ + 842.0, + 845.0 + ], + [ + 837.0, + 868.0 + ] + ], + "center_px": [ + 812.5, + 854.5 + ], + "area_px": 1266.0 + }, + { + "image_points_px": [ + [ + 1232.0, + 678.0 + ], + [ + 1273.0, + 679.0 + ], + [ + 1279.0, + 694.0 + ], + [ + 1237.0, + 692.0 + ] + ], + "center_px": [ + 1255.25, + 685.75 + ], + "area_px": 593.5 + }, + { + "image_points_px": [ + [ + 1154.0, + 689.0 + ], + [ + 1194.0, + 690.0 + ], + [ + 1201.0, + 704.0 + ], + [ + 1160.0, + 703.0 + ] + ], + "center_px": [ + 1177.25, + 696.5 + ], + "area_px": 560.5 + }, + { + "image_points_px": [ + [ + 425.0, + 674.0 + ], + [ + 435.0, + 661.0 + ], + [ + 473.0, + 663.0 + ], + [ + 462.0, + 676.0 + ] + ], + "center_px": [ + 448.75, + 668.5 + ], + "area_px": 508.5 + }, + { + "image_points_px": [ + [ + 1281.0, + 650.0 + ], + [ + 1319.0, + 651.0 + ], + [ + 1327.0, + 663.0 + ], + [ + 1288.0, + 663.0 + ] + ], + "center_px": [ + 1303.75, + 656.75 + ], + "area_px": 477.5 + }, + { + "image_points_px": [ + [ + 1068.0, + 669.0 + ], + [ + 1077.0, + 679.0 + ], + [ + 1075.0, + 717.0 + ], + [ + 1068.0, + 710.0 + ] + ], + "center_px": [ + 1072.0, + 693.75 + ], + "area_px": 324.5 + }, + { + "image_points_px": [ + [ + 784.0, + 627.0 + ], + [ + 788.0, + 615.0 + ], + [ + 824.0, + 619.0 + ], + [ + 820.0, + 629.0 + ] + ], + "center_px": [ + 804.0, + 622.5 + ], + "area_px": 408.0 + }, + { + "image_points_px": [ + [ + 426.0, + 594.0 + ], + [ + 434.0, + 583.0 + ], + [ + 467.0, + 585.0 + ], + [ + 462.0, + 595.0 + ] + ], + "center_px": [ + 447.25, + 589.25 + ], + "area_px": 372.0 + }, + { + "image_points_px": [ + [ + 978.0, + 308.0 + ], + [ + 1021.0, + 310.0 + ], + [ + 1019.0, + 316.0 + ], + [ + 991.0, + 314.0 + ] + ], + "center_px": [ + 1002.25, + 312.0 + ], + "area_px": 202.0 + }, + { + "image_points_px": [ + [ + 936.0, + 582.0 + ], + [ + 951.0, + 580.0 + ], + [ + 965.0, + 595.0 + ], + [ + 937.0, + 600.0 + ] + ], + "center_px": [ + 947.25, + 589.25 + ], + "area_px": 381.0 + }, + { + "image_points_px": [ + [ + 120.0, + 998.0 + ], + [ + 124.0, + 993.0 + ], + [ + 158.0, + 996.0 + ], + [ + 153.0, + 1001.0 + ] + ], + "center_px": [ + 138.75, + 997.0 + ], + "area_px": 181.0 + }, + { + "image_points_px": [ + [ + 734.0, + 639.0 + ], + [ + 730.0, + 666.0 + ], + [ + 725.0, + 676.0 + ], + [ + 729.0, + 642.0 + ] + ], + "center_px": [ + 729.5, + 655.75 + ], + "area_px": 126.5 + }, + { + "image_points_px": [ + [ + 1360.0, + 644.0 + ], + [ + 1390.0, + 645.0 + ], + [ + 1394.0, + 648.0 + ], + [ + 1366.0, + 647.0 + ] + ], + "center_px": [ + 1377.5, + 646.0 + ], + "area_px": 82.0 + }, + { + "image_points_px": [ + [ + 339.0, + 768.0 + ], + [ + 354.0, + 762.0 + ], + [ + 372.0, + 767.0 + ], + [ + 366.0, + 771.0 + ] + ], + "center_px": [ + 357.75, + 767.0 + ], + "area_px": 154.5 + }, + { + "image_points_px": [ + [ + 732.0, + 273.0 + ], + [ + 735.0, + 284.0 + ], + [ + 735.0, + 305.0 + ], + [ + 732.0, + 301.0 + ] + ], + "center_px": [ + 733.5, + 290.75 + ], + "area_px": 73.5 + }, + { + "image_points_px": [ + [ + 990.0, + 337.0 + ], + [ + 996.0, + 351.0 + ], + [ + 997.0, + 366.0 + ], + [ + 991.0, + 364.0 + ] + ], + "center_px": [ + 993.5, + 354.5 + ], + "area_px": 118.0 + }, + { + "image_points_px": [ + [ + 774.0, + 249.0 + ], + [ + 799.0, + 247.0 + ], + [ + 800.0, + 251.0 + ], + [ + 776.0, + 252.0 + ] + ], + "center_px": [ + 787.25, + 249.75 + ], + "area_px": 88.0 + }, + { + "image_points_px": [ + [ + 900.0, + 973.0 + ], + [ + 923.0, + 973.0 + ], + [ + 926.0, + 975.0 + ], + [ + 903.0, + 975.0 + ] + ], + "center_px": [ + 913.0, + 974.0 + ], + "area_px": 46.0 + }, + { + "image_points_px": [ + [ + 957.0, + 967.0 + ], + [ + 968.0, + 965.0 + ], + [ + 970.0, + 984.0 + ], + [ + 957.0, + 971.0 + ] + ], + "center_px": [ + 963.0, + 971.75 + ], + "area_px": 132.5 + }, + { + "image_points_px": [ + [ + 1374.0, + 718.0 + ], + [ + 1394.0, + 718.0 + ], + [ + 1398.0, + 721.0 + ], + [ + 1378.0, + 721.0 + ] + ], + "center_px": [ + 1386.0, + 719.5 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 999.0, + 762.0 + ], + [ + 1017.0, + 761.0 + ], + [ + 1023.0, + 763.0 + ], + [ + 1001.0, + 764.0 + ] + ], + "center_px": [ + 1010.0, + 762.5 + ], + "area_px": 44.0 + }, + { + "image_points_px": [ + [ + 565.0, + 1022.0 + ], + [ + 584.0, + 1021.0 + ], + [ + 588.0, + 1023.0 + ], + [ + 573.0, + 1024.0 + ] + ], + "center_px": [ + 577.5, + 1022.5 + ], + "area_px": 40.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 1023.0 + ], + [ + 1182.0, + 1022.0 + ], + [ + 1185.0, + 1028.0 + ], + [ + 1169.0, + 1029.0 + ] + ], + "center_px": [ + 1175.5, + 1025.5 + ], + "area_px": 99.0 + }, + { + "image_points_px": [ + [ + 222.0, + 1034.0 + ], + [ + 241.0, + 1035.0 + ], + [ + 244.0, + 1037.0 + ], + [ + 231.0, + 1037.0 + ] + ], + "center_px": [ + 234.5, + 1035.75 + ], + "area_px": 37.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/render_c_camera_pose.json b/data/camera_study/Scene10/k4_abcf/render_c_camera_pose.json new file mode 100644 index 0000000..c644334 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/render_c_camera_pose.json @@ -0,0 +1,327 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:41Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abcf\\render_c_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "c", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 9, + "used_marker_ids": [ + 58, + 62, + 96, + 64, + 103, + 51, + 210, + 211, + 50 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.00850343514866048, + 0.001919637477748798, + 0.0018871327733089188, + 0.0018871325208839012 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.3388483305404, + "residual_median_px": 5.837108638574855, + "residual_max_px": 7.851369272055891, + "sigma2_normalized": 5.341903727059073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9935113787651062, + 0.11363770067691803, + -0.004644200671464205 + ], + [ + 0.029086070135235786, + -0.2933460772037506, + -0.9555637240409851 + ], + [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + ], + "translation_m": [ + -0.19824764132499695, + 0.1074121966958046, + 1.0073933601379395 + ], + "rvec_rad": [ + 1.86796171410195, + 0.10327005514572164, + -0.08291676493169096 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30460041761398315, + -0.9022090435028076, + 0.3986456096172333 + ], + "position_mm": [ + 304.60040283203125, + -902.2090454101562, + 398.6455993652344 + ], + "orientation_deg": { + "roll": 107.25025177001953, + "pitch": 6.31245756149292, + "yaw": 1.676913857460022 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 6.283611814350516e-05, + 9.967111903139419e-06, + 1.624804290129494e-05, + -1.577288611905233e-07, + -9.565179969225538e-06, + 1.214388304696983e-06 + ], + [ + 9.967111903139312e-06, + 2.0431750224389534e-05, + -7.770857724352742e-06, + 2.1849187906882535e-06, + -2.4827730156902525e-06, + 5.834590888095247e-06 + ], + [ + 1.6248042901295073e-05, + -7.770857724352725e-06, + 6.21251942958819e-05, + -3.1440970658187606e-06, + -8.329233497858997e-06, + -1.5661804579884994e-05 + ], + [ + -1.5772886119053934e-07, + 2.184918790688258e-06, + -3.14409706581878e-06, + 7.844339725202242e-07, + 9.395641917069299e-08, + 8.922273151494254e-07 + ], + [ + -9.56517996922555e-06, + -2.482773015690273e-06, + -8.329233497858978e-06, + 9.395641917068812e-08, + 3.1785216658280216e-06, + 3.2374032099410526e-06 + ], + [ + 1.2143883046968984e-06, + 5.834590888095236e-06, + -1.566180457988501e-05, + 8.922273151494167e-07, + 3.237403209941067e-06, + 1.5241091941001921e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.45417926818777943, + 0.2589854810186854, + 0.45160268193428 + ], + "tvec_std_m": [ + 0.0008856827719450255, + 0.0017828408975082497, + 0.0039039841112640202 + ] + }, + "camera_center_std_m": [ + 0.006432764403295309, + 0.003956846704431741, + 0.006949550969225763 + ], + "camera_center_std_mm": [ + 6.432764403295309, + 3.956846704431741, + 6.949550969225763 + ], + "orientation_std_deg": { + "roll": 0.42334339423542505, + "pitch": 0.36500393244331925, + "yaw": 0.2715300326454473 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 58, + "observed_center_px": [ + 283.25, + 1034.0 + ], + "projected_center_px": [ + 289.1312255859375, + 1036.682861328125 + ], + "reprojection_error_px": 6.4642524160675014, + "confidence": 0.34134185624863755 + }, + { + "marker_id": 62, + "observed_center_px": [ + 1171.5, + 1028.5 + ], + "projected_center_px": [ + 1177.343505859375, + 1029.8663330078125 + ], + "reprojection_error_px": 6.0011187804265225, + "confidence": 0.3586255184214969 + }, + { + "marker_id": 96, + "observed_center_px": [ + 1097.5, + 1038.75 + ], + "projected_center_px": [ + 1091.03857421875, + 1039.8277587890625 + ], + "reprojection_error_px": 6.550693637623701, + "confidence": 0.24678869996591526 + }, + { + "marker_id": 64, + "observed_center_px": [ + 149.25, + 990.0 + ], + "projected_center_px": [ + 146.69277954101562, + 989.6632080078125 + ], + "reprojection_error_px": 2.579303262869623, + "confidence": 0.6384599833726886 + }, + { + "marker_id": 103, + "observed_center_px": [ + 439.25, + 1009.25 + ], + "projected_center_px": [ + 443.3174743652344, + 1005.0634155273438 + ], + "reprojection_error_px": 5.837108638574855, + "confidence": 0.5316388676723932 + }, + { + "marker_id": 51, + "observed_center_px": [ + 598.5, + 996.25 + ], + "projected_center_px": [ + 598.08349609375, + 993.7927856445312 + ], + "reprojection_error_px": 2.492263608176955, + "confidence": 0.5232849066860699 + }, + { + "marker_id": 210, + "observed_center_px": [ + 357.5, + 769.75 + ], + "projected_center_px": [ + 354.4071044921875, + 771.2721557617188 + ], + "reprojection_error_px": 3.4471670666186647, + "confidence": 0.27039765782644665 + }, + { + "marker_id": 211, + "observed_center_px": [ + 828.75, + 782.25 + ], + "projected_center_px": [ + 820.9069213867188, + 782.6107177734375 + ], + "reprojection_error_px": 7.851369272055891, + "confidence": 0.25970043306972035 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1402.0, + 693.75 + ], + "projected_center_px": [ + 1405.9166259765625, + 693.873291015625 + ], + "reprojection_error_px": 3.918566027875248, + "confidence": 0.03320002493960217 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/render_f_aruco_detection.json b/data/camera_study/Scene10/k4_abcf/render_f_aruco_detection.json new file mode 100644 index 0000000..b505c41 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/render_f_aruco_detection.json @@ -0,0 +1,2058 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:40Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "f", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.npz", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.png", + "image_sha256": "aa67ae34760d38a87903e73b4020db43742a978458949ff309a7b2527c548cd4", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 33, + "num_rejected_candidates": 9 + }, + "detections": [ + { + "observation_id": "a8c89fe8-d8a3-4660-ba2f-1e55871b4d95", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1111.0, + 551.0 + ], + [ + 1128.0, + 590.0 + ], + [ + 1088.0, + 605.0 + ], + [ + 1071.0, + 566.0 + ] + ], + "center_px": [ + 1099.5, + 578.0 + ], + "quality": { + "area_px": 1815.0, + "perimeter_px": 170.52822875976562, + "sharpness": { + "laplacian_var": 705.4441714458114 + }, + "contrast": { + "p05": 20.0, + "p95": 169.0, + "dynamic_range": 149.0, + "mean_gray": 91.23937908496733, + "std_gray": 63.85244467612601 + }, + "geometry": { + "distance_to_center_norm": 0.4237752854824066, + "distance_to_border_px": 312.0 + }, + "edge_ratio": 1.0041351499491737, + "edge_lengths_px": [ + 42.54409408569336, + 42.72002029418945, + 42.54409408569336, + 42.72002029418945 + ] + }, + "confidence": 0.9958818790982638 + }, + { + "observation_id": "6dc4ab19-c90a-468b-a096-8bed9530c9d1", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1016.0, + 419.0 + ], + [ + 1031.0, + 457.0 + ], + [ + 994.0, + 474.0 + ], + [ + 980.0, + 436.0 + ] + ], + "center_px": [ + 1005.25, + 446.5 + ], + "quality": { + "area_px": 1633.5, + "perimeter_px": 161.88091659545898, + "sharpness": { + "laplacian_var": 1206.2538238529316 + }, + "contrast": { + "p05": 64.0, + "p95": 184.0, + "dynamic_range": 120.0, + "mean_gray": 109.98129092609916, + "std_gray": 52.10421328381854 + }, + "geometry": { + "distance_to_center_norm": 0.33353662490844727, + "distance_to_border_px": 409.0 + }, + "edge_ratio": 1.0261563943133383, + "edge_lengths_px": [ + 40.853397369384766, + 40.71854782104492, + 40.49691390991211, + 39.81205749511719 + ] + }, + "confidence": 0.9745103237106064 + }, + { + "observation_id": "1a641f77-b1ed-42a6-8c1d-30b2c1e2ff1c", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1036.0, + 506.0 + ], + [ + 1052.0, + 544.0 + ], + [ + 1022.0, + 561.0 + ], + [ + 1006.0, + 523.0 + ] + ], + "center_px": [ + 1029.0, + 533.5 + ], + "quality": { + "area_px": 1412.0, + "perimeter_px": 151.42587280273438, + "sharpness": { + "laplacian_var": 1012.7025030399973 + }, + "contrast": { + "p05": 38.0, + "p95": 183.0, + "dynamic_range": 145.0, + "mean_gray": 116.22860125260961, + "std_gray": 60.975378654093674 + }, + "geometry": { + "distance_to_center_norm": 0.34340929985046387, + "distance_to_border_px": 388.0 + }, + "edge_ratio": 1.1957310908974648, + "edge_lengths_px": [ + 41.231056213378906, + 34.48188018798828, + 41.231056213378906, + 34.48188018798828 + ] + }, + "confidence": 0.7872450089315723 + }, + { + "observation_id": "4b47a687-20f2-4718-8ddd-870f98edb8a3", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1052.0, + 572.0 + ], + [ + 1067.0, + 612.0 + ], + [ + 1037.0, + 628.0 + ], + [ + 1025.0, + 587.0 + ] + ], + "center_px": [ + 1045.25, + 599.75 + ], + "quality": { + "area_px": 1363.5, + "perimeter_px": 150.32693099975586, + "sharpness": { + "laplacian_var": 1006.0857327103973 + }, + "contrast": { + "p05": 35.0, + "p95": 182.0, + "dynamic_range": 147.0, + "mean_gray": 87.55157437567861, + "std_gray": 61.08527885104246 + }, + "geometry": { + "distance_to_center_norm": 0.3674362897872925, + "distance_to_border_px": 373.0 + }, + "edge_ratio": 1.38311172556412, + "edge_lengths_px": [ + 42.72002029418945, + 34.0, + 42.72002029418945, + 30.886890411376953 + ] + }, + "confidence": 0.6572137183127795 + }, + { + "observation_id": "3018a62c-7be3-47a4-8856-bc2d9779ca90", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1373.0, + 931.0 + ], + [ + 1403.0, + 920.0 + ], + [ + 1417.0, + 952.0 + ], + [ + 1387.0, + 964.0 + ] + ], + "center_px": [ + 1395.0, + 941.75 + ], + "quality": { + "area_px": 1136.0, + "perimeter_px": 135.0394744873047, + "sharpness": { + "laplacian_var": 536.3795719450814 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 59.547588005215125, + "std_gray": 52.80020659255208 + }, + "geometry": { + "distance_to_center_norm": 0.8727903962135315, + "distance_to_border_px": 23.0 + }, + "edge_ratio": 1.1218600885282315, + "edge_lengths_px": [ + 31.95309066772461, + 34.928497314453125, + 32.31098937988281, + 35.84689712524414 + ] + }, + "confidence": 0.3105318897567382 + }, + { + "observation_id": "2f0d67c5-5d37-4436-bed8-ca6eef175d5c", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1361.0, + 872.0 + ], + [ + 1392.0, + 861.0 + ], + [ + 1405.0, + 893.0 + ], + [ + 1375.0, + 904.0 + ] + ], + "center_px": [ + 1383.25, + 882.5 + ], + "quality": { + "area_px": 1124.5, + "perimeter_px": 134.31518936157227, + "sharpness": { + "laplacian_var": 517.914546739087 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 76.5836627140975, + "std_gray": 53.471581821317514 + }, + "geometry": { + "distance_to_center_norm": 0.8294032216072083, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.0931179608780046, + "edge_lengths_px": [ + 32.893768310546875, + 34.539833068847656, + 31.95309066772461, + 34.928497314453125 + ] + }, + "confidence": 0.480064078578645 + }, + { + "observation_id": "9ddabb28-bc73-43b4-bc33-88f19c1fff7a", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 948.0, + 734.0 + ], + [ + 958.0, + 766.0 + ], + [ + 926.0, + 775.0 + ], + [ + 916.0, + 742.0 + ] + ], + "center_px": [ + 937.0, + 754.25 + ], + "quality": { + "area_px": 1125.0, + "perimeter_px": 134.23437118530273, + "sharpness": { + "laplacian_var": 451.55598900708645 + }, + "contrast": { + "p05": 10.0, + "p95": 140.0, + "dynamic_range": 130.0, + "mean_gray": 60.31848852901484, + "std_gray": 51.76857091737675 + }, + "geometry": { + "distance_to_center_norm": 0.3388288915157318, + "distance_to_border_px": 305.0 + }, + "edge_ratio": 1.0453855707425852, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 34.48188018798828, + 32.98484420776367 + ] + }, + "confidence": 0.717438637944123 + }, + { + "observation_id": "53241880-cffb-4e99-8a19-145c8ec1969d", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 644.0, + 826.0 + ], + [ + 676.0, + 815.0 + ], + [ + 686.0, + 847.0 + ], + [ + 654.0, + 857.0 + ] + ], + "center_px": [ + 665.0, + 836.25 + ], + "quality": { + "area_px": 1113.0, + "perimeter_px": 133.4630584716797, + "sharpness": { + "laplacian_var": 852.4779615278809 + }, + "contrast": { + "p05": 29.0, + "p95": 169.0, + "dynamic_range": 140.0, + "mean_gray": 86.11354309165527, + "std_gray": 58.71854981961371 + }, + "geometry": { + "distance_to_center_norm": 0.334791362285614, + "distance_to_border_px": 223.0 + }, + "edge_ratio": 1.0388313835116465, + "edge_lengths_px": [ + 33.83784866333008, + 33.52610778808594, + 33.52610778808594, + 32.572994232177734 + ] + }, + "confidence": 0.714264135428559 + }, + { + "observation_id": "e476a8c8-d035-4b56-a0b3-e9e25076cd9a", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1320.0, + 833.0 + ], + [ + 1351.0, + 823.0 + ], + [ + 1363.0, + 855.0 + ], + [ + 1333.0, + 865.0 + ] + ], + "center_px": [ + 1341.75, + 844.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 451.19488172035136 + }, + "contrast": { + "p05": 7.0, + "p95": 137.0, + "dynamic_range": 130.0, + "mean_gray": 45.32476319350474, + "std_gray": 49.27193956190029 + }, + "geometry": { + "distance_to_center_norm": 0.7689892649650574, + "distance_to_border_px": 77.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.6720101269988878 + }, + { + "observation_id": "03a00522-da7a-4231-b7f7-a89816dc815c", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1378.0, + 795.0 + ], + [ + 1409.0, + 785.0 + ], + [ + 1421.0, + 817.0 + ], + [ + 1391.0, + 827.0 + ] + ], + "center_px": [ + 1399.75, + 806.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 495.05510317310643 + }, + "contrast": { + "p05": 8.0, + "p95": 139.0, + "dynamic_range": 131.0, + "mean_gray": 82.98646820027064, + "std_gray": 51.90790044031631 + }, + "geometry": { + "distance_to_center_norm": 0.8110472559928894, + "distance_to_border_px": 19.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.25536384825957736 + }, + { + "observation_id": "befeec9a-94b4-4647-9f50-e1eee4037026", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 534.0, + 807.0 + ], + [ + 566.0, + 797.0 + ], + [ + 575.0, + 829.0 + ], + [ + 544.0, + 839.0 + ] + ], + "center_px": [ + 554.75, + 818.0 + ], + "quality": { + "area_px": 1103.0, + "perimeter_px": 132.86674880981445, + "sharpness": { + "laplacian_var": 743.494629148182 + }, + "contrast": { + "p05": 35.0, + "p95": 172.0, + "dynamic_range": 137.0, + "mean_gray": 110.58367911479945, + "std_gray": 58.20082187769058 + }, + "geometry": { + "distance_to_center_norm": 0.35934022068977356, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 32.572994232177734, + 33.52610778808594 + ] + }, + "confidence": 0.7144285455619288 + }, + { + "observation_id": "88bdbb75-d8c9-4ffd-8d93-ed49cb8db613", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 824.0, + 853.0 + ], + [ + 854.0, + 841.0 + ], + [ + 867.0, + 872.0 + ], + [ + 836.0, + 884.0 + ] + ], + "center_px": [ + 845.25, + 862.5 + ], + "quality": { + "area_px": 1095.5, + "perimeter_px": 132.40953826904297, + "sharpness": { + "laplacian_var": 442.72637538104226 + }, + "contrast": { + "p05": 14.0, + "p95": 151.0, + "dynamic_range": 137.0, + "mean_gray": 42.81124497991968, + "std_gray": 45.242857765301586 + }, + "geometry": { + "distance_to_center_norm": 0.3844088017940521, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.040372688406745, + "edge_lengths_px": [ + 32.31098937988281, + 33.61547088623047, + 33.241539001464844, + 33.241539001464844 + ] + }, + "confidence": 0.7019920279258633 + }, + { + "observation_id": "61c2a440-7dfb-44af-bc16-d5cd39be2431", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 590.0, + 838.0 + ], + [ + 621.0, + 828.0 + ], + [ + 631.0, + 859.0 + ], + [ + 600.0, + 870.0 + ] + ], + "center_px": [ + 610.5, + 848.75 + ], + "quality": { + "area_px": 1081.5, + "perimeter_px": 131.56586456298828, + "sharpness": { + "laplacian_var": 731.9229727377668 + }, + "contrast": { + "p05": 31.0, + "p95": 169.0, + "dynamic_range": 138.0, + "mean_gray": 66.63649222065064, + "std_gray": 51.73446481181097 + }, + "geometry": { + "distance_to_center_norm": 0.3639915883541107, + "distance_to_border_px": 210.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 32.572994232177734, + 32.572994232177734, + 32.893768310546875, + 33.52610778808594 + ] + }, + "confidence": 0.7005026944924987 + }, + { + "observation_id": "399cde59-466b-4548-bb0f-19aa74368d82", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 655.0, + 735.0 + ], + [ + 687.0, + 726.0 + ], + [ + 695.0, + 757.0 + ], + [ + 664.0, + 766.0 + ] + ], + "center_px": [ + 675.25, + 746.0 + ], + "quality": { + "area_px": 1053.0, + "perimeter_px": 129.81721115112305, + "sharpness": { + "laplacian_var": 717.9247585125308 + }, + "contrast": { + "p05": 30.0, + "p95": 171.0, + "dynamic_range": 141.0, + "mean_gray": 93.84776536312849, + "std_gray": 59.42619485270114 + }, + "geometry": { + "distance_to_center_norm": 0.23422729969024658, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0382912394254866, + "edge_lengths_px": [ + 33.241539001464844, + 32.015621185302734, + 32.280025482177734, + 32.280025482177734 + ] + }, + "confidence": 0.6761108765479277 + }, + { + "observation_id": "6c205161-e7cc-4588-8633-025edd8e648b", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1325.0, + 744.0 + ], + [ + 1354.0, + 732.0 + ], + [ + 1368.0, + 763.0 + ], + [ + 1339.0, + 774.0 + ] + ], + "center_px": [ + 1346.5, + 753.25 + ], + "quality": { + "area_px": 1045.5, + "perimeter_px": 129.52142906188965, + "sharpness": { + "laplacian_var": 401.9192193180268 + }, + "contrast": { + "p05": 7.0, + "p95": 133.0, + "dynamic_range": 126.0, + "mean_gray": 49.76628895184136, + "std_gray": 49.769446320789825 + }, + "geometry": { + "distance_to_center_norm": 0.735332190990448, + "distance_to_border_px": 72.0 + }, + "edge_ratio": 1.096678006826234, + "edge_lengths_px": [ + 31.38471031188965, + 34.01470184326172, + 31.016124725341797, + 33.105892181396484 + ] + }, + "confidence": 0.63555573802114 + }, + { + "observation_id": "11dc3288-80d3-43fb-9b42-f45e1824e008", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 488.0, + 682.0 + ], + [ + 520.0, + 673.0 + ], + [ + 528.0, + 703.0 + ], + [ + 497.0, + 713.0 + ] + ], + "center_px": [ + 508.25, + 692.75 + ], + "quality": { + "area_px": 1041.5, + "perimeter_px": 129.14290809631348, + "sharpness": { + "laplacian_var": 854.9291926161701 + }, + "contrast": { + "p05": 39.0, + "p95": 174.0, + "dynamic_range": 135.0, + "mean_gray": 85.3946251768034, + "std_gray": 55.88886855913174 + }, + "geometry": { + "distance_to_center_norm": 0.2901056110858917, + "distance_to_border_px": 367.0 + }, + "edge_ratio": 1.070637881392484, + "edge_lengths_px": [ + 33.241539001464844, + 31.048349380493164, + 32.572994232177734, + 32.280025482177734 + ] + }, + "confidence": 0.6485230397697823 + }, + { + "observation_id": "b99af335-e186-4928-837f-d66ef97ece17", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1047.0, + 694.0 + ], + [ + 1058.0, + 725.0 + ], + [ + 1029.0, + 735.0 + ], + [ + 1017.0, + 703.0 + ] + ], + "center_px": [ + 1037.75, + 714.25 + ], + "quality": { + "area_px": 1038.5, + "perimeter_px": 129.06642532348633, + "sharpness": { + "laplacian_var": 702.8589017712277 + }, + "contrast": { + "p05": 13.0, + "p95": 151.0, + "dynamic_range": 138.0, + "mean_gray": 91.26308139534883, + "std_gray": 55.34838633216663 + }, + "geometry": { + "distance_to_center_norm": 0.40265801548957825, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 1.1141061874732403, + "edge_lengths_px": [ + 32.893768310546875, + 30.675724029541016, + 34.1760139465332, + 31.320919036865234 + ] + }, + "confidence": 0.62142490645665 + }, + { + "observation_id": "8915573c-cefc-41c3-8fe3-f3eecca7c75b", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 592.0, + 617.0 + ], + [ + 622.0, + 606.0 + ], + [ + 633.0, + 635.0 + ], + [ + 604.0, + 647.0 + ] + ], + "center_px": [ + 612.75, + 626.25 + ], + "quality": { + "area_px": 1002.5, + "perimeter_px": 126.66491508483887, + "sharpness": { + "laplacian_var": 861.4333753048808 + }, + "contrast": { + "p05": 34.0, + "p95": 174.0, + "dynamic_range": 140.0, + "mean_gray": 97.54451038575668, + "std_gray": 59.64062956897272 + }, + "geometry": { + "distance_to_center_norm": 0.15292063355445862, + "distance_to_border_px": 433.0 + }, + "edge_ratio": 1.041748112183823, + "edge_lengths_px": [ + 31.95309066772461, + 31.016124725341797, + 31.38471031188965, + 32.31098937988281 + ] + }, + "confidence": 0.6415498386959416 + }, + { + "observation_id": "cbd60b62-c52e-4e14-a70b-c05f8367ab24", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 852.0, + 664.0 + ], + [ + 855.0, + 699.0 + ], + [ + 831.0, + 712.0 + ], + [ + 828.0, + 677.0 + ] + ], + "center_px": [ + 841.5, + 688.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 124.84605026245117, + "sharpness": { + "laplacian_var": 964.1437813663806 + }, + "contrast": { + "p05": 35.0, + "p95": 185.0, + "dynamic_range": 150.0, + "mean_gray": 80.50977198697069, + "std_gray": 59.04237755633671 + }, + "geometry": { + "distance_to_center_norm": 0.21276035904884338, + "distance_to_border_px": 368.0 + }, + "edge_ratio": 1.2870027603239267, + "edge_lengths_px": [ + 35.12833786010742, + 27.294687271118164, + 35.12833786010742, + 27.294687271118164 + ] + }, + "confidence": 0.45532147876086076 + }, + { + "observation_id": "a9956248-d940-4947-99b9-bdeae1d50a4f", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 549.0 + ], + [ + 750.0, + 540.0 + ], + [ + 759.0, + 570.0 + ], + [ + 728.0, + 578.0 + ] + ], + "center_px": [ + 739.25, + 559.25 + ], + "quality": { + "area_px": 972.0, + "perimeter_px": 124.74067687988281, + "sharpness": { + "laplacian_var": 858.8311608781246 + }, + "contrast": { + "p05": 30.0, + "p95": 176.0, + "dynamic_range": 146.0, + "mean_gray": 89.6813509544787, + "std_gray": 60.460128160193484 + }, + "geometry": { + "distance_to_center_norm": 0.030248457565903664, + "distance_to_border_px": 502.0 + }, + "edge_ratio": 1.0642352686074992, + "edge_lengths_px": [ + 31.320919036865234, + 31.320919036865234, + 32.015621185302734, + 30.08321762084961 + ] + }, + "confidence": 0.6088879208521975 + }, + { + "observation_id": "ba2867ac-6cbc-4cc2-a754-0b97ea79937c", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 670.0, + 478.0 + ], + [ + 700.0, + 469.0 + ], + [ + 710.0, + 497.0 + ], + [ + 680.0, + 507.0 + ] + ], + "center_px": [ + 690.0, + 487.75 + ], + "quality": { + "area_px": 950.0, + "perimeter_px": 123.3515567779541, + "sharpness": { + "laplacian_var": 744.1718727855725 + }, + "contrast": { + "p05": 33.0, + "p95": 177.0, + "dynamic_range": 144.0, + "mean_gray": 123.30505952380952, + "std_gray": 58.57233093015588 + }, + "geometry": { + "distance_to_center_norm": 0.06694444268941879, + "distance_to_border_px": 469.0 + }, + "edge_ratio": 1.0635890487184443, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.62277603149414, + 30.675724029541016 + ] + }, + "confidence": 0.5954680843098741 + }, + { + "observation_id": "adb8a4e2-f604-4928-b8d4-50841b046143", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 519.0, + 393.0 + ], + [ + 550.0, + 385.0 + ], + [ + 558.0, + 413.0 + ], + [ + 527.0, + 421.0 + ] + ], + "center_px": [ + 538.5, + 403.0 + ], + "quality": { + "area_px": 932.0, + "perimeter_px": 122.27212142944336, + "sharpness": { + "laplacian_var": 797.3173110559737 + }, + "contrast": { + "p05": 38.0, + "p95": 176.19999999999993, + "dynamic_range": 138.19999999999993, + "mean_gray": 94.14307458143075, + "std_gray": 55.87143525094488 + }, + "geometry": { + "distance_to_center_norm": 0.2526678740978241, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0994209463411062, + "edge_lengths_px": [ + 32.015621185302734, + 29.120439529418945, + 32.015621185302734, + 29.120439529418945 + ] + }, + "confidence": 0.5651459847123547 + }, + { + "observation_id": "0bab312c-1011-4adc-aaee-7d531cd9d719", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 613.0, + 419.0 + ], + [ + 643.0, + 410.0 + ], + [ + 653.0, + 438.0 + ], + [ + 623.0, + 447.0 + ] + ], + "center_px": [ + 633.0, + 428.5 + ], + "quality": { + "area_px": 930.0, + "perimeter_px": 122.10611343383789, + "sharpness": { + "laplacian_var": 823.1077646304283 + }, + "contrast": { + "p05": 33.0, + "p95": 175.0, + "dynamic_range": 142.0, + "mean_gray": 90.3810975609756, + "std_gray": 58.11551162536803 + }, + "geometry": { + "distance_to_center_norm": 0.15713976323604584, + "distance_to_border_px": 410.0 + }, + "edge_ratio": 1.0534364993835403, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.320919036865234, + 29.73213768005371 + ] + }, + "confidence": 0.5885499509109636 + }, + { + "observation_id": "fbf98673-fdec-4e5a-9ea8-6ebdf2ae92e6", + "type": "aruco", + "marker_id": 82, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 420.0 + ], + [ + 1365.0, + 411.0 + ], + [ + 1377.0, + 439.0 + ], + [ + 1348.0, + 448.0 + ] + ], + "center_px": [ + 1356.5, + 429.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 492.47728625272765 + }, + "contrast": { + "p05": 8.0, + "p95": 144.0, + "dynamic_range": 136.0, + "mean_gray": 74.61658841940532, + "std_gray": 56.63950003540781 + }, + "geometry": { + "distance_to_center_norm": 0.7178005576133728, + "distance_to_border_px": 63.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.6113473409254715 + }, + { + "observation_id": "08bb3f76-4874-42c1-a633-f4f0640d9595", + "type": "aruco", + "marker_id": 73, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1381.0, + 409.0 + ], + [ + 1410.0, + 400.0 + ], + [ + 1422.0, + 428.0 + ], + [ + 1393.0, + 437.0 + ] + ], + "center_px": [ + 1401.5, + 418.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 771.0965392424098 + }, + "contrast": { + "p05": 9.0, + "p95": 148.0, + "dynamic_range": 139.0, + "mean_gray": 87.07042253521126, + "std_gray": 52.83472667385498 + }, + "geometry": { + "distance_to_center_norm": 0.7691621780395508, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.22008504273316973 + }, + { + "observation_id": "0e908f34-b298-4db0-9fd6-ca719b1a76bd", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 881.0, + 288.0 + ], + [ + 892.0, + 316.0 + ], + [ + 863.0, + 326.0 + ], + [ + 852.0, + 298.0 + ] + ], + "center_px": [ + 872.0, + 307.0 + ], + "quality": { + "area_px": 922.0, + "perimeter_px": 121.51788330078125, + "sharpness": { + "laplacian_var": 865.0098318523201 + }, + "contrast": { + "p05": 22.0, + "p95": 172.0, + "dynamic_range": 150.0, + "mean_gray": 82.59908536585365, + "std_gray": 60.95016906391271 + }, + "geometry": { + "distance_to_center_norm": 0.30910664796829224, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.0196955796470641, + "edge_lengths_px": [ + 30.08321762084961, + 30.675724029541016, + 30.08321762084961, + 30.675724029541016 + ] + }, + "confidence": 0.60279428383853 + }, + { + "observation_id": "1a3c9397-f469-49ac-8d1e-a309467b084e", + "type": "aruco", + "marker_id": 52, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1170.0, + 304.0 + ], + [ + 1198.0, + 294.0 + ], + [ + 1211.0, + 321.0 + ], + [ + 1182.0, + 331.0 + ] + ], + "center_px": [ + 1190.25, + 312.5 + ], + "quality": { + "area_px": 894.5, + "perimeter_px": 119.92108345031738, + "sharpness": { + "laplacian_var": 736.7821607663999 + }, + "contrast": { + "p05": 12.0, + "p95": 162.0, + "dynamic_range": 150.0, + "mean_gray": 73.56239870340356, + "std_gray": 59.95824921853181 + }, + "geometry": { + "distance_to_center_norm": 0.5804333686828613, + "distance_to_border_px": 229.0 + }, + "edge_ratio": 1.038215950330626, + "edge_lengths_px": [ + 29.73213768005371, + 29.96664810180664, + 30.675724029541016, + 29.546573638916016 + ] + }, + "confidence": 0.5743827506632194 + }, + { + "observation_id": "4799b9ee-0494-4e72-b7ee-b04982190c7c", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 621.0, + 329.0 + ], + [ + 651.0, + 320.0 + ], + [ + 660.0, + 347.0 + ], + [ + 630.0, + 356.0 + ] + ], + "center_px": [ + 640.5, + 338.0 + ], + "quality": { + "area_px": 891.0, + "perimeter_px": 119.56283569335938, + "sharpness": { + "laplacian_var": 820.498501862312 + }, + "contrast": { + "p05": 32.0, + "p95": 175.0, + "dynamic_range": 143.0, + "mean_gray": 89.84786053882726, + "std_gray": 58.95198554771998 + }, + "geometry": { + "distance_to_center_norm": 0.24120134115219116, + "distance_to_border_px": 320.0 + }, + "edge_ratio": 1.1005049224950472, + "edge_lengths_px": [ + 31.320919036865234, + 28.460498809814453, + 31.320919036865234, + 28.460498809814453 + ] + }, + "confidence": 0.5397522426826521 + }, + { + "observation_id": "11e6ef4a-b478-44e2-b04f-532234c7b51b", + "type": "aruco", + "marker_id": 77, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1106.0, + 220.0 + ], + [ + 1135.0, + 213.0 + ], + [ + 1145.0, + 239.0 + ], + [ + 1116.0, + 248.0 + ] + ], + "center_px": [ + 1125.5, + 230.0 + ], + "quality": { + "area_px": 863.0, + "perimeter_px": 117.78623580932617, + "sharpness": { + "laplacian_var": 634.9850778546712 + }, + "contrast": { + "p05": 11.0, + "p95": 158.0, + "dynamic_range": 147.0, + "mean_gray": 69.19607843137256, + "std_gray": 58.47258547896745 + }, + "geometry": { + "distance_to_center_norm": 0.5671351552009583, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.0900202903476583, + "edge_lengths_px": [ + 29.832868576049805, + 27.85677719116211, + 30.364452362060547, + 29.73213768005371 + ] + }, + "confidence": 0.5278189208292927 + }, + { + "observation_id": "819d7760-9d12-4e50-8b01-c33ec2ae21e2", + "type": "aruco", + "marker_id": 83, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1304.0, + 199.0 + ], + [ + 1332.0, + 191.0 + ], + [ + 1343.0, + 218.0 + ], + [ + 1314.0, + 226.0 + ] + ], + "center_px": [ + 1323.25, + 208.5 + ], + "quality": { + "area_px": 853.5, + "perimeter_px": 117.15077781677246, + "sharpness": { + "laplacian_var": 787.246986385212 + }, + "contrast": { + "p05": 11.0, + "p95": 159.19999999999993, + "dynamic_range": 148.19999999999993, + "mean_gray": 92.65964343598056, + "std_gray": 57.146865375444264 + }, + "geometry": { + "distance_to_center_norm": 0.7648148536682129, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0448333273602466, + "edge_lengths_px": [ + 29.120439529418945, + 29.154760360717773, + 30.08321762084961, + 28.792360305786133 + ] + }, + "confidence": 0.5445844663450473 + }, + { + "observation_id": "5215268a-d7a1-4d59-97a4-386314a420b7", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1089.0, + 172.0 + ], + [ + 1118.0, + 165.0 + ], + [ + 1127.0, + 192.0 + ], + [ + 1098.0, + 199.0 + ] + ], + "center_px": [ + 1108.0, + 182.0 + ], + "quality": { + "area_px": 846.0, + "perimeter_px": 116.58673477172852, + "sharpness": { + "laplacian_var": 840.0864058387932 + }, + "contrast": { + "p05": 18.0, + "p95": 165.0, + "dynamic_range": 147.0, + "mean_gray": 108.12054329371817, + "std_gray": 55.17911014115476 + }, + "geometry": { + "distance_to_center_norm": 0.5865867137908936, + "distance_to_border_px": 165.0 + }, + "edge_ratio": 1.048220158592656, + "edge_lengths_px": [ + 29.832868576049805, + 28.460498809814453, + 29.832868576049805, + 28.460498809814453 + ] + }, + "confidence": 0.5380549070504695 + }, + { + "observation_id": "18591f13-ffaa-4f85-81ab-7a98aa173415", + "type": "aruco", + "marker_id": 61, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1260.0, + 127.0 + ], + [ + 1287.0, + 117.0 + ], + [ + 1300.0, + 143.0 + ], + [ + 1273.0, + 153.0 + ] + ], + "center_px": [ + 1280.0, + 135.0 + ], + "quality": { + "area_px": 832.0, + "perimeter_px": 115.72248840332031, + "sharpness": { + "laplacian_var": 747.7801521890221 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 95.53195164075993, + "std_gray": 57.42506055833918 + }, + "geometry": { + "distance_to_center_norm": 0.7678935527801514, + "distance_to_border_px": 117.0 + }, + "edge_ratio": 1.0096040611867558, + "edge_lengths_px": [ + 28.792360305786133, + 29.068883895874023, + 28.792360305786133, + 29.068883895874023 + ] + }, + "confidence": 0.5493902887184056 + }, + { + "observation_id": "89fd2f16-d27b-4370-9676-ee71a0e860af", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 842.0, + 759.0 + ], + [ + 869.0, + 767.0 + ], + [ + 844.0, + 778.0 + ], + [ + 816.0, + 770.0 + ] + ], + "center_px": [ + 842.75, + 768.5 + ], + "quality": { + "area_px": 506.5, + "perimeter_px": 112.82488250732422, + "sharpness": { + "laplacian_var": 927.7063988919667 + }, + "contrast": { + "p05": 19.0, + "p95": 83.0, + "dynamic_range": 64.0, + "mean_gray": 43.613157894736844, + "std_gray": 22.719116354348767 + }, + "geometry": { + "distance_to_center_norm": 0.2882038950920105, + "distance_to_border_px": 302.0 + }, + "edge_ratio": 1.0661750749552474, + "edge_lengths_px": [ + 28.160255432128906, + 27.312999725341797, + 29.120439529418945, + 28.23118782043457 + ] + }, + "confidence": 0.25336676844060735 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1315.0, + 285.0 + ], + [ + 1328.0, + 312.0 + ], + [ + 1300.0, + 322.0 + ], + [ + 1287.0, + 295.0 + ] + ], + "center_px": [ + 1307.5, + 303.5 + ], + "area_px": 886.0 + }, + { + "image_points_px": [ + [ + 1003.0, + 394.0 + ], + [ + 972.0, + 415.0 + ], + [ + 973.0, + 410.0 + ], + [ + 985.0, + 400.0 + ] + ], + "center_px": [ + 983.25, + 404.75 + ], + "area_px": 121.0 + }, + { + "image_points_px": [ + [ + 780.0, + 278.0 + ], + [ + 783.0, + 279.0 + ], + [ + 797.0, + 300.0 + ], + [ + 795.0, + 302.0 + ] + ], + "center_px": [ + 788.75, + 289.75 + ], + "area_px": 63.5 + }, + { + "image_points_px": [ + [ + 1087.0, + 550.0 + ], + [ + 1063.0, + 565.0 + ], + [ + 1074.0, + 554.0 + ], + [ + 1082.0, + 550.0 + ] + ], + "center_px": [ + 1076.5, + 554.75 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 665.0, + 67.0 + ], + [ + 675.0, + 85.0 + ], + [ + 674.0, + 91.0 + ], + [ + 667.0, + 78.0 + ] + ], + "center_px": [ + 670.25, + 80.25 + ], + "area_px": 64.5 + }, + { + "image_points_px": [ + [ + 1107.0, + 93.0 + ], + [ + 1110.0, + 95.0 + ], + [ + 1120.0, + 115.0 + ], + [ + 1115.0, + 111.0 + ] + ], + "center_px": [ + 1113.0, + 103.5 + ], + "area_px": 49.0 + }, + { + "image_points_px": [ + [ + 735.0, + 232.0 + ], + [ + 745.0, + 254.0 + ], + [ + 742.0, + 252.0 + ], + [ + 736.0, + 239.0 + ] + ], + "center_px": [ + 739.5, + 244.25 + ], + "area_px": 37.5 + }, + { + "image_points_px": [ + [ + 1214.0, + 340.0 + ], + [ + 1219.0, + 346.0 + ], + [ + 1223.0, + 362.0 + ], + [ + 1216.0, + 349.0 + ] + ], + "center_px": [ + 1218.0, + 349.25 + ], + "area_px": 46.5 + }, + { + "image_points_px": [ + [ + 1121.0, + 562.0 + ], + [ + 1129.0, + 569.0 + ], + [ + 1131.0, + 577.0 + ], + [ + 1130.0, + 583.0 + ] + ], + "center_px": [ + 1127.75, + 572.75 + ], + "area_px": 62.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/render_f_camera_pose.json b/data/camera_study/Scene10/k4_abcf/render_f_camera_pose.json new file mode 100644 index 0000000..e565393 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/render_f_camera_pose.json @@ -0,0 +1,582 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:41Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abcf\\render_f_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "f", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 27, + "used_marker_ids": [ + 68, + 46, + 208, + 47, + 56, + 53, + 97, + 62, + 54, + 55, + 72, + 66, + 214, + 95, + 51, + 103, + 69, + 58, + 82, + 73, + 210, + 52, + 64, + 77, + 83, + 75, + 61 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3, + 4 + ], + "rms": [ + 0.00918677717341902, + 0.0014933429518723808, + 0.001390373853667637, + 0.0013903699834861628, + 0.0013903699807887252 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125, + 6.25e-05 + ] + }, + "residual_rms_px": 3.941603533751138, + "residual_median_px": 3.7352373317630128, + "residual_max_px": 5.771900878439298, + "sigma2_normalized": 2.17476976890378e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.31769248843193054, + 0.9481521248817444, + 0.008892479352653027 + ], + [ + 0.9206541180610657, + -0.30620789527893066, + -0.242141991853714 + ], + [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + ], + "translation_m": [ + 0.12344730645418167, + -0.19988536834716797, + 1.4972078800201416 + ], + "rvec_rad": [ + 2.378352663832453, + 1.7133801592888853, + -0.1998435821316908 + ] + }, + "camera_in_world": { + "position_m": [ + 0.48447033762931824, + -0.3056860566139221, + 1.4030927419662476 + ], + "position_mm": [ + 484.4703369140625, + -305.6860656738281, + 1403.0927734375 + ], + "orientation_deg": { + "roll": 174.98638916015625, + "pitch": 13.112541198730469, + "yaw": 70.96184539794922 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 3.2311819447272024e-05, + 1.8832577487974546e-05, + -4.656767371183097e-06, + -4.18150026429738e-07, + 2.6114865287331025e-07, + 2.406181848846857e-06 + ], + [ + 1.8832577487974533e-05, + 1.683541014579236e-05, + -7.3574856590594524e-06, + 4.5948447714477966e-07, + 3.095065254407523e-08, + 2.3847847067019377e-06 + ], + [ + -4.6567673711861375e-06, + -7.357485659062205e-06, + 0.00016783973036034415, + 1.5647826411604766e-06, + -1.729586622472892e-06, + -2.906231789157714e-05 + ], + [ + -4.1815002642977447e-07, + 4.594844771447391e-07, + 1.5647826411606013e-06, + 3.507815548304795e-07, + -2.7134564617847737e-08, + 2.4204791300702807e-07 + ], + [ + 2.611486528733672e-07, + 3.0950652544076366e-08, + -1.729586622472832e-06, + -2.7134564617850665e-08, + 1.9997327434023874e-07, + 4.1386012647726157e-07 + ], + [ + 2.4061818488473495e-06, + 2.384784706702394e-06, + -2.9062317891576876e-05, + 2.420479130070509e-07, + 4.138601264772586e-07, + 9.270646369219581e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.3256891862833913, + 0.23509017702077495, + 0.7422838625560957 + ], + "tvec_std_m": [ + 0.0005922681443657758, + 0.00044718371430569644, + 0.003044773615430149 + ] + }, + "camera_center_std_m": [ + 0.011255169411300251, + 0.011919325044430497, + 0.004596769734438054 + ], + "camera_center_std_mm": [ + 11.255169411300251, + 11.919325044430497, + 4.5967697344380545 + ], + "orientation_std_deg": { + "roll": 0.5094522091773732, + "pitch": 0.4352540861263008, + "yaw": 0.1004884180203833 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 68, + "observed_center_px": [ + 1395.0, + 941.75 + ], + "projected_center_px": [ + 1389.3548583984375, + 940.5469970703125 + ], + "reprojection_error_px": 5.771900878439298, + "confidence": 0.3105318897567382 + }, + { + "marker_id": 46, + "observed_center_px": [ + 1383.25, + 882.5 + ], + "projected_center_px": [ + 1387.9061279296875, + 883.3380737304688 + ], + "reprojection_error_px": 4.7309507369362676, + "confidence": 0.480064078578645 + }, + { + "marker_id": 208, + "observed_center_px": [ + 937.0, + 754.25 + ], + "projected_center_px": [ + 934.9244995117188, + 751.2972412109375 + ], + "reprojection_error_px": 3.6092224568792584, + "confidence": 0.717438637944123 + }, + { + "marker_id": 47, + "observed_center_px": [ + 665.0, + 836.25 + ], + "projected_center_px": [ + 667.4868774414062, + 835.926025390625 + ], + "reprojection_error_px": 2.507891336580391, + "confidence": 0.714264135428559 + }, + { + "marker_id": 56, + "observed_center_px": [ + 1341.75, + 844.0 + ], + "projected_center_px": [ + 1344.8751220703125, + 839.613037109375 + ], + "reprojection_error_px": 5.386263209134431, + "confidence": 0.6720101269988878 + }, + { + "marker_id": 53, + "observed_center_px": [ + 1399.75, + 806.0 + ], + "projected_center_px": [ + 1394.572998046875, + 803.723388671875 + ], + "reprojection_error_px": 5.655467121468141, + "confidence": 0.25536384825957736 + }, + { + "marker_id": 97, + "observed_center_px": [ + 554.75, + 818.0 + ], + "projected_center_px": [ + 552.1571044921875, + 815.3113403320312 + ], + "reprojection_error_px": 3.7352373317630128, + "confidence": 0.7144285455619288 + }, + { + "marker_id": 62, + "observed_center_px": [ + 845.25, + 862.5 + ], + "projected_center_px": [ + 843.9764404296875, + 867.170166015625 + ], + "reprojection_error_px": 4.840702902743903, + "confidence": 0.7019920279258633 + }, + { + "marker_id": 54, + "observed_center_px": [ + 610.5, + 848.75 + ], + "projected_center_px": [ + 607.426025390625, + 853.0718994140625 + ], + "reprojection_error_px": 5.30359636891383, + "confidence": 0.7005026944924987 + }, + { + "marker_id": 55, + "observed_center_px": [ + 675.25, + 746.0 + ], + "projected_center_px": [ + 672.9774169921875, + 745.18359375 + ], + "reprojection_error_px": 2.4147779799470532, + "confidence": 0.6761108765479277 + }, + { + "marker_id": 72, + "observed_center_px": [ + 1346.5, + 753.25 + ], + "projected_center_px": [ + 1346.513671875, + 751.8689575195312 + ], + "reprojection_error_px": 1.381110152386584, + "confidence": 0.63555573802114 + }, + { + "marker_id": 66, + "observed_center_px": [ + 508.25, + 692.75 + ], + "projected_center_px": [ + 508.324951171875, + 692.6304321289062 + ], + "reprojection_error_px": 0.14111751827228045, + "confidence": 0.6485230397697823 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1037.75, + 714.25 + ], + "projected_center_px": [ + 1041.2877197265625, + 715.8521118164062 + ], + "reprojection_error_px": 3.8835838005607632, + "confidence": 0.62142490645665 + }, + { + "marker_id": 95, + "observed_center_px": [ + 612.75, + 626.25 + ], + "projected_center_px": [ + 616.0951538085938, + 624.1017456054688 + ], + "reprojection_error_px": 3.975556683883667, + "confidence": 0.6415498386959416 + }, + { + "marker_id": 51, + "observed_center_px": [ + 739.25, + 559.25 + ], + "projected_center_px": [ + 740.84765625, + 558.3189086914062 + ], + "reprojection_error_px": 1.8491718465580436, + "confidence": 0.6088879208521975 + }, + { + "marker_id": 103, + "observed_center_px": [ + 690.0, + 487.75 + ], + "projected_center_px": [ + 694.0453491210938, + 487.8307800292969 + ], + "reprojection_error_px": 4.046155573463183, + "confidence": 0.5954680843098741 + }, + { + "marker_id": 69, + "observed_center_px": [ + 538.5, + 403.0 + ], + "projected_center_px": [ + 534.0264892578125, + 406.2565612792969 + ], + "reprojection_error_px": 5.5333073045225545, + "confidence": 0.5651459847123547 + }, + { + "marker_id": 58, + "observed_center_px": [ + 633.0, + 428.5 + ], + "projected_center_px": [ + 631.8712768554688, + 432.2906494140625 + ], + "reprojection_error_px": 3.9551281796337383, + "confidence": 0.5885499509109636 + }, + { + "marker_id": 82, + "observed_center_px": [ + 1356.5, + 429.5 + ], + "projected_center_px": [ + 1358.176025390625, + 429.6244201660156 + ], + "reprojection_error_px": 1.6806372266884486, + "confidence": 0.6113473409254715 + }, + { + "marker_id": 73, + "observed_center_px": [ + 1401.5, + 418.5 + ], + "projected_center_px": [ + 1403.8709716796875, + 418.31756591796875 + ], + "reprojection_error_px": 2.377980004156206, + "confidence": 0.22008504273316973 + }, + { + "marker_id": 210, + "observed_center_px": [ + 872.0, + 307.0 + ], + "projected_center_px": [ + 871.6832885742188, + 304.965087890625 + ], + "reprojection_error_px": 2.0594109400751965, + "confidence": 0.60279428383853 + }, + { + "marker_id": 52, + "observed_center_px": [ + 1190.25, + 312.5 + ], + "projected_center_px": [ + 1186.0579833984375, + 316.39373779296875 + ], + "reprojection_error_px": 5.7213807064526625, + "confidence": 0.5743827506632194 + }, + { + "marker_id": 64, + "observed_center_px": [ + 640.5, + 338.0 + ], + "projected_center_px": [ + 640.4821166992188, + 334.9952087402344 + ], + "reprojection_error_px": 3.0048444763765603, + "confidence": 0.5397522426826521 + }, + { + "marker_id": 77, + "observed_center_px": [ + 1125.5, + 230.0 + ], + "projected_center_px": [ + 1128.3472900390625, + 234.04983520507812 + ], + "reprojection_error_px": 4.950578325290361, + "confidence": 0.5278189208292927 + }, + { + "marker_id": 83, + "observed_center_px": [ + 1323.25, + 208.5 + ], + "projected_center_px": [ + 1319.932373046875, + 207.5139923095703 + ], + "reprojection_error_px": 3.461048940088533, + "confidence": 0.5445844663450473 + }, + { + "marker_id": 75, + "observed_center_px": [ + 1108.0, + 182.0 + ], + "projected_center_px": [ + 1111.3167724609375, + 182.71337890625 + ], + "reprojection_error_px": 3.392622734922916, + "confidence": 0.5380549070504695 + }, + { + "marker_id": 61, + "observed_center_px": [ + 1280.0, + 135.0 + ], + "projected_center_px": [ + 1282.8663330078125, + 133.39898681640625 + ], + "reprojection_error_px": 3.283155208898362, + "confidence": 0.5493902887184056 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/robot_state.eval.json b/data/camera_study/Scene10/k4_abcf/robot_state.eval.json new file mode 100644 index 0000000..5ca0f0b --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 119.88014785527876, + "gt": 120.0, + "error": 0.11985214472123573, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 59.86364231167419, + "gt": 60.0, + "error": 0.13635768832580197, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -110.02861309820847, + "gt": -110.0, + "error": 0.028613098208467136, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "a", + "estimate": 20.311602206920867, + "gt": 20.0, + "error": 0.3116022069208668, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "b", + "estimate": 31.680334818784388, + "gt": 30.0, + "error": 1.680334818784388, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "c", + "estimate": 178.2590640958284, + "gt": 180.0, + "error": 1.7409359041716073, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "e", + "estimate": 5.33694499391234, + "gt": 4.0, + "error": 1.33694499391234, + "unit": "mm", + "observable": true, + "n_markers": 1 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.7795687432822263, + "max_abs_deg": 1.7409359041716073, + "mean_abs_mm": 0.7283985693167878, + "max_abs_mm": 1.33694499391234 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abcf/robot_state.json b/data/camera_study/Scene10/k4_abcf/robot_state.json new file mode 100644 index 0000000..e20d287 --- /dev/null +++ b/data/camera_study/Scene10/k4_abcf/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:46Z", + "method": "hybrid", + "movements": { + "x": { + "value": 119.88014785527876, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 59.86364231167419, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -110.02861309820847, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "a": { + "value": 20.311602206920867, + "unit": "deg", + "observable": true, + "confidence": "medium", + "n_markers": 1 + }, + "b": { + "value": 31.680334818784388, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "c": { + "value": 178.2590640958284, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "e": { + "value": 5.33694499391234, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + } + }, + "residual_rms": 1.7434394273190081, + "num_markers": 30 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/aruco_marker_poses.json b/data/camera_study/Scene10/k4_abdf/aruco_marker_poses.json new file mode 100644 index 0000000..a24c582 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/aruco_marker_poses.json @@ -0,0 +1,1375 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:19:28Z", + "summary": { + "num_cameras": 4, + "num_markers": 30 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.305343071741636, + -0.20016154038040945, + 0.02464007558513031 + ], + "position_mm": [ + 305.343071741636, + -200.16154038040946, + 24.640075585130308 + ], + "normal": [ + 0.14669819549079902, + -0.9659634273146507, + 0.2130593732513943 + ], + "corners_m": [ + [ + 0.2921168126403349, + -0.19975541716585885, + 0.03514376390606453 + ], + [ + 0.31568987763672307, + -0.19590045509644688, + 0.037271063284086706 + ], + [ + 0.3184174374008528, + -0.2004528074126251, + 0.013875445303034842 + ], + [ + 0.2951481592886332, + -0.20453748184670695, + 0.012270029847335146 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.80357762400921 + }, + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.34361130569687853, + -0.2881949560297543, + -0.02740472368952218 + ], + "position_mm": [ + 343.61130569687856, + -288.19495602975434, + -27.404723689522182 + ], + "normal": [ + 0.004111763330347795, + 0.02766254977368266, + 0.9996088618766511 + ], + "corners_m": [ + [ + 0.33198678316660385, + -0.30000591763906953, + -0.02723624701741222 + ], + [ + 0.3318160332124473, + -0.27626279934396397, + -0.027484388938457886 + ], + [ + 0.3554722583875427, + -0.27647976174616895, + -0.027981171976171795 + ], + [ + 0.3551701480209204, + -0.3000313453898149, + -0.026917086826046814 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.542646315350595 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16774939084695234, + -0.1733132023394009, + -0.027387424345515627 + ], + "position_mm": [ + 167.74939084695234, + -173.3132023394009, + -27.387424345515626 + ], + "normal": [ + -0.025290565675465792, + 0.007946417738463385, + 0.9996485591111214 + ], + "corners_m": [ + [ + 0.1558942504600005, + -0.1841887534574409, + -0.02780620833864482 + ], + [ + 0.1562339623880011, + -0.1611783334514493, + -0.027573587506912085 + ], + [ + 0.17983661576569357, + -0.16212626626893675, + -0.027366573331974557 + ], + [ + 0.17903273477411413, + -0.18575945617977666, + -0.02680332820453105 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.37591622334603 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.4887749088558654, + 0.2151305617304476, + -0.027257104749172038 + ], + "position_mm": [ + 488.77490885586536, + 215.1305617304476, + -27.257104749172036 + ], + "normal": [ + -0.032364710715890845, + 0.050705056870831045, + 0.9981891217139178 + ], + "corners_m": [ + [ + 0.47699430612106947, + 0.20340471073717656, + -0.027263892163923574 + ], + [ + 0.47726095275340014, + 0.22755352164452325, + -0.028037232326808686 + ], + [ + 0.5003725394594621, + 0.22666304788001002, + -0.02769443228403516 + ], + [ + 0.5004718370895298, + 0.20290096666008045, + -0.02603286222192074 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.657356615577978 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3397346611247085, + -0.32743527721704746, + -0.027358200256640108 + ], + "position_mm": [ + 339.7346611247085, + -327.4352772170475, + -27.358200256640107 + ], + "normal": [ + 0.0018693690032810263, + 0.015989188102273014, + 0.9998704172658374 + ], + "corners_m": [ + [ + 0.3279518353965553, + -0.33908611627545787, + -0.027258947504154953 + ], + [ + 0.3281662138645668, + -0.31586167306264806, + -0.027409945598058136 + ], + [ + 0.35123837923225665, + -0.31563955984886993, + -0.027678637121200892 + ], + [ + 0.35158221600545536, + -0.3391537596812139, + -0.027085270803146443 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.364009055823907 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.2844208863404689, + -0.26095445068143774, + -0.02738766868936351 + ], + "position_mm": [ + 284.42088634046894, + -260.9544506814377, + -27.38766868936351 + ], + "normal": [ + -0.037632844695666606, + 0.024040388690516612, + 0.9990024167697097 + ], + "corners_m": [ + [ + 0.27232193776048697, + -0.2722929792231064, + -0.027520183703303593 + ], + [ + 0.2731034157071807, + -0.2484956394560808, + -0.028164847853168598 + ], + [ + 0.29636316965453496, + -0.2499791940869958, + -0.027149240453943284 + ], + [ + 0.295895022239673, + -0.2730499899595681, + -0.026716402747038574 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.45664038526802 + }, + { + "marker_id": 62, + "link": "Board", + "position_m": [ + 0.40163470248715044, + -0.17304156657109315, + -0.02771976305492824 + ], + "position_mm": [ + 401.63470248715043, + -173.04156657109314, + -27.71976305492824 + ], + "normal": [ + 0.02219455578318603, + 0.06028364603539847, + 0.9979345087300397 + ], + "corners_m": [ + [ + 0.390428043421149, + -0.1851393811179651, + -0.026708306341205548 + ], + [ + 0.38961279255529024, + -0.16218103271614057, + -0.028139913909099933 + ], + [ + 0.4128111458525494, + -0.16059894801681016, + -0.028689424681297905 + ], + [ + 0.41368682811961316, + -0.18424690443345684, + -0.02734140728810958 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.315787613790523 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.01945187342307818, + -0.18903087336851115, + -0.027588569524963847 + ], + "position_mm": [ + -19.451873423078183, + -189.03087336851115, + -27.588569524963848 + ], + "normal": [ + 0.014164915085705734, + 0.013533226549594992, + 0.9998080850642148 + ], + "corners_m": [ + [ + -0.031185409955169857, + -0.20058762368652988, + -0.027371837023429126 + ], + [ + -0.03086368939930449, + -0.1773352455413771, + -0.027477703139143463 + ], + [ + -0.007890856073246999, + -0.17759679591801872, + -0.02801574974639302 + ], + [ + -0.007867538264591379, + -0.20060382832811896, + -0.02748898819088978 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.141677926357218 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.005775772466982399, + -0.2774013360253108, + -0.02744380881088744 + ], + "position_mm": [ + 5.775772466982399, + -277.4013360253108, + -27.44380881088744 + ], + "normal": [ + 0.0019120962774100156, + -0.0006955850344323722, + 0.9999979300225006 + ], + "corners_m": [ + [ + -0.006220637479738506, + -0.28886945496909316, + -0.027378586192125652 + ], + [ + -0.005474344730197179, + -0.26547151621524184, + -0.027464682794988843 + ], + [ + 0.01767325414765851, + -0.26601156003507176, + -0.027407603505919045 + ], + [ + 0.01712481793020677, + -0.2892528128818366, + -0.027524362750516233 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.29025944470815 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.4418452616655221, + 0.19411425116661324, + -0.02779585459975433 + ], + "position_mm": [ + 441.8452616655221, + 194.11425116661323, + -27.795854599754332 + ], + "normal": [ + 0.07280118041719603, + 0.022422351374504552, + 0.9970943918650336 + ], + "corners_m": [ + [ + 0.4307227295960595, + 0.18191561788154603, + -0.027235283274477804 + ], + [ + 0.4297867172132932, + 0.2046788349673567, + -0.02663320550543597 + ], + [ + 0.4530171550582433, + 0.20660276862766846, + -0.029398595655283615 + ], + [ + 0.4538544447944925, + 0.18325978318988173, + -0.027916333963819928 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.212391570768254 + }, + { + "marker_id": 75, + "link": "Board", + "position_m": [ + -0.02733332392195131, + 0.19250946762819654, + -0.026105191756293493 + ], + "position_mm": [ + -27.33332392195131, + 192.50946762819655, + -26.105191756293493 + ], + "normal": [ + -0.015591456672604828, + 0.027380262228444585, + 0.9995034905987712 + ], + "corners_m": [ + [ + -0.039632794240308244, + 0.1818324120058419, + -0.025943143130120236 + ], + [ + -0.03826878856566006, + 0.20507182277724684, + -0.026682040816382094 + ], + [ + -0.015172046285233508, + 0.20313583382750997, + -0.02614410310101719 + ], + [ + -0.01625966659660343, + 0.17999780190218734, + -0.02565147997765447 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.27268988675464 + }, + { + "marker_id": 85, + "link": "Board", + "position_m": [ + 0.5063396802870157, + -0.3135214763433817, + -0.027594468153602107 + ], + "position_mm": [ + 506.3396802870157, + -313.52147634338166, + -27.594468153602108 + ], + "normal": [ + -0.006990534975307135, + -0.014190489550252539, + 0.9998748733852068 + ], + "corners_m": [ + [ + 0.4940710355094577, + -0.3247132382913153, + -0.027625657177304284 + ], + [ + 0.49514756050654757, + -0.3012518246895481, + -0.027717674370342973 + ], + [ + 0.518290444991102, + -0.3026956342433219, + -0.027131069440025753 + ], + [ + 0.5178496801409558, + -0.3254252081493413, + -0.027903471626735434 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.30486593470645 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.1866361438984786, + -0.2766921243984541, + -0.02718897279918228 + ], + "position_mm": [ + 186.6361438984786, + -276.6921243984541, + -27.18897279918228 + ], + "normal": [ + -0.005421056540869463, + -0.004688541092149057, + 0.9999743145343324 + ], + "corners_m": [ + [ + 0.17540653752192306, + -0.28888602920522305, + -0.027182771554858473 + ], + [ + 0.17421739382422277, + -0.26548342376363104, + -0.027328894464582646 + ], + [ + 0.19780159897541982, + -0.26488877159595914, + -0.02694369638739693 + ], + [ + 0.19911904527234886, + -0.2875102730290031, + -0.027300528789891088 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.360853879837606 + }, + { + "marker_id": 97, + "link": "Board", + "position_m": [ + 0.30659126058462804, + -0.35823125702289793, + -0.027137100462690647 + ], + "position_mm": [ + 306.59126058462806, + -358.2312570228979, + -27.137100462690647 + ], + "normal": [ + 0.010344817335847445, + 0.006407217059227755, + 0.9999259634212144 + ], + "corners_m": [ + [ + 0.2946161460311364, + -0.36999459282310276, + -0.026654228832496046 + ], + [ + 0.294822884320035, + -0.3461892075844944, + -0.027376882527948815 + ], + [ + 0.3185381562342678, + -0.3468183366049846, + -0.027040741795292193 + ], + [ + 0.3183878557530731, + -0.36992289107900994, + -0.027476548695025523 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.60960873094876 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6506322993203831, + -0.22404420835307964, + -0.027083346484058766 + ], + "position_mm": [ + 650.6322993203831, + -224.04420835307965, + -27.083346484058765 + ], + "normal": [ + 0.007453559265215193, + -0.04325842158104699, + 0.9990361121684223 + ], + "corners_m": [ + [ + 0.638710707258843, + -0.23493804511008234, + -0.02725591213895623 + ], + [ + 0.6394722593076244, + -0.21238711834152707, + -0.026710930731421133 + ], + [ + 0.6622639251261075, + -0.21317600144133933, + -0.02648361212968244 + ], + [ + 0.6620823055889574, + -0.23567566851936983, + -0.027882930936175266 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.82808024331435 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10453047274580712, + -0.19053056078221536, + -0.027268906474893516 + ], + "position_mm": [ + 104.53047274580712, + -190.53056078221536, + -27.268906474893516 + ], + "normal": [ + -0.008784259880886037, + -0.017891553316814583, + 0.9998013448171875 + ], + "corners_m": [ + [ + 0.09284647061140282, + -0.20221466239212246, + -0.027577449343473556 + ], + [ + 0.092528216770978, + -0.17928912678040643, + -0.027176439172575905 + ], + [ + 0.1160427439713772, + -0.17880564347334096, + -0.026954705807369472 + ], + [ + 0.11670445962947049, + -0.20181281048299157, + -0.027367031576155144 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.333617038127827 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.31009096246419376, + -0.15546434505015455, + 0.1573280052297306 + ], + "position_mm": [ + 310.09096246419375, + -155.46434505015455, + 157.3280052297306 + ], + "normal": [ + -0.35203814687889046, + -0.732885576019988, + 0.582192301223511 + ], + "corners_m": [ + [ + 0.2987480533127025, + -0.14475139014876157, + 0.16380520802001633 + ], + [ + 0.3210363690218485, + -0.15104247750951016, + 0.1696612447244679 + ], + [ + 0.32154952186287133, + -0.1661403690674658, + 0.15066965520185366 + ], + [ + 0.2990299056593526, + -0.1599231434748807, + 0.14517591297258445 + ] + ], + "num_cameras": 4, + "edge_length_mm": 24.04544729914968 + }, + { + "marker_id": 205, + "link": "Board", + "position_m": [ + 0.7522864761629531, + -0.0908124559745079, + 0.0008870449859709909 + ], + "position_mm": [ + 752.286476162953, + -90.8124559745079, + 0.8870449859709909 + ], + "normal": [ + -0.01491644266427506, + -0.028263746611815514, + 0.9994891997243924 + ], + "corners_m": [ + [ + 0.7410207214314708, + -0.07877501566903286, + 0.0004942482391278989 + ], + [ + 0.763021651073034, + -0.08016728058282391, + 0.0019727039654060478 + ], + [ + 0.7645804923971876, + -0.10164298920325765, + 0.00019117690202857826 + ], + [ + 0.7405230397501202, + -0.10266453844291722, + 0.0008900508373214385 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.92187474337055 + }, + { + "marker_id": 206, + "link": "Board", + "position_m": [ + 0.6500000814765554, + -0.010119256498941923, + 0.00042321635657145365 + ], + "position_mm": [ + 650.0000814765555, + -10.119256498941922, + 0.4232163565714536 + ], + "normal": [ + 0.011592821740882445, + -0.007759304215309904, + 0.9999026951069682 + ], + "corners_m": [ + [ + 0.6383081225600975, + 0.0013785011640512724, + 0.0006024455240636259 + ], + [ + 0.6615704626944585, + 0.0017490939301256006, + 0.00042655368077619 + ], + [ + 0.6617018160883879, + -0.02165869377987186, + 0.0001526571045244104 + ], + [ + 0.6384199245632778, + -0.021945927310072704, + 0.0005112091169215882 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.321753530436958 + }, + { + "marker_id": 208, + "link": "Board", + "position_m": [ + 0.3526986120439106, + -0.08935622663652823, + 0.0011633686963663397 + ], + "position_mm": [ + 352.6986120439106, + -89.35622663652823, + 1.1633686963663397 + ], + "normal": [ + -0.013236583432435613, + -0.010806262932010705, + 0.9998539981119646 + ], + "corners_m": [ + [ + 0.34127711669572514, + -0.07725121047815589, + 0.0011521877714661302 + ], + [ + 0.3651368177784906, + -0.07831636687632855, + 0.0014382733997397425 + ], + [ + 0.364279559038811, + -0.10162031908373173, + 0.0011930850054520307 + ], + [ + 0.34010095466261564, + -0.10023701010789676, + 0.0008699286088074556 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.611020703742835 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.021717162884271023, + -0.02027482982275059, + 0.0008960635038753245 + ], + "position_mm": [ + 21.717162884271023, + -20.27482982275059, + 0.8960635038753245 + ], + "normal": [ + -0.022280235685247684, + -0.0006814923614278935, + 0.9997515324649277 + ], + "corners_m": [ + [ + 0.009436167829839687, + -0.008810033621827603, + 0.0005706445301922743 + ], + [ + 0.0333857517927066, + -0.008826562872614845, + 0.0012245580210935752 + ], + [ + 0.034029715631190983, + -0.031528392563958646, + 0.0011023127487103156 + ], + [ + 0.010017016283346827, + -0.031934330232601275, + 0.0006867387155051332 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.455353199493423 + }, + { + "marker_id": 211, + "link": "Board", + "position_m": [ + 0.2530065866788742, + -0.009078967052198496, + 0.0002376119420386636 + ], + "position_mm": [ + 253.0065866788742, + -9.078967052198497, + 0.2376119420386636 + ], + "normal": [ + 0.03042550068248083, + -0.009720333478128397, + 0.9994897718462628 + ], + "corners_m": [ + [ + 0.24136623721995637, + 0.002850179394630775, + 0.0005813893433372668 + ], + [ + 0.2654058209981499, + 0.001933732747426273, + 9.756259486912603e-05 + ], + [ + 0.26496436392725625, + -0.020677306700458958, + -0.00036621710184547444 + ], + [ + 0.2402899245701341, + -0.020422473650392074, + 0.0006377129317937359 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.66894498028794 + }, + { + "marker_id": 214, + "link": "Board", + "position_m": [ + 0.34801762945379355, + -0.011496397017894368, + 0.0009525658480697968 + ], + "position_mm": [ + 348.0176294537936, + -11.496397017894369, + 0.9525658480697968 + ], + "normal": [ + 0.010996794693307534, + -0.02038436549448286, + 0.9997317380927049 + ], + "corners_m": [ + [ + 0.3364440665358176, + -1.565767655545306e-05, + 0.0012936517464554004 + ], + [ + 0.3598529593843553, + -0.0005669667310831659, + 0.0010658555630104199 + ], + [ + 0.3599951197720421, + -0.02280722867308165, + 0.000570244599208776 + ], + [ + 0.33577837212295936, + -0.022595734990857208, + 0.000880511483604591 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.11901346510598 + }, + { + "marker_id": 215, + "link": "Board", + "position_m": [ + 0.25042025949499297, + -0.08847065880633932, + 0.0002855341851703378 + ], + "position_mm": [ + 250.42025949499296, + -88.47065880633932, + 0.28553418517033785 + ], + "normal": [ + -0.01815665594731763, + -0.009888596798264981, + 0.9997862529051759 + ], + "corners_m": [ + [ + 0.23914734210610256, + -0.07599756188601692, + 0.0001214116699956801 + ], + [ + 0.262490747221959, + -0.07784321863282265, + 0.000694555600539444 + ], + [ + 0.2618991412619549, + -0.10068622634043879, + 0.0002898402626501584 + ], + [ + 0.23814380738995547, + -0.09935562836607893, + 3.63292074960689e-05 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.36280218717181 + }, + { + "marker_id": 218, + "link": "Arm2", + "position_m": [ + 0.35368209771592496, + -0.0994615110956942, + 0.19956017109351087 + ], + "position_mm": [ + 353.68209771592495, + -99.4615110956942, + 199.56017109351086 + ], + "normal": [ + 0.9434809764113783, + -0.26499455108402514, + 0.19905158890500788 + ], + "corners_m": [ + [ + 0.3497794886952876, + -0.10014350713255572, + 0.21689899514496166 + ], + [ + 0.3575047054831509, + -0.08385275617174048, + 0.20249292431168991 + ], + [ + 0.3576879112447054, + -0.09770028835233091, + 0.1826592092085517 + ], + [ + 0.349756285440556, + -0.11614949272614974, + 0.19618955570884017 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.41424801234189 + }, + { + "marker_id": 219, + "link": "Arm2", + "position_m": [ + 0.35391914222642984, + -0.16722346052065135, + 0.1148982270692051 + ], + "position_mm": [ + 353.9191422264298, + -167.22346052065134, + 114.8982270692051 + ], + "normal": [ + 0.939208805345056, + -0.26542855375814034, + 0.21779463448894887 + ], + "corners_m": [ + [ + 0.34985167594320005, + -0.16741512109547116, + 0.1320442584723143 + ], + [ + 0.3582699581078241, + -0.15106316600129685, + 0.11599173928815823 + ], + [ + 0.35803815193612665, + -0.16676981974184812, + 0.09753171010283479 + ], + [ + 0.34951678291856847, + -0.18364573524398925, + 0.11402520041351312 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.49824616904656 + }, + { + "marker_id": 231, + "link": "Ellbow", + "position_m": [ + 0.3181279544734382, + -0.018690105434870683, + 0.3157597350010689 + ], + "position_mm": [ + 318.12795447343825, + -18.690105434870684, + 315.7597350010689 + ], + "normal": [ + 0.02862980531096407, + -0.0711073197318074, + 0.997057713138219 + ], + "corners_m": [ + [ + 0.3058463554372685, + -0.007306802398638204, + 0.317159271979887 + ], + [ + 0.32981054958999045, + -0.006400015833296374, + 0.3160653722314684 + ], + [ + 0.33042400516398, + -0.03008935587610088, + 0.31482907138786814 + ], + [ + 0.3064309077025141, + -0.03096424763144727, + 0.3149852244050522 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.8774150117515 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.22997919398511424, + -0.03803171102088574, + 0.30680592879780855 + ], + "position_mm": [ + 229.97919398511425, + -38.03171102088574, + 306.8059287978085 + ], + "normal": [ + -0.009809953282895831, + -0.4895364024047778, + 0.8719276779281495 + ], + "corners_m": [ + [ + 0.21814518213528344, + -0.027562580307999893, + 0.3124396258734183 + ], + [ + 0.24180901417166004, + -0.02802628331256867, + 0.3126666285857125 + ], + [ + 0.241832224857348, + -0.04848313924392087, + 0.3009614383651983 + ], + [ + 0.21813035477616552, + -0.048054841219053526, + 0.3011560223669052 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.584593703024176 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3198881623318637, + -0.046296684962383795, + 0.29827978955690465 + ], + "position_mm": [ + 319.88816233186367, + -46.29668496238379, + 298.27978955690463 + ], + "normal": [ + -0.010099687923214811, + -0.7659733806301161, + 0.6427929499223874 + ], + "corners_m": [ + [ + 0.30760559561146217, + -0.03902023018773134, + 0.3068755602172356 + ], + [ + 0.3314450749207165, + -0.03898963107084978, + 0.30706009483137553 + ], + [ + 0.3323771245537481, + -0.0542913977476339, + 0.2890561973066011 + ], + [ + 0.30812485424152786, + -0.052885480843320176, + 0.2901273058724063 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.388054115273526 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.2816494920475185, + -0.04243056489560346, + 0.3029010627377403 + ], + "position_mm": [ + 281.6494920475185, + -42.43056489560346, + 302.9010627377403 + ], + "normal": [ + 0.004148479705695884, + -0.7690186494587606, + 0.6392128807375173 + ], + "corners_m": [ + [ + 0.2693057408251742, + -0.035058490115542, + 0.3115626356156611 + ], + [ + 0.29311691904035736, + -0.034524634869132445, + 0.3126201444865096 + ], + [ + 0.29405100480907564, + -0.04967114565289345, + 0.29382874224961525 + ], + [ + 0.27012430351546673, + -0.05046798894484595, + 0.29359272859917523 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.905461751975015 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/aruco_positions_initial.json b/data/camera_study/Scene10/k4_abdf/aruco_positions_initial.json new file mode 100644 index 0000000..a9b7567 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/aruco_positions_initial.json @@ -0,0 +1,656 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:19:26Z", + "summary": { + "num_cameras": 4, + "num_markers": 30, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.30535804316010734, + -0.2000683586434736, + 0.02459227325141969 + ], + "position_mm": [ + 305.35804316010734, + -200.0683586434736, + 24.592273251419687 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3437251241398752, + -0.2880518570653535, + -0.027336175680837974 + ], + "position_mm": [ + 343.7251241398752, + -288.05185706535354, + -27.336175680837975 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16785854357163119, + -0.17315579742762638, + -0.027341000491546467 + ], + "position_mm": [ + 167.85854357163117, + -173.15579742762637, + -27.341000491546467 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4887969373394409, + 0.2151519019436198, + -0.027344778657349317 + ], + "position_mm": [ + 488.7969373394409, + 215.1519019436198, + -27.344778657349316 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3399007685346788, + -0.32741013108724015, + -0.02754239461514119 + ], + "position_mm": [ + 339.90076853467883, + -327.41013108724013, + -27.542394615141188 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.284542628458916, + -0.2609142429326301, + -0.027523444076098025 + ], + "position_mm": [ + 284.542628458916, + -260.9142429326301, + -27.523444076098023 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.4016442754970195, + -0.17304360384293327, + -0.02782735644960473 + ], + "position_mm": [ + 401.64427549701946, + -173.04360384293327, + -27.82735644960473 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01923732306315494, + -0.18910787816942473, + -0.027526791346807664 + ], + "position_mm": [ + -19.23732306315494, + -189.10787816942474, + -27.526791346807663 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.0061112838085795994, + -0.27739722417105167, + -0.0272320047434096 + ], + "position_mm": [ + 6.111283808579599, + -277.3972241710517, + -27.232004743409597 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4418532539715914, + 0.19413790567464606, + -0.027882661763834013 + ], + "position_mm": [ + 441.8532539715914, + 194.13790567464605, + -27.88266176383401 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027390253334127496, + 0.19253937360267048, + -0.025965078296917538 + ], + "position_mm": [ + -27.390253334127497, + 192.53937360267048, + -25.96507829691754 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5063530924316049, + -0.3135538253142812, + -0.02766300592122651 + ], + "position_mm": [ + 506.35309243160486, + -313.5538253142812, + -27.66300592122651 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18712500986470557, + -0.27672814255121136, + -0.026652539900543178 + ], + "position_mm": [ + 187.12500986470556, + -276.72814255121136, + -26.65253990054318 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.30660433344953525, + -0.35825402004545726, + -0.027246402971970632 + ], + "position_mm": [ + 306.60433344953526, + -358.25402004545725, + -27.24640297197063 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6506496658425812, + -0.22406775861996026, + -0.027142007301685093 + ], + "position_mm": [ + 650.6496658425813, + -224.06775861996024, + -27.142007301685094 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10472198041479035, + -0.19055212235756008, + -0.027191118033750027 + ], + "position_mm": [ + 104.72198041479035, + -190.55212235756008, + -27.191118033750026 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.30992252595541614, + -0.15543394817886005, + 0.1571013171095873 + ], + "position_mm": [ + 309.9225259554161, + -155.43394817886005, + 157.1013171095873 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7523091316145816, + -0.0908295201086147, + 0.000834633856532585 + ], + "position_mm": [ + 752.3091316145816, + -90.8295201086147, + 0.8346338565325849 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500135896057839, + -0.010136006087639692, + 0.00037332949430560306 + ], + "position_mm": [ + 650.013589605784, + -10.136006087639691, + 0.3733294943056031 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 208, + "position_m": [ + 0.35272495834819445, + -0.089349745315892, + 0.0010874954950881295 + ], + "position_mm": [ + 352.72495834819443, + -89.34974531589201, + 1.0874954950881295 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021586136197409667, + -0.020230171447986223, + 0.0011640471470370068 + ], + "position_mm": [ + 21.58613619740967, + -20.230171447986223, + 1.1640471470370068 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25300004414982186, + -0.009074606313736522, + 0.00016276608304794952 + ], + "position_mm": [ + 253.00004414982186, + -9.074606313736522, + 0.1627660830479495 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.34840234712197526, + -0.012078013938502287, + 0.001202886251930221 + ], + "position_mm": [ + 348.40234712197525, + -12.078013938502286, + 1.202886251930221 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25041920016634434, + -0.08847728419421877, + 0.0002108696475885868 + ], + "position_mm": [ + 250.41920016634432, + -88.47728419421877, + 0.21086964758858678 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3536314171939221, + -0.09947516209694193, + 0.19956923774735225 + ], + "position_mm": [ + 353.6314171939221, + -99.47516209694193, + 199.56923774735225 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3538598129079944, + -0.16723119791621946, + 0.11488168558771951 + ], + "position_mm": [ + 353.8598129079944, + -167.23119791621946, + 114.8816855877195 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.31814418950007245, + -0.018667115816921015, + 0.31569076123152473 + ], + "position_mm": [ + 318.14418950007246, + -18.667115816921015, + 315.69076123152473 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.2285719280445146, + -0.03747797453667984, + 0.30564959585704154 + ], + "position_mm": [ + 228.5719280445146, + -37.47797453667984, + 305.64959585704156 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3188408154544438, + -0.04593866388972376, + 0.29717193224579 + ], + "position_mm": [ + 318.8408154544438, + -45.938663889723756, + 297.17193224579 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2804963728355279, + -0.04194904038161881, + 0.3018025093322513 + ], + "position_mm": [ + 280.4963728355279, + -41.949040381618815, + 301.8025093322513 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/aruco_positions_optimized.json b/data/camera_study/Scene10/k4_abdf/aruco_positions_optimized.json new file mode 100644 index 0000000..1611632 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/aruco_positions_optimized.json @@ -0,0 +1,655 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:19:27Z", + "summary": { + "num_cameras": 4, + "num_markers": 30, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.30544930173428975, + -0.19987487502608017, + 0.024804241416328275 + ], + "position_mm": [ + 305.44930173428975, + -199.87487502608016, + 24.804241416328274 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3448722279827528, + -0.2850738979380542, + -0.031430166509752014 + ], + "position_mm": [ + 344.8722279827528, + -285.0738979380542, + -31.430166509752013 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16681690096703886, + -0.17452662465799895, + -0.025746576695574744 + ], + "position_mm": [ + 166.81690096703886, + -174.52662465799895, + -25.746576695574745 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4877971078669099, + 0.21334664325518743, + -0.02479507477440354 + ], + "position_mm": [ + 487.79710786690987, + 213.34664325518742, + -24.795074774403542 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.33987505018982567, + -0.3285630089914609, + -0.026142418300821407 + ], + "position_mm": [ + 339.8750501898257, + -328.5630089914609, + -26.142418300821408 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.284591928991722, + -0.2608369780402175, + -0.027635342778607765 + ], + "position_mm": [ + 284.591928991722, + -260.8369780402175, + -27.635342778607765 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 62, + "position_m": [ + 0.4016644069780584, + -0.17304943837477327, + -0.027828213388534865 + ], + "position_mm": [ + 401.66440697805837, + -173.04943837477327, + -27.828213388534866 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01963107224346721, + -0.18876720703078695, + -0.027748766357763865 + ], + "position_mm": [ + -19.631072243467212, + -188.76720703078695, + -27.748766357763866 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005769924337076684, + -0.2774193911004478, + -0.027377351468270326 + ], + "position_mm": [ + 5.769924337076684, + -277.4193911004478, + -27.377351468270327 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4427691357269632, + 0.19552685680499923, + -0.02974821913588905 + ], + "position_mm": [ + 442.7691357269632, + 195.52685680499923, + -29.748219135889048 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.02744888566924195, + 0.19263984378565788, + -0.026109561875821276 + ], + "position_mm": [ + -27.44888566924195, + 192.6398437856579, + -26.109561875821278 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5063510811889766, + -0.31353395946779505, + -0.02765466711550374 + ], + "position_mm": [ + 506.35108118897665, + -313.53395946779506, + -27.654667115503738 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.1865683912116377, + -0.27622032455266027, + -0.027458716876956647 + ], + "position_mm": [ + 186.5683912116377, + -276.22032455266026, + -27.458716876956647 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.304101214761318, + -0.3601778877302162, + -0.024069200271824243 + ], + "position_mm": [ + 304.10121476131803, + -360.1778877302162, + -24.069200271824243 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6506496532964661, + -0.22406764829244832, + -0.027141958695405085 + ], + "position_mm": [ + 650.6496532964661, + -224.06764829244833, + -27.141958695405084 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10478855558391457, + -0.1903242088989933, + -0.027292646215721538 + ], + "position_mm": [ + 104.78855558391457, + -190.3242088989933, + -27.29264621572154 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3106500688795524, + -0.1547855388711725, + 0.156881458939598 + ], + "position_mm": [ + 310.65006887955235, + -154.7855388711725, + 156.88145893959802 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7523093215213723, + -0.09083060961491889, + 0.0008346340156521701 + ], + "position_mm": [ + 752.3093215213723, + -90.83060961491888, + 0.8346340156521701 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500123085911842, + -0.010129749722695211, + 0.0003763093550798267 + ], + "position_mm": [ + 650.0123085911843, + -10.12974972269521, + 0.3763093550798267 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 208, + "position_m": [ + 0.353316383439601, + -0.09041060575025886, + 0.0017718570018905868 + ], + "position_mm": [ + 353.316383439601, + -90.41060575025887, + 1.7718570018905868 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021522869022082444, + -0.020778384245304805, + 0.0014474465529340209 + ], + "position_mm": [ + 21.522869022082443, + -20.778384245304803, + 1.4474465529340208 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25309340711575895, + -0.00869247902906389, + -0.00011457923109689374 + ], + "position_mm": [ + 253.09340711575896, + -8.69247902906389, + -0.11457923109689373 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.34797754204895304, + -0.010600645367234854, + 0.00040662709235728844 + ], + "position_mm": [ + 347.977542048953, + -10.600645367234854, + 0.40662709235728844 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.2503001632102682, + -0.08864128819386767, + 0.0005062843648007088 + ], + "position_mm": [ + 250.3001632102682, + -88.64128819386767, + 0.5062843648007088 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.35372038515438786, + -0.09941566413289388, + 0.19962133788815456 + ], + "position_mm": [ + 353.7203851543879, + -99.41566413289388, + 199.62133788815456 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3545376920987731, + -0.16685116858714227, + 0.11485028399944497 + ], + "position_mm": [ + 354.5376920987731, + -166.85116858714227, + 114.85028399944497 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.31796181767724363, + -0.020863609024764515, + 0.3124559510548278 + ], + "position_mm": [ + 317.96181767724363, + -20.863609024764514, + 312.45595105482784 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23008354191378963, + -0.03769435263796502, + 0.30641010113999523 + ], + "position_mm": [ + 230.08354191378962, + -37.69435263796502, + 306.4101011399952 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.31959080218245567, + -0.043194018989081824, + 0.29774748876999246 + ], + "position_mm": [ + 319.59080218245566, + -43.194018989081826, + 297.74748876999246 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2823804072481936, + -0.04185961120493673, + 0.30220398979690605 + ], + "position_mm": [ + 282.3804072481936, + -41.85961120493673, + 302.20398979690606 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/render_a_aruco_detection.json b/data/camera_study/Scene10/k4_abdf/render_a_aruco_detection.json new file mode 100644 index 0000000..4c4ff92 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/render_a_aruco_detection.json @@ -0,0 +1,2330 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:22Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "a", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.npz", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.png", + "image_sha256": "3fda1f21fe402f6ca45be61726fe8bc4ff11185ad27638be512a8f4f598b0fe5", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 26, + "num_rejected_candidates": 35 + }, + "detections": [ + { + "observation_id": "2e2a321f-6853-4b43-82d4-03b2718c7abd", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 547.0 + ], + [ + 939.0, + 530.0 + ], + [ + 956.0, + 571.0 + ], + [ + 917.0, + 588.0 + ] + ], + "center_px": [ + 928.0, + 559.0 + ], + "quality": { + "area_px": 1888.0, + "perimeter_px": 173.85755157470703, + "sharpness": { + "laplacian_var": 865.6237972020846 + }, + "contrast": { + "p05": 50.0, + "p95": 187.0, + "dynamic_range": 137.0, + "mean_gray": 87.40342679127725, + "std_gray": 54.46998248000789 + }, + "geometry": { + "distance_to_center_norm": 0.23207330703735352, + "distance_to_border_px": 484.0 + }, + "edge_ratio": 1.0432630581405598, + "edge_lengths_px": [ + 42.54409408569336, + 44.384681701660156, + 42.54409408569336, + 44.384681701660156 + ] + }, + "confidence": 0.9585310168868925 + }, + { + "observation_id": "3fa6afe5-3cef-4c8b-aefa-a13a77b54b90", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 739.0, + 242.0 + ], + [ + 774.0, + 228.0 + ], + [ + 792.0, + 270.0 + ], + [ + 757.0, + 283.0 + ] + ], + "center_px": [ + 765.5, + 255.75 + ], + "quality": { + "area_px": 1695.5, + "perimeter_px": 165.50432586669922, + "sharpness": { + "laplacian_var": 972.5653279753307 + }, + "contrast": { + "p05": 17.0, + "p95": 182.0, + "dynamic_range": 165.0, + "mean_gray": 106.18205574912892, + "std_gray": 70.67095657404792 + }, + "geometry": { + "distance_to_center_norm": 0.3198539614677429, + "distance_to_border_px": 228.0 + }, + "edge_ratio": 1.2238659987255158, + "edge_lengths_px": [ + 37.6961555480957, + 45.694637298583984, + 37.336307525634766, + 44.777225494384766 + ] + }, + "confidence": 0.8170829167910206 + }, + { + "observation_id": "25206894-a25a-4a74-a85c-d0ae992f1eab", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 651.0, + 261.0 + ], + [ + 689.0, + 249.0 + ], + [ + 712.0, + 285.0 + ], + [ + 674.0, + 297.0 + ] + ], + "center_px": [ + 681.5, + 273.0 + ], + "quality": { + "area_px": 1644.0, + "perimeter_px": 165.13947296142578, + "sharpness": { + "laplacian_var": 747.6962819576332 + }, + "contrast": { + "p05": 13.0, + "p95": 180.0, + "dynamic_range": 167.0, + "mean_gray": 76.63693693693693, + "std_gray": 72.66327799511954 + }, + "geometry": { + "distance_to_center_norm": 0.2997349798679352, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.072028219579559, + "edge_lengths_px": [ + 39.84971618652344, + 42.72002029418945, + 39.84971618652344, + 42.72002029418945 + ] + }, + "confidence": 0.9328112653528767 + }, + { + "observation_id": "dbe65ba6-9c78-4e35-be42-1989d713df79", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 880.0, + 1056.0 + ], + [ + 849.0, + 1028.0 + ], + [ + 883.0, + 1007.0 + ], + [ + 913.0, + 1034.0 + ] + ], + "center_px": [ + 881.25, + 1031.25 + ], + "quality": { + "area_px": 1577.0, + "perimeter_px": 161.7576141357422, + "sharpness": { + "laplacian_var": 779.7184102009837 + }, + "contrast": { + "p05": 14.0, + "p95": 173.0, + "dynamic_range": 159.0, + "mean_gray": 81.89795918367346, + "std_gray": 69.37586032500836 + }, + "geometry": { + "distance_to_center_norm": 0.574486494064331, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.053254572752866, + "edge_lengths_px": [ + 41.773197174072266, + 39.96248245239258, + 40.360870361328125, + 39.66106414794922 + ] + }, + "confidence": 0.45573027871641286 + }, + { + "observation_id": "efb4c658-6af4-46f0-b382-f007c595a154", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1154.0, + 1048.0 + ], + [ + 1121.0, + 1020.0 + ], + [ + 1153.0, + 1000.0 + ], + [ + 1185.0, + 1028.0 + ] + ], + "center_px": [ + 1153.25, + 1024.0 + ], + "quality": { + "area_px": 1532.0, + "perimeter_px": 160.4264144897461, + "sharpness": { + "laplacian_var": 789.6627377718634 + }, + "contrast": { + "p05": 9.0, + "p95": 170.0, + "dynamic_range": 161.0, + "mean_gray": 94.95602294455067, + "std_gray": 70.53110441036318 + }, + "geometry": { + "distance_to_center_norm": 0.7217618823051453, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.173112932994049, + "edge_lengths_px": [ + 43.27817153930664, + 37.735923767089844, + 42.52058410644531, + 36.8917350769043 + ] + }, + "confidence": 0.5455570235395628 + }, + { + "observation_id": "15f0e6ac-a19a-40dd-87b6-04e68f7918d2", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 800.0, + 233.0 + ], + [ + 834.0, + 221.0 + ], + [ + 852.0, + 261.0 + ], + [ + 816.0, + 271.0 + ] + ], + "center_px": [ + 825.5, + 246.5 + ], + "quality": { + "area_px": 1552.0, + "perimeter_px": 158.51307678222656, + "sharpness": { + "laplacian_var": 863.8906785031452 + }, + "contrast": { + "p05": 15.0, + "p95": 181.0, + "dynamic_range": 166.0, + "mean_gray": 73.38709677419355, + "std_gray": 69.59383427424181 + }, + "geometry": { + "distance_to_center_norm": 0.34653934836387634, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.2165525994378175, + "edge_lengths_px": [ + 36.055511474609375, + 43.863426208496094, + 37.36308288574219, + 41.231056213378906 + ] + }, + "confidence": 0.8219948734334308 + }, + { + "observation_id": "b0c59063-12ef-492c-b446-d948b30a6a08", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 656.0, + 1024.0 + ], + [ + 631.0, + 996.0 + ], + [ + 666.0, + 976.0 + ], + [ + 692.0, + 1003.0 + ] + ], + "center_px": [ + 661.25, + 999.75 + ], + "quality": { + "area_px": 1499.0, + "perimeter_px": 157.00859832763672, + "sharpness": { + "laplacian_var": 776.3919478120264 + }, + "contrast": { + "p05": 15.0, + "p95": 173.0, + "dynamic_range": 158.0, + "mean_gray": 113.47134387351778, + "std_gray": 66.47315254195442 + }, + "geometry": { + "distance_to_center_norm": 0.5149872303009033, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1118898476800905, + "edge_lengths_px": [ + 37.53664779663086, + 40.31128692626953, + 37.48332977294922, + 41.67733383178711 + ] + }, + "confidence": 0.8987700853806685 + }, + { + "observation_id": "bd824d72-ce34-4e26-8294-68f5e1364540", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1156.0, + 984.0 + ], + [ + 1124.0, + 957.0 + ], + [ + 1153.0, + 939.0 + ], + [ + 1186.0, + 964.0 + ] + ], + "center_px": [ + 1154.75, + 961.0 + ], + "quality": { + "area_px": 1384.5, + "perimeter_px": 153.4569320678711, + "sharpness": { + "laplacian_var": 641.3717713382066 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 48.07235421166307, + "std_gray": 59.88033560428563 + }, + "geometry": { + "distance_to_center_norm": 0.6724274754524231, + "distance_to_border_px": 96.0 + }, + "edge_ratio": 1.2266707527132645, + "edge_lengths_px": [ + 41.86884307861328, + 34.13209533691406, + 41.400482177734375, + 36.055511474609375 + ] + }, + "confidence": 0.7524431457735686 + }, + { + "observation_id": "f4dd7a25-e23e-47c5-932b-b541b95a4612", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 995.0, + 954.0 + ], + [ + 967.0, + 928.0 + ], + [ + 1000.0, + 911.0 + ], + [ + 1028.0, + 936.0 + ] + ], + "center_px": [ + 997.5, + 932.25 + ], + "quality": { + "area_px": 1331.5, + "perimeter_px": 150.4579086303711, + "sharpness": { + "laplacian_var": 806.253992719468 + }, + "contrast": { + "p05": 12.0, + "p95": 170.0, + "dynamic_range": 158.0, + "mean_gray": 85.1743119266055, + "std_gray": 67.17068414131862 + }, + "geometry": { + "distance_to_center_norm": 0.5338727831840515, + "distance_to_border_px": 126.0 + }, + "edge_ratio": 1.0293233343863084, + "edge_lengths_px": [ + 38.20994567871094, + 37.121421813964844, + 37.53664779663086, + 37.58989334106445 + ] + }, + "confidence": 0.8623788434718633 + }, + { + "observation_id": "e5bc6283-7621-4d91-b5e6-91a7f1128d68", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 731.0, + 951.0 + ], + [ + 707.0, + 925.0 + ], + [ + 742.0, + 908.0 + ], + [ + 766.0, + 933.0 + ] + ], + "center_px": [ + 736.5, + 929.25 + ], + "quality": { + "area_px": 1312.5, + "perimeter_px": 148.30654907226562, + "sharpness": { + "laplacian_var": 893.1018320987654 + }, + "contrast": { + "p05": 14.0, + "p95": 172.0, + "dynamic_range": 158.0, + "mean_gray": 77.58333333333333, + "std_gray": 66.11167950269201 + }, + "geometry": { + "distance_to_center_norm": 0.432888388633728, + "distance_to_border_px": 129.0 + }, + "edge_ratio": 1.135675442614228, + "edge_lengths_px": [ + 35.38361358642578, + 38.910152435302734, + 34.65544509887695, + 39.357337951660156 + ] + }, + "confidence": 0.7704666026640716 + }, + { + "observation_id": "e5b5f526-3fc7-4b7f-9748-d57eeafaa09a", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1109.0, + 937.0 + ], + [ + 1078.0, + 911.0 + ], + [ + 1108.0, + 894.0 + ], + [ + 1138.0, + 918.0 + ] + ], + "center_px": [ + 1108.25, + 915.0 + ], + "quality": { + "area_px": 1286.5, + "perimeter_px": 148.03035736083984, + "sharpness": { + "laplacian_var": 849.6744027531824 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 73.16531791907515, + "std_gray": 67.17306919368005 + }, + "geometry": { + "distance_to_center_norm": 0.5997561812400818, + "distance_to_border_px": 143.0 + }, + "edge_ratio": 1.1733657712426009, + "edge_lengths_px": [ + 40.45985794067383, + 34.48188018798828, + 38.41874694824219, + 34.66987228393555 + ] + }, + "confidence": 0.7309457014059588 + }, + { + "observation_id": "c8dea908-82e3-4a8c-89c8-424b9951e34e", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 843.0 + ], + [ + 378.0, + 825.0 + ], + [ + 398.0, + 848.0 + ], + [ + 360.0, + 866.0 + ] + ], + "center_px": [ + 369.0, + 845.5 + ], + "quality": { + "area_px": 1234.0, + "perimeter_px": 145.0541877746582, + "sharpness": { + "laplacian_var": 1107.6063181860204 + }, + "contrast": { + "p05": 14.0, + "p95": 171.0, + "dynamic_range": 157.0, + "mean_gray": 78.54927884615384, + "std_gray": 65.48572197917484 + }, + "geometry": { + "distance_to_center_norm": 0.5170324444770813, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.3795367307347286, + "edge_lengths_px": [ + 42.04759216308594, + 30.479501724243164, + 42.04759216308594, + 30.479501724243164 + ] + }, + "confidence": 0.5963354569243849 + }, + { + "observation_id": "c54a9e55-dd39-466c-b628-2911f9fd30d1", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 841.0 + ], + [ + 1306.0, + 818.0 + ], + [ + 1334.0, + 803.0 + ], + [ + 1364.0, + 826.0 + ] + ], + "center_px": [ + 1335.0, + 822.0 + ], + "quality": { + "area_px": 1094.0, + "perimeter_px": 139.1337547302246, + "sharpness": { + "laplacian_var": 703.797937840674 + }, + "contrast": { + "p05": 9.0, + "p95": 164.0, + "dynamic_range": 155.0, + "mean_gray": 113.10478654592497, + "std_gray": 58.52400257567041 + }, + "geometry": { + "distance_to_center_norm": 0.7517461776733398, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.1900645633213587, + "edge_lengths_px": [ + 37.80211639404297, + 31.764760971069336, + 37.80211639404297, + 31.764760971069336 + ] + }, + "confidence": 0.6128519038478318 + }, + { + "observation_id": "625145a6-6f9e-4be1-b97a-c48445725076", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 763.0, + 197.0 + ], + [ + 797.0, + 187.0 + ], + [ + 824.0, + 204.0 + ], + [ + 790.0, + 216.0 + ] + ], + "center_px": [ + 793.5, + 201.0 + ], + "quality": { + "area_px": 909.0, + "perimeter_px": 136.41686248779297, + "sharpness": { + "laplacian_var": 1069.7927531569794 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 91.46811819595645, + "std_gray": 62.54740157586658 + }, + "geometry": { + "distance_to_center_norm": 0.38541823625564575, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.130050277403289, + "edge_lengths_px": [ + 35.44009017944336, + 31.906112670898438, + 36.055511474609375, + 33.0151481628418 + ] + }, + "confidence": 0.5362593259058441 + }, + { + "observation_id": "dbddb305-78d3-4fa1-9c37-4fe2ba5cdffe", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 943.0, + 784.0 + ], + [ + 970.0, + 761.0 + ], + [ + 976.0, + 794.0 + ], + [ + 950.0, + 816.0 + ] + ], + "center_px": [ + 959.75, + 788.75 + ], + "quality": { + "area_px": 1007.5, + "perimeter_px": 135.82476806640625, + "sharpness": { + "laplacian_var": 990.0324116822271 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 69.03362573099415, + "std_gray": 62.62781348056947 + }, + "geometry": { + "distance_to_center_norm": 0.3838669955730438, + "distance_to_border_px": 264.0 + }, + "edge_ratio": 1.0827805673411812, + "edge_lengths_px": [ + 35.46829605102539, + 33.541019439697266, + 34.058773040771484, + 32.75667953491211 + ] + }, + "confidence": 0.6203165137290706 + }, + { + "observation_id": "ef98978a-3fdc-47c9-9e9a-eba87f80bd5b", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 736.0, + 748.0 + ], + [ + 769.0, + 734.0 + ], + [ + 791.0, + 755.0 + ], + [ + 758.0, + 770.0 + ] + ], + "center_px": [ + 763.5, + 751.75 + ], + "quality": { + "area_px": 1028.5, + "perimeter_px": 133.62254524230957, + "sharpness": { + "laplacian_var": 740.3312400344904 + }, + "contrast": { + "p05": 9.0, + "p95": 168.0, + "dynamic_range": 159.0, + "mean_gray": 80.6958981612447, + "std_gray": 67.7872078040809 + }, + "geometry": { + "distance_to_center_norm": 0.24019105732440948, + "distance_to_border_px": 310.0 + }, + "edge_ratio": 1.1918643121358203, + "edge_lengths_px": [ + 35.84689712524414, + 30.4138126373291, + 36.24913787841797, + 31.11269760131836 + ] + }, + "confidence": 0.5752892000247514 + }, + { + "observation_id": "ccc77ba2-1cd9-4a61-a132-736e462e8a85", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1296.0, + 787.0 + ], + [ + 1266.0, + 766.0 + ], + [ + 1291.0, + 751.0 + ], + [ + 1321.0, + 771.0 + ] + ], + "center_px": [ + 1293.5, + 768.75 + ], + "quality": { + "area_px": 977.5, + "perimeter_px": 131.51158332824707, + "sharpness": { + "laplacian_var": 482.2934957475995 + }, + "contrast": { + "p05": 7.0, + "p95": 157.0, + "dynamic_range": 150.0, + "mean_gray": 38.02962962962963, + "std_gray": 51.115372876535595 + }, + "geometry": { + "distance_to_center_norm": 0.6860414743423462, + "distance_to_border_px": 119.0 + }, + "edge_ratio": 1.2560441794117048, + "edge_lengths_px": [ + 36.619667053222656, + 29.154760360717773, + 36.055511474609375, + 29.681644439697266 + ] + }, + "confidence": 0.5188246379772157 + }, + { + "observation_id": "9f0fe5f6-2fdc-4487-b93f-4a3edd08a46d", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 664.0, + 678.0 + ], + [ + 696.0, + 665.0 + ], + [ + 717.0, + 685.0 + ], + [ + 684.0, + 698.0 + ] + ], + "center_px": [ + 690.25, + 681.5 + ], + "quality": { + "area_px": 916.5, + "perimeter_px": 127.29240036010742, + "sharpness": { + "laplacian_var": 950.4938833487939 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 81.41071428571429, + "std_gray": 66.26803955921937 + }, + "geometry": { + "distance_to_center_norm": 0.1606595665216446, + "distance_to_border_px": 382.0 + }, + "edge_ratio": 1.25399363306104, + "edge_lengths_px": [ + 34.539833068847656, + 29.0, + 35.46829605102539, + 28.284271240234375 + ] + }, + "confidence": 0.4872433032283655 + }, + { + "observation_id": "94eafd4a-f999-4139-966f-a4d6acc272af", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 132.0, + 733.0 + ], + [ + 120.0, + 713.0 + ], + [ + 156.0, + 700.0 + ], + [ + 169.0, + 720.0 + ] + ], + "center_px": [ + 144.25, + 716.5 + ], + "quality": { + "area_px": 892.5, + "perimeter_px": 124.6701889038086, + "sharpness": { + "laplacian_var": 1275.08402176 + }, + "contrast": { + "p05": 10.200000000000003, + "p95": 164.0, + "dynamic_range": 153.8, + "mean_gray": 105.7888, + "std_gray": 57.0930485660032 + }, + "geometry": { + "distance_to_center_norm": 0.6691069006919861, + "distance_to_border_px": 120.0 + }, + "edge_ratio": 1.6814297415391983, + "edge_lengths_px": [ + 23.323806762695312, + 38.27531814575195, + 23.853721618652344, + 39.217342376708984 + ] + }, + "confidence": 0.3538655141518615 + }, + { + "observation_id": "92450832-821f-4315-9f60-bb47ba44c725", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 624.0 + ], + [ + 815.0, + 612.0 + ], + [ + 837.0, + 630.0 + ], + [ + 807.0, + 643.0 + ] + ], + "center_px": [ + 811.25, + 627.25 + ], + "quality": { + "area_px": 814.5, + "perimeter_px": 120.82522010803223, + "sharpness": { + "laplacian_var": 1125.3635571955213 + }, + "contrast": { + "p05": 8.0, + "p95": 149.0, + "dynamic_range": 141.0, + "mean_gray": 86.07050092764378, + "std_gray": 55.3312393682571 + }, + "geometry": { + "distance_to_center_norm": 0.14027805626392365, + "distance_to_border_px": 437.0 + }, + "edge_ratio": 1.1545204961681088, + "edge_lengths_px": [ + 31.38471031188965, + 28.42534065246582, + 32.69556427001953, + 28.319604873657227 + ] + }, + "confidence": 0.4703251278796996 + }, + { + "observation_id": "660fdbfe-6d9f-4e40-afe6-d47da32de46c", + "type": "aruco", + "marker_id": 74, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 344.0, + 702.0 + ], + [ + 330.0, + 683.0 + ], + [ + 364.0, + 671.0 + ], + [ + 379.0, + 689.0 + ] + ], + "center_px": [ + 354.25, + 686.25 + ], + "quality": { + "area_px": 819.5, + "perimeter_px": 120.42341613769531, + "sharpness": { + "laplacian_var": 1054.273602937478 + }, + "contrast": { + "p05": 7.0, + "p95": 158.0, + "dynamic_range": 151.0, + "mean_gray": 89.94680851063829, + "std_gray": 62.538561214266565 + }, + "geometry": { + "distance_to_center_norm": 0.4376735985279083, + "distance_to_border_px": 330.0 + }, + "edge_ratio": 1.593474715740479, + "edge_lengths_px": [ + 23.600847244262695, + 36.055511474609375, + 23.430749893188477, + 37.336307525634766 + ] + }, + "confidence": 0.3428566063437381 + }, + { + "observation_id": "78a23e65-a204-4cbd-8395-c0d7c94badb7", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1374.0, + 670.0 + ], + [ + 1347.0, + 651.0 + ], + [ + 1371.0, + 639.0 + ], + [ + 1398.0, + 658.0 + ] + ], + "center_px": [ + 1372.5, + 654.5 + ], + "quality": { + "area_px": 780.0, + "perimeter_px": 119.69592666625977, + "sharpness": { + "laplacian_var": 1109.98644924121 + }, + "contrast": { + "p05": 10.700000000000003, + "p95": 158.0, + "dynamic_range": 147.3, + "mean_gray": 106.3378640776699, + "std_gray": 52.12042090245902 + }, + "geometry": { + "distance_to_center_norm": 0.7360777258872986, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2304019519874827, + "edge_lengths_px": [ + 33.0151481628418, + 26.832815170288086, + 33.0151481628418, + 26.832815170288086 + ] + }, + "confidence": 0.35500593874581543 + }, + { + "observation_id": "21ac0be7-0308-4e31-b9ed-fc2354642a6f", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1196.0, + 524.0 + ], + [ + 1220.0, + 514.0 + ], + [ + 1244.0, + 530.0 + ], + [ + 1219.0, + 540.0 + ] + ], + "center_px": [ + 1219.75, + 527.0 + ], + "quality": { + "area_px": 627.0, + "perimeter_px": 109.78808403015137, + "sharpness": { + "laplacian_var": 963.0183950617284 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 73.82444444444444, + "std_gray": 53.419454032550746 + }, + "geometry": { + "distance_to_center_norm": 0.5554656386375427, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.109400382408729, + "edge_lengths_px": [ + 26.0, + 28.844409942626953, + 26.925823211669922, + 28.017850875854492 + ] + }, + "confidence": 0.3767801116964092 + }, + { + "observation_id": "bf09eaa8-d733-4bec-a55f-92a5e1b5b023", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1299.0, + 475.0 + ], + [ + 1322.0, + 465.0 + ], + [ + 1346.0, + 479.0 + ], + [ + 1325.0, + 490.0 + ] + ], + "center_px": [ + 1323.0, + 477.25 + ], + "quality": { + "area_px": 581.5, + "perimeter_px": 106.58796119689941, + "sharpness": { + "laplacian_var": 922.4211295765532 + }, + "contrast": { + "p05": 9.0, + "p95": 150.0, + "dynamic_range": 141.0, + "mean_gray": 80.53125, + "std_gray": 49.781966772569284 + }, + "geometry": { + "distance_to_center_norm": 0.673617959022522, + "distance_to_border_px": 94.0 + }, + "edge_ratio": 1.2661764925954944, + "edge_lengths_px": [ + 25.079872131347656, + 27.784887313842773, + 23.706539154052734, + 30.01666259765625 + ] + }, + "confidence": 0.3061711135325228 + }, + { + "observation_id": "6add8672-abbf-41be-9a82-96dcd1d90c8a", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1117.0, + 472.0 + ], + [ + 1139.0, + 461.0 + ], + [ + 1163.0, + 476.0 + ], + [ + 1140.0, + 486.0 + ] + ], + "center_px": [ + 1139.75, + 473.75 + ], + "quality": { + "area_px": 573.0, + "perimeter_px": 104.90438652038574, + "sharpness": { + "laplacian_var": 1036.3509780861898 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 74.53349875930522, + "std_gray": 50.45210729924828 + }, + "geometry": { + "distance_to_center_norm": 0.47216224670410156, + "distance_to_border_px": 277.0 + }, + "edge_ratio": 1.1506375729114486, + "edge_lengths_px": [ + 24.59674835205078, + 28.301942825317383, + 25.079872131347656, + 26.925823211669922 + ] + }, + "confidence": 0.33198985414097737 + }, + { + "observation_id": "9345e49d-d70e-4df0-b9b1-74a1a99aa211", + "type": "aruco", + "marker_id": 184, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 821.0, + 486.0 + ], + [ + 814.0, + 487.0 + ], + [ + 798.0, + 448.0 + ], + [ + 805.0, + 445.0 + ] + ], + "center_px": [ + 809.5, + 466.5 + ], + "quality": { + "area_px": 312.0, + "perimeter_px": 100.85268115997314, + "sharpness": { + "laplacian_var": 2032.911884279329 + }, + "contrast": { + "p05": 22.0, + "p95": 133.5, + "dynamic_range": 111.5, + "mean_gray": 67.10426540284361, + "std_gray": 39.568029255350964 + }, + "geometry": { + "distance_to_center_norm": 0.12868039309978485, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 6.224146785942024, + "edge_lengths_px": [ + 7.071067810058594, + 42.154476165771484, + 7.6157732009887695, + 44.0113639831543 + ] + }, + "confidence": 0.03341823500528502 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 712.0, + 776.0 + ], + [ + 506.0, + 896.0 + ], + [ + 441.0, + 876.0 + ], + [ + 650.0, + 774.0 + ] + ], + "center_px": [ + 577.25, + 830.5 + ], + "area_px": 9331.0 + }, + { + "image_points_px": [ + [ + 1134.0, + 576.0 + ], + [ + 1028.0, + 633.0 + ], + [ + 1010.0, + 609.0 + ], + [ + 1092.0, + 566.0 + ] + ], + "center_px": [ + 1066.0, + 596.0 + ], + "area_px": 3098.0 + }, + { + "image_points_px": [ + [ + 949.0, + 628.0 + ], + [ + 974.0, + 624.0 + ], + [ + 1004.0, + 689.0 + ], + [ + 973.0, + 699.0 + ] + ], + "center_px": [ + 975.0, + 660.0 + ], + "area_px": 2093.0 + }, + { + "image_points_px": [ + [ + 919.0, + 792.0 + ], + [ + 944.0, + 814.0 + ], + [ + 912.0, + 829.0 + ], + [ + 888.0, + 806.0 + ] + ], + "center_px": [ + 915.75, + 810.25 + ], + "area_px": 1064.0 + }, + { + "image_points_px": [ + [ + 964.0, + 655.0 + ], + [ + 985.0, + 654.0 + ], + [ + 1002.0, + 682.0 + ], + [ + 976.0, + 691.0 + ] + ], + "center_px": [ + 981.75, + 670.5 + ], + "area_px": 824.5 + }, + { + "image_points_px": [ + [ + 1299.0, + 626.0 + ], + [ + 1321.0, + 614.0 + ], + [ + 1348.0, + 632.0 + ], + [ + 1326.0, + 644.0 + ] + ], + "center_px": [ + 1323.5, + 629.0 + ], + "area_px": 720.0 + }, + { + "image_points_px": [ + [ + 92.0, + 604.0 + ], + [ + 58.0, + 618.0 + ], + [ + 46.0, + 601.0 + ], + [ + 78.0, + 589.0 + ] + ], + "center_px": [ + 68.5, + 603.0 + ], + "area_px": 697.0 + }, + { + "image_points_px": [ + [ + 180.0, + 565.0 + ], + [ + 147.0, + 577.0 + ], + [ + 137.0, + 560.0 + ], + [ + 168.0, + 550.0 + ] + ], + "center_px": [ + 158.0, + 563.0 + ], + "area_px": 633.0 + }, + { + "image_points_px": [ + [ + 871.0, + 624.0 + ], + [ + 879.0, + 625.0 + ], + [ + 895.0, + 667.0 + ], + [ + 885.0, + 663.0 + ] + ], + "center_px": [ + 882.5, + 644.75 + ], + "area_px": 327.0 + }, + { + "image_points_px": [ + [ + 1217.0, + 427.0 + ], + [ + 1239.0, + 418.0 + ], + [ + 1261.0, + 431.0 + ], + [ + 1241.0, + 441.0 + ] + ], + "center_px": [ + 1239.5, + 429.25 + ], + "area_px": 502.0 + }, + { + "image_points_px": [ + [ + 385.0, + 633.0 + ], + [ + 402.0, + 652.0 + ], + [ + 378.0, + 660.0 + ], + [ + 362.0, + 643.0 + ] + ], + "center_px": [ + 381.75, + 647.0 + ], + "area_px": 571.5 + }, + { + "image_points_px": [ + [ + 717.0, + 471.0 + ], + [ + 742.0, + 462.0 + ], + [ + 760.0, + 475.0 + ], + [ + 736.0, + 485.0 + ] + ], + "center_px": [ + 738.75, + 473.25 + ], + "area_px": 506.5 + }, + { + "image_points_px": [ + [ + 488.0, + 732.0 + ], + [ + 459.0, + 747.0 + ], + [ + 447.0, + 740.0 + ], + [ + 480.0, + 724.0 + ] + ], + "center_px": [ + 468.5, + 735.75 + ], + "area_px": 387.5 + }, + { + "image_points_px": [ + [ + 751.0, + 438.0 + ], + [ + 776.0, + 430.0 + ], + [ + 792.0, + 443.0 + ], + [ + 768.0, + 452.0 + ] + ], + "center_px": [ + 771.75, + 440.75 + ], + "area_px": 471.0 + }, + { + "image_points_px": [ + [ + 984.0, + 384.0 + ], + [ + 1007.0, + 376.0 + ], + [ + 1024.0, + 388.0 + ], + [ + 1002.0, + 397.0 + ] + ], + "center_px": [ + 1004.25, + 386.25 + ], + "area_px": 430.0 + }, + { + "image_points_px": [ + [ + 1088.0, + 340.0 + ], + [ + 1108.0, + 333.0 + ], + [ + 1127.0, + 343.0 + ], + [ + 1106.0, + 351.0 + ] + ], + "center_px": [ + 1107.25, + 341.75 + ], + "area_px": 354.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 297.0 + ], + [ + 1071.0, + 290.0 + ], + [ + 1089.0, + 300.0 + ], + [ + 1070.0, + 308.0 + ] + ], + "center_px": [ + 1070.25, + 298.75 + ], + "area_px": 343.5 + }, + { + "image_points_px": [ + [ + 1145.0, + 312.0 + ], + [ + 1165.0, + 306.0 + ], + [ + 1182.0, + 316.0 + ], + [ + 1163.0, + 324.0 + ] + ], + "center_px": [ + 1163.75, + 314.5 + ], + "area_px": 337.0 + }, + { + "image_points_px": [ + [ + 1227.0, + 309.0 + ], + [ + 1246.0, + 302.0 + ], + [ + 1264.0, + 312.0 + ], + [ + 1247.0, + 320.0 + ] + ], + "center_px": [ + 1246.0, + 310.75 + ], + "area_px": 331.5 + }, + { + "image_points_px": [ + [ + 935.0, + 285.0 + ], + [ + 955.0, + 278.0 + ], + [ + 972.0, + 287.0 + ], + [ + 952.0, + 295.0 + ] + ], + "center_px": [ + 953.5, + 286.25 + ], + "area_px": 317.5 + }, + { + "image_points_px": [ + [ + 891.0, + 293.0 + ], + [ + 911.0, + 286.0 + ], + [ + 927.0, + 296.0 + ], + [ + 907.0, + 304.0 + ] + ], + "center_px": [ + 909.0, + 294.75 + ], + "area_px": 330.0 + }, + { + "image_points_px": [ + [ + 1018.0, + 751.0 + ], + [ + 1017.0, + 775.0 + ], + [ + 1013.0, + 785.0 + ], + [ + 1005.0, + 755.0 + ] + ], + "center_px": [ + 1013.25, + 766.5 + ], + "area_px": 254.0 + }, + { + "image_points_px": [ + [ + 278.0, + 1016.0 + ], + [ + 276.0, + 1020.0 + ], + [ + 247.0, + 1035.0 + ], + [ + 268.0, + 1019.0 + ] + ], + "center_px": [ + 267.25, + 1022.5 + ], + "area_px": 91.5 + }, + { + "image_points_px": [ + [ + 1273.0, + 316.0 + ], + [ + 1258.0, + 325.0 + ], + [ + 1242.0, + 330.0 + ], + [ + 1245.0, + 326.0 + ] + ], + "center_px": [ + 1254.5, + 324.25 + ], + "area_px": 75.5 + }, + { + "image_points_px": [ + [ + 627.0, + 394.0 + ], + [ + 630.0, + 413.0 + ], + [ + 628.0, + 428.0 + ], + [ + 625.0, + 409.0 + ] + ], + "center_px": [ + 627.5, + 411.0 + ], + "area_px": 83.0 + }, + { + "image_points_px": [ + [ + 356.0, + 962.0 + ], + [ + 333.0, + 980.0 + ], + [ + 330.0, + 980.0 + ], + [ + 348.0, + 965.0 + ] + ], + "center_px": [ + 341.75, + 971.75 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 702.0, + 632.0 + ], + [ + 679.0, + 644.0 + ], + [ + 673.0, + 642.0 + ], + [ + 695.0, + 632.0 + ] + ], + "center_px": [ + 687.25, + 637.5 + ], + "area_px": 94.0 + }, + { + "image_points_px": [ + [ + 1001.0, + 496.0 + ], + [ + 997.0, + 501.0 + ], + [ + 977.0, + 510.0 + ], + [ + 973.0, + 509.0 + ] + ], + "center_px": [ + 987.0, + 504.0 + ], + "area_px": 72.0 + }, + { + "image_points_px": [ + [ + 921.0, + 598.0 + ], + [ + 901.0, + 617.0 + ], + [ + 902.0, + 613.0 + ], + [ + 915.0, + 599.0 + ] + ], + "center_px": [ + 909.75, + 606.75 + ], + "area_px": 66.0 + }, + { + "image_points_px": [ + [ + 68.0, + 1031.0 + ], + [ + 60.0, + 1038.0 + ], + [ + 45.0, + 1046.0 + ], + [ + 50.0, + 1041.0 + ] + ], + "center_px": [ + 55.75, + 1039.0 + ], + "area_px": 40.5 + }, + { + "image_points_px": [ + [ + 842.0, + 934.0 + ], + [ + 834.0, + 942.0 + ], + [ + 823.0, + 947.0 + ], + [ + 820.0, + 946.0 + ] + ], + "center_px": [ + 829.75, + 942.25 + ], + "area_px": 53.0 + }, + { + "image_points_px": [ + [ + 806.0, + 955.0 + ], + [ + 791.0, + 965.0 + ], + [ + 783.0, + 965.0 + ], + [ + 802.0, + 955.0 + ] + ], + "center_px": [ + 795.5, + 960.0 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 342.0, + 1004.0 + ], + [ + 320.0, + 1016.0 + ], + [ + 322.0, + 1012.0 + ], + [ + 330.0, + 1007.0 + ] + ], + "center_px": [ + 328.5, + 1009.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 1340.0, + 651.0 + ], + [ + 1334.0, + 656.0 + ], + [ + 1318.0, + 660.0 + ], + [ + 1329.0, + 652.0 + ] + ], + "center_px": [ + 1330.25, + 654.75 + ], + "area_px": 66.5 + }, + { + "image_points_px": [ + [ + 229.0, + 651.0 + ], + [ + 218.0, + 658.0 + ], + [ + 208.0, + 661.0 + ], + [ + 211.0, + 658.0 + ] + ], + "center_px": [ + 216.5, + 657.0 + ], + "area_px": 35.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/render_a_camera_pose.json b/data/camera_study/Scene10/k4_abdf/render_a_camera_pose.json new file mode 100644 index 0000000..60da8a0 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/render_a_camera_pose.json @@ -0,0 +1,467 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:24Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abdf\\render_a_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "a", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 19, + "used_marker_ids": [ + 95, + 97, + 103, + 54, + 55, + 51, + 47, + 210, + 85, + 215, + 105, + 211, + 75, + 214, + 74, + 102, + 217, + 205, + 206 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.01009749778311845, + 0.0013500052634516154, + 0.0012080581027067798, + 0.001208056584232894 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.418903298149159, + "residual_median_px": 2.9058066287550095, + "residual_max_px": 7.881774161943574, + "sigma2_normalized": 1.7330383439497478e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8081126809120178, + -0.5890257358551025, + -0.0016104801325127482 + ], + [ + -0.3439487814903259, + -0.46965670585632324, + -0.8130939602851868 + ], + [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + ], + "translation_m": [ + -0.2276943325996399, + 0.17315705120563507, + 1.1353343725204468 + ], + "rvec_rad": [ + 2.1050851025918234, + -0.6867341612291594, + 0.3507860528401858 + ] + }, + "camera_in_world": { + "position_m": [ + -0.29933083057403564, + -0.7994182705879211, + 0.8013386726379395 + ], + "position_mm": [ + -299.3308410644531, + -799.4182739257812, + 801.3386840820312 + ], + "orientation_deg": { + "roll": 131.5152587890625, + "pitch": -28.5664005279541, + "yaw": -23.05556297302246 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.5705111713147538e-05, + -3.606186641991224e-06, + 9.93455859227922e-07, + 5.974998436558746e-07, + 4.6929081989455075e-07, + 2.8925877037560832e-06 + ], + [ + -3.606186641991253e-06, + 4.525067031199804e-06, + -1.5535915979518367e-06, + -4.146706877795486e-07, + -8.403171882148325e-07, + 3.704138848703875e-08 + ], + [ + 9.93455859228011e-07, + -1.5535915979518793e-06, + 1.4511663564702391e-05, + 8.397716382398054e-07, + -1.8034796850892003e-06, + -4.925606373863842e-06 + ], + [ + 5.974998436558832e-07, + -4.146706877795502e-07, + 8.397716382397962e-07, + 2.430616306834126e-07, + 1.4873676074531513e-08, + 1.58103612736764e-07 + ], + [ + 4.692908198945444e-07, + -8.403171882148285e-07, + -1.8034796850892121e-06, + 1.4873676074530825e-08, + 6.717933155003761e-07, + 1.166485422903723e-06 + ], + [ + 2.892587703756058e-06, + 3.704138848704778e-08, + -4.925606373863879e-06, + 1.5810361273676463e-07, + 1.166485422903725e-06, + 5.922812492193122e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.22706131431744284, + 0.12188075641483156, + 0.21826355925678265 + ], + "tvec_std_m": [ + 0.0004930128098573226, + 0.0008196299869455584, + 0.0024336829070758423 + ] + }, + "camera_center_std_m": [ + 0.0031789461102063005, + 0.004041324498858458, + 0.00434604702092401 + ], + "camera_center_std_mm": [ + 3.1789461102063004, + 4.041324498858458, + 4.3460470209240105 + ], + "orientation_std_deg": { + "roll": 0.2878030578767992, + "pitch": 0.1683177033483575, + "yaw": 0.1374718863525747 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 881.25, + 1031.25 + ], + "projected_center_px": [ + 877.61865234375, + 1028.5360107421875 + ], + "reprojection_error_px": 4.53347807892285, + "confidence": 0.45573027871641286 + }, + { + "marker_id": 97, + "observed_center_px": [ + 1153.25, + 1024.0 + ], + "projected_center_px": [ + 1152.7294921875, + 1027.8443603515625 + ], + "reprojection_error_px": 3.879437445756702, + "confidence": 0.5455570235395628 + }, + { + "marker_id": 103, + "observed_center_px": [ + 661.25, + 999.75 + ], + "projected_center_px": [ + 660.6806030273438, + 996.0768432617188 + ], + "reprojection_error_px": 3.7170274866418533, + "confidence": 0.8987700853806685 + }, + { + "marker_id": 54, + "observed_center_px": [ + 1154.75, + 961.0 + ], + "projected_center_px": [ + 1162.5029296875, + 962.4193115234375 + ], + "reprojection_error_px": 7.881774161943574, + "confidence": 0.7524431457735686 + }, + { + "marker_id": 55, + "observed_center_px": [ + 997.5, + 932.25 + ], + "projected_center_px": [ + 999.1104736328125, + 934.5891723632812 + ], + "reprojection_error_px": 2.8399564551455856, + "confidence": 0.8623788434718633 + }, + { + "marker_id": 51, + "observed_center_px": [ + 736.5, + 929.25 + ], + "projected_center_px": [ + 735.853271484375, + 928.2763061523438 + ], + "reprojection_error_px": 1.1689043938176247, + "confidence": 0.7704666026640716 + }, + { + "marker_id": 47, + "observed_center_px": [ + 1108.25, + 915.0 + ], + "projected_center_px": [ + 1107.45166015625, + 913.0933837890625 + ], + "reprojection_error_px": 2.0670103729610174, + "confidence": 0.7309457014059588 + }, + { + "marker_id": 210, + "observed_center_px": [ + 369.0, + 845.5 + ], + "projected_center_px": [ + 367.08258056640625, + 847.7832641601562 + ], + "reprojection_error_px": 2.98157550791138, + "confidence": 0.5963354569243849 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1335.0, + 822.0 + ], + "projected_center_px": [ + 1332.3167724609375, + 822.3063354492188 + ], + "reprojection_error_px": 2.7006575928524246, + "confidence": 0.6128519038478318 + }, + { + "marker_id": 215, + "observed_center_px": [ + 763.5, + 751.75 + ], + "projected_center_px": [ + 764.8435668945312, + 753.69775390625 + ], + "reprojection_error_px": 2.366203135699148, + "confidence": 0.5752892000247514 + }, + { + "marker_id": 105, + "observed_center_px": [ + 1293.5, + 768.75 + ], + "projected_center_px": [ + 1294.0775146484375, + 765.9021606445312 + ], + "reprojection_error_px": 2.9058066287550095, + "confidence": 0.5188246379772157 + }, + { + "marker_id": 211, + "observed_center_px": [ + 690.25, + 681.5 + ], + "projected_center_px": [ + 687.66943359375, + 684.4354248046875 + ], + "reprojection_error_px": 3.908457721536807, + "confidence": 0.4872433032283655 + }, + { + "marker_id": 75, + "observed_center_px": [ + 144.25, + 716.5 + ], + "projected_center_px": [ + 147.21554565429688, + 715.9539184570312 + ], + "reprojection_error_px": 3.01540479526219, + "confidence": 0.3538655141518615 + }, + { + "marker_id": 214, + "observed_center_px": [ + 811.25, + 627.25 + ], + "projected_center_px": [ + 813.1135864257812, + 626.0042114257812 + ], + "reprojection_error_px": 2.2416385832712016, + "confidence": 0.4703251278796996 + }, + { + "marker_id": 74, + "observed_center_px": [ + 354.25, + 686.25 + ], + "projected_center_px": [ + 353.1841125488281, + 685.2387084960938 + ], + "reprojection_error_px": 1.4692945805517152, + "confidence": 0.3428566063437381 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1372.5, + 654.5 + ], + "projected_center_px": [ + 1370.1954345703125, + 654.4063110351562 + ], + "reprojection_error_px": 2.306469042030312, + "confidence": 0.35500593874581543 + }, + { + "marker_id": 217, + "observed_center_px": [ + 1219.75, + 527.0 + ], + "projected_center_px": [ + 1223.6787109375, + 525.702392578125 + ], + "reprojection_error_px": 4.137457510565784, + "confidence": 0.3767801116964092 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1323.0, + 477.25 + ], + "projected_center_px": [ + 1319.5634765625, + 478.1280212402344 + ], + "reprojection_error_px": 3.5469162147969504, + "confidence": 0.3061711135325228 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1139.75, + 473.75 + ], + "projected_center_px": [ + 1139.77392578125, + 473.96392822265625 + ], + "reprojection_error_px": 0.2152619972435565, + "confidence": 0.33198985414097737 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/render_b_aruco_detection.json b/data/camera_study/Scene10/k4_abdf/render_b_aruco_detection.json new file mode 100644 index 0000000..1985ebc --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:23Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "088fb589-06a0-4828-af31-140ded185aa2", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "da4a1095-cb1b-4ba5-9e1f-f0a323b450e8", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "db5a2f1c-af79-4288-acbe-eb9274a3c805", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "ac8f29c7-ee12-4951-b9f4-18013eae2ce1", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "17a5c93d-9995-4e59-a273-adeee108b675", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "94888be5-c925-4599-b89e-71405424fe36", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "6dd27105-67af-4fa5-bd6b-bd8ecb889df4", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "77263e1e-0c57-4c92-b17f-1d90060e52e1", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "661995c0-0144-49fa-a221-7374bc0978cb", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "b511a416-3178-4516-a1b5-3ea35fdf1d9e", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "d39b9539-687f-4292-9d25-d4c1c9cd4da6", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "920d1a91-89cd-4c3a-bec7-244c112fd96f", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "4d0ed7e2-4b26-46c3-aa00-c838d7ea830f", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "a676ca0c-af8a-4f47-8fb6-8962a4c642ac", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "8d0b1256-9ebe-43d9-970b-dfbcd41aac76", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "5c2b27b0-6323-4186-bf06-4709ca9b6e64", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "8f32afe9-ab60-496f-8bad-de12d5b77184", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "a63858e5-0632-457a-8714-e828da79ee74", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "09b22888-8ca0-4759-a637-078c1d80347c", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "4c9d7f24-b8c7-4251-ad9a-69fe5d8a94db", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "ca85a6d8-2ac4-4447-ba82-6d8a7752af49", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "ff184013-6cdd-42c4-95ec-b21988a4ab92", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "f7b35fc6-b39f-4254-892a-740d42a4dc50", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "c73a9263-5c3d-447f-94d7-62f32b6db35d", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "ef31b2bf-d8e6-48b3-9d3a-7f74d68b11ed", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "93a57587-d988-4a3d-b41c-2a9cee3fa693", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "33c0a687-f8d5-4823-a52a-c9a030b8393e", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "e7bb7e18-69f4-4f71-8acf-57d0caa2a793", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "014a54ef-31c3-46d9-bd7e-0fc8bfa84cdb", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "3ce38238-bef0-467f-a54b-3e4987cedd43", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "23521ec7-5fa9-4609-8cf9-7c682f2c25dc", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "7063a1fa-b217-49df-a089-e111848ec673", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "7a3e9853-c782-477b-bcee-09f0c50df87d", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "e69c2851-78ec-4b28-9113-c796b9b496e8", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "eff453a7-f9dc-4093-aaa5-3002571f17ac", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "1e043627-f769-4aff-8640-cc7c708b11b3", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/render_b_camera_pose.json b/data/camera_study/Scene10/k4_abdf/render_b_camera_pose.json new file mode 100644 index 0000000..6996498 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:25Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abdf\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/render_d_aruco_detection.json b/data/camera_study/Scene10/k4_abdf/render_d_aruco_detection.json new file mode 100644 index 0000000..0bb4037 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/render_d_aruco_detection.json @@ -0,0 +1,1311 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:23Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "d", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.npz", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.png", + "image_sha256": "62e03d1a72df6ace64f3edf39f814b0e48c63c4b06cd21705bd69cd08afa442a", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 15, + "num_rejected_candidates": 18 + }, + "detections": [ + { + "observation_id": "ea13e1fd-f13b-4a43-853b-de934424169d", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 742.0, + 906.0 + ], + [ + 797.0, + 913.0 + ], + [ + 796.0, + 973.0 + ], + [ + 741.0, + 965.0 + ] + ], + "center_px": [ + 769.0, + 939.25 + ], + "quality": { + "area_px": 3280.0, + "perimeter_px": 230.03924179077148, + "sharpness": { + "laplacian_var": 235.03135651883824 + }, + "contrast": { + "p05": 24.0, + "p95": 170.0, + "dynamic_range": 146.0, + "mean_gray": 71.34429223744293, + "std_gray": 60.34595999329839 + }, + "geometry": { + "distance_to_center_norm": 0.4469395875930786, + "distance_to_border_px": 107.0 + }, + "edge_ratio": 1.0823298168515911, + "edge_lengths_px": [ + 55.44366455078125, + 60.008331298828125, + 55.578773498535156, + 59.00847244262695 + ] + }, + "confidence": 0.9239327831777916 + }, + { + "observation_id": "7084a802-d60b-4df8-868b-2f1f1342f453", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 889.0, + 943.0 + ], + [ + 916.0, + 987.0 + ], + [ + 864.0, + 1021.0 + ], + [ + 835.0, + 979.0 + ] + ], + "center_px": [ + 876.0, + 982.5 + ], + "quality": { + "area_px": 3259.0, + "perimeter_px": 229.6916618347168, + "sharpness": { + "laplacian_var": 61.572482510446996 + }, + "contrast": { + "p05": 8.0, + "p95": 102.0, + "dynamic_range": 94.0, + "mean_gray": 52.3137789904502, + "std_gray": 40.795642464164395 + }, + "geometry": { + "distance_to_center_norm": 0.5213257670402527, + "distance_to_border_px": 59.0 + }, + "edge_ratio": 1.2715701940712816, + "edge_lengths_px": [ + 51.62363815307617, + 62.12889862060547, + 51.03919982910156, + 64.8999252319336 + ] + }, + "confidence": 0.4035200127470337 + }, + { + "observation_id": "d19f0be1-f575-4608-befa-8800bb0c8c61", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 685.0 + ], + [ + 956.0, + 716.0 + ], + [ + 934.0, + 773.0 + ], + [ + 895.0, + 742.0 + ] + ], + "center_px": [ + 925.75, + 729.0 + ], + "quality": { + "area_px": 2892.0, + "perimeter_px": 221.4241943359375, + "sharpness": { + "laplacian_var": 65.75925962559084 + }, + "contrast": { + "p05": 5.0, + "p95": 83.0, + "dynamic_range": 78.0, + "mean_gray": 36.39875065070276, + "std_gray": 31.82755916882834 + }, + "geometry": { + "distance_to_center_norm": 0.31042397022247314, + "distance_to_border_px": 307.0 + }, + "edge_ratio": 1.2533531491081307, + "edge_lengths_px": [ + 49.04079818725586, + 61.09828186035156, + 49.81967544555664, + 61.46543884277344 + ] + }, + "confidence": 0.4262916519882062 + }, + { + "observation_id": "ca9bba3b-9cea-4541-b34d-7667aebb1a3e", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1006.0, + 434.0 + ], + [ + 1040.0, + 464.0 + ], + [ + 1023.0, + 519.0 + ], + [ + 983.0, + 494.0 + ] + ], + "center_px": [ + 1013.0, + 477.75 + ], + "quality": { + "area_px": 2677.5, + "perimeter_px": 214.33768844604492, + "sharpness": { + "laplacian_var": 63.84585482864622 + }, + "contrast": { + "p05": 4.0, + "p95": 81.0, + "dynamic_range": 77.0, + "mean_gray": 29.46114864864865, + "std_gray": 31.00050238673812 + }, + "geometry": { + "distance_to_center_norm": 0.33282196521759033, + "distance_to_border_px": 400.0 + }, + "edge_ratio": 1.4171338730692165, + "edge_lengths_px": [ + 45.343135833740234, + 57.567352294921875, + 47.16990661621094, + 64.25729370117188 + ] + }, + "confidence": 0.3613610332351109 + }, + { + "observation_id": "ce10f9e4-b68f-4a6c-b69e-5e39ff267237", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 994.0, + 187.0 + ], + [ + 1046.0, + 190.0 + ], + [ + 1029.0, + 238.0 + ], + [ + 978.0, + 230.0 + ] + ], + "center_px": [ + 1011.75, + 211.25 + ], + "quality": { + "area_px": 2434.0, + "perimeter_px": 200.51189422607422, + "sharpness": { + "laplacian_var": 737.7557921421737 + }, + "contrast": { + "p05": 56.0, + "p95": 183.0, + "dynamic_range": 127.0, + "mean_gray": 101.10567632850241, + "std_gray": 52.34786160983359 + }, + "geometry": { + "distance_to_center_norm": 0.48837676644325256, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.1352691889411037, + "edge_lengths_px": [ + 52.08646774291992, + 50.9215087890625, + 51.62363815307617, + 45.880279541015625 + ] + }, + "confidence": 0.8808483571484285 + }, + { + "observation_id": "213283d0-69d5-4389-9fd9-594074065f4e", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 920.0, + 169.0 + ], + [ + 969.0, + 170.0 + ], + [ + 953.0, + 218.0 + ], + [ + 902.0, + 215.0 + ] + ], + "center_px": [ + 936.0, + 193.0 + ], + "quality": { + "area_px": 2384.0, + "perimeter_px": 200.09115982055664, + "sharpness": { + "laplacian_var": 675.8367068624159 + }, + "contrast": { + "p05": 58.0, + "p95": 184.0, + "dynamic_range": 126.0, + "mean_gray": 125.61893054701905, + "std_gray": 52.20639937589474 + }, + "geometry": { + "distance_to_center_norm": 0.4541509747505188, + "distance_to_border_px": 169.0 + }, + "edge_ratio": 1.042398381472962, + "edge_lengths_px": [ + 49.01020431518555, + 50.59644317626953, + 51.088157653808594, + 49.39635467529297 + ] + }, + "confidence": 0.9593261249954639 + }, + { + "observation_id": "d020eee0-7875-40c9-9a96-2a34f017d954", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 837.0, + 569.0 + ], + [ + 877.0, + 568.0 + ], + [ + 857.0, + 624.0 + ], + [ + 816.0, + 623.0 + ] + ], + "center_px": [ + 846.75, + 596.0 + ], + "quality": { + "area_px": 2227.5, + "perimeter_px": 198.4285888671875, + "sharpness": { + "laplacian_var": 456.8683277511788 + }, + "contrast": { + "p05": 43.0, + "p95": 185.0, + "dynamic_range": 142.0, + "mean_gray": 85.2088948787062, + "std_gray": 56.487417453665174 + }, + "geometry": { + "distance_to_center_norm": 0.15396633744239807, + "distance_to_border_px": 456.0 + }, + "edge_ratio": 1.486142577830794, + "edge_lengths_px": [ + 40.01249694824219, + 59.46427536010742, + 41.01219177246094, + 57.93962478637695 + ] + }, + "confidence": 0.6728829487273165 + }, + { + "observation_id": "e952209c-e950-47f2-bdbd-7989d25aa8d0", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 380.0, + 1053.0 + ], + [ + 418.0, + 1028.0 + ], + [ + 462.0, + 1043.0 + ], + [ + 426.0, + 1069.0 + ] + ], + "center_px": [ + 421.5, + 1048.25 + ], + "quality": { + "area_px": 1721.0, + "perimeter_px": 185.08320999145508, + "sharpness": { + "laplacian_var": 401.0408793146889 + }, + "contrast": { + "p05": 16.0, + "p95": 171.0, + "dynamic_range": 155.0, + "mean_gray": 91.72839506172839, + "std_gray": 64.0365880429505 + }, + "geometry": { + "distance_to_center_norm": 0.6549152135848999, + "distance_to_border_px": 11.0 + }, + "edge_ratio": 1.0967404836818018, + "edge_lengths_px": [ + 45.486263275146484, + 46.48655700683594, + 44.40720748901367, + 48.703182220458984 + ] + }, + "confidence": 0.20059440065661768 + }, + { + "observation_id": "19328b2b-315c-4810-b930-457956b9cc3b", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 839.0, + 266.0 + ], + [ + 854.0, + 309.0 + ], + [ + 811.0, + 306.0 + ], + [ + 796.0, + 265.0 + ] + ], + "center_px": [ + 825.0, + 286.5 + ], + "quality": { + "area_px": 1776.0, + "perimeter_px": 175.31510162353516, + "sharpness": { + "laplacian_var": 240.92017426523984 + }, + "contrast": { + "p05": 22.0, + "p95": 153.0, + "dynamic_range": 131.0, + "mean_gray": 74.06045751633987, + "std_gray": 53.6075481691311 + }, + "geometry": { + "distance_to_center_norm": 0.3048724830150604, + "distance_to_border_px": 265.0 + }, + "edge_ratio": 1.0588111649951575, + "edge_lengths_px": [ + 45.54119110107422, + 43.104522705078125, + 43.65776062011719, + 43.011627197265625 + ] + }, + "confidence": 0.9444554733275536 + }, + { + "observation_id": "0ee7a85d-dd34-4306-980b-81452a0cbf2a", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 992.0, + 902.0 + ], + [ + 1041.0, + 917.0 + ], + [ + 1015.0, + 938.0 + ], + [ + 966.0, + 922.0 + ] + ], + "center_px": [ + 1003.5, + 919.75 + ], + "quality": { + "area_px": 1407.5, + "perimeter_px": 169.01459884643555, + "sharpness": { + "laplacian_var": 202.21712799530312 + }, + "contrast": { + "p05": 11.0, + "p95": 135.0, + "dynamic_range": 124.0, + "mean_gray": 60.230610134436404, + "std_gray": 46.98590047860021 + }, + "geometry": { + "distance_to_center_norm": 0.5265568494796753, + "distance_to_border_px": 142.0 + }, + "edge_ratio": 1.5714104130928346, + "edge_lengths_px": [ + 51.244510650634766, + 33.42155075073242, + 51.54609680175781, + 32.80244064331055 + ] + }, + "confidence": 0.5971281121184089 + }, + { + "observation_id": "d424b7b8-9973-4239-87b9-15591364fb76", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 828.0, + 160.0 + ], + [ + 872.0, + 162.0 + ], + [ + 849.0, + 192.0 + ], + [ + 804.0, + 188.0 + ] + ], + "center_px": [ + 838.25, + 175.5 + ], + "quality": { + "area_px": 1361.0, + "perimeter_px": 163.9031524658203, + "sharpness": { + "laplacian_var": 634.8821505010796 + }, + "contrast": { + "p05": 22.0, + "p95": 179.0, + "dynamic_range": 157.0, + "mean_gray": 93.81072210065645, + "std_gray": 65.74062367039625 + }, + "geometry": { + "distance_to_center_norm": 0.4257793128490448, + "distance_to_border_px": 160.0 + }, + "edge_ratio": 1.2250450560973367, + "edge_lengths_px": [ + 44.04542922973633, + 37.80211639404297, + 45.17742919921875, + 36.878177642822266 + ] + }, + "confidence": 0.740653030529222 + }, + { + "observation_id": "add63264-5a8d-455e-9c6f-387efaee58fa", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 91.0, + 932.0 + ], + [ + 132.0, + 913.0 + ], + [ + 165.0, + 927.0 + ], + [ + 125.0, + 947.0 + ] + ], + "center_px": [ + 128.25, + 929.75 + ], + "quality": { + "area_px": 1240.5, + "perimeter_px": 162.91856002807617, + "sharpness": { + "laplacian_var": 640.6271417753217 + }, + "contrast": { + "p05": 17.0, + "p95": 172.0, + "dynamic_range": 155.0, + "mean_gray": 88.50410316529894, + "std_gray": 59.8365616473406 + }, + "geometry": { + "distance_to_center_norm": 0.7873013019561768, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.2605971300139012, + "edge_lengths_px": [ + 45.18849563598633, + 35.84689712524414, + 44.72135925292969, + 37.161808013916016 + ] + }, + "confidence": 0.6560383014602613 + }, + { + "observation_id": "71381156-3b19-4dff-ae22-454ab8ec148f", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 384.0, + 918.0 + ], + [ + 416.0, + 899.0 + ], + [ + 455.0, + 911.0 + ], + [ + 424.0, + 931.0 + ] + ], + "center_px": [ + 419.75, + 914.75 + ], + "quality": { + "area_px": 1164.0, + "perimeter_px": 156.97121810913086, + "sharpness": { + "laplacian_var": 1305.0180528018368 + }, + "contrast": { + "p05": 23.0, + "p95": 171.0, + "dynamic_range": 148.0, + "mean_gray": 125.7001287001287, + "std_gray": 50.591649190438574 + }, + "geometry": { + "distance_to_center_norm": 0.5335504412651062, + "distance_to_border_px": 149.0 + }, + "edge_ratio": 1.1400787327238997, + "edge_lengths_px": [ + 37.2155876159668, + 40.804412841796875, + 36.8917350769043, + 42.05948257446289 + ] + }, + "confidence": 0.6806547457875692 + }, + { + "observation_id": "cb883ac3-0486-4ecf-910c-9129e12d64b5", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1061.0, + 838.0 + ], + [ + 1107.0, + 851.0 + ], + [ + 1086.0, + 869.0 + ], + [ + 1038.0, + 855.0 + ] + ], + "center_px": [ + 1073.0, + 853.25 + ], + "quality": { + "area_px": 1119.5, + "perimeter_px": 154.0610065460205, + "sharpness": { + "laplacian_var": 699.1501103553894 + }, + "contrast": { + "p05": 27.0, + "p95": 147.0, + "dynamic_range": 120.0, + "mean_gray": 93.41610738255034, + "std_gray": 44.372659317587036 + }, + "geometry": { + "distance_to_center_norm": 0.5243862867355347, + "distance_to_border_px": 211.0 + }, + "edge_ratio": 1.8077537619585837, + "edge_lengths_px": [ + 47.801673889160156, + 27.658634185791016, + 50.0, + 28.600698471069336 + ] + }, + "confidence": 0.41285121294657384 + }, + { + "observation_id": "edcb74ee-1b6b-464b-9e36-99949a131e86", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 205.0, + 850.0 + ], + [ + 240.0, + 834.0 + ], + [ + 272.0, + 846.0 + ], + [ + 238.0, + 862.0 + ] + ], + "center_px": [ + 238.75, + 848.0 + ], + "quality": { + "area_px": 934.0, + "perimeter_px": 145.35046768188477, + "sharpness": { + "laplacian_var": 1079.742643238912 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 86.53560830860535, + "std_gray": 57.948273841825284 + }, + "geometry": { + "distance_to_center_norm": 0.6348573565483093, + "distance_to_border_px": 205.0 + }, + "edge_ratio": 1.1260460248127115, + "edge_lengths_px": [ + 38.4837646484375, + 34.1760139465332, + 37.57658767700195, + 35.11410140991211 + ] + }, + "confidence": 0.5529673325477359 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 539.0, + 665.0 + ], + [ + 601.0, + 657.0 + ], + [ + 722.0, + 692.0 + ], + [ + 705.0, + 711.0 + ] + ], + "center_px": [ + 641.75, + 681.25 + ], + "area_px": 3537.0 + }, + { + "image_points_px": [ + [ + 513.0, + 939.0 + ], + [ + 547.0, + 920.0 + ], + [ + 585.0, + 935.0 + ], + [ + 554.0, + 954.0 + ] + ], + "center_px": [ + 549.75, + 937.0 + ], + "area_px": 1238.0 + }, + { + "image_points_px": [ + [ + 256.0, + 906.0 + ], + [ + 289.0, + 888.0 + ], + [ + 327.0, + 900.0 + ], + [ + 291.0, + 919.0 + ] + ], + "center_px": [ + 290.75, + 903.25 + ], + "area_px": 1106.5 + }, + { + "image_points_px": [ + [ + 1378.0, + 809.0 + ], + [ + 1388.0, + 794.0 + ], + [ + 1434.0, + 804.0 + ], + [ + 1425.0, + 819.0 + ] + ], + "center_px": [ + 1406.25, + 806.5 + ], + "area_px": 792.5 + }, + { + "image_points_px": [ + [ + 492.0, + 714.0 + ], + [ + 517.0, + 702.0 + ], + [ + 551.0, + 710.0 + ], + [ + 527.0, + 723.0 + ] + ], + "center_px": [ + 521.75, + 712.25 + ], + "area_px": 639.5 + }, + { + "image_points_px": [ + [ + 1357.0, + 753.0 + ], + [ + 1371.0, + 740.0 + ], + [ + 1413.0, + 751.0 + ], + [ + 1400.0, + 763.0 + ] + ], + "center_px": [ + 1385.25, + 751.75 + ], + "area_px": 673.0 + }, + { + "image_points_px": [ + [ + 861.0, + 864.0 + ], + [ + 906.0, + 866.0 + ], + [ + 914.0, + 872.0 + ], + [ + 888.0, + 873.0 + ] + ], + "center_px": [ + 892.25, + 868.75 + ], + "area_px": 257.5 + }, + { + "image_points_px": [ + [ + 910.0, + 411.0 + ], + [ + 902.0, + 436.0 + ], + [ + 884.0, + 439.0 + ], + [ + 897.0, + 405.0 + ] + ], + "center_px": [ + 898.25, + 422.75 + ], + "area_px": 473.0 + }, + { + "image_points_px": [ + [ + 926.0, + 925.0 + ], + [ + 927.0, + 944.0 + ], + [ + 919.0, + 968.0 + ], + [ + 918.0, + 955.0 + ] + ], + "center_px": [ + 922.5, + 948.0 + ], + "area_px": 155.0 + }, + { + "image_points_px": [ + [ + 848.0, + 907.0 + ], + [ + 854.0, + 911.0 + ], + [ + 859.0, + 937.0 + ], + [ + 857.0, + 945.0 + ] + ], + "center_px": [ + 854.5, + 925.0 + ], + "area_px": 142.0 + }, + { + "image_points_px": [ + [ + 973.0, + 589.0 + ], + [ + 977.0, + 595.0 + ], + [ + 965.0, + 626.0 + ], + [ + 962.0, + 618.0 + ] + ], + "center_px": [ + 969.25, + 607.0 + ], + "area_px": 185.5 + }, + { + "image_points_px": [ + [ + 946.0, + 260.0 + ], + [ + 928.0, + 294.0 + ], + [ + 936.0, + 270.0 + ], + [ + 942.0, + 260.0 + ] + ], + "center_px": [ + 938.0, + 271.0 + ], + "area_px": 100.0 + }, + { + "image_points_px": [ + [ + 831.0, + 639.0 + ], + [ + 795.0, + 649.0 + ], + [ + 796.0, + 645.0 + ], + [ + 812.0, + 640.0 + ] + ], + "center_px": [ + 808.5, + 643.25 + ], + "area_px": 106.5 + }, + { + "image_points_px": [ + [ + 957.0, + 355.0 + ], + [ + 971.0, + 365.0 + ], + [ + 967.0, + 381.0 + ], + [ + 961.0, + 372.0 + ] + ], + "center_px": [ + 964.0, + 368.25 + ], + "area_px": 165.0 + }, + { + "image_points_px": [ + [ + 1107.0, + 214.0 + ], + [ + 1106.0, + 229.0 + ], + [ + 1099.0, + 243.0 + ], + [ + 1103.0, + 219.0 + ] + ], + "center_px": [ + 1103.75, + 226.25 + ], + "area_px": 83.5 + }, + { + "image_points_px": [ + [ + 275.0, + 926.0 + ], + [ + 284.0, + 927.0 + ], + [ + 303.0, + 935.0 + ], + [ + 277.0, + 929.0 + ] + ], + "center_px": [ + 284.75, + 929.25 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 927.0, + 944.0 + ], + [ + 921.0, + 969.0 + ], + [ + 918.0, + 971.0 + ], + [ + 922.0, + 951.0 + ] + ], + "center_px": [ + 922.0, + 958.75 + ], + "area_px": 67.5 + }, + { + "image_points_px": [ + [ + 507.0, + 975.0 + ], + [ + 526.0, + 982.0 + ], + [ + 529.0, + 986.0 + ], + [ + 509.0, + 979.0 + ] + ], + "center_px": [ + 517.75, + 980.5 + ], + "area_px": 60.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/render_d_camera_pose.json b/data/camera_study/Scene10/k4_abdf/render_d_camera_pose.json new file mode 100644 index 0000000..4429b77 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/render_d_camera_pose.json @@ -0,0 +1,285 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:25Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abdf\\render_d_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "d", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 6, + "used_marker_ids": [ + 95, + 208, + 69, + 103, + 214, + 64 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.010671415477997622, + 0.0018696542807179611, + 0.001824150025738836, + 0.0018241474426834877 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.164164330259058, + "residual_median_px": 5.398072385043921, + "residual_max_px": 7.027422341283123, + "sigma2_normalized": 6.6550277836154934e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8166700601577759, + 0.5771039724349976, + -0.0010227123275399208 + ], + [ + 0.16298067569732666, + -0.2323361337184906, + -0.9588833451271057 + ], + [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + ], + "translation_m": [ + -0.11485252529382706, + 0.08547275513410568, + 1.1249300241470337 + ], + "rvec_rad": [ + 1.7923624327425687, + 0.5686287097896567, + -0.4261428430202902 + ] + }, + "camera_in_world": { + "position_m": [ + 0.7026420831680298, + -0.7945951223373413, + 0.4010946750640869 + ], + "position_mm": [ + 702.64208984375, + -794.5950927734375, + 401.09466552734375 + ], + "orientation_deg": { + "roll": 109.92484283447266, + "pitch": 33.615230560302734, + "yaw": 11.286093711853027 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.0003498424001015397, + 6.823486661029942e-05, + 4.142063730678703e-05, + -5.345001723379169e-06, + -7.396858110018478e-05, + -1.2641475041979003e-05 + ], + [ + 6.823486661029988e-05, + 0.00010295516106391171, + -9.137229494897015e-05, + 2.281178954254835e-05, + -1.979611332364414e-05, + -7.605354993482835e-06 + ], + [ + 4.142063730678625e-05, + -9.137229494897096e-05, + 0.0002702927022549336, + -4.213130837183371e-05, + -7.56149612726986e-06, + 9.26150663825411e-06 + ], + [ + -5.345001723379082e-06, + 2.281178954254845e-05, + -4.2131308371833616e-05, + 8.962887675732753e-06, + -2.575675434153523e-07, + -3.848871385514968e-06 + ], + [ + -7.396858110018466e-05, + -1.9796113323644056e-05, + -7.561496127270001e-06, + -2.575675434153093e-07, + 1.8000566759428326e-05, + 7.99389653027148e-06 + ], + [ + -1.2641475041978559e-05, + -7.605354993482897e-06, + 9.261506638254348e-06, + -3.848871385514858e-06, + 7.993896530271401e-06, + 2.7756310749504287e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 1.07166452425966, + 0.581362070062273, + 0.9419759016685776 + ], + "tvec_std_m": [ + 0.0029938082229382617, + 0.004242707479832698, + 0.005268425832210631 + ] + }, + "camera_center_std_m": [ + 0.01190826606439346, + 0.013088153786860686, + 0.01603645350806163 + ], + "camera_center_std_mm": [ + 11.90826606439346, + 13.088153786860685, + 16.03645350806163 + ], + "orientation_std_deg": { + "roll": 1.2477636245413861, + "pitch": 0.8325671808473429, + "yaw": 0.699613718760565 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 421.5, + 1048.25 + ], + "projected_center_px": [ + 423.55438232421875, + 1045.9644775390625 + ], + "reprojection_error_px": 3.0731253885112206, + "confidence": 0.20059440065661768 + }, + { + "marker_id": 208, + "observed_center_px": [ + 1003.5, + 919.75 + ], + "projected_center_px": [ + 996.4899291992188, + 920.2435302734375 + ], + "reprojection_error_px": 7.027422341283123, + "confidence": 0.5971281121184089 + }, + { + "marker_id": 69, + "observed_center_px": [ + 128.25, + 929.75 + ], + "projected_center_px": [ + 123.95993041992188, + 934.0740966796875 + ], + "reprojection_error_px": 6.091182898025322, + "confidence": 0.6560383014602613 + }, + { + "marker_id": 103, + "observed_center_px": [ + 419.75, + 914.75 + ], + "projected_center_px": [ + 425.61590576171875, + 913.2058715820312 + ], + "reprojection_error_px": 6.065738452698394, + "confidence": 0.6806547457875692 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1073.0, + 853.25 + ], + "projected_center_px": [ + 1077.615234375, + 854.2874755859375 + ], + "reprojection_error_px": 4.730406317389448, + "confidence": 0.41285121294657384 + }, + { + "marker_id": 64, + "observed_center_px": [ + 238.75, + 848.0 + ], + "projected_center_px": [ + 237.76194763183594, + 846.0165405273438 + ], + "reprojection_error_px": 2.2159329777555143, + "confidence": 0.5529673325477359 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/render_f_aruco_detection.json b/data/camera_study/Scene10/k4_abdf/render_f_aruco_detection.json new file mode 100644 index 0000000..3218672 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/render_f_aruco_detection.json @@ -0,0 +1,2058 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:24Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "f", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.npz", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.png", + "image_sha256": "aa67ae34760d38a87903e73b4020db43742a978458949ff309a7b2527c548cd4", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 33, + "num_rejected_candidates": 9 + }, + "detections": [ + { + "observation_id": "9c08fe87-4b45-41ae-9b3b-1d4f9a3af7c7", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1111.0, + 551.0 + ], + [ + 1128.0, + 590.0 + ], + [ + 1088.0, + 605.0 + ], + [ + 1071.0, + 566.0 + ] + ], + "center_px": [ + 1099.5, + 578.0 + ], + "quality": { + "area_px": 1815.0, + "perimeter_px": 170.52822875976562, + "sharpness": { + "laplacian_var": 705.4441714458114 + }, + "contrast": { + "p05": 20.0, + "p95": 169.0, + "dynamic_range": 149.0, + "mean_gray": 91.23937908496733, + "std_gray": 63.85244467612601 + }, + "geometry": { + "distance_to_center_norm": 0.4237752854824066, + "distance_to_border_px": 312.0 + }, + "edge_ratio": 1.0041351499491737, + "edge_lengths_px": [ + 42.54409408569336, + 42.72002029418945, + 42.54409408569336, + 42.72002029418945 + ] + }, + "confidence": 0.9958818790982638 + }, + { + "observation_id": "27f5928a-4dc4-4992-8bc3-268dc2515d92", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1016.0, + 419.0 + ], + [ + 1031.0, + 457.0 + ], + [ + 994.0, + 474.0 + ], + [ + 980.0, + 436.0 + ] + ], + "center_px": [ + 1005.25, + 446.5 + ], + "quality": { + "area_px": 1633.5, + "perimeter_px": 161.88091659545898, + "sharpness": { + "laplacian_var": 1206.2538238529316 + }, + "contrast": { + "p05": 64.0, + "p95": 184.0, + "dynamic_range": 120.0, + "mean_gray": 109.98129092609916, + "std_gray": 52.10421328381854 + }, + "geometry": { + "distance_to_center_norm": 0.33353662490844727, + "distance_to_border_px": 409.0 + }, + "edge_ratio": 1.0261563943133383, + "edge_lengths_px": [ + 40.853397369384766, + 40.71854782104492, + 40.49691390991211, + 39.81205749511719 + ] + }, + "confidence": 0.9745103237106064 + }, + { + "observation_id": "9d2b483e-a796-4b1d-a688-9db4803f051b", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1036.0, + 506.0 + ], + [ + 1052.0, + 544.0 + ], + [ + 1022.0, + 561.0 + ], + [ + 1006.0, + 523.0 + ] + ], + "center_px": [ + 1029.0, + 533.5 + ], + "quality": { + "area_px": 1412.0, + "perimeter_px": 151.42587280273438, + "sharpness": { + "laplacian_var": 1012.7025030399973 + }, + "contrast": { + "p05": 38.0, + "p95": 183.0, + "dynamic_range": 145.0, + "mean_gray": 116.22860125260961, + "std_gray": 60.975378654093674 + }, + "geometry": { + "distance_to_center_norm": 0.34340929985046387, + "distance_to_border_px": 388.0 + }, + "edge_ratio": 1.1957310908974648, + "edge_lengths_px": [ + 41.231056213378906, + 34.48188018798828, + 41.231056213378906, + 34.48188018798828 + ] + }, + "confidence": 0.7872450089315723 + }, + { + "observation_id": "aed1d170-59af-4c2f-a173-b51a76be6c60", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1052.0, + 572.0 + ], + [ + 1067.0, + 612.0 + ], + [ + 1037.0, + 628.0 + ], + [ + 1025.0, + 587.0 + ] + ], + "center_px": [ + 1045.25, + 599.75 + ], + "quality": { + "area_px": 1363.5, + "perimeter_px": 150.32693099975586, + "sharpness": { + "laplacian_var": 1006.0857327103973 + }, + "contrast": { + "p05": 35.0, + "p95": 182.0, + "dynamic_range": 147.0, + "mean_gray": 87.55157437567861, + "std_gray": 61.08527885104246 + }, + "geometry": { + "distance_to_center_norm": 0.3674362897872925, + "distance_to_border_px": 373.0 + }, + "edge_ratio": 1.38311172556412, + "edge_lengths_px": [ + 42.72002029418945, + 34.0, + 42.72002029418945, + 30.886890411376953 + ] + }, + "confidence": 0.6572137183127795 + }, + { + "observation_id": "29c50368-58c6-40b3-ac15-982d04546fbe", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1373.0, + 931.0 + ], + [ + 1403.0, + 920.0 + ], + [ + 1417.0, + 952.0 + ], + [ + 1387.0, + 964.0 + ] + ], + "center_px": [ + 1395.0, + 941.75 + ], + "quality": { + "area_px": 1136.0, + "perimeter_px": 135.0394744873047, + "sharpness": { + "laplacian_var": 536.3795719450814 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 59.547588005215125, + "std_gray": 52.80020659255208 + }, + "geometry": { + "distance_to_center_norm": 0.8727903962135315, + "distance_to_border_px": 23.0 + }, + "edge_ratio": 1.1218600885282315, + "edge_lengths_px": [ + 31.95309066772461, + 34.928497314453125, + 32.31098937988281, + 35.84689712524414 + ] + }, + "confidence": 0.3105318897567382 + }, + { + "observation_id": "bb59c76e-97d2-4869-8e4f-adf17942b4d9", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1361.0, + 872.0 + ], + [ + 1392.0, + 861.0 + ], + [ + 1405.0, + 893.0 + ], + [ + 1375.0, + 904.0 + ] + ], + "center_px": [ + 1383.25, + 882.5 + ], + "quality": { + "area_px": 1124.5, + "perimeter_px": 134.31518936157227, + "sharpness": { + "laplacian_var": 517.914546739087 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 76.5836627140975, + "std_gray": 53.471581821317514 + }, + "geometry": { + "distance_to_center_norm": 0.8294032216072083, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.0931179608780046, + "edge_lengths_px": [ + 32.893768310546875, + 34.539833068847656, + 31.95309066772461, + 34.928497314453125 + ] + }, + "confidence": 0.480064078578645 + }, + { + "observation_id": "ed3da6f4-ab1c-4a3a-9c69-bba546bd322f", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 948.0, + 734.0 + ], + [ + 958.0, + 766.0 + ], + [ + 926.0, + 775.0 + ], + [ + 916.0, + 742.0 + ] + ], + "center_px": [ + 937.0, + 754.25 + ], + "quality": { + "area_px": 1125.0, + "perimeter_px": 134.23437118530273, + "sharpness": { + "laplacian_var": 451.55598900708645 + }, + "contrast": { + "p05": 10.0, + "p95": 140.0, + "dynamic_range": 130.0, + "mean_gray": 60.31848852901484, + "std_gray": 51.76857091737675 + }, + "geometry": { + "distance_to_center_norm": 0.3388288915157318, + "distance_to_border_px": 305.0 + }, + "edge_ratio": 1.0453855707425852, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 34.48188018798828, + 32.98484420776367 + ] + }, + "confidence": 0.717438637944123 + }, + { + "observation_id": "4eead9d5-1ce5-4f0e-a8ad-da013cb49199", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 644.0, + 826.0 + ], + [ + 676.0, + 815.0 + ], + [ + 686.0, + 847.0 + ], + [ + 654.0, + 857.0 + ] + ], + "center_px": [ + 665.0, + 836.25 + ], + "quality": { + "area_px": 1113.0, + "perimeter_px": 133.4630584716797, + "sharpness": { + "laplacian_var": 852.4779615278809 + }, + "contrast": { + "p05": 29.0, + "p95": 169.0, + "dynamic_range": 140.0, + "mean_gray": 86.11354309165527, + "std_gray": 58.71854981961371 + }, + "geometry": { + "distance_to_center_norm": 0.334791362285614, + "distance_to_border_px": 223.0 + }, + "edge_ratio": 1.0388313835116465, + "edge_lengths_px": [ + 33.83784866333008, + 33.52610778808594, + 33.52610778808594, + 32.572994232177734 + ] + }, + "confidence": 0.714264135428559 + }, + { + "observation_id": "7e840acf-4cab-4dd0-b0be-825002480418", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1320.0, + 833.0 + ], + [ + 1351.0, + 823.0 + ], + [ + 1363.0, + 855.0 + ], + [ + 1333.0, + 865.0 + ] + ], + "center_px": [ + 1341.75, + 844.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 451.19488172035136 + }, + "contrast": { + "p05": 7.0, + "p95": 137.0, + "dynamic_range": 130.0, + "mean_gray": 45.32476319350474, + "std_gray": 49.27193956190029 + }, + "geometry": { + "distance_to_center_norm": 0.7689892649650574, + "distance_to_border_px": 77.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.6720101269988878 + }, + { + "observation_id": "e57d563f-9bfe-4f16-bd54-6dbc6fa64ce4", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1378.0, + 795.0 + ], + [ + 1409.0, + 785.0 + ], + [ + 1421.0, + 817.0 + ], + [ + 1391.0, + 827.0 + ] + ], + "center_px": [ + 1399.75, + 806.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 495.05510317310643 + }, + "contrast": { + "p05": 8.0, + "p95": 139.0, + "dynamic_range": 131.0, + "mean_gray": 82.98646820027064, + "std_gray": 51.90790044031631 + }, + "geometry": { + "distance_to_center_norm": 0.8110472559928894, + "distance_to_border_px": 19.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.25536384825957736 + }, + { + "observation_id": "e5db9c96-a63f-4314-be98-5f66fcee5d27", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 534.0, + 807.0 + ], + [ + 566.0, + 797.0 + ], + [ + 575.0, + 829.0 + ], + [ + 544.0, + 839.0 + ] + ], + "center_px": [ + 554.75, + 818.0 + ], + "quality": { + "area_px": 1103.0, + "perimeter_px": 132.86674880981445, + "sharpness": { + "laplacian_var": 743.494629148182 + }, + "contrast": { + "p05": 35.0, + "p95": 172.0, + "dynamic_range": 137.0, + "mean_gray": 110.58367911479945, + "std_gray": 58.20082187769058 + }, + "geometry": { + "distance_to_center_norm": 0.35934022068977356, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 32.572994232177734, + 33.52610778808594 + ] + }, + "confidence": 0.7144285455619288 + }, + { + "observation_id": "1747e867-5538-444e-9a52-dc39be1e4149", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 824.0, + 853.0 + ], + [ + 854.0, + 841.0 + ], + [ + 867.0, + 872.0 + ], + [ + 836.0, + 884.0 + ] + ], + "center_px": [ + 845.25, + 862.5 + ], + "quality": { + "area_px": 1095.5, + "perimeter_px": 132.40953826904297, + "sharpness": { + "laplacian_var": 442.72637538104226 + }, + "contrast": { + "p05": 14.0, + "p95": 151.0, + "dynamic_range": 137.0, + "mean_gray": 42.81124497991968, + "std_gray": 45.242857765301586 + }, + "geometry": { + "distance_to_center_norm": 0.3844088017940521, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.040372688406745, + "edge_lengths_px": [ + 32.31098937988281, + 33.61547088623047, + 33.241539001464844, + 33.241539001464844 + ] + }, + "confidence": 0.7019920279258633 + }, + { + "observation_id": "2859124d-fd92-4980-a249-014c496891d7", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 590.0, + 838.0 + ], + [ + 621.0, + 828.0 + ], + [ + 631.0, + 859.0 + ], + [ + 600.0, + 870.0 + ] + ], + "center_px": [ + 610.5, + 848.75 + ], + "quality": { + "area_px": 1081.5, + "perimeter_px": 131.56586456298828, + "sharpness": { + "laplacian_var": 731.9229727377668 + }, + "contrast": { + "p05": 31.0, + "p95": 169.0, + "dynamic_range": 138.0, + "mean_gray": 66.63649222065064, + "std_gray": 51.73446481181097 + }, + "geometry": { + "distance_to_center_norm": 0.3639915883541107, + "distance_to_border_px": 210.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 32.572994232177734, + 32.572994232177734, + 32.893768310546875, + 33.52610778808594 + ] + }, + "confidence": 0.7005026944924987 + }, + { + "observation_id": "3683503f-2cdf-4868-a0c1-39deac675ba7", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 655.0, + 735.0 + ], + [ + 687.0, + 726.0 + ], + [ + 695.0, + 757.0 + ], + [ + 664.0, + 766.0 + ] + ], + "center_px": [ + 675.25, + 746.0 + ], + "quality": { + "area_px": 1053.0, + "perimeter_px": 129.81721115112305, + "sharpness": { + "laplacian_var": 717.9247585125308 + }, + "contrast": { + "p05": 30.0, + "p95": 171.0, + "dynamic_range": 141.0, + "mean_gray": 93.84776536312849, + "std_gray": 59.42619485270114 + }, + "geometry": { + "distance_to_center_norm": 0.23422729969024658, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0382912394254866, + "edge_lengths_px": [ + 33.241539001464844, + 32.015621185302734, + 32.280025482177734, + 32.280025482177734 + ] + }, + "confidence": 0.6761108765479277 + }, + { + "observation_id": "722505b5-dbfc-41a5-88a4-a7c00777a451", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1325.0, + 744.0 + ], + [ + 1354.0, + 732.0 + ], + [ + 1368.0, + 763.0 + ], + [ + 1339.0, + 774.0 + ] + ], + "center_px": [ + 1346.5, + 753.25 + ], + "quality": { + "area_px": 1045.5, + "perimeter_px": 129.52142906188965, + "sharpness": { + "laplacian_var": 401.9192193180268 + }, + "contrast": { + "p05": 7.0, + "p95": 133.0, + "dynamic_range": 126.0, + "mean_gray": 49.76628895184136, + "std_gray": 49.769446320789825 + }, + "geometry": { + "distance_to_center_norm": 0.735332190990448, + "distance_to_border_px": 72.0 + }, + "edge_ratio": 1.096678006826234, + "edge_lengths_px": [ + 31.38471031188965, + 34.01470184326172, + 31.016124725341797, + 33.105892181396484 + ] + }, + "confidence": 0.63555573802114 + }, + { + "observation_id": "96012be8-65ec-4cfc-a6de-2621bdd9e109", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 488.0, + 682.0 + ], + [ + 520.0, + 673.0 + ], + [ + 528.0, + 703.0 + ], + [ + 497.0, + 713.0 + ] + ], + "center_px": [ + 508.25, + 692.75 + ], + "quality": { + "area_px": 1041.5, + "perimeter_px": 129.14290809631348, + "sharpness": { + "laplacian_var": 854.9291926161701 + }, + "contrast": { + "p05": 39.0, + "p95": 174.0, + "dynamic_range": 135.0, + "mean_gray": 85.3946251768034, + "std_gray": 55.88886855913174 + }, + "geometry": { + "distance_to_center_norm": 0.2901056110858917, + "distance_to_border_px": 367.0 + }, + "edge_ratio": 1.070637881392484, + "edge_lengths_px": [ + 33.241539001464844, + 31.048349380493164, + 32.572994232177734, + 32.280025482177734 + ] + }, + "confidence": 0.6485230397697823 + }, + { + "observation_id": "71926b7b-306d-42c7-8e35-582dfa23a600", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1047.0, + 694.0 + ], + [ + 1058.0, + 725.0 + ], + [ + 1029.0, + 735.0 + ], + [ + 1017.0, + 703.0 + ] + ], + "center_px": [ + 1037.75, + 714.25 + ], + "quality": { + "area_px": 1038.5, + "perimeter_px": 129.06642532348633, + "sharpness": { + "laplacian_var": 702.8589017712277 + }, + "contrast": { + "p05": 13.0, + "p95": 151.0, + "dynamic_range": 138.0, + "mean_gray": 91.26308139534883, + "std_gray": 55.34838633216663 + }, + "geometry": { + "distance_to_center_norm": 0.40265801548957825, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 1.1141061874732403, + "edge_lengths_px": [ + 32.893768310546875, + 30.675724029541016, + 34.1760139465332, + 31.320919036865234 + ] + }, + "confidence": 0.62142490645665 + }, + { + "observation_id": "644066b6-6107-4938-ad07-a8c626ff6c46", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 592.0, + 617.0 + ], + [ + 622.0, + 606.0 + ], + [ + 633.0, + 635.0 + ], + [ + 604.0, + 647.0 + ] + ], + "center_px": [ + 612.75, + 626.25 + ], + "quality": { + "area_px": 1002.5, + "perimeter_px": 126.66491508483887, + "sharpness": { + "laplacian_var": 861.4333753048808 + }, + "contrast": { + "p05": 34.0, + "p95": 174.0, + "dynamic_range": 140.0, + "mean_gray": 97.54451038575668, + "std_gray": 59.64062956897272 + }, + "geometry": { + "distance_to_center_norm": 0.15292063355445862, + "distance_to_border_px": 433.0 + }, + "edge_ratio": 1.041748112183823, + "edge_lengths_px": [ + 31.95309066772461, + 31.016124725341797, + 31.38471031188965, + 32.31098937988281 + ] + }, + "confidence": 0.6415498386959416 + }, + { + "observation_id": "f69066f9-fd45-4b38-b3ff-56fdd0f553c4", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 852.0, + 664.0 + ], + [ + 855.0, + 699.0 + ], + [ + 831.0, + 712.0 + ], + [ + 828.0, + 677.0 + ] + ], + "center_px": [ + 841.5, + 688.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 124.84605026245117, + "sharpness": { + "laplacian_var": 964.1437813663806 + }, + "contrast": { + "p05": 35.0, + "p95": 185.0, + "dynamic_range": 150.0, + "mean_gray": 80.50977198697069, + "std_gray": 59.04237755633671 + }, + "geometry": { + "distance_to_center_norm": 0.21276035904884338, + "distance_to_border_px": 368.0 + }, + "edge_ratio": 1.2870027603239267, + "edge_lengths_px": [ + 35.12833786010742, + 27.294687271118164, + 35.12833786010742, + 27.294687271118164 + ] + }, + "confidence": 0.45532147876086076 + }, + { + "observation_id": "83fcc234-d3bc-4aaf-a11a-71ec703970b7", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 549.0 + ], + [ + 750.0, + 540.0 + ], + [ + 759.0, + 570.0 + ], + [ + 728.0, + 578.0 + ] + ], + "center_px": [ + 739.25, + 559.25 + ], + "quality": { + "area_px": 972.0, + "perimeter_px": 124.74067687988281, + "sharpness": { + "laplacian_var": 858.8311608781246 + }, + "contrast": { + "p05": 30.0, + "p95": 176.0, + "dynamic_range": 146.0, + "mean_gray": 89.6813509544787, + "std_gray": 60.460128160193484 + }, + "geometry": { + "distance_to_center_norm": 0.030248457565903664, + "distance_to_border_px": 502.0 + }, + "edge_ratio": 1.0642352686074992, + "edge_lengths_px": [ + 31.320919036865234, + 31.320919036865234, + 32.015621185302734, + 30.08321762084961 + ] + }, + "confidence": 0.6088879208521975 + }, + { + "observation_id": "53b3dbca-4b38-425d-afc1-b9d36b90880d", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 670.0, + 478.0 + ], + [ + 700.0, + 469.0 + ], + [ + 710.0, + 497.0 + ], + [ + 680.0, + 507.0 + ] + ], + "center_px": [ + 690.0, + 487.75 + ], + "quality": { + "area_px": 950.0, + "perimeter_px": 123.3515567779541, + "sharpness": { + "laplacian_var": 744.1718727855725 + }, + "contrast": { + "p05": 33.0, + "p95": 177.0, + "dynamic_range": 144.0, + "mean_gray": 123.30505952380952, + "std_gray": 58.57233093015588 + }, + "geometry": { + "distance_to_center_norm": 0.06694444268941879, + "distance_to_border_px": 469.0 + }, + "edge_ratio": 1.0635890487184443, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.62277603149414, + 30.675724029541016 + ] + }, + "confidence": 0.5954680843098741 + }, + { + "observation_id": "547ebf9b-f1de-47f1-bd72-9030221e30d7", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 519.0, + 393.0 + ], + [ + 550.0, + 385.0 + ], + [ + 558.0, + 413.0 + ], + [ + 527.0, + 421.0 + ] + ], + "center_px": [ + 538.5, + 403.0 + ], + "quality": { + "area_px": 932.0, + "perimeter_px": 122.27212142944336, + "sharpness": { + "laplacian_var": 797.3173110559737 + }, + "contrast": { + "p05": 38.0, + "p95": 176.19999999999993, + "dynamic_range": 138.19999999999993, + "mean_gray": 94.14307458143075, + "std_gray": 55.87143525094488 + }, + "geometry": { + "distance_to_center_norm": 0.2526678740978241, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0994209463411062, + "edge_lengths_px": [ + 32.015621185302734, + 29.120439529418945, + 32.015621185302734, + 29.120439529418945 + ] + }, + "confidence": 0.5651459847123547 + }, + { + "observation_id": "67728da0-753f-44a0-a1b5-9a1aca9fb29e", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 613.0, + 419.0 + ], + [ + 643.0, + 410.0 + ], + [ + 653.0, + 438.0 + ], + [ + 623.0, + 447.0 + ] + ], + "center_px": [ + 633.0, + 428.5 + ], + "quality": { + "area_px": 930.0, + "perimeter_px": 122.10611343383789, + "sharpness": { + "laplacian_var": 823.1077646304283 + }, + "contrast": { + "p05": 33.0, + "p95": 175.0, + "dynamic_range": 142.0, + "mean_gray": 90.3810975609756, + "std_gray": 58.11551162536803 + }, + "geometry": { + "distance_to_center_norm": 0.15713976323604584, + "distance_to_border_px": 410.0 + }, + "edge_ratio": 1.0534364993835403, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.320919036865234, + 29.73213768005371 + ] + }, + "confidence": 0.5885499509109636 + }, + { + "observation_id": "a882ea16-28da-4acd-a87b-0a56157e88cc", + "type": "aruco", + "marker_id": 82, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 420.0 + ], + [ + 1365.0, + 411.0 + ], + [ + 1377.0, + 439.0 + ], + [ + 1348.0, + 448.0 + ] + ], + "center_px": [ + 1356.5, + 429.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 492.47728625272765 + }, + "contrast": { + "p05": 8.0, + "p95": 144.0, + "dynamic_range": 136.0, + "mean_gray": 74.61658841940532, + "std_gray": 56.63950003540781 + }, + "geometry": { + "distance_to_center_norm": 0.7178005576133728, + "distance_to_border_px": 63.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.6113473409254715 + }, + { + "observation_id": "19ede4bd-d05d-40bf-a8e9-6b5a1bb80c58", + "type": "aruco", + "marker_id": 73, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1381.0, + 409.0 + ], + [ + 1410.0, + 400.0 + ], + [ + 1422.0, + 428.0 + ], + [ + 1393.0, + 437.0 + ] + ], + "center_px": [ + 1401.5, + 418.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 771.0965392424098 + }, + "contrast": { + "p05": 9.0, + "p95": 148.0, + "dynamic_range": 139.0, + "mean_gray": 87.07042253521126, + "std_gray": 52.83472667385498 + }, + "geometry": { + "distance_to_center_norm": 0.7691621780395508, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.22008504273316973 + }, + { + "observation_id": "297f8f12-6835-4762-bdcf-7d0b6e9585d3", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 881.0, + 288.0 + ], + [ + 892.0, + 316.0 + ], + [ + 863.0, + 326.0 + ], + [ + 852.0, + 298.0 + ] + ], + "center_px": [ + 872.0, + 307.0 + ], + "quality": { + "area_px": 922.0, + "perimeter_px": 121.51788330078125, + "sharpness": { + "laplacian_var": 865.0098318523201 + }, + "contrast": { + "p05": 22.0, + "p95": 172.0, + "dynamic_range": 150.0, + "mean_gray": 82.59908536585365, + "std_gray": 60.95016906391271 + }, + "geometry": { + "distance_to_center_norm": 0.30910664796829224, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.0196955796470641, + "edge_lengths_px": [ + 30.08321762084961, + 30.675724029541016, + 30.08321762084961, + 30.675724029541016 + ] + }, + "confidence": 0.60279428383853 + }, + { + "observation_id": "2fcae07b-240a-4a52-bd65-4f909cad8164", + "type": "aruco", + "marker_id": 52, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1170.0, + 304.0 + ], + [ + 1198.0, + 294.0 + ], + [ + 1211.0, + 321.0 + ], + [ + 1182.0, + 331.0 + ] + ], + "center_px": [ + 1190.25, + 312.5 + ], + "quality": { + "area_px": 894.5, + "perimeter_px": 119.92108345031738, + "sharpness": { + "laplacian_var": 736.7821607663999 + }, + "contrast": { + "p05": 12.0, + "p95": 162.0, + "dynamic_range": 150.0, + "mean_gray": 73.56239870340356, + "std_gray": 59.95824921853181 + }, + "geometry": { + "distance_to_center_norm": 0.5804333686828613, + "distance_to_border_px": 229.0 + }, + "edge_ratio": 1.038215950330626, + "edge_lengths_px": [ + 29.73213768005371, + 29.96664810180664, + 30.675724029541016, + 29.546573638916016 + ] + }, + "confidence": 0.5743827506632194 + }, + { + "observation_id": "059f602d-96e0-40a3-b1ea-fb3be0e92d3f", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 621.0, + 329.0 + ], + [ + 651.0, + 320.0 + ], + [ + 660.0, + 347.0 + ], + [ + 630.0, + 356.0 + ] + ], + "center_px": [ + 640.5, + 338.0 + ], + "quality": { + "area_px": 891.0, + "perimeter_px": 119.56283569335938, + "sharpness": { + "laplacian_var": 820.498501862312 + }, + "contrast": { + "p05": 32.0, + "p95": 175.0, + "dynamic_range": 143.0, + "mean_gray": 89.84786053882726, + "std_gray": 58.95198554771998 + }, + "geometry": { + "distance_to_center_norm": 0.24120134115219116, + "distance_to_border_px": 320.0 + }, + "edge_ratio": 1.1005049224950472, + "edge_lengths_px": [ + 31.320919036865234, + 28.460498809814453, + 31.320919036865234, + 28.460498809814453 + ] + }, + "confidence": 0.5397522426826521 + }, + { + "observation_id": "9c04841d-64bc-4db4-a4fa-d23512c58917", + "type": "aruco", + "marker_id": 77, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1106.0, + 220.0 + ], + [ + 1135.0, + 213.0 + ], + [ + 1145.0, + 239.0 + ], + [ + 1116.0, + 248.0 + ] + ], + "center_px": [ + 1125.5, + 230.0 + ], + "quality": { + "area_px": 863.0, + "perimeter_px": 117.78623580932617, + "sharpness": { + "laplacian_var": 634.9850778546712 + }, + "contrast": { + "p05": 11.0, + "p95": 158.0, + "dynamic_range": 147.0, + "mean_gray": 69.19607843137256, + "std_gray": 58.47258547896745 + }, + "geometry": { + "distance_to_center_norm": 0.5671351552009583, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.0900202903476583, + "edge_lengths_px": [ + 29.832868576049805, + 27.85677719116211, + 30.364452362060547, + 29.73213768005371 + ] + }, + "confidence": 0.5278189208292927 + }, + { + "observation_id": "0e424a14-c0ad-46b1-a0b9-cd9c350a99d7", + "type": "aruco", + "marker_id": 83, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1304.0, + 199.0 + ], + [ + 1332.0, + 191.0 + ], + [ + 1343.0, + 218.0 + ], + [ + 1314.0, + 226.0 + ] + ], + "center_px": [ + 1323.25, + 208.5 + ], + "quality": { + "area_px": 853.5, + "perimeter_px": 117.15077781677246, + "sharpness": { + "laplacian_var": 787.246986385212 + }, + "contrast": { + "p05": 11.0, + "p95": 159.19999999999993, + "dynamic_range": 148.19999999999993, + "mean_gray": 92.65964343598056, + "std_gray": 57.146865375444264 + }, + "geometry": { + "distance_to_center_norm": 0.7648148536682129, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0448333273602466, + "edge_lengths_px": [ + 29.120439529418945, + 29.154760360717773, + 30.08321762084961, + 28.792360305786133 + ] + }, + "confidence": 0.5445844663450473 + }, + { + "observation_id": "255b0843-ab16-4202-90e6-2ce0c900e5f7", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1089.0, + 172.0 + ], + [ + 1118.0, + 165.0 + ], + [ + 1127.0, + 192.0 + ], + [ + 1098.0, + 199.0 + ] + ], + "center_px": [ + 1108.0, + 182.0 + ], + "quality": { + "area_px": 846.0, + "perimeter_px": 116.58673477172852, + "sharpness": { + "laplacian_var": 840.0864058387932 + }, + "contrast": { + "p05": 18.0, + "p95": 165.0, + "dynamic_range": 147.0, + "mean_gray": 108.12054329371817, + "std_gray": 55.17911014115476 + }, + "geometry": { + "distance_to_center_norm": 0.5865867137908936, + "distance_to_border_px": 165.0 + }, + "edge_ratio": 1.048220158592656, + "edge_lengths_px": [ + 29.832868576049805, + 28.460498809814453, + 29.832868576049805, + 28.460498809814453 + ] + }, + "confidence": 0.5380549070504695 + }, + { + "observation_id": "2e7a9d74-22c3-4c7c-83ea-0c9c9b96f9c6", + "type": "aruco", + "marker_id": 61, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1260.0, + 127.0 + ], + [ + 1287.0, + 117.0 + ], + [ + 1300.0, + 143.0 + ], + [ + 1273.0, + 153.0 + ] + ], + "center_px": [ + 1280.0, + 135.0 + ], + "quality": { + "area_px": 832.0, + "perimeter_px": 115.72248840332031, + "sharpness": { + "laplacian_var": 747.7801521890221 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 95.53195164075993, + "std_gray": 57.42506055833918 + }, + "geometry": { + "distance_to_center_norm": 0.7678935527801514, + "distance_to_border_px": 117.0 + }, + "edge_ratio": 1.0096040611867558, + "edge_lengths_px": [ + 28.792360305786133, + 29.068883895874023, + 28.792360305786133, + 29.068883895874023 + ] + }, + "confidence": 0.5493902887184056 + }, + { + "observation_id": "e52a3f1a-2a70-4052-9ed3-56bf38c410a3", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 842.0, + 759.0 + ], + [ + 869.0, + 767.0 + ], + [ + 844.0, + 778.0 + ], + [ + 816.0, + 770.0 + ] + ], + "center_px": [ + 842.75, + 768.5 + ], + "quality": { + "area_px": 506.5, + "perimeter_px": 112.82488250732422, + "sharpness": { + "laplacian_var": 927.7063988919667 + }, + "contrast": { + "p05": 19.0, + "p95": 83.0, + "dynamic_range": 64.0, + "mean_gray": 43.613157894736844, + "std_gray": 22.719116354348767 + }, + "geometry": { + "distance_to_center_norm": 0.2882038950920105, + "distance_to_border_px": 302.0 + }, + "edge_ratio": 1.0661750749552474, + "edge_lengths_px": [ + 28.160255432128906, + 27.312999725341797, + 29.120439529418945, + 28.23118782043457 + ] + }, + "confidence": 0.25336676844060735 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1315.0, + 285.0 + ], + [ + 1328.0, + 312.0 + ], + [ + 1300.0, + 322.0 + ], + [ + 1287.0, + 295.0 + ] + ], + "center_px": [ + 1307.5, + 303.5 + ], + "area_px": 886.0 + }, + { + "image_points_px": [ + [ + 1003.0, + 394.0 + ], + [ + 972.0, + 415.0 + ], + [ + 973.0, + 410.0 + ], + [ + 985.0, + 400.0 + ] + ], + "center_px": [ + 983.25, + 404.75 + ], + "area_px": 121.0 + }, + { + "image_points_px": [ + [ + 780.0, + 278.0 + ], + [ + 783.0, + 279.0 + ], + [ + 797.0, + 300.0 + ], + [ + 795.0, + 302.0 + ] + ], + "center_px": [ + 788.75, + 289.75 + ], + "area_px": 63.5 + }, + { + "image_points_px": [ + [ + 1087.0, + 550.0 + ], + [ + 1063.0, + 565.0 + ], + [ + 1074.0, + 554.0 + ], + [ + 1082.0, + 550.0 + ] + ], + "center_px": [ + 1076.5, + 554.75 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 665.0, + 67.0 + ], + [ + 675.0, + 85.0 + ], + [ + 674.0, + 91.0 + ], + [ + 667.0, + 78.0 + ] + ], + "center_px": [ + 670.25, + 80.25 + ], + "area_px": 64.5 + }, + { + "image_points_px": [ + [ + 1107.0, + 93.0 + ], + [ + 1110.0, + 95.0 + ], + [ + 1120.0, + 115.0 + ], + [ + 1115.0, + 111.0 + ] + ], + "center_px": [ + 1113.0, + 103.5 + ], + "area_px": 49.0 + }, + { + "image_points_px": [ + [ + 735.0, + 232.0 + ], + [ + 745.0, + 254.0 + ], + [ + 742.0, + 252.0 + ], + [ + 736.0, + 239.0 + ] + ], + "center_px": [ + 739.5, + 244.25 + ], + "area_px": 37.5 + }, + { + "image_points_px": [ + [ + 1214.0, + 340.0 + ], + [ + 1219.0, + 346.0 + ], + [ + 1223.0, + 362.0 + ], + [ + 1216.0, + 349.0 + ] + ], + "center_px": [ + 1218.0, + 349.25 + ], + "area_px": 46.5 + }, + { + "image_points_px": [ + [ + 1121.0, + 562.0 + ], + [ + 1129.0, + 569.0 + ], + [ + 1131.0, + 577.0 + ], + [ + 1130.0, + 583.0 + ] + ], + "center_px": [ + 1127.75, + 572.75 + ], + "area_px": 62.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/render_f_camera_pose.json b/data/camera_study/Scene10/k4_abdf/render_f_camera_pose.json new file mode 100644 index 0000000..27b3472 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/render_f_camera_pose.json @@ -0,0 +1,582 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:25Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abdf\\render_f_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "f", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 27, + "used_marker_ids": [ + 68, + 46, + 208, + 47, + 56, + 53, + 97, + 62, + 54, + 55, + 72, + 66, + 214, + 95, + 51, + 103, + 69, + 58, + 82, + 73, + 210, + 52, + 64, + 77, + 83, + 75, + 61 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3, + 4 + ], + "rms": [ + 0.00918677717341902, + 0.0014933429518723808, + 0.001390373853667637, + 0.0013903699834861628, + 0.0013903699807887252 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125, + 6.25e-05 + ] + }, + "residual_rms_px": 3.941603533751138, + "residual_median_px": 3.7352373317630128, + "residual_max_px": 5.771900878439298, + "sigma2_normalized": 2.17476976890378e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.31769248843193054, + 0.9481521248817444, + 0.008892479352653027 + ], + [ + 0.9206541180610657, + -0.30620789527893066, + -0.242141991853714 + ], + [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + ], + "translation_m": [ + 0.12344730645418167, + -0.19988536834716797, + 1.4972078800201416 + ], + "rvec_rad": [ + 2.378352663832453, + 1.7133801592888853, + -0.1998435821316908 + ] + }, + "camera_in_world": { + "position_m": [ + 0.48447033762931824, + -0.3056860566139221, + 1.4030927419662476 + ], + "position_mm": [ + 484.4703369140625, + -305.6860656738281, + 1403.0927734375 + ], + "orientation_deg": { + "roll": 174.98638916015625, + "pitch": 13.112541198730469, + "yaw": 70.96184539794922 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 3.2311819447272024e-05, + 1.8832577487974546e-05, + -4.656767371183097e-06, + -4.18150026429738e-07, + 2.6114865287331025e-07, + 2.406181848846857e-06 + ], + [ + 1.8832577487974533e-05, + 1.683541014579236e-05, + -7.3574856590594524e-06, + 4.5948447714477966e-07, + 3.095065254407523e-08, + 2.3847847067019377e-06 + ], + [ + -4.6567673711861375e-06, + -7.357485659062205e-06, + 0.00016783973036034415, + 1.5647826411604766e-06, + -1.729586622472892e-06, + -2.906231789157714e-05 + ], + [ + -4.1815002642977447e-07, + 4.594844771447391e-07, + 1.5647826411606013e-06, + 3.507815548304795e-07, + -2.7134564617847737e-08, + 2.4204791300702807e-07 + ], + [ + 2.611486528733672e-07, + 3.0950652544076366e-08, + -1.729586622472832e-06, + -2.7134564617850665e-08, + 1.9997327434023874e-07, + 4.1386012647726157e-07 + ], + [ + 2.4061818488473495e-06, + 2.384784706702394e-06, + -2.9062317891576876e-05, + 2.420479130070509e-07, + 4.138601264772586e-07, + 9.270646369219581e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.3256891862833913, + 0.23509017702077495, + 0.7422838625560957 + ], + "tvec_std_m": [ + 0.0005922681443657758, + 0.00044718371430569644, + 0.003044773615430149 + ] + }, + "camera_center_std_m": [ + 0.011255169411300251, + 0.011919325044430497, + 0.004596769734438054 + ], + "camera_center_std_mm": [ + 11.255169411300251, + 11.919325044430497, + 4.5967697344380545 + ], + "orientation_std_deg": { + "roll": 0.5094522091773732, + "pitch": 0.4352540861263008, + "yaw": 0.1004884180203833 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 68, + "observed_center_px": [ + 1395.0, + 941.75 + ], + "projected_center_px": [ + 1389.3548583984375, + 940.5469970703125 + ], + "reprojection_error_px": 5.771900878439298, + "confidence": 0.3105318897567382 + }, + { + "marker_id": 46, + "observed_center_px": [ + 1383.25, + 882.5 + ], + "projected_center_px": [ + 1387.9061279296875, + 883.3380737304688 + ], + "reprojection_error_px": 4.7309507369362676, + "confidence": 0.480064078578645 + }, + { + "marker_id": 208, + "observed_center_px": [ + 937.0, + 754.25 + ], + "projected_center_px": [ + 934.9244995117188, + 751.2972412109375 + ], + "reprojection_error_px": 3.6092224568792584, + "confidence": 0.717438637944123 + }, + { + "marker_id": 47, + "observed_center_px": [ + 665.0, + 836.25 + ], + "projected_center_px": [ + 667.4868774414062, + 835.926025390625 + ], + "reprojection_error_px": 2.507891336580391, + "confidence": 0.714264135428559 + }, + { + "marker_id": 56, + "observed_center_px": [ + 1341.75, + 844.0 + ], + "projected_center_px": [ + 1344.8751220703125, + 839.613037109375 + ], + "reprojection_error_px": 5.386263209134431, + "confidence": 0.6720101269988878 + }, + { + "marker_id": 53, + "observed_center_px": [ + 1399.75, + 806.0 + ], + "projected_center_px": [ + 1394.572998046875, + 803.723388671875 + ], + "reprojection_error_px": 5.655467121468141, + "confidence": 0.25536384825957736 + }, + { + "marker_id": 97, + "observed_center_px": [ + 554.75, + 818.0 + ], + "projected_center_px": [ + 552.1571044921875, + 815.3113403320312 + ], + "reprojection_error_px": 3.7352373317630128, + "confidence": 0.7144285455619288 + }, + { + "marker_id": 62, + "observed_center_px": [ + 845.25, + 862.5 + ], + "projected_center_px": [ + 843.9764404296875, + 867.170166015625 + ], + "reprojection_error_px": 4.840702902743903, + "confidence": 0.7019920279258633 + }, + { + "marker_id": 54, + "observed_center_px": [ + 610.5, + 848.75 + ], + "projected_center_px": [ + 607.426025390625, + 853.0718994140625 + ], + "reprojection_error_px": 5.30359636891383, + "confidence": 0.7005026944924987 + }, + { + "marker_id": 55, + "observed_center_px": [ + 675.25, + 746.0 + ], + "projected_center_px": [ + 672.9774169921875, + 745.18359375 + ], + "reprojection_error_px": 2.4147779799470532, + "confidence": 0.6761108765479277 + }, + { + "marker_id": 72, + "observed_center_px": [ + 1346.5, + 753.25 + ], + "projected_center_px": [ + 1346.513671875, + 751.8689575195312 + ], + "reprojection_error_px": 1.381110152386584, + "confidence": 0.63555573802114 + }, + { + "marker_id": 66, + "observed_center_px": [ + 508.25, + 692.75 + ], + "projected_center_px": [ + 508.324951171875, + 692.6304321289062 + ], + "reprojection_error_px": 0.14111751827228045, + "confidence": 0.6485230397697823 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1037.75, + 714.25 + ], + "projected_center_px": [ + 1041.2877197265625, + 715.8521118164062 + ], + "reprojection_error_px": 3.8835838005607632, + "confidence": 0.62142490645665 + }, + { + "marker_id": 95, + "observed_center_px": [ + 612.75, + 626.25 + ], + "projected_center_px": [ + 616.0951538085938, + 624.1017456054688 + ], + "reprojection_error_px": 3.975556683883667, + "confidence": 0.6415498386959416 + }, + { + "marker_id": 51, + "observed_center_px": [ + 739.25, + 559.25 + ], + "projected_center_px": [ + 740.84765625, + 558.3189086914062 + ], + "reprojection_error_px": 1.8491718465580436, + "confidence": 0.6088879208521975 + }, + { + "marker_id": 103, + "observed_center_px": [ + 690.0, + 487.75 + ], + "projected_center_px": [ + 694.0453491210938, + 487.8307800292969 + ], + "reprojection_error_px": 4.046155573463183, + "confidence": 0.5954680843098741 + }, + { + "marker_id": 69, + "observed_center_px": [ + 538.5, + 403.0 + ], + "projected_center_px": [ + 534.0264892578125, + 406.2565612792969 + ], + "reprojection_error_px": 5.5333073045225545, + "confidence": 0.5651459847123547 + }, + { + "marker_id": 58, + "observed_center_px": [ + 633.0, + 428.5 + ], + "projected_center_px": [ + 631.8712768554688, + 432.2906494140625 + ], + "reprojection_error_px": 3.9551281796337383, + "confidence": 0.5885499509109636 + }, + { + "marker_id": 82, + "observed_center_px": [ + 1356.5, + 429.5 + ], + "projected_center_px": [ + 1358.176025390625, + 429.6244201660156 + ], + "reprojection_error_px": 1.6806372266884486, + "confidence": 0.6113473409254715 + }, + { + "marker_id": 73, + "observed_center_px": [ + 1401.5, + 418.5 + ], + "projected_center_px": [ + 1403.8709716796875, + 418.31756591796875 + ], + "reprojection_error_px": 2.377980004156206, + "confidence": 0.22008504273316973 + }, + { + "marker_id": 210, + "observed_center_px": [ + 872.0, + 307.0 + ], + "projected_center_px": [ + 871.6832885742188, + 304.965087890625 + ], + "reprojection_error_px": 2.0594109400751965, + "confidence": 0.60279428383853 + }, + { + "marker_id": 52, + "observed_center_px": [ + 1190.25, + 312.5 + ], + "projected_center_px": [ + 1186.0579833984375, + 316.39373779296875 + ], + "reprojection_error_px": 5.7213807064526625, + "confidence": 0.5743827506632194 + }, + { + "marker_id": 64, + "observed_center_px": [ + 640.5, + 338.0 + ], + "projected_center_px": [ + 640.4821166992188, + 334.9952087402344 + ], + "reprojection_error_px": 3.0048444763765603, + "confidence": 0.5397522426826521 + }, + { + "marker_id": 77, + "observed_center_px": [ + 1125.5, + 230.0 + ], + "projected_center_px": [ + 1128.3472900390625, + 234.04983520507812 + ], + "reprojection_error_px": 4.950578325290361, + "confidence": 0.5278189208292927 + }, + { + "marker_id": 83, + "observed_center_px": [ + 1323.25, + 208.5 + ], + "projected_center_px": [ + 1319.932373046875, + 207.5139923095703 + ], + "reprojection_error_px": 3.461048940088533, + "confidence": 0.5445844663450473 + }, + { + "marker_id": 75, + "observed_center_px": [ + 1108.0, + 182.0 + ], + "projected_center_px": [ + 1111.3167724609375, + 182.71337890625 + ], + "reprojection_error_px": 3.392622734922916, + "confidence": 0.5380549070504695 + }, + { + "marker_id": 61, + "observed_center_px": [ + 1280.0, + 135.0 + ], + "projected_center_px": [ + 1282.8663330078125, + 133.39898681640625 + ], + "reprojection_error_px": 3.283155208898362, + "confidence": 0.5493902887184056 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/robot_state.eval.json b/data/camera_study/Scene10/k4_abdf/robot_state.eval.json new file mode 100644 index 0000000..ccd0b9f --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 119.92292708214232, + "gt": 120.0, + "error": 0.07707291785767723, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 59.87426782551799, + "gt": 60.0, + "error": 0.12573217448201035, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -110.00823614701349, + "gt": -110.0, + "error": 0.00823614701349129, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "a", + "estimate": 19.966497733578855, + "gt": 20.0, + "error": 0.03350226642115217, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "b", + "estimate": 30.521606875679165, + "gt": 30.0, + "error": 0.5216068756791685, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "c", + "estimate": 179.00340002573537, + "gt": 180.0, + "error": 0.9965999742646261, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "e", + "estimate": 5.414387414458211, + "gt": 4.0, + "error": 1.4143874144582114, + "unit": "mm", + "observable": true, + "n_markers": 1 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.33713548757208966, + "max_abs_deg": 0.9965999742646261, + "mean_abs_mm": 0.7457301661579443, + "max_abs_mm": 1.4143874144582114 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdf/robot_state.json b/data/camera_study/Scene10/k4_abdf/robot_state.json new file mode 100644 index 0000000..60ab583 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdf/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:30Z", + "method": "hybrid", + "movements": { + "x": { + "value": 119.92292708214232, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 59.87426782551799, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -110.00823614701349, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "a": { + "value": 19.966497733578855, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "b": { + "value": 30.521606875679165, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "c": { + "value": 179.00340002573537, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "e": { + "value": 5.414387414458211, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + } + }, + "residual_rms": 1.6570144933846112, + "num_markers": 30 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/aruco_marker_poses.json b/data/camera_study/Scene10/k4_abdg/aruco_marker_poses.json new file mode 100644 index 0000000..a6bd494 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/aruco_marker_poses.json @@ -0,0 +1,1547 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:20:06Z", + "summary": { + "num_cameras": 4, + "num_markers": 34 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.305343071741636, + -0.20016154038040945, + 0.02464007558513031 + ], + "position_mm": [ + 305.343071741636, + -200.16154038040946, + 24.640075585130308 + ], + "normal": [ + 0.14669819549079902, + -0.9659634273146507, + 0.2130593732513943 + ], + "corners_m": [ + [ + 0.2921168126403349, + -0.19975541716585885, + 0.03514376390606453 + ], + [ + 0.31568987763672307, + -0.19590045509644688, + 0.037271063284086706 + ], + [ + 0.3184174374008528, + -0.2004528074126251, + 0.013875445303034842 + ], + [ + 0.2951481592886332, + -0.20453748184670695, + 0.012270029847335146 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.80357762400921 + }, + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.3436164441291462, + -0.2882000356229549, + -0.027218412001557692 + ], + "position_mm": [ + 343.6164441291462, + -288.2000356229549, + -27.21841200155769 + ], + "normal": [ + 0.008486800542187013, + -0.001030779058135478, + 0.9999634551877836 + ], + "corners_m": [ + [ + 0.3318466251575101, + -0.299858162985375, + -0.027322829780752178 + ], + [ + 0.3321043543638235, + -0.27647722868625013, + -0.02691892396648614 + ], + [ + 0.3555389987511573, + -0.2766248859082611, + -0.027498732434942226 + ], + [ + 0.35497579824409403, + -0.29983986491193315, + -0.02713316182405022 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.295692248060263 + }, + { + "marker_id": 48, + "link": "Board", + "position_m": [ + 0.6869175479989345, + -0.318269455183772, + -0.026615550426303296 + ], + "position_mm": [ + 686.9175479989344, + -318.269455183772, + -26.615550426303297 + ], + "normal": [ + 0.019203495951754204, + 0.01551879044723681, + 0.9996951499763744 + ], + "corners_m": [ + [ + 0.6751413755528558, + -0.3304082207649319, + -0.026241531682561478 + ], + [ + 0.6756073850806442, + -0.30646781658535543, + -0.026538611405195544 + ], + [ + 0.6980966149767299, + -0.30696259434947254, + -0.0270517758810516 + ], + [ + 0.6988248163855075, + -0.3292391890353282, + -0.02663028273640457 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.113811794498364 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16776172391158575, + -0.17339091147700966, + -0.027091732874590796 + ], + "position_mm": [ + 167.76172391158576, + -173.39091147700967, + -27.091732874590797 + ], + "normal": [ + -0.00991893588846089, + -0.0015024056001553543, + 0.9999496774779486 + ], + "corners_m": [ + [ + 0.15571311019065712, + -0.18441329486443764, + -0.027378631608791164 + ], + [ + 0.15636490929909494, + -0.16138570593340984, + -0.027035748425098784 + ], + [ + 0.17980728833255893, + -0.1620907545230234, + -0.02710272418965161 + ], + [ + 0.17916158782403205, + -0.18567389058716774, + -0.026849827274821634 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.393514749475568 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.4882003560338498, + 0.21454919235920805, + -0.026922011646615267 + ], + "position_mm": [ + 488.2003560338498, + 214.54919235920806, + -26.922011646615267 + ], + "normal": [ + -0.029659504505452988, + -0.017595028497744532, + 0.9994051874813612 + ], + "corners_m": [ + [ + 0.4767699379764077, + 0.20330095680321536, + -0.027672222780932863 + ], + [ + 0.47706098604732483, + 0.22627406811344827, + -0.026831355258605454 + ], + [ + 0.4995452085482018, + 0.22579164311548014, + -0.02660250535209066 + ], + [ + 0.499425291563465, + 0.20283010140468835, + -0.026581963194832095 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.782305498437523 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3397057853324848, + -0.32761642968866456, + -0.026770729486928865 + ], + "position_mm": [ + 339.7057853324848, + -327.61642968866454, + -26.770729486928865 + ], + "normal": [ + -0.0038386241937272995, + 0.02101391696851812, + 0.9997718140945661 + ], + "corners_m": [ + [ + 0.3278639473504119, + -0.33947359853299364, + -0.026400336093934076 + ], + [ + 0.3285951862477269, + -0.31572555751919257, + -0.027234919416076992 + ], + [ + 0.3512091669230128, + -0.3159264845204117, + -0.02679814279003088 + ], + [ + 0.3511548408087876, + -0.33934007818206036, + -0.026649519647673512 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.27494452728199 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.2843476088903887, + -0.26094548849460475, + -0.027138864787087866 + ], + "position_mm": [ + 284.3476088903887, + -260.9454884946048, + -27.138864787087865 + ], + "normal": [ + -0.003804852274444313, + 0.0042146046060718145, + 0.9999838799736644 + ], + "corners_m": [ + [ + 0.27230318002763604, + -0.27232174987195573, + -0.02723712732292594 + ], + [ + 0.2729933409501924, + -0.24896918707306379, + -0.027131664060193163 + ], + [ + 0.2963322518217914, + -0.24968033408397944, + -0.0272425943215498 + ], + [ + 0.2957616627619349, + -0.27281068294942024, + -0.026944073443682555 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.329430546753944 + }, + { + "marker_id": 59, + "link": "Board", + "position_m": [ + 0.6271531267350818, + -0.2767460787695593, + -0.02680912156499644 + ], + "position_mm": [ + 627.1531267350819, + -276.7460787695593, + -26.809121564996442 + ], + "normal": [ + -0.017553027598460103, + -0.018829929153653342, + 0.9996686075846316 + ], + "corners_m": [ + [ + 0.6163665738281722, + -0.2884168282951614, + -0.02708587373036205 + ], + [ + 0.615419349019124, + -0.2658152874581792, + -0.026941169391599955 + ], + [ + 0.6379736103226642, + -0.2648156154961137, + -0.02626549888750094 + ], + [ + 0.6388529737703668, + -0.28793658382878307, + -0.026943944250522805 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.711990484789286 + }, + { + "marker_id": 63, + "link": "Board", + "position_m": [ + 0.7745275530930732, + -0.23668902044925139, + -0.0268275714430213 + ], + "position_mm": [ + 774.5275530930732, + -236.6890204492514, + -26.827571443021302 + ], + "normal": [ + 2.1180374299654616e-05, + 0.0409148460165396, + 0.9991626368749157 + ], + "corners_m": [ + [ + 0.7633842187513384, + -0.2489041225725764, + -0.02604133462583499 + ], + [ + 0.7631291842153038, + -0.22554286848148805, + -0.02757565605017666 + ], + [ + 0.7854454231093616, + -0.22485982283181333, + -0.027010091014729357 + ], + [ + 0.7861513862962891, + -0.2474492679111277, + -0.0266832040813442 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.79307389516771 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.01909267534900415, + -0.18960982971739926, + -0.02694392592200973 + ], + "position_mm": [ + -19.09267534900415, + -189.60982971739926, + -26.94392592200973 + ], + "normal": [ + 0.015514117729334222, + 0.01456470478785899, + 0.9997735651263855 + ], + "corners_m": [ + [ + -0.030889716700635582, + -0.20101004954329457, + -0.02670887459358297 + ], + [ + -0.0307015158384876, + -0.17805559282454522, + -0.026817352770505353 + ], + [ + -0.007367211791633825, + -0.17824705885828548, + -0.027406509444755277 + ], + [ + -0.007412257065259577, + -0.20112661764347178, + -0.02684296687919531 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.16567114925995 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.005943372748162582, + -0.2778036799466163, + -0.026960847894043037 + ], + "position_mm": [ + 5.943372748162582, + -277.8036799466163, + -26.960847894043038 + ], + "normal": [ + 0.012798047414919163, + 0.0019636994971768966, + 0.9999161734198774 + ], + "corners_m": [ + [ + -0.005840977855237068, + -0.2893581398202042, + -0.026757518275956096 + ], + [ + -0.0054972965063023625, + -0.26610055483532946, + -0.026867614464344144 + ], + [ + 0.017571837089716245, + -0.2662597619975393, + -0.027102108843662123 + ], + [ + 0.017539928264473512, + -0.2894962631333922, + -0.02711614999220978 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.237962765555313 + }, + { + "marker_id": 71, + "link": "Board", + "position_m": [ + 0.7509111191421864, + -0.2855038724522174, + -0.026645208288605504 + ], + "position_mm": [ + 750.9111191421864, + -285.5038724522174, + -26.645208288605502 + ], + "normal": [ + -0.041777888769783986, + -0.024469560501440446, + 0.9988272366224331 + ], + "corners_m": [ + [ + 0.7391127988200036, + -0.29637083291585326, + -0.027120191741793056 + ], + [ + 0.740890300929251, + -0.2730886316287105, + -0.027058084553021295 + ], + [ + 0.762190290099723, + -0.2746721988504304, + -0.0256087849700469 + ], + [ + 0.7614510867197684, + -0.29788382641387556, + -0.026793771889560763 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.60084523822078 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.4414133198826211, + 0.1935115960456138, + -0.02738745789971034 + ], + "position_mm": [ + 441.4133198826211, + 193.5115960456138, + -27.38745789971034 + ], + "normal": [ + 0.02298579013478705, + 0.036855436629363525, + 0.9990562197607994 + ], + "corners_m": [ + [ + 0.4301134974182766, + 0.181338076255318, + -0.02689044864326103 + ], + [ + 0.4298312782010313, + 0.2048251085816973, + -0.027324806173678603 + ], + [ + 0.4526236030052486, + 0.20567530528523256, + -0.0283074767187113 + ], + [ + 0.45308490090592785, + 0.18220789406020726, + -0.027027100063190434 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.20429774164863 + }, + { + "marker_id": 75, + "link": "Board", + "position_m": [ + -0.027602888025185998, + 0.19326801694123372, + -0.026446125368980555 + ], + "position_mm": [ + -27.602888025185997, + 193.26801694123372, + -26.446125368980557 + ], + "normal": [ + -0.060075453914578344, + -0.029149257025994694, + 0.9977681397257531 + ], + "corners_m": [ + [ + -0.039865687398469705, + 0.18376529148770973, + -0.027259026027503214 + ], + [ + -0.03849624729094642, + 0.20569603404672487, + -0.0269455814096749 + ], + [ + -0.015581080345926531, + 0.20247489956703318, + -0.025240737148984713 + ], + [ + -0.016468537065401335, + 0.18113584266346716, + -0.026339156889759397 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.53174876690096 + }, + { + "marker_id": 85, + "link": "Board", + "position_m": [ + 0.5066842431978995, + -0.3133662953069258, + -0.027703762666045156 + ], + "position_mm": [ + 506.6842431978995, + -313.3662953069258, + -27.703762666045158 + ], + "normal": [ + -0.03294847457584921, + 0.051389217503334375, + 0.9981350341249022 + ], + "corners_m": [ + [ + 0.4939869989100595, + -0.32503288261833546, + -0.027012482781554544 + ], + [ + 0.4969247540723844, + -0.2999963773045221, + -0.029263412303624364 + ], + [ + 0.5184612735662326, + -0.3025774623172223, + -0.027275833706206735 + ], + [ + 0.5173639462429215, + -0.3258584589876232, + -0.02726332187279498 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.44744766210312 + }, + { + "marker_id": 92, + "link": "Board", + "position_m": [ + 0.6466525463525512, + -0.18705950518033754, + -0.027251640596468882 + ], + "position_mm": [ + 646.6525463525512, + -187.05950518033754, + -27.25164059646888 + ], + "normal": [ + 0.03825629107142391, + 0.02106249247983472, + 0.9990459587046011 + ], + "corners_m": [ + [ + 0.6348169438992656, + -0.19908819490408183, + -0.026701161792317577 + ], + [ + 0.6351422984165451, + -0.17561611521746853, + -0.026896089255574587 + ], + [ + 0.6584931113326336, + -0.17533126963333032, + -0.02811237794189459 + ], + [ + 0.6581578317617608, + -0.1982024409664695, + -0.02729693339608876 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.278197887009746 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18656006837375042, + -0.2765765182824603, + -0.02725779625585082 + ], + "position_mm": [ + 186.56006837375043, + -276.5765182824603, + -27.25779625585082 + ], + "normal": [ + -0.010921636943540468, + -0.0029058969472955942, + 0.9999361347653186 + ], + "corners_m": [ + [ + 0.17536538278118452, + -0.28874319951454275, + -0.02728755747174682 + ], + [ + 0.17408024683028048, + -0.26522792987044846, + -0.027488418440486388 + ], + [ + 0.19782837731264616, + -0.26486913093701886, + -0.02696820561000983 + ], + [ + 0.19896626657089056, + -0.28746581280783146, + -0.02728700350116025 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.392685353949684 + }, + { + "marker_id": 97, + "link": "Board", + "position_m": [ + 0.30636803765652804, + -0.35830147744033514, + -0.026608567989770286 + ], + "position_mm": [ + 306.36803765652803, + -358.30147744033513, + -26.608567989770286 + ], + "normal": [ + -0.02273222299944812, + 0.008184279004986307, + 0.9997080892013789 + ], + "corners_m": [ + [ + 0.2948367277090824, + -0.3697373961363631, + -0.026952401699410034 + ], + [ + 0.2951794117243798, + -0.34632750801900974, + -0.026792899833951573 + ], + [ + 0.31838788070454127, + -0.34672347565732436, + -0.026595886203370802 + ], + [ + 0.3170681304881087, + -0.3704175299486434, + -0.026093084222348736 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.15503168307003 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6509230239560893, + -0.2238901991799186, + -0.027191723156374106 + ], + "position_mm": [ + 650.9230239560893, + -223.8901991799186, + -27.191723156374106 + ], + "normal": [ + -0.039902650413027034, + -0.028539135624118243, + 0.998795923213468 + ], + "corners_m": [ + [ + 0.6391793308382268, + -0.23449741533371493, + -0.027829223221398074 + ], + [ + 0.6402704767948758, + -0.21175977022633347, + -0.027407659641463047 + ], + [ + 0.6624757434098013, + -0.21320639113608472, + -0.026288793848666805 + ], + [ + 0.6617665447814527, + -0.23609722002354125, + -0.027241215913968497 + ] + ], + "num_cameras": 3, + "edge_length_mm": 22.65530099561293 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10464979812736941, + -0.19072281569252653, + -0.027025874050427817 + ], + "position_mm": [ + 104.64979812736941, + -190.72281569252652, + -27.025874050427817 + ], + "normal": [ + 0.01976074154738132, + -0.020335032301331043, + 0.9995979189428124 + ], + "corners_m": [ + [ + 0.09324994424295711, + -0.20276518798204074, + -0.02697593528400999 + ], + [ + 0.09237728327477648, + -0.17982581546731574, + -0.026631235896086795 + ], + [ + 0.11604022521765153, + -0.1787816841749084, + -0.026937875881795446 + ], + [ + 0.11693173977409255, + -0.2015185751458413, + -0.027558449139819047 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.282766299826964 + }, + { + "marker_id": 105, + "link": "Board", + "position_m": [ + 0.5221549309495351, + -0.26810189211715746, + -0.02667115005754659 + ], + "position_mm": [ + 522.1549309495351, + -268.10189211715743, + -26.67115005754659 + ], + "normal": [ + -0.016679623829703484, + -0.019709864046842277, + 0.9996666001263395 + ], + "corners_m": [ + [ + 0.5109269741757941, + -0.2798267761247853, + -0.0269436911560013 + ], + [ + 0.5108777418371295, + -0.2565126881340527, + -0.026780748251690665 + ], + [ + 0.5330871831262275, + -0.25676132020459447, + -0.0261102726342492 + ], + [ + 0.5337278246589895, + -0.27930678400519754, + -0.0268498881882452 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.72732986707743 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.3105080730324583, + -0.1545965947948526, + 0.1566383090523502 + ], + "position_mm": [ + 310.5080730324583, + -154.5965947948526, + 156.63830905235022 + ], + "normal": [ + -0.34962040603907624, + -0.724214380162343, + 0.5943728655037551 + ], + "corners_m": [ + [ + 0.2991434284891077, + -0.14372979063054508, + 0.1630080000117661 + ], + [ + 0.3213778962105061, + -0.14996771433042397, + 0.16885688675082397 + ], + [ + 0.322089645259576, + -0.16540195452394066, + 0.15010256424537802 + ], + [ + 0.2994213221706435, + -0.1592869196945007, + 0.14458578520143275 + ] + ], + "num_cameras": 4, + "edge_length_mm": 24.08829441536321 + }, + { + "marker_id": 205, + "link": "Board", + "position_m": [ + 0.7525497655277292, + -0.09043945593196193, + 0.00042806076046793533 + ], + "position_mm": [ + 752.5497655277293, + -90.43945593196193, + 0.42806076046793534 + ], + "normal": [ + -0.019977669275183203, + -0.021288431466082284, + 0.9995737568664183 + ], + "corners_m": [ + [ + 0.7409175862953591, + -0.07876520127690748, + 0.00040851728801957407 + ], + [ + 0.7639753157663242, + -0.07917486628905837, + 0.0009326082872874178 + ], + [ + 0.7641406192091803, + -0.10192297435412707, + 0.0003787321250400061 + ], + [ + 0.7411655408400534, + -0.10189478180775477, + -7.614658475256722e-06 + ] + ], + "num_cameras": 3, + "edge_length_mm": 22.983942391903284 + }, + { + "marker_id": 206, + "link": "Board", + "position_m": [ + 0.6500000814765554, + -0.010119256498941923, + 0.00042321635657145365 + ], + "position_mm": [ + 650.0000814765555, + -10.119256498941922, + 0.4232163565714536 + ], + "normal": [ + 0.011592821740882445, + -0.007759304215309904, + 0.9999026951069682 + ], + "corners_m": [ + [ + 0.6383081225600975, + 0.0013785011640512724, + 0.0006024455240636259 + ], + [ + 0.6615704626944585, + 0.0017490939301256006, + 0.00042655368077619 + ], + [ + 0.6617018160883879, + -0.02165869377987186, + 0.0001526571045244104 + ], + [ + 0.6384199245632778, + -0.021945927310072704, + 0.0005112091169215882 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.321753530436958 + }, + { + "marker_id": 210, + "link": "Board", + "position_m": [ + 0.021722357064173435, + -0.01990102431395857, + 0.0005605224618752201 + ], + "position_mm": [ + 21.722357064173433, + -19.901024313958573, + 0.56052246187522 + ], + "normal": [ + -0.0020871904241815302, + -0.01886856737953801, + 0.9998197941635167 + ], + "corners_m": [ + [ + 0.009394590241300786, + -0.008582815130058057, + 0.0004106368222462112 + ], + [ + 0.033429398996811834, + -0.00879498405105111, + 0.0011550583412384399 + ], + [ + 0.034167072400248015, + -0.03046816224088398, + 3.048047737544406e-05 + ], + [ + 0.009898366618333102, + -0.03175813583384113, + 0.0006459142066407851 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.313721011840666 + }, + { + "marker_id": 211, + "link": "Board", + "position_m": [ + 0.2530065866788742, + -0.009078967052198496, + 0.0002376119420386636 + ], + "position_mm": [ + 253.0065866788742, + -9.078967052198497, + 0.2376119420386636 + ], + "normal": [ + 0.03042550068248083, + -0.009720333478128397, + 0.9994897718462628 + ], + "corners_m": [ + [ + 0.24136623721995637, + 0.002850179394630775, + 0.0005813893433372668 + ], + [ + 0.2654058209981499, + 0.001933732747426273, + 9.756259486912603e-05 + ], + [ + 0.26496436392725625, + -0.020677306700458958, + -0.00036621710184547444 + ], + [ + 0.2402899245701341, + -0.020422473650392074, + 0.0006377129317937359 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.66894498028794 + }, + { + "marker_id": 214, + "link": "Board", + "position_m": [ + 0.3479531944962937, + -0.01063423728343781, + 0.0006248797674845711 + ], + "position_mm": [ + 347.9531944962937, + -10.634237283437809, + 0.6248797674845711 + ], + "normal": [ + 0.00856857758665687, + -0.011793694934319256, + 0.9998937384732128 + ], + "corners_m": [ + [ + 0.3363295544417049, + 0.0011143263828779966, + 0.0008739982178064471 + ], + [ + 0.3598615240467987, + 0.0005073083100252126, + 0.0006432684685022758 + ], + [ + 0.35995529437200663, + -0.022348750671823323, + 0.0003944920007030549 + ], + [ + 0.3356664051246645, + -0.02180983315483112, + 0.0005877603829265065 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.407426211605227 + }, + { + "marker_id": 215, + "link": "Board", + "position_m": [ + 0.2503901684603027, + -0.08856307309424334, + 0.00039288687013597787 + ], + "position_mm": [ + 250.3901684603027, + -88.56307309424334, + 0.3928868701359779 + ], + "normal": [ + 0.007232729326328577, + 0.0027016349040499543, + 0.9999701939534684 + ], + "corners_m": [ + [ + 0.23902949327435843, + -0.07632679139695574, + 0.0004877342920639196 + ], + [ + 0.26269735642646996, + -0.07741021599856693, + 0.00022790597917037866 + ], + [ + 0.26184448544657757, + -0.1007784518777765, + 0.00038851965079700264 + ], + [ + 0.237989338693805, + -0.0997368331036742, + 0.0004673875585126106 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.597393115558017 + }, + { + "marker_id": 217, + "link": "Board", + "position_m": [ + 0.6466909219864878, + -0.0892177191817774, + 7.305522205162119e-05 + ], + "position_mm": [ + 646.6909219864879, + -89.2177191817774, + 0.07305522205162118 + ], + "normal": [ + 0.031903276312503726, + 0.024590614198918618, + 0.9991884119893745 + ], + "corners_m": [ + [ + 0.6361104218965458, + -0.0770202634777477, + 2.5174710291951727e-05 + ], + [ + 0.6591388720037039, + -0.07805519834373481, + -0.0005144661440648317 + ], + [ + 0.6575009066789209, + -0.10155273673928715, + -5.1404048745910545e-05 + ], + [ + 0.6340134873667808, + -0.10024267816633994, + 0.0008329163707252752 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.372136478259012 + }, + { + "marker_id": 218, + "link": "Arm2", + "position_m": [ + 0.35368209771592496, + -0.0994615110956942, + 0.19956017109351087 + ], + "position_mm": [ + 353.68209771592495, + -99.4615110956942, + 199.56017109351086 + ], + "normal": [ + 0.9434809764113783, + -0.26499455108402514, + 0.19905158890500788 + ], + "corners_m": [ + [ + 0.3497794886952876, + -0.10014350713255572, + 0.21689899514496166 + ], + [ + 0.3575047054831509, + -0.08385275617174048, + 0.20249292431168991 + ], + [ + 0.3576879112447054, + -0.09770028835233091, + 0.1826592092085517 + ], + [ + 0.349756285440556, + -0.11614949272614974, + 0.19618955570884017 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.41424801234189 + }, + { + "marker_id": 231, + "link": "Ellbow", + "position_m": [ + 0.32076859486762044, + -0.01524319922432283, + 0.31282342496668425 + ], + "position_mm": [ + 320.76859486762044, + -15.24319922432283, + 312.82342496668423 + ], + "normal": [ + 0.028168973819642083, + -0.06458750884500264, + 0.9975143921844662 + ], + "corners_m": [ + [ + 0.30836768888960014, + -0.0036037655708457935, + 0.31411052077204416 + ], + [ + 0.33275752178231427, + -0.003084324320197504, + 0.3130862256830581 + ], + [ + 0.3330098655315567, + -0.02674206915672306, + 0.31192168251782915 + ], + [ + 0.3089393032670106, + -0.027542637849524966, + 0.31217527089380565 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.053392173103504 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.2307823547835976, + -0.036427347975291915, + 0.30570545976675045 + ], + "position_mm": [ + 230.7823547835976, + -36.427347975291916, + 305.70545976675044 + ], + "normal": [ + -0.010700707593912728, + -0.4877052540856275, + 0.8729427701712541 + ], + "corners_m": [ + [ + 0.2191010894555134, + -0.025936217940612714, + 0.31136547089630423 + ], + [ + 0.24270979346322488, + -0.026349318640213077, + 0.31153962452380857 + ], + [ + 0.2424938836270095, + -0.04698504274162676, + 0.2998932306647058 + ], + [ + 0.2188246525886426, + -0.04643881257871512, + 0.3000235129821832 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.604382505557723 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3210921467275003, + -0.04499787669802926, + 0.2975294641405817 + ], + "position_mm": [ + 321.0921467275003, + -44.99787669802926, + 297.5294641405817 + ], + "normal": [ + 0.0011051850004073402, + -0.7606296132080035, + 0.6491851585465875 + ], + "corners_m": [ + [ + 0.30888056033200023, + -0.037757102317591884, + 0.30611671426458187 + ], + [ + 0.3325806486841009, + -0.037448194380995496, + 0.30627946537454337 + ], + [ + 0.3335648198260843, + -0.052932445271997544, + 0.28828619501156516 + ], + [ + 0.30934255806781574, + -0.05185376482153212, + 0.28943548191163637 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.39496504008918 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.2824653463875852, + -0.04085915944807114, + 0.30184009857955996 + ], + "position_mm": [ + 282.4653463875852, + -40.85915944807114, + 301.84009857955994 + ], + "normal": [ + 0.0035988068225044634, + -0.7697834780639465, + 0.6382949517967598 + ], + "corners_m": [ + [ + 0.27011733251889225, + -0.03354536432285007, + 0.31057463369181665 + ], + [ + 0.293868632310631, + -0.03286921819292234, + 0.3115639453762438 + ], + [ + 0.29492860357821554, + -0.04818147011671105, + 0.2927882109665541 + ], + [ + 0.270946817142602, + -0.0488405851598011, + 0.2924336042836252 + ] + ], + "num_cameras": 4, + "edge_length_mm": 23.942266046797975 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/aruco_positions_initial.json b/data/camera_study/Scene10/k4_abdg/aruco_positions_initial.json new file mode 100644 index 0000000..ddd28a0 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/aruco_positions_initial.json @@ -0,0 +1,732 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:20:05Z", + "summary": { + "num_cameras": 4, + "num_markers": 34, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.30535804316010734, + -0.2000683586434736, + 0.02459227325141969 + ], + "position_mm": [ + 305.35804316010734, + -200.0683586434736, + 24.592273251419687 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.34376654762038256, + -0.28839563095466614, + -0.02760537942584299 + ], + "position_mm": [ + 343.76654762038254, + -288.39563095466616, + -27.60537942584299 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6869553120509962, + -0.31828288284648676, + -0.026714386151434642 + ], + "position_mm": [ + 686.9553120509962, + -318.28288284648676, + -26.714386151434642 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16791244327108318, + -0.17356576866439072, + -0.02748782876628542 + ], + "position_mm": [ + 167.9124432710832, + -173.56576866439073, + -27.487828766285418 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4882162799182303, + 0.2145787188045998, + -0.027009952548570484 + ], + "position_mm": [ + 488.2162799182303, + 214.57871880459982, + -27.009952548570485 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.339841934667412, + -0.3277465381175194, + -0.026516689054223226 + ], + "position_mm": [ + 339.84193466741203, + -327.74653811751944, + -26.516689054223225 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2844629212143551, + -0.2610707104386771, + -0.027225119001680127 + ], + "position_mm": [ + 284.4629212143551, + -261.07071043867705, + -27.225119001680127 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 59, + "position_m": [ + 0.6271865903718744, + -0.27675395886676263, + -0.026907347912707404 + ], + "position_mm": [ + 627.1865903718744, + -276.7539588667626, + -26.907347912707404 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7745703446602326, + -0.23669721919029751, + -0.02692049447484487 + ], + "position_mm": [ + 774.5703446602325, + -236.69721919029752, + -26.920494474844872 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01884321403035284, + -0.1897498250154755, + -0.027136995944053673 + ], + "position_mm": [ + -18.84321403035284, + -189.7498250154755, + -27.136995944053673 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.006150609479969763, + -0.2777950294615375, + -0.027010644320756547 + ], + "position_mm": [ + 6.150609479969763, + -277.7950294615375, + -27.010644320756548 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 71, + "position_m": [ + 0.7509604864944157, + -0.28551125075942685, + -0.02674480689368867 + ], + "position_mm": [ + 750.9604864944157, + -285.51125075942684, + -26.744806893688672 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.441421275570027, + 0.19353518392648628, + -0.027474752620069133 + ], + "position_mm": [ + 441.42127557002703, + 193.53518392648627, + -27.474752620069133 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027619523009286034, + 0.19330209649474686, + -0.02652757806826013 + ], + "position_mm": [ + -27.619523009286034, + 193.30209649474685, + -26.52757806826013 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5068041661114264, + -0.3135045828070479, + -0.02781607148385666 + ], + "position_mm": [ + 506.8041661114264, + -313.5045828070479, + -27.81607148385666 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 92, + "position_m": [ + 0.6466795964899504, + -0.187063834404983, + -0.027344911707301592 + ], + "position_mm": [ + 646.6795964899504, + -187.063834404983, + -27.34491170730159 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.186646056280353, + -0.2762214427578817, + -0.027365162092579796 + ], + "position_mm": [ + 186.646056280353, + -276.2214427578817, + -27.365162092579798 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.3063974784693937, + -0.3583267777562686, + -0.026730187614499426 + ], + "position_mm": [ + 306.3974784693937, + -358.3267777562686, + -26.730187614499425 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6509379503738589, + -0.22390846020799526, + -0.027109690309085218 + ], + "position_mm": [ + 650.9379503738589, + -223.90846020799526, + -27.109690309085217 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10497805201041903, + -0.19080856212389075, + -0.027006345982441688 + ], + "position_mm": [ + 104.97805201041903, + -190.80856212389074, + -27.006345982441687 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 105, + "position_m": [ + 0.5221927600487571, + -0.2681123616214047, + -0.026767089480739203 + ], + "position_mm": [ + 522.1927600487571, + -268.1123616214047, + -26.7670894807392 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3103743137123175, + -0.15428307632816093, + 0.15665617276472968 + ], + "position_mm": [ + 310.3743137123175, + -154.28307632816094, + 156.6561727647297 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7524289457637402, + -0.09025863172893372, + 0.0004226980684333642 + ], + "position_mm": [ + 752.4289457637402, + -90.25863172893372, + 0.4226980684333642 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6500135896057839, + -0.010136006087639692, + 0.00037332949430560306 + ], + "position_mm": [ + 650.013589605784, + -10.136006087639691, + 0.3733294943056031 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.021698298057675435, + -0.01987996226175908, + 0.0004639115686330192 + ], + "position_mm": [ + 21.698298057675434, + -19.87996226175908, + 0.4639115686330192 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25300004414982186, + -0.009074606313736522, + 0.00016276608304794952 + ], + "position_mm": [ + 253.00004414982186, + -9.074606313736522, + 0.1627660830479495 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.347975371322791, + -0.010607968556895574, + 0.0005435925742859373 + ], + "position_mm": [ + 347.975371322791, + -10.607968556895573, + 0.5435925742859373 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25050098796217085, + -0.08866387046146879, + -7.820550617432224e-05 + ], + "position_mm": [ + 250.50098796217085, + -88.66387046146879, + -0.07820550617432225 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 217, + "position_m": [ + 0.6467219380997009, + -0.08921491325883438, + -5.1763125537710854e-06 + ], + "position_mm": [ + 646.7219380997009, + -89.21491325883437, + -0.005176312553771085 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3536314171939221, + -0.09947516209694193, + 0.19956923774735225 + ], + "position_mm": [ + 353.6314171939221, + -99.47516209694193, + 199.56923774735225 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.3207690277599889, + -0.015216772311061532, + 0.3127526846957443 + ], + "position_mm": [ + 320.7690277599889, + -15.216772311061533, + 312.7526846957443 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23001007116575176, + -0.036080233689634644, + 0.30535428122393937 + ], + "position_mm": [ + 230.01007116575175, + -36.080233689634646, + 305.3542812239394 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.32103115932158455, + -0.045120380841119606, + 0.2974342388767264 + ], + "position_mm": [ + 321.03115932158454, + -45.120380841119605, + 297.4342388767264 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2818068163969561, + -0.04051140855357585, + 0.3014757489894613 + ], + "position_mm": [ + 281.8068163969561, + -40.51140855357585, + 301.4757489894613 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/aruco_positions_optimized.json b/data/camera_study/Scene10/k4_abdg/aruco_positions_optimized.json new file mode 100644 index 0000000..0630c67 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/aruco_positions_optimized.json @@ -0,0 +1,731 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:20:06Z", + "summary": { + "num_cameras": 4, + "num_markers": 34, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "a", + "position_m": [ + -0.29933086093117556, + -0.799418281839035, + 0.8013386735184777 + ], + "position_mm": [ + -299.33086093117555, + -799.418281839035, + 801.3386735184777 + ], + "direction": [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + }, + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3054493017340757, + -0.19987487502548343, + 0.024804241416038552 + ], + "position_mm": [ + 305.4493017340757, + -199.87487502548342, + 24.80424141603855 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.344862436265256, + -0.28543161564720154, + -0.030445651260280156 + ], + "position_mm": [ + 344.86243626525595, + -285.43161564720157, + -30.445651260280155 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6878100842783237, + -0.3188784618164025, + -0.02770289793401499 + ], + "position_mm": [ + 687.8100842783236, + -318.8784618164025, + -27.70289793401499 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16676047878267466, + -0.174346564952476, + -0.025778194733217602 + ], + "position_mm": [ + 166.76047878267465, + -174.346564952476, + -25.778194733217603 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.48697224655876004, + 0.2137958695048991, + -0.025613930900386002 + ], + "position_mm": [ + 486.97224655876005, + 213.7958695048991, + -25.613930900386002 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.33926793603191896, + -0.32890211188902224, + -0.025623417568802827 + ], + "position_mm": [ + 339.26793603191896, + -328.90211188902225, + -25.623417568802825 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28468534891436065, + -0.2608060180041695, + -0.02764523176739995 + ], + "position_mm": [ + 284.68534891436065, + -260.8060180041695, + -27.64523176739995 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 59, + "position_m": [ + 0.6250548271399858, + -0.27748730745210576, + -0.02399124858435376 + ], + "position_mm": [ + 625.0548271399858, + -277.48730745210577, + -23.99124858435376 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7750951738715567, + -0.23611744282439387, + -0.027898531015609532 + ], + "position_mm": [ + 775.0951738715567, + -236.11744282439386, + -27.89853101560953 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.019149854799889305, + -0.18940027578013116, + -0.027200744340899294 + ], + "position_mm": [ + -19.149854799889305, + -189.40027578013115, + -27.200744340899295 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005942588832952981, + -0.27766593705315307, + -0.027142084185060873 + ], + "position_mm": [ + 5.942588832952981, + -277.6659370531531, + -27.142084185060874 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 71, + "position_m": [ + 0.7509030920108549, + -0.2858000960356196, + -0.026682753768945577 + ], + "position_mm": [ + 750.903092010855, + -285.8000960356196, + -26.682753768945577 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.44250773252421954, + 0.19423558363008342, + -0.028760050517510814 + ], + "position_mm": [ + 442.50773252421953, + 194.23558363008343, + -28.760050517510813 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 75, + "position_m": [ + -0.027672135644897455, + 0.1934113190598486, + -0.02641797337132961 + ], + "position_mm": [ + -27.672135644897455, + 193.4113190598486, + -26.41797337132961 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5057970120559879, + -0.31427788850689176, + -0.026631829530155582 + ], + "position_mm": [ + 505.7970120559879, + -314.27788850689177, + -26.63182953015558 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 92, + "position_m": [ + 0.6466448029570754, + -0.1853260691356157, + -0.027362576908963935 + ], + "position_mm": [ + 646.6448029570754, + -185.32606913561568, + -27.362576908963934 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.1864935755025844, + -0.27604247924607245, + -0.02756893236956804 + ], + "position_mm": [ + 186.4935755025844, + -276.04247924607245, + -27.56893236956804 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.3031740229647642, + -0.3601173982520389, + -0.0230928147831367 + ], + "position_mm": [ + 303.1740229647642, + -360.1173982520389, + -23.092814783136703 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6518038226760866, + -0.22340257237947855, + -0.02831594171341765 + ], + "position_mm": [ + 651.8038226760866, + -223.40257237947856, + -28.315941713417647 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10479716817301149, + -0.19040720779026277, + -0.027217954409216122 + ], + "position_mm": [ + 104.79716817301149, + -190.40720779026276, + -27.217954409216123 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 105, + "position_m": [ + 0.523569281637156, + -0.2668009405542871, + -0.028305368327685307 + ], + "position_mm": [ + 523.569281637156, + -266.8009405542871, + -28.305368327685308 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31078317867831906, + -0.15444005650408207, + 0.15668757498631952 + ], + "position_mm": [ + 310.7831786783191, + -154.44005650408207, + 156.68757498631953 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7525785118973581, + -0.0904620481227379, + 0.00038433775011527854 + ], + "position_mm": [ + 752.5785118973581, + -90.46204812273791, + 0.38433775011527854 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 206, + "position_m": [ + 0.6499006241288579, + -0.010294737933318449, + 0.0005404456963101184 + ], + "position_mm": [ + 649.9006241288579, + -10.294737933318448, + 0.5404456963101184 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 210, + "position_m": [ + 0.02131065181973966, + -0.02124891065277142, + 0.002028944784201453 + ], + "position_mm": [ + 21.31065181973966, + -21.24891065277142, + 2.0289447842014527 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 211, + "position_m": [ + 0.25311289711774626, + -0.008637200725311841, + -0.00016936058499215884 + ], + "position_mm": [ + 253.11289711774626, + -8.63720072531184, + -0.16936058499215884 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.34797038785364176, + -0.010616512306996041, + 0.0005313961558432671 + ], + "position_mm": [ + 347.97038785364174, + -10.616512306996041, + 0.531396155843267 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.250328049835533, + -0.08858636256352671, + 0.00044372783382368104 + ], + "position_mm": [ + 250.32804983553297, + -88.58636256352672, + 0.44372783382368103 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 217, + "position_m": [ + 0.6466571506594381, + -0.09022527639243276, + -0.00022703140143067103 + ], + "position_mm": [ + 646.6571506594381, + -90.22527639243276, + -0.22703140143067102 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3537203851545425, + -0.09941566413341443, + 0.19962133788819947 + ], + "position_mm": [ + 353.7203851545425, + -99.41566413341444, + 199.62133788819946 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.3212415314700273, + -0.018368348497788498, + 0.3098371708241788 + ], + "position_mm": [ + 321.2415314700273, + -18.368348497788496, + 309.83717082417877 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23089315954582754, + -0.036509505315778415, + 0.30574176881597315 + ], + "position_mm": [ + 230.89315954582753, + -36.50950531577841, + 305.74176881597316 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3201685760450276, + -0.0419345407786236, + 0.297143902716349 + ], + "position_mm": [ + 320.1685760450276, + -41.9345407786236, + 297.143902716349 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2829680220460133, + -0.041031352938085255, + 0.3017868843050357 + ], + "position_mm": [ + 282.9680220460133, + -41.031352938085256, + 301.7868843050357 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/render_a_aruco_detection.json b/data/camera_study/Scene10/k4_abdg/render_a_aruco_detection.json new file mode 100644 index 0000000..d5597d1 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/render_a_aruco_detection.json @@ -0,0 +1,2330 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:01Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "a", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.npz", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.png", + "image_sha256": "3fda1f21fe402f6ca45be61726fe8bc4ff11185ad27638be512a8f4f598b0fe5", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 26, + "num_rejected_candidates": 35 + }, + "detections": [ + { + "observation_id": "a817bc58-1de2-4cda-8db9-097b525af4e5", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 547.0 + ], + [ + 939.0, + 530.0 + ], + [ + 956.0, + 571.0 + ], + [ + 917.0, + 588.0 + ] + ], + "center_px": [ + 928.0, + 559.0 + ], + "quality": { + "area_px": 1888.0, + "perimeter_px": 173.85755157470703, + "sharpness": { + "laplacian_var": 865.6237972020846 + }, + "contrast": { + "p05": 50.0, + "p95": 187.0, + "dynamic_range": 137.0, + "mean_gray": 87.40342679127725, + "std_gray": 54.46998248000789 + }, + "geometry": { + "distance_to_center_norm": 0.23207330703735352, + "distance_to_border_px": 484.0 + }, + "edge_ratio": 1.0432630581405598, + "edge_lengths_px": [ + 42.54409408569336, + 44.384681701660156, + 42.54409408569336, + 44.384681701660156 + ] + }, + "confidence": 0.9585310168868925 + }, + { + "observation_id": "b0259899-5748-417b-8491-755e1fa40489", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 739.0, + 242.0 + ], + [ + 774.0, + 228.0 + ], + [ + 792.0, + 270.0 + ], + [ + 757.0, + 283.0 + ] + ], + "center_px": [ + 765.5, + 255.75 + ], + "quality": { + "area_px": 1695.5, + "perimeter_px": 165.50432586669922, + "sharpness": { + "laplacian_var": 972.5653279753307 + }, + "contrast": { + "p05": 17.0, + "p95": 182.0, + "dynamic_range": 165.0, + "mean_gray": 106.18205574912892, + "std_gray": 70.67095657404792 + }, + "geometry": { + "distance_to_center_norm": 0.3198539614677429, + "distance_to_border_px": 228.0 + }, + "edge_ratio": 1.2238659987255158, + "edge_lengths_px": [ + 37.6961555480957, + 45.694637298583984, + 37.336307525634766, + 44.777225494384766 + ] + }, + "confidence": 0.8170829167910206 + }, + { + "observation_id": "7974d37b-0c95-4f3a-9bdb-fd525137c98b", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 651.0, + 261.0 + ], + [ + 689.0, + 249.0 + ], + [ + 712.0, + 285.0 + ], + [ + 674.0, + 297.0 + ] + ], + "center_px": [ + 681.5, + 273.0 + ], + "quality": { + "area_px": 1644.0, + "perimeter_px": 165.13947296142578, + "sharpness": { + "laplacian_var": 747.6962819576332 + }, + "contrast": { + "p05": 13.0, + "p95": 180.0, + "dynamic_range": 167.0, + "mean_gray": 76.63693693693693, + "std_gray": 72.66327799511954 + }, + "geometry": { + "distance_to_center_norm": 0.2997349798679352, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.072028219579559, + "edge_lengths_px": [ + 39.84971618652344, + 42.72002029418945, + 39.84971618652344, + 42.72002029418945 + ] + }, + "confidence": 0.9328112653528767 + }, + { + "observation_id": "ddc1719d-5000-47b7-9c92-791e50426390", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 880.0, + 1056.0 + ], + [ + 849.0, + 1028.0 + ], + [ + 883.0, + 1007.0 + ], + [ + 913.0, + 1034.0 + ] + ], + "center_px": [ + 881.25, + 1031.25 + ], + "quality": { + "area_px": 1577.0, + "perimeter_px": 161.7576141357422, + "sharpness": { + "laplacian_var": 779.7184102009837 + }, + "contrast": { + "p05": 14.0, + "p95": 173.0, + "dynamic_range": 159.0, + "mean_gray": 81.89795918367346, + "std_gray": 69.37586032500836 + }, + "geometry": { + "distance_to_center_norm": 0.574486494064331, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.053254572752866, + "edge_lengths_px": [ + 41.773197174072266, + 39.96248245239258, + 40.360870361328125, + 39.66106414794922 + ] + }, + "confidence": 0.45573027871641286 + }, + { + "observation_id": "d8b83bae-b3a8-4eb9-9524-754c76d335c2", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1154.0, + 1048.0 + ], + [ + 1121.0, + 1020.0 + ], + [ + 1153.0, + 1000.0 + ], + [ + 1185.0, + 1028.0 + ] + ], + "center_px": [ + 1153.25, + 1024.0 + ], + "quality": { + "area_px": 1532.0, + "perimeter_px": 160.4264144897461, + "sharpness": { + "laplacian_var": 789.6627377718634 + }, + "contrast": { + "p05": 9.0, + "p95": 170.0, + "dynamic_range": 161.0, + "mean_gray": 94.95602294455067, + "std_gray": 70.53110441036318 + }, + "geometry": { + "distance_to_center_norm": 0.7217618823051453, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.173112932994049, + "edge_lengths_px": [ + 43.27817153930664, + 37.735923767089844, + 42.52058410644531, + 36.8917350769043 + ] + }, + "confidence": 0.5455570235395628 + }, + { + "observation_id": "9f5a8a3b-5f9d-4351-926e-d5f1148a9206", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 800.0, + 233.0 + ], + [ + 834.0, + 221.0 + ], + [ + 852.0, + 261.0 + ], + [ + 816.0, + 271.0 + ] + ], + "center_px": [ + 825.5, + 246.5 + ], + "quality": { + "area_px": 1552.0, + "perimeter_px": 158.51307678222656, + "sharpness": { + "laplacian_var": 863.8906785031452 + }, + "contrast": { + "p05": 15.0, + "p95": 181.0, + "dynamic_range": 166.0, + "mean_gray": 73.38709677419355, + "std_gray": 69.59383427424181 + }, + "geometry": { + "distance_to_center_norm": 0.34653934836387634, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.2165525994378175, + "edge_lengths_px": [ + 36.055511474609375, + 43.863426208496094, + 37.36308288574219, + 41.231056213378906 + ] + }, + "confidence": 0.8219948734334308 + }, + { + "observation_id": "a6fa3977-3a38-4a76-a409-d650d4f969b0", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 656.0, + 1024.0 + ], + [ + 631.0, + 996.0 + ], + [ + 666.0, + 976.0 + ], + [ + 692.0, + 1003.0 + ] + ], + "center_px": [ + 661.25, + 999.75 + ], + "quality": { + "area_px": 1499.0, + "perimeter_px": 157.00859832763672, + "sharpness": { + "laplacian_var": 776.3919478120264 + }, + "contrast": { + "p05": 15.0, + "p95": 173.0, + "dynamic_range": 158.0, + "mean_gray": 113.47134387351778, + "std_gray": 66.47315254195442 + }, + "geometry": { + "distance_to_center_norm": 0.5149872303009033, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1118898476800905, + "edge_lengths_px": [ + 37.53664779663086, + 40.31128692626953, + 37.48332977294922, + 41.67733383178711 + ] + }, + "confidence": 0.8987700853806685 + }, + { + "observation_id": "9e0eb6ba-d92b-4ed2-be81-1e17984fac99", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1156.0, + 984.0 + ], + [ + 1124.0, + 957.0 + ], + [ + 1153.0, + 939.0 + ], + [ + 1186.0, + 964.0 + ] + ], + "center_px": [ + 1154.75, + 961.0 + ], + "quality": { + "area_px": 1384.5, + "perimeter_px": 153.4569320678711, + "sharpness": { + "laplacian_var": 641.3717713382066 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 48.07235421166307, + "std_gray": 59.88033560428563 + }, + "geometry": { + "distance_to_center_norm": 0.6724274754524231, + "distance_to_border_px": 96.0 + }, + "edge_ratio": 1.2266707527132645, + "edge_lengths_px": [ + 41.86884307861328, + 34.13209533691406, + 41.400482177734375, + 36.055511474609375 + ] + }, + "confidence": 0.7524431457735686 + }, + { + "observation_id": "0ed29fd3-8db7-4445-8f87-78473e812f9c", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 995.0, + 954.0 + ], + [ + 967.0, + 928.0 + ], + [ + 1000.0, + 911.0 + ], + [ + 1028.0, + 936.0 + ] + ], + "center_px": [ + 997.5, + 932.25 + ], + "quality": { + "area_px": 1331.5, + "perimeter_px": 150.4579086303711, + "sharpness": { + "laplacian_var": 806.253992719468 + }, + "contrast": { + "p05": 12.0, + "p95": 170.0, + "dynamic_range": 158.0, + "mean_gray": 85.1743119266055, + "std_gray": 67.17068414131862 + }, + "geometry": { + "distance_to_center_norm": 0.5338727831840515, + "distance_to_border_px": 126.0 + }, + "edge_ratio": 1.0293233343863084, + "edge_lengths_px": [ + 38.20994567871094, + 37.121421813964844, + 37.53664779663086, + 37.58989334106445 + ] + }, + "confidence": 0.8623788434718633 + }, + { + "observation_id": "9c487ff8-830b-4769-acc4-83fb2a674d1e", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 731.0, + 951.0 + ], + [ + 707.0, + 925.0 + ], + [ + 742.0, + 908.0 + ], + [ + 766.0, + 933.0 + ] + ], + "center_px": [ + 736.5, + 929.25 + ], + "quality": { + "area_px": 1312.5, + "perimeter_px": 148.30654907226562, + "sharpness": { + "laplacian_var": 893.1018320987654 + }, + "contrast": { + "p05": 14.0, + "p95": 172.0, + "dynamic_range": 158.0, + "mean_gray": 77.58333333333333, + "std_gray": 66.11167950269201 + }, + "geometry": { + "distance_to_center_norm": 0.432888388633728, + "distance_to_border_px": 129.0 + }, + "edge_ratio": 1.135675442614228, + "edge_lengths_px": [ + 35.38361358642578, + 38.910152435302734, + 34.65544509887695, + 39.357337951660156 + ] + }, + "confidence": 0.7704666026640716 + }, + { + "observation_id": "fe05b2c2-3b0f-449f-adec-3c1ecc934cb6", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1109.0, + 937.0 + ], + [ + 1078.0, + 911.0 + ], + [ + 1108.0, + 894.0 + ], + [ + 1138.0, + 918.0 + ] + ], + "center_px": [ + 1108.25, + 915.0 + ], + "quality": { + "area_px": 1286.5, + "perimeter_px": 148.03035736083984, + "sharpness": { + "laplacian_var": 849.6744027531824 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 73.16531791907515, + "std_gray": 67.17306919368005 + }, + "geometry": { + "distance_to_center_norm": 0.5997561812400818, + "distance_to_border_px": 143.0 + }, + "edge_ratio": 1.1733657712426009, + "edge_lengths_px": [ + 40.45985794067383, + 34.48188018798828, + 38.41874694824219, + 34.66987228393555 + ] + }, + "confidence": 0.7309457014059588 + }, + { + "observation_id": "e4a930e9-d81e-4c82-aa52-ef5f87875f0a", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 843.0 + ], + [ + 378.0, + 825.0 + ], + [ + 398.0, + 848.0 + ], + [ + 360.0, + 866.0 + ] + ], + "center_px": [ + 369.0, + 845.5 + ], + "quality": { + "area_px": 1234.0, + "perimeter_px": 145.0541877746582, + "sharpness": { + "laplacian_var": 1107.6063181860204 + }, + "contrast": { + "p05": 14.0, + "p95": 171.0, + "dynamic_range": 157.0, + "mean_gray": 78.54927884615384, + "std_gray": 65.48572197917484 + }, + "geometry": { + "distance_to_center_norm": 0.5170324444770813, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.3795367307347286, + "edge_lengths_px": [ + 42.04759216308594, + 30.479501724243164, + 42.04759216308594, + 30.479501724243164 + ] + }, + "confidence": 0.5963354569243849 + }, + { + "observation_id": "ad3b5e58-dcbd-416f-8fb1-4a2d79dc7761", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 841.0 + ], + [ + 1306.0, + 818.0 + ], + [ + 1334.0, + 803.0 + ], + [ + 1364.0, + 826.0 + ] + ], + "center_px": [ + 1335.0, + 822.0 + ], + "quality": { + "area_px": 1094.0, + "perimeter_px": 139.1337547302246, + "sharpness": { + "laplacian_var": 703.797937840674 + }, + "contrast": { + "p05": 9.0, + "p95": 164.0, + "dynamic_range": 155.0, + "mean_gray": 113.10478654592497, + "std_gray": 58.52400257567041 + }, + "geometry": { + "distance_to_center_norm": 0.7517461776733398, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.1900645633213587, + "edge_lengths_px": [ + 37.80211639404297, + 31.764760971069336, + 37.80211639404297, + 31.764760971069336 + ] + }, + "confidence": 0.6128519038478318 + }, + { + "observation_id": "a8f8acbc-6fce-4e85-ac0f-2d9ea8415607", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 763.0, + 197.0 + ], + [ + 797.0, + 187.0 + ], + [ + 824.0, + 204.0 + ], + [ + 790.0, + 216.0 + ] + ], + "center_px": [ + 793.5, + 201.0 + ], + "quality": { + "area_px": 909.0, + "perimeter_px": 136.41686248779297, + "sharpness": { + "laplacian_var": 1069.7927531569794 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 91.46811819595645, + "std_gray": 62.54740157586658 + }, + "geometry": { + "distance_to_center_norm": 0.38541823625564575, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.130050277403289, + "edge_lengths_px": [ + 35.44009017944336, + 31.906112670898438, + 36.055511474609375, + 33.0151481628418 + ] + }, + "confidence": 0.5362593259058441 + }, + { + "observation_id": "cbf3bdbd-30cb-496d-8de3-69d759cdffb5", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 943.0, + 784.0 + ], + [ + 970.0, + 761.0 + ], + [ + 976.0, + 794.0 + ], + [ + 950.0, + 816.0 + ] + ], + "center_px": [ + 959.75, + 788.75 + ], + "quality": { + "area_px": 1007.5, + "perimeter_px": 135.82476806640625, + "sharpness": { + "laplacian_var": 990.0324116822271 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 69.03362573099415, + "std_gray": 62.62781348056947 + }, + "geometry": { + "distance_to_center_norm": 0.3838669955730438, + "distance_to_border_px": 264.0 + }, + "edge_ratio": 1.0827805673411812, + "edge_lengths_px": [ + 35.46829605102539, + 33.541019439697266, + 34.058773040771484, + 32.75667953491211 + ] + }, + "confidence": 0.6203165137290706 + }, + { + "observation_id": "e73ee7f6-6eb2-4e55-afde-6c48d8fb8d9a", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 736.0, + 748.0 + ], + [ + 769.0, + 734.0 + ], + [ + 791.0, + 755.0 + ], + [ + 758.0, + 770.0 + ] + ], + "center_px": [ + 763.5, + 751.75 + ], + "quality": { + "area_px": 1028.5, + "perimeter_px": 133.62254524230957, + "sharpness": { + "laplacian_var": 740.3312400344904 + }, + "contrast": { + "p05": 9.0, + "p95": 168.0, + "dynamic_range": 159.0, + "mean_gray": 80.6958981612447, + "std_gray": 67.7872078040809 + }, + "geometry": { + "distance_to_center_norm": 0.24019105732440948, + "distance_to_border_px": 310.0 + }, + "edge_ratio": 1.1918643121358203, + "edge_lengths_px": [ + 35.84689712524414, + 30.4138126373291, + 36.24913787841797, + 31.11269760131836 + ] + }, + "confidence": 0.5752892000247514 + }, + { + "observation_id": "c6aff53a-22d4-4717-8cc9-8b030cacbae4", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1296.0, + 787.0 + ], + [ + 1266.0, + 766.0 + ], + [ + 1291.0, + 751.0 + ], + [ + 1321.0, + 771.0 + ] + ], + "center_px": [ + 1293.5, + 768.75 + ], + "quality": { + "area_px": 977.5, + "perimeter_px": 131.51158332824707, + "sharpness": { + "laplacian_var": 482.2934957475995 + }, + "contrast": { + "p05": 7.0, + "p95": 157.0, + "dynamic_range": 150.0, + "mean_gray": 38.02962962962963, + "std_gray": 51.115372876535595 + }, + "geometry": { + "distance_to_center_norm": 0.6860414743423462, + "distance_to_border_px": 119.0 + }, + "edge_ratio": 1.2560441794117048, + "edge_lengths_px": [ + 36.619667053222656, + 29.154760360717773, + 36.055511474609375, + 29.681644439697266 + ] + }, + "confidence": 0.5188246379772157 + }, + { + "observation_id": "871526bb-91d5-4fe3-8d17-39ee87e685a5", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 664.0, + 678.0 + ], + [ + 696.0, + 665.0 + ], + [ + 717.0, + 685.0 + ], + [ + 684.0, + 698.0 + ] + ], + "center_px": [ + 690.25, + 681.5 + ], + "quality": { + "area_px": 916.5, + "perimeter_px": 127.29240036010742, + "sharpness": { + "laplacian_var": 950.4938833487939 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 81.41071428571429, + "std_gray": 66.26803955921937 + }, + "geometry": { + "distance_to_center_norm": 0.1606595665216446, + "distance_to_border_px": 382.0 + }, + "edge_ratio": 1.25399363306104, + "edge_lengths_px": [ + 34.539833068847656, + 29.0, + 35.46829605102539, + 28.284271240234375 + ] + }, + "confidence": 0.4872433032283655 + }, + { + "observation_id": "8e899ffe-37f3-4d09-a879-7d043f37346d", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 132.0, + 733.0 + ], + [ + 120.0, + 713.0 + ], + [ + 156.0, + 700.0 + ], + [ + 169.0, + 720.0 + ] + ], + "center_px": [ + 144.25, + 716.5 + ], + "quality": { + "area_px": 892.5, + "perimeter_px": 124.6701889038086, + "sharpness": { + "laplacian_var": 1275.08402176 + }, + "contrast": { + "p05": 10.200000000000003, + "p95": 164.0, + "dynamic_range": 153.8, + "mean_gray": 105.7888, + "std_gray": 57.0930485660032 + }, + "geometry": { + "distance_to_center_norm": 0.6691069006919861, + "distance_to_border_px": 120.0 + }, + "edge_ratio": 1.6814297415391983, + "edge_lengths_px": [ + 23.323806762695312, + 38.27531814575195, + 23.853721618652344, + 39.217342376708984 + ] + }, + "confidence": 0.3538655141518615 + }, + { + "observation_id": "8b6f8a5c-fc48-46ee-9611-fc6a10e3bfe3", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 624.0 + ], + [ + 815.0, + 612.0 + ], + [ + 837.0, + 630.0 + ], + [ + 807.0, + 643.0 + ] + ], + "center_px": [ + 811.25, + 627.25 + ], + "quality": { + "area_px": 814.5, + "perimeter_px": 120.82522010803223, + "sharpness": { + "laplacian_var": 1125.3635571955213 + }, + "contrast": { + "p05": 8.0, + "p95": 149.0, + "dynamic_range": 141.0, + "mean_gray": 86.07050092764378, + "std_gray": 55.3312393682571 + }, + "geometry": { + "distance_to_center_norm": 0.14027805626392365, + "distance_to_border_px": 437.0 + }, + "edge_ratio": 1.1545204961681088, + "edge_lengths_px": [ + 31.38471031188965, + 28.42534065246582, + 32.69556427001953, + 28.319604873657227 + ] + }, + "confidence": 0.4703251278796996 + }, + { + "observation_id": "52df255e-5ad3-4d6c-82f5-7edac19afd06", + "type": "aruco", + "marker_id": 74, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 344.0, + 702.0 + ], + [ + 330.0, + 683.0 + ], + [ + 364.0, + 671.0 + ], + [ + 379.0, + 689.0 + ] + ], + "center_px": [ + 354.25, + 686.25 + ], + "quality": { + "area_px": 819.5, + "perimeter_px": 120.42341613769531, + "sharpness": { + "laplacian_var": 1054.273602937478 + }, + "contrast": { + "p05": 7.0, + "p95": 158.0, + "dynamic_range": 151.0, + "mean_gray": 89.94680851063829, + "std_gray": 62.538561214266565 + }, + "geometry": { + "distance_to_center_norm": 0.4376735985279083, + "distance_to_border_px": 330.0 + }, + "edge_ratio": 1.593474715740479, + "edge_lengths_px": [ + 23.600847244262695, + 36.055511474609375, + 23.430749893188477, + 37.336307525634766 + ] + }, + "confidence": 0.3428566063437381 + }, + { + "observation_id": "1e6171e2-7503-4232-8657-dcd6515f531a", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1374.0, + 670.0 + ], + [ + 1347.0, + 651.0 + ], + [ + 1371.0, + 639.0 + ], + [ + 1398.0, + 658.0 + ] + ], + "center_px": [ + 1372.5, + 654.5 + ], + "quality": { + "area_px": 780.0, + "perimeter_px": 119.69592666625977, + "sharpness": { + "laplacian_var": 1109.98644924121 + }, + "contrast": { + "p05": 10.700000000000003, + "p95": 158.0, + "dynamic_range": 147.3, + "mean_gray": 106.3378640776699, + "std_gray": 52.12042090245902 + }, + "geometry": { + "distance_to_center_norm": 0.7360777258872986, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2304019519874827, + "edge_lengths_px": [ + 33.0151481628418, + 26.832815170288086, + 33.0151481628418, + 26.832815170288086 + ] + }, + "confidence": 0.35500593874581543 + }, + { + "observation_id": "9c003a72-56f5-4759-a854-abbd8f978b20", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1196.0, + 524.0 + ], + [ + 1220.0, + 514.0 + ], + [ + 1244.0, + 530.0 + ], + [ + 1219.0, + 540.0 + ] + ], + "center_px": [ + 1219.75, + 527.0 + ], + "quality": { + "area_px": 627.0, + "perimeter_px": 109.78808403015137, + "sharpness": { + "laplacian_var": 963.0183950617284 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 73.82444444444444, + "std_gray": 53.419454032550746 + }, + "geometry": { + "distance_to_center_norm": 0.5554656386375427, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.109400382408729, + "edge_lengths_px": [ + 26.0, + 28.844409942626953, + 26.925823211669922, + 28.017850875854492 + ] + }, + "confidence": 0.3767801116964092 + }, + { + "observation_id": "fc5cd14d-00cc-40c0-bd32-98a6bab9bbf7", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1299.0, + 475.0 + ], + [ + 1322.0, + 465.0 + ], + [ + 1346.0, + 479.0 + ], + [ + 1325.0, + 490.0 + ] + ], + "center_px": [ + 1323.0, + 477.25 + ], + "quality": { + "area_px": 581.5, + "perimeter_px": 106.58796119689941, + "sharpness": { + "laplacian_var": 922.4211295765532 + }, + "contrast": { + "p05": 9.0, + "p95": 150.0, + "dynamic_range": 141.0, + "mean_gray": 80.53125, + "std_gray": 49.781966772569284 + }, + "geometry": { + "distance_to_center_norm": 0.673617959022522, + "distance_to_border_px": 94.0 + }, + "edge_ratio": 1.2661764925954944, + "edge_lengths_px": [ + 25.079872131347656, + 27.784887313842773, + 23.706539154052734, + 30.01666259765625 + ] + }, + "confidence": 0.3061711135325228 + }, + { + "observation_id": "c977870c-1c8d-4812-ae66-40c2b8bd66b8", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1117.0, + 472.0 + ], + [ + 1139.0, + 461.0 + ], + [ + 1163.0, + 476.0 + ], + [ + 1140.0, + 486.0 + ] + ], + "center_px": [ + 1139.75, + 473.75 + ], + "quality": { + "area_px": 573.0, + "perimeter_px": 104.90438652038574, + "sharpness": { + "laplacian_var": 1036.3509780861898 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 74.53349875930522, + "std_gray": 50.45210729924828 + }, + "geometry": { + "distance_to_center_norm": 0.47216224670410156, + "distance_to_border_px": 277.0 + }, + "edge_ratio": 1.1506375729114486, + "edge_lengths_px": [ + 24.59674835205078, + 28.301942825317383, + 25.079872131347656, + 26.925823211669922 + ] + }, + "confidence": 0.33198985414097737 + }, + { + "observation_id": "25df7982-2b2f-4d7c-bf0a-b4a6394336c4", + "type": "aruco", + "marker_id": 184, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 821.0, + 486.0 + ], + [ + 814.0, + 487.0 + ], + [ + 798.0, + 448.0 + ], + [ + 805.0, + 445.0 + ] + ], + "center_px": [ + 809.5, + 466.5 + ], + "quality": { + "area_px": 312.0, + "perimeter_px": 100.85268115997314, + "sharpness": { + "laplacian_var": 2032.911884279329 + }, + "contrast": { + "p05": 22.0, + "p95": 133.5, + "dynamic_range": 111.5, + "mean_gray": 67.10426540284361, + "std_gray": 39.568029255350964 + }, + "geometry": { + "distance_to_center_norm": 0.12868039309978485, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 6.224146785942024, + "edge_lengths_px": [ + 7.071067810058594, + 42.154476165771484, + 7.6157732009887695, + 44.0113639831543 + ] + }, + "confidence": 0.03341823500528502 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 712.0, + 776.0 + ], + [ + 506.0, + 896.0 + ], + [ + 441.0, + 876.0 + ], + [ + 650.0, + 774.0 + ] + ], + "center_px": [ + 577.25, + 830.5 + ], + "area_px": 9331.0 + }, + { + "image_points_px": [ + [ + 1134.0, + 576.0 + ], + [ + 1028.0, + 633.0 + ], + [ + 1010.0, + 609.0 + ], + [ + 1092.0, + 566.0 + ] + ], + "center_px": [ + 1066.0, + 596.0 + ], + "area_px": 3098.0 + }, + { + "image_points_px": [ + [ + 949.0, + 628.0 + ], + [ + 974.0, + 624.0 + ], + [ + 1004.0, + 689.0 + ], + [ + 973.0, + 699.0 + ] + ], + "center_px": [ + 975.0, + 660.0 + ], + "area_px": 2093.0 + }, + { + "image_points_px": [ + [ + 919.0, + 792.0 + ], + [ + 944.0, + 814.0 + ], + [ + 912.0, + 829.0 + ], + [ + 888.0, + 806.0 + ] + ], + "center_px": [ + 915.75, + 810.25 + ], + "area_px": 1064.0 + }, + { + "image_points_px": [ + [ + 964.0, + 655.0 + ], + [ + 985.0, + 654.0 + ], + [ + 1002.0, + 682.0 + ], + [ + 976.0, + 691.0 + ] + ], + "center_px": [ + 981.75, + 670.5 + ], + "area_px": 824.5 + }, + { + "image_points_px": [ + [ + 1299.0, + 626.0 + ], + [ + 1321.0, + 614.0 + ], + [ + 1348.0, + 632.0 + ], + [ + 1326.0, + 644.0 + ] + ], + "center_px": [ + 1323.5, + 629.0 + ], + "area_px": 720.0 + }, + { + "image_points_px": [ + [ + 92.0, + 604.0 + ], + [ + 58.0, + 618.0 + ], + [ + 46.0, + 601.0 + ], + [ + 78.0, + 589.0 + ] + ], + "center_px": [ + 68.5, + 603.0 + ], + "area_px": 697.0 + }, + { + "image_points_px": [ + [ + 180.0, + 565.0 + ], + [ + 147.0, + 577.0 + ], + [ + 137.0, + 560.0 + ], + [ + 168.0, + 550.0 + ] + ], + "center_px": [ + 158.0, + 563.0 + ], + "area_px": 633.0 + }, + { + "image_points_px": [ + [ + 871.0, + 624.0 + ], + [ + 879.0, + 625.0 + ], + [ + 895.0, + 667.0 + ], + [ + 885.0, + 663.0 + ] + ], + "center_px": [ + 882.5, + 644.75 + ], + "area_px": 327.0 + }, + { + "image_points_px": [ + [ + 1217.0, + 427.0 + ], + [ + 1239.0, + 418.0 + ], + [ + 1261.0, + 431.0 + ], + [ + 1241.0, + 441.0 + ] + ], + "center_px": [ + 1239.5, + 429.25 + ], + "area_px": 502.0 + }, + { + "image_points_px": [ + [ + 385.0, + 633.0 + ], + [ + 402.0, + 652.0 + ], + [ + 378.0, + 660.0 + ], + [ + 362.0, + 643.0 + ] + ], + "center_px": [ + 381.75, + 647.0 + ], + "area_px": 571.5 + }, + { + "image_points_px": [ + [ + 717.0, + 471.0 + ], + [ + 742.0, + 462.0 + ], + [ + 760.0, + 475.0 + ], + [ + 736.0, + 485.0 + ] + ], + "center_px": [ + 738.75, + 473.25 + ], + "area_px": 506.5 + }, + { + "image_points_px": [ + [ + 488.0, + 732.0 + ], + [ + 459.0, + 747.0 + ], + [ + 447.0, + 740.0 + ], + [ + 480.0, + 724.0 + ] + ], + "center_px": [ + 468.5, + 735.75 + ], + "area_px": 387.5 + }, + { + "image_points_px": [ + [ + 751.0, + 438.0 + ], + [ + 776.0, + 430.0 + ], + [ + 792.0, + 443.0 + ], + [ + 768.0, + 452.0 + ] + ], + "center_px": [ + 771.75, + 440.75 + ], + "area_px": 471.0 + }, + { + "image_points_px": [ + [ + 984.0, + 384.0 + ], + [ + 1007.0, + 376.0 + ], + [ + 1024.0, + 388.0 + ], + [ + 1002.0, + 397.0 + ] + ], + "center_px": [ + 1004.25, + 386.25 + ], + "area_px": 430.0 + }, + { + "image_points_px": [ + [ + 1088.0, + 340.0 + ], + [ + 1108.0, + 333.0 + ], + [ + 1127.0, + 343.0 + ], + [ + 1106.0, + 351.0 + ] + ], + "center_px": [ + 1107.25, + 341.75 + ], + "area_px": 354.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 297.0 + ], + [ + 1071.0, + 290.0 + ], + [ + 1089.0, + 300.0 + ], + [ + 1070.0, + 308.0 + ] + ], + "center_px": [ + 1070.25, + 298.75 + ], + "area_px": 343.5 + }, + { + "image_points_px": [ + [ + 1145.0, + 312.0 + ], + [ + 1165.0, + 306.0 + ], + [ + 1182.0, + 316.0 + ], + [ + 1163.0, + 324.0 + ] + ], + "center_px": [ + 1163.75, + 314.5 + ], + "area_px": 337.0 + }, + { + "image_points_px": [ + [ + 1227.0, + 309.0 + ], + [ + 1246.0, + 302.0 + ], + [ + 1264.0, + 312.0 + ], + [ + 1247.0, + 320.0 + ] + ], + "center_px": [ + 1246.0, + 310.75 + ], + "area_px": 331.5 + }, + { + "image_points_px": [ + [ + 935.0, + 285.0 + ], + [ + 955.0, + 278.0 + ], + [ + 972.0, + 287.0 + ], + [ + 952.0, + 295.0 + ] + ], + "center_px": [ + 953.5, + 286.25 + ], + "area_px": 317.5 + }, + { + "image_points_px": [ + [ + 891.0, + 293.0 + ], + [ + 911.0, + 286.0 + ], + [ + 927.0, + 296.0 + ], + [ + 907.0, + 304.0 + ] + ], + "center_px": [ + 909.0, + 294.75 + ], + "area_px": 330.0 + }, + { + "image_points_px": [ + [ + 1018.0, + 751.0 + ], + [ + 1017.0, + 775.0 + ], + [ + 1013.0, + 785.0 + ], + [ + 1005.0, + 755.0 + ] + ], + "center_px": [ + 1013.25, + 766.5 + ], + "area_px": 254.0 + }, + { + "image_points_px": [ + [ + 278.0, + 1016.0 + ], + [ + 276.0, + 1020.0 + ], + [ + 247.0, + 1035.0 + ], + [ + 268.0, + 1019.0 + ] + ], + "center_px": [ + 267.25, + 1022.5 + ], + "area_px": 91.5 + }, + { + "image_points_px": [ + [ + 1273.0, + 316.0 + ], + [ + 1258.0, + 325.0 + ], + [ + 1242.0, + 330.0 + ], + [ + 1245.0, + 326.0 + ] + ], + "center_px": [ + 1254.5, + 324.25 + ], + "area_px": 75.5 + }, + { + "image_points_px": [ + [ + 627.0, + 394.0 + ], + [ + 630.0, + 413.0 + ], + [ + 628.0, + 428.0 + ], + [ + 625.0, + 409.0 + ] + ], + "center_px": [ + 627.5, + 411.0 + ], + "area_px": 83.0 + }, + { + "image_points_px": [ + [ + 356.0, + 962.0 + ], + [ + 333.0, + 980.0 + ], + [ + 330.0, + 980.0 + ], + [ + 348.0, + 965.0 + ] + ], + "center_px": [ + 341.75, + 971.75 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 702.0, + 632.0 + ], + [ + 679.0, + 644.0 + ], + [ + 673.0, + 642.0 + ], + [ + 695.0, + 632.0 + ] + ], + "center_px": [ + 687.25, + 637.5 + ], + "area_px": 94.0 + }, + { + "image_points_px": [ + [ + 1001.0, + 496.0 + ], + [ + 997.0, + 501.0 + ], + [ + 977.0, + 510.0 + ], + [ + 973.0, + 509.0 + ] + ], + "center_px": [ + 987.0, + 504.0 + ], + "area_px": 72.0 + }, + { + "image_points_px": [ + [ + 921.0, + 598.0 + ], + [ + 901.0, + 617.0 + ], + [ + 902.0, + 613.0 + ], + [ + 915.0, + 599.0 + ] + ], + "center_px": [ + 909.75, + 606.75 + ], + "area_px": 66.0 + }, + { + "image_points_px": [ + [ + 68.0, + 1031.0 + ], + [ + 60.0, + 1038.0 + ], + [ + 45.0, + 1046.0 + ], + [ + 50.0, + 1041.0 + ] + ], + "center_px": [ + 55.75, + 1039.0 + ], + "area_px": 40.5 + }, + { + "image_points_px": [ + [ + 842.0, + 934.0 + ], + [ + 834.0, + 942.0 + ], + [ + 823.0, + 947.0 + ], + [ + 820.0, + 946.0 + ] + ], + "center_px": [ + 829.75, + 942.25 + ], + "area_px": 53.0 + }, + { + "image_points_px": [ + [ + 806.0, + 955.0 + ], + [ + 791.0, + 965.0 + ], + [ + 783.0, + 965.0 + ], + [ + 802.0, + 955.0 + ] + ], + "center_px": [ + 795.5, + 960.0 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 342.0, + 1004.0 + ], + [ + 320.0, + 1016.0 + ], + [ + 322.0, + 1012.0 + ], + [ + 330.0, + 1007.0 + ] + ], + "center_px": [ + 328.5, + 1009.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 1340.0, + 651.0 + ], + [ + 1334.0, + 656.0 + ], + [ + 1318.0, + 660.0 + ], + [ + 1329.0, + 652.0 + ] + ], + "center_px": [ + 1330.25, + 654.75 + ], + "area_px": 66.5 + }, + { + "image_points_px": [ + [ + 229.0, + 651.0 + ], + [ + 218.0, + 658.0 + ], + [ + 208.0, + 661.0 + ], + [ + 211.0, + 658.0 + ] + ], + "center_px": [ + 216.5, + 657.0 + ], + "area_px": 35.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/render_a_camera_pose.json b/data/camera_study/Scene10/k4_abdg/render_a_camera_pose.json new file mode 100644 index 0000000..9c15282 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/render_a_camera_pose.json @@ -0,0 +1,467 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:03Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abdg\\render_a_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "a", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 19, + "used_marker_ids": [ + 95, + 97, + 103, + 54, + 55, + 51, + 47, + 210, + 85, + 215, + 105, + 211, + 75, + 214, + 74, + 102, + 217, + 205, + 206 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.01009749778311845, + 0.0013500052634516154, + 0.0012080581027067798, + 0.001208056584232894 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.418903298149159, + "residual_median_px": 2.9058066287550095, + "residual_max_px": 7.881774161943574, + "sigma2_normalized": 1.7330383439497478e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8081126809120178, + -0.5890257358551025, + -0.0016104801325127482 + ], + [ + -0.3439487814903259, + -0.46965670585632324, + -0.8130939602851868 + ], + [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + ], + "translation_m": [ + -0.2276943325996399, + 0.17315705120563507, + 1.1353343725204468 + ], + "rvec_rad": [ + 2.1050851025918234, + -0.6867341612291594, + 0.3507860528401858 + ] + }, + "camera_in_world": { + "position_m": [ + -0.29933083057403564, + -0.7994182705879211, + 0.8013386726379395 + ], + "position_mm": [ + -299.3308410644531, + -799.4182739257812, + 801.3386840820312 + ], + "orientation_deg": { + "roll": 131.5152587890625, + "pitch": -28.5664005279541, + "yaw": -23.05556297302246 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.5705111713147538e-05, + -3.606186641991224e-06, + 9.93455859227922e-07, + 5.974998436558746e-07, + 4.6929081989455075e-07, + 2.8925877037560832e-06 + ], + [ + -3.606186641991253e-06, + 4.525067031199804e-06, + -1.5535915979518367e-06, + -4.146706877795486e-07, + -8.403171882148325e-07, + 3.704138848703875e-08 + ], + [ + 9.93455859228011e-07, + -1.5535915979518793e-06, + 1.4511663564702391e-05, + 8.397716382398054e-07, + -1.8034796850892003e-06, + -4.925606373863842e-06 + ], + [ + 5.974998436558832e-07, + -4.146706877795502e-07, + 8.397716382397962e-07, + 2.430616306834126e-07, + 1.4873676074531513e-08, + 1.58103612736764e-07 + ], + [ + 4.692908198945444e-07, + -8.403171882148285e-07, + -1.8034796850892121e-06, + 1.4873676074530825e-08, + 6.717933155003761e-07, + 1.166485422903723e-06 + ], + [ + 2.892587703756058e-06, + 3.704138848704778e-08, + -4.925606373863879e-06, + 1.5810361273676463e-07, + 1.166485422903725e-06, + 5.922812492193122e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.22706131431744284, + 0.12188075641483156, + 0.21826355925678265 + ], + "tvec_std_m": [ + 0.0004930128098573226, + 0.0008196299869455584, + 0.0024336829070758423 + ] + }, + "camera_center_std_m": [ + 0.0031789461102063005, + 0.004041324498858458, + 0.00434604702092401 + ], + "camera_center_std_mm": [ + 3.1789461102063004, + 4.041324498858458, + 4.3460470209240105 + ], + "orientation_std_deg": { + "roll": 0.2878030578767992, + "pitch": 0.1683177033483575, + "yaw": 0.1374718863525747 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 881.25, + 1031.25 + ], + "projected_center_px": [ + 877.61865234375, + 1028.5360107421875 + ], + "reprojection_error_px": 4.53347807892285, + "confidence": 0.45573027871641286 + }, + { + "marker_id": 97, + "observed_center_px": [ + 1153.25, + 1024.0 + ], + "projected_center_px": [ + 1152.7294921875, + 1027.8443603515625 + ], + "reprojection_error_px": 3.879437445756702, + "confidence": 0.5455570235395628 + }, + { + "marker_id": 103, + "observed_center_px": [ + 661.25, + 999.75 + ], + "projected_center_px": [ + 660.6806030273438, + 996.0768432617188 + ], + "reprojection_error_px": 3.7170274866418533, + "confidence": 0.8987700853806685 + }, + { + "marker_id": 54, + "observed_center_px": [ + 1154.75, + 961.0 + ], + "projected_center_px": [ + 1162.5029296875, + 962.4193115234375 + ], + "reprojection_error_px": 7.881774161943574, + "confidence": 0.7524431457735686 + }, + { + "marker_id": 55, + "observed_center_px": [ + 997.5, + 932.25 + ], + "projected_center_px": [ + 999.1104736328125, + 934.5891723632812 + ], + "reprojection_error_px": 2.8399564551455856, + "confidence": 0.8623788434718633 + }, + { + "marker_id": 51, + "observed_center_px": [ + 736.5, + 929.25 + ], + "projected_center_px": [ + 735.853271484375, + 928.2763061523438 + ], + "reprojection_error_px": 1.1689043938176247, + "confidence": 0.7704666026640716 + }, + { + "marker_id": 47, + "observed_center_px": [ + 1108.25, + 915.0 + ], + "projected_center_px": [ + 1107.45166015625, + 913.0933837890625 + ], + "reprojection_error_px": 2.0670103729610174, + "confidence": 0.7309457014059588 + }, + { + "marker_id": 210, + "observed_center_px": [ + 369.0, + 845.5 + ], + "projected_center_px": [ + 367.08258056640625, + 847.7832641601562 + ], + "reprojection_error_px": 2.98157550791138, + "confidence": 0.5963354569243849 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1335.0, + 822.0 + ], + "projected_center_px": [ + 1332.3167724609375, + 822.3063354492188 + ], + "reprojection_error_px": 2.7006575928524246, + "confidence": 0.6128519038478318 + }, + { + "marker_id": 215, + "observed_center_px": [ + 763.5, + 751.75 + ], + "projected_center_px": [ + 764.8435668945312, + 753.69775390625 + ], + "reprojection_error_px": 2.366203135699148, + "confidence": 0.5752892000247514 + }, + { + "marker_id": 105, + "observed_center_px": [ + 1293.5, + 768.75 + ], + "projected_center_px": [ + 1294.0775146484375, + 765.9021606445312 + ], + "reprojection_error_px": 2.9058066287550095, + "confidence": 0.5188246379772157 + }, + { + "marker_id": 211, + "observed_center_px": [ + 690.25, + 681.5 + ], + "projected_center_px": [ + 687.66943359375, + 684.4354248046875 + ], + "reprojection_error_px": 3.908457721536807, + "confidence": 0.4872433032283655 + }, + { + "marker_id": 75, + "observed_center_px": [ + 144.25, + 716.5 + ], + "projected_center_px": [ + 147.21554565429688, + 715.9539184570312 + ], + "reprojection_error_px": 3.01540479526219, + "confidence": 0.3538655141518615 + }, + { + "marker_id": 214, + "observed_center_px": [ + 811.25, + 627.25 + ], + "projected_center_px": [ + 813.1135864257812, + 626.0042114257812 + ], + "reprojection_error_px": 2.2416385832712016, + "confidence": 0.4703251278796996 + }, + { + "marker_id": 74, + "observed_center_px": [ + 354.25, + 686.25 + ], + "projected_center_px": [ + 353.1841125488281, + 685.2387084960938 + ], + "reprojection_error_px": 1.4692945805517152, + "confidence": 0.3428566063437381 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1372.5, + 654.5 + ], + "projected_center_px": [ + 1370.1954345703125, + 654.4063110351562 + ], + "reprojection_error_px": 2.306469042030312, + "confidence": 0.35500593874581543 + }, + { + "marker_id": 217, + "observed_center_px": [ + 1219.75, + 527.0 + ], + "projected_center_px": [ + 1223.6787109375, + 525.702392578125 + ], + "reprojection_error_px": 4.137457510565784, + "confidence": 0.3767801116964092 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1323.0, + 477.25 + ], + "projected_center_px": [ + 1319.5634765625, + 478.1280212402344 + ], + "reprojection_error_px": 3.5469162147969504, + "confidence": 0.3061711135325228 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1139.75, + 473.75 + ], + "projected_center_px": [ + 1139.77392578125, + 473.96392822265625 + ], + "reprojection_error_px": 0.2152619972435565, + "confidence": 0.33198985414097737 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/render_b_aruco_detection.json b/data/camera_study/Scene10/k4_abdg/render_b_aruco_detection.json new file mode 100644 index 0000000..105a258 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:02Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "63947641-6310-4f6d-968f-e8161b4694ea", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "c687856c-a371-4b55-967c-903573493817", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "58f83160-fb1e-4f7f-b0a2-9c19a4482e48", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "77c253ed-6aca-4173-98f3-29f912f1e5b8", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "60e50f63-007a-43bd-bc0a-c95d22330795", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "31e13eb2-b41b-49e8-bd92-a916562b4cea", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "1fc16b68-571a-4c32-baf1-16b4d51471d3", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "50669f3d-4420-4291-86b3-e6db54b59558", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "b6e6fa0e-590f-4014-882b-4f8a5d0a40c1", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "d464e4ff-acab-43fc-851e-6186842a624b", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "69893fab-02cd-44cd-bc7e-c2cb47ccb35b", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "4da18670-62aa-4791-8f06-99b7905433e5", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "a89095fd-d57e-4aac-a13c-adc1f7f0f6aa", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "f527185a-9b18-4185-8223-b1380e4a0203", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "91eeadc4-ac9d-409d-ab9c-2b3699073d07", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "061dcf0f-bc38-4e5d-a87a-3cf9fa1316c9", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "ca896d57-0091-47ec-a3b8-c71924d7271c", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "abd70a8e-eca5-42fb-b7b7-e74f3b2a1cf8", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "b36e3587-b22f-467e-8350-5bb849c573a3", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "b4e30003-e7a5-426e-98b8-0d69aaf7c957", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "b9a66ef9-85c6-4749-96da-ea569dbd4c3a", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "86119ebd-aff2-4334-be9b-30991c035974", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "20722101-70e9-4be2-8133-1d4c1ada0a0a", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "f615c770-59f6-4a88-af8c-7f37a92576c7", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "0170597a-df28-474c-bb90-d416cdb1c7e7", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "f1f18cbc-870e-4b71-be4e-c1b3ca96dc36", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "44846442-21d4-4523-b441-4f67de1b6891", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "7e30ba0a-485d-4a7f-93c1-65cbf6cb4e4f", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "bac992ab-af2e-4d2b-9fe5-1d2d46b5290b", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "5932cca1-c3e1-4009-a2a4-9eaf1e48c22d", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "26ae0a06-c02d-4d12-93be-ce849e3a8463", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "f1e466e9-57db-4e9b-ad38-61a03a82f9f5", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "fa34b498-6211-409e-a6dd-9d472770b7a5", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "1717d370-ff3b-4751-9c6a-727e925562ad", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "be7be07f-7cda-4e52-bc46-48414c99ee13", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "343a9f4e-1f47-4ec7-89b0-91c8a83fa2b2", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/render_b_camera_pose.json b/data/camera_study/Scene10/k4_abdg/render_b_camera_pose.json new file mode 100644 index 0000000..ac47bfc --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:04Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abdg\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/render_d_aruco_detection.json b/data/camera_study/Scene10/k4_abdg/render_d_aruco_detection.json new file mode 100644 index 0000000..95b932c --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/render_d_aruco_detection.json @@ -0,0 +1,1311 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:02Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "d", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.npz", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.png", + "image_sha256": "62e03d1a72df6ace64f3edf39f814b0e48c63c4b06cd21705bd69cd08afa442a", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 15, + "num_rejected_candidates": 18 + }, + "detections": [ + { + "observation_id": "a3e39962-bd50-4ac9-a6eb-9540c60aaf99", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 742.0, + 906.0 + ], + [ + 797.0, + 913.0 + ], + [ + 796.0, + 973.0 + ], + [ + 741.0, + 965.0 + ] + ], + "center_px": [ + 769.0, + 939.25 + ], + "quality": { + "area_px": 3280.0, + "perimeter_px": 230.03924179077148, + "sharpness": { + "laplacian_var": 235.03135651883824 + }, + "contrast": { + "p05": 24.0, + "p95": 170.0, + "dynamic_range": 146.0, + "mean_gray": 71.34429223744293, + "std_gray": 60.34595999329839 + }, + "geometry": { + "distance_to_center_norm": 0.4469395875930786, + "distance_to_border_px": 107.0 + }, + "edge_ratio": 1.0823298168515911, + "edge_lengths_px": [ + 55.44366455078125, + 60.008331298828125, + 55.578773498535156, + 59.00847244262695 + ] + }, + "confidence": 0.9239327831777916 + }, + { + "observation_id": "079594db-8ebd-4d4e-b1ad-37529095559a", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 889.0, + 943.0 + ], + [ + 916.0, + 987.0 + ], + [ + 864.0, + 1021.0 + ], + [ + 835.0, + 979.0 + ] + ], + "center_px": [ + 876.0, + 982.5 + ], + "quality": { + "area_px": 3259.0, + "perimeter_px": 229.6916618347168, + "sharpness": { + "laplacian_var": 61.572482510446996 + }, + "contrast": { + "p05": 8.0, + "p95": 102.0, + "dynamic_range": 94.0, + "mean_gray": 52.3137789904502, + "std_gray": 40.795642464164395 + }, + "geometry": { + "distance_to_center_norm": 0.5213257670402527, + "distance_to_border_px": 59.0 + }, + "edge_ratio": 1.2715701940712816, + "edge_lengths_px": [ + 51.62363815307617, + 62.12889862060547, + 51.03919982910156, + 64.8999252319336 + ] + }, + "confidence": 0.4035200127470337 + }, + { + "observation_id": "f507925f-562f-4887-9933-820606fc4e83", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 685.0 + ], + [ + 956.0, + 716.0 + ], + [ + 934.0, + 773.0 + ], + [ + 895.0, + 742.0 + ] + ], + "center_px": [ + 925.75, + 729.0 + ], + "quality": { + "area_px": 2892.0, + "perimeter_px": 221.4241943359375, + "sharpness": { + "laplacian_var": 65.75925962559084 + }, + "contrast": { + "p05": 5.0, + "p95": 83.0, + "dynamic_range": 78.0, + "mean_gray": 36.39875065070276, + "std_gray": 31.82755916882834 + }, + "geometry": { + "distance_to_center_norm": 0.31042397022247314, + "distance_to_border_px": 307.0 + }, + "edge_ratio": 1.2533531491081307, + "edge_lengths_px": [ + 49.04079818725586, + 61.09828186035156, + 49.81967544555664, + 61.46543884277344 + ] + }, + "confidence": 0.4262916519882062 + }, + { + "observation_id": "970a9546-4835-4a94-a348-a6a980b14165", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1006.0, + 434.0 + ], + [ + 1040.0, + 464.0 + ], + [ + 1023.0, + 519.0 + ], + [ + 983.0, + 494.0 + ] + ], + "center_px": [ + 1013.0, + 477.75 + ], + "quality": { + "area_px": 2677.5, + "perimeter_px": 214.33768844604492, + "sharpness": { + "laplacian_var": 63.84585482864622 + }, + "contrast": { + "p05": 4.0, + "p95": 81.0, + "dynamic_range": 77.0, + "mean_gray": 29.46114864864865, + "std_gray": 31.00050238673812 + }, + "geometry": { + "distance_to_center_norm": 0.33282196521759033, + "distance_to_border_px": 400.0 + }, + "edge_ratio": 1.4171338730692165, + "edge_lengths_px": [ + 45.343135833740234, + 57.567352294921875, + 47.16990661621094, + 64.25729370117188 + ] + }, + "confidence": 0.3613610332351109 + }, + { + "observation_id": "1f824186-f2ff-4829-b22b-1f471efbfff1", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 994.0, + 187.0 + ], + [ + 1046.0, + 190.0 + ], + [ + 1029.0, + 238.0 + ], + [ + 978.0, + 230.0 + ] + ], + "center_px": [ + 1011.75, + 211.25 + ], + "quality": { + "area_px": 2434.0, + "perimeter_px": 200.51189422607422, + "sharpness": { + "laplacian_var": 737.7557921421737 + }, + "contrast": { + "p05": 56.0, + "p95": 183.0, + "dynamic_range": 127.0, + "mean_gray": 101.10567632850241, + "std_gray": 52.34786160983359 + }, + "geometry": { + "distance_to_center_norm": 0.48837676644325256, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.1352691889411037, + "edge_lengths_px": [ + 52.08646774291992, + 50.9215087890625, + 51.62363815307617, + 45.880279541015625 + ] + }, + "confidence": 0.8808483571484285 + }, + { + "observation_id": "ada05ac9-e1de-4d7d-809f-8b0aab105dec", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 920.0, + 169.0 + ], + [ + 969.0, + 170.0 + ], + [ + 953.0, + 218.0 + ], + [ + 902.0, + 215.0 + ] + ], + "center_px": [ + 936.0, + 193.0 + ], + "quality": { + "area_px": 2384.0, + "perimeter_px": 200.09115982055664, + "sharpness": { + "laplacian_var": 675.8367068624159 + }, + "contrast": { + "p05": 58.0, + "p95": 184.0, + "dynamic_range": 126.0, + "mean_gray": 125.61893054701905, + "std_gray": 52.20639937589474 + }, + "geometry": { + "distance_to_center_norm": 0.4541509747505188, + "distance_to_border_px": 169.0 + }, + "edge_ratio": 1.042398381472962, + "edge_lengths_px": [ + 49.01020431518555, + 50.59644317626953, + 51.088157653808594, + 49.39635467529297 + ] + }, + "confidence": 0.9593261249954639 + }, + { + "observation_id": "ec4a2d9a-a1dd-474f-ad6d-4e8818ff295b", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 837.0, + 569.0 + ], + [ + 877.0, + 568.0 + ], + [ + 857.0, + 624.0 + ], + [ + 816.0, + 623.0 + ] + ], + "center_px": [ + 846.75, + 596.0 + ], + "quality": { + "area_px": 2227.5, + "perimeter_px": 198.4285888671875, + "sharpness": { + "laplacian_var": 456.8683277511788 + }, + "contrast": { + "p05": 43.0, + "p95": 185.0, + "dynamic_range": 142.0, + "mean_gray": 85.2088948787062, + "std_gray": 56.487417453665174 + }, + "geometry": { + "distance_to_center_norm": 0.15396633744239807, + "distance_to_border_px": 456.0 + }, + "edge_ratio": 1.486142577830794, + "edge_lengths_px": [ + 40.01249694824219, + 59.46427536010742, + 41.01219177246094, + 57.93962478637695 + ] + }, + "confidence": 0.6728829487273165 + }, + { + "observation_id": "1b664123-56c6-4cd4-91d4-d3a5f9e1ed09", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 380.0, + 1053.0 + ], + [ + 418.0, + 1028.0 + ], + [ + 462.0, + 1043.0 + ], + [ + 426.0, + 1069.0 + ] + ], + "center_px": [ + 421.5, + 1048.25 + ], + "quality": { + "area_px": 1721.0, + "perimeter_px": 185.08320999145508, + "sharpness": { + "laplacian_var": 401.0408793146889 + }, + "contrast": { + "p05": 16.0, + "p95": 171.0, + "dynamic_range": 155.0, + "mean_gray": 91.72839506172839, + "std_gray": 64.0365880429505 + }, + "geometry": { + "distance_to_center_norm": 0.6549152135848999, + "distance_to_border_px": 11.0 + }, + "edge_ratio": 1.0967404836818018, + "edge_lengths_px": [ + 45.486263275146484, + 46.48655700683594, + 44.40720748901367, + 48.703182220458984 + ] + }, + "confidence": 0.20059440065661768 + }, + { + "observation_id": "5e7295f6-e343-4e92-98ef-a25299d8b624", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 839.0, + 266.0 + ], + [ + 854.0, + 309.0 + ], + [ + 811.0, + 306.0 + ], + [ + 796.0, + 265.0 + ] + ], + "center_px": [ + 825.0, + 286.5 + ], + "quality": { + "area_px": 1776.0, + "perimeter_px": 175.31510162353516, + "sharpness": { + "laplacian_var": 240.92017426523984 + }, + "contrast": { + "p05": 22.0, + "p95": 153.0, + "dynamic_range": 131.0, + "mean_gray": 74.06045751633987, + "std_gray": 53.6075481691311 + }, + "geometry": { + "distance_to_center_norm": 0.3048724830150604, + "distance_to_border_px": 265.0 + }, + "edge_ratio": 1.0588111649951575, + "edge_lengths_px": [ + 45.54119110107422, + 43.104522705078125, + 43.65776062011719, + 43.011627197265625 + ] + }, + "confidence": 0.9444554733275536 + }, + { + "observation_id": "49d01aff-8ffb-4cbc-aca0-9f9ec1cdb73e", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 992.0, + 902.0 + ], + [ + 1041.0, + 917.0 + ], + [ + 1015.0, + 938.0 + ], + [ + 966.0, + 922.0 + ] + ], + "center_px": [ + 1003.5, + 919.75 + ], + "quality": { + "area_px": 1407.5, + "perimeter_px": 169.01459884643555, + "sharpness": { + "laplacian_var": 202.21712799530312 + }, + "contrast": { + "p05": 11.0, + "p95": 135.0, + "dynamic_range": 124.0, + "mean_gray": 60.230610134436404, + "std_gray": 46.98590047860021 + }, + "geometry": { + "distance_to_center_norm": 0.5265568494796753, + "distance_to_border_px": 142.0 + }, + "edge_ratio": 1.5714104130928346, + "edge_lengths_px": [ + 51.244510650634766, + 33.42155075073242, + 51.54609680175781, + 32.80244064331055 + ] + }, + "confidence": 0.5971281121184089 + }, + { + "observation_id": "a0c88737-ee9c-4ee1-bb8e-d29a9827cf5b", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 828.0, + 160.0 + ], + [ + 872.0, + 162.0 + ], + [ + 849.0, + 192.0 + ], + [ + 804.0, + 188.0 + ] + ], + "center_px": [ + 838.25, + 175.5 + ], + "quality": { + "area_px": 1361.0, + "perimeter_px": 163.9031524658203, + "sharpness": { + "laplacian_var": 634.8821505010796 + }, + "contrast": { + "p05": 22.0, + "p95": 179.0, + "dynamic_range": 157.0, + "mean_gray": 93.81072210065645, + "std_gray": 65.74062367039625 + }, + "geometry": { + "distance_to_center_norm": 0.4257793128490448, + "distance_to_border_px": 160.0 + }, + "edge_ratio": 1.2250450560973367, + "edge_lengths_px": [ + 44.04542922973633, + 37.80211639404297, + 45.17742919921875, + 36.878177642822266 + ] + }, + "confidence": 0.740653030529222 + }, + { + "observation_id": "5de7d356-25ed-4d4c-bf2f-d6fc6139f00a", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 91.0, + 932.0 + ], + [ + 132.0, + 913.0 + ], + [ + 165.0, + 927.0 + ], + [ + 125.0, + 947.0 + ] + ], + "center_px": [ + 128.25, + 929.75 + ], + "quality": { + "area_px": 1240.5, + "perimeter_px": 162.91856002807617, + "sharpness": { + "laplacian_var": 640.6271417753217 + }, + "contrast": { + "p05": 17.0, + "p95": 172.0, + "dynamic_range": 155.0, + "mean_gray": 88.50410316529894, + "std_gray": 59.8365616473406 + }, + "geometry": { + "distance_to_center_norm": 0.7873013019561768, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.2605971300139012, + "edge_lengths_px": [ + 45.18849563598633, + 35.84689712524414, + 44.72135925292969, + 37.161808013916016 + ] + }, + "confidence": 0.6560383014602613 + }, + { + "observation_id": "c7f58962-f449-4631-9918-b3387ae99963", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 384.0, + 918.0 + ], + [ + 416.0, + 899.0 + ], + [ + 455.0, + 911.0 + ], + [ + 424.0, + 931.0 + ] + ], + "center_px": [ + 419.75, + 914.75 + ], + "quality": { + "area_px": 1164.0, + "perimeter_px": 156.97121810913086, + "sharpness": { + "laplacian_var": 1305.0180528018368 + }, + "contrast": { + "p05": 23.0, + "p95": 171.0, + "dynamic_range": 148.0, + "mean_gray": 125.7001287001287, + "std_gray": 50.591649190438574 + }, + "geometry": { + "distance_to_center_norm": 0.5335504412651062, + "distance_to_border_px": 149.0 + }, + "edge_ratio": 1.1400787327238997, + "edge_lengths_px": [ + 37.2155876159668, + 40.804412841796875, + 36.8917350769043, + 42.05948257446289 + ] + }, + "confidence": 0.6806547457875692 + }, + { + "observation_id": "60f41f6b-f3be-42d4-95ba-db1386627916", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1061.0, + 838.0 + ], + [ + 1107.0, + 851.0 + ], + [ + 1086.0, + 869.0 + ], + [ + 1038.0, + 855.0 + ] + ], + "center_px": [ + 1073.0, + 853.25 + ], + "quality": { + "area_px": 1119.5, + "perimeter_px": 154.0610065460205, + "sharpness": { + "laplacian_var": 699.1501103553894 + }, + "contrast": { + "p05": 27.0, + "p95": 147.0, + "dynamic_range": 120.0, + "mean_gray": 93.41610738255034, + "std_gray": 44.372659317587036 + }, + "geometry": { + "distance_to_center_norm": 0.5243862867355347, + "distance_to_border_px": 211.0 + }, + "edge_ratio": 1.8077537619585837, + "edge_lengths_px": [ + 47.801673889160156, + 27.658634185791016, + 50.0, + 28.600698471069336 + ] + }, + "confidence": 0.41285121294657384 + }, + { + "observation_id": "a8509046-b6c9-4982-aa7c-263cf7f448a6", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 205.0, + 850.0 + ], + [ + 240.0, + 834.0 + ], + [ + 272.0, + 846.0 + ], + [ + 238.0, + 862.0 + ] + ], + "center_px": [ + 238.75, + 848.0 + ], + "quality": { + "area_px": 934.0, + "perimeter_px": 145.35046768188477, + "sharpness": { + "laplacian_var": 1079.742643238912 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 86.53560830860535, + "std_gray": 57.948273841825284 + }, + "geometry": { + "distance_to_center_norm": 0.6348573565483093, + "distance_to_border_px": 205.0 + }, + "edge_ratio": 1.1260460248127115, + "edge_lengths_px": [ + 38.4837646484375, + 34.1760139465332, + 37.57658767700195, + 35.11410140991211 + ] + }, + "confidence": 0.5529673325477359 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 539.0, + 665.0 + ], + [ + 601.0, + 657.0 + ], + [ + 722.0, + 692.0 + ], + [ + 705.0, + 711.0 + ] + ], + "center_px": [ + 641.75, + 681.25 + ], + "area_px": 3537.0 + }, + { + "image_points_px": [ + [ + 513.0, + 939.0 + ], + [ + 547.0, + 920.0 + ], + [ + 585.0, + 935.0 + ], + [ + 554.0, + 954.0 + ] + ], + "center_px": [ + 549.75, + 937.0 + ], + "area_px": 1238.0 + }, + { + "image_points_px": [ + [ + 256.0, + 906.0 + ], + [ + 289.0, + 888.0 + ], + [ + 327.0, + 900.0 + ], + [ + 291.0, + 919.0 + ] + ], + "center_px": [ + 290.75, + 903.25 + ], + "area_px": 1106.5 + }, + { + "image_points_px": [ + [ + 1378.0, + 809.0 + ], + [ + 1388.0, + 794.0 + ], + [ + 1434.0, + 804.0 + ], + [ + 1425.0, + 819.0 + ] + ], + "center_px": [ + 1406.25, + 806.5 + ], + "area_px": 792.5 + }, + { + "image_points_px": [ + [ + 492.0, + 714.0 + ], + [ + 517.0, + 702.0 + ], + [ + 551.0, + 710.0 + ], + [ + 527.0, + 723.0 + ] + ], + "center_px": [ + 521.75, + 712.25 + ], + "area_px": 639.5 + }, + { + "image_points_px": [ + [ + 1357.0, + 753.0 + ], + [ + 1371.0, + 740.0 + ], + [ + 1413.0, + 751.0 + ], + [ + 1400.0, + 763.0 + ] + ], + "center_px": [ + 1385.25, + 751.75 + ], + "area_px": 673.0 + }, + { + "image_points_px": [ + [ + 861.0, + 864.0 + ], + [ + 906.0, + 866.0 + ], + [ + 914.0, + 872.0 + ], + [ + 888.0, + 873.0 + ] + ], + "center_px": [ + 892.25, + 868.75 + ], + "area_px": 257.5 + }, + { + "image_points_px": [ + [ + 910.0, + 411.0 + ], + [ + 902.0, + 436.0 + ], + [ + 884.0, + 439.0 + ], + [ + 897.0, + 405.0 + ] + ], + "center_px": [ + 898.25, + 422.75 + ], + "area_px": 473.0 + }, + { + "image_points_px": [ + [ + 926.0, + 925.0 + ], + [ + 927.0, + 944.0 + ], + [ + 919.0, + 968.0 + ], + [ + 918.0, + 955.0 + ] + ], + "center_px": [ + 922.5, + 948.0 + ], + "area_px": 155.0 + }, + { + "image_points_px": [ + [ + 848.0, + 907.0 + ], + [ + 854.0, + 911.0 + ], + [ + 859.0, + 937.0 + ], + [ + 857.0, + 945.0 + ] + ], + "center_px": [ + 854.5, + 925.0 + ], + "area_px": 142.0 + }, + { + "image_points_px": [ + [ + 973.0, + 589.0 + ], + [ + 977.0, + 595.0 + ], + [ + 965.0, + 626.0 + ], + [ + 962.0, + 618.0 + ] + ], + "center_px": [ + 969.25, + 607.0 + ], + "area_px": 185.5 + }, + { + "image_points_px": [ + [ + 946.0, + 260.0 + ], + [ + 928.0, + 294.0 + ], + [ + 936.0, + 270.0 + ], + [ + 942.0, + 260.0 + ] + ], + "center_px": [ + 938.0, + 271.0 + ], + "area_px": 100.0 + }, + { + "image_points_px": [ + [ + 831.0, + 639.0 + ], + [ + 795.0, + 649.0 + ], + [ + 796.0, + 645.0 + ], + [ + 812.0, + 640.0 + ] + ], + "center_px": [ + 808.5, + 643.25 + ], + "area_px": 106.5 + }, + { + "image_points_px": [ + [ + 957.0, + 355.0 + ], + [ + 971.0, + 365.0 + ], + [ + 967.0, + 381.0 + ], + [ + 961.0, + 372.0 + ] + ], + "center_px": [ + 964.0, + 368.25 + ], + "area_px": 165.0 + }, + { + "image_points_px": [ + [ + 1107.0, + 214.0 + ], + [ + 1106.0, + 229.0 + ], + [ + 1099.0, + 243.0 + ], + [ + 1103.0, + 219.0 + ] + ], + "center_px": [ + 1103.75, + 226.25 + ], + "area_px": 83.5 + }, + { + "image_points_px": [ + [ + 275.0, + 926.0 + ], + [ + 284.0, + 927.0 + ], + [ + 303.0, + 935.0 + ], + [ + 277.0, + 929.0 + ] + ], + "center_px": [ + 284.75, + 929.25 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 927.0, + 944.0 + ], + [ + 921.0, + 969.0 + ], + [ + 918.0, + 971.0 + ], + [ + 922.0, + 951.0 + ] + ], + "center_px": [ + 922.0, + 958.75 + ], + "area_px": 67.5 + }, + { + "image_points_px": [ + [ + 507.0, + 975.0 + ], + [ + 526.0, + 982.0 + ], + [ + 529.0, + 986.0 + ], + [ + 509.0, + 979.0 + ] + ], + "center_px": [ + 517.75, + 980.5 + ], + "area_px": 60.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/render_d_camera_pose.json b/data/camera_study/Scene10/k4_abdg/render_d_camera_pose.json new file mode 100644 index 0000000..46f5e7b --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/render_d_camera_pose.json @@ -0,0 +1,285 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:04Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abdg\\render_d_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "d", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 6, + "used_marker_ids": [ + 95, + 208, + 69, + 103, + 214, + 64 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.010671415477997622, + 0.0018696542807179611, + 0.001824150025738836, + 0.0018241474426834877 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.164164330259058, + "residual_median_px": 5.398072385043921, + "residual_max_px": 7.027422341283123, + "sigma2_normalized": 6.6550277836154934e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8166700601577759, + 0.5771039724349976, + -0.0010227123275399208 + ], + [ + 0.16298067569732666, + -0.2323361337184906, + -0.9588833451271057 + ], + [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + ], + "translation_m": [ + -0.11485252529382706, + 0.08547275513410568, + 1.1249300241470337 + ], + "rvec_rad": [ + 1.7923624327425687, + 0.5686287097896567, + -0.4261428430202902 + ] + }, + "camera_in_world": { + "position_m": [ + 0.7026420831680298, + -0.7945951223373413, + 0.4010946750640869 + ], + "position_mm": [ + 702.64208984375, + -794.5950927734375, + 401.09466552734375 + ], + "orientation_deg": { + "roll": 109.92484283447266, + "pitch": 33.615230560302734, + "yaw": 11.286093711853027 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.0003498424001015397, + 6.823486661029942e-05, + 4.142063730678703e-05, + -5.345001723379169e-06, + -7.396858110018478e-05, + -1.2641475041979003e-05 + ], + [ + 6.823486661029988e-05, + 0.00010295516106391171, + -9.137229494897015e-05, + 2.281178954254835e-05, + -1.979611332364414e-05, + -7.605354993482835e-06 + ], + [ + 4.142063730678625e-05, + -9.137229494897096e-05, + 0.0002702927022549336, + -4.213130837183371e-05, + -7.56149612726986e-06, + 9.26150663825411e-06 + ], + [ + -5.345001723379082e-06, + 2.281178954254845e-05, + -4.2131308371833616e-05, + 8.962887675732753e-06, + -2.575675434153523e-07, + -3.848871385514968e-06 + ], + [ + -7.396858110018466e-05, + -1.9796113323644056e-05, + -7.561496127270001e-06, + -2.575675434153093e-07, + 1.8000566759428326e-05, + 7.99389653027148e-06 + ], + [ + -1.2641475041978559e-05, + -7.605354993482897e-06, + 9.261506638254348e-06, + -3.848871385514858e-06, + 7.993896530271401e-06, + 2.7756310749504287e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 1.07166452425966, + 0.581362070062273, + 0.9419759016685776 + ], + "tvec_std_m": [ + 0.0029938082229382617, + 0.004242707479832698, + 0.005268425832210631 + ] + }, + "camera_center_std_m": [ + 0.01190826606439346, + 0.013088153786860686, + 0.01603645350806163 + ], + "camera_center_std_mm": [ + 11.90826606439346, + 13.088153786860685, + 16.03645350806163 + ], + "orientation_std_deg": { + "roll": 1.2477636245413861, + "pitch": 0.8325671808473429, + "yaw": 0.699613718760565 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 421.5, + 1048.25 + ], + "projected_center_px": [ + 423.55438232421875, + 1045.9644775390625 + ], + "reprojection_error_px": 3.0731253885112206, + "confidence": 0.20059440065661768 + }, + { + "marker_id": 208, + "observed_center_px": [ + 1003.5, + 919.75 + ], + "projected_center_px": [ + 996.4899291992188, + 920.2435302734375 + ], + "reprojection_error_px": 7.027422341283123, + "confidence": 0.5971281121184089 + }, + { + "marker_id": 69, + "observed_center_px": [ + 128.25, + 929.75 + ], + "projected_center_px": [ + 123.95993041992188, + 934.0740966796875 + ], + "reprojection_error_px": 6.091182898025322, + "confidence": 0.6560383014602613 + }, + { + "marker_id": 103, + "observed_center_px": [ + 419.75, + 914.75 + ], + "projected_center_px": [ + 425.61590576171875, + 913.2058715820312 + ], + "reprojection_error_px": 6.065738452698394, + "confidence": 0.6806547457875692 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1073.0, + 853.25 + ], + "projected_center_px": [ + 1077.615234375, + 854.2874755859375 + ], + "reprojection_error_px": 4.730406317389448, + "confidence": 0.41285121294657384 + }, + { + "marker_id": 64, + "observed_center_px": [ + 238.75, + 848.0 + ], + "projected_center_px": [ + 237.76194763183594, + 846.0165405273438 + ], + "reprojection_error_px": 2.2159329777555143, + "confidence": 0.5529673325477359 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/render_g_aruco_detection.json b/data/camera_study/Scene10/k4_abdg/render_g_aruco_detection.json new file mode 100644 index 0000000..09790b7 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/render_g_aruco_detection.json @@ -0,0 +1,2224 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:03Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "g", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.npz", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.png", + "image_sha256": "6f328ef148dd5b73d40dbd9254ac0545dbd7393ed4666dd8eee8d3e346b4448b", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 37, + "num_rejected_candidates": 7 + }, + "detections": [ + { + "observation_id": "9490d47c-c8be-4c3f-8bef-6cac793980b3", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 361.0, + 538.0 + ], + [ + 334.0, + 513.0 + ], + [ + 364.0, + 489.0 + ], + [ + 391.0, + 513.0 + ] + ], + "center_px": [ + 362.5, + 513.25 + ], + "quality": { + "area_px": 1396.5, + "perimeter_px": 150.3915138244629, + "sharpness": { + "laplacian_var": 1014.5935798624517 + }, + "contrast": { + "p05": 15.0, + "p95": 168.0, + "dynamic_range": 153.0, + "mean_gray": 87.64736297828335, + "std_gray": 65.25681309567548 + }, + "geometry": { + "distance_to_center_norm": 0.3983326554298401, + "distance_to_border_px": 334.0 + }, + "edge_ratio": 1.0810098739215166, + "edge_lengths_px": [ + 36.79673767089844, + 38.41874694824219, + 36.12478256225586, + 39.051246643066406 + ] + }, + "confidence": 0.8612317264250932 + }, + { + "observation_id": "f93b7950-d7f0-434f-a6e8-9aa03e880ce1", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 490.0, + 612.0 + ], + [ + 463.0, + 586.0 + ], + [ + 492.0, + 572.0 + ], + [ + 518.0, + 598.0 + ] + ], + "center_px": [ + 490.75, + 592.0 + ], + "quality": { + "area_px": 1112.0, + "perimeter_px": 137.76032066345215, + "sharpness": { + "laplacian_var": 1213.9038992326398 + }, + "contrast": { + "p05": 22.0, + "p95": 181.0, + "dynamic_range": 159.0, + "mean_gray": 82.85922974767597, + "std_gray": 68.84435047820993 + }, + "geometry": { + "distance_to_center_norm": 0.26119279861450195, + "distance_to_border_px": 463.0 + }, + "edge_ratio": 1.1973610126869798, + "edge_lengths_px": [ + 37.48332977294922, + 32.202484130859375, + 36.769554138183594, + 31.30495262145996 + ] + }, + "confidence": 0.619139361878602 + }, + { + "observation_id": "70a1f8fc-61bf-4254-bcb0-ff2b5cd11fab", + "type": "aruco", + "marker_id": 86, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 94.0, + 958.0 + ], + [ + 68.0, + 982.0 + ], + [ + 47.0, + 960.0 + ], + [ + 73.0, + 936.0 + ] + ], + "center_px": [ + 70.5, + 959.0 + ], + "quality": { + "area_px": 1076.0, + "perimeter_px": 131.59485244750977, + "sharpness": { + "laplacian_var": 500.4565883722073 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 68.66531713900135, + "std_gray": 56.437884581126355 + }, + "geometry": { + "distance_to_center_norm": 0.8588042259216309, + "distance_to_border_px": 47.0 + }, + "edge_ratio": 1.1634060487042286, + "edge_lengths_px": [ + 35.38361358642578, + 30.4138126373291, + 35.38361358642578, + 30.4138126373291 + ] + }, + "confidence": 0.5795855489013004 + }, + { + "observation_id": "05c0bf5f-3abc-4b9d-9a2b-76e49dc6eb46", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 944.0, + 859.0 + ], + [ + 923.0, + 881.0 + ], + [ + 899.0, + 859.0 + ], + [ + 921.0, + 837.0 + ] + ], + "center_px": [ + 921.75, + 859.0 + ], + "quality": { + "area_px": 990.0, + "perimeter_px": 125.91181182861328, + "sharpness": { + "laplacian_var": 1254.5651387199953 + }, + "contrast": { + "p05": 37.0, + "p95": 176.0, + "dynamic_range": 139.0, + "mean_gray": 94.86206896551724, + "std_gray": 57.98150599974307 + }, + "geometry": { + "distance_to_center_norm": 0.41938236355781555, + "distance_to_border_px": 199.0 + }, + "edge_ratio": 1.070488611997406, + "edge_lengths_px": [ + 30.4138126373291, + 32.557640075683594, + 31.11269760131836, + 31.827661514282227 + ] + }, + "confidence": 0.616540888528013 + }, + { + "observation_id": "cbf47c74-22f9-447d-924a-850bce536f48", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 442.0, + 549.0 + ], + [ + 415.0, + 524.0 + ], + [ + 437.0, + 520.0 + ], + [ + 464.0, + 545.0 + ] + ], + "center_px": [ + 439.5, + 534.5 + ], + "quality": { + "area_px": 658.0, + "perimeter_px": 118.31483459472656, + "sharpness": { + "laplacian_var": 2355.6744409733983 + }, + "contrast": { + "p05": 23.0, + "p95": 180.0, + "dynamic_range": 157.0, + "mean_gray": 108.16359918200409, + "std_gray": 61.881853788931394 + }, + "geometry": { + "distance_to_center_norm": 0.31172657012939453, + "distance_to_border_px": 415.0 + }, + "edge_ratio": 1.6456001465781875, + "edge_lengths_px": [ + 36.79673767089844, + 22.360679626464844, + 36.79673767089844, + 22.360679626464844 + ] + }, + "confidence": 0.2665694139483502 + }, + { + "observation_id": "9db95869-141e-4f84-be77-0e7846bca532", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 565.0, + 714.0 + ], + [ + 544.0, + 692.0 + ], + [ + 568.0, + 672.0 + ], + [ + 589.0, + 694.0 + ] + ], + "center_px": [ + 566.5, + 693.0 + ], + "quality": { + "area_px": 948.0, + "perimeter_px": 123.30962371826172, + "sharpness": { + "laplacian_var": 948.7205075308444 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 87.45253164556962, + "std_gray": 63.36793023445192 + }, + "geometry": { + "distance_to_center_norm": 0.24080945551395416, + "distance_to_border_px": 366.0 + }, + "edge_ratio": 1.027197727372641, + "edge_lengths_px": [ + 30.4138126373291, + 31.240999221801758, + 30.4138126373291, + 31.240999221801758 + ] + }, + "confidence": 0.6152661587526339 + }, + { + "observation_id": "7e2a0db2-7a13-4c61-b1e8-3d5ce4d459e9", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 903.0, + 772.0 + ], + [ + 882.0, + 794.0 + ], + [ + 858.0, + 773.0 + ], + [ + 879.0, + 752.0 + ] + ], + "center_px": [ + 880.5, + 772.75 + ], + "quality": { + "area_px": 946.5, + "perimeter_px": 123.24373435974121, + "sharpness": { + "laplacian_var": 1446.0998691484099 + }, + "contrast": { + "p05": 34.0, + "p95": 175.0, + "dynamic_range": 141.0, + "mean_gray": 92.60221870047543, + "std_gray": 58.54318515049794 + }, + "geometry": { + "distance_to_center_norm": 0.31413766741752625, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 1.0738069198414777, + "edge_lengths_px": [ + 30.4138126373291, + 31.890438079833984, + 29.698484420776367, + 31.240999221801758 + ] + }, + "confidence": 0.5876289194459208 + }, + { + "observation_id": "08532025-e7da-45d9-9378-4ebe541381b5", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 138.0, + 787.0 + ], + [ + 113.0, + 809.0 + ], + [ + 93.0, + 789.0 + ], + [ + 118.0, + 767.0 + ] + ], + "center_px": [ + 115.5, + 788.0 + ], + "quality": { + "area_px": 940.0, + "perimeter_px": 123.17184448242188, + "sharpness": { + "laplacian_var": 604.4415315905076 + }, + "contrast": { + "p05": 6.0, + "p95": 133.0, + "dynamic_range": 127.0, + "mean_gray": 50.246422893481714, + "std_gray": 50.2390597357709 + }, + "geometry": { + "distance_to_center_norm": 0.725993812084198, + "distance_to_border_px": 93.0 + }, + "edge_ratio": 1.177391162675776, + "edge_lengths_px": [ + 33.30165100097656, + 28.284271240234375, + 33.30165100097656, + 28.284271240234375 + ] + }, + "confidence": 0.5322501871361803 + }, + { + "observation_id": "947be5df-4cdf-46c3-b09c-53c07a3957e4", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 999.0, + 755.0 + ], + [ + 978.0, + 776.0 + ], + [ + 955.0, + 755.0 + ], + [ + 976.0, + 734.0 + ] + ], + "center_px": [ + 977.0, + 755.0 + ], + "quality": { + "area_px": 924.0, + "perimeter_px": 121.68661499023438, + "sharpness": { + "laplacian_var": 1427.420428863967 + }, + "contrast": { + "p05": 40.0, + "p95": 177.0, + "dynamic_range": 137.0, + "mean_gray": 98.6042345276873, + "std_gray": 56.7245592071717 + }, + "geometry": { + "distance_to_center_norm": 0.37230345606803894, + "distance_to_border_px": 304.0 + }, + "edge_ratio": 1.0487007563440722, + "edge_lengths_px": [ + 29.698484420776367, + 31.14482307434082, + 29.698484420776367, + 31.14482307434082 + ] + }, + "confidence": 0.5873934926369923 + }, + { + "observation_id": "6c0802a2-50d3-4783-8e61-4fd1bda64f19", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 76.0, + 765.0 + ], + [ + 50.0, + 785.0 + ], + [ + 32.0, + 764.0 + ], + [ + 58.0, + 744.0 + ] + ], + "center_px": [ + 54.0, + 764.5 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.92214965820312, + "sharpness": { + "laplacian_var": 1149.1764888888888 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 87.18, + "std_gray": 50.17918824904737 + }, + "geometry": { + "distance_to_center_norm": 0.7809113264083862, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.1859747094873558, + "edge_lengths_px": [ + 32.80244064331055, + 27.658634185791016, + 32.80244064331055, + 27.658634185791016 + ] + }, + "confidence": 0.32594286952973284 + }, + { + "observation_id": "4aeb677d-3b6e-496f-b33b-9dc7462bb3ec", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 823.0, + 743.0 + ], + [ + 803.0, + 765.0 + ], + [ + 779.0, + 745.0 + ], + [ + 799.0, + 724.0 + ] + ], + "center_px": [ + 801.0, + 744.25 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.58359336853027, + "sharpness": { + "laplacian_var": 1584.9415918166465 + }, + "contrast": { + "p05": 30.0, + "p95": 174.0, + "dynamic_range": 144.0, + "mean_gray": 126.23913043478261, + "std_gray": 56.63381767927601 + }, + "geometry": { + "distance_to_center_norm": 0.24413886666297913, + "distance_to_border_px": 315.0 + }, + "edge_ratio": 1.0772758352345433, + "edge_lengths_px": [ + 29.73213768005371, + 31.240999221801758, + 29.0, + 30.610456466674805 + ] + }, + "confidence": 0.5606734879266068 + }, + { + "observation_id": "21857478-2412-428d-b1be-6bbe65f7d150", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 747.0, + 705.0 + ], + [ + 724.0, + 724.0 + ], + [ + 703.0, + 703.0 + ], + [ + 726.0, + 683.0 + ] + ], + "center_px": [ + 725.0, + 703.75 + ], + "quality": { + "area_px": 904.0, + "perimeter_px": 120.42466735839844, + "sharpness": { + "laplacian_var": 1425.730397310992 + }, + "contrast": { + "p05": 25.0, + "p95": 173.0, + "dynamic_range": 148.0, + "mean_gray": 88.02341137123746, + "std_gray": 60.58805571551177 + }, + "geometry": { + "distance_to_center_norm": 0.18202924728393555, + "distance_to_border_px": 356.0 + }, + "edge_ratio": 1.0262982208923905, + "edge_lengths_px": [ + 29.832868576049805, + 29.698484420776367, + 30.479501724243164, + 30.4138126373291 + ] + }, + "confidence": 0.5872237273710109 + }, + { + "observation_id": "aa019427-4073-4c48-a447-d49a96b92498", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 119.0, + 710.0 + ], + [ + 94.0, + 730.0 + ], + [ + 76.0, + 709.0 + ], + [ + 102.0, + 690.0 + ] + ], + "center_px": [ + 97.75, + 709.75 + ], + "quality": { + "area_px": 864.0, + "perimeter_px": 118.12554931640625, + "sharpness": { + "laplacian_var": 968.3578168166666 + }, + "contrast": { + "p05": 6.0, + "p95": 136.0, + "dynamic_range": 130.0, + "mean_gray": 46.16981132075472, + "std_gray": 49.20730448013899 + }, + "geometry": { + "distance_to_center_norm": 0.7166538238525391, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.226816924595493, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 32.202484130859375, + 26.248809814453125 + ] + }, + "confidence": 0.46950770604173 + }, + { + "observation_id": "3a1e44c7-ee7b-413a-a7e1-c9dfd5d8ff09", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 73.0, + 695.0 + ], + [ + 48.0, + 715.0 + ], + [ + 30.0, + 694.0 + ], + [ + 55.0, + 675.0 + ] + ], + "center_px": [ + 51.5, + 694.75 + ], + "quality": { + "area_px": 863.5, + "perimeter_px": 117.98213958740234, + "sharpness": { + "laplacian_var": 900.750086057507 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 80.92109777015438, + "std_gray": 51.03488818616118 + }, + "geometry": { + "distance_to_center_norm": 0.7624196410179138, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 31.400636672973633, + 26.90724754333496 + ] + }, + "confidence": 0.2902883953953809 + }, + { + "observation_id": "774af5a6-b21d-4145-8b66-4bbb95eade08", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 50.0, + 652.0 + ], + [ + 25.0, + 672.0 + ], + [ + 7.0, + 652.0 + ], + [ + 31.0, + 632.0 + ] + ], + "center_px": [ + 28.25, + 652.0 + ], + "quality": { + "area_px": 860.0, + "perimeter_px": 117.75009727478027, + "sharpness": { + "laplacian_var": 765.5794806391044 + }, + "contrast": { + "p05": 6.0, + "p95": 138.0, + "dynamic_range": 132.0, + "mean_gray": 60.22508591065292, + "std_gray": 51.90037234016344 + }, + "geometry": { + "distance_to_center_norm": 0.778620183467865, + "distance_to_border_px": 7.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 26.90724754333496, + 31.240999221801758, + 27.58622932434082 + ] + }, + "confidence": 0.06745941479560678 + }, + { + "observation_id": "98a94795-5fbd-4f4f-b2ae-fdd042a40026", + "type": "aruco", + "marker_id": 79, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 603.0, + 594.0 + ], + [ + 579.0, + 612.0 + ], + [ + 561.0, + 592.0 + ], + [ + 584.0, + 574.0 + ] + ], + "center_px": [ + 581.75, + 593.0 + ], + "quality": { + "area_px": 803.0, + "perimeter_px": 113.69964027404785, + "sharpness": { + "laplacian_var": 1656.0680687854385 + }, + "contrast": { + "p05": 12.0, + "p95": 161.0, + "dynamic_range": 149.0, + "mean_gray": 98.64845173041894, + "std_gray": 55.913593747198206 + }, + "geometry": { + "distance_to_center_norm": 0.16451223194599152, + "distance_to_border_px": 468.0 + }, + "edge_ratio": 1.1149412421944707, + "edge_lengths_px": [ + 30.0, + 26.90724754333496, + 29.20616340637207, + 27.58622932434082 + ] + }, + "confidence": 0.48014488393995497 + }, + { + "observation_id": "50df7dde-11bc-48ff-8bef-4d584db83f34", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 532.0 + ], + [ + 698.0, + 550.0 + ], + [ + 678.0, + 531.0 + ], + [ + 700.0, + 513.0 + ] + ], + "center_px": [ + 699.0, + 531.5 + ], + "quality": { + "area_px": 778.0, + "perimeter_px": 112.02313995361328, + "sharpness": { + "laplacian_var": 1630.603042441958 + }, + "contrast": { + "p05": 23.0, + "p95": 174.0, + "dynamic_range": 151.0, + "mean_gray": 95.26275992438563, + "std_gray": 62.75795126376546 + }, + "geometry": { + "distance_to_center_norm": 0.025172246620059013, + "distance_to_border_px": 513.0 + }, + "edge_ratio": 1.0304177609146679, + "edge_lengths_px": [ + 28.42534065246582, + 27.58622932434082, + 28.42534065246582, + 27.58622932434082 + ] + }, + "confidence": 0.5033557129355607 + }, + { + "observation_id": "ab30fd44-1360-4b5b-8b89-ad857099a2b6", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 879.0, + 509.0 + ], + [ + 858.0, + 527.0 + ], + [ + 837.0, + 508.0 + ], + [ + 857.0, + 490.0 + ] + ], + "center_px": [ + 857.75, + 508.5 + ], + "quality": { + "area_px": 776.5, + "perimeter_px": 111.95437049865723, + "sharpness": { + "laplacian_var": 1308.7119920798898 + }, + "contrast": { + "p05": 28.0, + "p95": 174.0, + "dynamic_range": 146.0, + "mean_gray": 80.56060606060606, + "std_gray": 60.05184093458493 + }, + "geometry": { + "distance_to_center_norm": 0.1570063829421997, + "distance_to_border_px": 490.0 + }, + "edge_ratio": 1.0803365840024208, + "edge_lengths_px": [ + 27.658634185791016, + 28.319604873657227, + 26.90724754333496, + 29.068883895874023 + ] + }, + "confidence": 0.4791716529202595 + }, + { + "observation_id": "dacd263c-6f04-4407-9bd9-bec0b7c7d376", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 692.0, + 463.0 + ], + [ + 670.0, + 480.0 + ], + [ + 650.0, + 462.0 + ], + [ + 672.0, + 445.0 + ] + ], + "center_px": [ + 671.0, + 462.5 + ], + "quality": { + "area_px": 736.0, + "perimeter_px": 109.42024993896484, + "sharpness": { + "laplacian_var": 1430.0492813475546 + }, + "contrast": { + "p05": 18.0, + "p95": 168.0, + "dynamic_range": 150.0, + "mean_gray": 84.02217741935483, + "std_gray": 61.295601129603824 + }, + "geometry": { + "distance_to_center_norm": 0.10187894850969315, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 1.0332858231363153, + "edge_lengths_px": [ + 27.80287742614746, + 26.90724754333496, + 27.80287742614746, + 26.90724754333496 + ] + }, + "confidence": 0.47486054263026106 + }, + { + "observation_id": "fb3573d7-d1f7-490b-936d-91c88c260709", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 226.0, + 383.0 + ], + [ + 209.0, + 365.0 + ], + [ + 233.0, + 348.0 + ], + [ + 250.0, + 366.0 + ] + ], + "center_px": [ + 229.5, + 365.5 + ], + "quality": { + "area_px": 721.0, + "perimeter_px": 108.33943939208984, + "sharpness": { + "laplacian_var": 1811.1556224254036 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 72.70393374741201, + "std_gray": 58.0764945436627 + }, + "geometry": { + "distance_to_center_norm": 0.5784616470336914, + "distance_to_border_px": 209.0 + }, + "edge_ratio": 1.187894376916731, + "edge_lengths_px": [ + 24.75883674621582, + 29.4108829498291, + 24.75883674621582, + 29.4108829498291 + ] + }, + "confidence": 0.4046375469124394 + }, + { + "observation_id": "d8cd88c0-fc99-4082-8a4c-49c92fab93bf", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 437.0 + ], + [ + 765.0, + 454.0 + ], + [ + 745.0, + 436.0 + ], + [ + 767.0, + 419.0 + ] + ], + "center_px": [ + 765.75, + 436.5 + ], + "quality": { + "area_px": 718.5, + "perimeter_px": 107.90114212036133, + "sharpness": { + "laplacian_var": 1491.443337468285 + }, + "contrast": { + "p05": 22.0, + "p95": 171.0, + "dynamic_range": 149.0, + "mean_gray": 109.3970893970894, + "std_gray": 60.642148532506475 + }, + "geometry": { + "distance_to_center_norm": 0.12573395669460297, + "distance_to_border_px": 419.0 + }, + "edge_ratio": 1.0622933508624515, + "edge_lengths_px": [ + 27.018512725830078, + 26.90724754333496, + 27.80287742614746, + 26.172504425048828 + ] + }, + "confidence": 0.4509112286273005 + }, + { + "observation_id": "f159a902-6cad-4578-9cce-edc71312f852", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 730.0, + 434.0 + ], + [ + 708.0, + 452.0 + ], + [ + 689.0, + 434.0 + ], + [ + 710.0, + 417.0 + ] + ], + "center_px": [ + 709.25, + 434.25 + ], + "quality": { + "area_px": 717.5, + "perimeter_px": 107.86516761779785, + "sharpness": { + "laplacian_var": 1736.662652737497 + }, + "contrast": { + "p05": 19.0, + "p95": 167.0, + "dynamic_range": 148.0, + "mean_gray": 58.66320166320166, + "std_gray": 55.157409197074806 + }, + "geometry": { + "distance_to_center_norm": 0.11810554563999176, + "distance_to_border_px": 417.0 + }, + "edge_ratio": 1.0860764484296306, + "edge_lengths_px": [ + 28.42534065246582, + 26.172504425048828, + 27.018512725830078, + 26.248809814453125 + ] + }, + "confidence": 0.44042326304466006 + }, + { + "observation_id": "f0d73213-3d44-4390-9e4a-46cc50d43afd", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 576.0, + 320.0 + ], + [ + 550.0, + 337.0 + ], + [ + 536.0, + 319.0 + ], + [ + 558.0, + 303.0 + ] + ], + "center_px": [ + 555.0, + 319.75 + ], + "quality": { + "area_px": 684.0, + "perimeter_px": 105.82973670959473, + "sharpness": { + "laplacian_var": 2755.9650784771356 + }, + "contrast": { + "p05": 18.3, + "p95": 164.0, + "dynamic_range": 145.7, + "mean_gray": 118.58029978586724, + "std_gray": 53.53363006243584 + }, + "geometry": { + "distance_to_center_norm": 0.30577781796455383, + "distance_to_border_px": 303.0 + }, + "edge_ratio": 1.362266203821036, + "edge_lengths_px": [ + 31.064449310302734, + 22.803508758544922, + 27.20294189453125, + 24.75883674621582 + ] + }, + "confidence": 0.33473633767097827 + }, + { + "observation_id": "c5ff8f9a-6e48-4567-b265-2b0b105d6950", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 146.0, + 302.0 + ], + [ + 128.0, + 284.0 + ], + [ + 151.0, + 268.0 + ], + [ + 168.0, + 285.0 + ] + ], + "center_px": [ + 148.25, + 284.75 + ], + "quality": { + "area_px": 682.5, + "perimeter_px": 105.31820297241211, + "sharpness": { + "laplacian_var": 1274.9818476124406 + }, + "contrast": { + "p05": 8.0, + "p95": 153.0, + "dynamic_range": 145.0, + "mean_gray": 78.65806451612903, + "std_gray": 55.65065056297059 + }, + "geometry": { + "distance_to_center_norm": 0.6957105398178101, + "distance_to_border_px": 128.0 + }, + "edge_ratio": 1.1653889989621362, + "edge_lengths_px": [ + 25.45584487915039, + 28.017850875854492, + 24.041629791259766, + 27.80287742614746 + ] + }, + "confidence": 0.3904275743165678 + }, + { + "observation_id": "4c4687e3-30d4-4637-b73e-4d06df2a63d6", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 561.0, + 509.0 + ], + [ + 545.0, + 479.0 + ], + [ + 562.0, + 476.0 + ], + [ + 579.0, + 506.0 + ] + ], + "center_px": [ + 561.75, + 492.5 + ], + "quality": { + "area_px": 574.5, + "perimeter_px": 103.99284362792969, + "sharpness": { + "laplacian_var": 2618.6153012470177 + }, + "contrast": { + "p05": 28.0, + "p95": 182.0, + "dynamic_range": 154.0, + "mean_gray": 76.1413881748072, + "std_gray": 60.266572002236316 + }, + "geometry": { + "distance_to_center_norm": 0.18358337879180908, + "distance_to_border_px": 476.0 + }, + "edge_ratio": 1.997481717814946, + "edge_lengths_px": [ + 34.0, + 17.262676239013672, + 34.48188018798828, + 18.248287200927734 + ] + }, + "confidence": 0.19174142951303974 + }, + { + "observation_id": "25b90c9b-b52c-4172-8bae-729ee43dc2b8", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 349.0, + 309.0 + ], + [ + 327.0, + 326.0 + ], + [ + 309.0, + 310.0 + ], + [ + 330.0, + 293.0 + ] + ], + "center_px": [ + 328.75, + 309.5 + ], + "quality": { + "area_px": 658.5, + "perimeter_px": 103.74406433105469, + "sharpness": { + "laplacian_var": 1094.0317657154478 + }, + "contrast": { + "p05": 9.0, + "p95": 158.0, + "dynamic_range": 149.0, + "mean_gray": 66.65924276169265, + "std_gray": 58.28183701574557 + }, + "geometry": { + "distance_to_center_norm": 0.5045555830001831, + "distance_to_border_px": 293.0 + }, + "edge_ratio": 1.1544516556294537, + "edge_lengths_px": [ + 27.80287742614746, + 24.083189010620117, + 27.018512725830078, + 24.83948516845703 + ] + }, + "confidence": 0.38026711457279644 + }, + { + "observation_id": "4dad30f1-5f9a-403e-8117-8e39ccd011d0", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 341.0 + ], + [ + 501.0, + 358.0 + ], + [ + 483.0, + 341.0 + ], + [ + 503.0, + 325.0 + ] + ], + "center_px": [ + 502.25, + 341.25 + ], + "quality": { + "area_px": 643.5, + "perimeter_px": 102.22933197021484, + "sharpness": { + "laplacian_var": 792.6312567894008 + }, + "contrast": { + "p05": 12.0, + "p95": 156.59999999999997, + "dynamic_range": 144.59999999999997, + "mean_gray": 44.28285077951002, + "std_gray": 50.37014613113326 + }, + "geometry": { + "distance_to_center_norm": 0.32757362723350525, + "distance_to_border_px": 325.0 + }, + "edge_ratio": 1.0912674534258815, + "edge_lengths_px": [ + 27.018512725830078, + 24.75883674621582, + 25.612497329711914, + 24.83948516845703 + ] + }, + "confidence": 0.3931208602008742 + }, + { + "observation_id": "a6fc9701-aa87-4f7a-a18b-2c6ddec38908", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 378.0, + 281.0 + ], + [ + 356.0, + 296.0 + ], + [ + 340.0, + 278.0 + ], + [ + 362.0, + 263.0 + ] + ], + "center_px": [ + 359.0, + 279.5 + ], + "quality": { + "area_px": 636.0, + "perimeter_px": 101.42048645019531, + "sharpness": { + "laplacian_var": 1475.439773960402 + }, + "contrast": { + "p05": 12.0, + "p95": 159.0, + "dynamic_range": 147.0, + "mean_gray": 104.82805429864253, + "std_gray": 54.152686185461974 + }, + "geometry": { + "distance_to_center_norm": 0.49463948607444763, + "distance_to_border_px": 263.0 + }, + "edge_ratio": 1.1056282539133682, + "edge_lengths_px": [ + 26.62705421447754, + 24.083189010620117, + 26.62705421447754, + 24.083189010620117 + ] + }, + "confidence": 0.3834923705135548 + }, + { + "observation_id": "b2c843b2-2543-4c03-97f7-e6bf5ca0240b", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 444.0, + 258.0 + ], + [ + 425.0, + 275.0 + ], + [ + 406.0, + 259.0 + ], + [ + 427.0, + 243.0 + ] + ], + "center_px": [ + 425.5, + 258.75 + ], + "quality": { + "area_px": 607.0, + "perimeter_px": 99.40690803527832, + "sharpness": { + "laplacian_var": 1418.6926709234967 + }, + "contrast": { + "p05": 11.0, + "p95": 160.0, + "dynamic_range": 149.0, + "mean_gray": 106.14797136038186, + "std_gray": 57.2326997711296 + }, + "geometry": { + "distance_to_center_norm": 0.45247167348861694, + "distance_to_border_px": 243.0 + }, + "edge_ratio": 1.1644874731532113, + "edge_lengths_px": [ + 25.495098114013672, + 24.83948516845703, + 26.4007568359375, + 22.671567916870117 + ] + }, + "confidence": 0.3475062428717297 + }, + { + "observation_id": "a896045f-d72e-4934-8705-bfd95bdd12ca", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 540.0, + 214.0 + ], + [ + 518.0, + 229.0 + ], + [ + 502.0, + 212.0 + ], + [ + 524.0, + 198.0 + ] + ], + "center_px": [ + 521.0, + 213.25 + ], + "quality": { + "area_px": 595.0, + "perimeter_px": 98.67651557922363, + "sharpness": { + "laplacian_var": 2376.767235312675 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 88.00492610837438, + "std_gray": 57.82609375178821 + }, + "geometry": { + "distance_to_center_norm": 0.425087571144104, + "distance_to_border_px": 198.0 + }, + "edge_ratio": 1.176760682519333, + "edge_lengths_px": [ + 26.62705421447754, + 23.34523582458496, + 26.07680892944336, + 22.627416610717773 + ] + }, + "confidence": 0.3370835485575886 + }, + { + "observation_id": "2f97317c-ff74-4db6-99e7-7f7b509ef01d", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 435.0, + 187.0 + ], + [ + 413.0, + 203.0 + ], + [ + 397.0, + 188.0 + ], + [ + 416.0, + 172.0 + ] + ], + "center_px": [ + 415.25, + 187.5 + ], + "quality": { + "area_px": 587.5, + "perimeter_px": 98.18157768249512, + "sharpness": { + "laplacian_var": 1963.1431301414739 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 65.73891625615764, + "std_gray": 57.77965459852634 + }, + "geometry": { + "distance_to_center_norm": 0.5177453756332397, + "distance_to_border_px": 172.0 + }, + "edge_ratio": 1.2403473347124077, + "edge_lengths_px": [ + 27.20294189453125, + 21.931713104248047, + 24.83948516845703, + 24.20743751525879 + ] + }, + "confidence": 0.3157717646545193 + }, + { + "observation_id": "b7e953a8-1a1f-4dce-afd1-26d56f0b15dc", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 295.0, + 182.0 + ], + [ + 274.0, + 199.0 + ], + [ + 257.0, + 184.0 + ], + [ + 277.0, + 168.0 + ] + ], + "center_px": [ + 275.75, + 183.25 + ], + "quality": { + "area_px": 586.0, + "perimeter_px": 98.10608673095703, + "sharpness": { + "laplacian_var": 1004.0248132785243 + }, + "contrast": { + "p05": 8.0, + "p95": 152.0, + "dynamic_range": 144.0, + "mean_gray": 57.34663341645885, + "std_gray": 54.68788834886238 + }, + "geometry": { + "distance_to_center_norm": 0.6330687999725342, + "distance_to_border_px": 168.0 + }, + "edge_ratio": 1.1917355175830322, + "edge_lengths_px": [ + 27.018512725830078, + 22.671567916870117, + 25.612497329711914, + 22.803508758544922 + ] + }, + "confidence": 0.32781322776968225 + }, + { + "observation_id": "4629c4ba-e0bd-43ba-bfd4-472187a22e3a", + "type": "aruco", + "marker_id": 65, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 330.0, + 124.0 + ], + [ + 309.0, + 139.0 + ], + [ + 292.0, + 125.0 + ], + [ + 312.0, + 109.0 + ] + ], + "center_px": [ + 310.75, + 124.25 + ], + "quality": { + "area_px": 568.5, + "perimeter_px": 96.87293815612793, + "sharpness": { + "laplacian_var": 1300.0755674364495 + }, + "contrast": { + "p05": 8.0, + "p95": 155.0, + "dynamic_range": 147.0, + "mean_gray": 86.9776119402985, + "std_gray": 55.68315657930573 + }, + "geometry": { + "distance_to_center_norm": 0.6482013463973999, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.1718344795212643, + "edge_lengths_px": [ + 25.806976318359375, + 22.022714614868164, + 25.612497329711914, + 23.430749893188477 + ] + }, + "confidence": 0.323424516536529 + }, + { + "observation_id": "c9b3fc8b-9fdc-453b-9928-4eb26d9ee4f2", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 356.0, + 167.0 + ], + [ + 333.0, + 181.0 + ], + [ + 319.0, + 165.0 + ], + [ + 341.0, + 151.0 + ] + ], + "center_px": [ + 337.25, + 166.0 + ], + "quality": { + "area_px": 563.0, + "perimeter_px": 96.19463729858398, + "sharpness": { + "laplacian_var": 1894.9311071943598 + }, + "contrast": { + "p05": 9.0, + "p95": 156.0, + "dynamic_range": 147.0, + "mean_gray": 103.9113924050633, + "std_gray": 53.71344264563591 + }, + "geometry": { + "distance_to_center_norm": 0.5945987105369568, + "distance_to_border_px": 151.0 + }, + "edge_ratio": 1.266484164199827, + "edge_lengths_px": [ + 26.925823211669922, + 21.260292053222656, + 26.07680892944336, + 21.931713104248047 + ] + }, + "confidence": 0.2963584890699928 + }, + { + "observation_id": "d5ba7d27-fc4d-4180-a7db-9c60b9f4a8cd", + "type": "aruco", + "marker_id": 87, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 180.0, + 65.0 + ], + [ + 159.0, + 81.0 + ], + [ + 143.0, + 66.0 + ], + [ + 164.0, + 52.0 + ] + ], + "center_px": [ + 161.5, + 66.0 + ], + "quality": { + "area_px": 534.0, + "perimeter_px": 94.18685722351074, + "sharpness": { + "laplacian_var": 1427.9534499507668 + }, + "contrast": { + "p05": 8.0, + "p95": 150.0, + "dynamic_range": 142.0, + "mean_gray": 94.2133676092545, + "std_gray": 52.32608089294961 + }, + "geometry": { + "distance_to_center_norm": 0.8139207363128662, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.2806248134565528, + "edge_lengths_px": [ + 26.4007568359375, + 21.931713104248047, + 25.238859176635742, + 20.615528106689453 + ] + }, + "confidence": 0.27798930354872264 + }, + { + "observation_id": "6180be9b-110e-466f-8926-1807394d1c6b", + "type": "aruco", + "marker_id": 80, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 318.0, + 56.0 + ], + [ + 297.0, + 71.0 + ], + [ + 281.0, + 57.0 + ], + [ + 301.0, + 42.0 + ] + ], + "center_px": [ + 299.25, + 56.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 847.3843286787691 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 66.73007712082263, + "std_gray": 58.398961546954666 + }, + "geometry": { + "distance_to_center_norm": 0.7121544480323792, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.806976318359375, + 21.260292053222656, + 25.0, + 22.022714614868164 + ] + }, + "confidence": 0.24658567276025462 + }, + { + "observation_id": "ef00fab3-ac4d-4ddf-aa18-577f3944110f", + "type": "aruco", + "marker_id": 78, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 352.0, + 82.0 + ], + [ + 332.0, + 97.0 + ], + [ + 315.0, + 83.0 + ], + [ + 336.0, + 68.0 + ] + ], + "center_px": [ + 333.75, + 82.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 1495.6557828150394 + }, + "contrast": { + "p05": 8.0, + "p95": 154.39999999999998, + "dynamic_range": 146.39999999999998, + "mean_gray": 80.43256997455471, + "std_gray": 54.727417597641875 + }, + "geometry": { + "distance_to_center_norm": 0.6652719378471375, + "distance_to_border_px": 68.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.0, + 22.022714614868164, + 25.806976318359375, + 21.260292053222656 + ] + }, + "confidence": 0.29355437233363646 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 486.0, + 719.0 + ], + [ + 454.0, + 799.0 + ], + [ + 418.0, + 837.0 + ], + [ + 463.0, + 740.0 + ] + ], + "center_px": [ + 455.25, + 773.75 + ], + "area_px": 1475.0 + }, + { + "image_points_px": [ + [ + 438.0, + 753.0 + ], + [ + 414.0, + 813.0 + ], + [ + 410.0, + 798.0 + ], + [ + 428.0, + 756.0 + ] + ], + "center_px": [ + 422.5, + 780.0 + ], + "area_px": 483.0 + }, + { + "image_points_px": [ + [ + 800.0, + 580.0 + ], + [ + 824.0, + 598.0 + ], + [ + 805.0, + 618.0 + ], + [ + 781.0, + 600.0 + ] + ], + "center_px": [ + 802.5, + 599.0 + ], + "area_px": 822.0 + }, + { + "image_points_px": [ + [ + 347.0, + 811.0 + ], + [ + 356.0, + 811.0 + ], + [ + 379.0, + 836.0 + ], + [ + 372.0, + 837.0 + ] + ], + "center_px": [ + 363.5, + 823.75 + ], + "area_px": 216.0 + }, + { + "image_points_px": [ + [ + 606.0, + 542.0 + ], + [ + 580.0, + 559.0 + ], + [ + 569.0, + 560.0 + ], + [ + 589.0, + 544.0 + ] + ], + "center_px": [ + 586.0, + 551.25 + ], + "area_px": 196.5 + }, + { + "image_points_px": [ + [ + 523.0, + 557.0 + ], + [ + 498.0, + 574.0 + ], + [ + 494.0, + 570.0 + ], + [ + 503.0, + 561.0 + ] + ], + "center_px": [ + 504.5, + 565.5 + ], + "area_px": 156.0 + }, + { + "image_points_px": [ + [ + 803.0, + 972.0 + ], + [ + 814.0, + 977.0 + ], + [ + 824.0, + 985.0 + ], + [ + 808.0, + 977.0 + ] + ], + "center_px": [ + 812.25, + 977.75 + ], + "area_px": 39.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/render_g_camera_pose.json b/data/camera_study/Scene10/k4_abdg/render_g_camera_pose.json new file mode 100644 index 0000000..79e32a4 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/render_g_camera_pose.json @@ -0,0 +1,663 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:04Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abdg\\render_g_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "g", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 33, + "used_marker_ids": [ + 86, + 64, + 215, + 58, + 72, + 69, + 53, + 103, + 51, + 56, + 46, + 68, + 79, + 55, + 66, + 47, + 217, + 97, + 54, + 85, + 205, + 92, + 105, + 102, + 59, + 57, + 48, + 63, + 65, + 71, + 87, + 80, + 78 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.009919110626502768, + 0.00131603695020182, + 0.001107937977321884, + 0.0011079307333379282 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.1533723108903047, + "residual_median_px": 2.642822899939481, + "residual_max_px": 5.712847334889287, + "sigma2_normalized": 1.3502615607878073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + -0.7068235278129578, + -0.7073897123336792, + 0.0005333506851457059 + ], + [ + -0.6407679319381714, + 0.6399352550506592, + -0.424145370721817 + ], + [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + ], + "translation_m": [ + -0.00025032571284100413, + 0.3299143314361572, + 1.3926880359649658 + ], + "rvec_rad": [ + 1.1160234227786252, + -2.692342329270323, + 0.5995714660194011 + ] + }, + "camera_in_world": { + "position_m": [ + -0.20615969598293304, + 0.20669731497764587, + 1.40114164352417 + ], + "position_mm": [ + -206.15969848632812, + 206.6973114013672, + 1401.1416015625 + ], + "orientation_deg": { + "roll": -161.66343688964844, + "pitch": -17.43927001953125, + "yaw": -137.80624389648438 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 4.975476294351241e-06, + -6.1997390444361685e-06, + 4.6125841623440254e-06, + 3.8792135706014886e-07, + 1.0177551175558624e-06, + 4.222247510549453e-06 + ], + [ + -6.199739044436152e-06, + 1.6975220993135513e-05, + -1.1554389240886986e-05, + -2.6694426951616535e-06, + -1.5071367865932754e-06, + -1.0044703768545779e-05 + ], + [ + 4.61258416234392e-06, + -1.1554389240886865e-05, + 4.305804556659614e-05, + 4.2916213343878956e-06, + -2.367994951969628e-06, + 1.1642827799058608e-07 + ], + [ + 3.8792135706013785e-07, + -2.66944269516164e-06, + 4.29162133438789e-06, + 8.873234421723078e-07, + -1.077878898019132e-07, + 5.938016020714988e-07 + ], + [ + 1.0177551175558734e-06, + -1.5071367865932949e-06, + -2.3679949519695885e-06, + -1.0778788980190919e-07, + 6.616834799099002e-07, + 1.592756267167381e-06 + ], + [ + 4.2222475105494726e-06, + -1.0044703768545826e-05, + 1.1642827799072875e-07, + 5.938016020715144e-07, + 1.5927562671673749e-06, + 1.016526335390813e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.12780268061910577, + 0.23606432019497975, + 0.37596705361655935 + ], + "tvec_std_m": [ + 0.0009419784722446197, + 0.0008134392908569761, + 0.0031883010136917957 + ] + }, + "camera_center_std_m": [ + 0.005660072460127804, + 0.007818574448214759, + 0.0036781658638248924 + ], + "camera_center_std_mm": [ + 5.660072460127804, + 7.8185744482147586, + 3.6781658638248924 + ], + "orientation_std_deg": { + "roll": 0.33214565947431973, + "pitch": 0.23919321283200756, + "yaw": 0.12115842919429226 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 86, + "observed_center_px": [ + 70.5, + 959.0 + ], + "projected_center_px": [ + 72.42671966552734, + 955.485107421875 + ], + "reprojection_error_px": 4.0083311371801615, + "confidence": 0.5795855489013004 + }, + { + "marker_id": 64, + "observed_center_px": [ + 921.75, + 859.0 + ], + "projected_center_px": [ + 922.7560424804688, + 862.7833251953125 + ], + "reprojection_error_px": 3.9148015283017963, + "confidence": 0.616540888528013 + }, + { + "marker_id": 215, + "observed_center_px": [ + 566.5, + 693.0 + ], + "projected_center_px": [ + 568.2459106445312, + 692.080322265625 + ], + "reprojection_error_px": 1.9733248880487617, + "confidence": 0.6152661587526339 + }, + { + "marker_id": 58, + "observed_center_px": [ + 880.5, + 772.75 + ], + "projected_center_px": [ + 879.3278198242188, + 769.2518310546875 + ], + "reprojection_error_px": 3.689334944735071, + "confidence": 0.5876289194459208 + }, + { + "marker_id": 72, + "observed_center_px": [ + 115.5, + 788.0 + ], + "projected_center_px": [ + 114.51494598388672, + 788.7781982421875 + ], + "reprojection_error_px": 1.2553580838966305, + "confidence": 0.5322501871361803 + }, + { + "marker_id": 69, + "observed_center_px": [ + 977.0, + 755.0 + ], + "projected_center_px": [ + 978.3434448242188, + 750.7787475585938 + ], + "reprojection_error_px": 4.429877669845791, + "confidence": 0.5873934926369923 + }, + { + "marker_id": 53, + "observed_center_px": [ + 54.0, + 764.5 + ], + "projected_center_px": [ + 57.76123046875, + 763.97119140625 + ], + "reprojection_error_px": 3.79822236946143, + "confidence": 0.32594286952973284 + }, + { + "marker_id": 103, + "observed_center_px": [ + 801.0, + 744.25 + ], + "projected_center_px": [ + 797.4358520507812, + 746.4951782226562 + ], + "reprojection_error_px": 4.212359891487205, + "confidence": 0.5606734879266068 + }, + { + "marker_id": 51, + "observed_center_px": [ + 725.0, + 703.75 + ], + "projected_center_px": [ + 724.1592407226562, + 705.2492065429688 + ], + "reprojection_error_px": 1.7188648640657866, + "confidence": 0.5872237273710109 + }, + { + "marker_id": 56, + "observed_center_px": [ + 97.75, + 709.75 + ], + "projected_center_px": [ + 94.510986328125, + 713.8988647460938 + ], + "reprojection_error_px": 5.263486320678788, + "confidence": 0.46950770604173 + }, + { + "marker_id": 46, + "observed_center_px": [ + 51.5, + 694.75 + ], + "projected_center_px": [ + 45.80540466308594, + 695.206298828125 + ], + "reprojection_error_px": 5.712847334889287, + "confidence": 0.2902883953953809 + }, + { + "marker_id": 68, + "observed_center_px": [ + 28.25, + 652.0 + ], + "projected_center_px": [ + 32.07790756225586, + 650.2508544921875 + ], + "reprojection_error_px": 4.20860859580411, + "confidence": 0.06745941479560678 + }, + { + "marker_id": 79, + "observed_center_px": [ + 581.75, + 593.0 + ], + "projected_center_px": [ + 580.7769775390625, + 592.564453125 + ], + "reprojection_error_px": 1.0660552470726525, + "confidence": 0.48014488393995497 + }, + { + "marker_id": 55, + "observed_center_px": [ + 699.0, + 531.5 + ], + "projected_center_px": [ + 701.2785034179688, + 531.0349731445312 + ], + "reprojection_error_px": 2.3254736726100407, + "confidence": 0.5033557129355607 + }, + { + "marker_id": 66, + "observed_center_px": [ + 857.75, + 508.5 + ], + "projected_center_px": [ + 857.27294921875, + 509.6018981933594 + ], + "reprojection_error_px": 1.200731891980841, + "confidence": 0.4791716529202595 + }, + { + "marker_id": 47, + "observed_center_px": [ + 671.0, + 462.5 + ], + "projected_center_px": [ + 669.33203125, + 463.6061096191406 + ], + "reprojection_error_px": 2.001399070783231, + "confidence": 0.47486054263026106 + }, + { + "marker_id": 217, + "observed_center_px": [ + 229.5, + 365.5 + ], + "projected_center_px": [ + 227.5244140625, + 361.9618225097656 + ], + "reprojection_error_px": 4.052362243044047, + "confidence": 0.4046375469124394 + }, + { + "marker_id": 97, + "observed_center_px": [ + 765.75, + 436.5 + ], + "projected_center_px": [ + 768.8408203125, + 437.7091064453125 + ], + "reprojection_error_px": 3.318901715968526, + "confidence": 0.4509112286273005 + }, + { + "marker_id": 54, + "observed_center_px": [ + 709.25, + 434.25 + ], + "projected_center_px": [ + 710.0586547851562, + 430.8271789550781 + ], + "reprojection_error_px": 3.5170479762317965, + "confidence": 0.44042326304466006 + }, + { + "marker_id": 85, + "observed_center_px": [ + 555.0, + 319.75 + ], + "projected_center_px": [ + 556.587158203125, + 321.8631591796875 + ], + "reprojection_error_px": 2.642822899939481, + "confidence": 0.33473633767097827 + }, + { + "marker_id": 205, + "observed_center_px": [ + 148.25, + 284.75 + ], + "projected_center_px": [ + 149.84744262695312, + 286.7835693359375 + ], + "reprojection_error_px": 2.5859673606741804, + "confidence": 0.3904275743165678 + }, + { + "marker_id": 92, + "observed_center_px": [ + 328.75, + 309.5 + ], + "projected_center_px": [ + 328.0833435058594, + 312.3528137207031 + ], + "reprojection_error_px": 2.929671825684897, + "confidence": 0.38026711457279644 + }, + { + "marker_id": 105, + "observed_center_px": [ + 502.25, + 341.25 + ], + "projected_center_px": [ + 498.5203857421875, + 341.1575622558594 + ], + "reprojection_error_px": 3.730759607455309, + "confidence": 0.3931208602008742 + }, + { + "marker_id": 102, + "observed_center_px": [ + 359.0, + 279.5 + ], + "projected_center_px": [ + 359.4945373535156, + 281.3692626953125 + ], + "reprojection_error_px": 1.9335744666573331, + "confidence": 0.3834923705135548 + }, + { + "marker_id": 59, + "observed_center_px": [ + 425.5, + 258.75 + ], + "projected_center_px": [ + 428.2454833984375, + 258.3636779785156 + ], + "reprojection_error_px": 2.7725302154132963, + "confidence": 0.3475062428717297 + }, + { + "marker_id": 57, + "observed_center_px": [ + 521.0, + 213.25 + ], + "projected_center_px": [ + 521.8204956054688, + 214.8630828857422 + ], + "reprojection_error_px": 1.8097650220036505, + "confidence": 0.3370835485575886 + }, + { + "marker_id": 48, + "observed_center_px": [ + 415.25, + 187.5 + ], + "projected_center_px": [ + 416.5931396484375, + 185.31541442871094 + ], + "reprojection_error_px": 2.564456713124472, + "confidence": 0.3157717646545193 + }, + { + "marker_id": 63, + "observed_center_px": [ + 275.75, + 183.25 + ], + "projected_center_px": [ + 273.6121826171875, + 182.2046661376953 + ], + "reprojection_error_px": 2.379702932287163, + "confidence": 0.32781322776968225 + }, + { + "marker_id": 65, + "observed_center_px": [ + 310.75, + 124.25 + ], + "projected_center_px": [ + 308.9479675292969, + 123.33204650878906 + ], + "reprojection_error_px": 2.022364862603867, + "confidence": 0.323424516536529 + }, + { + "marker_id": 71, + "observed_center_px": [ + 337.25, + 166.0 + ], + "projected_center_px": [ + 337.3795471191406, + 168.51844787597656 + ], + "reprojection_error_px": 2.52177757942458, + "confidence": 0.2963584890699928 + }, + { + "marker_id": 87, + "observed_center_px": [ + 161.5, + 66.0 + ], + "projected_center_px": [ + 160.9746551513672, + 64.77437591552734 + ], + "reprojection_error_px": 1.33346976209604, + "confidence": 0.27798930354872264 + }, + { + "marker_id": 80, + "observed_center_px": [ + 299.25, + 56.5 + ], + "projected_center_px": [ + 298.39697265625, + 58.612037658691406 + ], + "reprojection_error_px": 2.277796900716975, + "confidence": 0.24658567276025462 + }, + { + "marker_id": 78, + "observed_center_px": [ + 333.75, + 82.5 + ], + "projected_center_px": [ + 335.54010009765625, + 79.4444351196289 + ], + "reprojection_error_px": 3.5413182711789872, + "confidence": 0.29355437233363646 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/robot_state.eval.json b/data/camera_study/Scene10/k4_abdg/robot_state.eval.json new file mode 100644 index 0000000..739d798 --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 120.75146407895284, + "gt": 120.0, + "error": 0.7514640789528357, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 60.05078637914368, + "gt": 60.0, + "error": 0.050786379143687554, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.95045134800931, + "gt": -110.0, + "error": 0.04954865199067626, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "a", + "estimate": 20.080697072800795, + "gt": 20.0, + "error": 0.08069707280080252, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "b", + "estimate": 30.858008698658146, + "gt": 30.0, + "error": 0.8580086986581534, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "c", + "estimate": 178.93184943057295, + "gt": 180.0, + "error": 1.068150569427047, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "e", + "estimate": 6.5940634254759125, + "gt": 4.0, + "error": 2.5940634254759125, + "unit": "mm", + "observable": true, + "n_markers": 1 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 0.42143827440407333, + "max_abs_deg": 1.068150569427047, + "mean_abs_mm": 1.6727637522143741, + "max_abs_mm": 2.5940634254759125 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abdg/robot_state.json b/data/camera_study/Scene10/k4_abdg/robot_state.json new file mode 100644 index 0000000..fd59acc --- /dev/null +++ b/data/camera_study/Scene10/k4_abdg/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:08Z", + "method": "hybrid", + "movements": { + "x": { + "value": 120.75146407895284, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 60.05078637914368, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.95045134800931, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "a": { + "value": 20.080697072800795, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "b": { + "value": 30.858008698658146, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "c": { + "value": 178.93184943057295, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "e": { + "value": 6.5940634254759125, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + } + }, + "residual_rms": 1.6323518495872993, + "num_markers": 34 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abef/render_a_aruco_detection.json b/data/camera_study/Scene10/k4_abef/render_a_aruco_detection.json new file mode 100644 index 0000000..081e723 --- /dev/null +++ b/data/camera_study/Scene10/k4_abef/render_a_aruco_detection.json @@ -0,0 +1,2330 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:09Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "a", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.npz", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_a.png", + "image_sha256": "3fda1f21fe402f6ca45be61726fe8bc4ff11185ad27638be512a8f4f598b0fe5", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 26, + "num_rejected_candidates": 35 + }, + "detections": [ + { + "observation_id": "0a3e5893-b387-4434-b29c-edcd44572527", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 547.0 + ], + [ + 939.0, + 530.0 + ], + [ + 956.0, + 571.0 + ], + [ + 917.0, + 588.0 + ] + ], + "center_px": [ + 928.0, + 559.0 + ], + "quality": { + "area_px": 1888.0, + "perimeter_px": 173.85755157470703, + "sharpness": { + "laplacian_var": 865.6237972020846 + }, + "contrast": { + "p05": 50.0, + "p95": 187.0, + "dynamic_range": 137.0, + "mean_gray": 87.40342679127725, + "std_gray": 54.46998248000789 + }, + "geometry": { + "distance_to_center_norm": 0.23207330703735352, + "distance_to_border_px": 484.0 + }, + "edge_ratio": 1.0432630581405598, + "edge_lengths_px": [ + 42.54409408569336, + 44.384681701660156, + 42.54409408569336, + 44.384681701660156 + ] + }, + "confidence": 0.9585310168868925 + }, + { + "observation_id": "f041cc48-5c98-458f-a27e-04296cbe3936", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 739.0, + 242.0 + ], + [ + 774.0, + 228.0 + ], + [ + 792.0, + 270.0 + ], + [ + 757.0, + 283.0 + ] + ], + "center_px": [ + 765.5, + 255.75 + ], + "quality": { + "area_px": 1695.5, + "perimeter_px": 165.50432586669922, + "sharpness": { + "laplacian_var": 972.5653279753307 + }, + "contrast": { + "p05": 17.0, + "p95": 182.0, + "dynamic_range": 165.0, + "mean_gray": 106.18205574912892, + "std_gray": 70.67095657404792 + }, + "geometry": { + "distance_to_center_norm": 0.3198539614677429, + "distance_to_border_px": 228.0 + }, + "edge_ratio": 1.2238659987255158, + "edge_lengths_px": [ + 37.6961555480957, + 45.694637298583984, + 37.336307525634766, + 44.777225494384766 + ] + }, + "confidence": 0.8170829167910206 + }, + { + "observation_id": "62fe71c1-dcb1-48b2-ba72-89c46f158e02", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 651.0, + 261.0 + ], + [ + 689.0, + 249.0 + ], + [ + 712.0, + 285.0 + ], + [ + 674.0, + 297.0 + ] + ], + "center_px": [ + 681.5, + 273.0 + ], + "quality": { + "area_px": 1644.0, + "perimeter_px": 165.13947296142578, + "sharpness": { + "laplacian_var": 747.6962819576332 + }, + "contrast": { + "p05": 13.0, + "p95": 180.0, + "dynamic_range": 167.0, + "mean_gray": 76.63693693693693, + "std_gray": 72.66327799511954 + }, + "geometry": { + "distance_to_center_norm": 0.2997349798679352, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.072028219579559, + "edge_lengths_px": [ + 39.84971618652344, + 42.72002029418945, + 39.84971618652344, + 42.72002029418945 + ] + }, + "confidence": 0.9328112653528767 + }, + { + "observation_id": "a228fffb-c1d2-4872-9933-dc3c01df8891", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 880.0, + 1056.0 + ], + [ + 849.0, + 1028.0 + ], + [ + 883.0, + 1007.0 + ], + [ + 913.0, + 1034.0 + ] + ], + "center_px": [ + 881.25, + 1031.25 + ], + "quality": { + "area_px": 1577.0, + "perimeter_px": 161.7576141357422, + "sharpness": { + "laplacian_var": 779.7184102009837 + }, + "contrast": { + "p05": 14.0, + "p95": 173.0, + "dynamic_range": 159.0, + "mean_gray": 81.89795918367346, + "std_gray": 69.37586032500836 + }, + "geometry": { + "distance_to_center_norm": 0.574486494064331, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.053254572752866, + "edge_lengths_px": [ + 41.773197174072266, + 39.96248245239258, + 40.360870361328125, + 39.66106414794922 + ] + }, + "confidence": 0.45573027871641286 + }, + { + "observation_id": "e11f9bea-69f0-497e-8ab0-9fd2c2556b44", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1154.0, + 1048.0 + ], + [ + 1121.0, + 1020.0 + ], + [ + 1153.0, + 1000.0 + ], + [ + 1185.0, + 1028.0 + ] + ], + "center_px": [ + 1153.25, + 1024.0 + ], + "quality": { + "area_px": 1532.0, + "perimeter_px": 160.4264144897461, + "sharpness": { + "laplacian_var": 789.6627377718634 + }, + "contrast": { + "p05": 9.0, + "p95": 170.0, + "dynamic_range": 161.0, + "mean_gray": 94.95602294455067, + "std_gray": 70.53110441036318 + }, + "geometry": { + "distance_to_center_norm": 0.7217618823051453, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.173112932994049, + "edge_lengths_px": [ + 43.27817153930664, + 37.735923767089844, + 42.52058410644531, + 36.8917350769043 + ] + }, + "confidence": 0.5455570235395628 + }, + { + "observation_id": "d0f12f71-92f1-4d1a-b56b-a7734aa7a635", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 800.0, + 233.0 + ], + [ + 834.0, + 221.0 + ], + [ + 852.0, + 261.0 + ], + [ + 816.0, + 271.0 + ] + ], + "center_px": [ + 825.5, + 246.5 + ], + "quality": { + "area_px": 1552.0, + "perimeter_px": 158.51307678222656, + "sharpness": { + "laplacian_var": 863.8906785031452 + }, + "contrast": { + "p05": 15.0, + "p95": 181.0, + "dynamic_range": 166.0, + "mean_gray": 73.38709677419355, + "std_gray": 69.59383427424181 + }, + "geometry": { + "distance_to_center_norm": 0.34653934836387634, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.2165525994378175, + "edge_lengths_px": [ + 36.055511474609375, + 43.863426208496094, + 37.36308288574219, + 41.231056213378906 + ] + }, + "confidence": 0.8219948734334308 + }, + { + "observation_id": "07f88fa2-d4b5-472b-8e0d-2380905e44bc", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 656.0, + 1024.0 + ], + [ + 631.0, + 996.0 + ], + [ + 666.0, + 976.0 + ], + [ + 692.0, + 1003.0 + ] + ], + "center_px": [ + 661.25, + 999.75 + ], + "quality": { + "area_px": 1499.0, + "perimeter_px": 157.00859832763672, + "sharpness": { + "laplacian_var": 776.3919478120264 + }, + "contrast": { + "p05": 15.0, + "p95": 173.0, + "dynamic_range": 158.0, + "mean_gray": 113.47134387351778, + "std_gray": 66.47315254195442 + }, + "geometry": { + "distance_to_center_norm": 0.5149872303009033, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1118898476800905, + "edge_lengths_px": [ + 37.53664779663086, + 40.31128692626953, + 37.48332977294922, + 41.67733383178711 + ] + }, + "confidence": 0.8987700853806685 + }, + { + "observation_id": "b54583c8-de8f-469d-811d-55efcc049df4", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1156.0, + 984.0 + ], + [ + 1124.0, + 957.0 + ], + [ + 1153.0, + 939.0 + ], + [ + 1186.0, + 964.0 + ] + ], + "center_px": [ + 1154.75, + 961.0 + ], + "quality": { + "area_px": 1384.5, + "perimeter_px": 153.4569320678711, + "sharpness": { + "laplacian_var": 641.3717713382066 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 48.07235421166307, + "std_gray": 59.88033560428563 + }, + "geometry": { + "distance_to_center_norm": 0.6724274754524231, + "distance_to_border_px": 96.0 + }, + "edge_ratio": 1.2266707527132645, + "edge_lengths_px": [ + 41.86884307861328, + 34.13209533691406, + 41.400482177734375, + 36.055511474609375 + ] + }, + "confidence": 0.7524431457735686 + }, + { + "observation_id": "ce146dbd-dd59-414b-9cde-87ef885f0c30", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 995.0, + 954.0 + ], + [ + 967.0, + 928.0 + ], + [ + 1000.0, + 911.0 + ], + [ + 1028.0, + 936.0 + ] + ], + "center_px": [ + 997.5, + 932.25 + ], + "quality": { + "area_px": 1331.5, + "perimeter_px": 150.4579086303711, + "sharpness": { + "laplacian_var": 806.253992719468 + }, + "contrast": { + "p05": 12.0, + "p95": 170.0, + "dynamic_range": 158.0, + "mean_gray": 85.1743119266055, + "std_gray": 67.17068414131862 + }, + "geometry": { + "distance_to_center_norm": 0.5338727831840515, + "distance_to_border_px": 126.0 + }, + "edge_ratio": 1.0293233343863084, + "edge_lengths_px": [ + 38.20994567871094, + 37.121421813964844, + 37.53664779663086, + 37.58989334106445 + ] + }, + "confidence": 0.8623788434718633 + }, + { + "observation_id": "c7bd744c-2907-4866-9a32-4a0988a09935", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 731.0, + 951.0 + ], + [ + 707.0, + 925.0 + ], + [ + 742.0, + 908.0 + ], + [ + 766.0, + 933.0 + ] + ], + "center_px": [ + 736.5, + 929.25 + ], + "quality": { + "area_px": 1312.5, + "perimeter_px": 148.30654907226562, + "sharpness": { + "laplacian_var": 893.1018320987654 + }, + "contrast": { + "p05": 14.0, + "p95": 172.0, + "dynamic_range": 158.0, + "mean_gray": 77.58333333333333, + "std_gray": 66.11167950269201 + }, + "geometry": { + "distance_to_center_norm": 0.432888388633728, + "distance_to_border_px": 129.0 + }, + "edge_ratio": 1.135675442614228, + "edge_lengths_px": [ + 35.38361358642578, + 38.910152435302734, + 34.65544509887695, + 39.357337951660156 + ] + }, + "confidence": 0.7704666026640716 + }, + { + "observation_id": "027a8f02-86a4-4c99-b087-a5984ebe7acc", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1109.0, + 937.0 + ], + [ + 1078.0, + 911.0 + ], + [ + 1108.0, + 894.0 + ], + [ + 1138.0, + 918.0 + ] + ], + "center_px": [ + 1108.25, + 915.0 + ], + "quality": { + "area_px": 1286.5, + "perimeter_px": 148.03035736083984, + "sharpness": { + "laplacian_var": 849.6744027531824 + }, + "contrast": { + "p05": 8.0, + "p95": 168.0, + "dynamic_range": 160.0, + "mean_gray": 73.16531791907515, + "std_gray": 67.17306919368005 + }, + "geometry": { + "distance_to_center_norm": 0.5997561812400818, + "distance_to_border_px": 143.0 + }, + "edge_ratio": 1.1733657712426009, + "edge_lengths_px": [ + 40.45985794067383, + 34.48188018798828, + 38.41874694824219, + 34.66987228393555 + ] + }, + "confidence": 0.7309457014059588 + }, + { + "observation_id": "d62d8ca5-2f5d-4082-b590-af334cdb5709", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 843.0 + ], + [ + 378.0, + 825.0 + ], + [ + 398.0, + 848.0 + ], + [ + 360.0, + 866.0 + ] + ], + "center_px": [ + 369.0, + 845.5 + ], + "quality": { + "area_px": 1234.0, + "perimeter_px": 145.0541877746582, + "sharpness": { + "laplacian_var": 1107.6063181860204 + }, + "contrast": { + "p05": 14.0, + "p95": 171.0, + "dynamic_range": 157.0, + "mean_gray": 78.54927884615384, + "std_gray": 65.48572197917484 + }, + "geometry": { + "distance_to_center_norm": 0.5170324444770813, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.3795367307347286, + "edge_lengths_px": [ + 42.04759216308594, + 30.479501724243164, + 42.04759216308594, + 30.479501724243164 + ] + }, + "confidence": 0.5963354569243849 + }, + { + "observation_id": "3d326af9-6cd0-438b-855c-3a95deac0a8a", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 841.0 + ], + [ + 1306.0, + 818.0 + ], + [ + 1334.0, + 803.0 + ], + [ + 1364.0, + 826.0 + ] + ], + "center_px": [ + 1335.0, + 822.0 + ], + "quality": { + "area_px": 1094.0, + "perimeter_px": 139.1337547302246, + "sharpness": { + "laplacian_var": 703.797937840674 + }, + "contrast": { + "p05": 9.0, + "p95": 164.0, + "dynamic_range": 155.0, + "mean_gray": 113.10478654592497, + "std_gray": 58.52400257567041 + }, + "geometry": { + "distance_to_center_norm": 0.7517461776733398, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.1900645633213587, + "edge_lengths_px": [ + 37.80211639404297, + 31.764760971069336, + 37.80211639404297, + 31.764760971069336 + ] + }, + "confidence": 0.6128519038478318 + }, + { + "observation_id": "bc547ee2-c13b-4d47-ba87-e45202af855f", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 763.0, + 197.0 + ], + [ + 797.0, + 187.0 + ], + [ + 824.0, + 204.0 + ], + [ + 790.0, + 216.0 + ] + ], + "center_px": [ + 793.5, + 201.0 + ], + "quality": { + "area_px": 909.0, + "perimeter_px": 136.41686248779297, + "sharpness": { + "laplacian_var": 1069.7927531569794 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 91.46811819595645, + "std_gray": 62.54740157586658 + }, + "geometry": { + "distance_to_center_norm": 0.38541823625564575, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.130050277403289, + "edge_lengths_px": [ + 35.44009017944336, + 31.906112670898438, + 36.055511474609375, + 33.0151481628418 + ] + }, + "confidence": 0.5362593259058441 + }, + { + "observation_id": "d6dde9f9-7e93-4f4a-8be1-7728e1b46b19", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 943.0, + 784.0 + ], + [ + 970.0, + 761.0 + ], + [ + 976.0, + 794.0 + ], + [ + 950.0, + 816.0 + ] + ], + "center_px": [ + 959.75, + 788.75 + ], + "quality": { + "area_px": 1007.5, + "perimeter_px": 135.82476806640625, + "sharpness": { + "laplacian_var": 990.0324116822271 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 69.03362573099415, + "std_gray": 62.62781348056947 + }, + "geometry": { + "distance_to_center_norm": 0.3838669955730438, + "distance_to_border_px": 264.0 + }, + "edge_ratio": 1.0827805673411812, + "edge_lengths_px": [ + 35.46829605102539, + 33.541019439697266, + 34.058773040771484, + 32.75667953491211 + ] + }, + "confidence": 0.6203165137290706 + }, + { + "observation_id": "420f11c3-1018-4976-b3a2-b9f81739b8af", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 736.0, + 748.0 + ], + [ + 769.0, + 734.0 + ], + [ + 791.0, + 755.0 + ], + [ + 758.0, + 770.0 + ] + ], + "center_px": [ + 763.5, + 751.75 + ], + "quality": { + "area_px": 1028.5, + "perimeter_px": 133.62254524230957, + "sharpness": { + "laplacian_var": 740.3312400344904 + }, + "contrast": { + "p05": 9.0, + "p95": 168.0, + "dynamic_range": 159.0, + "mean_gray": 80.6958981612447, + "std_gray": 67.7872078040809 + }, + "geometry": { + "distance_to_center_norm": 0.24019105732440948, + "distance_to_border_px": 310.0 + }, + "edge_ratio": 1.1918643121358203, + "edge_lengths_px": [ + 35.84689712524414, + 30.4138126373291, + 36.24913787841797, + 31.11269760131836 + ] + }, + "confidence": 0.5752892000247514 + }, + { + "observation_id": "e5af1a78-d971-4e3c-8618-f814c91ee5cf", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1296.0, + 787.0 + ], + [ + 1266.0, + 766.0 + ], + [ + 1291.0, + 751.0 + ], + [ + 1321.0, + 771.0 + ] + ], + "center_px": [ + 1293.5, + 768.75 + ], + "quality": { + "area_px": 977.5, + "perimeter_px": 131.51158332824707, + "sharpness": { + "laplacian_var": 482.2934957475995 + }, + "contrast": { + "p05": 7.0, + "p95": 157.0, + "dynamic_range": 150.0, + "mean_gray": 38.02962962962963, + "std_gray": 51.115372876535595 + }, + "geometry": { + "distance_to_center_norm": 0.6860414743423462, + "distance_to_border_px": 119.0 + }, + "edge_ratio": 1.2560441794117048, + "edge_lengths_px": [ + 36.619667053222656, + 29.154760360717773, + 36.055511474609375, + 29.681644439697266 + ] + }, + "confidence": 0.5188246379772157 + }, + { + "observation_id": "2bfed835-d2da-4c7b-b83c-1cfc4d801c30", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 664.0, + 678.0 + ], + [ + 696.0, + 665.0 + ], + [ + 717.0, + 685.0 + ], + [ + 684.0, + 698.0 + ] + ], + "center_px": [ + 690.25, + 681.5 + ], + "quality": { + "area_px": 916.5, + "perimeter_px": 127.29240036010742, + "sharpness": { + "laplacian_var": 950.4938833487939 + }, + "contrast": { + "p05": 10.0, + "p95": 166.0, + "dynamic_range": 156.0, + "mean_gray": 81.41071428571429, + "std_gray": 66.26803955921937 + }, + "geometry": { + "distance_to_center_norm": 0.1606595665216446, + "distance_to_border_px": 382.0 + }, + "edge_ratio": 1.25399363306104, + "edge_lengths_px": [ + 34.539833068847656, + 29.0, + 35.46829605102539, + 28.284271240234375 + ] + }, + "confidence": 0.4872433032283655 + }, + { + "observation_id": "e01ad124-b29c-4dfb-91cb-952335bc6743", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 132.0, + 733.0 + ], + [ + 120.0, + 713.0 + ], + [ + 156.0, + 700.0 + ], + [ + 169.0, + 720.0 + ] + ], + "center_px": [ + 144.25, + 716.5 + ], + "quality": { + "area_px": 892.5, + "perimeter_px": 124.6701889038086, + "sharpness": { + "laplacian_var": 1275.08402176 + }, + "contrast": { + "p05": 10.200000000000003, + "p95": 164.0, + "dynamic_range": 153.8, + "mean_gray": 105.7888, + "std_gray": 57.0930485660032 + }, + "geometry": { + "distance_to_center_norm": 0.6691069006919861, + "distance_to_border_px": 120.0 + }, + "edge_ratio": 1.6814297415391983, + "edge_lengths_px": [ + 23.323806762695312, + 38.27531814575195, + 23.853721618652344, + 39.217342376708984 + ] + }, + "confidence": 0.3538655141518615 + }, + { + "observation_id": "bb0ce566-e8c7-4ff6-b8ed-d70140c056e6", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 624.0 + ], + [ + 815.0, + 612.0 + ], + [ + 837.0, + 630.0 + ], + [ + 807.0, + 643.0 + ] + ], + "center_px": [ + 811.25, + 627.25 + ], + "quality": { + "area_px": 814.5, + "perimeter_px": 120.82522010803223, + "sharpness": { + "laplacian_var": 1125.3635571955213 + }, + "contrast": { + "p05": 8.0, + "p95": 149.0, + "dynamic_range": 141.0, + "mean_gray": 86.07050092764378, + "std_gray": 55.3312393682571 + }, + "geometry": { + "distance_to_center_norm": 0.14027805626392365, + "distance_to_border_px": 437.0 + }, + "edge_ratio": 1.1545204961681088, + "edge_lengths_px": [ + 31.38471031188965, + 28.42534065246582, + 32.69556427001953, + 28.319604873657227 + ] + }, + "confidence": 0.4703251278796996 + }, + { + "observation_id": "c1bc6707-4265-4257-b2f4-319c5c89a501", + "type": "aruco", + "marker_id": 74, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 344.0, + 702.0 + ], + [ + 330.0, + 683.0 + ], + [ + 364.0, + 671.0 + ], + [ + 379.0, + 689.0 + ] + ], + "center_px": [ + 354.25, + 686.25 + ], + "quality": { + "area_px": 819.5, + "perimeter_px": 120.42341613769531, + "sharpness": { + "laplacian_var": 1054.273602937478 + }, + "contrast": { + "p05": 7.0, + "p95": 158.0, + "dynamic_range": 151.0, + "mean_gray": 89.94680851063829, + "std_gray": 62.538561214266565 + }, + "geometry": { + "distance_to_center_norm": 0.4376735985279083, + "distance_to_border_px": 330.0 + }, + "edge_ratio": 1.593474715740479, + "edge_lengths_px": [ + 23.600847244262695, + 36.055511474609375, + 23.430749893188477, + 37.336307525634766 + ] + }, + "confidence": 0.3428566063437381 + }, + { + "observation_id": "478faa03-d607-4bc7-96b1-90a4c2ea7ff1", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1374.0, + 670.0 + ], + [ + 1347.0, + 651.0 + ], + [ + 1371.0, + 639.0 + ], + [ + 1398.0, + 658.0 + ] + ], + "center_px": [ + 1372.5, + 654.5 + ], + "quality": { + "area_px": 780.0, + "perimeter_px": 119.69592666625977, + "sharpness": { + "laplacian_var": 1109.98644924121 + }, + "contrast": { + "p05": 10.700000000000003, + "p95": 158.0, + "dynamic_range": 147.3, + "mean_gray": 106.3378640776699, + "std_gray": 52.12042090245902 + }, + "geometry": { + "distance_to_center_norm": 0.7360777258872986, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2304019519874827, + "edge_lengths_px": [ + 33.0151481628418, + 26.832815170288086, + 33.0151481628418, + 26.832815170288086 + ] + }, + "confidence": 0.35500593874581543 + }, + { + "observation_id": "dee510c6-8ae8-4be5-a3c8-6df6ccc4f077", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1196.0, + 524.0 + ], + [ + 1220.0, + 514.0 + ], + [ + 1244.0, + 530.0 + ], + [ + 1219.0, + 540.0 + ] + ], + "center_px": [ + 1219.75, + 527.0 + ], + "quality": { + "area_px": 627.0, + "perimeter_px": 109.78808403015137, + "sharpness": { + "laplacian_var": 963.0183950617284 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 73.82444444444444, + "std_gray": 53.419454032550746 + }, + "geometry": { + "distance_to_center_norm": 0.5554656386375427, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.109400382408729, + "edge_lengths_px": [ + 26.0, + 28.844409942626953, + 26.925823211669922, + 28.017850875854492 + ] + }, + "confidence": 0.3767801116964092 + }, + { + "observation_id": "a6a76011-4211-4da2-9bb0-89d039a22b26", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1299.0, + 475.0 + ], + [ + 1322.0, + 465.0 + ], + [ + 1346.0, + 479.0 + ], + [ + 1325.0, + 490.0 + ] + ], + "center_px": [ + 1323.0, + 477.25 + ], + "quality": { + "area_px": 581.5, + "perimeter_px": 106.58796119689941, + "sharpness": { + "laplacian_var": 922.4211295765532 + }, + "contrast": { + "p05": 9.0, + "p95": 150.0, + "dynamic_range": 141.0, + "mean_gray": 80.53125, + "std_gray": 49.781966772569284 + }, + "geometry": { + "distance_to_center_norm": 0.673617959022522, + "distance_to_border_px": 94.0 + }, + "edge_ratio": 1.2661764925954944, + "edge_lengths_px": [ + 25.079872131347656, + 27.784887313842773, + 23.706539154052734, + 30.01666259765625 + ] + }, + "confidence": 0.3061711135325228 + }, + { + "observation_id": "756b4330-762c-465f-b4bb-e99686fe02a3", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1117.0, + 472.0 + ], + [ + 1139.0, + 461.0 + ], + [ + 1163.0, + 476.0 + ], + [ + 1140.0, + 486.0 + ] + ], + "center_px": [ + 1139.75, + 473.75 + ], + "quality": { + "area_px": 573.0, + "perimeter_px": 104.90438652038574, + "sharpness": { + "laplacian_var": 1036.3509780861898 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 74.53349875930522, + "std_gray": 50.45210729924828 + }, + "geometry": { + "distance_to_center_norm": 0.47216224670410156, + "distance_to_border_px": 277.0 + }, + "edge_ratio": 1.1506375729114486, + "edge_lengths_px": [ + 24.59674835205078, + 28.301942825317383, + 25.079872131347656, + 26.925823211669922 + ] + }, + "confidence": 0.33198985414097737 + }, + { + "observation_id": "b50e7d8b-f896-404e-9cea-e1116a95d8b7", + "type": "aruco", + "marker_id": 184, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 821.0, + 486.0 + ], + [ + 814.0, + 487.0 + ], + [ + 798.0, + 448.0 + ], + [ + 805.0, + 445.0 + ] + ], + "center_px": [ + 809.5, + 466.5 + ], + "quality": { + "area_px": 312.0, + "perimeter_px": 100.85268115997314, + "sharpness": { + "laplacian_var": 2032.911884279329 + }, + "contrast": { + "p05": 22.0, + "p95": 133.5, + "dynamic_range": 111.5, + "mean_gray": 67.10426540284361, + "std_gray": 39.568029255350964 + }, + "geometry": { + "distance_to_center_norm": 0.12868039309978485, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 6.224146785942024, + "edge_lengths_px": [ + 7.071067810058594, + 42.154476165771484, + 7.6157732009887695, + 44.0113639831543 + ] + }, + "confidence": 0.03341823500528502 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 712.0, + 776.0 + ], + [ + 506.0, + 896.0 + ], + [ + 441.0, + 876.0 + ], + [ + 650.0, + 774.0 + ] + ], + "center_px": [ + 577.25, + 830.5 + ], + "area_px": 9331.0 + }, + { + "image_points_px": [ + [ + 1134.0, + 576.0 + ], + [ + 1028.0, + 633.0 + ], + [ + 1010.0, + 609.0 + ], + [ + 1092.0, + 566.0 + ] + ], + "center_px": [ + 1066.0, + 596.0 + ], + "area_px": 3098.0 + }, + { + "image_points_px": [ + [ + 949.0, + 628.0 + ], + [ + 974.0, + 624.0 + ], + [ + 1004.0, + 689.0 + ], + [ + 973.0, + 699.0 + ] + ], + "center_px": [ + 975.0, + 660.0 + ], + "area_px": 2093.0 + }, + { + "image_points_px": [ + [ + 919.0, + 792.0 + ], + [ + 944.0, + 814.0 + ], + [ + 912.0, + 829.0 + ], + [ + 888.0, + 806.0 + ] + ], + "center_px": [ + 915.75, + 810.25 + ], + "area_px": 1064.0 + }, + { + "image_points_px": [ + [ + 964.0, + 655.0 + ], + [ + 985.0, + 654.0 + ], + [ + 1002.0, + 682.0 + ], + [ + 976.0, + 691.0 + ] + ], + "center_px": [ + 981.75, + 670.5 + ], + "area_px": 824.5 + }, + { + "image_points_px": [ + [ + 1299.0, + 626.0 + ], + [ + 1321.0, + 614.0 + ], + [ + 1348.0, + 632.0 + ], + [ + 1326.0, + 644.0 + ] + ], + "center_px": [ + 1323.5, + 629.0 + ], + "area_px": 720.0 + }, + { + "image_points_px": [ + [ + 92.0, + 604.0 + ], + [ + 58.0, + 618.0 + ], + [ + 46.0, + 601.0 + ], + [ + 78.0, + 589.0 + ] + ], + "center_px": [ + 68.5, + 603.0 + ], + "area_px": 697.0 + }, + { + "image_points_px": [ + [ + 180.0, + 565.0 + ], + [ + 147.0, + 577.0 + ], + [ + 137.0, + 560.0 + ], + [ + 168.0, + 550.0 + ] + ], + "center_px": [ + 158.0, + 563.0 + ], + "area_px": 633.0 + }, + { + "image_points_px": [ + [ + 871.0, + 624.0 + ], + [ + 879.0, + 625.0 + ], + [ + 895.0, + 667.0 + ], + [ + 885.0, + 663.0 + ] + ], + "center_px": [ + 882.5, + 644.75 + ], + "area_px": 327.0 + }, + { + "image_points_px": [ + [ + 1217.0, + 427.0 + ], + [ + 1239.0, + 418.0 + ], + [ + 1261.0, + 431.0 + ], + [ + 1241.0, + 441.0 + ] + ], + "center_px": [ + 1239.5, + 429.25 + ], + "area_px": 502.0 + }, + { + "image_points_px": [ + [ + 385.0, + 633.0 + ], + [ + 402.0, + 652.0 + ], + [ + 378.0, + 660.0 + ], + [ + 362.0, + 643.0 + ] + ], + "center_px": [ + 381.75, + 647.0 + ], + "area_px": 571.5 + }, + { + "image_points_px": [ + [ + 717.0, + 471.0 + ], + [ + 742.0, + 462.0 + ], + [ + 760.0, + 475.0 + ], + [ + 736.0, + 485.0 + ] + ], + "center_px": [ + 738.75, + 473.25 + ], + "area_px": 506.5 + }, + { + "image_points_px": [ + [ + 488.0, + 732.0 + ], + [ + 459.0, + 747.0 + ], + [ + 447.0, + 740.0 + ], + [ + 480.0, + 724.0 + ] + ], + "center_px": [ + 468.5, + 735.75 + ], + "area_px": 387.5 + }, + { + "image_points_px": [ + [ + 751.0, + 438.0 + ], + [ + 776.0, + 430.0 + ], + [ + 792.0, + 443.0 + ], + [ + 768.0, + 452.0 + ] + ], + "center_px": [ + 771.75, + 440.75 + ], + "area_px": 471.0 + }, + { + "image_points_px": [ + [ + 984.0, + 384.0 + ], + [ + 1007.0, + 376.0 + ], + [ + 1024.0, + 388.0 + ], + [ + 1002.0, + 397.0 + ] + ], + "center_px": [ + 1004.25, + 386.25 + ], + "area_px": 430.0 + }, + { + "image_points_px": [ + [ + 1088.0, + 340.0 + ], + [ + 1108.0, + 333.0 + ], + [ + 1127.0, + 343.0 + ], + [ + 1106.0, + 351.0 + ] + ], + "center_px": [ + 1107.25, + 341.75 + ], + "area_px": 354.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 297.0 + ], + [ + 1071.0, + 290.0 + ], + [ + 1089.0, + 300.0 + ], + [ + 1070.0, + 308.0 + ] + ], + "center_px": [ + 1070.25, + 298.75 + ], + "area_px": 343.5 + }, + { + "image_points_px": [ + [ + 1145.0, + 312.0 + ], + [ + 1165.0, + 306.0 + ], + [ + 1182.0, + 316.0 + ], + [ + 1163.0, + 324.0 + ] + ], + "center_px": [ + 1163.75, + 314.5 + ], + "area_px": 337.0 + }, + { + "image_points_px": [ + [ + 1227.0, + 309.0 + ], + [ + 1246.0, + 302.0 + ], + [ + 1264.0, + 312.0 + ], + [ + 1247.0, + 320.0 + ] + ], + "center_px": [ + 1246.0, + 310.75 + ], + "area_px": 331.5 + }, + { + "image_points_px": [ + [ + 935.0, + 285.0 + ], + [ + 955.0, + 278.0 + ], + [ + 972.0, + 287.0 + ], + [ + 952.0, + 295.0 + ] + ], + "center_px": [ + 953.5, + 286.25 + ], + "area_px": 317.5 + }, + { + "image_points_px": [ + [ + 891.0, + 293.0 + ], + [ + 911.0, + 286.0 + ], + [ + 927.0, + 296.0 + ], + [ + 907.0, + 304.0 + ] + ], + "center_px": [ + 909.0, + 294.75 + ], + "area_px": 330.0 + }, + { + "image_points_px": [ + [ + 1018.0, + 751.0 + ], + [ + 1017.0, + 775.0 + ], + [ + 1013.0, + 785.0 + ], + [ + 1005.0, + 755.0 + ] + ], + "center_px": [ + 1013.25, + 766.5 + ], + "area_px": 254.0 + }, + { + "image_points_px": [ + [ + 278.0, + 1016.0 + ], + [ + 276.0, + 1020.0 + ], + [ + 247.0, + 1035.0 + ], + [ + 268.0, + 1019.0 + ] + ], + "center_px": [ + 267.25, + 1022.5 + ], + "area_px": 91.5 + }, + { + "image_points_px": [ + [ + 1273.0, + 316.0 + ], + [ + 1258.0, + 325.0 + ], + [ + 1242.0, + 330.0 + ], + [ + 1245.0, + 326.0 + ] + ], + "center_px": [ + 1254.5, + 324.25 + ], + "area_px": 75.5 + }, + { + "image_points_px": [ + [ + 627.0, + 394.0 + ], + [ + 630.0, + 413.0 + ], + [ + 628.0, + 428.0 + ], + [ + 625.0, + 409.0 + ] + ], + "center_px": [ + 627.5, + 411.0 + ], + "area_px": 83.0 + }, + { + "image_points_px": [ + [ + 356.0, + 962.0 + ], + [ + 333.0, + 980.0 + ], + [ + 330.0, + 980.0 + ], + [ + 348.0, + 965.0 + ] + ], + "center_px": [ + 341.75, + 971.75 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 702.0, + 632.0 + ], + [ + 679.0, + 644.0 + ], + [ + 673.0, + 642.0 + ], + [ + 695.0, + 632.0 + ] + ], + "center_px": [ + 687.25, + 637.5 + ], + "area_px": 94.0 + }, + { + "image_points_px": [ + [ + 1001.0, + 496.0 + ], + [ + 997.0, + 501.0 + ], + [ + 977.0, + 510.0 + ], + [ + 973.0, + 509.0 + ] + ], + "center_px": [ + 987.0, + 504.0 + ], + "area_px": 72.0 + }, + { + "image_points_px": [ + [ + 921.0, + 598.0 + ], + [ + 901.0, + 617.0 + ], + [ + 902.0, + 613.0 + ], + [ + 915.0, + 599.0 + ] + ], + "center_px": [ + 909.75, + 606.75 + ], + "area_px": 66.0 + }, + { + "image_points_px": [ + [ + 68.0, + 1031.0 + ], + [ + 60.0, + 1038.0 + ], + [ + 45.0, + 1046.0 + ], + [ + 50.0, + 1041.0 + ] + ], + "center_px": [ + 55.75, + 1039.0 + ], + "area_px": 40.5 + }, + { + "image_points_px": [ + [ + 842.0, + 934.0 + ], + [ + 834.0, + 942.0 + ], + [ + 823.0, + 947.0 + ], + [ + 820.0, + 946.0 + ] + ], + "center_px": [ + 829.75, + 942.25 + ], + "area_px": 53.0 + }, + { + "image_points_px": [ + [ + 806.0, + 955.0 + ], + [ + 791.0, + 965.0 + ], + [ + 783.0, + 965.0 + ], + [ + 802.0, + 955.0 + ] + ], + "center_px": [ + 795.5, + 960.0 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 342.0, + 1004.0 + ], + [ + 320.0, + 1016.0 + ], + [ + 322.0, + 1012.0 + ], + [ + 330.0, + 1007.0 + ] + ], + "center_px": [ + 328.5, + 1009.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 1340.0, + 651.0 + ], + [ + 1334.0, + 656.0 + ], + [ + 1318.0, + 660.0 + ], + [ + 1329.0, + 652.0 + ] + ], + "center_px": [ + 1330.25, + 654.75 + ], + "area_px": 66.5 + }, + { + "image_points_px": [ + [ + 229.0, + 651.0 + ], + [ + 218.0, + 658.0 + ], + [ + 208.0, + 661.0 + ], + [ + 211.0, + 658.0 + ] + ], + "center_px": [ + 216.5, + 657.0 + ], + "area_px": 35.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abef/render_a_camera_pose.json b/data/camera_study/Scene10/k4_abef/render_a_camera_pose.json new file mode 100644 index 0000000..ea69c23 --- /dev/null +++ b/data/camera_study/Scene10/k4_abef/render_a_camera_pose.json @@ -0,0 +1,467 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:11Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abef\\render_a_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "a", + "camera_matrix": [ + [ + 1992.8416748046875, + 0.0, + 719.249267578125 + ], + [ + 0.0, + 1997.40380859375, + 537.7935791015625 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 19, + "used_marker_ids": [ + 95, + 97, + 103, + 54, + 55, + 51, + 47, + 210, + 85, + 215, + 105, + 211, + 75, + 214, + 74, + 102, + 217, + 205, + 206 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.01009749778311845, + 0.0013500052634516154, + 0.0012080581027067798, + 0.001208056584232894 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.418903298149159, + "residual_median_px": 2.9058066287550095, + "residual_max_px": 7.881774161943574, + "sigma2_normalized": 1.7330383439497478e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8081126809120178, + -0.5890257358551025, + -0.0016104801325127482 + ], + [ + -0.3439487814903259, + -0.46965670585632324, + -0.8130939602851868 + ], + [ + 0.47817692160606384, + 0.6576254963874817, + -0.5821301937103271 + ] + ], + "translation_m": [ + -0.2276943325996399, + 0.17315705120563507, + 1.1353343725204468 + ], + "rvec_rad": [ + 2.1050851025918234, + -0.6867341612291594, + 0.3507860528401858 + ] + }, + "camera_in_world": { + "position_m": [ + -0.29933083057403564, + -0.7994182705879211, + 0.8013386726379395 + ], + "position_mm": [ + -299.3308410644531, + -799.4182739257812, + 801.3386840820312 + ], + "orientation_deg": { + "roll": 131.5152587890625, + "pitch": -28.5664005279541, + "yaw": -23.05556297302246 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.5705111713147538e-05, + -3.606186641991224e-06, + 9.93455859227922e-07, + 5.974998436558746e-07, + 4.6929081989455075e-07, + 2.8925877037560832e-06 + ], + [ + -3.606186641991253e-06, + 4.525067031199804e-06, + -1.5535915979518367e-06, + -4.146706877795486e-07, + -8.403171882148325e-07, + 3.704138848703875e-08 + ], + [ + 9.93455859228011e-07, + -1.5535915979518793e-06, + 1.4511663564702391e-05, + 8.397716382398054e-07, + -1.8034796850892003e-06, + -4.925606373863842e-06 + ], + [ + 5.974998436558832e-07, + -4.146706877795502e-07, + 8.397716382397962e-07, + 2.430616306834126e-07, + 1.4873676074531513e-08, + 1.58103612736764e-07 + ], + [ + 4.692908198945444e-07, + -8.403171882148285e-07, + -1.8034796850892121e-06, + 1.4873676074530825e-08, + 6.717933155003761e-07, + 1.166485422903723e-06 + ], + [ + 2.892587703756058e-06, + 3.704138848704778e-08, + -4.925606373863879e-06, + 1.5810361273676463e-07, + 1.166485422903725e-06, + 5.922812492193122e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.22706131431744284, + 0.12188075641483156, + 0.21826355925678265 + ], + "tvec_std_m": [ + 0.0004930128098573226, + 0.0008196299869455584, + 0.0024336829070758423 + ] + }, + "camera_center_std_m": [ + 0.0031789461102063005, + 0.004041324498858458, + 0.00434604702092401 + ], + "camera_center_std_mm": [ + 3.1789461102063004, + 4.041324498858458, + 4.3460470209240105 + ], + "orientation_std_deg": { + "roll": 0.2878030578767992, + "pitch": 0.1683177033483575, + "yaw": 0.1374718863525747 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 881.25, + 1031.25 + ], + "projected_center_px": [ + 877.61865234375, + 1028.5360107421875 + ], + "reprojection_error_px": 4.53347807892285, + "confidence": 0.45573027871641286 + }, + { + "marker_id": 97, + "observed_center_px": [ + 1153.25, + 1024.0 + ], + "projected_center_px": [ + 1152.7294921875, + 1027.8443603515625 + ], + "reprojection_error_px": 3.879437445756702, + "confidence": 0.5455570235395628 + }, + { + "marker_id": 103, + "observed_center_px": [ + 661.25, + 999.75 + ], + "projected_center_px": [ + 660.6806030273438, + 996.0768432617188 + ], + "reprojection_error_px": 3.7170274866418533, + "confidence": 0.8987700853806685 + }, + { + "marker_id": 54, + "observed_center_px": [ + 1154.75, + 961.0 + ], + "projected_center_px": [ + 1162.5029296875, + 962.4193115234375 + ], + "reprojection_error_px": 7.881774161943574, + "confidence": 0.7524431457735686 + }, + { + "marker_id": 55, + "observed_center_px": [ + 997.5, + 932.25 + ], + "projected_center_px": [ + 999.1104736328125, + 934.5891723632812 + ], + "reprojection_error_px": 2.8399564551455856, + "confidence": 0.8623788434718633 + }, + { + "marker_id": 51, + "observed_center_px": [ + 736.5, + 929.25 + ], + "projected_center_px": [ + 735.853271484375, + 928.2763061523438 + ], + "reprojection_error_px": 1.1689043938176247, + "confidence": 0.7704666026640716 + }, + { + "marker_id": 47, + "observed_center_px": [ + 1108.25, + 915.0 + ], + "projected_center_px": [ + 1107.45166015625, + 913.0933837890625 + ], + "reprojection_error_px": 2.0670103729610174, + "confidence": 0.7309457014059588 + }, + { + "marker_id": 210, + "observed_center_px": [ + 369.0, + 845.5 + ], + "projected_center_px": [ + 367.08258056640625, + 847.7832641601562 + ], + "reprojection_error_px": 2.98157550791138, + "confidence": 0.5963354569243849 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1335.0, + 822.0 + ], + "projected_center_px": [ + 1332.3167724609375, + 822.3063354492188 + ], + "reprojection_error_px": 2.7006575928524246, + "confidence": 0.6128519038478318 + }, + { + "marker_id": 215, + "observed_center_px": [ + 763.5, + 751.75 + ], + "projected_center_px": [ + 764.8435668945312, + 753.69775390625 + ], + "reprojection_error_px": 2.366203135699148, + "confidence": 0.5752892000247514 + }, + { + "marker_id": 105, + "observed_center_px": [ + 1293.5, + 768.75 + ], + "projected_center_px": [ + 1294.0775146484375, + 765.9021606445312 + ], + "reprojection_error_px": 2.9058066287550095, + "confidence": 0.5188246379772157 + }, + { + "marker_id": 211, + "observed_center_px": [ + 690.25, + 681.5 + ], + "projected_center_px": [ + 687.66943359375, + 684.4354248046875 + ], + "reprojection_error_px": 3.908457721536807, + "confidence": 0.4872433032283655 + }, + { + "marker_id": 75, + "observed_center_px": [ + 144.25, + 716.5 + ], + "projected_center_px": [ + 147.21554565429688, + 715.9539184570312 + ], + "reprojection_error_px": 3.01540479526219, + "confidence": 0.3538655141518615 + }, + { + "marker_id": 214, + "observed_center_px": [ + 811.25, + 627.25 + ], + "projected_center_px": [ + 813.1135864257812, + 626.0042114257812 + ], + "reprojection_error_px": 2.2416385832712016, + "confidence": 0.4703251278796996 + }, + { + "marker_id": 74, + "observed_center_px": [ + 354.25, + 686.25 + ], + "projected_center_px": [ + 353.1841125488281, + 685.2387084960938 + ], + "reprojection_error_px": 1.4692945805517152, + "confidence": 0.3428566063437381 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1372.5, + 654.5 + ], + "projected_center_px": [ + 1370.1954345703125, + 654.4063110351562 + ], + "reprojection_error_px": 2.306469042030312, + "confidence": 0.35500593874581543 + }, + { + "marker_id": 217, + "observed_center_px": [ + 1219.75, + 527.0 + ], + "projected_center_px": [ + 1223.6787109375, + 525.702392578125 + ], + "reprojection_error_px": 4.137457510565784, + "confidence": 0.3767801116964092 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1323.0, + 477.25 + ], + "projected_center_px": [ + 1319.5634765625, + 478.1280212402344 + ], + "reprojection_error_px": 3.5469162147969504, + "confidence": 0.3061711135325228 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1139.75, + 473.75 + ], + "projected_center_px": [ + 1139.77392578125, + 473.96392822265625 + ], + "reprojection_error_px": 0.2152619972435565, + "confidence": 0.33198985414097737 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abef/render_b_aruco_detection.json b/data/camera_study/Scene10/k4_abef/render_b_aruco_detection.json new file mode 100644 index 0000000..4e04679 --- /dev/null +++ b/data/camera_study/Scene10/k4_abef/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:10Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "567cb8c6-c84e-4f52-8886-1ea66f1aa34f", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "6510f0fd-e069-49e8-9176-950d295cdd04", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "6b4ecf60-c29b-4289-9d87-134b26af2e16", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "d7c4c60b-1e9c-4b70-8ec5-3ff78f43b449", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "c0857011-9972-4aa5-a9ea-2708ae16a7e1", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "07c072ab-f63d-4fde-af6f-edec098e850c", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "1905ca4d-4cf7-40d0-8f32-7f2d5babb79d", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "ef3dd450-8a08-4b68-8395-b4344f1a1976", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "7ae5f962-d2e6-4163-b837-79639d6007d7", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "04d98762-f0e8-4fc3-85c4-e27c6fb18876", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "5ec3f266-efd9-4b4f-b91b-8694d1bbaddd", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "d7dac7db-4e8b-4ca1-963f-a7568f9cdd70", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "76a9792d-38bb-44a0-ab19-25d6764587e2", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "cb19516c-f995-4bb9-b37e-25861425d4f3", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "1b7a30a1-3279-43e4-a33b-faa37b1eecf7", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "1ebc6bf3-4ae9-4937-953b-71aecc902e05", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "71b0a25f-416b-4b0b-9f7c-e4105d7d031a", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "e34b5f28-ca0c-40be-a538-3405cb6caa5e", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "67974469-4562-49ef-9366-3f0b3cd1a394", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "6fc1bd02-799b-4866-b8db-7063af554faa", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "452e39b7-a05a-4510-bb25-e15b1bc6c241", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "486d7997-0cdf-429b-8c20-6131dd25fa13", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "fa5d2780-f1b0-49c6-b91b-0227ca0804ca", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "32c721b5-9a9f-4d13-8026-d3a76313ffc4", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "64845275-a506-4e6c-b6f0-4ebdafe65404", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "43ec576d-c78b-491d-92dd-a33e0daeb26e", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "d1e5992d-5ea5-4558-b396-44276522ad28", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "2da67998-acad-40b8-987f-8d70074196e3", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "23a5f899-f85b-4c00-b28f-0f3e3b11c262", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "49c60476-36e2-450b-b50e-dd6d276948a2", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "4cf4913c-416e-4d72-8179-60640c321751", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "9f9fa57c-a8c6-4e95-8c69-4ad2f171c0fd", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "2f2a1a25-bfc9-4da6-880e-8de9d1317a19", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "9a854afd-0705-4b44-8ec1-175962f31c51", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "d3e855eb-fddd-46e8-8ed2-50375e27070a", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "23fadb3b-409f-4d01-8ffe-b852ff7f5a39", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abef/render_b_camera_pose.json b/data/camera_study/Scene10/k4_abef/render_b_camera_pose.json new file mode 100644 index 0000000..4a88e30 --- /dev/null +++ b/data/camera_study/Scene10/k4_abef/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:11Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_abef\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abef/render_e_aruco_detection.json b/data/camera_study/Scene10/k4_abef/render_e_aruco_detection.json new file mode 100644 index 0000000..a97d712 --- /dev/null +++ b/data/camera_study/Scene10/k4_abef/render_e_aruco_detection.json @@ -0,0 +1,1199 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:10Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "e", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.npz", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.png", + "image_sha256": "d9465055b192acfccc2cb79885882693d4f0d01141ecc06177116dded5d564cb", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 12, + "num_rejected_candidates": 20 + }, + "detections": [ + { + "observation_id": "9b09ecea-05e7-496c-b291-aa92c3e46c5d", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 986.0, + 1027.0 + ], + [ + 1024.0, + 1012.0 + ], + [ + 1062.0, + 1033.0 + ], + [ + 1026.0, + 1050.0 + ] + ], + "center_px": [ + 1024.5, + 1030.5 + ], + "quality": { + "area_px": 1438.0, + "perimeter_px": 170.22312927246094, + "sharpness": { + "laplacian_var": 453.1861132150195 + }, + "contrast": { + "p05": 14.0, + "p95": 153.0, + "dynamic_range": 139.0, + "mean_gray": 72.75522388059701, + "std_gray": 50.64349874612125 + }, + "geometry": { + "distance_to_center_norm": 0.6414783596992493, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1589726701270886, + "edge_lengths_px": [ + 40.853397369384766, + 43.416587829589844, + 39.81205749511719, + 46.14108657836914 + ] + }, + "confidence": 0.4963016081621025 + }, + { + "observation_id": "03a15903-0bfc-45dd-b369-13b77c4d95bb", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1277.0, + 1049.0 + ], + [ + 1308.0, + 1032.0 + ], + [ + 1355.0, + 1053.0 + ], + [ + 1324.0, + 1071.0 + ] + ], + "center_px": [ + 1316.0, + 1051.25 + ], + "quality": { + "area_px": 1489.0, + "perimeter_px": 174.5745086669922, + "sharpness": { + "laplacian_var": 412.816421944627 + }, + "contrast": { + "p05": 13.0, + "p95": 145.0, + "dynamic_range": 132.0, + "mean_gray": 61.47008547008547, + "std_gray": 49.57416295951042 + }, + "geometry": { + "distance_to_center_norm": 0.8724822998046875, + "distance_to_border_px": 9.0 + }, + "edge_ratio": 1.46778745364521, + "edge_lengths_px": [ + 35.35533905029297, + 51.4781494140625, + 35.84689712524414, + 51.89412307739258 + ] + }, + "confidence": 0.12173424671007582 + }, + { + "observation_id": "d5fd06ea-9a5e-4799-b901-8de2546a7bfd", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 780.0, + 466.0 + ], + [ + 811.0, + 497.0 + ], + [ + 790.0, + 533.0 + ], + [ + 759.0, + 507.0 + ] + ], + "center_px": [ + 785.0, + 500.75 + ], + "quality": { + "area_px": 1792.0, + "perimeter_px": 172.04298400878906, + "sharpness": { + "laplacian_var": 431.52108687263 + }, + "contrast": { + "p05": 4.0, + "p95": 86.0, + "dynamic_range": 82.0, + "mean_gray": 35.97742474916388, + "std_gray": 31.48995686460428 + }, + "geometry": { + "distance_to_center_norm": 0.08436811715364456, + "distance_to_border_px": 466.0 + }, + "edge_ratio": 1.138540089676814, + "edge_lengths_px": [ + 43.84062194824219, + 41.67733383178711, + 40.45985794067383, + 46.06517028808594 + ] + }, + "confidence": 0.8783177764815114 + }, + { + "observation_id": "4e916de2-0fb5-42c9-9bb3-d0e7e2a4da9e", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 777.0, + 986.0 + ], + [ + 818.0, + 973.0 + ], + [ + 849.0, + 994.0 + ], + [ + 809.0, + 1009.0 + ] + ], + "center_px": [ + 813.25, + 990.5 + ], + "quality": { + "area_px": 1332.0, + "perimeter_px": 162.58305740356445, + "sharpness": { + "laplacian_var": 675.3602149959689 + }, + "contrast": { + "p05": 19.700000000000003, + "p95": 154.0, + "dynamic_range": 134.3, + "mean_gray": 93.49617486338798, + "std_gray": 46.101180438545676 + }, + "geometry": { + "distance_to_center_norm": 0.5111664533615112, + "distance_to_border_px": 71.0 + }, + "edge_ratio": 1.1487138651855313, + "edge_lengths_px": [ + 43.011627197265625, + 37.44329071044922, + 42.72002029418945, + 39.408119201660156 + ] + }, + "confidence": 0.7730384623298485 + }, + { + "observation_id": "49c5fe2e-fa86-4d82-89fe-7c2774dc6f91", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 749.0, + 642.0 + ], + [ + 771.0, + 676.0 + ], + [ + 734.0, + 695.0 + ], + [ + 713.0, + 662.0 + ] + ], + "center_px": [ + 741.75, + 668.75 + ], + "quality": { + "area_px": 1642.0, + "perimeter_px": 162.38792037963867, + "sharpness": { + "laplacian_var": 92.67615631030367 + }, + "contrast": { + "p05": 7.0, + "p95": 101.0, + "dynamic_range": 94.0, + "mean_gray": 53.06440071556351, + "std_gray": 38.78329965301281 + }, + "geometry": { + "distance_to_center_norm": 0.14508245885372162, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0633526883983422, + "edge_lengths_px": [ + 40.49691390991211, + 41.59326934814453, + 39.11521530151367, + 41.18252182006836 + ] + }, + "confidence": 0.7262889453443055 + }, + { + "observation_id": "e448f0f5-e086-4e47-a62f-68766b066645", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 865.0, + 314.0 + ], + [ + 896.0, + 337.0 + ], + [ + 879.0, + 373.0 + ], + [ + 847.0, + 352.0 + ] + ], + "center_px": [ + 871.75, + 344.0 + ], + "quality": { + "area_px": 1550.5, + "perimeter_px": 158.7354850769043, + "sharpness": { + "laplacian_var": 91.32963410546913 + }, + "contrast": { + "p05": 3.0, + "p95": 80.0, + "dynamic_range": 77.0, + "mean_gray": 29.31711880261927, + "std_gray": 30.16374856556423 + }, + "geometry": { + "distance_to_center_norm": 0.27542126178741455, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0985563073040754, + "edge_lengths_px": [ + 38.60051727294922, + 39.81205749511719, + 38.27531814575195, + 42.04759216308594 + ] + }, + "confidence": 0.6668204157436237 + }, + { + "observation_id": "99646c92-d63c-4e3f-8ae7-7e8159f20e56", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 934.0 + ], + [ + 1105.0, + 922.0 + ], + [ + 1141.0, + 939.0 + ], + [ + 1107.0, + 953.0 + ] + ], + "center_px": [ + 1106.0, + 937.0 + ], + "quality": { + "area_px": 1080.0, + "perimeter_px": 153.34338760375977, + "sharpness": { + "laplacian_var": 1315.6913698207666 + }, + "contrast": { + "p05": 34.0, + "p95": 156.0, + "dynamic_range": 122.0, + "mean_gray": 112.49931224209078, + "std_gray": 38.505501664035826 + }, + "geometry": { + "distance_to_center_norm": 0.6152436137199402, + "distance_to_border_px": 127.0 + }, + "edge_ratio": 1.128988685253164, + "edge_lengths_px": [ + 36.055511474609375, + 39.81205749511719, + 36.769554138183594, + 40.70626449584961 + ] + }, + "confidence": 0.6377388980107869 + }, + { + "observation_id": "49b0dce4-a35a-48ba-8462-4c5b530866e8", + "type": "aruco", + "marker_id": 244, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 981.0, + 163.0 + ], + [ + 1000.0, + 190.0 + ], + [ + 982.0, + 224.0 + ], + [ + 962.0, + 201.0 + ] + ], + "center_px": [ + 981.25, + 194.5 + ], + "quality": { + "area_px": 1164.5, + "perimeter_px": 144.45070838928223, + "sharpness": { + "laplacian_var": 96.06874104557231 + }, + "contrast": { + "p05": 4.0, + "p95": 67.0, + "dynamic_range": 63.0, + "mean_gray": 33.3358024691358, + "std_gray": 25.95401112529325 + }, + "geometry": { + "distance_to_center_norm": 0.48128148913383484, + "distance_to_border_px": 163.0 + }, + "edge_ratio": 1.393897148047905, + "edge_lengths_px": [ + 33.0151481628418, + 38.470767974853516, + 30.479501724243164, + 42.48529052734375 + ] + }, + "confidence": 0.35113079528934743 + }, + { + "observation_id": "cabf7ecc-4776-4d6c-ace3-343faa3b101a", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 674.0, + 619.0 + ], + [ + 703.0, + 624.0 + ], + [ + 700.0, + 664.0 + ], + [ + 672.0, + 658.0 + ] + ], + "center_px": [ + 687.25, + 641.25 + ], + "quality": { + "area_px": 1139.5, + "perimeter_px": 137.22710990905762, + "sharpness": { + "laplacian_var": 863.1978615203191 + }, + "contrast": { + "p05": 32.0, + "p95": 169.0, + "dynamic_range": 137.0, + "mean_gray": 80.9662775616083, + "std_gray": 55.08560868618617 + }, + "geometry": { + "distance_to_center_norm": 0.11823874711990356, + "distance_to_border_px": 416.0 + }, + "edge_ratio": 1.4007837305049835, + "edge_lengths_px": [ + 29.42787742614746, + 40.112342834472656, + 28.635643005371094, + 39.051246643066406 + ] + }, + "confidence": 0.542315455357842 + }, + { + "observation_id": "b12ebf03-7378-485a-a572-d94e4ab8d1c0", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 517.0, + 788.0 + ], + [ + 550.0, + 780.0 + ], + [ + 575.0, + 794.0 + ], + [ + 540.0, + 802.0 + ] + ], + "center_px": [ + 545.5, + 791.0 + ], + "quality": { + "area_px": 668.0, + "perimeter_px": 125.43741798400879, + "sharpness": { + "laplacian_var": 1607.3082682839233 + }, + "contrast": { + "p05": 19.0, + "p95": 147.0, + "dynamic_range": 128.0, + "mean_gray": 65.39445628997868, + "std_gray": 47.873144952539 + }, + "geometry": { + "distance_to_center_norm": 0.33966439962387085, + "distance_to_border_px": 278.0 + }, + "edge_ratio": 1.3333908058760269, + "edge_lengths_px": [ + 33.95585250854492, + 28.65309715270996, + 35.902645111083984, + 26.925823211669922 + ] + }, + "confidence": 0.33398560374859715 + }, + { + "observation_id": "92e64744-0bdb-4295-9c85-ff4cfc24adc7", + "type": "aruco", + "marker_id": 114, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 846.0, + 444.0 + ], + [ + 854.0, + 462.0 + ], + [ + 835.0, + 496.0 + ], + [ + 827.0, + 477.0 + ] + ], + "center_px": [ + 840.5, + 469.75 + ], + "quality": { + "area_px": 619.5, + "perimeter_px": 117.34079360961914, + "sharpness": { + "laplacian_var": 515.9082048204126 + }, + "contrast": { + "p05": 13.0, + "p95": 77.0, + "dynamic_range": 64.0, + "mean_gray": 34.12249443207127, + "std_gray": 22.140483977294974 + }, + "geometry": { + "distance_to_center_norm": 0.15498033165931702, + "distance_to_border_px": 444.0 + }, + "edge_ratio": 1.977319866342296, + "edge_lengths_px": [ + 19.697715759277344, + 38.94868469238281, + 20.615528106689453, + 38.07886505126953 + ] + }, + "confidence": 0.16709486695806255 + }, + { + "observation_id": "09fb5c39-6f54-4da3-b18d-7c96752d38a0", + "type": "aruco", + "marker_id": 120, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 904.0, + 345.0 + ], + [ + 911.0, + 366.0 + ], + [ + 893.0, + 397.0 + ], + [ + 885.0, + 381.0 + ] + ], + "center_px": [ + 898.25, + 372.25 + ], + "quality": { + "area_px": 593.5, + "perimeter_px": 116.57765007019043, + "sharpness": { + "laplacian_var": 612.2280321521758 + }, + "contrast": { + "p05": 13.75, + "p95": 72.0, + "dynamic_range": 58.25, + "mean_gray": 30.091743119266056, + "std_gray": 19.626461861945877 + }, + "geometry": { + "distance_to_center_norm": 0.27196842432022095, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 2.2755493296600644, + "edge_lengths_px": [ + 22.135944366455078, + 35.84689712524414, + 17.8885440826416, + 40.70626449584961 + ] + }, + "confidence": 0.12660450288269692 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 955.0, + 949.0 + ], + [ + 989.0, + 936.0 + ], + [ + 1024.0, + 953.0 + ], + [ + 991.0, + 967.0 + ] + ], + "center_px": [ + 989.75, + 951.25 + ], + "area_px": 1065.5 + }, + { + "image_points_px": [ + [ + 727.0, + 881.0 + ], + [ + 763.0, + 870.0 + ], + [ + 792.0, + 891.0 + ], + [ + 756.0, + 904.0 + ] + ], + "center_px": [ + 759.5, + 886.5 + ], + "area_px": 1140.0 + }, + { + "image_points_px": [ + [ + 818.0, + 869.0 + ], + [ + 850.0, + 858.0 + ], + [ + 887.0, + 875.0 + ], + [ + 849.0, + 885.0 + ] + ], + "center_px": [ + 851.0, + 871.75 + ], + "area_px": 934.5 + }, + { + "image_points_px": [ + [ + 1115.0, + 909.0 + ], + [ + 1146.0, + 897.0 + ], + [ + 1182.0, + 914.0 + ], + [ + 1154.0, + 927.0 + ] + ], + "center_px": [ + 1149.25, + 911.75 + ], + "area_px": 985.0 + }, + { + "image_points_px": [ + [ + 1244.0, + 805.0 + ], + [ + 1274.0, + 794.0 + ], + [ + 1312.0, + 812.0 + ], + [ + 1282.0, + 821.0 + ] + ], + "center_px": [ + 1278.0, + 808.0 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 891.0, + 399.0 + ], + [ + 918.0, + 457.0 + ], + [ + 898.0, + 447.0 + ], + [ + 884.0, + 415.0 + ] + ], + "center_px": [ + 897.75, + 429.5 + ], + "area_px": 669.0 + }, + { + "image_points_px": [ + [ + 495.0, + 791.0 + ], + [ + 459.0, + 801.0 + ], + [ + 438.0, + 784.0 + ], + [ + 473.0, + 774.0 + ] + ], + "center_px": [ + 466.25, + 787.5 + ], + "area_px": 818.5 + }, + { + "image_points_px": [ + [ + 888.0, + 139.0 + ], + [ + 871.0, + 170.0 + ], + [ + 844.0, + 169.0 + ], + [ + 861.0, + 139.0 + ] + ], + "center_px": [ + 866.0, + 154.25 + ], + "area_px": 832.0 + }, + { + "image_points_px": [ + [ + 635.0, + 778.0 + ], + [ + 606.0, + 791.0 + ], + [ + 580.0, + 773.0 + ], + [ + 612.0, + 764.0 + ] + ], + "center_px": [ + 608.25, + 776.5 + ], + "area_px": 757.5 + }, + { + "image_points_px": [ + [ + 754.0, + 745.0 + ], + [ + 784.0, + 735.0 + ], + [ + 806.0, + 749.0 + ], + [ + 780.0, + 762.0 + ] + ], + "center_px": [ + 781.0, + 747.75 + ], + "area_px": 710.0 + }, + { + "image_points_px": [ + [ + 852.0, + 659.0 + ], + [ + 882.0, + 653.0 + ], + [ + 906.0, + 665.0 + ], + [ + 877.0, + 672.0 + ] + ], + "center_px": [ + 879.25, + 662.25 + ], + "area_px": 528.0 + }, + { + "image_points_px": [ + [ + 613.0, + 739.0 + ], + [ + 581.0, + 746.0 + ], + [ + 560.0, + 733.0 + ], + [ + 592.0, + 726.0 + ] + ], + "center_px": [ + 586.5, + 736.0 + ], + "area_px": 563.0 + }, + { + "image_points_px": [ + [ + 770.0, + 398.0 + ], + [ + 751.0, + 432.0 + ], + [ + 736.0, + 433.0 + ], + [ + 753.0, + 403.0 + ] + ], + "center_px": [ + 752.5, + 416.5 + ], + "area_px": 458.0 + }, + { + "image_points_px": [ + [ + 937.0, + 633.0 + ], + [ + 963.0, + 626.0 + ], + [ + 986.0, + 637.0 + ], + [ + 962.0, + 645.0 + ] + ], + "center_px": [ + 962.0, + 635.25 + ], + "area_px": 467.5 + }, + { + "image_points_px": [ + [ + 496.0, + 636.0 + ], + [ + 518.0, + 630.0 + ], + [ + 542.0, + 641.0 + ], + [ + 514.0, + 648.0 + ] + ], + "center_px": [ + 517.5, + 638.75 + ], + "area_px": 424.0 + }, + { + "image_points_px": [ + [ + 706.0, + 672.0 + ], + [ + 713.0, + 681.0 + ], + [ + 712.0, + 701.0 + ], + [ + 705.0, + 700.0 + ] + ], + "center_px": [ + 709.0, + 688.5 + ], + "area_px": 173.0 + }, + { + "image_points_px": [ + [ + 1270.0, + 652.0 + ], + [ + 1277.0, + 642.0 + ], + [ + 1299.0, + 649.0 + ], + [ + 1283.0, + 656.0 + ] + ], + "center_px": [ + 1282.25, + 649.75 + ], + "area_px": 212.0 + }, + { + "image_points_px": [ + [ + 1324.0, + 677.0 + ], + [ + 1334.0, + 678.0 + ], + [ + 1347.0, + 684.0 + ], + [ + 1327.0, + 680.0 + ] + ], + "center_px": [ + 1333.0, + 679.75 + ], + "area_px": 47.5 + }, + { + "image_points_px": [ + [ + 1335.0, + 615.0 + ], + [ + 1338.0, + 613.0 + ], + [ + 1347.0, + 613.0 + ], + [ + 1358.0, + 618.0 + ] + ], + "center_px": [ + 1344.5, + 614.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 779.0, + 642.0 + ], + [ + 777.0, + 658.0 + ], + [ + 774.0, + 665.0 + ], + [ + 773.0, + 659.0 + ] + ], + "center_px": [ + 775.75, + 656.0 + ], + "area_px": 43.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_abef/render_f_aruco_detection.json b/data/camera_study/Scene10/k4_abef/render_f_aruco_detection.json new file mode 100644 index 0000000..e423790 --- /dev/null +++ b/data/camera_study/Scene10/k4_abef/render_f_aruco_detection.json @@ -0,0 +1,2058 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:11Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "f", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.npz", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.png", + "image_sha256": "aa67ae34760d38a87903e73b4020db43742a978458949ff309a7b2527c548cd4", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 33, + "num_rejected_candidates": 9 + }, + "detections": [ + { + "observation_id": "6fa432de-10d0-427a-b44b-3dc2e67b389e", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1111.0, + 551.0 + ], + [ + 1128.0, + 590.0 + ], + [ + 1088.0, + 605.0 + ], + [ + 1071.0, + 566.0 + ] + ], + "center_px": [ + 1099.5, + 578.0 + ], + "quality": { + "area_px": 1815.0, + "perimeter_px": 170.52822875976562, + "sharpness": { + "laplacian_var": 705.4441714458114 + }, + "contrast": { + "p05": 20.0, + "p95": 169.0, + "dynamic_range": 149.0, + "mean_gray": 91.23937908496733, + "std_gray": 63.85244467612601 + }, + "geometry": { + "distance_to_center_norm": 0.4237752854824066, + "distance_to_border_px": 312.0 + }, + "edge_ratio": 1.0041351499491737, + "edge_lengths_px": [ + 42.54409408569336, + 42.72002029418945, + 42.54409408569336, + 42.72002029418945 + ] + }, + "confidence": 0.9958818790982638 + }, + { + "observation_id": "82300f71-ca6d-4e48-98d1-545f39d748f7", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1016.0, + 419.0 + ], + [ + 1031.0, + 457.0 + ], + [ + 994.0, + 474.0 + ], + [ + 980.0, + 436.0 + ] + ], + "center_px": [ + 1005.25, + 446.5 + ], + "quality": { + "area_px": 1633.5, + "perimeter_px": 161.88091659545898, + "sharpness": { + "laplacian_var": 1206.2538238529316 + }, + "contrast": { + "p05": 64.0, + "p95": 184.0, + "dynamic_range": 120.0, + "mean_gray": 109.98129092609916, + "std_gray": 52.10421328381854 + }, + "geometry": { + "distance_to_center_norm": 0.33353662490844727, + "distance_to_border_px": 409.0 + }, + "edge_ratio": 1.0261563943133383, + "edge_lengths_px": [ + 40.853397369384766, + 40.71854782104492, + 40.49691390991211, + 39.81205749511719 + ] + }, + "confidence": 0.9745103237106064 + }, + { + "observation_id": "e92eef9f-5571-4016-82e4-4369e6812b1d", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1036.0, + 506.0 + ], + [ + 1052.0, + 544.0 + ], + [ + 1022.0, + 561.0 + ], + [ + 1006.0, + 523.0 + ] + ], + "center_px": [ + 1029.0, + 533.5 + ], + "quality": { + "area_px": 1412.0, + "perimeter_px": 151.42587280273438, + "sharpness": { + "laplacian_var": 1012.7025030399973 + }, + "contrast": { + "p05": 38.0, + "p95": 183.0, + "dynamic_range": 145.0, + "mean_gray": 116.22860125260961, + "std_gray": 60.975378654093674 + }, + "geometry": { + "distance_to_center_norm": 0.34340929985046387, + "distance_to_border_px": 388.0 + }, + "edge_ratio": 1.1957310908974648, + "edge_lengths_px": [ + 41.231056213378906, + 34.48188018798828, + 41.231056213378906, + 34.48188018798828 + ] + }, + "confidence": 0.7872450089315723 + }, + { + "observation_id": "c7f86136-da5d-4567-bc99-dbcc4c018679", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1052.0, + 572.0 + ], + [ + 1067.0, + 612.0 + ], + [ + 1037.0, + 628.0 + ], + [ + 1025.0, + 587.0 + ] + ], + "center_px": [ + 1045.25, + 599.75 + ], + "quality": { + "area_px": 1363.5, + "perimeter_px": 150.32693099975586, + "sharpness": { + "laplacian_var": 1006.0857327103973 + }, + "contrast": { + "p05": 35.0, + "p95": 182.0, + "dynamic_range": 147.0, + "mean_gray": 87.55157437567861, + "std_gray": 61.08527885104246 + }, + "geometry": { + "distance_to_center_norm": 0.3674362897872925, + "distance_to_border_px": 373.0 + }, + "edge_ratio": 1.38311172556412, + "edge_lengths_px": [ + 42.72002029418945, + 34.0, + 42.72002029418945, + 30.886890411376953 + ] + }, + "confidence": 0.6572137183127795 + }, + { + "observation_id": "764edda7-9fcb-4a2c-99c5-e5fb28b47e70", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1373.0, + 931.0 + ], + [ + 1403.0, + 920.0 + ], + [ + 1417.0, + 952.0 + ], + [ + 1387.0, + 964.0 + ] + ], + "center_px": [ + 1395.0, + 941.75 + ], + "quality": { + "area_px": 1136.0, + "perimeter_px": 135.0394744873047, + "sharpness": { + "laplacian_var": 536.3795719450814 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 59.547588005215125, + "std_gray": 52.80020659255208 + }, + "geometry": { + "distance_to_center_norm": 0.8727903962135315, + "distance_to_border_px": 23.0 + }, + "edge_ratio": 1.1218600885282315, + "edge_lengths_px": [ + 31.95309066772461, + 34.928497314453125, + 32.31098937988281, + 35.84689712524414 + ] + }, + "confidence": 0.3105318897567382 + }, + { + "observation_id": "41fedea4-3221-4855-a949-e2d44fa18f67", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1361.0, + 872.0 + ], + [ + 1392.0, + 861.0 + ], + [ + 1405.0, + 893.0 + ], + [ + 1375.0, + 904.0 + ] + ], + "center_px": [ + 1383.25, + 882.5 + ], + "quality": { + "area_px": 1124.5, + "perimeter_px": 134.31518936157227, + "sharpness": { + "laplacian_var": 517.914546739087 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 76.5836627140975, + "std_gray": 53.471581821317514 + }, + "geometry": { + "distance_to_center_norm": 0.8294032216072083, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.0931179608780046, + "edge_lengths_px": [ + 32.893768310546875, + 34.539833068847656, + 31.95309066772461, + 34.928497314453125 + ] + }, + "confidence": 0.480064078578645 + }, + { + "observation_id": "c10a18fa-78d8-49d8-82d7-b40130a36a22", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 948.0, + 734.0 + ], + [ + 958.0, + 766.0 + ], + [ + 926.0, + 775.0 + ], + [ + 916.0, + 742.0 + ] + ], + "center_px": [ + 937.0, + 754.25 + ], + "quality": { + "area_px": 1125.0, + "perimeter_px": 134.23437118530273, + "sharpness": { + "laplacian_var": 451.55598900708645 + }, + "contrast": { + "p05": 10.0, + "p95": 140.0, + "dynamic_range": 130.0, + "mean_gray": 60.31848852901484, + "std_gray": 51.76857091737675 + }, + "geometry": { + "distance_to_center_norm": 0.3388288915157318, + "distance_to_border_px": 305.0 + }, + "edge_ratio": 1.0453855707425852, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 34.48188018798828, + 32.98484420776367 + ] + }, + "confidence": 0.717438637944123 + }, + { + "observation_id": "03734082-f214-4bc3-8f26-7e1c4655023b", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 644.0, + 826.0 + ], + [ + 676.0, + 815.0 + ], + [ + 686.0, + 847.0 + ], + [ + 654.0, + 857.0 + ] + ], + "center_px": [ + 665.0, + 836.25 + ], + "quality": { + "area_px": 1113.0, + "perimeter_px": 133.4630584716797, + "sharpness": { + "laplacian_var": 852.4779615278809 + }, + "contrast": { + "p05": 29.0, + "p95": 169.0, + "dynamic_range": 140.0, + "mean_gray": 86.11354309165527, + "std_gray": 58.71854981961371 + }, + "geometry": { + "distance_to_center_norm": 0.334791362285614, + "distance_to_border_px": 223.0 + }, + "edge_ratio": 1.0388313835116465, + "edge_lengths_px": [ + 33.83784866333008, + 33.52610778808594, + 33.52610778808594, + 32.572994232177734 + ] + }, + "confidence": 0.714264135428559 + }, + { + "observation_id": "7ba3fb06-0511-48cc-b34e-9c9e56e679d7", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1320.0, + 833.0 + ], + [ + 1351.0, + 823.0 + ], + [ + 1363.0, + 855.0 + ], + [ + 1333.0, + 865.0 + ] + ], + "center_px": [ + 1341.75, + 844.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 451.19488172035136 + }, + "contrast": { + "p05": 7.0, + "p95": 137.0, + "dynamic_range": 130.0, + "mean_gray": 45.32476319350474, + "std_gray": 49.27193956190029 + }, + "geometry": { + "distance_to_center_norm": 0.7689892649650574, + "distance_to_border_px": 77.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.6720101269988878 + }, + { + "observation_id": "b1d10235-fa47-47a1-9b0a-c6eafd5bbda8", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1378.0, + 795.0 + ], + [ + 1409.0, + 785.0 + ], + [ + 1421.0, + 817.0 + ], + [ + 1391.0, + 827.0 + ] + ], + "center_px": [ + 1399.75, + 806.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 495.05510317310643 + }, + "contrast": { + "p05": 8.0, + "p95": 139.0, + "dynamic_range": 131.0, + "mean_gray": 82.98646820027064, + "std_gray": 51.90790044031631 + }, + "geometry": { + "distance_to_center_norm": 0.8110472559928894, + "distance_to_border_px": 19.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.25536384825957736 + }, + { + "observation_id": "6ba78a65-cb58-4b1e-90e6-040973cfc5ad", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 534.0, + 807.0 + ], + [ + 566.0, + 797.0 + ], + [ + 575.0, + 829.0 + ], + [ + 544.0, + 839.0 + ] + ], + "center_px": [ + 554.75, + 818.0 + ], + "quality": { + "area_px": 1103.0, + "perimeter_px": 132.86674880981445, + "sharpness": { + "laplacian_var": 743.494629148182 + }, + "contrast": { + "p05": 35.0, + "p95": 172.0, + "dynamic_range": 137.0, + "mean_gray": 110.58367911479945, + "std_gray": 58.20082187769058 + }, + "geometry": { + "distance_to_center_norm": 0.35934022068977356, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 32.572994232177734, + 33.52610778808594 + ] + }, + "confidence": 0.7144285455619288 + }, + { + "observation_id": "ce4aa4fa-5429-40f1-8bd4-09735dc40bd4", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 824.0, + 853.0 + ], + [ + 854.0, + 841.0 + ], + [ + 867.0, + 872.0 + ], + [ + 836.0, + 884.0 + ] + ], + "center_px": [ + 845.25, + 862.5 + ], + "quality": { + "area_px": 1095.5, + "perimeter_px": 132.40953826904297, + "sharpness": { + "laplacian_var": 442.72637538104226 + }, + "contrast": { + "p05": 14.0, + "p95": 151.0, + "dynamic_range": 137.0, + "mean_gray": 42.81124497991968, + "std_gray": 45.242857765301586 + }, + "geometry": { + "distance_to_center_norm": 0.3844088017940521, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.040372688406745, + "edge_lengths_px": [ + 32.31098937988281, + 33.61547088623047, + 33.241539001464844, + 33.241539001464844 + ] + }, + "confidence": 0.7019920279258633 + }, + { + "observation_id": "12181636-8f22-49c3-9ae9-69b27bd45661", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 590.0, + 838.0 + ], + [ + 621.0, + 828.0 + ], + [ + 631.0, + 859.0 + ], + [ + 600.0, + 870.0 + ] + ], + "center_px": [ + 610.5, + 848.75 + ], + "quality": { + "area_px": 1081.5, + "perimeter_px": 131.56586456298828, + "sharpness": { + "laplacian_var": 731.9229727377668 + }, + "contrast": { + "p05": 31.0, + "p95": 169.0, + "dynamic_range": 138.0, + "mean_gray": 66.63649222065064, + "std_gray": 51.73446481181097 + }, + "geometry": { + "distance_to_center_norm": 0.3639915883541107, + "distance_to_border_px": 210.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 32.572994232177734, + 32.572994232177734, + 32.893768310546875, + 33.52610778808594 + ] + }, + "confidence": 0.7005026944924987 + }, + { + "observation_id": "f8800f3e-fec6-4a7a-8b84-9bf5ac16ed5e", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 655.0, + 735.0 + ], + [ + 687.0, + 726.0 + ], + [ + 695.0, + 757.0 + ], + [ + 664.0, + 766.0 + ] + ], + "center_px": [ + 675.25, + 746.0 + ], + "quality": { + "area_px": 1053.0, + "perimeter_px": 129.81721115112305, + "sharpness": { + "laplacian_var": 717.9247585125308 + }, + "contrast": { + "p05": 30.0, + "p95": 171.0, + "dynamic_range": 141.0, + "mean_gray": 93.84776536312849, + "std_gray": 59.42619485270114 + }, + "geometry": { + "distance_to_center_norm": 0.23422729969024658, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0382912394254866, + "edge_lengths_px": [ + 33.241539001464844, + 32.015621185302734, + 32.280025482177734, + 32.280025482177734 + ] + }, + "confidence": 0.6761108765479277 + }, + { + "observation_id": "12184a29-53ff-4a40-8cda-1c081e9b5955", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1325.0, + 744.0 + ], + [ + 1354.0, + 732.0 + ], + [ + 1368.0, + 763.0 + ], + [ + 1339.0, + 774.0 + ] + ], + "center_px": [ + 1346.5, + 753.25 + ], + "quality": { + "area_px": 1045.5, + "perimeter_px": 129.52142906188965, + "sharpness": { + "laplacian_var": 401.9192193180268 + }, + "contrast": { + "p05": 7.0, + "p95": 133.0, + "dynamic_range": 126.0, + "mean_gray": 49.76628895184136, + "std_gray": 49.769446320789825 + }, + "geometry": { + "distance_to_center_norm": 0.735332190990448, + "distance_to_border_px": 72.0 + }, + "edge_ratio": 1.096678006826234, + "edge_lengths_px": [ + 31.38471031188965, + 34.01470184326172, + 31.016124725341797, + 33.105892181396484 + ] + }, + "confidence": 0.63555573802114 + }, + { + "observation_id": "21256d60-2e66-4fa3-8a2a-aace69eaddbd", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 488.0, + 682.0 + ], + [ + 520.0, + 673.0 + ], + [ + 528.0, + 703.0 + ], + [ + 497.0, + 713.0 + ] + ], + "center_px": [ + 508.25, + 692.75 + ], + "quality": { + "area_px": 1041.5, + "perimeter_px": 129.14290809631348, + "sharpness": { + "laplacian_var": 854.9291926161701 + }, + "contrast": { + "p05": 39.0, + "p95": 174.0, + "dynamic_range": 135.0, + "mean_gray": 85.3946251768034, + "std_gray": 55.88886855913174 + }, + "geometry": { + "distance_to_center_norm": 0.2901056110858917, + "distance_to_border_px": 367.0 + }, + "edge_ratio": 1.070637881392484, + "edge_lengths_px": [ + 33.241539001464844, + 31.048349380493164, + 32.572994232177734, + 32.280025482177734 + ] + }, + "confidence": 0.6485230397697823 + }, + { + "observation_id": "4abd7694-ec7f-4eb9-b576-178ea79105f7", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1047.0, + 694.0 + ], + [ + 1058.0, + 725.0 + ], + [ + 1029.0, + 735.0 + ], + [ + 1017.0, + 703.0 + ] + ], + "center_px": [ + 1037.75, + 714.25 + ], + "quality": { + "area_px": 1038.5, + "perimeter_px": 129.06642532348633, + "sharpness": { + "laplacian_var": 702.8589017712277 + }, + "contrast": { + "p05": 13.0, + "p95": 151.0, + "dynamic_range": 138.0, + "mean_gray": 91.26308139534883, + "std_gray": 55.34838633216663 + }, + "geometry": { + "distance_to_center_norm": 0.40265801548957825, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 1.1141061874732403, + "edge_lengths_px": [ + 32.893768310546875, + 30.675724029541016, + 34.1760139465332, + 31.320919036865234 + ] + }, + "confidence": 0.62142490645665 + }, + { + "observation_id": "dca2d42c-dd9a-49be-87b3-93a429dd2da0", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 592.0, + 617.0 + ], + [ + 622.0, + 606.0 + ], + [ + 633.0, + 635.0 + ], + [ + 604.0, + 647.0 + ] + ], + "center_px": [ + 612.75, + 626.25 + ], + "quality": { + "area_px": 1002.5, + "perimeter_px": 126.66491508483887, + "sharpness": { + "laplacian_var": 861.4333753048808 + }, + "contrast": { + "p05": 34.0, + "p95": 174.0, + "dynamic_range": 140.0, + "mean_gray": 97.54451038575668, + "std_gray": 59.64062956897272 + }, + "geometry": { + "distance_to_center_norm": 0.15292063355445862, + "distance_to_border_px": 433.0 + }, + "edge_ratio": 1.041748112183823, + "edge_lengths_px": [ + 31.95309066772461, + 31.016124725341797, + 31.38471031188965, + 32.31098937988281 + ] + }, + "confidence": 0.6415498386959416 + }, + { + "observation_id": "2391bd8a-5484-401d-9db6-85c5907eabef", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 852.0, + 664.0 + ], + [ + 855.0, + 699.0 + ], + [ + 831.0, + 712.0 + ], + [ + 828.0, + 677.0 + ] + ], + "center_px": [ + 841.5, + 688.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 124.84605026245117, + "sharpness": { + "laplacian_var": 964.1437813663806 + }, + "contrast": { + "p05": 35.0, + "p95": 185.0, + "dynamic_range": 150.0, + "mean_gray": 80.50977198697069, + "std_gray": 59.04237755633671 + }, + "geometry": { + "distance_to_center_norm": 0.21276035904884338, + "distance_to_border_px": 368.0 + }, + "edge_ratio": 1.2870027603239267, + "edge_lengths_px": [ + 35.12833786010742, + 27.294687271118164, + 35.12833786010742, + 27.294687271118164 + ] + }, + "confidence": 0.45532147876086076 + }, + { + "observation_id": "e31e345c-1708-4a10-a5d1-3c93c9d314a1", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 549.0 + ], + [ + 750.0, + 540.0 + ], + [ + 759.0, + 570.0 + ], + [ + 728.0, + 578.0 + ] + ], + "center_px": [ + 739.25, + 559.25 + ], + "quality": { + "area_px": 972.0, + "perimeter_px": 124.74067687988281, + "sharpness": { + "laplacian_var": 858.8311608781246 + }, + "contrast": { + "p05": 30.0, + "p95": 176.0, + "dynamic_range": 146.0, + "mean_gray": 89.6813509544787, + "std_gray": 60.460128160193484 + }, + "geometry": { + "distance_to_center_norm": 0.030248457565903664, + "distance_to_border_px": 502.0 + }, + "edge_ratio": 1.0642352686074992, + "edge_lengths_px": [ + 31.320919036865234, + 31.320919036865234, + 32.015621185302734, + 30.08321762084961 + ] + }, + "confidence": 0.6088879208521975 + }, + { + "observation_id": "a23c47d5-3a65-49e7-9904-96d4e972b3c6", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 670.0, + 478.0 + ], + [ + 700.0, + 469.0 + ], + [ + 710.0, + 497.0 + ], + [ + 680.0, + 507.0 + ] + ], + "center_px": [ + 690.0, + 487.75 + ], + "quality": { + "area_px": 950.0, + "perimeter_px": 123.3515567779541, + "sharpness": { + "laplacian_var": 744.1718727855725 + }, + "contrast": { + "p05": 33.0, + "p95": 177.0, + "dynamic_range": 144.0, + "mean_gray": 123.30505952380952, + "std_gray": 58.57233093015588 + }, + "geometry": { + "distance_to_center_norm": 0.06694444268941879, + "distance_to_border_px": 469.0 + }, + "edge_ratio": 1.0635890487184443, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.62277603149414, + 30.675724029541016 + ] + }, + "confidence": 0.5954680843098741 + }, + { + "observation_id": "7e6e5f6a-51b0-4c5b-ad2c-ba095cde8f17", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 519.0, + 393.0 + ], + [ + 550.0, + 385.0 + ], + [ + 558.0, + 413.0 + ], + [ + 527.0, + 421.0 + ] + ], + "center_px": [ + 538.5, + 403.0 + ], + "quality": { + "area_px": 932.0, + "perimeter_px": 122.27212142944336, + "sharpness": { + "laplacian_var": 797.3173110559737 + }, + "contrast": { + "p05": 38.0, + "p95": 176.19999999999993, + "dynamic_range": 138.19999999999993, + "mean_gray": 94.14307458143075, + "std_gray": 55.87143525094488 + }, + "geometry": { + "distance_to_center_norm": 0.2526678740978241, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0994209463411062, + "edge_lengths_px": [ + 32.015621185302734, + 29.120439529418945, + 32.015621185302734, + 29.120439529418945 + ] + }, + "confidence": 0.5651459847123547 + }, + { + "observation_id": "c37c4b75-dc5f-4096-beb1-cbc04cf40e95", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 613.0, + 419.0 + ], + [ + 643.0, + 410.0 + ], + [ + 653.0, + 438.0 + ], + [ + 623.0, + 447.0 + ] + ], + "center_px": [ + 633.0, + 428.5 + ], + "quality": { + "area_px": 930.0, + "perimeter_px": 122.10611343383789, + "sharpness": { + "laplacian_var": 823.1077646304283 + }, + "contrast": { + "p05": 33.0, + "p95": 175.0, + "dynamic_range": 142.0, + "mean_gray": 90.3810975609756, + "std_gray": 58.11551162536803 + }, + "geometry": { + "distance_to_center_norm": 0.15713976323604584, + "distance_to_border_px": 410.0 + }, + "edge_ratio": 1.0534364993835403, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.320919036865234, + 29.73213768005371 + ] + }, + "confidence": 0.5885499509109636 + }, + { + "observation_id": "28234eb6-839c-4576-9b5c-e5adf872df1f", + "type": "aruco", + "marker_id": 82, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 420.0 + ], + [ + 1365.0, + 411.0 + ], + [ + 1377.0, + 439.0 + ], + [ + 1348.0, + 448.0 + ] + ], + "center_px": [ + 1356.5, + 429.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 492.47728625272765 + }, + "contrast": { + "p05": 8.0, + "p95": 144.0, + "dynamic_range": 136.0, + "mean_gray": 74.61658841940532, + "std_gray": 56.63950003540781 + }, + "geometry": { + "distance_to_center_norm": 0.7178005576133728, + "distance_to_border_px": 63.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.6113473409254715 + }, + { + "observation_id": "1e3f23d2-9b0c-420a-ab2c-cc0135a95c8f", + "type": "aruco", + "marker_id": 73, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1381.0, + 409.0 + ], + [ + 1410.0, + 400.0 + ], + [ + 1422.0, + 428.0 + ], + [ + 1393.0, + 437.0 + ] + ], + "center_px": [ + 1401.5, + 418.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 771.0965392424098 + }, + "contrast": { + "p05": 9.0, + "p95": 148.0, + "dynamic_range": 139.0, + "mean_gray": 87.07042253521126, + "std_gray": 52.83472667385498 + }, + "geometry": { + "distance_to_center_norm": 0.7691621780395508, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.22008504273316973 + }, + { + "observation_id": "e51458a5-581d-43f6-81b1-f05a9a7d8146", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 881.0, + 288.0 + ], + [ + 892.0, + 316.0 + ], + [ + 863.0, + 326.0 + ], + [ + 852.0, + 298.0 + ] + ], + "center_px": [ + 872.0, + 307.0 + ], + "quality": { + "area_px": 922.0, + "perimeter_px": 121.51788330078125, + "sharpness": { + "laplacian_var": 865.0098318523201 + }, + "contrast": { + "p05": 22.0, + "p95": 172.0, + "dynamic_range": 150.0, + "mean_gray": 82.59908536585365, + "std_gray": 60.95016906391271 + }, + "geometry": { + "distance_to_center_norm": 0.30910664796829224, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.0196955796470641, + "edge_lengths_px": [ + 30.08321762084961, + 30.675724029541016, + 30.08321762084961, + 30.675724029541016 + ] + }, + "confidence": 0.60279428383853 + }, + { + "observation_id": "5ae5becd-8a50-45fb-b5eb-0ebe49aa7850", + "type": "aruco", + "marker_id": 52, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1170.0, + 304.0 + ], + [ + 1198.0, + 294.0 + ], + [ + 1211.0, + 321.0 + ], + [ + 1182.0, + 331.0 + ] + ], + "center_px": [ + 1190.25, + 312.5 + ], + "quality": { + "area_px": 894.5, + "perimeter_px": 119.92108345031738, + "sharpness": { + "laplacian_var": 736.7821607663999 + }, + "contrast": { + "p05": 12.0, + "p95": 162.0, + "dynamic_range": 150.0, + "mean_gray": 73.56239870340356, + "std_gray": 59.95824921853181 + }, + "geometry": { + "distance_to_center_norm": 0.5804333686828613, + "distance_to_border_px": 229.0 + }, + "edge_ratio": 1.038215950330626, + "edge_lengths_px": [ + 29.73213768005371, + 29.96664810180664, + 30.675724029541016, + 29.546573638916016 + ] + }, + "confidence": 0.5743827506632194 + }, + { + "observation_id": "8ed3a05d-a8bf-41ac-b457-238c8102fac2", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 621.0, + 329.0 + ], + [ + 651.0, + 320.0 + ], + [ + 660.0, + 347.0 + ], + [ + 630.0, + 356.0 + ] + ], + "center_px": [ + 640.5, + 338.0 + ], + "quality": { + "area_px": 891.0, + "perimeter_px": 119.56283569335938, + "sharpness": { + "laplacian_var": 820.498501862312 + }, + "contrast": { + "p05": 32.0, + "p95": 175.0, + "dynamic_range": 143.0, + "mean_gray": 89.84786053882726, + "std_gray": 58.95198554771998 + }, + "geometry": { + "distance_to_center_norm": 0.24120134115219116, + "distance_to_border_px": 320.0 + }, + "edge_ratio": 1.1005049224950472, + "edge_lengths_px": [ + 31.320919036865234, + 28.460498809814453, + 31.320919036865234, + 28.460498809814453 + ] + }, + "confidence": 0.5397522426826521 + }, + { + "observation_id": "70d9a7b0-132d-42e7-9b00-ded317d18a63", + "type": "aruco", + "marker_id": 77, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1106.0, + 220.0 + ], + [ + 1135.0, + 213.0 + ], + [ + 1145.0, + 239.0 + ], + [ + 1116.0, + 248.0 + ] + ], + "center_px": [ + 1125.5, + 230.0 + ], + "quality": { + "area_px": 863.0, + "perimeter_px": 117.78623580932617, + "sharpness": { + "laplacian_var": 634.9850778546712 + }, + "contrast": { + "p05": 11.0, + "p95": 158.0, + "dynamic_range": 147.0, + "mean_gray": 69.19607843137256, + "std_gray": 58.47258547896745 + }, + "geometry": { + "distance_to_center_norm": 0.5671351552009583, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.0900202903476583, + "edge_lengths_px": [ + 29.832868576049805, + 27.85677719116211, + 30.364452362060547, + 29.73213768005371 + ] + }, + "confidence": 0.5278189208292927 + }, + { + "observation_id": "4076abb1-abe3-41e6-99d4-b148f67a1952", + "type": "aruco", + "marker_id": 83, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1304.0, + 199.0 + ], + [ + 1332.0, + 191.0 + ], + [ + 1343.0, + 218.0 + ], + [ + 1314.0, + 226.0 + ] + ], + "center_px": [ + 1323.25, + 208.5 + ], + "quality": { + "area_px": 853.5, + "perimeter_px": 117.15077781677246, + "sharpness": { + "laplacian_var": 787.246986385212 + }, + "contrast": { + "p05": 11.0, + "p95": 159.19999999999993, + "dynamic_range": 148.19999999999993, + "mean_gray": 92.65964343598056, + "std_gray": 57.146865375444264 + }, + "geometry": { + "distance_to_center_norm": 0.7648148536682129, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0448333273602466, + "edge_lengths_px": [ + 29.120439529418945, + 29.154760360717773, + 30.08321762084961, + 28.792360305786133 + ] + }, + "confidence": 0.5445844663450473 + }, + { + "observation_id": "2d1d2003-f1f3-4739-8723-8d5c6f8103b1", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1089.0, + 172.0 + ], + [ + 1118.0, + 165.0 + ], + [ + 1127.0, + 192.0 + ], + [ + 1098.0, + 199.0 + ] + ], + "center_px": [ + 1108.0, + 182.0 + ], + "quality": { + "area_px": 846.0, + "perimeter_px": 116.58673477172852, + "sharpness": { + "laplacian_var": 840.0864058387932 + }, + "contrast": { + "p05": 18.0, + "p95": 165.0, + "dynamic_range": 147.0, + "mean_gray": 108.12054329371817, + "std_gray": 55.17911014115476 + }, + "geometry": { + "distance_to_center_norm": 0.5865867137908936, + "distance_to_border_px": 165.0 + }, + "edge_ratio": 1.048220158592656, + "edge_lengths_px": [ + 29.832868576049805, + 28.460498809814453, + 29.832868576049805, + 28.460498809814453 + ] + }, + "confidence": 0.5380549070504695 + }, + { + "observation_id": "185ca401-cb6d-4768-9676-e414cdc796ce", + "type": "aruco", + "marker_id": 61, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1260.0, + 127.0 + ], + [ + 1287.0, + 117.0 + ], + [ + 1300.0, + 143.0 + ], + [ + 1273.0, + 153.0 + ] + ], + "center_px": [ + 1280.0, + 135.0 + ], + "quality": { + "area_px": 832.0, + "perimeter_px": 115.72248840332031, + "sharpness": { + "laplacian_var": 747.7801521890221 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 95.53195164075993, + "std_gray": 57.42506055833918 + }, + "geometry": { + "distance_to_center_norm": 0.7678935527801514, + "distance_to_border_px": 117.0 + }, + "edge_ratio": 1.0096040611867558, + "edge_lengths_px": [ + 28.792360305786133, + 29.068883895874023, + 28.792360305786133, + 29.068883895874023 + ] + }, + "confidence": 0.5493902887184056 + }, + { + "observation_id": "a6befb50-9b8e-45b4-9749-ea2997ab44f4", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 842.0, + 759.0 + ], + [ + 869.0, + 767.0 + ], + [ + 844.0, + 778.0 + ], + [ + 816.0, + 770.0 + ] + ], + "center_px": [ + 842.75, + 768.5 + ], + "quality": { + "area_px": 506.5, + "perimeter_px": 112.82488250732422, + "sharpness": { + "laplacian_var": 927.7063988919667 + }, + "contrast": { + "p05": 19.0, + "p95": 83.0, + "dynamic_range": 64.0, + "mean_gray": 43.613157894736844, + "std_gray": 22.719116354348767 + }, + "geometry": { + "distance_to_center_norm": 0.2882038950920105, + "distance_to_border_px": 302.0 + }, + "edge_ratio": 1.0661750749552474, + "edge_lengths_px": [ + 28.160255432128906, + 27.312999725341797, + 29.120439529418945, + 28.23118782043457 + ] + }, + "confidence": 0.25336676844060735 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1315.0, + 285.0 + ], + [ + 1328.0, + 312.0 + ], + [ + 1300.0, + 322.0 + ], + [ + 1287.0, + 295.0 + ] + ], + "center_px": [ + 1307.5, + 303.5 + ], + "area_px": 886.0 + }, + { + "image_points_px": [ + [ + 1003.0, + 394.0 + ], + [ + 972.0, + 415.0 + ], + [ + 973.0, + 410.0 + ], + [ + 985.0, + 400.0 + ] + ], + "center_px": [ + 983.25, + 404.75 + ], + "area_px": 121.0 + }, + { + "image_points_px": [ + [ + 780.0, + 278.0 + ], + [ + 783.0, + 279.0 + ], + [ + 797.0, + 300.0 + ], + [ + 795.0, + 302.0 + ] + ], + "center_px": [ + 788.75, + 289.75 + ], + "area_px": 63.5 + }, + { + "image_points_px": [ + [ + 1087.0, + 550.0 + ], + [ + 1063.0, + 565.0 + ], + [ + 1074.0, + 554.0 + ], + [ + 1082.0, + 550.0 + ] + ], + "center_px": [ + 1076.5, + 554.75 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 665.0, + 67.0 + ], + [ + 675.0, + 85.0 + ], + [ + 674.0, + 91.0 + ], + [ + 667.0, + 78.0 + ] + ], + "center_px": [ + 670.25, + 80.25 + ], + "area_px": 64.5 + }, + { + "image_points_px": [ + [ + 1107.0, + 93.0 + ], + [ + 1110.0, + 95.0 + ], + [ + 1120.0, + 115.0 + ], + [ + 1115.0, + 111.0 + ] + ], + "center_px": [ + 1113.0, + 103.5 + ], + "area_px": 49.0 + }, + { + "image_points_px": [ + [ + 735.0, + 232.0 + ], + [ + 745.0, + 254.0 + ], + [ + 742.0, + 252.0 + ], + [ + 736.0, + 239.0 + ] + ], + "center_px": [ + 739.5, + 244.25 + ], + "area_px": 37.5 + }, + { + "image_points_px": [ + [ + 1214.0, + 340.0 + ], + [ + 1219.0, + 346.0 + ], + [ + 1223.0, + 362.0 + ], + [ + 1216.0, + 349.0 + ] + ], + "center_px": [ + 1218.0, + 349.25 + ], + "area_px": 46.5 + }, + { + "image_points_px": [ + [ + 1121.0, + 562.0 + ], + [ + 1129.0, + 569.0 + ], + [ + 1131.0, + 577.0 + ], + [ + 1130.0, + 583.0 + ] + ], + "center_px": [ + 1127.75, + 572.75 + ], + "area_px": 62.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/aruco_marker_poses.json b/data/camera_study/Scene10/k4_bdeg/aruco_marker_poses.json new file mode 100644 index 0000000..d979272 --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/aruco_marker_poses.json @@ -0,0 +1,1289 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:19:35Z", + "summary": { + "num_cameras": 4, + "num_markers": 28 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.30676119089108084, + -0.2023041983961035, + 0.02574305979027837 + ], + "position_mm": [ + 306.76119089108084, + -202.30419839610352, + 25.74305979027837 + ], + "normal": [ + 0.10890673965520568, + -0.9813787734019289, + 0.15822460356657173 + ], + "corners_m": [ + [ + 0.2938773901067929, + -0.2022793007099742, + 0.03650912105933598 + ], + [ + 0.31755238832992977, + -0.19872524228279473, + 0.03876433439489378 + ], + [ + 0.31995476573599346, + -0.20282760840220718, + 0.015128243040855256 + ], + [ + 0.2956602193916073, + -0.20538464218943786, + 0.012570540666028467 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.230722635365897 + }, + { + "marker_id": 45, + "link": "FingerB", + "position_m": [ + 0.35447579037318544, + -0.19935550762815046, + 0.020565369613531267 + ], + "position_mm": [ + 354.4757903731854, + -199.35550762815046, + 20.565369613531267 + ], + "normal": [ + 0.7885158028445343, + -0.6071465518872282, + -0.09806066079671788 + ], + "corners_m": [ + [ + 0.3586662238839124, + -0.19750983800112829, + 0.03785882120717178 + ], + [ + 0.3641346938546112, + -0.18517736925129946, + 0.015507635303991157 + ], + [ + 0.35097836815506456, + -0.20210977518555653, + 0.004056947075731876 + ], + [ + 0.3441238755991537, + -0.21262504807461757, + 0.024838074867230258 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.845302391202424 + }, + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.3437577637113646, + -0.28838525752123456, + -0.027508709721255294 + ], + "position_mm": [ + 343.7577637113646, + -288.38525752123456, + -27.508709721255293 + ], + "normal": [ + 0.02290139577590852, + -0.00474600713390405, + 0.9997264633327458 + ], + "corners_m": [ + [ + 0.33178886903351323, + -0.29979220964636605, + -0.027350709629939154 + ], + [ + 0.33241569742607135, + -0.27685310661369833, + -0.02713248865104889 + ], + [ + 0.3557952405334664, + -0.27694375859998144, + -0.027791613491446248 + ], + [ + 0.35503124785240725, + -0.2999519552248923, + -0.027760027112586873 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.151285517508793 + }, + { + "marker_id": 48, + "link": "Board", + "position_m": [ + 0.6871947960317375, + -0.31830325546674715, + -0.0273252660629332 + ], + "position_mm": [ + 687.1947960317375, + -318.30325546674715, + -27.325266062933203 + ], + "normal": [ + 0.0175680862909672, + 0.022045683267781332, + 0.9996025961317476 + ], + "corners_m": [ + [ + 0.6754758319591488, + -0.33029745292430457, + -0.026807680495840758 + ], + [ + 0.6759935179428941, + -0.3064593138474955, + -0.02743904568359012 + ], + [ + 0.6983779602140827, + -0.306972533383419, + -0.027719433353828517 + ], + [ + 0.6989318740108247, + -0.32948372171176954, + -0.027334904718473406 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.06038909847641 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16791509828576257, + -0.17356612585643777, + -0.027389647328830386 + ], + "position_mm": [ + 167.91509828576255, + -173.56612585643776, + -27.389647328830385 + ], + "normal": [ + -0.014525107175956765, + -0.003574152644957307, + 0.9998881170883058 + ], + "corners_m": [ + [ + 0.15582664248498654, + -0.18455681701293383, + -0.02767348462735602 + ], + [ + 0.1566254224467779, + -0.16166444121973297, + -0.027441491532093725 + ], + [ + 0.17990200993508204, + -0.16219139909354996, + -0.027242251440187038 + ], + [ + 0.1793063182762038, + -0.18585184609953426, + -0.02720136171568477 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.344741926612517 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.4882003560338498, + 0.21454919235920805, + -0.026922011646615267 + ], + "position_mm": [ + 488.2003560338498, + 214.54919235920806, + -26.922011646615267 + ], + "normal": [ + -0.029659504505452988, + -0.017595028497744532, + 0.9994051874813612 + ], + "corners_m": [ + [ + 0.4767699379764077, + 0.20330095680321536, + -0.027672222780932863 + ], + [ + 0.47706098604732483, + 0.22627406811344827, + -0.026831355258605454 + ], + [ + 0.4995452085482018, + 0.22579164311548014, + -0.02660250535209066 + ], + [ + 0.499425291563465, + 0.20283010140468835, + -0.026581963194832095 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.782305498437523 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.3398014869433083, + -0.3281882562234325, + -0.02732289847621484 + ], + "position_mm": [ + 339.8014869433083, + -328.1882562234325, + -27.32289847621484 + ], + "normal": [ + 0.029687440469347803, + 0.03423897997795744, + 0.998972646336449 + ], + "corners_m": [ + [ + 0.32792505218477247, + -0.339676029361475, + -0.026498316047462524 + ], + [ + 0.3285562368013931, + -0.31673929942986834, + -0.02745901243175828 + ], + [ + 0.35168547315792564, + -0.31663475840022887, + -0.027994565082298053 + ], + [ + 0.35103918562914216, + -0.3397029377021578, + -0.0273397003433405 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.07929151313496 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.28445732745582347, + -0.26106235286605983, + -0.027127443792702346 + ], + "position_mm": [ + 284.4573274558235, + -261.0623528660598, + -27.127443792702344 + ], + "normal": [ + -0.01515388465873932, + 0.007020801424972412, + 0.99986052433682 + ], + "corners_m": [ + [ + 0.2724882022547233, + -0.2725441165389951, + -0.02740414690326164 + ], + [ + 0.27330457036437134, + -0.24930809929726835, + -0.027201889568481616 + ], + [ + 0.29634998972056853, + -0.2496963815903531, + -0.027205881996666865 + ], + [ + 0.2956865474836307, + -0.2727008140376229, + -0.026697856702399273 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.132287815360648 + }, + { + "marker_id": 57, + "link": "Board", + "position_m": [ + 0.6043014556076433, + -0.36522271977523946, + -0.027512117134979735 + ], + "position_mm": [ + 604.3014556076432, + -365.22271977523945, + -27.512117134979736 + ], + "normal": [ + 0.03495884584046278, + -0.005462497311808814, + 0.9993738240621581 + ], + "corners_m": [ + [ + 0.591968639923899, + -0.37591941696440434, + -0.02692398942041797 + ], + [ + 0.5940115776187654, + -0.35273718727345393, + -0.027299077808318407 + ], + [ + 0.6166315474518378, + -0.3547479630737979, + -0.02766687294690424 + ], + [ + 0.6145940574360705, + -0.3774863117893017, + -0.028158528364278318 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.88379257230473 + }, + { + "marker_id": 59, + "link": "Board", + "position_m": [ + 0.6271531267350818, + -0.2767460787695593, + -0.02680912156499644 + ], + "position_mm": [ + 627.1531267350819, + -276.7460787695593, + -26.809121564996442 + ], + "normal": [ + -0.017553027598460103, + -0.018829929153653342, + 0.9996686075846316 + ], + "corners_m": [ + [ + 0.6163665738281722, + -0.2884168282951614, + -0.02708587373036205 + ], + [ + 0.615419349019124, + -0.2658152874581792, + -0.026941169391599955 + ], + [ + 0.6379736103226642, + -0.2648156154961137, + -0.02626549888750094 + ], + [ + 0.6388529737703668, + -0.28793658382878307, + -0.026943944250522805 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.711990484789286 + }, + { + "marker_id": 63, + "link": "Board", + "position_m": [ + 0.7753197148635416, + -0.2362528568405718, + -0.02759305362330218 + ], + "position_mm": [ + 775.3197148635415, + -236.25285684057178, + -27.59305362330218 + ], + "normal": [ + 0.008475408855243238, + 0.022416341480833102, + 0.9997127962966921 + ], + "corners_m": [ + [ + 0.7643720804046347, + -0.24839323542519956, + -0.02710655933505356 + ], + [ + 0.7636751096275167, + -0.22513444993330092, + -0.027864973212857535 + ], + [ + 0.7862897533769408, + -0.2244049659291749, + -0.02782718592938572 + ], + [ + 0.7869419160450744, + -0.24707877607461187, + -0.027573496015911914 + ] + ], + "num_cameras": 3, + "edge_length_mm": 22.80138178550564 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.01909267534900415, + -0.18960982971739926, + -0.02694392592200973 + ], + "position_mm": [ + -19.09267534900415, + -189.60982971739926, + -26.94392592200973 + ], + "normal": [ + 0.015514117729334222, + 0.01456470478785899, + 0.9997735651263855 + ], + "corners_m": [ + [ + -0.030889716700635582, + -0.20101004954329457, + -0.02670887459358297 + ], + [ + -0.0307015158384876, + -0.17805559282454522, + -0.026817352770505353 + ], + [ + -0.007367211791633825, + -0.17824705885828548, + -0.027406509444755277 + ], + [ + -0.007412257065259577, + -0.20112661764347178, + -0.02684296687919531 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.16567114925995 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.005943372748162582, + -0.2778036799466163, + -0.026960847894043037 + ], + "position_mm": [ + 5.943372748162582, + -277.8036799466163, + -26.960847894043038 + ], + "normal": [ + 0.012798047414919163, + 0.0019636994971768966, + 0.9999161734198774 + ], + "corners_m": [ + [ + -0.005840977855237068, + -0.2893581398202042, + -0.026757518275956096 + ], + [ + -0.0054972965063023625, + -0.26610055483532946, + -0.026867614464344144 + ], + [ + 0.017571837089716245, + -0.2662597619975393, + -0.027102108843662123 + ], + [ + 0.017539928264473512, + -0.2894962631333922, + -0.02711614999220978 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.237962765555313 + }, + { + "marker_id": 71, + "link": "Board", + "position_m": [ + 0.7509111191421864, + -0.2855038724522174, + -0.026645208288605504 + ], + "position_mm": [ + 750.9111191421864, + -285.5038724522174, + -26.645208288605502 + ], + "normal": [ + -0.041777888769783986, + -0.024469560501440446, + 0.9988272366224331 + ], + "corners_m": [ + [ + 0.7391127988200036, + -0.29637083291585326, + -0.027120191741793056 + ], + [ + 0.740890300929251, + -0.2730886316287105, + -0.027058084553021295 + ], + [ + 0.762190290099723, + -0.2746721988504304, + -0.0256087849700469 + ], + [ + 0.7614510867197684, + -0.29788382641387556, + -0.026793771889560763 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.60084523822078 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.4414133198826211, + 0.1935115960456138, + -0.02738745789971034 + ], + "position_mm": [ + 441.4133198826211, + 193.5115960456138, + -27.38745789971034 + ], + "normal": [ + 0.02298579013478705, + 0.036855436629363525, + 0.9990562197607994 + ], + "corners_m": [ + [ + 0.4301134974182766, + 0.181338076255318, + -0.02689044864326103 + ], + [ + 0.4298312782010313, + 0.2048251085816973, + -0.027324806173678603 + ], + [ + 0.4526236030052486, + 0.20567530528523256, + -0.0283074767187113 + ], + [ + 0.45308490090592785, + 0.18220789406020726, + -0.027027100063190434 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.20429774164863 + }, + { + "marker_id": 85, + "link": "Board", + "position_m": [ + 0.5067727893206623, + -0.31348907655683783, + -0.027707681605646822 + ], + "position_mm": [ + 506.7727893206623, + -313.48907655683786, + -27.707681605646822 + ], + "normal": [ + -0.032945795040505654, + 0.05215154093488273, + 0.9980955822802074 + ], + "corners_m": [ + [ + 0.49421550049692786, + -0.3253465551636556, + -0.02711418319382728 + ], + [ + 0.49696840583839097, + -0.3000632428500328, + -0.029147219073527336 + ], + [ + 0.5185232235795795, + -0.3026497389850415, + -0.02743328595044878 + ], + [ + 0.5173840273677507, + -0.3258967692286214, + -0.0271360382047839 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.435690938999276 + }, + { + "marker_id": 92, + "link": "Board", + "position_m": [ + 0.6466525463525512, + -0.18705950518033754, + -0.027251640596468882 + ], + "position_mm": [ + 646.6525463525512, + -187.05950518033754, + -27.25164059646888 + ], + "normal": [ + 0.03825629107142391, + 0.02106249247983472, + 0.9990459587046011 + ], + "corners_m": [ + [ + 0.6348169438992656, + -0.19908819490408183, + -0.026701161792317577 + ], + [ + 0.6351422984165451, + -0.17561611521746853, + -0.026896089255574587 + ], + [ + 0.6584931113326336, + -0.17533126963333032, + -0.02811237794189459 + ], + [ + 0.6581578317617608, + -0.1982024409664695, + -0.02729693339608876 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.278197887009746 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18671289900640264, + -0.2767623809748032, + -0.027035042415907394 + ], + "position_mm": [ + 186.71289900640264, + -276.7623809748032, + -27.035042415907395 + ], + "normal": [ + -0.01728779257004626, + -0.015625415792302033, + 0.9997284524356466 + ], + "corners_m": [ + [ + 0.17539267492957167, + -0.28870989276368425, + -0.027210355991566983 + ], + [ + 0.17430416077232844, + -0.2656762054997167, + -0.027280754756906434 + ], + [ + 0.19820533551855377, + -0.2654051086208797, + -0.026443293809925442 + ], + [ + 0.19894942480515662, + -0.287258317014932, + -0.02720576510523072 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.114368169403654 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6513322273518023, + -0.22364573124221426, + -0.027554712590064274 + ], + "position_mm": [ + 651.3322273518023, + -223.64573124221425, + -27.554712590064273 + ], + "normal": [ + -0.020202469001299475, + -0.005636061944980009, + 0.9997800233311345 + ], + "corners_m": [ + [ + 0.6392066135804306, + -0.23425197374575382, + -0.027716405176585027 + ], + [ + 0.6406210786542871, + -0.21157683326967408, + -0.027849097932630906 + ], + [ + 0.6632326844017368, + -0.21286552352956026, + -0.027109510468121063 + ], + [ + 0.6622685327707547, + -0.23588859442386886, + -0.027543836782920106 + ] + ], + "num_cameras": 3, + "edge_length_mm": 22.886969774988426 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10481493724866515, + -0.19095126176675475, + -0.02706882513267902 + ], + "position_mm": [ + 104.81493724866516, + -190.95126176675475, + -27.068825132679017 + ], + "normal": [ + 0.017854473840836587, + -0.004615256006110568, + 0.9998299441284328 + ], + "corners_m": [ + [ + 0.09359867691028155, + -0.20307323686871165, + -0.026788263127785227 + ], + [ + 0.09246234192052012, + -0.1801133134273898, + -0.02693307194763498 + ], + [ + 0.11616203953098217, + -0.17901953224414652, + -0.027079170764286883 + ], + [ + 0.11703669063287676, + -0.20159896452677104, + -0.027474794691008976 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.202013215473194 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.31042093304446305, + -0.15449021016899928, + 0.15658919803872182 + ], + "position_mm": [ + 310.420933044463, + -154.49021016899928, + 156.5891980387218 + ], + "normal": [ + -0.35220874295814975, + -0.7212354749736437, + 0.596463235265496 + ], + "corners_m": [ + [ + 0.29901187678128033, + -0.1436046937411828, + 0.16285307026993506 + ], + [ + 0.3212607398917116, + -0.1498176322863212, + 0.1688003917666407 + ], + [ + 0.322080272372025, + -0.16535797917096684, + 0.15017506585369042 + ], + [ + 0.2993308431328351, + -0.15918053547752625, + 0.1445282642646211 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.10414304917018 + }, + { + "marker_id": 205, + "link": "Board", + "position_m": [ + 0.7523866981099311, + -0.090266534421375, + 0.0005166891777635844 + ], + "position_mm": [ + 752.3866981099311, + -90.266534421375, + 0.5166891777635845 + ], + "normal": [ + -0.04342385360375668, + -0.038606341462984466, + 0.9983105325183357 + ], + "corners_m": [ + [ + 0.7409380072354944, + -0.07871761057079167, + 0.00023159890688253374 + ], + [ + 0.7634346575714828, + -0.07879370503656513, + 0.0016733728383624752 + ], + [ + 0.7641046726529462, + -0.10186220687786679, + 0.00035053988795575794 + ], + [ + 0.7410694549798009, + -0.10169261520027639, + -0.0001887549221464292 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.92010559101538 + }, + { + "marker_id": 215, + "link": "Board", + "position_m": [ + 0.25050212322468346, + -0.08867039437519665, + 1.8410056185108915e-05 + ], + "position_mm": [ + 250.50212322468346, + -88.67039437519665, + 0.018410056185108915 + ], + "normal": [ + 0.0065759612378247095, + -0.0030190545894855925, + 0.9999738206789138 + ], + "corners_m": [ + [ + 0.23918328153011878, + -0.0764679161283234, + 0.0001202431620144573 + ], + [ + 0.26269855317308277, + -0.0774118587850395, + -1.838444746108705e-05 + ], + [ + 0.26197534814958345, + -0.10090703355156008, + -0.00010328013146210398 + ], + [ + 0.2381513100459489, + -0.09989476903586364, + 7.506164164916939e-05 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.584222355612194 + }, + { + "marker_id": 218, + "link": "Arm2", + "position_m": [ + 0.35381098474249395, + -0.10047327171806153, + 0.20071085664482016 + ], + "position_mm": [ + 353.81098474249393, + -100.47327171806153, + 200.71085664482015 + ], + "normal": [ + 0.9450785173362959, + -0.26576851045054534, + 0.19024640580659372 + ], + "corners_m": [ + [ + 0.34984337063838983, + -0.10192312829273621, + 0.218338972736823 + ], + [ + 0.3576557314294135, + -0.08474484534599981, + 0.20364384957362622 + ], + [ + 0.35784177225248853, + -0.09831973055337345, + 0.1836367871732053 + ], + [ + 0.34990306464968385, + -0.11690538268013662, + 0.19722381709562609 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.5849412362145 + }, + { + "marker_id": 219, + "link": "Arm2", + "position_m": [ + 0.35756723914633964, + -0.17072093846621747, + 0.11726172304591834 + ], + "position_mm": [ + 357.56723914633966, + -170.72093846621746, + 117.26172304591833 + ], + "normal": [ + 0.9672539487404768, + -0.24203172494136654, + 0.07642278958440137 + ], + "corners_m": [ + [ + 0.3558891660923866, + -0.17411392410718055, + 0.13706384359437157 + ], + [ + 0.361062548652176, + -0.15366354128617432, + 0.1176991175719209 + ], + [ + 0.36035344289029425, + -0.16877125224580256, + 0.09866366363026231 + ], + [ + 0.3529637989505019, + -0.18633503622571249, + 0.11562026738711859 + ] + ], + "num_cameras": 2, + "edge_length_mm": 25.827315315820275 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.23054756028481954, + -0.03625124160459173, + 0.30533190804836013 + ], + "position_mm": [ + 230.54756028481955, + -36.251241604591726, + 305.33190804836016 + ], + "normal": [ + -0.01052684120353379, + -0.48082389838687645, + 0.8767539930643728 + ], + "corners_m": [ + [ + 0.2189687881727314, + -0.025935906162139928, + 0.31079249001717185 + ], + [ + 0.24244558572689678, + -0.026155574720319628, + 0.31106801773775716 + ], + [ + 0.24218177513180797, + -0.046665417557109685, + 0.2997039401944188 + ], + [ + 0.218594092107842, + -0.046248067978797665, + 0.29976318424409265 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.40913617422814 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3209366759603642, + -0.04471277825168639, + 0.29724999716892325 + ], + "position_mm": [ + 320.9366759603642, + -44.71277825168639, + 297.24999716892324 + ], + "normal": [ + 0.008379965337362856, + -0.7549783610914556, + 0.6556961571220351 + ], + "corners_m": [ + [ + 0.30871594348269454, + -0.03752190207245656, + 0.3057331363197743 + ], + [ + 0.3323663998910075, + -0.03703178565741633, + 0.30590464730961353 + ], + [ + 0.3334063885001284, + -0.052610876387174856, + 0.2880391263034304 + ], + [ + 0.3092579719676263, + -0.0516865488896978, + 0.2893230787428747 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.31695882958696 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.28218486419552014, + -0.040577289388547266, + 0.30154793182702916 + ], + "position_mm": [ + 282.18486419552016, + -40.577289388547264, + 301.5479318270292 + ], + "normal": [ + 0.002984545943804635, + -0.7675119010169338, + 0.6410277484500041 + ], + "corners_m": [ + [ + 0.2698323239724669, + -0.03327904640768656, + 0.31022388794058814 + ], + [ + 0.2935381761107519, + -0.032516145108743545, + 0.31126459403148615 + ], + [ + 0.2946686165707101, + -0.047888707563492026, + 0.29261916506824504 + ], + [ + 0.27070034012815164, + -0.04862525847426694, + 0.29208408026779736 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.92366321578508 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/aruco_positions_initial.json b/data/camera_study/Scene10/k4_bdeg/aruco_positions_initial.json new file mode 100644 index 0000000..792c0e3 --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/aruco_positions_initial.json @@ -0,0 +1,618 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:19:34Z", + "summary": { + "num_cameras": 4, + "num_markers": 28, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3068466900499258, + -0.20229325103683918, + 0.02576880988093605 + ], + "position_mm": [ + 306.8466900499258, + -202.29325103683917, + 25.76880988093605 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.35437894921135027, + -0.19928623710836776, + 0.020567426998382186 + ], + "position_mm": [ + 354.3789492113503, + -199.28623710836777, + 20.567426998382185 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.34376654762038256, + -0.28839563095466614, + -0.02760537942584299 + ], + "position_mm": [ + 343.76654762038254, + -288.39563095466616, + -27.60537942584299 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6876697828806948, + -0.3186006114330489, + -0.02736316925778259 + ], + "position_mm": [ + 687.6697828806948, + -318.6006114330489, + -27.36316925778259 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16791244327108318, + -0.17356576866439072, + -0.02748782876628542 + ], + "position_mm": [ + 167.9124432710832, + -173.56576866439073, + -27.487828766285418 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4882162799182303, + 0.2145787188045998, + -0.027009952548570484 + ], + "position_mm": [ + 488.2162799182303, + 214.57871880459982, + -27.009952548570485 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.34022600137938147, + -0.3287144924988329, + -0.027671883787346047 + ], + "position_mm": [ + 340.22600137938144, + -328.7144924988329, + -27.671883787346047 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2844629212143551, + -0.2610707104386771, + -0.027225119001680127 + ], + "position_mm": [ + 284.4629212143551, + -261.07071043867705, + -27.225119001680127 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 57, + "position_m": [ + 0.6043205419720532, + -0.3652268610664635, + -0.02758261014495349 + ], + "position_mm": [ + 604.3205419720532, + -365.2268610664635, + -27.58261014495349 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 59, + "position_m": [ + 0.6271865903718744, + -0.27675395886676263, + -0.026907347912707404 + ], + "position_mm": [ + 627.1865903718744, + -276.7539588667626, + -26.907347912707404 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7759056113265437, + -0.23645070279275476, + -0.027438199281543736 + ], + "position_mm": [ + 775.9056113265436, + -236.45070279275475, + -27.438199281543735 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01884321403035284, + -0.1897498250154755, + -0.027136995944053673 + ], + "position_mm": [ + -18.84321403035284, + -189.7498250154755, + -27.136995944053673 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.006150609479969763, + -0.2777950294615375, + -0.027010644320756547 + ], + "position_mm": [ + 6.150609479969763, + -277.7950294615375, + -27.010644320756548 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 71, + "position_m": [ + 0.7509604864944157, + -0.28551125075942685, + -0.02674480689368867 + ], + "position_mm": [ + 750.9604864944157, + -285.51125075942684, + -26.744806893688672 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.441421275570027, + 0.19353518392648628, + -0.027474752620069133 + ], + "position_mm": [ + 441.42127557002703, + 193.53518392648627, + -27.474752620069133 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5068041661114264, + -0.3135045828070479, + -0.02781607148385666 + ], + "position_mm": [ + 506.8041661114264, + -313.5045828070479, + -27.81607148385666 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 92, + "position_m": [ + 0.6466795964899504, + -0.187063834404983, + -0.027344911707301592 + ], + "position_mm": [ + 646.6795964899504, + -187.063834404983, + -27.34491170730159 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18670280180648224, + -0.2767750701934641, + -0.02712429999447797 + ], + "position_mm": [ + 186.70280180648226, + -276.7750701934641, + -27.12429999447797 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6517521811062535, + -0.22377333946988334, + -0.027512336599126174 + ], + "position_mm": [ + 651.7521811062536, + -223.77333946988335, + -27.512336599126176 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10497805201041903, + -0.19080856212389075, + -0.027006345982441688 + ], + "position_mm": [ + 104.97805201041903, + -190.80856212389074, + -27.006345982441687 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3103743137123175, + -0.15428307632816093, + 0.15665617276472968 + ], + "position_mm": [ + 310.3743137123175, + -154.28307632816094, + 156.6561727647297 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7524289457637402, + -0.09025863172893372, + 0.0004226980684333642 + ], + "position_mm": [ + 752.4289457637402, + -90.25863172893372, + 0.4226980684333642 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.25050098796217085, + -0.08866387046146879, + -7.820550617432224e-05 + ], + "position_mm": [ + 250.50098796217085, + -88.66387046146879, + -0.07820550617432225 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3535050189182776, + -0.10080076085835513, + 0.20138373933533232 + ], + "position_mm": [ + 353.50501891827764, + -100.80076085835513, + 201.38373933533234 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3574633079520426, + -0.17070629965796863, + 0.11727243188180331 + ], + "position_mm": [ + 357.4633079520426, + -170.70629965796863, + 117.27243188180331 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23001007116575176, + -0.036080233689634644, + 0.30535428122393937 + ], + "position_mm": [ + 230.01007116575175, + -36.080233689634646, + 305.3542812239394 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3209492607624974, + -0.04460980298778073, + 0.29718427648412704 + ], + "position_mm": [ + 320.94926076249743, + -44.60980298778073, + 297.18427648412705 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2818068163969561, + -0.04051140855357585, + 0.3014757489894613 + ], + "position_mm": [ + 281.8068163969561, + -40.51140855357585, + 301.4757489894613 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/aruco_positions_optimized.json b/data/camera_study/Scene10/k4_bdeg/aruco_positions_optimized.json new file mode 100644 index 0000000..757dd65 --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/aruco_positions_optimized.json @@ -0,0 +1,617 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:19:35Z", + "summary": { + "num_cameras": 4, + "num_markers": 28, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "b", + "position_m": [ + 0.3032080331514599, + -0.8954064004634189, + 1.2012942891546714 + ], + "position_mm": [ + 303.2080331514599, + -895.4064004634189, + 1201.2942891546713 + ], + "direction": [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3069097344321857, + -0.2020177429112386, + 0.026139026258647082 + ], + "position_mm": [ + 306.9097344321857, + -202.0177429112386, + 26.139026258647082 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.35440281675136615, + -0.19916592177289724, + 0.02072055469714401 + ], + "position_mm": [ + 354.4028167513661, + -199.16592177289724, + 20.72055469714401 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.34429663383059583, + -0.28601715524747046, + -0.03057390241790844 + ], + "position_mm": [ + 344.29663383059585, + -286.01715524747044, + -30.57390241790844 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6879353584362827, + -0.31898969103425556, + -0.027252823568572438 + ], + "position_mm": [ + 687.9353584362827, + -318.98969103425554, + -27.25282356857244 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16709424525842823, + -0.17418870557883986, + -0.026849462504423535 + ], + "position_mm": [ + 167.09424525842823, + -174.18870557883986, + -26.849462504423535 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.48697224655850846, + 0.21379586950852308, + -0.025613930905370813 + ], + "position_mm": [ + 486.97224655850846, + 213.79586950852308, + -25.613930905370815 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.33995939143806897, + -0.3297372533575364, + -0.02683481164676101 + ], + "position_mm": [ + 339.95939143806896, + -329.7372533575364, + -26.83481164676101 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.284297118950399, + -0.26103669574258204, + -0.02717153782585586 + ], + "position_mm": [ + 284.297118950399, + -261.036695742582, + -27.171537825855857 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 57, + "position_m": [ + 0.6029435209786956, + -0.363845082430133, + -0.028431587721633494 + ], + "position_mm": [ + 602.9435209786957, + -363.845082430133, + -28.431587721633495 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 59, + "position_m": [ + 0.6247336602682131, + -0.2782545847412876, + -0.023873188309646208 + ], + "position_mm": [ + 624.733660268213, + -278.2545847412876, + -23.873188309646206 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.77559228459724, + -0.23603560309325475, + -0.02768094161413442 + ], + "position_mm": [ + 775.59228459724, + -236.03560309325474, + -27.680941614134422 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.019109571013523254, + -0.18958152801823017, + -0.027163617503021063 + ], + "position_mm": [ + -19.109571013523254, + -189.58152801823016, + -27.16361750302106 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005942588834885095, + -0.27766593705465226, + -0.02714208418319 + ], + "position_mm": [ + 5.942588834885095, + -277.66593705465226, + -27.14208418319 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 71, + "position_m": [ + 0.7507716494074312, + -0.28541401729738647, + -0.026780278055040553 + ], + "position_mm": [ + 750.7716494074313, + -285.41401729738647, + -26.780278055040554 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4425077325244921, + 0.19423558363275215, + -0.028760050523964582 + ], + "position_mm": [ + 442.5077325244921, + 194.23558363275214, + -28.760050523964583 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 85, + "position_m": [ + 0.5066743379002165, + -0.3135574558880696, + -0.027863065164165497 + ], + "position_mm": [ + 506.6743379002165, + -313.5574558880696, + -27.863065164165498 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 92, + "position_m": [ + 0.6468315397121702, + -0.18614320515992455, + -0.028084901475142143 + ], + "position_mm": [ + 646.8315397121702, + -186.14320515992455, + -28.084901475142143 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18641729512041816, + -0.2759766594702122, + -0.027550477697265586 + ], + "position_mm": [ + 186.41729512041815, + -275.9766594702122, + -27.550477697265585 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6517759154079943, + -0.22425232236709827, + -0.027315107872734373 + ], + "position_mm": [ + 651.7759154079943, + -224.25232236709826, + -27.315107872734373 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10532589847776773, + -0.19104512895951184, + -0.026868535550674987 + ], + "position_mm": [ + 105.32589847776772, + -191.04512895951183, + -26.868535550674988 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3107227562195912, + -0.1542853317500768, + 0.156704088326644 + ], + "position_mm": [ + 310.72275621959125, + -154.2853317500768, + 156.704088326644 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 205, + "position_m": [ + 0.7524334187888961, + -0.09025695811125631, + 0.00042612255622703695 + ], + "position_mm": [ + 752.4334187888961, + -90.25695811125631, + 0.42612255622703693 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 215, + "position_m": [ + 0.2505007693008238, + -0.08866396246646327, + -7.82695224253269e-05 + ], + "position_mm": [ + 250.50076930082383, + -88.66396246646327, + -0.07826952242532689 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3539950825328638, + -0.1005243848984472, + 0.20056295463225698 + ], + "position_mm": [ + 353.9950825328638, + -100.5243848984472, + 200.56295463225698 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3574426443080694, + -0.17075931109956805, + 0.1171495824346889 + ], + "position_mm": [ + 357.44264430806936, + -170.75931109956804, + 117.1495824346889 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23059386539056853, + -0.0362681147227638, + 0.3053839326027922 + ], + "position_mm": [ + 230.59386539056854, + -36.2681147227638, + 305.3839326027922 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3199500393733643, + -0.04355069627698564, + 0.29685618671327557 + ], + "position_mm": [ + 319.9500393733643, + -43.55069627698564, + 296.8561867132756 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2828441044128055, + -0.04098291000242246, + 0.3016321649929736 + ], + "position_mm": [ + 282.8441044128055, + -40.982910002422464, + 301.63216499297357 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/render_b_aruco_detection.json b/data/camera_study/Scene10/k4_bdeg/render_b_aruco_detection.json new file mode 100644 index 0000000..dff9d48 --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/render_b_aruco_detection.json @@ -0,0 +1,2595 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:31Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "b", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.npz", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_b.png", + "image_sha256": "e6ef391892a91ad270a430486b0fe75974cef5735243cbacb7d275cbec67d403", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 36, + "num_rejected_candidates": 24 + }, + "detections": [ + { + "observation_id": "4356aabc-29df-42e3-9d9b-a82df29daa71", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 653.0, + 351.0 + ], + [ + 692.0, + 348.0 + ], + [ + 694.0, + 387.0 + ], + [ + 656.0, + 389.0 + ] + ], + "center_px": [ + 673.75, + 368.75 + ], + "quality": { + "area_px": 1488.5, + "perimeter_px": 154.33729553222656, + "sharpness": { + "laplacian_var": 627.2587318502058 + }, + "contrast": { + "p05": 46.0, + "p95": 183.0, + "dynamic_range": 137.0, + "mean_gray": 122.44723618090453, + "std_gray": 56.17987962136313 + }, + "geometry": { + "distance_to_center_norm": 0.19709503650665283, + "distance_to_border_px": 348.0 + }, + "edge_ratio": 1.0279249864163942, + "edge_lengths_px": [ + 39.11521530151367, + 39.051246643066406, + 38.05259704589844, + 38.11823654174805 + ] + }, + "confidence": 0.9653752427916531 + }, + { + "observation_id": "a79b1674-609b-4b5e-9e20-98fefe269720", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 716.0, + 360.0 + ], + [ + 754.0, + 359.0 + ], + [ + 756.0, + 397.0 + ], + [ + 717.0, + 395.0 + ] + ], + "center_px": [ + 735.75, + 377.75 + ], + "quality": { + "area_px": 1404.5, + "perimeter_px": 150.13128280639648, + "sharpness": { + "laplacian_var": 716.6409220891561 + }, + "contrast": { + "p05": 42.0, + "p95": 182.0, + "dynamic_range": 140.0, + "mean_gray": 91.52459016393442, + "std_gray": 57.68748310334962 + }, + "geometry": { + "distance_to_center_norm": 0.18112516403198242, + "distance_to_border_px": 359.0 + }, + "edge_ratio": 1.115294792861451, + "edge_lengths_px": [ + 38.01315689086914, + 38.05259704589844, + 39.051246643066406, + 35.0142822265625 + ] + }, + "confidence": 0.8395388728849295 + }, + { + "observation_id": "32ae639f-4486-4079-ab31-6a4015e0a5ec", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 572.0, + 342.0 + ], + [ + 610.0, + 342.0 + ], + [ + 609.0, + 379.0 + ], + [ + 571.0, + 379.0 + ] + ], + "center_px": [ + 590.5, + 360.5 + ], + "quality": { + "area_px": 1406.0, + "perimeter_px": 150.0270233154297, + "sharpness": { + "laplacian_var": 530.848957810413 + }, + "contrast": { + "p05": 36.0, + "p95": 181.0, + "dynamic_range": 145.0, + "mean_gray": 91.75730110775427, + "std_gray": 62.10930258698661 + }, + "geometry": { + "distance_to_center_norm": 0.24593108892440796, + "distance_to_border_px": 342.0 + }, + "edge_ratio": 1.0266521142713445, + "edge_lengths_px": [ + 38.0, + 37.013511657714844, + 38.0, + 37.013511657714844 + ] + }, + "confidence": 0.9129999542236328 + }, + { + "observation_id": "9d7ee209-bbb3-4f90-a3e9-5dd10b581628", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 703.0, + 635.0 + ], + [ + 738.0, + 637.0 + ], + [ + 739.0, + 674.0 + ], + [ + 704.0, + 671.0 + ] + ], + "center_px": [ + 721.0, + 654.25 + ], + "quality": { + "area_px": 1275.0, + "perimeter_px": 143.21282958984375, + "sharpness": { + "laplacian_var": 696.0272365007073 + }, + "contrast": { + "p05": 57.0, + "p95": 187.0, + "dynamic_range": 130.0, + "mean_gray": 94.33182332955832, + "std_gray": 50.71412757664344 + }, + "geometry": { + "distance_to_center_norm": 0.12694931030273438, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.0558065951418754, + "edge_lengths_px": [ + 35.05709457397461, + 37.013511657714844, + 35.12833786010742, + 36.013885498046875 + ] + }, + "confidence": 0.8050716901287969 + }, + { + "observation_id": "18c5277b-fcc6-4188-9159-27d3822d920b", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1279.0, + 1028.0 + ], + [ + 1272.0, + 995.0 + ], + [ + 1307.0, + 995.0 + ], + [ + 1315.0, + 1026.0 + ] + ], + "center_px": [ + 1293.25, + 1011.0 + ], + "quality": { + "area_px": 1143.5, + "perimeter_px": 136.80538940429688, + "sharpness": { + "laplacian_var": 482.7013250030427 + }, + "contrast": { + "p05": 8.0, + "p95": 158.0, + "dynamic_range": 150.0, + "mean_gray": 63.35286624203822, + "std_gray": 59.78071665797713 + }, + "geometry": { + "distance_to_center_norm": 0.8243640065193176, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.1261849728269904, + "edge_lengths_px": [ + 33.734256744384766, + 35.0, + 32.015621185302734, + 36.055511474609375 + ] + }, + "confidence": 0.6769166271324829 + }, + { + "observation_id": "86bd9306-f4dd-4b81-98f9-45527aecbbc8", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1003.0, + 1024.0 + ], + [ + 1001.0, + 991.0 + ], + [ + 1036.0, + 992.0 + ], + [ + 1039.0, + 1024.0 + ] + ], + "center_px": [ + 1019.75, + 1007.75 + ], + "quality": { + "area_px": 1152.5, + "perimeter_px": 136.21514892578125, + "sharpness": { + "laplacian_var": 488.69427061730175 + }, + "contrast": { + "p05": 18.0, + "p95": 164.0, + "dynamic_range": 146.0, + "mean_gray": 120.69270166453265, + "std_gray": 51.94121872671304 + }, + "geometry": { + "distance_to_center_norm": 0.6172820925712585, + "distance_to_border_px": 56.0 + }, + "edge_ratio": 1.1200885513799894, + "edge_lengths_px": [ + 33.060550689697266, + 35.0142822265625, + 32.140316009521484, + 36.0 + ] + }, + "confidence": 0.6859576703883983 + }, + { + "observation_id": "6f859779-f740-4212-80e7-d6c33c8f2f59", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 751.0, + 1046.0 + ], + [ + 751.0, + 1014.0 + ], + [ + 786.0, + 1013.0 + ], + [ + 787.0, + 1046.0 + ] + ], + "center_px": [ + 768.75, + 1029.75 + ], + "quality": { + "area_px": 1154.0, + "perimeter_px": 136.0294303894043, + "sharpness": { + "laplacian_var": 552.3687835636869 + }, + "contrast": { + "p05": 13.0, + "p95": 167.94999999999993, + "dynamic_range": 154.94999999999993, + "mean_gray": 53.32480818414322, + "std_gray": 57.69375782057683 + }, + "geometry": { + "distance_to_center_norm": 0.5468559265136719, + "distance_to_border_px": 34.0 + }, + "edge_ratio": 1.125, + "edge_lengths_px": [ + 32.0, + 35.0142822265625, + 33.0151481628418, + 36.0 + ] + }, + "confidence": 0.4650192592592593 + }, + { + "observation_id": "ebff1de1-d9cd-4424-b96b-72ff171cd000", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 250.0, + 983.0 + ], + [ + 256.0, + 951.0 + ], + [ + 290.0, + 951.0 + ], + [ + 285.0, + 983.0 + ] + ], + "center_px": [ + 270.25, + 967.0 + ], + "quality": { + "area_px": 1104.0, + "perimeter_px": 133.9459114074707, + "sharpness": { + "laplacian_var": 666.2167537940885 + }, + "contrast": { + "p05": 16.0, + "p95": 175.0, + "dynamic_range": 159.0, + "mean_gray": 85.58355437665783, + "std_gray": 64.81855143535743 + }, + "geometry": { + "distance_to_center_norm": 0.6890717148780823, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0806381001770118, + "edge_lengths_px": [ + 32.557640075683594, + 34.0, + 32.38827133178711, + 35.0 + ] + }, + "confidence": 0.6810790771484375 + }, + { + "observation_id": "0ed5689f-168e-4623-a86a-6c66d06e3642", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1365.0, + 980.0 + ], + [ + 1359.0, + 949.0 + ], + [ + 1393.0, + 949.0 + ], + [ + 1400.0, + 981.0 + ] + ], + "center_px": [ + 1379.25, + 964.75 + ], + "quality": { + "area_px": 1083.5, + "perimeter_px": 133.3462677001953, + "sharpness": { + "laplacian_var": 578.8078550341886 + }, + "contrast": { + "p05": 7.0, + "p95": 156.0, + "dynamic_range": 149.0, + "mean_gray": 101.4297520661157, + "std_gray": 56.70546294703625 + }, + "geometry": { + "distance_to_center_norm": 0.8713712692260742, + "distance_to_border_px": 40.0 + }, + "edge_ratio": 1.1089134748057845, + "edge_lengths_px": [ + 31.575305938720703, + 34.0, + 32.75667953491211, + 35.0142822265625 + ] + }, + "confidence": 0.5211106905954719 + }, + { + "observation_id": "b9ae5855-3561-4f90-bf61-6d5467ed95b2", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 756.0, + 991.0 + ], + [ + 755.0, + 960.0 + ], + [ + 790.0, + 960.0 + ], + [ + 791.0, + 991.0 + ] + ], + "center_px": [ + 773.0, + 975.5 + ], + "quality": { + "area_px": 1085.0, + "perimeter_px": 132.0322494506836, + "sharpness": { + "laplacian_var": 654.4104095045117 + }, + "contrast": { + "p05": 12.0, + "p95": 168.0, + "dynamic_range": 156.0, + "mean_gray": 80.51101928374656, + "std_gray": 64.00787025306312 + }, + "geometry": { + "distance_to_center_norm": 0.48745906352996826, + "distance_to_border_px": 89.0 + }, + "edge_ratio": 1.1284452945020294, + "edge_lengths_px": [ + 31.016124725341797, + 35.0, + 31.016124725341797, + 35.0 + ] + }, + "confidence": 0.6409999109903972 + }, + { + "observation_id": "6484a280-8b4d-437f-ba09-9f1289d522e9", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 971.0 + ], + [ + 1173.0, + 940.0 + ], + [ + 1206.0, + 938.0 + ], + [ + 1214.0, + 969.0 + ] + ], + "center_px": [ + 1193.0, + 954.5 + ], + "quality": { + "area_px": 1068.0, + "perimeter_px": 131.7085723876953, + "sharpness": { + "laplacian_var": 555.2434537092699 + }, + "contrast": { + "p05": 8.0, + "p95": 160.0, + "dynamic_range": 152.0, + "mean_gray": 100.69577080491132, + "std_gray": 60.94337000638089 + }, + "geometry": { + "distance_to_center_norm": 0.6987990140914917, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.110269355489734, + "edge_lengths_px": [ + 31.575305938720703, + 33.060550689697266, + 32.015621185302734, + 35.05709457397461 + ] + }, + "confidence": 0.6412858253535606 + }, + { + "observation_id": "0bafc77b-11b6-40aa-9ff3-22d1d6713398", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 979.0 + ], + [ + 522.0, + 948.0 + ], + [ + 557.0, + 947.0 + ], + [ + 557.0, + 977.0 + ] + ], + "center_px": [ + 539.5, + 962.75 + ], + "quality": { + "area_px": 1067.5, + "perimeter_px": 131.0713768005371, + "sharpness": { + "laplacian_var": 637.2158856829803 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 88.06486486486486, + "std_gray": 66.73690666691276 + }, + "geometry": { + "distance_to_center_norm": 0.5107460021972656, + "distance_to_border_px": 101.0 + }, + "edge_ratio": 1.168569819132487, + "edge_lengths_px": [ + 31.0, + 35.0142822265625, + 30.0, + 35.05709457397461 + ] + }, + "confidence": 0.6090065437382148 + }, + { + "observation_id": "ce50ea20-c2c8-41f6-aedf-6dde6ec04edf", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 667.0, + 955.0 + ], + [ + 668.0, + 924.0 + ], + [ + 702.0, + 924.0 + ], + [ + 702.0, + 954.0 + ] + ], + "center_px": [ + 684.75, + 939.25 + ], + "quality": { + "area_px": 1052.0, + "perimeter_px": 130.0304069519043, + "sharpness": { + "laplacian_var": 619.6327746184367 + }, + "contrast": { + "p05": 14.0, + "p95": 170.0, + "dynamic_range": 156.0, + "mean_gray": 89.47545582047685, + "std_gray": 64.51221461995324 + }, + "geometry": { + "distance_to_center_norm": 0.44533678889274597, + "distance_to_border_px": 125.0 + }, + "edge_ratio": 1.1671427408854167, + "edge_lengths_px": [ + 31.016124725341797, + 34.0, + 30.0, + 35.0142822265625 + ] + }, + "confidence": 0.6008976526738182 + }, + { + "observation_id": "9515328d-0eca-457d-ac4e-549525f84139", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1386.0, + 915.0 + ], + [ + 1377.0, + 886.0 + ], + [ + 1410.0, + 884.0 + ], + [ + 1419.0, + 913.0 + ] + ], + "center_px": [ + 1398.0, + 899.5 + ], + "quality": { + "area_px": 975.0, + "perimeter_px": 126.85000610351562, + "sharpness": { + "laplacian_var": 500.1546623157159 + }, + "contrast": { + "p05": 6.0, + "p95": 153.29999999999995, + "dynamic_range": 147.29999999999995, + "mean_gray": 55.78320610687023, + "std_gray": 56.73965205138042 + }, + "geometry": { + "distance_to_center_norm": 0.8526822328567505, + "distance_to_border_px": 21.0 + }, + "edge_ratio": 1.08879127130267, + "edge_lengths_px": [ + 30.364452362060547, + 33.060550689697266, + 30.364452362060547, + 33.060550689697266 + ] + }, + "confidence": 0.2507367639652114 + }, + { + "observation_id": "eb40c342-4ddc-438a-a397-4cdd5e17cf45", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1200.0, + 899.0 + ], + [ + 1196.0, + 870.0 + ], + [ + 1229.0, + 870.0 + ], + [ + 1234.0, + 900.0 + ] + ], + "center_px": [ + 1214.75, + 884.75 + ], + "quality": { + "area_px": 986.0, + "perimeter_px": 126.70307731628418, + "sharpness": { + "laplacian_var": 632.2150447863675 + }, + "contrast": { + "p05": 8.0, + "p95": 159.0, + "dynamic_range": 151.0, + "mean_gray": 98.17178770949721, + "std_gray": 58.41005440387222 + }, + "geometry": { + "distance_to_center_norm": 0.6700194478034973, + "distance_to_border_px": 180.0 + }, + "edge_ratio": 1.1619200612549845, + "edge_lengths_px": [ + 29.27456283569336, + 33.0, + 30.4138126373291, + 34.01470184326172 + ] + }, + "confidence": 0.5657302556798534 + }, + { + "observation_id": "0294f736-47ab-4a96-ae36-ae9e4f807cdf", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 410.0, + 867.0 + ], + [ + 412.0, + 838.0 + ], + [ + 446.0, + 837.0 + ], + [ + 444.0, + 866.0 + ] + ], + "center_px": [ + 428.0, + 852.0 + ], + "quality": { + "area_px": 984.0, + "perimeter_px": 126.16717147827148, + "sharpness": { + "laplacian_var": 547.238914057918 + }, + "contrast": { + "p05": 16.0, + "p95": 173.0, + "dynamic_range": 157.0, + "mean_gray": 117.0801749271137, + "std_gray": 61.23203717536912 + }, + "geometry": { + "distance_to_center_norm": 0.4748072922229767, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.1701413086619983, + "edge_lengths_px": [ + 29.068883895874023, + 34.01470184326172, + 29.068883895874023, + 34.01470184326172 + ] + }, + "confidence": 0.560616051364006 + }, + { + "observation_id": "ea7a0c4f-3893-478d-ac68-280aaec427a0", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 231.0, + 866.0 + ], + [ + 237.0, + 837.0 + ], + [ + 270.0, + 838.0 + ], + [ + 265.0, + 866.0 + ] + ], + "center_px": [ + 250.75, + 851.75 + ], + "quality": { + "area_px": 957.5, + "perimeter_px": 125.07225799560547, + "sharpness": { + "laplacian_var": 691.273823211593 + }, + "contrast": { + "p05": 13.0, + "p95": 173.0, + "dynamic_range": 160.0, + "mean_gray": 80.68188302425106, + "std_gray": 65.10261909260412 + }, + "geometry": { + "distance_to_center_norm": 0.6259645819664001, + "distance_to_border_px": 214.0 + }, + "edge_ratio": 1.1953763756108722, + "edge_lengths_px": [ + 29.614185333251953, + 33.0151481628418, + 28.44292449951172, + 34.0 + ] + }, + "confidence": 0.5340019648682838 + }, + { + "observation_id": "c2309157-1d1b-4afc-9f19-67945ee80de0", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1186.0, + 853.0 + ], + [ + 1181.0, + 824.0 + ], + [ + 1214.0, + 824.0 + ], + [ + 1219.0, + 852.0 + ] + ], + "center_px": [ + 1200.0, + 838.25 + ], + "quality": { + "area_px": 943.0, + "perimeter_px": 123.88595008850098, + "sharpness": { + "laplacian_var": 491.23257508926696 + }, + "contrast": { + "p05": 8.0, + "p95": 157.0, + "dynamic_range": 149.0, + "mean_gray": 60.53623188405797, + "std_gray": 58.98636042540754 + }, + "geometry": { + "distance_to_center_norm": 0.6279036998748779, + "distance_to_border_px": 221.0 + }, + "edge_ratio": 1.160750827975111, + "edge_lengths_px": [ + 29.42787742614746, + 33.0, + 28.44292449951172, + 33.0151481628418 + ] + }, + "confidence": 0.5416034617553136 + }, + { + "observation_id": "7f9478c3-a261-466c-af6c-30ab6812d904", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 792.0, + 853.0 + ], + [ + 791.0, + 825.0 + ], + [ + 823.0, + 824.0 + ], + [ + 826.0, + 853.0 + ] + ], + "center_px": [ + 808.0, + 838.75 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.188232421875, + "sharpness": { + "laplacian_var": 396.06224375122804 + }, + "contrast": { + "p05": 7.0, + "p95": 152.0, + "dynamic_range": 145.0, + "mean_gray": 76.31352154531946, + "std_gray": 58.92341274082118 + }, + "geometry": { + "distance_to_center_norm": 0.34604567289352417, + "distance_to_border_px": 227.0 + }, + "edge_ratio": 1.2135120623866573, + "edge_lengths_px": [ + 28.017850875854492, + 32.015621185302734, + 29.154760360717773, + 34.0 + ] + }, + "confidence": 0.5172315019532747 + }, + { + "observation_id": "c705492c-08c3-406e-8455-60ec21a929d0", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 502.0, + 843.0 + ], + [ + 504.0, + 815.0 + ], + [ + 537.0, + 815.0 + ], + [ + 535.0, + 844.0 + ] + ], + "center_px": [ + 519.5, + 829.25 + ], + "quality": { + "area_px": 941.5, + "perimeter_px": 123.15536880493164, + "sharpness": { + "laplacian_var": 581.165350604797 + }, + "contrast": { + "p05": 15.0, + "p95": 170.89999999999998, + "dynamic_range": 155.89999999999998, + "mean_gray": 83.15384615384616, + "std_gray": 61.86954488885959 + }, + "geometry": { + "distance_to_center_norm": 0.3910508155822754, + "distance_to_border_px": 236.0 + }, + "edge_ratio": 1.1761159955196088, + "edge_lengths_px": [ + 28.07133674621582, + 33.0, + 29.068883895874023, + 33.0151481628418 + ] + }, + "confidence": 0.5336775191033459 + }, + { + "observation_id": "f518541c-d77e-402f-9067-318fbf17935e", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 835.0, + 839.0 + ], + [ + 833.0, + 812.0 + ], + [ + 865.0, + 810.0 + ], + [ + 868.0, + 838.0 + ] + ], + "center_px": [ + 850.25, + 824.75 + ], + "quality": { + "area_px": 897.5, + "perimeter_px": 120.31181526184082, + "sharpness": { + "laplacian_var": 448.16548579514745 + }, + "contrast": { + "p05": 7.0, + "p95": 147.0, + "dynamic_range": 140.0, + "mean_gray": 37.44514106583072, + "std_gray": 47.8311355020211 + }, + "geometry": { + "distance_to_center_norm": 0.3479173183441162, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.2194423229351472, + "edge_lengths_px": [ + 27.073972702026367, + 32.06243896484375, + 28.160255432128906, + 33.0151481628418 + ] + }, + "confidence": 0.49066144587566046 + }, + { + "observation_id": "a9bc56d1-5241-4850-be99-454f9d98637b", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1313.0, + 687.0 + ], + [ + 1344.0, + 686.0 + ], + [ + 1352.0, + 713.0 + ], + [ + 1319.0, + 714.0 + ] + ], + "center_px": [ + 1332.0, + 700.0 + ], + "quality": { + "area_px": 871.0, + "perimeter_px": 119.85016250610352, + "sharpness": { + "laplacian_var": 688.5231158220329 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 74.04784688995215, + "std_gray": 55.97342962435624 + }, + "geometry": { + "distance_to_center_norm": 0.7028548121452332, + "distance_to_border_px": 88.0 + }, + "edge_ratio": 1.1936651658599458, + "edge_lengths_px": [ + 31.016124725341797, + 28.160255432128906, + 33.0151481628418, + 27.658634185791016 + ] + }, + "confidence": 0.48645690874990066 + }, + { + "observation_id": "ad8e55b0-a459-488d-a56c-65a06afadc74", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 622.0, + 692.0 + ], + [ + 654.0, + 693.0 + ], + [ + 653.0, + 720.0 + ], + [ + 620.0, + 719.0 + ] + ], + "center_px": [ + 637.25, + 706.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 119.12325477600098, + "sharpness": { + "laplacian_var": 563.6648407134878 + }, + "contrast": { + "p05": 11.0, + "p95": 168.0, + "dynamic_range": 157.0, + "mean_gray": 83.77905073649754, + "std_gray": 64.69689079830626 + }, + "geometry": { + "distance_to_center_norm": 0.20609109103679657, + "distance_to_border_px": 360.0 + }, + "edge_ratio": 1.2219454304484663, + "edge_lengths_px": [ + 32.015621185302734, + 27.018512725830078, + 33.0151481628418, + 27.073972702026367 + ] + }, + "confidence": 0.4795631502013408 + }, + { + "observation_id": "e4295bdc-0435-4269-aa16-b473debdc2e8", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 316.0, + 621.0 + ], + [ + 348.0, + 620.0 + ], + [ + 346.0, + 644.0 + ], + [ + 313.0, + 646.0 + ] + ], + "center_px": [ + 330.75, + 632.75 + ], + "quality": { + "area_px": 792.5, + "perimeter_px": 114.33871841430664, + "sharpness": { + "laplacian_var": 1166.6046949779482 + }, + "contrast": { + "p05": 13.0, + "p95": 169.0, + "dynamic_range": 156.0, + "mean_gray": 83.14519056261344, + "std_gray": 61.52697584280528 + }, + "geometry": { + "distance_to_center_norm": 0.4446084797382355, + "distance_to_border_px": 313.0 + }, + "edge_ratio": 1.3727646565045162, + "edge_lengths_px": [ + 32.015621185302734, + 24.083189010620117, + 33.060550689697266, + 25.179357528686523 + ] + }, + "confidence": 0.38486810600050964 + }, + { + "observation_id": "75cdda03-0852-4a5b-913c-28767bfb38ff", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 627.0, + 605.0 + ], + [ + 659.0, + 606.0 + ], + [ + 658.0, + 630.0 + ], + [ + 625.0, + 630.0 + ] + ], + "center_px": [ + 642.25, + 617.75 + ], + "quality": { + "area_px": 797.0, + "perimeter_px": 114.11631774902344, + "sharpness": { + "laplacian_var": 850.2550492382796 + }, + "contrast": { + "p05": 11.0, + "p95": 167.0, + "dynamic_range": 156.0, + "mean_gray": 82.48440366972477, + "std_gray": 65.11886263223545 + }, + "geometry": { + "distance_to_center_norm": 0.12217233330011368, + "distance_to_border_px": 450.0 + }, + "edge_ratio": 1.3738079678699808, + "edge_lengths_px": [ + 32.015621185302734, + 24.020824432373047, + 33.0, + 25.079872131347656 + ] + }, + "confidence": 0.3867595368202286 + }, + { + "observation_id": "b46ca24e-2d26-4e9f-ac8f-d155ceae1bab", + "type": "aruco", + "marker_id": 206, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1155.0, + 600.0 + ], + [ + 1186.0, + 600.0 + ], + [ + 1191.0, + 625.0 + ], + [ + 1160.0, + 626.0 + ] + ], + "center_px": [ + 1173.0, + 612.75 + ], + "quality": { + "area_px": 793.0, + "perimeter_px": 113.98762702941895, + "sharpness": { + "laplacian_var": 558.309283460589 + }, + "contrast": { + "p05": 8.0, + "p95": 154.0, + "dynamic_range": 146.0, + "mean_gray": 69.15508021390374, + "std_gray": 55.27096609833018 + }, + "geometry": { + "distance_to_center_norm": 0.5097827911376953, + "distance_to_border_px": 249.0 + }, + "edge_ratio": 1.2165524755636625, + "edge_lengths_px": [ + 31.0, + 25.495098114013672, + 31.016124725341797, + 26.476404190063477 + ] + }, + "confidence": 0.43456133400387903 + }, + { + "observation_id": "f445e327-61f8-441b-b37f-c2c8fee1ac14", + "type": "aruco", + "marker_id": 207, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1292.0, + 601.0 + ], + [ + 1322.0, + 599.0 + ], + [ + 1330.0, + 624.0 + ], + [ + 1299.0, + 626.0 + ] + ], + "center_px": [ + 1310.75, + 612.5 + ], + "quality": { + "area_px": 777.5, + "perimeter_px": 113.34136199951172, + "sharpness": { + "laplacian_var": 650.3193287348083 + }, + "contrast": { + "p05": 7.0, + "p95": 151.0, + "dynamic_range": 144.0, + "mean_gray": 67.10200364298726, + "std_gray": 56.74835461848448 + }, + "geometry": { + "distance_to_center_norm": 0.661313533782959, + "distance_to_border_px": 110.0 + }, + "edge_ratio": 1.1965578914238073, + "edge_lengths_px": [ + 30.066593170166016, + 26.248809814453125, + 31.064449310302734, + 25.961509704589844 + ] + }, + "confidence": 0.4331870083749633 + }, + { + "observation_id": "19d855c1-5a14-4f85-a917-cc5cc40a68c1", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 781.0, + 529.0 + ], + [ + 792.0, + 523.0 + ], + [ + 792.0, + 559.0 + ], + [ + 782.0, + 568.0 + ] + ], + "center_px": [ + 786.75, + 544.75 + ], + "quality": { + "area_px": 397.5, + "perimeter_px": 100.99640560150146, + "sharpness": { + "laplacian_var": 539.9916753381895 + }, + "contrast": { + "p05": 22.0, + "p95": 82.0, + "dynamic_range": 60.0, + "mean_gray": 45.75268817204301, + "std_gray": 20.732459916937568 + }, + "geometry": { + "distance_to_center_norm": 0.07435421645641327, + "distance_to_border_px": 512.0 + }, + "edge_ratio": 3.113561698260548, + "edge_lengths_px": [ + 12.529964447021484, + 36.0, + 13.45362377166748, + 39.0128173828125 + ] + }, + "confidence": 0.06383364752689358 + }, + { + "observation_id": "4cfe992c-b012-4e4d-bad6-916eb960bbbf", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 288.0, + 452.0 + ], + [ + 293.0, + 432.0 + ], + [ + 320.0, + 433.0 + ], + [ + 316.0, + 453.0 + ] + ], + "center_px": [ + 304.25, + 442.5 + ], + "quality": { + "area_px": 554.5, + "perimeter_px": 96.04796981811523, + "sharpness": { + "laplacian_var": 1668.4565626581211 + }, + "contrast": { + "p05": 28.0, + "p95": 164.0, + "dynamic_range": 136.0, + "mean_gray": 117.69350649350649, + "std_gray": 45.27072485904047 + }, + "geometry": { + "distance_to_center_norm": 0.4744773805141449, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.3736881534334342, + "edge_lengths_px": [ + 20.615528106689453, + 27.018512725830078, + 20.39607810974121, + 28.017850875854492 + ] + }, + "confidence": 0.269105230137358 + }, + { + "observation_id": "38d44a42-c1d1-4cbe-968d-7b2e4c602858", + "type": "aruco", + "marker_id": 100, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1310.0, + 464.0 + ], + [ + 1303.0, + 443.0 + ], + [ + 1331.0, + 442.0 + ], + [ + 1337.0, + 463.0 + ] + ], + "center_px": [ + 1320.25, + 453.0 + ], + "quality": { + "area_px": 584.0, + "perimeter_px": 99.01263809204102, + "sharpness": { + "laplacian_var": 576.4519158169901 + }, + "contrast": { + "p05": 8.0, + "p95": 143.0, + "dynamic_range": 135.0, + "mean_gray": 88.7984886649874, + "std_gray": 48.17453258367343 + }, + "geometry": { + "distance_to_center_norm": 0.6739134192466736, + "distance_to_border_px": 103.0 + }, + "edge_ratio": 1.282849238858008, + "edge_lengths_px": [ + 22.135944366455078, + 28.017850875854492, + 21.840330123901367, + 27.018512725830078 + ] + }, + "confidence": 0.3034911052213101 + }, + { + "observation_id": "90f5bed3-36b9-401b-89d3-b9e3c5a13280", + "type": "aruco", + "marker_id": 76, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1165.0, + 466.0 + ], + [ + 1162.0, + 445.0 + ], + [ + 1190.0, + 445.0 + ], + [ + 1193.0, + 466.0 + ] + ], + "center_px": [ + 1177.5, + 455.5 + ], + "quality": { + "area_px": 588.0, + "perimeter_px": 98.42640686035156, + "sharpness": { + "laplacian_var": 910.631095054031 + }, + "contrast": { + "p05": 6.0, + "p95": 142.39999999999998, + "dynamic_range": 136.39999999999998, + "mean_gray": 81.48346055979644, + "std_gray": 49.85904157423577 + }, + "geometry": { + "distance_to_center_norm": 0.5169312357902527, + "distance_to_border_px": 247.0 + }, + "edge_ratio": 1.3199326585521733, + "edge_lengths_px": [ + 21.21320343017578, + 28.0, + 21.21320343017578, + 28.0 + ] + }, + "confidence": 0.29698484802246095 + }, + { + "observation_id": "32aa6ddd-7f83-4116-b318-1ffc8cf941d1", + "type": "aruco", + "marker_id": 94, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1395.0, + 458.0 + ], + [ + 1389.0, + 437.0 + ], + [ + 1416.0, + 437.0 + ], + [ + 1422.0, + 458.0 + ] + ], + "center_px": [ + 1405.5, + 447.5 + ], + "quality": { + "area_px": 567.0, + "perimeter_px": 97.68066024780273, + "sharpness": { + "laplacian_var": 850.0735999999999 + }, + "contrast": { + "p05": 6.0, + "p95": 138.3, + "dynamic_range": 132.3, + "mean_gray": 70.056, + "std_gray": 49.32963474423868 + }, + "geometry": { + "distance_to_center_norm": 0.7685696482658386, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.2362450497234954, + "edge_lengths_px": [ + 21.840330123901367, + 27.0, + 21.840330123901367, + 27.0 + ] + }, + "confidence": 0.1100752638244629 + }, + { + "observation_id": "0eeb5c04-e146-4722-83a2-1a5793691dc7", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 863.0, + 447.0 + ], + [ + 861.0, + 426.0 + ], + [ + 888.0, + 426.0 + ], + [ + 891.0, + 446.0 + ] + ], + "center_px": [ + 875.75, + 436.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 515.4831433029673 + }, + "contrast": { + "p05": 5.0, + "p95": 128.0, + "dynamic_range": 123.0, + "mean_gray": 52.57251908396947, + "std_gray": 45.98960451200636 + }, + "geometry": { + "distance_to_center_norm": 0.20793555676937103, + "distance_to_border_px": 426.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "a64cfc2d-8de4-4bfa-96be-12dcbe24cb78", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 427.0 + ], + [ + 916.0, + 406.0 + ], + [ + 943.0, + 406.0 + ], + [ + 946.0, + 426.0 + ] + ], + "center_px": [ + 930.75, + 416.25 + ], + "quality": { + "area_px": 565.0, + "perimeter_px": 96.33662223815918, + "sharpness": { + "laplacian_var": 499.21597420507743 + }, + "contrast": { + "p05": 11.0, + "p95": 136.0, + "dynamic_range": 125.0, + "mean_gray": 88.66666666666667, + "std_gray": 41.40359701320516 + }, + "geometry": { + "distance_to_center_norm": 0.27155160903930664, + "distance_to_border_px": 406.0 + }, + "edge_ratio": 1.385393512010532, + "edge_lengths_px": [ + 21.095022201538086, + 27.0, + 20.2237491607666, + 28.017850875854492 + ] + }, + "confidence": 0.27188424328625205 + }, + { + "observation_id": "c34c1b11-eb71-47d7-a4b9-99be4081dbed", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1019.0, + 429.0 + ], + [ + 1015.0, + 408.0 + ], + [ + 1042.0, + 408.0 + ], + [ + 1046.0, + 428.0 + ] + ], + "center_px": [ + 1030.5, + 418.25 + ], + "quality": { + "area_px": 555.5, + "perimeter_px": 95.79214859008789, + "sharpness": { + "laplacian_var": 521.0030648888888 + }, + "contrast": { + "p05": 6.0, + "p95": 130.3, + "dynamic_range": 124.30000000000001, + "mean_gray": 62.21333333333333, + "std_gray": 44.287754013446595 + }, + "geometry": { + "distance_to_center_norm": 0.3705739676952362, + "distance_to_border_px": 394.0 + }, + "edge_ratio": 1.3246915696467145, + "edge_lengths_px": [ + 21.3775577545166, + 27.0, + 20.39607810974121, + 27.018512725830078 + ] + }, + "confidence": 0.2795619311083096 + }, + { + "observation_id": "c284199b-7de2-4d6b-a03e-fb64cc006b62", + "type": "aruco", + "marker_id": 91, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1179.0, + 325.0 + ], + [ + 1176.0, + 307.0 + ], + [ + 1202.0, + 307.0 + ], + [ + 1205.0, + 326.0 + ] + ], + "center_px": [ + 1190.5, + 316.25 + ], + "quality": { + "area_px": 479.5, + "perimeter_px": 89.50289535522461, + "sharpness": { + "laplacian_var": 713.5335994017277 + }, + "contrast": { + "p05": 6.0, + "p95": 141.0, + "dynamic_range": 135.0, + "mean_gray": 68.0828729281768, + "std_gray": 51.55422810929457 + }, + "geometry": { + "distance_to_center_norm": 0.5788817405700684, + "distance_to_border_px": 235.0 + }, + "edge_ratio": 1.425844731638557, + "edge_lengths_px": [ + 18.248287200927734, + 26.0, + 19.235383987426758, + 26.019224166870117 + ] + }, + "confidence": 0.22419458414613705 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1093.0, + 700.0 + ], + [ + 885.0, + 715.0 + ], + [ + 855.0, + 682.0 + ], + [ + 1058.0, + 669.0 + ] + ], + "center_px": [ + 972.75, + 691.5 + ], + "area_px": 7031.0 + }, + { + "image_points_px": [ + [ + 716.0, + 312.0 + ], + [ + 753.0, + 311.0 + ], + [ + 756.0, + 340.0 + ], + [ + 717.0, + 341.0 + ] + ], + "center_px": [ + 735.5, + 326.0 + ], + "area_px": 1104.0 + }, + { + "image_points_px": [ + [ + 1051.0, + 929.0 + ], + [ + 1055.0, + 960.0 + ], + [ + 1021.0, + 961.0 + ], + [ + 1017.0, + 930.0 + ] + ], + "center_px": [ + 1036.0, + 945.0 + ], + "area_px": 1058.0 + }, + { + "image_points_px": [ + [ + 360.0, + 870.0 + ], + [ + 357.0, + 900.0 + ], + [ + 323.0, + 901.0 + ], + [ + 326.0, + 871.0 + ] + ], + "center_px": [ + 341.5, + 885.5 + ], + "area_px": 1017.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 688.0 + ], + [ + 1199.0, + 687.0 + ], + [ + 1204.0, + 714.0 + ], + [ + 1170.0, + 714.0 + ] + ], + "center_px": [ + 1184.75, + 700.75 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 544.0, + 483.0 + ], + [ + 538.0, + 532.0 + ], + [ + 534.0, + 528.0 + ], + [ + 536.0, + 484.0 + ] + ], + "center_px": [ + 538.0, + 506.75 + ], + "area_px": 285.0 + }, + { + "image_points_px": [ + [ + 794.0, + 684.0 + ], + [ + 795.0, + 716.0 + ], + [ + 783.0, + 728.0 + ], + [ + 783.0, + 691.0 + ] + ], + "center_px": [ + 788.75, + 704.75 + ], + "area_px": 401.5 + }, + { + "image_points_px": [ + [ + 1025.0, + 442.0 + ], + [ + 1053.0, + 442.0 + ], + [ + 1057.0, + 462.0 + ], + [ + 1029.0, + 464.0 + ] + ], + "center_px": [ + 1041.0, + 452.5 + ], + "area_px": 592.0 + }, + { + "image_points_px": [ + [ + 975.0, + 434.0 + ], + [ + 1002.0, + 434.0 + ], + [ + 1006.0, + 455.0 + ], + [ + 978.0, + 456.0 + ] + ], + "center_px": [ + 990.25, + 444.75 + ], + "area_px": 593.0 + }, + { + "image_points_px": [ + [ + 343.0, + 434.0 + ], + [ + 371.0, + 434.0 + ], + [ + 368.0, + 454.0 + ], + [ + 340.0, + 455.0 + ] + ], + "center_px": [ + 355.5, + 444.25 + ], + "area_px": 572.5 + }, + { + "image_points_px": [ + [ + 935.0, + 451.0 + ], + [ + 962.0, + 451.0 + ], + [ + 965.0, + 472.0 + ], + [ + 937.0, + 472.0 + ] + ], + "center_px": [ + 949.75, + 461.5 + ], + "area_px": 577.5 + }, + { + "image_points_px": [ + [ + 1318.0, + 379.0 + ], + [ + 1345.0, + 378.0 + ], + [ + 1352.0, + 398.0 + ], + [ + 1324.0, + 399.0 + ] + ], + "center_px": [ + 1334.75, + 388.5 + ], + "area_px": 556.5 + }, + { + "image_points_px": [ + [ + 953.0, + 361.0 + ], + [ + 980.0, + 360.0 + ], + [ + 984.0, + 379.0 + ], + [ + 956.0, + 380.0 + ] + ], + "center_px": [ + 968.25, + 370.0 + ], + "area_px": 526.0 + }, + { + "image_points_px": [ + [ + 1085.0, + 316.0 + ], + [ + 1110.0, + 315.0 + ], + [ + 1115.0, + 335.0 + ], + [ + 1089.0, + 336.0 + ] + ], + "center_px": [ + 1099.75, + 325.5 + ], + "area_px": 514.5 + }, + { + "image_points_px": [ + [ + 1225.0, + 316.0 + ], + [ + 1250.0, + 315.0 + ], + [ + 1257.0, + 334.0 + ], + [ + 1230.0, + 335.0 + ] + ], + "center_px": [ + 1240.5, + 325.0 + ], + "area_px": 500.0 + }, + { + "image_points_px": [ + [ + 397.0, + 304.0 + ], + [ + 423.0, + 303.0 + ], + [ + 422.0, + 322.0 + ], + [ + 394.0, + 322.0 + ] + ], + "center_px": [ + 409.0, + 312.75 + ], + "area_px": 498.5 + }, + { + "image_points_px": [ + [ + 317.0, + 311.0 + ], + [ + 344.0, + 310.0 + ], + [ + 343.0, + 328.0 + ], + [ + 316.0, + 330.0 + ] + ], + "center_px": [ + 330.0, + 319.75 + ], + "area_px": 498.0 + }, + { + "image_points_px": [ + [ + 798.0, + 809.0 + ], + [ + 781.0, + 838.0 + ], + [ + 771.0, + 838.0 + ], + [ + 792.0, + 807.0 + ] + ], + "center_px": [ + 785.5, + 823.0 + ], + "area_px": 259.0 + }, + { + "image_points_px": [ + [ + 722.0, + 452.0 + ], + [ + 722.0, + 474.0 + ], + [ + 707.0, + 479.0 + ], + [ + 706.0, + 451.0 + ] + ], + "center_px": [ + 714.25, + 464.0 + ], + "area_px": 388.5 + }, + { + "image_points_px": [ + [ + 535.0, + 348.0 + ], + [ + 535.0, + 352.0 + ], + [ + 502.0, + 352.0 + ], + [ + 508.0, + 348.0 + ] + ], + "center_px": [ + 520.0, + 350.0 + ], + "area_px": 120.0 + }, + { + "image_points_px": [ + [ + 345.0, + 417.0 + ], + [ + 348.0, + 415.0 + ], + [ + 372.0, + 415.0 + ], + [ + 357.0, + 418.0 + ] + ], + "center_px": [ + 355.5, + 416.25 + ], + "area_px": 49.5 + }, + { + "image_points_px": [ + [ + 331.0, + 583.0 + ], + [ + 328.0, + 588.0 + ], + [ + 310.0, + 587.0 + ], + [ + 312.0, + 583.0 + ] + ], + "center_px": [ + 320.25, + 585.25 + ], + "area_px": 84.5 + }, + { + "image_points_px": [ + [ + 35.0, + 1033.0 + ], + [ + 21.0, + 1037.0 + ], + [ + 13.0, + 1036.0 + ], + [ + 20.0, + 1033.0 + ] + ], + "center_px": [ + 22.25, + 1034.75 + ], + "area_px": 45.5 + }, + { + "image_points_px": [ + [ + 525.0, + 875.0 + ], + [ + 544.0, + 875.0 + ], + [ + 546.0, + 877.0 + ], + [ + 529.0, + 878.0 + ] + ], + "center_px": [ + 536.0, + 876.25 + ], + "area_px": 46.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/render_b_camera_pose.json b/data/camera_study/Scene10/k4_bdeg/render_b_camera_pose.json new file mode 100644 index 0000000..d71bc2f --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/render_b_camera_pose.json @@ -0,0 +1,635 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:33Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_bdeg\\render_b_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "b", + "camera_matrix": [ + [ + 1994.0294189453125, + 0.0, + 719.934814453125 + ], + [ + 0.0, + 1991.6876220703125, + 539.2061157226562 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 31, + "used_marker_ids": [ + 48, + 85, + 54, + 69, + 71, + 47, + 59, + 95, + 55, + 63, + 102, + 103, + 64, + 92, + 96, + 51, + 62, + 205, + 215, + 210, + 211, + 206, + 207, + 75, + 100, + 76, + 94, + 72, + 53, + 50, + 91 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.014303715741588072, + 0.0016309340220155746, + 0.0012386957275541213, + 0.0012386850271530372 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.5021109163429425, + "residual_median_px": 3.184544956535646, + "residual_max_px": 6.067533639138036, + "sigma2_normalized": 1.6987342317165036e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9999269843101501, + -0.011898769997060299, + -0.002109621185809374 + ], + [ + -0.010610892437398434, + -0.7809832096099854, + -0.6244618892669678 + ], + [ + 0.005782749503850937, + 0.6244387030601501, + -0.7810524106025696 + ] + ], + "translation_m": [ + -0.31130585074424744, + 0.05408250167965889, + 1.4956468343734741 + ], + "rvec_rad": [ + 2.467098140683542, + -0.015590715342859898, + 0.002544094168982025 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30320802330970764, + -0.8954063653945923, + 1.2012943029403687 + ], + "position_mm": [ + 303.2080383300781, + -895.4063720703125, + 1201.2943115234375 + ], + "orientation_deg": { + "roll": 141.3582305908203, + "pitch": -0.33132898807525635, + "yaw": -0.6079809069633484 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 1.1714980332113037e-05, + 1.612849096603274e-07, + 3.3581655194842685e-06, + 2.9594448332849086e-07, + -6.152421164406947e-07, + 4.1599332363325e-07 + ], + [ + 1.6128490966032213e-07, + 1.9643383110369143e-06, + -6.707254416001559e-07, + 1.4302435629986665e-07, + -5.459321264980795e-07, + 5.271779814055738e-07 + ], + [ + 3.3581655194842566e-06, + -6.70725441600183e-07, + 2.041861850548542e-05, + 2.998052506270438e-07, + -2.410609247586222e-06, + -7.912525866840433e-06 + ], + [ + 2.9594448332849166e-07, + 1.430243562998651e-07, + 2.9980525062704897e-07, + 1.5677275797219876e-07, + -6.001927256130577e-08, + 1.713792123751456e-07 + ], + [ + -6.15242116440693e-07, + -5.459321264980771e-07, + -2.4106092475862307e-06, + -6.00192725613057e-08, + 6.366335588393726e-07, + 1.1255616142030518e-06 + ], + [ + 4.15993323633253e-07, + 5.271779814055734e-07, + -7.912525866840427e-06, + 1.7137921237514697e-07, + 1.1255616142030518e-06, + 5.894338230720332e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.1961071437365895, + 0.08030281614640503, + 0.25890224118047883 + ], + "tvec_std_m": [ + 0.00039594539771564306, + 0.0007978932001460927, + 0.002427825823802097 + ] + }, + "camera_center_std_m": [ + 0.0050998544532508275, + 0.003662987958878001, + 0.003375018538044121 + ], + "camera_center_std_mm": [ + 5.099854453250828, + 3.6629879588780008, + 3.375018538044121 + ], + "orientation_std_deg": { + "roll": 0.15667947440575844, + "pitch": 0.19000314251532338, + "yaw": 0.082955108711716 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1293.25, + 1011.0 + ], + "projected_center_px": [ + 1296.998779296875, + 1014.4274291992188 + ], + "reprojection_error_px": 5.079430788221836, + "confidence": 0.6769166271324829 + }, + { + "marker_id": 85, + "observed_center_px": [ + 1019.75, + 1007.75 + ], + "projected_center_px": [ + 1016.9595336914062, + 1006.0613403320312 + ], + "reprojection_error_px": 3.261636658737628, + "confidence": 0.6859576703883983 + }, + { + "marker_id": 54, + "observed_center_px": [ + 768.75, + 1029.75 + ], + "projected_center_px": [ + 773.0665893554688, + 1034.0140380859375 + ], + "reprojection_error_px": 6.067533639138036, + "confidence": 0.4650192592592593 + }, + { + "marker_id": 69, + "observed_center_px": [ + 270.25, + 967.0 + ], + "projected_center_px": [ + 272.7215576171875, + 971.5800170898438 + ], + "reprojection_error_px": 5.204339881131743, + "confidence": 0.6810790771484375 + }, + { + "marker_id": 71, + "observed_center_px": [ + 1379.25, + 964.75 + ], + "projected_center_px": [ + 1377.3250732421875, + 962.7305297851562 + ], + "reprojection_error_px": 2.7899109253851826, + "confidence": 0.5211106905954719 + }, + { + "marker_id": 47, + "observed_center_px": [ + 773.0, + 975.5 + ], + "projected_center_px": [ + 774.099853515625, + 972.5114135742188 + ], + "reprojection_error_px": 3.184544956535646, + "confidence": 0.6409999109903972 + }, + { + "marker_id": 59, + "observed_center_px": [ + 1193.0, + 954.5 + ], + "projected_center_px": [ + 1192.0887451171875, + 957.3847045898438 + ], + "reprojection_error_px": 3.0252117334354005, + "confidence": 0.6412858253535606 + }, + { + "marker_id": 95, + "observed_center_px": [ + 539.5, + 962.75 + ], + "projected_center_px": [ + 539.1934204101562, + 958.4058227539062 + ], + "reprojection_error_px": 4.354981858789706, + "confidence": 0.6090065437382148 + }, + { + "marker_id": 55, + "observed_center_px": [ + 684.75, + 939.25 + ], + "projected_center_px": [ + 683.953125, + 941.1909790039062 + ], + "reprojection_error_px": 2.098191902384026, + "confidence": 0.6008976526738182 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1398.0, + 899.5 + ], + "projected_center_px": [ + 1402.3104248046875, + 898.68310546875 + ], + "reprojection_error_px": 4.38714926484744, + "confidence": 0.2507367639652114 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1214.75, + 884.75 + ], + "projected_center_px": [ + 1213.0572509765625, + 883.4988403320312 + ], + "reprojection_error_px": 2.1049465007691484, + "confidence": 0.5657302556798534 + }, + { + "marker_id": 103, + "observed_center_px": [ + 428.0, + 852.0 + ], + "projected_center_px": [ + 430.1767883300781, + 847.548828125 + ], + "reprojection_error_px": 4.954930725525366, + "confidence": 0.560616051364006 + }, + { + "marker_id": 64, + "observed_center_px": [ + 250.75, + 851.75 + ], + "projected_center_px": [ + 248.56314086914062, + 850.4844360351562 + ], + "reprojection_error_px": 2.5266588624770963, + "confidence": 0.5340019648682838 + }, + { + "marker_id": 92, + "observed_center_px": [ + 1200.0, + 838.25 + ], + "projected_center_px": [ + 1197.421142578125, + 835.3626708984375 + ], + "reprojection_error_px": 3.8713272844193223, + "confidence": 0.5416034617553136 + }, + { + "marker_id": 96, + "observed_center_px": [ + 808.0, + 838.75 + ], + "projected_center_px": [ + 806.2885131835938, + 841.5922241210938 + ], + "reprojection_error_px": 3.3177439740371075, + "confidence": 0.5172315019532747 + }, + { + "marker_id": 51, + "observed_center_px": [ + 519.5, + 829.25 + ], + "projected_center_px": [ + 519.8951416015625, + 827.0758056640625 + ], + "reprojection_error_px": 2.2098094704539766, + "confidence": 0.5336775191033459 + }, + { + "marker_id": 62, + "observed_center_px": [ + 850.25, + 824.75 + ], + "projected_center_px": [ + 855.0701293945312, + 826.93115234375 + ], + "reprojection_error_px": 5.290659025742475, + "confidence": 0.49066144587566046 + }, + { + "marker_id": 205, + "observed_center_px": [ + 1332.0, + 700.0 + ], + "projected_center_px": [ + 1328.4681396484375, + 699.86669921875 + ], + "reprojection_error_px": 3.5343750000843213, + "confidence": 0.48645690874990066 + }, + { + "marker_id": 215, + "observed_center_px": [ + 637.25, + 706.0 + ], + "projected_center_px": [ + 636.5221557617188, + 707.2503662109375 + ], + "reprojection_error_px": 1.446780182561751, + "confidence": 0.4795631502013408 + }, + { + "marker_id": 210, + "observed_center_px": [ + 330.75, + 632.75 + ], + "projected_center_px": [ + 328.2628479003906, + 632.3521728515625 + ], + "reprojection_error_px": 2.518767954104791, + "confidence": 0.38486810600050964 + }, + { + "marker_id": 211, + "observed_center_px": [ + 642.25, + 617.75 + ], + "projected_center_px": [ + 638.0531005859375, + 618.1140747070312 + ], + "reprojection_error_px": 4.2126612828541115, + "confidence": 0.3867595368202286 + }, + { + "marker_id": 206, + "observed_center_px": [ + 1173.0, + 612.75 + ], + "projected_center_px": [ + 1172.872314453125, + 612.3995971679688 + ], + "reprojection_error_px": 0.37294201101014113, + "confidence": 0.43456133400387903 + }, + { + "marker_id": 207, + "observed_center_px": [ + 1310.75, + 612.5 + ], + "projected_center_px": [ + 1306.716552734375, + 611.0010986328125 + ], + "reprojection_error_px": 4.302952724947643, + "confidence": 0.4331870083749633 + }, + { + "marker_id": 75, + "observed_center_px": [ + 304.25, + 442.5 + ], + "projected_center_px": [ + 306.6486511230469, + 441.182861328125 + ], + "reprojection_error_px": 2.7364907255539297, + "confidence": 0.269105230137358 + }, + { + "marker_id": 100, + "observed_center_px": [ + 1320.25, + 453.0 + ], + "projected_center_px": [ + 1320.570068359375, + 451.0298767089844 + ], + "reprojection_error_px": 1.9959532901536652, + "confidence": 0.3034911052213101 + }, + { + "marker_id": 76, + "observed_center_px": [ + 1177.5, + 455.5 + ], + "projected_center_px": [ + 1176.77978515625, + 457.7312316894531 + ], + "reprojection_error_px": 2.344590427596616, + "confidence": 0.29698484802246095 + }, + { + "marker_id": 94, + "observed_center_px": [ + 1405.5, + 447.5 + ], + "projected_center_px": [ + 1409.20654296875, + 448.8764343261719 + ], + "reprojection_error_px": 3.953862950767804, + "confidence": 0.1100752638244629 + }, + { + "marker_id": 72, + "observed_center_px": [ + 875.75, + 436.25 + ], + "projected_center_px": [ + 874.7793579101562, + 435.638671875 + ], + "reprojection_error_px": 1.1471129599966423, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 53, + "observed_center_px": [ + 930.75, + 416.25 + ], + "projected_center_px": [ + 928.0985107421875, + 418.8909912109375 + ], + "reprojection_error_px": 3.7423561910304857, + "confidence": 0.27188424328625205 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1030.5, + 418.25 + ], + "projected_center_px": [ + 1033.346435546875, + 418.1204833984375 + ], + "reprojection_error_px": 2.849380612096931, + "confidence": 0.2795619311083096 + }, + { + "marker_id": 91, + "observed_center_px": [ + 1190.5, + 316.25 + ], + "projected_center_px": [ + 1192.083984375, + 316.4956359863281 + ], + "reprojection_error_px": 1.6029171962467468, + "confidence": 0.22419458414613705 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/render_d_aruco_detection.json b/data/camera_study/Scene10/k4_bdeg/render_d_aruco_detection.json new file mode 100644 index 0000000..67132b0 --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/render_d_aruco_detection.json @@ -0,0 +1,1311 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:31Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "d", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.npz", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.png", + "image_sha256": "62e03d1a72df6ace64f3edf39f814b0e48c63c4b06cd21705bd69cd08afa442a", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 15, + "num_rejected_candidates": 18 + }, + "detections": [ + { + "observation_id": "c7cdb0cd-4da6-4e8d-aacc-255e0bd639ab", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 742.0, + 906.0 + ], + [ + 797.0, + 913.0 + ], + [ + 796.0, + 973.0 + ], + [ + 741.0, + 965.0 + ] + ], + "center_px": [ + 769.0, + 939.25 + ], + "quality": { + "area_px": 3280.0, + "perimeter_px": 230.03924179077148, + "sharpness": { + "laplacian_var": 235.03135651883824 + }, + "contrast": { + "p05": 24.0, + "p95": 170.0, + "dynamic_range": 146.0, + "mean_gray": 71.34429223744293, + "std_gray": 60.34595999329839 + }, + "geometry": { + "distance_to_center_norm": 0.4469395875930786, + "distance_to_border_px": 107.0 + }, + "edge_ratio": 1.0823298168515911, + "edge_lengths_px": [ + 55.44366455078125, + 60.008331298828125, + 55.578773498535156, + 59.00847244262695 + ] + }, + "confidence": 0.9239327831777916 + }, + { + "observation_id": "a912d680-2884-415f-840c-b7454422e6c3", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 889.0, + 943.0 + ], + [ + 916.0, + 987.0 + ], + [ + 864.0, + 1021.0 + ], + [ + 835.0, + 979.0 + ] + ], + "center_px": [ + 876.0, + 982.5 + ], + "quality": { + "area_px": 3259.0, + "perimeter_px": 229.6916618347168, + "sharpness": { + "laplacian_var": 61.572482510446996 + }, + "contrast": { + "p05": 8.0, + "p95": 102.0, + "dynamic_range": 94.0, + "mean_gray": 52.3137789904502, + "std_gray": 40.795642464164395 + }, + "geometry": { + "distance_to_center_norm": 0.5213257670402527, + "distance_to_border_px": 59.0 + }, + "edge_ratio": 1.2715701940712816, + "edge_lengths_px": [ + 51.62363815307617, + 62.12889862060547, + 51.03919982910156, + 64.8999252319336 + ] + }, + "confidence": 0.4035200127470337 + }, + { + "observation_id": "a302d3df-2871-4524-8916-4e2c059a81fd", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 685.0 + ], + [ + 956.0, + 716.0 + ], + [ + 934.0, + 773.0 + ], + [ + 895.0, + 742.0 + ] + ], + "center_px": [ + 925.75, + 729.0 + ], + "quality": { + "area_px": 2892.0, + "perimeter_px": 221.4241943359375, + "sharpness": { + "laplacian_var": 65.75925962559084 + }, + "contrast": { + "p05": 5.0, + "p95": 83.0, + "dynamic_range": 78.0, + "mean_gray": 36.39875065070276, + "std_gray": 31.82755916882834 + }, + "geometry": { + "distance_to_center_norm": 0.31042397022247314, + "distance_to_border_px": 307.0 + }, + "edge_ratio": 1.2533531491081307, + "edge_lengths_px": [ + 49.04079818725586, + 61.09828186035156, + 49.81967544555664, + 61.46543884277344 + ] + }, + "confidence": 0.4262916519882062 + }, + { + "observation_id": "dc8a75d1-b8be-4171-83e9-693aaa5cc51d", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1006.0, + 434.0 + ], + [ + 1040.0, + 464.0 + ], + [ + 1023.0, + 519.0 + ], + [ + 983.0, + 494.0 + ] + ], + "center_px": [ + 1013.0, + 477.75 + ], + "quality": { + "area_px": 2677.5, + "perimeter_px": 214.33768844604492, + "sharpness": { + "laplacian_var": 63.84585482864622 + }, + "contrast": { + "p05": 4.0, + "p95": 81.0, + "dynamic_range": 77.0, + "mean_gray": 29.46114864864865, + "std_gray": 31.00050238673812 + }, + "geometry": { + "distance_to_center_norm": 0.33282196521759033, + "distance_to_border_px": 400.0 + }, + "edge_ratio": 1.4171338730692165, + "edge_lengths_px": [ + 45.343135833740234, + 57.567352294921875, + 47.16990661621094, + 64.25729370117188 + ] + }, + "confidence": 0.3613610332351109 + }, + { + "observation_id": "02db5373-d9de-4db1-9828-ef6e196385fa", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 994.0, + 187.0 + ], + [ + 1046.0, + 190.0 + ], + [ + 1029.0, + 238.0 + ], + [ + 978.0, + 230.0 + ] + ], + "center_px": [ + 1011.75, + 211.25 + ], + "quality": { + "area_px": 2434.0, + "perimeter_px": 200.51189422607422, + "sharpness": { + "laplacian_var": 737.7557921421737 + }, + "contrast": { + "p05": 56.0, + "p95": 183.0, + "dynamic_range": 127.0, + "mean_gray": 101.10567632850241, + "std_gray": 52.34786160983359 + }, + "geometry": { + "distance_to_center_norm": 0.48837676644325256, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.1352691889411037, + "edge_lengths_px": [ + 52.08646774291992, + 50.9215087890625, + 51.62363815307617, + 45.880279541015625 + ] + }, + "confidence": 0.8808483571484285 + }, + { + "observation_id": "3b48937e-5e7d-4a48-bc5e-b2fb6f3e344f", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 920.0, + 169.0 + ], + [ + 969.0, + 170.0 + ], + [ + 953.0, + 218.0 + ], + [ + 902.0, + 215.0 + ] + ], + "center_px": [ + 936.0, + 193.0 + ], + "quality": { + "area_px": 2384.0, + "perimeter_px": 200.09115982055664, + "sharpness": { + "laplacian_var": 675.8367068624159 + }, + "contrast": { + "p05": 58.0, + "p95": 184.0, + "dynamic_range": 126.0, + "mean_gray": 125.61893054701905, + "std_gray": 52.20639937589474 + }, + "geometry": { + "distance_to_center_norm": 0.4541509747505188, + "distance_to_border_px": 169.0 + }, + "edge_ratio": 1.042398381472962, + "edge_lengths_px": [ + 49.01020431518555, + 50.59644317626953, + 51.088157653808594, + 49.39635467529297 + ] + }, + "confidence": 0.9593261249954639 + }, + { + "observation_id": "3a9aa5b6-25fa-4c56-a592-74e65c0af55d", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 837.0, + 569.0 + ], + [ + 877.0, + 568.0 + ], + [ + 857.0, + 624.0 + ], + [ + 816.0, + 623.0 + ] + ], + "center_px": [ + 846.75, + 596.0 + ], + "quality": { + "area_px": 2227.5, + "perimeter_px": 198.4285888671875, + "sharpness": { + "laplacian_var": 456.8683277511788 + }, + "contrast": { + "p05": 43.0, + "p95": 185.0, + "dynamic_range": 142.0, + "mean_gray": 85.2088948787062, + "std_gray": 56.487417453665174 + }, + "geometry": { + "distance_to_center_norm": 0.15396633744239807, + "distance_to_border_px": 456.0 + }, + "edge_ratio": 1.486142577830794, + "edge_lengths_px": [ + 40.01249694824219, + 59.46427536010742, + 41.01219177246094, + 57.93962478637695 + ] + }, + "confidence": 0.6728829487273165 + }, + { + "observation_id": "1eda63fe-4ef2-44b5-8f64-e342872285ca", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 380.0, + 1053.0 + ], + [ + 418.0, + 1028.0 + ], + [ + 462.0, + 1043.0 + ], + [ + 426.0, + 1069.0 + ] + ], + "center_px": [ + 421.5, + 1048.25 + ], + "quality": { + "area_px": 1721.0, + "perimeter_px": 185.08320999145508, + "sharpness": { + "laplacian_var": 401.0408793146889 + }, + "contrast": { + "p05": 16.0, + "p95": 171.0, + "dynamic_range": 155.0, + "mean_gray": 91.72839506172839, + "std_gray": 64.0365880429505 + }, + "geometry": { + "distance_to_center_norm": 0.6549152135848999, + "distance_to_border_px": 11.0 + }, + "edge_ratio": 1.0967404836818018, + "edge_lengths_px": [ + 45.486263275146484, + 46.48655700683594, + 44.40720748901367, + 48.703182220458984 + ] + }, + "confidence": 0.20059440065661768 + }, + { + "observation_id": "6564240f-9f81-4b0b-ba68-94cc712a883e", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 839.0, + 266.0 + ], + [ + 854.0, + 309.0 + ], + [ + 811.0, + 306.0 + ], + [ + 796.0, + 265.0 + ] + ], + "center_px": [ + 825.0, + 286.5 + ], + "quality": { + "area_px": 1776.0, + "perimeter_px": 175.31510162353516, + "sharpness": { + "laplacian_var": 240.92017426523984 + }, + "contrast": { + "p05": 22.0, + "p95": 153.0, + "dynamic_range": 131.0, + "mean_gray": 74.06045751633987, + "std_gray": 53.6075481691311 + }, + "geometry": { + "distance_to_center_norm": 0.3048724830150604, + "distance_to_border_px": 265.0 + }, + "edge_ratio": 1.0588111649951575, + "edge_lengths_px": [ + 45.54119110107422, + 43.104522705078125, + 43.65776062011719, + 43.011627197265625 + ] + }, + "confidence": 0.9444554733275536 + }, + { + "observation_id": "f4a3bf92-fead-4986-9e44-7f89ac35e5af", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 992.0, + 902.0 + ], + [ + 1041.0, + 917.0 + ], + [ + 1015.0, + 938.0 + ], + [ + 966.0, + 922.0 + ] + ], + "center_px": [ + 1003.5, + 919.75 + ], + "quality": { + "area_px": 1407.5, + "perimeter_px": 169.01459884643555, + "sharpness": { + "laplacian_var": 202.21712799530312 + }, + "contrast": { + "p05": 11.0, + "p95": 135.0, + "dynamic_range": 124.0, + "mean_gray": 60.230610134436404, + "std_gray": 46.98590047860021 + }, + "geometry": { + "distance_to_center_norm": 0.5265568494796753, + "distance_to_border_px": 142.0 + }, + "edge_ratio": 1.5714104130928346, + "edge_lengths_px": [ + 51.244510650634766, + 33.42155075073242, + 51.54609680175781, + 32.80244064331055 + ] + }, + "confidence": 0.5971281121184089 + }, + { + "observation_id": "9274379f-a9dc-470b-87ad-5ed7b693b371", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 828.0, + 160.0 + ], + [ + 872.0, + 162.0 + ], + [ + 849.0, + 192.0 + ], + [ + 804.0, + 188.0 + ] + ], + "center_px": [ + 838.25, + 175.5 + ], + "quality": { + "area_px": 1361.0, + "perimeter_px": 163.9031524658203, + "sharpness": { + "laplacian_var": 634.8821505010796 + }, + "contrast": { + "p05": 22.0, + "p95": 179.0, + "dynamic_range": 157.0, + "mean_gray": 93.81072210065645, + "std_gray": 65.74062367039625 + }, + "geometry": { + "distance_to_center_norm": 0.4257793128490448, + "distance_to_border_px": 160.0 + }, + "edge_ratio": 1.2250450560973367, + "edge_lengths_px": [ + 44.04542922973633, + 37.80211639404297, + 45.17742919921875, + 36.878177642822266 + ] + }, + "confidence": 0.740653030529222 + }, + { + "observation_id": "69158315-b00e-44a8-b4e0-586fde6f4eed", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 91.0, + 932.0 + ], + [ + 132.0, + 913.0 + ], + [ + 165.0, + 927.0 + ], + [ + 125.0, + 947.0 + ] + ], + "center_px": [ + 128.25, + 929.75 + ], + "quality": { + "area_px": 1240.5, + "perimeter_px": 162.91856002807617, + "sharpness": { + "laplacian_var": 640.6271417753217 + }, + "contrast": { + "p05": 17.0, + "p95": 172.0, + "dynamic_range": 155.0, + "mean_gray": 88.50410316529894, + "std_gray": 59.8365616473406 + }, + "geometry": { + "distance_to_center_norm": 0.7873013019561768, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.2605971300139012, + "edge_lengths_px": [ + 45.18849563598633, + 35.84689712524414, + 44.72135925292969, + 37.161808013916016 + ] + }, + "confidence": 0.6560383014602613 + }, + { + "observation_id": "823e748d-c63b-4cd2-9c67-5658f3ec2b7d", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 384.0, + 918.0 + ], + [ + 416.0, + 899.0 + ], + [ + 455.0, + 911.0 + ], + [ + 424.0, + 931.0 + ] + ], + "center_px": [ + 419.75, + 914.75 + ], + "quality": { + "area_px": 1164.0, + "perimeter_px": 156.97121810913086, + "sharpness": { + "laplacian_var": 1305.0180528018368 + }, + "contrast": { + "p05": 23.0, + "p95": 171.0, + "dynamic_range": 148.0, + "mean_gray": 125.7001287001287, + "std_gray": 50.591649190438574 + }, + "geometry": { + "distance_to_center_norm": 0.5335504412651062, + "distance_to_border_px": 149.0 + }, + "edge_ratio": 1.1400787327238997, + "edge_lengths_px": [ + 37.2155876159668, + 40.804412841796875, + 36.8917350769043, + 42.05948257446289 + ] + }, + "confidence": 0.6806547457875692 + }, + { + "observation_id": "6fa6d8f9-82d4-4c53-8209-2e6b658bca57", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1061.0, + 838.0 + ], + [ + 1107.0, + 851.0 + ], + [ + 1086.0, + 869.0 + ], + [ + 1038.0, + 855.0 + ] + ], + "center_px": [ + 1073.0, + 853.25 + ], + "quality": { + "area_px": 1119.5, + "perimeter_px": 154.0610065460205, + "sharpness": { + "laplacian_var": 699.1501103553894 + }, + "contrast": { + "p05": 27.0, + "p95": 147.0, + "dynamic_range": 120.0, + "mean_gray": 93.41610738255034, + "std_gray": 44.372659317587036 + }, + "geometry": { + "distance_to_center_norm": 0.5243862867355347, + "distance_to_border_px": 211.0 + }, + "edge_ratio": 1.8077537619585837, + "edge_lengths_px": [ + 47.801673889160156, + 27.658634185791016, + 50.0, + 28.600698471069336 + ] + }, + "confidence": 0.41285121294657384 + }, + { + "observation_id": "3ccb5605-591e-45cf-a889-114becef0008", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 205.0, + 850.0 + ], + [ + 240.0, + 834.0 + ], + [ + 272.0, + 846.0 + ], + [ + 238.0, + 862.0 + ] + ], + "center_px": [ + 238.75, + 848.0 + ], + "quality": { + "area_px": 934.0, + "perimeter_px": 145.35046768188477, + "sharpness": { + "laplacian_var": 1079.742643238912 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 86.53560830860535, + "std_gray": 57.948273841825284 + }, + "geometry": { + "distance_to_center_norm": 0.6348573565483093, + "distance_to_border_px": 205.0 + }, + "edge_ratio": 1.1260460248127115, + "edge_lengths_px": [ + 38.4837646484375, + 34.1760139465332, + 37.57658767700195, + 35.11410140991211 + ] + }, + "confidence": 0.5529673325477359 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 539.0, + 665.0 + ], + [ + 601.0, + 657.0 + ], + [ + 722.0, + 692.0 + ], + [ + 705.0, + 711.0 + ] + ], + "center_px": [ + 641.75, + 681.25 + ], + "area_px": 3537.0 + }, + { + "image_points_px": [ + [ + 513.0, + 939.0 + ], + [ + 547.0, + 920.0 + ], + [ + 585.0, + 935.0 + ], + [ + 554.0, + 954.0 + ] + ], + "center_px": [ + 549.75, + 937.0 + ], + "area_px": 1238.0 + }, + { + "image_points_px": [ + [ + 256.0, + 906.0 + ], + [ + 289.0, + 888.0 + ], + [ + 327.0, + 900.0 + ], + [ + 291.0, + 919.0 + ] + ], + "center_px": [ + 290.75, + 903.25 + ], + "area_px": 1106.5 + }, + { + "image_points_px": [ + [ + 1378.0, + 809.0 + ], + [ + 1388.0, + 794.0 + ], + [ + 1434.0, + 804.0 + ], + [ + 1425.0, + 819.0 + ] + ], + "center_px": [ + 1406.25, + 806.5 + ], + "area_px": 792.5 + }, + { + "image_points_px": [ + [ + 492.0, + 714.0 + ], + [ + 517.0, + 702.0 + ], + [ + 551.0, + 710.0 + ], + [ + 527.0, + 723.0 + ] + ], + "center_px": [ + 521.75, + 712.25 + ], + "area_px": 639.5 + }, + { + "image_points_px": [ + [ + 1357.0, + 753.0 + ], + [ + 1371.0, + 740.0 + ], + [ + 1413.0, + 751.0 + ], + [ + 1400.0, + 763.0 + ] + ], + "center_px": [ + 1385.25, + 751.75 + ], + "area_px": 673.0 + }, + { + "image_points_px": [ + [ + 861.0, + 864.0 + ], + [ + 906.0, + 866.0 + ], + [ + 914.0, + 872.0 + ], + [ + 888.0, + 873.0 + ] + ], + "center_px": [ + 892.25, + 868.75 + ], + "area_px": 257.5 + }, + { + "image_points_px": [ + [ + 910.0, + 411.0 + ], + [ + 902.0, + 436.0 + ], + [ + 884.0, + 439.0 + ], + [ + 897.0, + 405.0 + ] + ], + "center_px": [ + 898.25, + 422.75 + ], + "area_px": 473.0 + }, + { + "image_points_px": [ + [ + 926.0, + 925.0 + ], + [ + 927.0, + 944.0 + ], + [ + 919.0, + 968.0 + ], + [ + 918.0, + 955.0 + ] + ], + "center_px": [ + 922.5, + 948.0 + ], + "area_px": 155.0 + }, + { + "image_points_px": [ + [ + 848.0, + 907.0 + ], + [ + 854.0, + 911.0 + ], + [ + 859.0, + 937.0 + ], + [ + 857.0, + 945.0 + ] + ], + "center_px": [ + 854.5, + 925.0 + ], + "area_px": 142.0 + }, + { + "image_points_px": [ + [ + 973.0, + 589.0 + ], + [ + 977.0, + 595.0 + ], + [ + 965.0, + 626.0 + ], + [ + 962.0, + 618.0 + ] + ], + "center_px": [ + 969.25, + 607.0 + ], + "area_px": 185.5 + }, + { + "image_points_px": [ + [ + 946.0, + 260.0 + ], + [ + 928.0, + 294.0 + ], + [ + 936.0, + 270.0 + ], + [ + 942.0, + 260.0 + ] + ], + "center_px": [ + 938.0, + 271.0 + ], + "area_px": 100.0 + }, + { + "image_points_px": [ + [ + 831.0, + 639.0 + ], + [ + 795.0, + 649.0 + ], + [ + 796.0, + 645.0 + ], + [ + 812.0, + 640.0 + ] + ], + "center_px": [ + 808.5, + 643.25 + ], + "area_px": 106.5 + }, + { + "image_points_px": [ + [ + 957.0, + 355.0 + ], + [ + 971.0, + 365.0 + ], + [ + 967.0, + 381.0 + ], + [ + 961.0, + 372.0 + ] + ], + "center_px": [ + 964.0, + 368.25 + ], + "area_px": 165.0 + }, + { + "image_points_px": [ + [ + 1107.0, + 214.0 + ], + [ + 1106.0, + 229.0 + ], + [ + 1099.0, + 243.0 + ], + [ + 1103.0, + 219.0 + ] + ], + "center_px": [ + 1103.75, + 226.25 + ], + "area_px": 83.5 + }, + { + "image_points_px": [ + [ + 275.0, + 926.0 + ], + [ + 284.0, + 927.0 + ], + [ + 303.0, + 935.0 + ], + [ + 277.0, + 929.0 + ] + ], + "center_px": [ + 284.75, + 929.25 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 927.0, + 944.0 + ], + [ + 921.0, + 969.0 + ], + [ + 918.0, + 971.0 + ], + [ + 922.0, + 951.0 + ] + ], + "center_px": [ + 922.0, + 958.75 + ], + "area_px": 67.5 + }, + { + "image_points_px": [ + [ + 507.0, + 975.0 + ], + [ + 526.0, + 982.0 + ], + [ + 529.0, + 986.0 + ], + [ + 509.0, + 979.0 + ] + ], + "center_px": [ + 517.75, + 980.5 + ], + "area_px": 60.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/render_d_camera_pose.json b/data/camera_study/Scene10/k4_bdeg/render_d_camera_pose.json new file mode 100644 index 0000000..9c36cdb --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/render_d_camera_pose.json @@ -0,0 +1,285 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:33Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_bdeg\\render_d_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "d", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 6, + "used_marker_ids": [ + 95, + 208, + 69, + 103, + 214, + 64 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.010671415477997622, + 0.0018696542807179611, + 0.001824150025738836, + 0.0018241474426834877 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.164164330259058, + "residual_median_px": 5.398072385043921, + "residual_max_px": 7.027422341283123, + "sigma2_normalized": 6.6550277836154934e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8166700601577759, + 0.5771039724349976, + -0.0010227123275399208 + ], + [ + 0.16298067569732666, + -0.2323361337184906, + -0.9588833451271057 + ], + [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + ], + "translation_m": [ + -0.11485252529382706, + 0.08547275513410568, + 1.1249300241470337 + ], + "rvec_rad": [ + 1.7923624327425687, + 0.5686287097896567, + -0.4261428430202902 + ] + }, + "camera_in_world": { + "position_m": [ + 0.7026420831680298, + -0.7945951223373413, + 0.4010946750640869 + ], + "position_mm": [ + 702.64208984375, + -794.5950927734375, + 401.09466552734375 + ], + "orientation_deg": { + "roll": 109.92484283447266, + "pitch": 33.615230560302734, + "yaw": 11.286093711853027 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.0003498424001015397, + 6.823486661029942e-05, + 4.142063730678703e-05, + -5.345001723379169e-06, + -7.396858110018478e-05, + -1.2641475041979003e-05 + ], + [ + 6.823486661029988e-05, + 0.00010295516106391171, + -9.137229494897015e-05, + 2.281178954254835e-05, + -1.979611332364414e-05, + -7.605354993482835e-06 + ], + [ + 4.142063730678625e-05, + -9.137229494897096e-05, + 0.0002702927022549336, + -4.213130837183371e-05, + -7.56149612726986e-06, + 9.26150663825411e-06 + ], + [ + -5.345001723379082e-06, + 2.281178954254845e-05, + -4.2131308371833616e-05, + 8.962887675732753e-06, + -2.575675434153523e-07, + -3.848871385514968e-06 + ], + [ + -7.396858110018466e-05, + -1.9796113323644056e-05, + -7.561496127270001e-06, + -2.575675434153093e-07, + 1.8000566759428326e-05, + 7.99389653027148e-06 + ], + [ + -1.2641475041978559e-05, + -7.605354993482897e-06, + 9.261506638254348e-06, + -3.848871385514858e-06, + 7.993896530271401e-06, + 2.7756310749504287e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 1.07166452425966, + 0.581362070062273, + 0.9419759016685776 + ], + "tvec_std_m": [ + 0.0029938082229382617, + 0.004242707479832698, + 0.005268425832210631 + ] + }, + "camera_center_std_m": [ + 0.01190826606439346, + 0.013088153786860686, + 0.01603645350806163 + ], + "camera_center_std_mm": [ + 11.90826606439346, + 13.088153786860685, + 16.03645350806163 + ], + "orientation_std_deg": { + "roll": 1.2477636245413861, + "pitch": 0.8325671808473429, + "yaw": 0.699613718760565 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 421.5, + 1048.25 + ], + "projected_center_px": [ + 423.55438232421875, + 1045.9644775390625 + ], + "reprojection_error_px": 3.0731253885112206, + "confidence": 0.20059440065661768 + }, + { + "marker_id": 208, + "observed_center_px": [ + 1003.5, + 919.75 + ], + "projected_center_px": [ + 996.4899291992188, + 920.2435302734375 + ], + "reprojection_error_px": 7.027422341283123, + "confidence": 0.5971281121184089 + }, + { + "marker_id": 69, + "observed_center_px": [ + 128.25, + 929.75 + ], + "projected_center_px": [ + 123.95993041992188, + 934.0740966796875 + ], + "reprojection_error_px": 6.091182898025322, + "confidence": 0.6560383014602613 + }, + { + "marker_id": 103, + "observed_center_px": [ + 419.75, + 914.75 + ], + "projected_center_px": [ + 425.61590576171875, + 913.2058715820312 + ], + "reprojection_error_px": 6.065738452698394, + "confidence": 0.6806547457875692 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1073.0, + 853.25 + ], + "projected_center_px": [ + 1077.615234375, + 854.2874755859375 + ], + "reprojection_error_px": 4.730406317389448, + "confidence": 0.41285121294657384 + }, + { + "marker_id": 64, + "observed_center_px": [ + 238.75, + 848.0 + ], + "projected_center_px": [ + 237.76194763183594, + 846.0165405273438 + ], + "reprojection_error_px": 2.2159329777555143, + "confidence": 0.5529673325477359 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/render_e_aruco_detection.json b/data/camera_study/Scene10/k4_bdeg/render_e_aruco_detection.json new file mode 100644 index 0000000..fba94f1 --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/render_e_aruco_detection.json @@ -0,0 +1,1199 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:32Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "e", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.npz", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.png", + "image_sha256": "d9465055b192acfccc2cb79885882693d4f0d01141ecc06177116dded5d564cb", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 12, + "num_rejected_candidates": 20 + }, + "detections": [ + { + "observation_id": "bc1801e7-4bd1-4a6a-bae4-5d1208667caa", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 986.0, + 1027.0 + ], + [ + 1024.0, + 1012.0 + ], + [ + 1062.0, + 1033.0 + ], + [ + 1026.0, + 1050.0 + ] + ], + "center_px": [ + 1024.5, + 1030.5 + ], + "quality": { + "area_px": 1438.0, + "perimeter_px": 170.22312927246094, + "sharpness": { + "laplacian_var": 453.1861132150195 + }, + "contrast": { + "p05": 14.0, + "p95": 153.0, + "dynamic_range": 139.0, + "mean_gray": 72.75522388059701, + "std_gray": 50.64349874612125 + }, + "geometry": { + "distance_to_center_norm": 0.6414783596992493, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1589726701270886, + "edge_lengths_px": [ + 40.853397369384766, + 43.416587829589844, + 39.81205749511719, + 46.14108657836914 + ] + }, + "confidence": 0.4963016081621025 + }, + { + "observation_id": "3b904aaa-1498-4303-a73c-38a36718f3d9", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1277.0, + 1049.0 + ], + [ + 1308.0, + 1032.0 + ], + [ + 1355.0, + 1053.0 + ], + [ + 1324.0, + 1071.0 + ] + ], + "center_px": [ + 1316.0, + 1051.25 + ], + "quality": { + "area_px": 1489.0, + "perimeter_px": 174.5745086669922, + "sharpness": { + "laplacian_var": 412.816421944627 + }, + "contrast": { + "p05": 13.0, + "p95": 145.0, + "dynamic_range": 132.0, + "mean_gray": 61.47008547008547, + "std_gray": 49.57416295951042 + }, + "geometry": { + "distance_to_center_norm": 0.8724822998046875, + "distance_to_border_px": 9.0 + }, + "edge_ratio": 1.46778745364521, + "edge_lengths_px": [ + 35.35533905029297, + 51.4781494140625, + 35.84689712524414, + 51.89412307739258 + ] + }, + "confidence": 0.12173424671007582 + }, + { + "observation_id": "18ae9add-5409-4c63-92d1-0af935ee14e9", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 780.0, + 466.0 + ], + [ + 811.0, + 497.0 + ], + [ + 790.0, + 533.0 + ], + [ + 759.0, + 507.0 + ] + ], + "center_px": [ + 785.0, + 500.75 + ], + "quality": { + "area_px": 1792.0, + "perimeter_px": 172.04298400878906, + "sharpness": { + "laplacian_var": 431.52108687263 + }, + "contrast": { + "p05": 4.0, + "p95": 86.0, + "dynamic_range": 82.0, + "mean_gray": 35.97742474916388, + "std_gray": 31.48995686460428 + }, + "geometry": { + "distance_to_center_norm": 0.08436811715364456, + "distance_to_border_px": 466.0 + }, + "edge_ratio": 1.138540089676814, + "edge_lengths_px": [ + 43.84062194824219, + 41.67733383178711, + 40.45985794067383, + 46.06517028808594 + ] + }, + "confidence": 0.8783177764815114 + }, + { + "observation_id": "6c960dee-3a78-4366-abf9-7126e2313171", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 777.0, + 986.0 + ], + [ + 818.0, + 973.0 + ], + [ + 849.0, + 994.0 + ], + [ + 809.0, + 1009.0 + ] + ], + "center_px": [ + 813.25, + 990.5 + ], + "quality": { + "area_px": 1332.0, + "perimeter_px": 162.58305740356445, + "sharpness": { + "laplacian_var": 675.3602149959689 + }, + "contrast": { + "p05": 19.700000000000003, + "p95": 154.0, + "dynamic_range": 134.3, + "mean_gray": 93.49617486338798, + "std_gray": 46.101180438545676 + }, + "geometry": { + "distance_to_center_norm": 0.5111664533615112, + "distance_to_border_px": 71.0 + }, + "edge_ratio": 1.1487138651855313, + "edge_lengths_px": [ + 43.011627197265625, + 37.44329071044922, + 42.72002029418945, + 39.408119201660156 + ] + }, + "confidence": 0.7730384623298485 + }, + { + "observation_id": "1e53a8dd-675a-4816-a2ab-f279f2ecc63d", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 749.0, + 642.0 + ], + [ + 771.0, + 676.0 + ], + [ + 734.0, + 695.0 + ], + [ + 713.0, + 662.0 + ] + ], + "center_px": [ + 741.75, + 668.75 + ], + "quality": { + "area_px": 1642.0, + "perimeter_px": 162.38792037963867, + "sharpness": { + "laplacian_var": 92.67615631030367 + }, + "contrast": { + "p05": 7.0, + "p95": 101.0, + "dynamic_range": 94.0, + "mean_gray": 53.06440071556351, + "std_gray": 38.78329965301281 + }, + "geometry": { + "distance_to_center_norm": 0.14508245885372162, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0633526883983422, + "edge_lengths_px": [ + 40.49691390991211, + 41.59326934814453, + 39.11521530151367, + 41.18252182006836 + ] + }, + "confidence": 0.7262889453443055 + }, + { + "observation_id": "48a8e286-3b63-47da-8775-e35b0a9f3773", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 865.0, + 314.0 + ], + [ + 896.0, + 337.0 + ], + [ + 879.0, + 373.0 + ], + [ + 847.0, + 352.0 + ] + ], + "center_px": [ + 871.75, + 344.0 + ], + "quality": { + "area_px": 1550.5, + "perimeter_px": 158.7354850769043, + "sharpness": { + "laplacian_var": 91.32963410546913 + }, + "contrast": { + "p05": 3.0, + "p95": 80.0, + "dynamic_range": 77.0, + "mean_gray": 29.31711880261927, + "std_gray": 30.16374856556423 + }, + "geometry": { + "distance_to_center_norm": 0.27542126178741455, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0985563073040754, + "edge_lengths_px": [ + 38.60051727294922, + 39.81205749511719, + 38.27531814575195, + 42.04759216308594 + ] + }, + "confidence": 0.6668204157436237 + }, + { + "observation_id": "d0a932d7-20e4-472f-967a-cc8337c80fbf", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 934.0 + ], + [ + 1105.0, + 922.0 + ], + [ + 1141.0, + 939.0 + ], + [ + 1107.0, + 953.0 + ] + ], + "center_px": [ + 1106.0, + 937.0 + ], + "quality": { + "area_px": 1080.0, + "perimeter_px": 153.34338760375977, + "sharpness": { + "laplacian_var": 1315.6913698207666 + }, + "contrast": { + "p05": 34.0, + "p95": 156.0, + "dynamic_range": 122.0, + "mean_gray": 112.49931224209078, + "std_gray": 38.505501664035826 + }, + "geometry": { + "distance_to_center_norm": 0.6152436137199402, + "distance_to_border_px": 127.0 + }, + "edge_ratio": 1.128988685253164, + "edge_lengths_px": [ + 36.055511474609375, + 39.81205749511719, + 36.769554138183594, + 40.70626449584961 + ] + }, + "confidence": 0.6377388980107869 + }, + { + "observation_id": "b62d37e7-9d33-48df-af58-1bf3937f42ac", + "type": "aruco", + "marker_id": 244, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 981.0, + 163.0 + ], + [ + 1000.0, + 190.0 + ], + [ + 982.0, + 224.0 + ], + [ + 962.0, + 201.0 + ] + ], + "center_px": [ + 981.25, + 194.5 + ], + "quality": { + "area_px": 1164.5, + "perimeter_px": 144.45070838928223, + "sharpness": { + "laplacian_var": 96.06874104557231 + }, + "contrast": { + "p05": 4.0, + "p95": 67.0, + "dynamic_range": 63.0, + "mean_gray": 33.3358024691358, + "std_gray": 25.95401112529325 + }, + "geometry": { + "distance_to_center_norm": 0.48128148913383484, + "distance_to_border_px": 163.0 + }, + "edge_ratio": 1.393897148047905, + "edge_lengths_px": [ + 33.0151481628418, + 38.470767974853516, + 30.479501724243164, + 42.48529052734375 + ] + }, + "confidence": 0.35113079528934743 + }, + { + "observation_id": "0c2c7a0d-72ea-4f4d-a4ff-4e116d9dc283", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 674.0, + 619.0 + ], + [ + 703.0, + 624.0 + ], + [ + 700.0, + 664.0 + ], + [ + 672.0, + 658.0 + ] + ], + "center_px": [ + 687.25, + 641.25 + ], + "quality": { + "area_px": 1139.5, + "perimeter_px": 137.22710990905762, + "sharpness": { + "laplacian_var": 863.1978615203191 + }, + "contrast": { + "p05": 32.0, + "p95": 169.0, + "dynamic_range": 137.0, + "mean_gray": 80.9662775616083, + "std_gray": 55.08560868618617 + }, + "geometry": { + "distance_to_center_norm": 0.11823874711990356, + "distance_to_border_px": 416.0 + }, + "edge_ratio": 1.4007837305049835, + "edge_lengths_px": [ + 29.42787742614746, + 40.112342834472656, + 28.635643005371094, + 39.051246643066406 + ] + }, + "confidence": 0.542315455357842 + }, + { + "observation_id": "9d5887ca-e9e2-40a1-bc00-788db85e47a8", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 517.0, + 788.0 + ], + [ + 550.0, + 780.0 + ], + [ + 575.0, + 794.0 + ], + [ + 540.0, + 802.0 + ] + ], + "center_px": [ + 545.5, + 791.0 + ], + "quality": { + "area_px": 668.0, + "perimeter_px": 125.43741798400879, + "sharpness": { + "laplacian_var": 1607.3082682839233 + }, + "contrast": { + "p05": 19.0, + "p95": 147.0, + "dynamic_range": 128.0, + "mean_gray": 65.39445628997868, + "std_gray": 47.873144952539 + }, + "geometry": { + "distance_to_center_norm": 0.33966439962387085, + "distance_to_border_px": 278.0 + }, + "edge_ratio": 1.3333908058760269, + "edge_lengths_px": [ + 33.95585250854492, + 28.65309715270996, + 35.902645111083984, + 26.925823211669922 + ] + }, + "confidence": 0.33398560374859715 + }, + { + "observation_id": "14129a87-e865-4342-8867-2b03fc1e6453", + "type": "aruco", + "marker_id": 114, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 846.0, + 444.0 + ], + [ + 854.0, + 462.0 + ], + [ + 835.0, + 496.0 + ], + [ + 827.0, + 477.0 + ] + ], + "center_px": [ + 840.5, + 469.75 + ], + "quality": { + "area_px": 619.5, + "perimeter_px": 117.34079360961914, + "sharpness": { + "laplacian_var": 515.9082048204126 + }, + "contrast": { + "p05": 13.0, + "p95": 77.0, + "dynamic_range": 64.0, + "mean_gray": 34.12249443207127, + "std_gray": 22.140483977294974 + }, + "geometry": { + "distance_to_center_norm": 0.15498033165931702, + "distance_to_border_px": 444.0 + }, + "edge_ratio": 1.977319866342296, + "edge_lengths_px": [ + 19.697715759277344, + 38.94868469238281, + 20.615528106689453, + 38.07886505126953 + ] + }, + "confidence": 0.16709486695806255 + }, + { + "observation_id": "f470e215-7f26-41d5-8dba-234391f351ab", + "type": "aruco", + "marker_id": 120, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 904.0, + 345.0 + ], + [ + 911.0, + 366.0 + ], + [ + 893.0, + 397.0 + ], + [ + 885.0, + 381.0 + ] + ], + "center_px": [ + 898.25, + 372.25 + ], + "quality": { + "area_px": 593.5, + "perimeter_px": 116.57765007019043, + "sharpness": { + "laplacian_var": 612.2280321521758 + }, + "contrast": { + "p05": 13.75, + "p95": 72.0, + "dynamic_range": 58.25, + "mean_gray": 30.091743119266056, + "std_gray": 19.626461861945877 + }, + "geometry": { + "distance_to_center_norm": 0.27196842432022095, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 2.2755493296600644, + "edge_lengths_px": [ + 22.135944366455078, + 35.84689712524414, + 17.8885440826416, + 40.70626449584961 + ] + }, + "confidence": 0.12660450288269692 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 955.0, + 949.0 + ], + [ + 989.0, + 936.0 + ], + [ + 1024.0, + 953.0 + ], + [ + 991.0, + 967.0 + ] + ], + "center_px": [ + 989.75, + 951.25 + ], + "area_px": 1065.5 + }, + { + "image_points_px": [ + [ + 727.0, + 881.0 + ], + [ + 763.0, + 870.0 + ], + [ + 792.0, + 891.0 + ], + [ + 756.0, + 904.0 + ] + ], + "center_px": [ + 759.5, + 886.5 + ], + "area_px": 1140.0 + }, + { + "image_points_px": [ + [ + 818.0, + 869.0 + ], + [ + 850.0, + 858.0 + ], + [ + 887.0, + 875.0 + ], + [ + 849.0, + 885.0 + ] + ], + "center_px": [ + 851.0, + 871.75 + ], + "area_px": 934.5 + }, + { + "image_points_px": [ + [ + 1115.0, + 909.0 + ], + [ + 1146.0, + 897.0 + ], + [ + 1182.0, + 914.0 + ], + [ + 1154.0, + 927.0 + ] + ], + "center_px": [ + 1149.25, + 911.75 + ], + "area_px": 985.0 + }, + { + "image_points_px": [ + [ + 1244.0, + 805.0 + ], + [ + 1274.0, + 794.0 + ], + [ + 1312.0, + 812.0 + ], + [ + 1282.0, + 821.0 + ] + ], + "center_px": [ + 1278.0, + 808.0 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 891.0, + 399.0 + ], + [ + 918.0, + 457.0 + ], + [ + 898.0, + 447.0 + ], + [ + 884.0, + 415.0 + ] + ], + "center_px": [ + 897.75, + 429.5 + ], + "area_px": 669.0 + }, + { + "image_points_px": [ + [ + 495.0, + 791.0 + ], + [ + 459.0, + 801.0 + ], + [ + 438.0, + 784.0 + ], + [ + 473.0, + 774.0 + ] + ], + "center_px": [ + 466.25, + 787.5 + ], + "area_px": 818.5 + }, + { + "image_points_px": [ + [ + 888.0, + 139.0 + ], + [ + 871.0, + 170.0 + ], + [ + 844.0, + 169.0 + ], + [ + 861.0, + 139.0 + ] + ], + "center_px": [ + 866.0, + 154.25 + ], + "area_px": 832.0 + }, + { + "image_points_px": [ + [ + 635.0, + 778.0 + ], + [ + 606.0, + 791.0 + ], + [ + 580.0, + 773.0 + ], + [ + 612.0, + 764.0 + ] + ], + "center_px": [ + 608.25, + 776.5 + ], + "area_px": 757.5 + }, + { + "image_points_px": [ + [ + 754.0, + 745.0 + ], + [ + 784.0, + 735.0 + ], + [ + 806.0, + 749.0 + ], + [ + 780.0, + 762.0 + ] + ], + "center_px": [ + 781.0, + 747.75 + ], + "area_px": 710.0 + }, + { + "image_points_px": [ + [ + 852.0, + 659.0 + ], + [ + 882.0, + 653.0 + ], + [ + 906.0, + 665.0 + ], + [ + 877.0, + 672.0 + ] + ], + "center_px": [ + 879.25, + 662.25 + ], + "area_px": 528.0 + }, + { + "image_points_px": [ + [ + 613.0, + 739.0 + ], + [ + 581.0, + 746.0 + ], + [ + 560.0, + 733.0 + ], + [ + 592.0, + 726.0 + ] + ], + "center_px": [ + 586.5, + 736.0 + ], + "area_px": 563.0 + }, + { + "image_points_px": [ + [ + 770.0, + 398.0 + ], + [ + 751.0, + 432.0 + ], + [ + 736.0, + 433.0 + ], + [ + 753.0, + 403.0 + ] + ], + "center_px": [ + 752.5, + 416.5 + ], + "area_px": 458.0 + }, + { + "image_points_px": [ + [ + 937.0, + 633.0 + ], + [ + 963.0, + 626.0 + ], + [ + 986.0, + 637.0 + ], + [ + 962.0, + 645.0 + ] + ], + "center_px": [ + 962.0, + 635.25 + ], + "area_px": 467.5 + }, + { + "image_points_px": [ + [ + 496.0, + 636.0 + ], + [ + 518.0, + 630.0 + ], + [ + 542.0, + 641.0 + ], + [ + 514.0, + 648.0 + ] + ], + "center_px": [ + 517.5, + 638.75 + ], + "area_px": 424.0 + }, + { + "image_points_px": [ + [ + 706.0, + 672.0 + ], + [ + 713.0, + 681.0 + ], + [ + 712.0, + 701.0 + ], + [ + 705.0, + 700.0 + ] + ], + "center_px": [ + 709.0, + 688.5 + ], + "area_px": 173.0 + }, + { + "image_points_px": [ + [ + 1270.0, + 652.0 + ], + [ + 1277.0, + 642.0 + ], + [ + 1299.0, + 649.0 + ], + [ + 1283.0, + 656.0 + ] + ], + "center_px": [ + 1282.25, + 649.75 + ], + "area_px": 212.0 + }, + { + "image_points_px": [ + [ + 1324.0, + 677.0 + ], + [ + 1334.0, + 678.0 + ], + [ + 1347.0, + 684.0 + ], + [ + 1327.0, + 680.0 + ] + ], + "center_px": [ + 1333.0, + 679.75 + ], + "area_px": 47.5 + }, + { + "image_points_px": [ + [ + 1335.0, + 615.0 + ], + [ + 1338.0, + 613.0 + ], + [ + 1347.0, + 613.0 + ], + [ + 1358.0, + 618.0 + ] + ], + "center_px": [ + 1344.5, + 614.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 779.0, + 642.0 + ], + [ + 777.0, + 658.0 + ], + [ + 774.0, + 665.0 + ], + [ + 773.0, + 659.0 + ] + ], + "center_px": [ + 775.75, + 656.0 + ], + "area_px": 43.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/render_e_camera_pose.json b/data/camera_study/Scene10/k4_bdeg/render_e_camera_pose.json new file mode 100644 index 0000000..764d76e --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/render_e_camera_pose.json @@ -0,0 +1,271 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:33Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_bdeg\\render_e_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "e", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 5, + "used_marker_ids": [ + 48, + 63, + 57, + 102, + 54 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.007197111808548965, + 0.001098276420089881, + 0.0009620344476883504, + 0.0009620205232011758 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 2.7281525726006493, + "residual_median_px": 2.5183121097354597, + "residual_max_px": 3.7576731420043146, + "sigma2_normalized": 2.3137087159701097e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.6321497559547424, + 0.7748407125473022, + 0.0029369741678237915 + ], + [ + 0.21024876832962036, + -0.16787971556186676, + -0.9631260633468628 + ], + [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + ], + "translation_m": [ + -0.056855153292417526, + -0.012442845851182938, + 1.5609862804412842 + ], + "rvec_rad": [ + 1.7048273936309237, + 0.8116750457158921, + -0.6120703769873145 + ] + }, + "camera_in_world": { + "position_m": [ + 1.2027034759521484, + -0.909389853477478, + 0.40814200043678284 + ], + "position_mm": [ + 1202.7034912109375, + -909.3898315429688, + 408.1419982910156 + ], + "orientation_deg": { + "roll": 113.81822204589844, + "pitch": 48.22581100463867, + "yaw": 18.396778106689453 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.00022441890537757206, + -7.963567536396464e-06, + -2.9398649194599163e-05, + -1.4795386871224034e-05, + -9.369620603686464e-05, + -1.2702492726669124e-05 + ], + [ + -7.963567536395407e-06, + 3.7068884464340944e-05, + -3.338378703660994e-05, + 2.6508530508930155e-05, + -6.804904795036776e-06, + -8.467045467073405e-06 + ], + [ + -2.939864919460005e-05, + -3.338378703660865e-05, + 0.00015704190560829434, + -5.550273740425191e-05, + 8.385195749589376e-06, + 3.13758938875245e-05 + ], + [ + -1.4795386871223326e-05, + 2.6508530508929867e-05, + -5.5502737404252506e-05, + 2.9231680266895845e-05, + 3.3812426915121855e-06, + -8.125563844390692e-06 + ], + [ + -9.369620603686502e-05, + -6.80490479503646e-06, + 8.385195749589481e-06, + 3.3812426915123345e-06, + 4.4878486349463374e-05, + 1.0425895360947247e-05 + ], + [ + -1.2702492726669507e-05, + -8.467045467073171e-06, + 3.137589388752461e-05, + -8.125563844390541e-06, + 1.0425895360947318e-05, + 2.9592030404347494e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.8583261662306342, + 0.3488408939722953, + 0.7180098641027528 + ], + "tvec_std_m": [ + 0.005406632987996859, + 0.006699140717246009, + 0.0054398557337807674 + ] + }, + "camera_center_std_m": [ + 0.006976893112270283, + 0.012106263892740327, + 0.01216157052134005 + ], + "camera_center_std_mm": [ + 6.976893112270283, + 12.106263892740326, + 12.16157052134005 + ], + "orientation_std_deg": { + "roll": 1.0513875130551562, + "pitch": 0.6166264667162378, + "yaw": 0.5162490597129769 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1024.5, + 1030.5 + ], + "projected_center_px": [ + 1023.4668579101562, + 1032.796630859375 + ], + "reprojection_error_px": 2.5183121097354597, + "confidence": 0.4963016081621025 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1316.0, + 1051.25 + ], + "projected_center_px": [ + 1318.0511474609375, + 1052.518798828125 + ], + "reprojection_error_px": 2.4118574528279497, + "confidence": 0.12173424671007582 + }, + { + "marker_id": 57, + "observed_center_px": [ + 813.25, + 990.5 + ], + "projected_center_px": [ + 814.3992309570312, + 987.8240966796875 + ], + "reprojection_error_px": 2.912248336295932, + "confidence": 0.7730384623298485 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1106.0, + 937.0 + ], + "projected_center_px": [ + 1103.0518798828125, + 934.6700439453125 + ], + "reprojection_error_px": 3.7576731420043146, + "confidence": 0.6377388980107869 + }, + { + "marker_id": 54, + "observed_center_px": [ + 545.5, + 791.0 + ], + "projected_center_px": [ + 546.1773071289062, + 792.4124755859375 + ], + "reprojection_error_px": 1.5664712661701496, + "confidence": 0.33398560374859715 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/render_g_aruco_detection.json b/data/camera_study/Scene10/k4_bdeg/render_g_aruco_detection.json new file mode 100644 index 0000000..5c8bb70 --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/render_g_aruco_detection.json @@ -0,0 +1,2224 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:32Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "g", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.npz", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.png", + "image_sha256": "6f328ef148dd5b73d40dbd9254ac0545dbd7393ed4666dd8eee8d3e346b4448b", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 37, + "num_rejected_candidates": 7 + }, + "detections": [ + { + "observation_id": "59ab3788-0af4-441b-a919-e2c8338e9a7b", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 361.0, + 538.0 + ], + [ + 334.0, + 513.0 + ], + [ + 364.0, + 489.0 + ], + [ + 391.0, + 513.0 + ] + ], + "center_px": [ + 362.5, + 513.25 + ], + "quality": { + "area_px": 1396.5, + "perimeter_px": 150.3915138244629, + "sharpness": { + "laplacian_var": 1014.5935798624517 + }, + "contrast": { + "p05": 15.0, + "p95": 168.0, + "dynamic_range": 153.0, + "mean_gray": 87.64736297828335, + "std_gray": 65.25681309567548 + }, + "geometry": { + "distance_to_center_norm": 0.3983326554298401, + "distance_to_border_px": 334.0 + }, + "edge_ratio": 1.0810098739215166, + "edge_lengths_px": [ + 36.79673767089844, + 38.41874694824219, + 36.12478256225586, + 39.051246643066406 + ] + }, + "confidence": 0.8612317264250932 + }, + { + "observation_id": "7cab665d-1e69-47ff-ae4a-4ecea3b4c7e2", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 490.0, + 612.0 + ], + [ + 463.0, + 586.0 + ], + [ + 492.0, + 572.0 + ], + [ + 518.0, + 598.0 + ] + ], + "center_px": [ + 490.75, + 592.0 + ], + "quality": { + "area_px": 1112.0, + "perimeter_px": 137.76032066345215, + "sharpness": { + "laplacian_var": 1213.9038992326398 + }, + "contrast": { + "p05": 22.0, + "p95": 181.0, + "dynamic_range": 159.0, + "mean_gray": 82.85922974767597, + "std_gray": 68.84435047820993 + }, + "geometry": { + "distance_to_center_norm": 0.26119279861450195, + "distance_to_border_px": 463.0 + }, + "edge_ratio": 1.1973610126869798, + "edge_lengths_px": [ + 37.48332977294922, + 32.202484130859375, + 36.769554138183594, + 31.30495262145996 + ] + }, + "confidence": 0.619139361878602 + }, + { + "observation_id": "db6d1295-c6e1-4f63-bccc-f4f1118752f5", + "type": "aruco", + "marker_id": 86, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 94.0, + 958.0 + ], + [ + 68.0, + 982.0 + ], + [ + 47.0, + 960.0 + ], + [ + 73.0, + 936.0 + ] + ], + "center_px": [ + 70.5, + 959.0 + ], + "quality": { + "area_px": 1076.0, + "perimeter_px": 131.59485244750977, + "sharpness": { + "laplacian_var": 500.4565883722073 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 68.66531713900135, + "std_gray": 56.437884581126355 + }, + "geometry": { + "distance_to_center_norm": 0.8588042259216309, + "distance_to_border_px": 47.0 + }, + "edge_ratio": 1.1634060487042286, + "edge_lengths_px": [ + 35.38361358642578, + 30.4138126373291, + 35.38361358642578, + 30.4138126373291 + ] + }, + "confidence": 0.5795855489013004 + }, + { + "observation_id": "1d6f251c-6fb7-45e1-9b4a-879fc1c3000e", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 944.0, + 859.0 + ], + [ + 923.0, + 881.0 + ], + [ + 899.0, + 859.0 + ], + [ + 921.0, + 837.0 + ] + ], + "center_px": [ + 921.75, + 859.0 + ], + "quality": { + "area_px": 990.0, + "perimeter_px": 125.91181182861328, + "sharpness": { + "laplacian_var": 1254.5651387199953 + }, + "contrast": { + "p05": 37.0, + "p95": 176.0, + "dynamic_range": 139.0, + "mean_gray": 94.86206896551724, + "std_gray": 57.98150599974307 + }, + "geometry": { + "distance_to_center_norm": 0.41938236355781555, + "distance_to_border_px": 199.0 + }, + "edge_ratio": 1.070488611997406, + "edge_lengths_px": [ + 30.4138126373291, + 32.557640075683594, + 31.11269760131836, + 31.827661514282227 + ] + }, + "confidence": 0.616540888528013 + }, + { + "observation_id": "1c90d4b7-45f1-421a-967b-7cf974fab27d", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 442.0, + 549.0 + ], + [ + 415.0, + 524.0 + ], + [ + 437.0, + 520.0 + ], + [ + 464.0, + 545.0 + ] + ], + "center_px": [ + 439.5, + 534.5 + ], + "quality": { + "area_px": 658.0, + "perimeter_px": 118.31483459472656, + "sharpness": { + "laplacian_var": 2355.6744409733983 + }, + "contrast": { + "p05": 23.0, + "p95": 180.0, + "dynamic_range": 157.0, + "mean_gray": 108.16359918200409, + "std_gray": 61.881853788931394 + }, + "geometry": { + "distance_to_center_norm": 0.31172657012939453, + "distance_to_border_px": 415.0 + }, + "edge_ratio": 1.6456001465781875, + "edge_lengths_px": [ + 36.79673767089844, + 22.360679626464844, + 36.79673767089844, + 22.360679626464844 + ] + }, + "confidence": 0.2665694139483502 + }, + { + "observation_id": "e69aefaa-9b49-4cbc-9993-3bb2155ae55b", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 565.0, + 714.0 + ], + [ + 544.0, + 692.0 + ], + [ + 568.0, + 672.0 + ], + [ + 589.0, + 694.0 + ] + ], + "center_px": [ + 566.5, + 693.0 + ], + "quality": { + "area_px": 948.0, + "perimeter_px": 123.30962371826172, + "sharpness": { + "laplacian_var": 948.7205075308444 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 87.45253164556962, + "std_gray": 63.36793023445192 + }, + "geometry": { + "distance_to_center_norm": 0.24080945551395416, + "distance_to_border_px": 366.0 + }, + "edge_ratio": 1.027197727372641, + "edge_lengths_px": [ + 30.4138126373291, + 31.240999221801758, + 30.4138126373291, + 31.240999221801758 + ] + }, + "confidence": 0.6152661587526339 + }, + { + "observation_id": "484e9ead-3a96-4936-9244-760468cb2e36", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 903.0, + 772.0 + ], + [ + 882.0, + 794.0 + ], + [ + 858.0, + 773.0 + ], + [ + 879.0, + 752.0 + ] + ], + "center_px": [ + 880.5, + 772.75 + ], + "quality": { + "area_px": 946.5, + "perimeter_px": 123.24373435974121, + "sharpness": { + "laplacian_var": 1446.0998691484099 + }, + "contrast": { + "p05": 34.0, + "p95": 175.0, + "dynamic_range": 141.0, + "mean_gray": 92.60221870047543, + "std_gray": 58.54318515049794 + }, + "geometry": { + "distance_to_center_norm": 0.31413766741752625, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 1.0738069198414777, + "edge_lengths_px": [ + 30.4138126373291, + 31.890438079833984, + 29.698484420776367, + 31.240999221801758 + ] + }, + "confidence": 0.5876289194459208 + }, + { + "observation_id": "d778df44-e1af-44d4-af6a-34fb42e8eaa1", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 138.0, + 787.0 + ], + [ + 113.0, + 809.0 + ], + [ + 93.0, + 789.0 + ], + [ + 118.0, + 767.0 + ] + ], + "center_px": [ + 115.5, + 788.0 + ], + "quality": { + "area_px": 940.0, + "perimeter_px": 123.17184448242188, + "sharpness": { + "laplacian_var": 604.4415315905076 + }, + "contrast": { + "p05": 6.0, + "p95": 133.0, + "dynamic_range": 127.0, + "mean_gray": 50.246422893481714, + "std_gray": 50.2390597357709 + }, + "geometry": { + "distance_to_center_norm": 0.725993812084198, + "distance_to_border_px": 93.0 + }, + "edge_ratio": 1.177391162675776, + "edge_lengths_px": [ + 33.30165100097656, + 28.284271240234375, + 33.30165100097656, + 28.284271240234375 + ] + }, + "confidence": 0.5322501871361803 + }, + { + "observation_id": "6e00bc74-d26d-49dc-8a43-999932547b38", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 999.0, + 755.0 + ], + [ + 978.0, + 776.0 + ], + [ + 955.0, + 755.0 + ], + [ + 976.0, + 734.0 + ] + ], + "center_px": [ + 977.0, + 755.0 + ], + "quality": { + "area_px": 924.0, + "perimeter_px": 121.68661499023438, + "sharpness": { + "laplacian_var": 1427.420428863967 + }, + "contrast": { + "p05": 40.0, + "p95": 177.0, + "dynamic_range": 137.0, + "mean_gray": 98.6042345276873, + "std_gray": 56.7245592071717 + }, + "geometry": { + "distance_to_center_norm": 0.37230345606803894, + "distance_to_border_px": 304.0 + }, + "edge_ratio": 1.0487007563440722, + "edge_lengths_px": [ + 29.698484420776367, + 31.14482307434082, + 29.698484420776367, + 31.14482307434082 + ] + }, + "confidence": 0.5873934926369923 + }, + { + "observation_id": "15143da9-880f-4319-8dda-0aff2375530b", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 76.0, + 765.0 + ], + [ + 50.0, + 785.0 + ], + [ + 32.0, + 764.0 + ], + [ + 58.0, + 744.0 + ] + ], + "center_px": [ + 54.0, + 764.5 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.92214965820312, + "sharpness": { + "laplacian_var": 1149.1764888888888 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 87.18, + "std_gray": 50.17918824904737 + }, + "geometry": { + "distance_to_center_norm": 0.7809113264083862, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.1859747094873558, + "edge_lengths_px": [ + 32.80244064331055, + 27.658634185791016, + 32.80244064331055, + 27.658634185791016 + ] + }, + "confidence": 0.32594286952973284 + }, + { + "observation_id": "05bb4b27-2c03-44f3-8086-9957205b4af3", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 823.0, + 743.0 + ], + [ + 803.0, + 765.0 + ], + [ + 779.0, + 745.0 + ], + [ + 799.0, + 724.0 + ] + ], + "center_px": [ + 801.0, + 744.25 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.58359336853027, + "sharpness": { + "laplacian_var": 1584.9415918166465 + }, + "contrast": { + "p05": 30.0, + "p95": 174.0, + "dynamic_range": 144.0, + "mean_gray": 126.23913043478261, + "std_gray": 56.63381767927601 + }, + "geometry": { + "distance_to_center_norm": 0.24413886666297913, + "distance_to_border_px": 315.0 + }, + "edge_ratio": 1.0772758352345433, + "edge_lengths_px": [ + 29.73213768005371, + 31.240999221801758, + 29.0, + 30.610456466674805 + ] + }, + "confidence": 0.5606734879266068 + }, + { + "observation_id": "e2b56a9a-584f-4c74-a262-331455cca322", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 747.0, + 705.0 + ], + [ + 724.0, + 724.0 + ], + [ + 703.0, + 703.0 + ], + [ + 726.0, + 683.0 + ] + ], + "center_px": [ + 725.0, + 703.75 + ], + "quality": { + "area_px": 904.0, + "perimeter_px": 120.42466735839844, + "sharpness": { + "laplacian_var": 1425.730397310992 + }, + "contrast": { + "p05": 25.0, + "p95": 173.0, + "dynamic_range": 148.0, + "mean_gray": 88.02341137123746, + "std_gray": 60.58805571551177 + }, + "geometry": { + "distance_to_center_norm": 0.18202924728393555, + "distance_to_border_px": 356.0 + }, + "edge_ratio": 1.0262982208923905, + "edge_lengths_px": [ + 29.832868576049805, + 29.698484420776367, + 30.479501724243164, + 30.4138126373291 + ] + }, + "confidence": 0.5872237273710109 + }, + { + "observation_id": "d84a137a-8519-4b2e-b322-0710521242c7", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 119.0, + 710.0 + ], + [ + 94.0, + 730.0 + ], + [ + 76.0, + 709.0 + ], + [ + 102.0, + 690.0 + ] + ], + "center_px": [ + 97.75, + 709.75 + ], + "quality": { + "area_px": 864.0, + "perimeter_px": 118.12554931640625, + "sharpness": { + "laplacian_var": 968.3578168166666 + }, + "contrast": { + "p05": 6.0, + "p95": 136.0, + "dynamic_range": 130.0, + "mean_gray": 46.16981132075472, + "std_gray": 49.20730448013899 + }, + "geometry": { + "distance_to_center_norm": 0.7166538238525391, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.226816924595493, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 32.202484130859375, + 26.248809814453125 + ] + }, + "confidence": 0.46950770604173 + }, + { + "observation_id": "69bf1a3c-23e8-4e2c-b7e4-7c5689a4de7f", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 73.0, + 695.0 + ], + [ + 48.0, + 715.0 + ], + [ + 30.0, + 694.0 + ], + [ + 55.0, + 675.0 + ] + ], + "center_px": [ + 51.5, + 694.75 + ], + "quality": { + "area_px": 863.5, + "perimeter_px": 117.98213958740234, + "sharpness": { + "laplacian_var": 900.750086057507 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 80.92109777015438, + "std_gray": 51.03488818616118 + }, + "geometry": { + "distance_to_center_norm": 0.7624196410179138, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 31.400636672973633, + 26.90724754333496 + ] + }, + "confidence": 0.2902883953953809 + }, + { + "observation_id": "54328f88-fab6-412b-a452-d83c55ab1564", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 50.0, + 652.0 + ], + [ + 25.0, + 672.0 + ], + [ + 7.0, + 652.0 + ], + [ + 31.0, + 632.0 + ] + ], + "center_px": [ + 28.25, + 652.0 + ], + "quality": { + "area_px": 860.0, + "perimeter_px": 117.75009727478027, + "sharpness": { + "laplacian_var": 765.5794806391044 + }, + "contrast": { + "p05": 6.0, + "p95": 138.0, + "dynamic_range": 132.0, + "mean_gray": 60.22508591065292, + "std_gray": 51.90037234016344 + }, + "geometry": { + "distance_to_center_norm": 0.778620183467865, + "distance_to_border_px": 7.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 26.90724754333496, + 31.240999221801758, + 27.58622932434082 + ] + }, + "confidence": 0.06745941479560678 + }, + { + "observation_id": "629ae125-4bb7-45e1-98bb-8f946644e3cd", + "type": "aruco", + "marker_id": 79, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 603.0, + 594.0 + ], + [ + 579.0, + 612.0 + ], + [ + 561.0, + 592.0 + ], + [ + 584.0, + 574.0 + ] + ], + "center_px": [ + 581.75, + 593.0 + ], + "quality": { + "area_px": 803.0, + "perimeter_px": 113.69964027404785, + "sharpness": { + "laplacian_var": 1656.0680687854385 + }, + "contrast": { + "p05": 12.0, + "p95": 161.0, + "dynamic_range": 149.0, + "mean_gray": 98.64845173041894, + "std_gray": 55.913593747198206 + }, + "geometry": { + "distance_to_center_norm": 0.16451223194599152, + "distance_to_border_px": 468.0 + }, + "edge_ratio": 1.1149412421944707, + "edge_lengths_px": [ + 30.0, + 26.90724754333496, + 29.20616340637207, + 27.58622932434082 + ] + }, + "confidence": 0.48014488393995497 + }, + { + "observation_id": "df132c12-efa7-435f-a4d2-212b1e8b4cd3", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 532.0 + ], + [ + 698.0, + 550.0 + ], + [ + 678.0, + 531.0 + ], + [ + 700.0, + 513.0 + ] + ], + "center_px": [ + 699.0, + 531.5 + ], + "quality": { + "area_px": 778.0, + "perimeter_px": 112.02313995361328, + "sharpness": { + "laplacian_var": 1630.603042441958 + }, + "contrast": { + "p05": 23.0, + "p95": 174.0, + "dynamic_range": 151.0, + "mean_gray": 95.26275992438563, + "std_gray": 62.75795126376546 + }, + "geometry": { + "distance_to_center_norm": 0.025172246620059013, + "distance_to_border_px": 513.0 + }, + "edge_ratio": 1.0304177609146679, + "edge_lengths_px": [ + 28.42534065246582, + 27.58622932434082, + 28.42534065246582, + 27.58622932434082 + ] + }, + "confidence": 0.5033557129355607 + }, + { + "observation_id": "5a842ebf-3956-4708-b570-31a7bf2e0f88", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 879.0, + 509.0 + ], + [ + 858.0, + 527.0 + ], + [ + 837.0, + 508.0 + ], + [ + 857.0, + 490.0 + ] + ], + "center_px": [ + 857.75, + 508.5 + ], + "quality": { + "area_px": 776.5, + "perimeter_px": 111.95437049865723, + "sharpness": { + "laplacian_var": 1308.7119920798898 + }, + "contrast": { + "p05": 28.0, + "p95": 174.0, + "dynamic_range": 146.0, + "mean_gray": 80.56060606060606, + "std_gray": 60.05184093458493 + }, + "geometry": { + "distance_to_center_norm": 0.1570063829421997, + "distance_to_border_px": 490.0 + }, + "edge_ratio": 1.0803365840024208, + "edge_lengths_px": [ + 27.658634185791016, + 28.319604873657227, + 26.90724754333496, + 29.068883895874023 + ] + }, + "confidence": 0.4791716529202595 + }, + { + "observation_id": "1aaf561f-af41-4f8d-bcb7-b2d68de3eeca", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 692.0, + 463.0 + ], + [ + 670.0, + 480.0 + ], + [ + 650.0, + 462.0 + ], + [ + 672.0, + 445.0 + ] + ], + "center_px": [ + 671.0, + 462.5 + ], + "quality": { + "area_px": 736.0, + "perimeter_px": 109.42024993896484, + "sharpness": { + "laplacian_var": 1430.0492813475546 + }, + "contrast": { + "p05": 18.0, + "p95": 168.0, + "dynamic_range": 150.0, + "mean_gray": 84.02217741935483, + "std_gray": 61.295601129603824 + }, + "geometry": { + "distance_to_center_norm": 0.10187894850969315, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 1.0332858231363153, + "edge_lengths_px": [ + 27.80287742614746, + 26.90724754333496, + 27.80287742614746, + 26.90724754333496 + ] + }, + "confidence": 0.47486054263026106 + }, + { + "observation_id": "301d0398-5ef2-48df-ae86-e900cf514a61", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 226.0, + 383.0 + ], + [ + 209.0, + 365.0 + ], + [ + 233.0, + 348.0 + ], + [ + 250.0, + 366.0 + ] + ], + "center_px": [ + 229.5, + 365.5 + ], + "quality": { + "area_px": 721.0, + "perimeter_px": 108.33943939208984, + "sharpness": { + "laplacian_var": 1811.1556224254036 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 72.70393374741201, + "std_gray": 58.0764945436627 + }, + "geometry": { + "distance_to_center_norm": 0.5784616470336914, + "distance_to_border_px": 209.0 + }, + "edge_ratio": 1.187894376916731, + "edge_lengths_px": [ + 24.75883674621582, + 29.4108829498291, + 24.75883674621582, + 29.4108829498291 + ] + }, + "confidence": 0.4046375469124394 + }, + { + "observation_id": "59b3f883-a15f-4e1e-a712-17cf0cfc6d94", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 437.0 + ], + [ + 765.0, + 454.0 + ], + [ + 745.0, + 436.0 + ], + [ + 767.0, + 419.0 + ] + ], + "center_px": [ + 765.75, + 436.5 + ], + "quality": { + "area_px": 718.5, + "perimeter_px": 107.90114212036133, + "sharpness": { + "laplacian_var": 1491.443337468285 + }, + "contrast": { + "p05": 22.0, + "p95": 171.0, + "dynamic_range": 149.0, + "mean_gray": 109.3970893970894, + "std_gray": 60.642148532506475 + }, + "geometry": { + "distance_to_center_norm": 0.12573395669460297, + "distance_to_border_px": 419.0 + }, + "edge_ratio": 1.0622933508624515, + "edge_lengths_px": [ + 27.018512725830078, + 26.90724754333496, + 27.80287742614746, + 26.172504425048828 + ] + }, + "confidence": 0.4509112286273005 + }, + { + "observation_id": "622bb23f-992f-46a0-9d32-04307689bce4", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 730.0, + 434.0 + ], + [ + 708.0, + 452.0 + ], + [ + 689.0, + 434.0 + ], + [ + 710.0, + 417.0 + ] + ], + "center_px": [ + 709.25, + 434.25 + ], + "quality": { + "area_px": 717.5, + "perimeter_px": 107.86516761779785, + "sharpness": { + "laplacian_var": 1736.662652737497 + }, + "contrast": { + "p05": 19.0, + "p95": 167.0, + "dynamic_range": 148.0, + "mean_gray": 58.66320166320166, + "std_gray": 55.157409197074806 + }, + "geometry": { + "distance_to_center_norm": 0.11810554563999176, + "distance_to_border_px": 417.0 + }, + "edge_ratio": 1.0860764484296306, + "edge_lengths_px": [ + 28.42534065246582, + 26.172504425048828, + 27.018512725830078, + 26.248809814453125 + ] + }, + "confidence": 0.44042326304466006 + }, + { + "observation_id": "3645d1dd-48b2-4c6d-9bd2-21ba02c8561b", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 576.0, + 320.0 + ], + [ + 550.0, + 337.0 + ], + [ + 536.0, + 319.0 + ], + [ + 558.0, + 303.0 + ] + ], + "center_px": [ + 555.0, + 319.75 + ], + "quality": { + "area_px": 684.0, + "perimeter_px": 105.82973670959473, + "sharpness": { + "laplacian_var": 2755.9650784771356 + }, + "contrast": { + "p05": 18.3, + "p95": 164.0, + "dynamic_range": 145.7, + "mean_gray": 118.58029978586724, + "std_gray": 53.53363006243584 + }, + "geometry": { + "distance_to_center_norm": 0.30577781796455383, + "distance_to_border_px": 303.0 + }, + "edge_ratio": 1.362266203821036, + "edge_lengths_px": [ + 31.064449310302734, + 22.803508758544922, + 27.20294189453125, + 24.75883674621582 + ] + }, + "confidence": 0.33473633767097827 + }, + { + "observation_id": "7111504b-6cda-4311-94c3-9d502cac6ad8", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 146.0, + 302.0 + ], + [ + 128.0, + 284.0 + ], + [ + 151.0, + 268.0 + ], + [ + 168.0, + 285.0 + ] + ], + "center_px": [ + 148.25, + 284.75 + ], + "quality": { + "area_px": 682.5, + "perimeter_px": 105.31820297241211, + "sharpness": { + "laplacian_var": 1274.9818476124406 + }, + "contrast": { + "p05": 8.0, + "p95": 153.0, + "dynamic_range": 145.0, + "mean_gray": 78.65806451612903, + "std_gray": 55.65065056297059 + }, + "geometry": { + "distance_to_center_norm": 0.6957105398178101, + "distance_to_border_px": 128.0 + }, + "edge_ratio": 1.1653889989621362, + "edge_lengths_px": [ + 25.45584487915039, + 28.017850875854492, + 24.041629791259766, + 27.80287742614746 + ] + }, + "confidence": 0.3904275743165678 + }, + { + "observation_id": "428e153f-33c8-4c40-a546-06b38961b0a7", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 561.0, + 509.0 + ], + [ + 545.0, + 479.0 + ], + [ + 562.0, + 476.0 + ], + [ + 579.0, + 506.0 + ] + ], + "center_px": [ + 561.75, + 492.5 + ], + "quality": { + "area_px": 574.5, + "perimeter_px": 103.99284362792969, + "sharpness": { + "laplacian_var": 2618.6153012470177 + }, + "contrast": { + "p05": 28.0, + "p95": 182.0, + "dynamic_range": 154.0, + "mean_gray": 76.1413881748072, + "std_gray": 60.266572002236316 + }, + "geometry": { + "distance_to_center_norm": 0.18358337879180908, + "distance_to_border_px": 476.0 + }, + "edge_ratio": 1.997481717814946, + "edge_lengths_px": [ + 34.0, + 17.262676239013672, + 34.48188018798828, + 18.248287200927734 + ] + }, + "confidence": 0.19174142951303974 + }, + { + "observation_id": "1be011ca-f627-46e0-8ce0-101afe8fd3ca", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 349.0, + 309.0 + ], + [ + 327.0, + 326.0 + ], + [ + 309.0, + 310.0 + ], + [ + 330.0, + 293.0 + ] + ], + "center_px": [ + 328.75, + 309.5 + ], + "quality": { + "area_px": 658.5, + "perimeter_px": 103.74406433105469, + "sharpness": { + "laplacian_var": 1094.0317657154478 + }, + "contrast": { + "p05": 9.0, + "p95": 158.0, + "dynamic_range": 149.0, + "mean_gray": 66.65924276169265, + "std_gray": 58.28183701574557 + }, + "geometry": { + "distance_to_center_norm": 0.5045555830001831, + "distance_to_border_px": 293.0 + }, + "edge_ratio": 1.1544516556294537, + "edge_lengths_px": [ + 27.80287742614746, + 24.083189010620117, + 27.018512725830078, + 24.83948516845703 + ] + }, + "confidence": 0.38026711457279644 + }, + { + "observation_id": "7e4c5b78-5b8a-4e7a-afe4-40a8fe132798", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 341.0 + ], + [ + 501.0, + 358.0 + ], + [ + 483.0, + 341.0 + ], + [ + 503.0, + 325.0 + ] + ], + "center_px": [ + 502.25, + 341.25 + ], + "quality": { + "area_px": 643.5, + "perimeter_px": 102.22933197021484, + "sharpness": { + "laplacian_var": 792.6312567894008 + }, + "contrast": { + "p05": 12.0, + "p95": 156.59999999999997, + "dynamic_range": 144.59999999999997, + "mean_gray": 44.28285077951002, + "std_gray": 50.37014613113326 + }, + "geometry": { + "distance_to_center_norm": 0.32757362723350525, + "distance_to_border_px": 325.0 + }, + "edge_ratio": 1.0912674534258815, + "edge_lengths_px": [ + 27.018512725830078, + 24.75883674621582, + 25.612497329711914, + 24.83948516845703 + ] + }, + "confidence": 0.3931208602008742 + }, + { + "observation_id": "e8c49d4a-4b7a-4fd4-9401-83aabc393684", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 378.0, + 281.0 + ], + [ + 356.0, + 296.0 + ], + [ + 340.0, + 278.0 + ], + [ + 362.0, + 263.0 + ] + ], + "center_px": [ + 359.0, + 279.5 + ], + "quality": { + "area_px": 636.0, + "perimeter_px": 101.42048645019531, + "sharpness": { + "laplacian_var": 1475.439773960402 + }, + "contrast": { + "p05": 12.0, + "p95": 159.0, + "dynamic_range": 147.0, + "mean_gray": 104.82805429864253, + "std_gray": 54.152686185461974 + }, + "geometry": { + "distance_to_center_norm": 0.49463948607444763, + "distance_to_border_px": 263.0 + }, + "edge_ratio": 1.1056282539133682, + "edge_lengths_px": [ + 26.62705421447754, + 24.083189010620117, + 26.62705421447754, + 24.083189010620117 + ] + }, + "confidence": 0.3834923705135548 + }, + { + "observation_id": "49324c50-8396-4f4c-b8f5-6cc9ee0114c3", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 444.0, + 258.0 + ], + [ + 425.0, + 275.0 + ], + [ + 406.0, + 259.0 + ], + [ + 427.0, + 243.0 + ] + ], + "center_px": [ + 425.5, + 258.75 + ], + "quality": { + "area_px": 607.0, + "perimeter_px": 99.40690803527832, + "sharpness": { + "laplacian_var": 1418.6926709234967 + }, + "contrast": { + "p05": 11.0, + "p95": 160.0, + "dynamic_range": 149.0, + "mean_gray": 106.14797136038186, + "std_gray": 57.2326997711296 + }, + "geometry": { + "distance_to_center_norm": 0.45247167348861694, + "distance_to_border_px": 243.0 + }, + "edge_ratio": 1.1644874731532113, + "edge_lengths_px": [ + 25.495098114013672, + 24.83948516845703, + 26.4007568359375, + 22.671567916870117 + ] + }, + "confidence": 0.3475062428717297 + }, + { + "observation_id": "33b78a1c-85df-47ce-bdaa-2f319854b0e6", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 540.0, + 214.0 + ], + [ + 518.0, + 229.0 + ], + [ + 502.0, + 212.0 + ], + [ + 524.0, + 198.0 + ] + ], + "center_px": [ + 521.0, + 213.25 + ], + "quality": { + "area_px": 595.0, + "perimeter_px": 98.67651557922363, + "sharpness": { + "laplacian_var": 2376.767235312675 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 88.00492610837438, + "std_gray": 57.82609375178821 + }, + "geometry": { + "distance_to_center_norm": 0.425087571144104, + "distance_to_border_px": 198.0 + }, + "edge_ratio": 1.176760682519333, + "edge_lengths_px": [ + 26.62705421447754, + 23.34523582458496, + 26.07680892944336, + 22.627416610717773 + ] + }, + "confidence": 0.3370835485575886 + }, + { + "observation_id": "79b6e1a0-4593-40a3-8fc7-c38cd621a417", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 435.0, + 187.0 + ], + [ + 413.0, + 203.0 + ], + [ + 397.0, + 188.0 + ], + [ + 416.0, + 172.0 + ] + ], + "center_px": [ + 415.25, + 187.5 + ], + "quality": { + "area_px": 587.5, + "perimeter_px": 98.18157768249512, + "sharpness": { + "laplacian_var": 1963.1431301414739 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 65.73891625615764, + "std_gray": 57.77965459852634 + }, + "geometry": { + "distance_to_center_norm": 0.5177453756332397, + "distance_to_border_px": 172.0 + }, + "edge_ratio": 1.2403473347124077, + "edge_lengths_px": [ + 27.20294189453125, + 21.931713104248047, + 24.83948516845703, + 24.20743751525879 + ] + }, + "confidence": 0.3157717646545193 + }, + { + "observation_id": "cc2776f4-15d6-4a52-a647-ccbe8fab6f2d", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 295.0, + 182.0 + ], + [ + 274.0, + 199.0 + ], + [ + 257.0, + 184.0 + ], + [ + 277.0, + 168.0 + ] + ], + "center_px": [ + 275.75, + 183.25 + ], + "quality": { + "area_px": 586.0, + "perimeter_px": 98.10608673095703, + "sharpness": { + "laplacian_var": 1004.0248132785243 + }, + "contrast": { + "p05": 8.0, + "p95": 152.0, + "dynamic_range": 144.0, + "mean_gray": 57.34663341645885, + "std_gray": 54.68788834886238 + }, + "geometry": { + "distance_to_center_norm": 0.6330687999725342, + "distance_to_border_px": 168.0 + }, + "edge_ratio": 1.1917355175830322, + "edge_lengths_px": [ + 27.018512725830078, + 22.671567916870117, + 25.612497329711914, + 22.803508758544922 + ] + }, + "confidence": 0.32781322776968225 + }, + { + "observation_id": "8b4904c1-56ee-4fed-8418-9231a350b5b9", + "type": "aruco", + "marker_id": 65, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 330.0, + 124.0 + ], + [ + 309.0, + 139.0 + ], + [ + 292.0, + 125.0 + ], + [ + 312.0, + 109.0 + ] + ], + "center_px": [ + 310.75, + 124.25 + ], + "quality": { + "area_px": 568.5, + "perimeter_px": 96.87293815612793, + "sharpness": { + "laplacian_var": 1300.0755674364495 + }, + "contrast": { + "p05": 8.0, + "p95": 155.0, + "dynamic_range": 147.0, + "mean_gray": 86.9776119402985, + "std_gray": 55.68315657930573 + }, + "geometry": { + "distance_to_center_norm": 0.6482013463973999, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.1718344795212643, + "edge_lengths_px": [ + 25.806976318359375, + 22.022714614868164, + 25.612497329711914, + 23.430749893188477 + ] + }, + "confidence": 0.323424516536529 + }, + { + "observation_id": "9c55e3de-f071-454a-92d8-d627c6b4a3d6", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 356.0, + 167.0 + ], + [ + 333.0, + 181.0 + ], + [ + 319.0, + 165.0 + ], + [ + 341.0, + 151.0 + ] + ], + "center_px": [ + 337.25, + 166.0 + ], + "quality": { + "area_px": 563.0, + "perimeter_px": 96.19463729858398, + "sharpness": { + "laplacian_var": 1894.9311071943598 + }, + "contrast": { + "p05": 9.0, + "p95": 156.0, + "dynamic_range": 147.0, + "mean_gray": 103.9113924050633, + "std_gray": 53.71344264563591 + }, + "geometry": { + "distance_to_center_norm": 0.5945987105369568, + "distance_to_border_px": 151.0 + }, + "edge_ratio": 1.266484164199827, + "edge_lengths_px": [ + 26.925823211669922, + 21.260292053222656, + 26.07680892944336, + 21.931713104248047 + ] + }, + "confidence": 0.2963584890699928 + }, + { + "observation_id": "a6e2e69a-d9cb-4ec8-9e57-e54b2e9be4b4", + "type": "aruco", + "marker_id": 87, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 180.0, + 65.0 + ], + [ + 159.0, + 81.0 + ], + [ + 143.0, + 66.0 + ], + [ + 164.0, + 52.0 + ] + ], + "center_px": [ + 161.5, + 66.0 + ], + "quality": { + "area_px": 534.0, + "perimeter_px": 94.18685722351074, + "sharpness": { + "laplacian_var": 1427.9534499507668 + }, + "contrast": { + "p05": 8.0, + "p95": 150.0, + "dynamic_range": 142.0, + "mean_gray": 94.2133676092545, + "std_gray": 52.32608089294961 + }, + "geometry": { + "distance_to_center_norm": 0.8139207363128662, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.2806248134565528, + "edge_lengths_px": [ + 26.4007568359375, + 21.931713104248047, + 25.238859176635742, + 20.615528106689453 + ] + }, + "confidence": 0.27798930354872264 + }, + { + "observation_id": "5b8ab1d0-6d36-4224-965d-8a2c6df39615", + "type": "aruco", + "marker_id": 80, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 318.0, + 56.0 + ], + [ + 297.0, + 71.0 + ], + [ + 281.0, + 57.0 + ], + [ + 301.0, + 42.0 + ] + ], + "center_px": [ + 299.25, + 56.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 847.3843286787691 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 66.73007712082263, + "std_gray": 58.398961546954666 + }, + "geometry": { + "distance_to_center_norm": 0.7121544480323792, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.806976318359375, + 21.260292053222656, + 25.0, + 22.022714614868164 + ] + }, + "confidence": 0.24658567276025462 + }, + { + "observation_id": "cc495b2a-2e1b-4dd2-b11f-26feb0eeab7e", + "type": "aruco", + "marker_id": 78, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 352.0, + 82.0 + ], + [ + 332.0, + 97.0 + ], + [ + 315.0, + 83.0 + ], + [ + 336.0, + 68.0 + ] + ], + "center_px": [ + 333.75, + 82.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 1495.6557828150394 + }, + "contrast": { + "p05": 8.0, + "p95": 154.39999999999998, + "dynamic_range": 146.39999999999998, + "mean_gray": 80.43256997455471, + "std_gray": 54.727417597641875 + }, + "geometry": { + "distance_to_center_norm": 0.6652719378471375, + "distance_to_border_px": 68.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.0, + 22.022714614868164, + 25.806976318359375, + 21.260292053222656 + ] + }, + "confidence": 0.29355437233363646 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 486.0, + 719.0 + ], + [ + 454.0, + 799.0 + ], + [ + 418.0, + 837.0 + ], + [ + 463.0, + 740.0 + ] + ], + "center_px": [ + 455.25, + 773.75 + ], + "area_px": 1475.0 + }, + { + "image_points_px": [ + [ + 438.0, + 753.0 + ], + [ + 414.0, + 813.0 + ], + [ + 410.0, + 798.0 + ], + [ + 428.0, + 756.0 + ] + ], + "center_px": [ + 422.5, + 780.0 + ], + "area_px": 483.0 + }, + { + "image_points_px": [ + [ + 800.0, + 580.0 + ], + [ + 824.0, + 598.0 + ], + [ + 805.0, + 618.0 + ], + [ + 781.0, + 600.0 + ] + ], + "center_px": [ + 802.5, + 599.0 + ], + "area_px": 822.0 + }, + { + "image_points_px": [ + [ + 347.0, + 811.0 + ], + [ + 356.0, + 811.0 + ], + [ + 379.0, + 836.0 + ], + [ + 372.0, + 837.0 + ] + ], + "center_px": [ + 363.5, + 823.75 + ], + "area_px": 216.0 + }, + { + "image_points_px": [ + [ + 606.0, + 542.0 + ], + [ + 580.0, + 559.0 + ], + [ + 569.0, + 560.0 + ], + [ + 589.0, + 544.0 + ] + ], + "center_px": [ + 586.0, + 551.25 + ], + "area_px": 196.5 + }, + { + "image_points_px": [ + [ + 523.0, + 557.0 + ], + [ + 498.0, + 574.0 + ], + [ + 494.0, + 570.0 + ], + [ + 503.0, + 561.0 + ] + ], + "center_px": [ + 504.5, + 565.5 + ], + "area_px": 156.0 + }, + { + "image_points_px": [ + [ + 803.0, + 972.0 + ], + [ + 814.0, + 977.0 + ], + [ + 824.0, + 985.0 + ], + [ + 808.0, + 977.0 + ] + ], + "center_px": [ + 812.25, + 977.75 + ], + "area_px": 39.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/render_g_camera_pose.json b/data/camera_study/Scene10/k4_bdeg/render_g_camera_pose.json new file mode 100644 index 0000000..bd37ea7 --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/render_g_camera_pose.json @@ -0,0 +1,663 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:34Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_bdeg\\render_g_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "g", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 33, + "used_marker_ids": [ + 86, + 64, + 215, + 58, + 72, + 69, + 53, + 103, + 51, + 56, + 46, + 68, + 79, + 55, + 66, + 47, + 217, + 97, + 54, + 85, + 205, + 92, + 105, + 102, + 59, + 57, + 48, + 63, + 65, + 71, + 87, + 80, + 78 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.009919110626502768, + 0.00131603695020182, + 0.001107937977321884, + 0.0011079307333379282 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.1533723108903047, + "residual_median_px": 2.642822899939481, + "residual_max_px": 5.712847334889287, + "sigma2_normalized": 1.3502615607878073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + -0.7068235278129578, + -0.7073897123336792, + 0.0005333506851457059 + ], + [ + -0.6407679319381714, + 0.6399352550506592, + -0.424145370721817 + ], + [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + ], + "translation_m": [ + -0.00025032571284100413, + 0.3299143314361572, + 1.3926880359649658 + ], + "rvec_rad": [ + 1.1160234227786252, + -2.692342329270323, + 0.5995714660194011 + ] + }, + "camera_in_world": { + "position_m": [ + -0.20615969598293304, + 0.20669731497764587, + 1.40114164352417 + ], + "position_mm": [ + -206.15969848632812, + 206.6973114013672, + 1401.1416015625 + ], + "orientation_deg": { + "roll": -161.66343688964844, + "pitch": -17.43927001953125, + "yaw": -137.80624389648438 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 4.975476294351241e-06, + -6.1997390444361685e-06, + 4.6125841623440254e-06, + 3.8792135706014886e-07, + 1.0177551175558624e-06, + 4.222247510549453e-06 + ], + [ + -6.199739044436152e-06, + 1.6975220993135513e-05, + -1.1554389240886986e-05, + -2.6694426951616535e-06, + -1.5071367865932754e-06, + -1.0044703768545779e-05 + ], + [ + 4.61258416234392e-06, + -1.1554389240886865e-05, + 4.305804556659614e-05, + 4.2916213343878956e-06, + -2.367994951969628e-06, + 1.1642827799058608e-07 + ], + [ + 3.8792135706013785e-07, + -2.66944269516164e-06, + 4.29162133438789e-06, + 8.873234421723078e-07, + -1.077878898019132e-07, + 5.938016020714988e-07 + ], + [ + 1.0177551175558734e-06, + -1.5071367865932949e-06, + -2.3679949519695885e-06, + -1.0778788980190919e-07, + 6.616834799099002e-07, + 1.592756267167381e-06 + ], + [ + 4.2222475105494726e-06, + -1.0044703768545826e-05, + 1.1642827799072875e-07, + 5.938016020715144e-07, + 1.5927562671673749e-06, + 1.016526335390813e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.12780268061910577, + 0.23606432019497975, + 0.37596705361655935 + ], + "tvec_std_m": [ + 0.0009419784722446197, + 0.0008134392908569761, + 0.0031883010136917957 + ] + }, + "camera_center_std_m": [ + 0.005660072460127804, + 0.007818574448214759, + 0.0036781658638248924 + ], + "camera_center_std_mm": [ + 5.660072460127804, + 7.8185744482147586, + 3.6781658638248924 + ], + "orientation_std_deg": { + "roll": 0.33214565947431973, + "pitch": 0.23919321283200756, + "yaw": 0.12115842919429226 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 86, + "observed_center_px": [ + 70.5, + 959.0 + ], + "projected_center_px": [ + 72.42671966552734, + 955.485107421875 + ], + "reprojection_error_px": 4.0083311371801615, + "confidence": 0.5795855489013004 + }, + { + "marker_id": 64, + "observed_center_px": [ + 921.75, + 859.0 + ], + "projected_center_px": [ + 922.7560424804688, + 862.7833251953125 + ], + "reprojection_error_px": 3.9148015283017963, + "confidence": 0.616540888528013 + }, + { + "marker_id": 215, + "observed_center_px": [ + 566.5, + 693.0 + ], + "projected_center_px": [ + 568.2459106445312, + 692.080322265625 + ], + "reprojection_error_px": 1.9733248880487617, + "confidence": 0.6152661587526339 + }, + { + "marker_id": 58, + "observed_center_px": [ + 880.5, + 772.75 + ], + "projected_center_px": [ + 879.3278198242188, + 769.2518310546875 + ], + "reprojection_error_px": 3.689334944735071, + "confidence": 0.5876289194459208 + }, + { + "marker_id": 72, + "observed_center_px": [ + 115.5, + 788.0 + ], + "projected_center_px": [ + 114.51494598388672, + 788.7781982421875 + ], + "reprojection_error_px": 1.2553580838966305, + "confidence": 0.5322501871361803 + }, + { + "marker_id": 69, + "observed_center_px": [ + 977.0, + 755.0 + ], + "projected_center_px": [ + 978.3434448242188, + 750.7787475585938 + ], + "reprojection_error_px": 4.429877669845791, + "confidence": 0.5873934926369923 + }, + { + "marker_id": 53, + "observed_center_px": [ + 54.0, + 764.5 + ], + "projected_center_px": [ + 57.76123046875, + 763.97119140625 + ], + "reprojection_error_px": 3.79822236946143, + "confidence": 0.32594286952973284 + }, + { + "marker_id": 103, + "observed_center_px": [ + 801.0, + 744.25 + ], + "projected_center_px": [ + 797.4358520507812, + 746.4951782226562 + ], + "reprojection_error_px": 4.212359891487205, + "confidence": 0.5606734879266068 + }, + { + "marker_id": 51, + "observed_center_px": [ + 725.0, + 703.75 + ], + "projected_center_px": [ + 724.1592407226562, + 705.2492065429688 + ], + "reprojection_error_px": 1.7188648640657866, + "confidence": 0.5872237273710109 + }, + { + "marker_id": 56, + "observed_center_px": [ + 97.75, + 709.75 + ], + "projected_center_px": [ + 94.510986328125, + 713.8988647460938 + ], + "reprojection_error_px": 5.263486320678788, + "confidence": 0.46950770604173 + }, + { + "marker_id": 46, + "observed_center_px": [ + 51.5, + 694.75 + ], + "projected_center_px": [ + 45.80540466308594, + 695.206298828125 + ], + "reprojection_error_px": 5.712847334889287, + "confidence": 0.2902883953953809 + }, + { + "marker_id": 68, + "observed_center_px": [ + 28.25, + 652.0 + ], + "projected_center_px": [ + 32.07790756225586, + 650.2508544921875 + ], + "reprojection_error_px": 4.20860859580411, + "confidence": 0.06745941479560678 + }, + { + "marker_id": 79, + "observed_center_px": [ + 581.75, + 593.0 + ], + "projected_center_px": [ + 580.7769775390625, + 592.564453125 + ], + "reprojection_error_px": 1.0660552470726525, + "confidence": 0.48014488393995497 + }, + { + "marker_id": 55, + "observed_center_px": [ + 699.0, + 531.5 + ], + "projected_center_px": [ + 701.2785034179688, + 531.0349731445312 + ], + "reprojection_error_px": 2.3254736726100407, + "confidence": 0.5033557129355607 + }, + { + "marker_id": 66, + "observed_center_px": [ + 857.75, + 508.5 + ], + "projected_center_px": [ + 857.27294921875, + 509.6018981933594 + ], + "reprojection_error_px": 1.200731891980841, + "confidence": 0.4791716529202595 + }, + { + "marker_id": 47, + "observed_center_px": [ + 671.0, + 462.5 + ], + "projected_center_px": [ + 669.33203125, + 463.6061096191406 + ], + "reprojection_error_px": 2.001399070783231, + "confidence": 0.47486054263026106 + }, + { + "marker_id": 217, + "observed_center_px": [ + 229.5, + 365.5 + ], + "projected_center_px": [ + 227.5244140625, + 361.9618225097656 + ], + "reprojection_error_px": 4.052362243044047, + "confidence": 0.4046375469124394 + }, + { + "marker_id": 97, + "observed_center_px": [ + 765.75, + 436.5 + ], + "projected_center_px": [ + 768.8408203125, + 437.7091064453125 + ], + "reprojection_error_px": 3.318901715968526, + "confidence": 0.4509112286273005 + }, + { + "marker_id": 54, + "observed_center_px": [ + 709.25, + 434.25 + ], + "projected_center_px": [ + 710.0586547851562, + 430.8271789550781 + ], + "reprojection_error_px": 3.5170479762317965, + "confidence": 0.44042326304466006 + }, + { + "marker_id": 85, + "observed_center_px": [ + 555.0, + 319.75 + ], + "projected_center_px": [ + 556.587158203125, + 321.8631591796875 + ], + "reprojection_error_px": 2.642822899939481, + "confidence": 0.33473633767097827 + }, + { + "marker_id": 205, + "observed_center_px": [ + 148.25, + 284.75 + ], + "projected_center_px": [ + 149.84744262695312, + 286.7835693359375 + ], + "reprojection_error_px": 2.5859673606741804, + "confidence": 0.3904275743165678 + }, + { + "marker_id": 92, + "observed_center_px": [ + 328.75, + 309.5 + ], + "projected_center_px": [ + 328.0833435058594, + 312.3528137207031 + ], + "reprojection_error_px": 2.929671825684897, + "confidence": 0.38026711457279644 + }, + { + "marker_id": 105, + "observed_center_px": [ + 502.25, + 341.25 + ], + "projected_center_px": [ + 498.5203857421875, + 341.1575622558594 + ], + "reprojection_error_px": 3.730759607455309, + "confidence": 0.3931208602008742 + }, + { + "marker_id": 102, + "observed_center_px": [ + 359.0, + 279.5 + ], + "projected_center_px": [ + 359.4945373535156, + 281.3692626953125 + ], + "reprojection_error_px": 1.9335744666573331, + "confidence": 0.3834923705135548 + }, + { + "marker_id": 59, + "observed_center_px": [ + 425.5, + 258.75 + ], + "projected_center_px": [ + 428.2454833984375, + 258.3636779785156 + ], + "reprojection_error_px": 2.7725302154132963, + "confidence": 0.3475062428717297 + }, + { + "marker_id": 57, + "observed_center_px": [ + 521.0, + 213.25 + ], + "projected_center_px": [ + 521.8204956054688, + 214.8630828857422 + ], + "reprojection_error_px": 1.8097650220036505, + "confidence": 0.3370835485575886 + }, + { + "marker_id": 48, + "observed_center_px": [ + 415.25, + 187.5 + ], + "projected_center_px": [ + 416.5931396484375, + 185.31541442871094 + ], + "reprojection_error_px": 2.564456713124472, + "confidence": 0.3157717646545193 + }, + { + "marker_id": 63, + "observed_center_px": [ + 275.75, + 183.25 + ], + "projected_center_px": [ + 273.6121826171875, + 182.2046661376953 + ], + "reprojection_error_px": 2.379702932287163, + "confidence": 0.32781322776968225 + }, + { + "marker_id": 65, + "observed_center_px": [ + 310.75, + 124.25 + ], + "projected_center_px": [ + 308.9479675292969, + 123.33204650878906 + ], + "reprojection_error_px": 2.022364862603867, + "confidence": 0.323424516536529 + }, + { + "marker_id": 71, + "observed_center_px": [ + 337.25, + 166.0 + ], + "projected_center_px": [ + 337.3795471191406, + 168.51844787597656 + ], + "reprojection_error_px": 2.52177757942458, + "confidence": 0.2963584890699928 + }, + { + "marker_id": 87, + "observed_center_px": [ + 161.5, + 66.0 + ], + "projected_center_px": [ + 160.9746551513672, + 64.77437591552734 + ], + "reprojection_error_px": 1.33346976209604, + "confidence": 0.27798930354872264 + }, + { + "marker_id": 80, + "observed_center_px": [ + 299.25, + 56.5 + ], + "projected_center_px": [ + 298.39697265625, + 58.612037658691406 + ], + "reprojection_error_px": 2.277796900716975, + "confidence": 0.24658567276025462 + }, + { + "marker_id": 78, + "observed_center_px": [ + 333.75, + 82.5 + ], + "projected_center_px": [ + 335.54010009765625, + 79.4444351196289 + ], + "reprojection_error_px": 3.5413182711789872, + "confidence": 0.29355437233363646 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/robot_state.eval.json b/data/camera_study/Scene10/k4_bdeg/robot_state.eval.json new file mode 100644 index 0000000..12c8800 --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 120.90552419394959, + "gt": 120.0, + "error": 0.9055241939495886, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 59.747071950906395, + "gt": 60.0, + "error": 0.25292804909361166, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.08787958131568, + "gt": -110.0, + "error": 0.9121204186843102, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "a", + "estimate": 18.477651531740296, + "gt": 20.0, + "error": 1.5223484682597075, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "b", + "estimate": 33.41829977971581, + "gt": 30.0, + "error": 3.4182997797158237, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "c", + "estimate": -177.97023031425303, + "gt": 180.0, + "error": 2.029769685746942, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "e", + "estimate": 4.492064503543996, + "gt": 4.0, + "error": 0.4920645035439959, + "unit": "mm", + "observable": true, + "n_markers": 2 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 1.627093280300079, + "max_abs_deg": 3.4182997797158237, + "mean_abs_mm": 0.6987943487467922, + "max_abs_mm": 0.9055241939495886 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_bdeg/robot_state.json b/data/camera_study/Scene10/k4_bdeg/robot_state.json new file mode 100644 index 0000000..e24cdb1 --- /dev/null +++ b/data/camera_study/Scene10/k4_bdeg/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:37Z", + "method": "hybrid", + "movements": { + "x": { + "value": 120.90552419394959, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 59.747071950906395, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.08787958131568, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "a": { + "value": 18.477651531740296, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "b": { + "value": 33.41829977971581, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "c": { + "value": -177.97023031425303, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "e": { + "value": 4.492064503543996, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 2 + } + }, + "residual_rms": 1.9600104064018415, + "num_markers": 28 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/aruco_marker_poses.json b/data/camera_study/Scene10/k4_cdeg/aruco_marker_poses.json new file mode 100644 index 0000000..5386e5f --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/aruco_marker_poses.json @@ -0,0 +1,902 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:19:58Z", + "summary": { + "num_cameras": 4, + "num_markers": 19 + }, + "cameras": [ + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.30631539220425347, + -0.20198807856032125, + 0.02519723030901981 + ], + "position_mm": [ + 306.31539220425344, + -201.98807856032124, + 25.19723030901981 + ], + "normal": [ + 0.11206926745163338, + -0.9737312065087484, + 0.1982120499966424 + ], + "corners_m": [ + [ + 0.2929903840942107, + -0.20149598191383497, + 0.0358091455139995 + ], + [ + 0.3167670750403431, + -0.19803463650637884, + 0.03804927928754739 + ], + [ + 0.31970394558028625, + -0.20273137192134544, + 0.014634128711513822 + ], + [ + 0.2958001641021738, + -0.2056903238997257, + 0.012296367723018531 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.110261079668923 + }, + { + "marker_id": 45, + "link": "FingerB", + "position_m": [ + 0.3545149668387354, + -0.1995449158683264, + 0.020281204325762067 + ], + "position_mm": [ + 354.5149668387354, + -199.5449158683264, + 20.28120432576207 + ], + "normal": [ + 0.7829571040094812, + -0.6154726469377515, + -0.0903968702584575 + ], + "corners_m": [ + [ + 0.3584111131427959, + -0.19739651128606994, + 0.03732499849314323 + ], + [ + 0.36456556467988155, + -0.18576023438946823, + 0.015576873917745744 + ], + [ + 0.3508559767770808, + -0.20209247004351952, + 0.003741981047947242 + ], + [ + 0.3442272127551833, + -0.21293044775424796, + 0.02448096384421205 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.694224607451936 + }, + { + "marker_id": 48, + "link": "Board", + "position_m": [ + 0.6876438813301919, + -0.3185980163387512, + -0.02729134285766872 + ], + "position_mm": [ + 687.6438813301919, + -318.59801633875117, + -27.29134285766872 + ], + "normal": [ + 0.029132493038135934, + 0.017486234998161154, + 0.9994225980209633 + ], + "corners_m": [ + [ + 0.6759252916051173, + -0.3304756327585794, + -0.02669423244581551 + ], + [ + 0.676847651856678, + -0.3068131732115735, + -0.02723369308680622 + ], + [ + 0.698656198745171, + -0.30724418299370815, + -0.027757855674612312 + ], + [ + 0.6991463831138015, + -0.3298590763911436, + -0.027479590223440833 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.842535044675618 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.16825562085584816, + -0.1734809633057118, + -0.02752098986972397 + ], + "position_mm": [ + 168.25562085584818, + -173.4809633057118, + -27.52098986972397 + ], + "normal": [ + 0.007918541433902623, + -0.00262154991236141, + 0.9999652114836879 + ], + "corners_m": [ + [ + 0.15574577787428512, + -0.18451361155881613, + -0.02747989599174738 + ], + [ + 0.15688189150261422, + -0.1614818191917827, + -0.027369791638464508 + ], + [ + 0.180518545751108, + -0.16209650018770508, + -0.02761708165290253 + ], + [ + 0.17987626829538533, + -0.1858319222845434, + -0.027617190195781453 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.654243322358507 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.34023197778799485, + -0.3287150835951823, + -0.0276212087821332 + ], + "position_mm": [ + 340.2319777879949, + -328.7150835951823, + -27.6212087821332 + ], + "normal": [ + 0.035973860467295886, + 0.0383966590147623, + 0.9986148296213029 + ], + "corners_m": [ + [ + 0.32837541105840407, + -0.34011375397588034, + -0.02672465389433222 + ], + [ + 0.3291126407395555, + -0.31721195597550134, + -0.027693445683307016 + ], + [ + 0.3523279484196888, + -0.3174499715501807, + -0.02845922352502053 + ], + [ + 0.3511119109343311, + -0.34008465287916695, + -0.027607512025873034 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.900064354484954 + }, + { + "marker_id": 57, + "link": "Board", + "position_m": [ + 0.6043014556076433, + -0.36522271977523946, + -0.027512117134979735 + ], + "position_mm": [ + 604.3014556076432, + -365.22271977523945, + -27.512117134979736 + ], + "normal": [ + 0.03495884584046278, + -0.005462497311808814, + 0.9993738240621581 + ], + "corners_m": [ + [ + 0.591968639923899, + -0.37591941696440434, + -0.02692398942041797 + ], + [ + 0.5940115776187654, + -0.35273718727345393, + -0.027299077808318407 + ], + [ + 0.6166315474518378, + -0.3547479630737979, + -0.02766687294690424 + ], + [ + 0.6145940574360705, + -0.3774863117893017, + -0.028158528364278318 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.88379257230473 + }, + { + "marker_id": 58, + "link": "Board", + "position_m": [ + 0.04742385399708232, + -0.216717412863171, + -0.02695505636641059 + ], + "position_mm": [ + 47.42385399708232, + -216.717412863171, + -26.95505636641059 + ], + "normal": [ + 0.019100306898624804, + -0.001942401105123781, + 0.9998156856912805 + ], + "corners_m": [ + [ + 0.03567467162824947, + -0.2290023287960555, + -0.02667866139035109 + ], + [ + 0.035400126370396565, + -0.2053204943751088, + -0.026779047998753844 + ], + [ + 0.05917509554285522, + -0.2046923626090632, + -0.027078657584818873 + ], + [ + 0.05944552244682803, + -0.22785446567245646, + -0.027283858491718563 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.609906105509644 + }, + { + "marker_id": 63, + "link": "Board", + "position_m": [ + 0.7758681074652511, + -0.2364546663327315, + -0.027363799088751195 + ], + "position_mm": [ + 775.8681074652511, + -236.45466633273148, + -27.363799088751193 + ], + "normal": [ + 0.016512641877972543, + 0.015848793332588703, + 0.9997380398925064 + ], + "corners_m": [ + [ + 0.7650184393516647, + -0.24869024415251365, + -0.026893262316393118 + ], + [ + 0.764292751942433, + -0.22514738038218757, + -0.027448595673385347 + ], + [ + 0.7868041617433558, + -0.22463207704736096, + -0.027631538196366136 + ], + [ + 0.7873570768235513, + -0.24734896374886378, + -0.02748180016886017 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.7973387713386 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.01906699583778813, + -0.18967716073813995, + -0.0267682279365567 + ], + "position_mm": [ + -19.06699583778813, + -189.67716073813995, + -26.7682279365567 + ], + "normal": [ + 0.005968717149172816, + -0.002164183074903292, + 0.999979845160497 + ], + "corners_m": [ + [ + -0.0308774049066785, + -0.20124322571026207, + -0.02677773720907376 + ], + [ + -0.030744418913229266, + -0.17816600091349313, + -0.026618084360593732 + ], + [ + -0.007376079838670884, + -0.17806442678901907, + -0.02686818394680411 + ], + [ + -0.007270079692573866, + -0.20123498953978564, + -0.026808906229755194 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.30657164884323 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.006178728372678789, + -0.27777928470082647, + -0.02693086067012622 + ], + "position_mm": [ + 6.17872837267879, + -277.77928470082645, + -26.93086067012622 + ], + "normal": [ + 0.01219128792992988, + 0.005927619713402277, + 0.9999081136900245 + ], + "corners_m": [ + [ + -0.0054887779926828415, + -0.2892900128201599, + -0.026689112126799426 + ], + [ + -0.005465595510380183, + -0.26612769515759344, + -0.026889570017883724 + ], + [ + 0.017716141604959358, + -0.26627517135375683, + -0.027108097513562284 + ], + [ + 0.017953145388818825, + -0.28942425947179573, + -0.027036663022259454 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.235432094645248 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6517295714590179, + -0.22378395786176808, + -0.027447714728502406 + ], + "position_mm": [ + 651.7295714590178, + -223.78395786176807, + -27.447714728502405 + ], + "normal": [ + -0.011856932918780372, + -0.008084638519855527, + 0.9998970205785008 + ], + "corners_m": [ + [ + 0.6393528676706781, + -0.23413234980278727, + -0.027543396825760274 + ], + [ + 0.6411178962348237, + -0.21161457276202672, + -0.027612287132815307 + ], + [ + 0.6639092499664809, + -0.21330120094591223, + -0.027082834577027898 + ], + [ + 0.6625382719640891, + -0.2360877079363461, + -0.027552340378406145 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.886753330749595 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10494370739673921, + -0.1908731691241194, + -0.027124062148956483 + ], + "position_mm": [ + 104.94370739673921, + -190.87316912411939, + -27.124062148956483 + ], + "normal": [ + 0.016107559268153954, + -0.007840803569756971, + 0.9998395212901936 + ], + "corners_m": [ + [ + 0.09358351802170933, + -0.2031364500652563, + -0.026990381412521934 + ], + [ + 0.09271130107846745, + -0.18012957315251352, + -0.02688968084514238 + ], + [ + 0.11629061464448541, + -0.1788745763142948, + -0.02716473798730698 + ], + [ + 0.11718939584229464, + -0.20135207696441293, + -0.02745144835085464 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.203229088209525 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.3110875892418231, + -0.15466644573869356, + 0.15644297279899091 + ], + "position_mm": [ + 311.08758924182314, + -154.66644573869357, + 156.44297279899092 + ], + "normal": [ + -0.34952325184370264, + -0.7236036927608384, + 0.5951732455709698 + ], + "corners_m": [ + [ + 0.29951535505618604, + -0.1436661602331165, + 0.1628710562852795 + ], + [ + 0.32201821551085197, + -0.15006125812041246, + 0.16861257304950342 + ], + [ + 0.32279768724039837, + -0.16547837553982336, + 0.1500244028273999 + ], + [ + 0.3000190991598561, + -0.15945998906142186, + 0.14426385903378083 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.229080705232906 + }, + { + "marker_id": 218, + "link": "Arm2", + "position_m": [ + 0.355784648415568, + -0.10283234434645239, + 0.20138237246333923 + ], + "position_mm": [ + 355.78464841556803, + -102.83234434645239, + 201.38237246333924 + ], + "normal": [ + 0.9552063058573401, + -0.2836322625668953, + 0.08446095477531328 + ], + "corners_m": [ + [ + 0.3539548786099915, + -0.10709000360299145, + 0.21959608320130625 + ], + [ + 0.3592744556987462, + -0.0866002229890574, + 0.2042333413730749 + ], + [ + 0.35936228988663493, + -0.09983059602418945, + 0.18427762260002423 + ], + [ + 0.3505469694668995, + -0.11780855476957124, + 0.19742244267895157 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.72864314597877 + }, + { + "marker_id": 219, + "link": "Arm2", + "position_m": [ + 0.35756723914633964, + -0.17072093846621747, + 0.11726172304591834 + ], + "position_mm": [ + 357.56723914633966, + -170.72093846621746, + 117.26172304591833 + ], + "normal": [ + 0.9672539487404768, + -0.24203172494136654, + 0.07642278958440137 + ], + "corners_m": [ + [ + 0.3558891660923866, + -0.17411392410718055, + 0.13706384359437157 + ], + [ + 0.361062548652176, + -0.15366354128617432, + 0.1176991175719209 + ], + [ + 0.36035344289029425, + -0.16877125224580256, + 0.09866366363026231 + ], + [ + 0.3529637989505019, + -0.18633503622571249, + 0.11562026738711859 + ] + ], + "num_cameras": 2, + "edge_length_mm": 25.827315315820275 + }, + { + "marker_id": 242, + "link": "Arm1", + "position_m": [ + 0.23239185290556624, + -0.049012419724834194, + 0.25855071298730925 + ], + "position_mm": [ + 232.39185290556625, + -49.012419724834196, + 258.5507129873092 + ], + "normal": [ + -0.04229778620402568, + -0.8740370204619323, + -0.48401465281979456 + ], + "corners_m": [ + [ + 0.24394033458418934, + -0.05604654150722595, + 0.2695576313811693 + ], + [ + 0.2445171455840555, + -0.04381823738460109, + 0.24883192135240267 + ], + [ + 0.2213437643722699, + -0.042966316292294304, + 0.24783498491914083 + ], + [ + 0.21976616708175023, + -0.05321858371521543, + 0.26797831429652424 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.582261852982302 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.23102152254112143, + -0.036330151773877946, + 0.3059298706337515 + ], + "position_mm": [ + 231.02152254112144, + -36.330151773877944, + 305.9298706337515 + ], + "normal": [ + -0.005780563342545329, + -0.48933042835583074, + 0.8720793065842934 + ], + "corners_m": [ + [ + 0.2195150691348848, + -0.026160396405237284, + 0.3115522921734287 + ], + [ + 0.24276044847430386, + -0.02622139495693677, + 0.311687240399005 + ], + [ + 0.2427179085478721, + -0.04673886315133122, + 0.30015965768780667 + ], + [ + 0.21909266400742497, + -0.04619995258200652, + 0.30032029227476564 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.34709750997863 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.32277087592767684, + -0.049092450894979725, + 0.29821131154176983 + ], + "position_mm": [ + 322.77087592767685, + -49.09245089497973, + 298.2113115417698 + ], + "normal": [ + -0.02258962844169044, + -0.7769217619829001, + 0.6291917708014406 + ], + "corners_m": [ + [ + 0.3106858704477343, + -0.04223256917034858, + 0.30659726902198997 + ], + [ + 0.3344745563119844, + -0.042050826136358126, + 0.30700976469297875 + ], + [ + 0.33516506082720554, + -0.05697442276040612, + 0.2892322000883964 + ], + [ + 0.31075801612378295, + -0.05511198551280608, + 0.29000601236371426 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.127059078024054 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.28285026729793017, + -0.04087840429945782, + 0.30193210645736923 + ], + "position_mm": [ + 282.85026729793015, + -40.87840429945782, + 301.93210645736923 + ], + "normal": [ + -0.001656883272962818, + -0.7695029269287815, + 0.6386411356825195 + ], + "corners_m": [ + [ + 0.2704603991364614, + -0.03343096098563578, + 0.31083516283030516 + ], + [ + 0.294301903759382, + -0.032990810717661724, + 0.31150397762527254 + ], + [ + 0.29546013713311947, + -0.048268957426244846, + 0.29302224435714913 + ], + [ + 0.27117862916275776, + -0.04882288806828893, + 0.29236704101675004 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.052660824440014 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/aruco_positions_initial.json b/data/camera_study/Scene10/k4_cdeg/aruco_positions_initial.json new file mode 100644 index 0000000..2f993e5 --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/aruco_positions_initial.json @@ -0,0 +1,447 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:19:57Z", + "summary": { + "num_cameras": 4, + "num_markers": 19, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3062805662542438, + -0.2023726992378452, + 0.024887344814375448 + ], + "position_mm": [ + 306.2805662542438, + -202.3726992378452, + 24.88734481437545 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.3544632515108612, + -0.1998865406173633, + 0.019945246703772904 + ], + "position_mm": [ + 354.4632515108612, + -199.8865406173633, + 19.945246703772906 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6876697828806948, + -0.3186006114330489, + -0.02736316925778259 + ], + "position_mm": [ + 687.6697828806948, + -318.6006114330489, + -27.36316925778259 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16824901411627752, + -0.17347680900523466, + -0.027614320474761228 + ], + "position_mm": [ + 168.24901411627752, + -173.47680900523466, + -27.61432047476123 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.34022600137938147, + -0.3287144924988329, + -0.027671883787346047 + ], + "position_mm": [ + 340.22600137938144, + -328.7144924988329, + -27.671883787346047 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 57, + "position_m": [ + 0.6043205419720532, + -0.3652268610664635, + -0.02758261014495349 + ], + "position_mm": [ + 604.3205419720532, + -365.2268610664635, + -27.58261014495349 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.04739477875816871, + -0.21672336152066732, + -0.02704938378449252 + ], + "position_mm": [ + 47.394778758168705, + -216.7233615206673, + -27.04938378449252 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7759056113265437, + -0.23645070279275476, + -0.027438199281543736 + ], + "position_mm": [ + 775.9056113265436, + -236.45070279275475, + -27.438199281543735 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01884321403035284, + -0.1897498250154755, + -0.027136995944053673 + ], + "position_mm": [ + -18.84321403035284, + -189.7498250154755, + -27.136995944053673 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.006150609479969763, + -0.2777950294615375, + -0.027010644320756547 + ], + "position_mm": [ + 6.150609479969763, + -277.7950294615375, + -27.010644320756548 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6517521811062535, + -0.22377333946988334, + -0.027512336599126174 + ], + "position_mm": [ + 651.7521811062536, + -223.77333946988335, + -27.512336599126176 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10497805201041903, + -0.19080856212389075, + -0.027006345982441688 + ], + "position_mm": [ + 104.97805201041903, + -190.80856212389074, + -27.006345982441687 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3103743137123175, + -0.15428307632816093, + 0.15665617276472968 + ], + "position_mm": [ + 310.3743137123175, + -154.28307632816094, + 156.6561727647297 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3556736217655971, + -0.10278014969865255, + 0.2013893867072845 + ], + "position_mm": [ + 355.6736217655971, + -102.78014969865255, + 201.3893867072845 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3574633079520426, + -0.17070629965796863, + 0.11727243188180331 + ], + "position_mm": [ + 357.4633079520426, + -170.70629965796863, + 117.27243188180331 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 242, + "position_m": [ + 0.23240905503122794, + -0.04893755321345677, + 0.2586224195999469 + ], + "position_mm": [ + 232.40905503122795, + -48.937553213456766, + 258.6224195999469 + ], + "link": "Arm1", + "normal": [ + 0.0, + 0.0, + -1.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23001007116575176, + -0.036080233689634644, + 0.30535428122393937 + ], + "position_mm": [ + 230.01007116575175, + -36.080233689634646, + 305.3542812239394 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3228008755344674, + -0.04897546851053025, + 0.2981550613216686 + ], + "position_mm": [ + 322.8008755344674, + -48.97546851053025, + 298.1550613216686 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2818068163969561, + -0.04051140855357585, + 0.3014757489894613 + ], + "position_mm": [ + 281.8068163969561, + -40.51140855357585, + 301.4757489894613 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/aruco_positions_optimized.json b/data/camera_study/Scene10/k4_cdeg/aruco_positions_optimized.json new file mode 100644 index 0000000..8e47ba3 --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/aruco_positions_optimized.json @@ -0,0 +1,446 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:19:58Z", + "summary": { + "num_cameras": 4, + "num_markers": 19, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "c", + "position_m": [ + 0.30460041510025276, + -0.9022090407414753, + 0.3986456232339163 + ], + "position_mm": [ + 304.60041510025275, + -902.2090407414753, + 398.6456232339163 + ], + "direction": [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + }, + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3062519808733044, + -0.20139030762758367, + 0.024968853629842105 + ], + "position_mm": [ + 306.25198087330443, + -201.39030762758367, + 24.968853629842105 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.3544432154835737, + -0.19945342636531752, + 0.02018631883674401 + ], + "position_mm": [ + 354.44321548357374, + -199.4534263653175, + 20.186318836744007 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.687561797140422, + -0.3187236239470722, + -0.027392390362895643 + ], + "position_mm": [ + 687.561797140422, + -318.7236239470722, + -27.392390362895643 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.16797074191473835, + -0.17366737269653132, + -0.02753130712486975 + ], + "position_mm": [ + 167.97074191473834, + -173.66737269653132, + -27.531307124869752 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.3400615102829146, + -0.3289385799554646, + -0.027647280836645086 + ], + "position_mm": [ + 340.0615102829146, + -328.9385799554646, + -27.647280836645088 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 57, + "position_m": [ + 0.6040255225632356, + -0.3655867425235883, + -0.027611459209035617 + ], + "position_mm": [ + 604.0255225632357, + -365.5867425235883, + -27.611459209035615 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.04850532151786272, + -0.21690498598555136, + -0.02676756713003072 + ], + "position_mm": [ + 48.505321517862725, + -216.90498598555135, + -26.76756713003072 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7761506146492574, + -0.23619672231954084, + -0.027315011405073385 + ], + "position_mm": [ + 776.1506146492574, + -236.19672231954084, + -27.315011405073385 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.022338994042742352, + -0.18590004625926063, + -0.028963244612991303 + ], + "position_mm": [ + -22.338994042742353, + -185.90004625926062, + -28.963244612991303 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005259489899044315, + -0.27948226965668244, + -0.02690067515813781 + ], + "position_mm": [ + 5.259489899044315, + -279.48226965668243, + -26.900675158137812 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.65189174683635, + -0.22362319522393367, + -0.02746416428709143 + ], + "position_mm": [ + 651.89174683635, + -223.62319522393366, + -27.464164287091428 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10630663047689051, + -0.19089155664686813, + -0.026954488617569626 + ], + "position_mm": [ + 106.30663047689052, + -190.89155664686814, + -26.954488617569627 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3118346678961297, + -0.15533161610239024, + 0.15671011758752576 + ], + "position_mm": [ + 311.8346678961297, + -155.33161610239023, + 156.71011758752576 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.35565366706514406, + -0.1028266549785945, + 0.20119963250051082 + ], + "position_mm": [ + 355.6536670651441, + -102.8266549785945, + 201.19963250051083 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3574426443065444, + -0.1707593110973847, + 0.11714958243378071 + ], + "position_mm": [ + 357.44264430654437, + -170.7593110973847, + 117.14958243378071 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 242, + "position_m": [ + 0.232523554460541, + -0.04930800818468624, + 0.25844054543214956 + ], + "position_mm": [ + 232.523554460541, + -49.30800818468624, + 258.4405454321496 + ], + "link": "Arm1", + "normal": [ + 0.0, + 0.0, + -1.0 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.2314519774950161, + -0.03658625880194928, + 0.3062631811385885 + ], + "position_mm": [ + 231.45197749501608, + -36.586258801949285, + 306.26318113858855 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3215791762423929, + -0.04633477217933364, + 0.29783360865285885 + ], + "position_mm": [ + 321.5791762423929, + -46.33477217933364, + 297.83360865285886 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2844810522514509, + -0.04303850443544456, + 0.30220648843975473 + ], + "position_mm": [ + 284.48105225145093, + -43.03850443544456, + 302.2064884397547 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/render_c_aruco_detection.json b/data/camera_study/Scene10/k4_cdeg/render_c_aruco_detection.json new file mode 100644 index 0000000..d49da59 --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/render_c_aruco_detection.json @@ -0,0 +1,1590 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:54Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "c", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.npz", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_c.png", + "image_sha256": "ef5a04a35de56c777fd09b581d604f04ac76571a3cacba21fe8388dea1f4b077", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 16, + "num_rejected_candidates": 27 + }, + "detections": [ + { + "observation_id": "7a9bb902-77fa-4ec6-a3b6-190a65981284", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 900.0, + 906.0 + ], + [ + 962.0, + 900.0 + ], + [ + 968.0, + 961.0 + ], + [ + 906.0, + 967.0 + ] + ], + "center_px": [ + 934.0, + 933.5 + ], + "quality": { + "area_px": 3818.0, + "perimeter_px": 247.16803741455078, + "sharpness": { + "laplacian_var": 454.5613926289 + }, + "contrast": { + "p05": 15.0, + "p95": 169.0, + "dynamic_range": 154.0, + "mean_gray": 63.889708737864076, + "std_gray": 64.10002098444608 + }, + "geometry": { + "distance_to_center_norm": 0.4976962208747864, + "distance_to_border_px": 113.0 + }, + "edge_ratio": 1.0162376014068253, + "edge_lengths_px": [ + 62.28964614868164, + 61.29437255859375, + 62.28964614868164, + 61.29437255859375 + ] + }, + "confidence": 0.9840218454972077 + }, + { + "observation_id": "e759ecba-9acb-4558-950a-0c72a4e90ea5", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 930.0, + 548.0 + ], + [ + 989.0, + 541.0 + ], + [ + 989.0, + 599.0 + ], + [ + 930.0, + 606.0 + ] + ], + "center_px": [ + 959.5, + 573.5 + ], + "quality": { + "area_px": 3422.0, + "perimeter_px": 234.82760620117188, + "sharpness": { + "laplacian_var": 615.7225970995563 + }, + "contrast": { + "p05": 62.0, + "p95": 187.0, + "dynamic_range": 125.0, + "mean_gray": 96.38732088580113, + "std_gray": 49.78957244242085 + }, + "geometry": { + "distance_to_center_norm": 0.2687017321586609, + "distance_to_border_px": 451.0 + }, + "edge_ratio": 1.0243759155273438, + "edge_lengths_px": [ + 59.41380310058594, + 58.0, + 59.41380310058594, + 58.0 + ] + }, + "confidence": 0.976204130575644 + }, + { + "observation_id": "8298c9fd-2e57-4561-8006-3bf35a960710", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 876.0, + 137.0 + ], + [ + 933.0, + 136.0 + ], + [ + 934.0, + 184.0 + ], + [ + 876.0, + 186.0 + ] + ], + "center_px": [ + 904.75, + 160.75 + ], + "quality": { + "area_px": 2789.5, + "perimeter_px": 212.05365753173828, + "sharpness": { + "laplacian_var": 1207.1695390581717 + }, + "contrast": { + "p05": 35.0, + "p95": 183.0, + "dynamic_range": 148.0, + "mean_gray": 111.8242105263158, + "std_gray": 63.973025920534376 + }, + "geometry": { + "distance_to_center_norm": 0.46872973442077637, + "distance_to_border_px": 136.0 + }, + "edge_ratio": 1.2087892695501747, + "edge_lengths_px": [ + 57.00876998901367, + 48.010414123535156, + 58.03447341918945, + 49.0 + ] + }, + "confidence": 0.8272740544529559 + }, + { + "observation_id": "55fc263f-2fb4-4f70-a4bf-f380567da8cb", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 967.0, + 151.0 + ], + [ + 1024.0, + 150.0 + ], + [ + 1025.0, + 197.0 + ], + [ + 966.0, + 195.0 + ] + ], + "center_px": [ + 995.5, + 173.25 + ], + "quality": { + "area_px": 2639.0, + "perimeter_px": 207.06465911865234, + "sharpness": { + "laplacian_var": 866.93707361974 + }, + "contrast": { + "p05": 32.0, + "p95": 181.0, + "dynamic_range": 149.0, + "mean_gray": 84.58143413007227, + "std_gray": 62.405948444667175 + }, + "geometry": { + "distance_to_center_norm": 0.5096668004989624, + "distance_to_border_px": 150.0 + }, + "edge_ratio": 1.3413328837775513, + "edge_lengths_px": [ + 57.00876998901367, + 47.01063537597656, + 59.03388977050781, + 44.0113639831543 + ] + }, + "confidence": 0.745527088834006 + }, + { + "observation_id": "ef490aea-2530-4355-b36f-50f82841a9f4", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 806.0, + 242.0 + ], + [ + 809.0, + 286.0 + ], + [ + 756.0, + 287.0 + ], + [ + 750.0, + 243.0 + ] + ], + "center_px": [ + 780.25, + 264.5 + ], + "quality": { + "area_px": 2402.5, + "perimeter_px": 197.5277214050293, + "sharpness": { + "laplacian_var": 621.9365906774973 + }, + "contrast": { + "p05": 17.0, + "p95": 154.0, + "dynamic_range": 137.0, + "mean_gray": 67.55327102803739, + "std_gray": 57.80557538313361 + }, + "geometry": { + "distance_to_center_norm": 0.3133457899093628, + "distance_to_border_px": 242.0 + }, + "edge_ratio": 1.2699816583435075, + "edge_lengths_px": [ + 44.10215377807617, + 53.00943374633789, + 44.40720748901367, + 56.00892639160156 + ] + }, + "confidence": 0.7874129468171561 + }, + { + "observation_id": "840b75ab-d15e-4b03-b321-25454845f3ba", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 907.0 + ], + [ + 1083.0, + 943.0 + ], + [ + 1048.0, + 989.0 + ], + [ + 1034.0, + 955.0 + ] + ], + "center_px": [ + 1059.0, + 948.5 + ], + "quality": { + "area_px": 1871.0, + "perimeter_px": 193.12355041503906, + "sharpness": { + "laplacian_var": 160.55753056192668 + }, + "contrast": { + "p05": 14.0, + "p95": 100.0, + "dynamic_range": 86.0, + "mean_gray": 57.872306464485234, + "std_gray": 34.11093550486432 + }, + "geometry": { + "distance_to_center_norm": 0.5898244976997375, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.648246307313746, + "edge_lengths_px": [ + 37.947330474853516, + 57.80138397216797, + 36.769554138183594, + 60.605281829833984 + ] + }, + "confidence": 0.606705439328279 + }, + { + "observation_id": "9d34e449-70a7-4940-a4f9-c23ffa4a7af4", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 244.0, + 1048.0 + ], + [ + 264.0, + 1017.0 + ], + [ + 321.0, + 1020.0 + ], + [ + 304.0, + 1051.0 + ] + ], + "center_px": [ + 283.25, + 1034.0 + ], + "quality": { + "area_px": 1869.0, + "perimeter_px": 189.40092086791992, + "sharpness": { + "laplacian_var": 1265.0345875985527 + }, + "contrast": { + "p05": 15.0, + "p95": 172.0, + "dynamic_range": 157.0, + "mean_gray": 76.71025841816758, + "std_gray": 66.37082174674407 + }, + "geometry": { + "distance_to_center_norm": 0.7326483130455017, + "distance_to_border_px": 29.0 + }, + "edge_ratio": 1.6991763224534673, + "edge_lengths_px": [ + 36.8917350769043, + 57.07889175415039, + 35.35533905029297, + 60.074954986572266 + ] + }, + "confidence": 0.34134185624863755 + }, + { + "observation_id": "1e502398-21d3-4ddf-90ca-525bdd3eb2a3", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1145.0, + 1043.0 + ], + [ + 1138.0, + 1012.0 + ], + [ + 1196.0, + 1014.0 + ], + [ + 1207.0, + 1045.0 + ] + ], + "center_px": [ + 1171.5, + 1028.5 + ], + "quality": { + "area_px": 1842.0, + "perimeter_px": 184.74098777770996, + "sharpness": { + "laplacian_var": 687.4367780505567 + }, + "contrast": { + "p05": 12.0, + "p95": 150.0, + "dynamic_range": 138.0, + "mean_gray": 38.430939226519335, + "std_gray": 45.8298447545998 + }, + "geometry": { + "distance_to_center_norm": 0.7391056418418884, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.9518967949661667, + "edge_lengths_px": [ + 31.78049659729004, + 58.03447341918945, + 32.893768310546875, + 62.032249450683594 + ] + }, + "confidence": 0.3586255184214969 + }, + { + "observation_id": "6b657892-a795-4aa1-9413-edbab1c41455", + "type": "aruco", + "marker_id": 96, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1069.0, + 1053.0 + ], + [ + 1066.0, + 1021.0 + ], + [ + 1125.0, + 1025.0 + ], + [ + 1130.0, + 1056.0 + ] + ], + "center_px": [ + 1097.5, + 1038.75 + ], + "quality": { + "area_px": 1876.0, + "perimeter_px": 183.7501163482666, + "sharpness": { + "laplacian_var": 663.3293461676229 + }, + "contrast": { + "p05": 10.0, + "p95": 150.0, + "dynamic_range": 140.0, + "mean_gray": 73.64136328427576, + "std_gray": 59.64429126415427 + }, + "geometry": { + "distance_to_center_norm": 0.6950067281723022, + "distance_to_border_px": 24.0 + }, + "edge_ratio": 1.9449837049520267, + "edge_lengths_px": [ + 32.140316009521484, + 59.13543701171875, + 31.400636672973633, + 61.073726654052734 + ] + }, + "confidence": 0.24678869996591526 + }, + { + "observation_id": "641c0afe-d38c-46f7-9908-209f60856db0", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 110.0, + 1003.0 + ], + [ + 134.0, + 974.0 + ], + [ + 187.0, + 977.0 + ], + [ + 166.0, + 1006.0 + ] + ], + "center_px": [ + 149.25, + 990.0 + ], + "quality": { + "area_px": 1648.0, + "perimeter_px": 182.61322402954102, + "sharpness": { + "laplacian_var": 1879.918969718065 + }, + "contrast": { + "p05": 12.0, + "p95": 173.0, + "dynamic_range": 161.0, + "mean_gray": 75.38733031674208, + "std_gray": 68.98136821451206 + }, + "geometry": { + "distance_to_center_norm": 0.8075687885284424, + "distance_to_border_px": 74.0 + }, + "edge_ratio": 1.5662688751728226, + "edge_lengths_px": [ + 37.64305877685547, + 53.0848388671875, + 35.80502700805664, + 56.080299377441406 + ] + }, + "confidence": 0.6384599833726886 + }, + { + "observation_id": "06277fab-3588-4750-89c6-20b6bab3d90c", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 403.0, + 1023.0 + ], + [ + 418.0, + 993.0 + ], + [ + 474.0, + 996.0 + ], + [ + 462.0, + 1025.0 + ] + ], + "center_px": [ + 439.25, + 1009.25 + ], + "quality": { + "area_px": 1730.0, + "perimeter_px": 180.03991889953613, + "sharpness": { + "laplacian_var": 950.8899639839916 + }, + "contrast": { + "p05": 20.0, + "p95": 172.0, + "dynamic_range": 152.0, + "mean_gray": 116.20102214650767, + "std_gray": 61.636543611115094 + }, + "geometry": { + "distance_to_center_norm": 0.6075818538665771, + "distance_to_border_px": 55.0 + }, + "edge_ratio": 1.8809760926212427, + "edge_lengths_px": [ + 33.541019439697266, + 56.080299377441406, + 31.38471031188965, + 59.03388977050781 + ] + }, + "confidence": 0.5316388676723932 + }, + { + "observation_id": "6e98f367-7578-48c1-9c36-7b00ced4c76b", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 564.0, + 1008.0 + ], + [ + 576.0, + 980.0 + ], + [ + 632.0, + 984.0 + ], + [ + 622.0, + 1013.0 + ] + ], + "center_px": [ + 598.5, + 996.25 + ], + "quality": { + "area_px": 1674.0, + "perimeter_px": 175.49660873413086, + "sharpness": { + "laplacian_var": 1393.7942302804506 + }, + "contrast": { + "p05": 28.0, + "p95": 171.0, + "dynamic_range": 143.0, + "mean_gray": 84.15052816901408, + "std_gray": 59.917896140385736 + }, + "geometry": { + "distance_to_center_norm": 0.5246118903160095, + "distance_to_border_px": 67.0 + }, + "edge_ratio": 1.9110048603024625, + "edge_lengths_px": [ + 30.463092803955078, + 56.14267349243164, + 30.675724029541016, + 58.215118408203125 + ] + }, + "confidence": 0.5232849066860699 + }, + { + "observation_id": "957997cb-c14d-434e-bb1b-df71441744e6", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 760.0, + 132.0 + ], + [ + 813.0, + 133.0 + ], + [ + 809.0, + 166.0 + ], + [ + 754.0, + 165.0 + ] + ], + "center_px": [ + 784.0, + 149.0 + ], + "quality": { + "area_px": 1787.0, + "perimeter_px": 174.80108261108398, + "sharpness": { + "laplacian_var": 1005.8917346464419 + }, + "contrast": { + "p05": 15.0, + "p95": 180.0, + "dynamic_range": 165.0, + "mean_gray": 83.3435684647303, + "std_gray": 70.8540535076814 + }, + "geometry": { + "distance_to_center_norm": 0.4402258098125458, + "distance_to_border_px": 132.0 + }, + "edge_ratio": 1.6548298326729072, + "edge_lengths_px": [ + 53.00943374633789, + 33.241539001464844, + 55.009090423583984, + 33.541019439697266 + ] + }, + "confidence": 0.6042917406104434 + }, + { + "observation_id": "fdc0b8c6-391e-4563-aae7-d945b84456d3", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 340.0, + 760.0 + ], + [ + 387.0, + 761.0 + ], + [ + 376.0, + 780.0 + ], + [ + 327.0, + 778.0 + ] + ], + "center_px": [ + 357.5, + 769.75 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 140.20953559875488, + "sharpness": { + "laplacian_var": 1714.673355751594 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 84.31152647975078, + "std_gray": 58.656873492799065 + }, + "geometry": { + "distance_to_center_norm": 0.47686126828193665, + "distance_to_border_px": 300.0 + }, + "edge_ratio": 2.233747159110654, + "edge_lengths_px": [ + 47.01063537597656, + 21.954498291015625, + 49.04079818725586, + 22.203603744506836 + ] + }, + "confidence": 0.27039765782644665 + }, + { + "observation_id": "fbd4c67a-c943-48c9-b31a-60207820ce44", + "type": "aruco", + "marker_id": 211, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 808.0, + 771.0 + ], + [ + 855.0, + 774.0 + ], + [ + 851.0, + 794.0 + ], + [ + 801.0, + 790.0 + ] + ], + "center_px": [ + 828.75, + 782.25 + ], + "quality": { + "area_px": 965.0, + "perimeter_px": 137.8999252319336, + "sharpness": { + "laplacian_var": 980.8435808712625 + }, + "contrast": { + "p05": 19.0, + "p95": 166.0, + "dynamic_range": 147.0, + "mean_gray": 88.28657616892912, + "std_gray": 59.05852033640571 + }, + "geometry": { + "distance_to_center_norm": 0.2950447201728821, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 2.4772131710716905, + "edge_lengths_px": [ + 47.095645904541016, + 20.39607810974121, + 50.15974426269531, + 20.248456954956055 + ] + }, + "confidence": 0.25970043306972035 + }, + { + "observation_id": "a9c21b40-caa9-463c-aca1-09f66cb1c644", + "type": "aruco", + "marker_id": 50, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1385.0, + 700.0 + ], + [ + 1377.0, + 686.0 + ], + [ + 1418.0, + 688.0 + ], + [ + 1428.0, + 701.0 + ] + ], + "center_px": [ + 1402.0, + 693.75 + ], + "quality": { + "area_px": 553.5, + "perimeter_px": 116.58611488342285, + "sharpness": { + "laplacian_var": 1051.381376540531 + }, + "contrast": { + "p05": 12.0, + "p95": 126.0, + "dynamic_range": 114.0, + "mean_gray": 64.25196850393701, + "std_gray": 39.063170154625084 + }, + "geometry": { + "distance_to_center_norm": 0.7767954468727112, + "distance_to_border_px": 12.0 + }, + "edge_ratio": 2.6674678757353125, + "edge_lengths_px": [ + 16.124515533447266, + 41.04875183105469, + 16.401220321655273, + 43.011627197265625 + ] + }, + "confidence": 0.03320002493960217 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 975.0, + 684.0 + ], + [ + 987.0, + 688.0 + ], + [ + 989.0, + 763.0 + ], + [ + 968.0, + 765.0 + ] + ], + "center_px": [ + 979.75, + 725.0 + ], + "area_px": 1289.5 + }, + { + "image_points_px": [ + [ + 790.0, + 489.0 + ], + [ + 804.0, + 493.0 + ], + [ + 807.0, + 565.0 + ], + [ + 793.0, + 568.0 + ] + ], + "center_px": [ + 798.5, + 528.75 + ], + "area_px": 1055.5 + }, + { + "image_points_px": [ + [ + 536.0, + 599.0 + ], + [ + 540.0, + 677.0 + ], + [ + 531.0, + 664.0 + ], + [ + 529.0, + 604.0 + ] + ], + "center_px": [ + 534.0, + 636.0 + ], + "area_px": 540.0 + }, + { + "image_points_px": [ + [ + 782.0, + 864.0 + ], + [ + 789.0, + 841.0 + ], + [ + 842.0, + 845.0 + ], + [ + 837.0, + 868.0 + ] + ], + "center_px": [ + 812.5, + 854.5 + ], + "area_px": 1266.0 + }, + { + "image_points_px": [ + [ + 1232.0, + 678.0 + ], + [ + 1273.0, + 679.0 + ], + [ + 1279.0, + 694.0 + ], + [ + 1237.0, + 692.0 + ] + ], + "center_px": [ + 1255.25, + 685.75 + ], + "area_px": 593.5 + }, + { + "image_points_px": [ + [ + 1154.0, + 689.0 + ], + [ + 1194.0, + 690.0 + ], + [ + 1201.0, + 704.0 + ], + [ + 1160.0, + 703.0 + ] + ], + "center_px": [ + 1177.25, + 696.5 + ], + "area_px": 560.5 + }, + { + "image_points_px": [ + [ + 425.0, + 674.0 + ], + [ + 435.0, + 661.0 + ], + [ + 473.0, + 663.0 + ], + [ + 462.0, + 676.0 + ] + ], + "center_px": [ + 448.75, + 668.5 + ], + "area_px": 508.5 + }, + { + "image_points_px": [ + [ + 1281.0, + 650.0 + ], + [ + 1319.0, + 651.0 + ], + [ + 1327.0, + 663.0 + ], + [ + 1288.0, + 663.0 + ] + ], + "center_px": [ + 1303.75, + 656.75 + ], + "area_px": 477.5 + }, + { + "image_points_px": [ + [ + 1068.0, + 669.0 + ], + [ + 1077.0, + 679.0 + ], + [ + 1075.0, + 717.0 + ], + [ + 1068.0, + 710.0 + ] + ], + "center_px": [ + 1072.0, + 693.75 + ], + "area_px": 324.5 + }, + { + "image_points_px": [ + [ + 784.0, + 627.0 + ], + [ + 788.0, + 615.0 + ], + [ + 824.0, + 619.0 + ], + [ + 820.0, + 629.0 + ] + ], + "center_px": [ + 804.0, + 622.5 + ], + "area_px": 408.0 + }, + { + "image_points_px": [ + [ + 426.0, + 594.0 + ], + [ + 434.0, + 583.0 + ], + [ + 467.0, + 585.0 + ], + [ + 462.0, + 595.0 + ] + ], + "center_px": [ + 447.25, + 589.25 + ], + "area_px": 372.0 + }, + { + "image_points_px": [ + [ + 978.0, + 308.0 + ], + [ + 1021.0, + 310.0 + ], + [ + 1019.0, + 316.0 + ], + [ + 991.0, + 314.0 + ] + ], + "center_px": [ + 1002.25, + 312.0 + ], + "area_px": 202.0 + }, + { + "image_points_px": [ + [ + 936.0, + 582.0 + ], + [ + 951.0, + 580.0 + ], + [ + 965.0, + 595.0 + ], + [ + 937.0, + 600.0 + ] + ], + "center_px": [ + 947.25, + 589.25 + ], + "area_px": 381.0 + }, + { + "image_points_px": [ + [ + 120.0, + 998.0 + ], + [ + 124.0, + 993.0 + ], + [ + 158.0, + 996.0 + ], + [ + 153.0, + 1001.0 + ] + ], + "center_px": [ + 138.75, + 997.0 + ], + "area_px": 181.0 + }, + { + "image_points_px": [ + [ + 734.0, + 639.0 + ], + [ + 730.0, + 666.0 + ], + [ + 725.0, + 676.0 + ], + [ + 729.0, + 642.0 + ] + ], + "center_px": [ + 729.5, + 655.75 + ], + "area_px": 126.5 + }, + { + "image_points_px": [ + [ + 1360.0, + 644.0 + ], + [ + 1390.0, + 645.0 + ], + [ + 1394.0, + 648.0 + ], + [ + 1366.0, + 647.0 + ] + ], + "center_px": [ + 1377.5, + 646.0 + ], + "area_px": 82.0 + }, + { + "image_points_px": [ + [ + 339.0, + 768.0 + ], + [ + 354.0, + 762.0 + ], + [ + 372.0, + 767.0 + ], + [ + 366.0, + 771.0 + ] + ], + "center_px": [ + 357.75, + 767.0 + ], + "area_px": 154.5 + }, + { + "image_points_px": [ + [ + 732.0, + 273.0 + ], + [ + 735.0, + 284.0 + ], + [ + 735.0, + 305.0 + ], + [ + 732.0, + 301.0 + ] + ], + "center_px": [ + 733.5, + 290.75 + ], + "area_px": 73.5 + }, + { + "image_points_px": [ + [ + 990.0, + 337.0 + ], + [ + 996.0, + 351.0 + ], + [ + 997.0, + 366.0 + ], + [ + 991.0, + 364.0 + ] + ], + "center_px": [ + 993.5, + 354.5 + ], + "area_px": 118.0 + }, + { + "image_points_px": [ + [ + 774.0, + 249.0 + ], + [ + 799.0, + 247.0 + ], + [ + 800.0, + 251.0 + ], + [ + 776.0, + 252.0 + ] + ], + "center_px": [ + 787.25, + 249.75 + ], + "area_px": 88.0 + }, + { + "image_points_px": [ + [ + 900.0, + 973.0 + ], + [ + 923.0, + 973.0 + ], + [ + 926.0, + 975.0 + ], + [ + 903.0, + 975.0 + ] + ], + "center_px": [ + 913.0, + 974.0 + ], + "area_px": 46.0 + }, + { + "image_points_px": [ + [ + 957.0, + 967.0 + ], + [ + 968.0, + 965.0 + ], + [ + 970.0, + 984.0 + ], + [ + 957.0, + 971.0 + ] + ], + "center_px": [ + 963.0, + 971.75 + ], + "area_px": 132.5 + }, + { + "image_points_px": [ + [ + 1374.0, + 718.0 + ], + [ + 1394.0, + 718.0 + ], + [ + 1398.0, + 721.0 + ], + [ + 1378.0, + 721.0 + ] + ], + "center_px": [ + 1386.0, + 719.5 + ], + "area_px": 60.0 + }, + { + "image_points_px": [ + [ + 999.0, + 762.0 + ], + [ + 1017.0, + 761.0 + ], + [ + 1023.0, + 763.0 + ], + [ + 1001.0, + 764.0 + ] + ], + "center_px": [ + 1010.0, + 762.5 + ], + "area_px": 44.0 + }, + { + "image_points_px": [ + [ + 565.0, + 1022.0 + ], + [ + 584.0, + 1021.0 + ], + [ + 588.0, + 1023.0 + ], + [ + 573.0, + 1024.0 + ] + ], + "center_px": [ + 577.5, + 1022.5 + ], + "area_px": 40.0 + }, + { + "image_points_px": [ + [ + 1166.0, + 1023.0 + ], + [ + 1182.0, + 1022.0 + ], + [ + 1185.0, + 1028.0 + ], + [ + 1169.0, + 1029.0 + ] + ], + "center_px": [ + 1175.5, + 1025.5 + ], + "area_px": 99.0 + }, + { + "image_points_px": [ + [ + 222.0, + 1034.0 + ], + [ + 241.0, + 1035.0 + ], + [ + 244.0, + 1037.0 + ], + [ + 231.0, + 1037.0 + ] + ], + "center_px": [ + 234.5, + 1035.75 + ], + "area_px": 37.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/render_c_camera_pose.json b/data/camera_study/Scene10/k4_cdeg/render_c_camera_pose.json new file mode 100644 index 0000000..88f49d5 --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/render_c_camera_pose.json @@ -0,0 +1,327 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:56Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_cdeg\\render_c_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "c", + "camera_matrix": [ + [ + 1994.701171875, + 0.0, + 720.15869140625 + ], + [ + 0.0, + 1995.5245361328125, + 541.232177734375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 9, + "used_marker_ids": [ + 58, + 62, + 96, + 64, + 103, + 51, + 210, + 211, + 50 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.00850343514866048, + 0.001919637477748798, + 0.0018871327733089188, + 0.0018871325208839012 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.3388483305404, + "residual_median_px": 5.837108638574855, + "residual_max_px": 7.851369272055891, + "sigma2_normalized": 5.341903727059073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.9935113787651062, + 0.11363770067691803, + -0.004644200671464205 + ], + [ + 0.029086070135235786, + -0.2933460772037506, + -0.9555637240409851 + ], + [ + -0.10995042324066162, + 0.9492284059524536, + -0.2947479486465454 + ] + ], + "translation_m": [ + -0.19824764132499695, + 0.1074121966958046, + 1.0073933601379395 + ], + "rvec_rad": [ + 1.86796171410195, + 0.10327005514572164, + -0.08291676493169096 + ] + }, + "camera_in_world": { + "position_m": [ + 0.30460041761398315, + -0.9022090435028076, + 0.3986456096172333 + ], + "position_mm": [ + 304.60040283203125, + -902.2090454101562, + 398.6455993652344 + ], + "orientation_deg": { + "roll": 107.25025177001953, + "pitch": 6.31245756149292, + "yaw": 1.676913857460022 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 6.283611814350516e-05, + 9.967111903139419e-06, + 1.624804290129494e-05, + -1.577288611905233e-07, + -9.565179969225538e-06, + 1.214388304696983e-06 + ], + [ + 9.967111903139312e-06, + 2.0431750224389534e-05, + -7.770857724352742e-06, + 2.1849187906882535e-06, + -2.4827730156902525e-06, + 5.834590888095247e-06 + ], + [ + 1.6248042901295073e-05, + -7.770857724352725e-06, + 6.21251942958819e-05, + -3.1440970658187606e-06, + -8.329233497858997e-06, + -1.5661804579884994e-05 + ], + [ + -1.5772886119053934e-07, + 2.184918790688258e-06, + -3.14409706581878e-06, + 7.844339725202242e-07, + 9.395641917069299e-08, + 8.922273151494254e-07 + ], + [ + -9.56517996922555e-06, + -2.482773015690273e-06, + -8.329233497858978e-06, + 9.395641917068812e-08, + 3.1785216658280216e-06, + 3.2374032099410526e-06 + ], + [ + 1.2143883046968984e-06, + 5.834590888095236e-06, + -1.566180457988501e-05, + 8.922273151494167e-07, + 3.237403209941067e-06, + 1.5241091941001921e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.45417926818777943, + 0.2589854810186854, + 0.45160268193428 + ], + "tvec_std_m": [ + 0.0008856827719450255, + 0.0017828408975082497, + 0.0039039841112640202 + ] + }, + "camera_center_std_m": [ + 0.006432764403295309, + 0.003956846704431741, + 0.006949550969225763 + ], + "camera_center_std_mm": [ + 6.432764403295309, + 3.956846704431741, + 6.949550969225763 + ], + "orientation_std_deg": { + "roll": 0.42334339423542505, + "pitch": 0.36500393244331925, + "yaw": 0.2715300326454473 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 58, + "observed_center_px": [ + 283.25, + 1034.0 + ], + "projected_center_px": [ + 289.1312255859375, + 1036.682861328125 + ], + "reprojection_error_px": 6.4642524160675014, + "confidence": 0.34134185624863755 + }, + { + "marker_id": 62, + "observed_center_px": [ + 1171.5, + 1028.5 + ], + "projected_center_px": [ + 1177.343505859375, + 1029.8663330078125 + ], + "reprojection_error_px": 6.0011187804265225, + "confidence": 0.3586255184214969 + }, + { + "marker_id": 96, + "observed_center_px": [ + 1097.5, + 1038.75 + ], + "projected_center_px": [ + 1091.03857421875, + 1039.8277587890625 + ], + "reprojection_error_px": 6.550693637623701, + "confidence": 0.24678869996591526 + }, + { + "marker_id": 64, + "observed_center_px": [ + 149.25, + 990.0 + ], + "projected_center_px": [ + 146.69277954101562, + 989.6632080078125 + ], + "reprojection_error_px": 2.579303262869623, + "confidence": 0.6384599833726886 + }, + { + "marker_id": 103, + "observed_center_px": [ + 439.25, + 1009.25 + ], + "projected_center_px": [ + 443.3174743652344, + 1005.0634155273438 + ], + "reprojection_error_px": 5.837108638574855, + "confidence": 0.5316388676723932 + }, + { + "marker_id": 51, + "observed_center_px": [ + 598.5, + 996.25 + ], + "projected_center_px": [ + 598.08349609375, + 993.7927856445312 + ], + "reprojection_error_px": 2.492263608176955, + "confidence": 0.5232849066860699 + }, + { + "marker_id": 210, + "observed_center_px": [ + 357.5, + 769.75 + ], + "projected_center_px": [ + 354.4071044921875, + 771.2721557617188 + ], + "reprojection_error_px": 3.4471670666186647, + "confidence": 0.27039765782644665 + }, + { + "marker_id": 211, + "observed_center_px": [ + 828.75, + 782.25 + ], + "projected_center_px": [ + 820.9069213867188, + 782.6107177734375 + ], + "reprojection_error_px": 7.851369272055891, + "confidence": 0.25970043306972035 + }, + { + "marker_id": 50, + "observed_center_px": [ + 1402.0, + 693.75 + ], + "projected_center_px": [ + 1405.9166259765625, + 693.873291015625 + ], + "reprojection_error_px": 3.918566027875248, + "confidence": 0.03320002493960217 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/render_d_aruco_detection.json b/data/camera_study/Scene10/k4_cdeg/render_d_aruco_detection.json new file mode 100644 index 0000000..750630f --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/render_d_aruco_detection.json @@ -0,0 +1,1311 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:54Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "d", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.npz", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.png", + "image_sha256": "62e03d1a72df6ace64f3edf39f814b0e48c63c4b06cd21705bd69cd08afa442a", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 15, + "num_rejected_candidates": 18 + }, + "detections": [ + { + "observation_id": "d7f4d6f7-f981-4e1c-a860-d0cb636a1d68", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 742.0, + 906.0 + ], + [ + 797.0, + 913.0 + ], + [ + 796.0, + 973.0 + ], + [ + 741.0, + 965.0 + ] + ], + "center_px": [ + 769.0, + 939.25 + ], + "quality": { + "area_px": 3280.0, + "perimeter_px": 230.03924179077148, + "sharpness": { + "laplacian_var": 235.03135651883824 + }, + "contrast": { + "p05": 24.0, + "p95": 170.0, + "dynamic_range": 146.0, + "mean_gray": 71.34429223744293, + "std_gray": 60.34595999329839 + }, + "geometry": { + "distance_to_center_norm": 0.4469395875930786, + "distance_to_border_px": 107.0 + }, + "edge_ratio": 1.0823298168515911, + "edge_lengths_px": [ + 55.44366455078125, + 60.008331298828125, + 55.578773498535156, + 59.00847244262695 + ] + }, + "confidence": 0.9239327831777916 + }, + { + "observation_id": "7201a71e-b624-4811-a41f-560ff40bb580", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 889.0, + 943.0 + ], + [ + 916.0, + 987.0 + ], + [ + 864.0, + 1021.0 + ], + [ + 835.0, + 979.0 + ] + ], + "center_px": [ + 876.0, + 982.5 + ], + "quality": { + "area_px": 3259.0, + "perimeter_px": 229.6916618347168, + "sharpness": { + "laplacian_var": 61.572482510446996 + }, + "contrast": { + "p05": 8.0, + "p95": 102.0, + "dynamic_range": 94.0, + "mean_gray": 52.3137789904502, + "std_gray": 40.795642464164395 + }, + "geometry": { + "distance_to_center_norm": 0.5213257670402527, + "distance_to_border_px": 59.0 + }, + "edge_ratio": 1.2715701940712816, + "edge_lengths_px": [ + 51.62363815307617, + 62.12889862060547, + 51.03919982910156, + 64.8999252319336 + ] + }, + "confidence": 0.4035200127470337 + }, + { + "observation_id": "1acd0c61-b895-4f7a-bc40-b76875196bf1", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 685.0 + ], + [ + 956.0, + 716.0 + ], + [ + 934.0, + 773.0 + ], + [ + 895.0, + 742.0 + ] + ], + "center_px": [ + 925.75, + 729.0 + ], + "quality": { + "area_px": 2892.0, + "perimeter_px": 221.4241943359375, + "sharpness": { + "laplacian_var": 65.75925962559084 + }, + "contrast": { + "p05": 5.0, + "p95": 83.0, + "dynamic_range": 78.0, + "mean_gray": 36.39875065070276, + "std_gray": 31.82755916882834 + }, + "geometry": { + "distance_to_center_norm": 0.31042397022247314, + "distance_to_border_px": 307.0 + }, + "edge_ratio": 1.2533531491081307, + "edge_lengths_px": [ + 49.04079818725586, + 61.09828186035156, + 49.81967544555664, + 61.46543884277344 + ] + }, + "confidence": 0.4262916519882062 + }, + { + "observation_id": "815528d1-f43f-43c4-a32d-4f2656de9654", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1006.0, + 434.0 + ], + [ + 1040.0, + 464.0 + ], + [ + 1023.0, + 519.0 + ], + [ + 983.0, + 494.0 + ] + ], + "center_px": [ + 1013.0, + 477.75 + ], + "quality": { + "area_px": 2677.5, + "perimeter_px": 214.33768844604492, + "sharpness": { + "laplacian_var": 63.84585482864622 + }, + "contrast": { + "p05": 4.0, + "p95": 81.0, + "dynamic_range": 77.0, + "mean_gray": 29.46114864864865, + "std_gray": 31.00050238673812 + }, + "geometry": { + "distance_to_center_norm": 0.33282196521759033, + "distance_to_border_px": 400.0 + }, + "edge_ratio": 1.4171338730692165, + "edge_lengths_px": [ + 45.343135833740234, + 57.567352294921875, + 47.16990661621094, + 64.25729370117188 + ] + }, + "confidence": 0.3613610332351109 + }, + { + "observation_id": "30b50567-b3df-480f-b8ed-17b965237ee6", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 994.0, + 187.0 + ], + [ + 1046.0, + 190.0 + ], + [ + 1029.0, + 238.0 + ], + [ + 978.0, + 230.0 + ] + ], + "center_px": [ + 1011.75, + 211.25 + ], + "quality": { + "area_px": 2434.0, + "perimeter_px": 200.51189422607422, + "sharpness": { + "laplacian_var": 737.7557921421737 + }, + "contrast": { + "p05": 56.0, + "p95": 183.0, + "dynamic_range": 127.0, + "mean_gray": 101.10567632850241, + "std_gray": 52.34786160983359 + }, + "geometry": { + "distance_to_center_norm": 0.48837676644325256, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.1352691889411037, + "edge_lengths_px": [ + 52.08646774291992, + 50.9215087890625, + 51.62363815307617, + 45.880279541015625 + ] + }, + "confidence": 0.8808483571484285 + }, + { + "observation_id": "58128d1b-251a-48e0-a7fa-a58058e2a8b7", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 920.0, + 169.0 + ], + [ + 969.0, + 170.0 + ], + [ + 953.0, + 218.0 + ], + [ + 902.0, + 215.0 + ] + ], + "center_px": [ + 936.0, + 193.0 + ], + "quality": { + "area_px": 2384.0, + "perimeter_px": 200.09115982055664, + "sharpness": { + "laplacian_var": 675.8367068624159 + }, + "contrast": { + "p05": 58.0, + "p95": 184.0, + "dynamic_range": 126.0, + "mean_gray": 125.61893054701905, + "std_gray": 52.20639937589474 + }, + "geometry": { + "distance_to_center_norm": 0.4541509747505188, + "distance_to_border_px": 169.0 + }, + "edge_ratio": 1.042398381472962, + "edge_lengths_px": [ + 49.01020431518555, + 50.59644317626953, + 51.088157653808594, + 49.39635467529297 + ] + }, + "confidence": 0.9593261249954639 + }, + { + "observation_id": "6e679f99-21ab-41e7-946a-e1f1be63484b", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 837.0, + 569.0 + ], + [ + 877.0, + 568.0 + ], + [ + 857.0, + 624.0 + ], + [ + 816.0, + 623.0 + ] + ], + "center_px": [ + 846.75, + 596.0 + ], + "quality": { + "area_px": 2227.5, + "perimeter_px": 198.4285888671875, + "sharpness": { + "laplacian_var": 456.8683277511788 + }, + "contrast": { + "p05": 43.0, + "p95": 185.0, + "dynamic_range": 142.0, + "mean_gray": 85.2088948787062, + "std_gray": 56.487417453665174 + }, + "geometry": { + "distance_to_center_norm": 0.15396633744239807, + "distance_to_border_px": 456.0 + }, + "edge_ratio": 1.486142577830794, + "edge_lengths_px": [ + 40.01249694824219, + 59.46427536010742, + 41.01219177246094, + 57.93962478637695 + ] + }, + "confidence": 0.6728829487273165 + }, + { + "observation_id": "3f05452e-480c-4f96-8408-bd75bc06204c", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 380.0, + 1053.0 + ], + [ + 418.0, + 1028.0 + ], + [ + 462.0, + 1043.0 + ], + [ + 426.0, + 1069.0 + ] + ], + "center_px": [ + 421.5, + 1048.25 + ], + "quality": { + "area_px": 1721.0, + "perimeter_px": 185.08320999145508, + "sharpness": { + "laplacian_var": 401.0408793146889 + }, + "contrast": { + "p05": 16.0, + "p95": 171.0, + "dynamic_range": 155.0, + "mean_gray": 91.72839506172839, + "std_gray": 64.0365880429505 + }, + "geometry": { + "distance_to_center_norm": 0.6549152135848999, + "distance_to_border_px": 11.0 + }, + "edge_ratio": 1.0967404836818018, + "edge_lengths_px": [ + 45.486263275146484, + 46.48655700683594, + 44.40720748901367, + 48.703182220458984 + ] + }, + "confidence": 0.20059440065661768 + }, + { + "observation_id": "d2f761fa-2eaa-4544-8cc7-e206a0d08446", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 839.0, + 266.0 + ], + [ + 854.0, + 309.0 + ], + [ + 811.0, + 306.0 + ], + [ + 796.0, + 265.0 + ] + ], + "center_px": [ + 825.0, + 286.5 + ], + "quality": { + "area_px": 1776.0, + "perimeter_px": 175.31510162353516, + "sharpness": { + "laplacian_var": 240.92017426523984 + }, + "contrast": { + "p05": 22.0, + "p95": 153.0, + "dynamic_range": 131.0, + "mean_gray": 74.06045751633987, + "std_gray": 53.6075481691311 + }, + "geometry": { + "distance_to_center_norm": 0.3048724830150604, + "distance_to_border_px": 265.0 + }, + "edge_ratio": 1.0588111649951575, + "edge_lengths_px": [ + 45.54119110107422, + 43.104522705078125, + 43.65776062011719, + 43.011627197265625 + ] + }, + "confidence": 0.9444554733275536 + }, + { + "observation_id": "0d901f74-5db2-4236-a8cc-26398ef622ca", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 992.0, + 902.0 + ], + [ + 1041.0, + 917.0 + ], + [ + 1015.0, + 938.0 + ], + [ + 966.0, + 922.0 + ] + ], + "center_px": [ + 1003.5, + 919.75 + ], + "quality": { + "area_px": 1407.5, + "perimeter_px": 169.01459884643555, + "sharpness": { + "laplacian_var": 202.21712799530312 + }, + "contrast": { + "p05": 11.0, + "p95": 135.0, + "dynamic_range": 124.0, + "mean_gray": 60.230610134436404, + "std_gray": 46.98590047860021 + }, + "geometry": { + "distance_to_center_norm": 0.5265568494796753, + "distance_to_border_px": 142.0 + }, + "edge_ratio": 1.5714104130928346, + "edge_lengths_px": [ + 51.244510650634766, + 33.42155075073242, + 51.54609680175781, + 32.80244064331055 + ] + }, + "confidence": 0.5971281121184089 + }, + { + "observation_id": "4fb254b2-8850-4178-9ee7-4f16d51cf115", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 828.0, + 160.0 + ], + [ + 872.0, + 162.0 + ], + [ + 849.0, + 192.0 + ], + [ + 804.0, + 188.0 + ] + ], + "center_px": [ + 838.25, + 175.5 + ], + "quality": { + "area_px": 1361.0, + "perimeter_px": 163.9031524658203, + "sharpness": { + "laplacian_var": 634.8821505010796 + }, + "contrast": { + "p05": 22.0, + "p95": 179.0, + "dynamic_range": 157.0, + "mean_gray": 93.81072210065645, + "std_gray": 65.74062367039625 + }, + "geometry": { + "distance_to_center_norm": 0.4257793128490448, + "distance_to_border_px": 160.0 + }, + "edge_ratio": 1.2250450560973367, + "edge_lengths_px": [ + 44.04542922973633, + 37.80211639404297, + 45.17742919921875, + 36.878177642822266 + ] + }, + "confidence": 0.740653030529222 + }, + { + "observation_id": "1dd7bac2-f6ff-4da2-854f-387d1d0b1cc4", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 91.0, + 932.0 + ], + [ + 132.0, + 913.0 + ], + [ + 165.0, + 927.0 + ], + [ + 125.0, + 947.0 + ] + ], + "center_px": [ + 128.25, + 929.75 + ], + "quality": { + "area_px": 1240.5, + "perimeter_px": 162.91856002807617, + "sharpness": { + "laplacian_var": 640.6271417753217 + }, + "contrast": { + "p05": 17.0, + "p95": 172.0, + "dynamic_range": 155.0, + "mean_gray": 88.50410316529894, + "std_gray": 59.8365616473406 + }, + "geometry": { + "distance_to_center_norm": 0.7873013019561768, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.2605971300139012, + "edge_lengths_px": [ + 45.18849563598633, + 35.84689712524414, + 44.72135925292969, + 37.161808013916016 + ] + }, + "confidence": 0.6560383014602613 + }, + { + "observation_id": "8a24d58c-61c6-4e43-8081-29b22247df65", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 384.0, + 918.0 + ], + [ + 416.0, + 899.0 + ], + [ + 455.0, + 911.0 + ], + [ + 424.0, + 931.0 + ] + ], + "center_px": [ + 419.75, + 914.75 + ], + "quality": { + "area_px": 1164.0, + "perimeter_px": 156.97121810913086, + "sharpness": { + "laplacian_var": 1305.0180528018368 + }, + "contrast": { + "p05": 23.0, + "p95": 171.0, + "dynamic_range": 148.0, + "mean_gray": 125.7001287001287, + "std_gray": 50.591649190438574 + }, + "geometry": { + "distance_to_center_norm": 0.5335504412651062, + "distance_to_border_px": 149.0 + }, + "edge_ratio": 1.1400787327238997, + "edge_lengths_px": [ + 37.2155876159668, + 40.804412841796875, + 36.8917350769043, + 42.05948257446289 + ] + }, + "confidence": 0.6806547457875692 + }, + { + "observation_id": "f51fabf8-817e-4071-9ffa-9304c4737ac4", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1061.0, + 838.0 + ], + [ + 1107.0, + 851.0 + ], + [ + 1086.0, + 869.0 + ], + [ + 1038.0, + 855.0 + ] + ], + "center_px": [ + 1073.0, + 853.25 + ], + "quality": { + "area_px": 1119.5, + "perimeter_px": 154.0610065460205, + "sharpness": { + "laplacian_var": 699.1501103553894 + }, + "contrast": { + "p05": 27.0, + "p95": 147.0, + "dynamic_range": 120.0, + "mean_gray": 93.41610738255034, + "std_gray": 44.372659317587036 + }, + "geometry": { + "distance_to_center_norm": 0.5243862867355347, + "distance_to_border_px": 211.0 + }, + "edge_ratio": 1.8077537619585837, + "edge_lengths_px": [ + 47.801673889160156, + 27.658634185791016, + 50.0, + 28.600698471069336 + ] + }, + "confidence": 0.41285121294657384 + }, + { + "observation_id": "43051b7d-5e4d-445a-ae7e-a83559d8563d", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 205.0, + 850.0 + ], + [ + 240.0, + 834.0 + ], + [ + 272.0, + 846.0 + ], + [ + 238.0, + 862.0 + ] + ], + "center_px": [ + 238.75, + 848.0 + ], + "quality": { + "area_px": 934.0, + "perimeter_px": 145.35046768188477, + "sharpness": { + "laplacian_var": 1079.742643238912 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 86.53560830860535, + "std_gray": 57.948273841825284 + }, + "geometry": { + "distance_to_center_norm": 0.6348573565483093, + "distance_to_border_px": 205.0 + }, + "edge_ratio": 1.1260460248127115, + "edge_lengths_px": [ + 38.4837646484375, + 34.1760139465332, + 37.57658767700195, + 35.11410140991211 + ] + }, + "confidence": 0.5529673325477359 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 539.0, + 665.0 + ], + [ + 601.0, + 657.0 + ], + [ + 722.0, + 692.0 + ], + [ + 705.0, + 711.0 + ] + ], + "center_px": [ + 641.75, + 681.25 + ], + "area_px": 3537.0 + }, + { + "image_points_px": [ + [ + 513.0, + 939.0 + ], + [ + 547.0, + 920.0 + ], + [ + 585.0, + 935.0 + ], + [ + 554.0, + 954.0 + ] + ], + "center_px": [ + 549.75, + 937.0 + ], + "area_px": 1238.0 + }, + { + "image_points_px": [ + [ + 256.0, + 906.0 + ], + [ + 289.0, + 888.0 + ], + [ + 327.0, + 900.0 + ], + [ + 291.0, + 919.0 + ] + ], + "center_px": [ + 290.75, + 903.25 + ], + "area_px": 1106.5 + }, + { + "image_points_px": [ + [ + 1378.0, + 809.0 + ], + [ + 1388.0, + 794.0 + ], + [ + 1434.0, + 804.0 + ], + [ + 1425.0, + 819.0 + ] + ], + "center_px": [ + 1406.25, + 806.5 + ], + "area_px": 792.5 + }, + { + "image_points_px": [ + [ + 492.0, + 714.0 + ], + [ + 517.0, + 702.0 + ], + [ + 551.0, + 710.0 + ], + [ + 527.0, + 723.0 + ] + ], + "center_px": [ + 521.75, + 712.25 + ], + "area_px": 639.5 + }, + { + "image_points_px": [ + [ + 1357.0, + 753.0 + ], + [ + 1371.0, + 740.0 + ], + [ + 1413.0, + 751.0 + ], + [ + 1400.0, + 763.0 + ] + ], + "center_px": [ + 1385.25, + 751.75 + ], + "area_px": 673.0 + }, + { + "image_points_px": [ + [ + 861.0, + 864.0 + ], + [ + 906.0, + 866.0 + ], + [ + 914.0, + 872.0 + ], + [ + 888.0, + 873.0 + ] + ], + "center_px": [ + 892.25, + 868.75 + ], + "area_px": 257.5 + }, + { + "image_points_px": [ + [ + 910.0, + 411.0 + ], + [ + 902.0, + 436.0 + ], + [ + 884.0, + 439.0 + ], + [ + 897.0, + 405.0 + ] + ], + "center_px": [ + 898.25, + 422.75 + ], + "area_px": 473.0 + }, + { + "image_points_px": [ + [ + 926.0, + 925.0 + ], + [ + 927.0, + 944.0 + ], + [ + 919.0, + 968.0 + ], + [ + 918.0, + 955.0 + ] + ], + "center_px": [ + 922.5, + 948.0 + ], + "area_px": 155.0 + }, + { + "image_points_px": [ + [ + 848.0, + 907.0 + ], + [ + 854.0, + 911.0 + ], + [ + 859.0, + 937.0 + ], + [ + 857.0, + 945.0 + ] + ], + "center_px": [ + 854.5, + 925.0 + ], + "area_px": 142.0 + }, + { + "image_points_px": [ + [ + 973.0, + 589.0 + ], + [ + 977.0, + 595.0 + ], + [ + 965.0, + 626.0 + ], + [ + 962.0, + 618.0 + ] + ], + "center_px": [ + 969.25, + 607.0 + ], + "area_px": 185.5 + }, + { + "image_points_px": [ + [ + 946.0, + 260.0 + ], + [ + 928.0, + 294.0 + ], + [ + 936.0, + 270.0 + ], + [ + 942.0, + 260.0 + ] + ], + "center_px": [ + 938.0, + 271.0 + ], + "area_px": 100.0 + }, + { + "image_points_px": [ + [ + 831.0, + 639.0 + ], + [ + 795.0, + 649.0 + ], + [ + 796.0, + 645.0 + ], + [ + 812.0, + 640.0 + ] + ], + "center_px": [ + 808.5, + 643.25 + ], + "area_px": 106.5 + }, + { + "image_points_px": [ + [ + 957.0, + 355.0 + ], + [ + 971.0, + 365.0 + ], + [ + 967.0, + 381.0 + ], + [ + 961.0, + 372.0 + ] + ], + "center_px": [ + 964.0, + 368.25 + ], + "area_px": 165.0 + }, + { + "image_points_px": [ + [ + 1107.0, + 214.0 + ], + [ + 1106.0, + 229.0 + ], + [ + 1099.0, + 243.0 + ], + [ + 1103.0, + 219.0 + ] + ], + "center_px": [ + 1103.75, + 226.25 + ], + "area_px": 83.5 + }, + { + "image_points_px": [ + [ + 275.0, + 926.0 + ], + [ + 284.0, + 927.0 + ], + [ + 303.0, + 935.0 + ], + [ + 277.0, + 929.0 + ] + ], + "center_px": [ + 284.75, + 929.25 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 927.0, + 944.0 + ], + [ + 921.0, + 969.0 + ], + [ + 918.0, + 971.0 + ], + [ + 922.0, + 951.0 + ] + ], + "center_px": [ + 922.0, + 958.75 + ], + "area_px": 67.5 + }, + { + "image_points_px": [ + [ + 507.0, + 975.0 + ], + [ + 526.0, + 982.0 + ], + [ + 529.0, + 986.0 + ], + [ + 509.0, + 979.0 + ] + ], + "center_px": [ + 517.75, + 980.5 + ], + "area_px": 60.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/render_d_camera_pose.json b/data/camera_study/Scene10/k4_cdeg/render_d_camera_pose.json new file mode 100644 index 0000000..77c0e8d --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/render_d_camera_pose.json @@ -0,0 +1,285 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:56Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_cdeg\\render_d_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "d", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 6, + "used_marker_ids": [ + 95, + 208, + 69, + 103, + 214, + 64 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.010671415477997622, + 0.0018696542807179611, + 0.001824150025738836, + 0.0018241474426834877 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.164164330259058, + "residual_median_px": 5.398072385043921, + "residual_max_px": 7.027422341283123, + "sigma2_normalized": 6.6550277836154934e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8166700601577759, + 0.5771039724349976, + -0.0010227123275399208 + ], + [ + 0.16298067569732666, + -0.2323361337184906, + -0.9588833451271057 + ], + [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + ], + "translation_m": [ + -0.11485252529382706, + 0.08547275513410568, + 1.1249300241470337 + ], + "rvec_rad": [ + 1.7923624327425687, + 0.5686287097896567, + -0.4261428430202902 + ] + }, + "camera_in_world": { + "position_m": [ + 0.7026420831680298, + -0.7945951223373413, + 0.4010946750640869 + ], + "position_mm": [ + 702.64208984375, + -794.5950927734375, + 401.09466552734375 + ], + "orientation_deg": { + "roll": 109.92484283447266, + "pitch": 33.615230560302734, + "yaw": 11.286093711853027 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.0003498424001015397, + 6.823486661029942e-05, + 4.142063730678703e-05, + -5.345001723379169e-06, + -7.396858110018478e-05, + -1.2641475041979003e-05 + ], + [ + 6.823486661029988e-05, + 0.00010295516106391171, + -9.137229494897015e-05, + 2.281178954254835e-05, + -1.979611332364414e-05, + -7.605354993482835e-06 + ], + [ + 4.142063730678625e-05, + -9.137229494897096e-05, + 0.0002702927022549336, + -4.213130837183371e-05, + -7.56149612726986e-06, + 9.26150663825411e-06 + ], + [ + -5.345001723379082e-06, + 2.281178954254845e-05, + -4.2131308371833616e-05, + 8.962887675732753e-06, + -2.575675434153523e-07, + -3.848871385514968e-06 + ], + [ + -7.396858110018466e-05, + -1.9796113323644056e-05, + -7.561496127270001e-06, + -2.575675434153093e-07, + 1.8000566759428326e-05, + 7.99389653027148e-06 + ], + [ + -1.2641475041978559e-05, + -7.605354993482897e-06, + 9.261506638254348e-06, + -3.848871385514858e-06, + 7.993896530271401e-06, + 2.7756310749504287e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 1.07166452425966, + 0.581362070062273, + 0.9419759016685776 + ], + "tvec_std_m": [ + 0.0029938082229382617, + 0.004242707479832698, + 0.005268425832210631 + ] + }, + "camera_center_std_m": [ + 0.01190826606439346, + 0.013088153786860686, + 0.01603645350806163 + ], + "camera_center_std_mm": [ + 11.90826606439346, + 13.088153786860685, + 16.03645350806163 + ], + "orientation_std_deg": { + "roll": 1.2477636245413861, + "pitch": 0.8325671808473429, + "yaw": 0.699613718760565 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 421.5, + 1048.25 + ], + "projected_center_px": [ + 423.55438232421875, + 1045.9644775390625 + ], + "reprojection_error_px": 3.0731253885112206, + "confidence": 0.20059440065661768 + }, + { + "marker_id": 208, + "observed_center_px": [ + 1003.5, + 919.75 + ], + "projected_center_px": [ + 996.4899291992188, + 920.2435302734375 + ], + "reprojection_error_px": 7.027422341283123, + "confidence": 0.5971281121184089 + }, + { + "marker_id": 69, + "observed_center_px": [ + 128.25, + 929.75 + ], + "projected_center_px": [ + 123.95993041992188, + 934.0740966796875 + ], + "reprojection_error_px": 6.091182898025322, + "confidence": 0.6560383014602613 + }, + { + "marker_id": 103, + "observed_center_px": [ + 419.75, + 914.75 + ], + "projected_center_px": [ + 425.61590576171875, + 913.2058715820312 + ], + "reprojection_error_px": 6.065738452698394, + "confidence": 0.6806547457875692 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1073.0, + 853.25 + ], + "projected_center_px": [ + 1077.615234375, + 854.2874755859375 + ], + "reprojection_error_px": 4.730406317389448, + "confidence": 0.41285121294657384 + }, + { + "marker_id": 64, + "observed_center_px": [ + 238.75, + 848.0 + ], + "projected_center_px": [ + 237.76194763183594, + 846.0165405273438 + ], + "reprojection_error_px": 2.2159329777555143, + "confidence": 0.5529673325477359 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/render_e_aruco_detection.json b/data/camera_study/Scene10/k4_cdeg/render_e_aruco_detection.json new file mode 100644 index 0000000..0fedc0b --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/render_e_aruco_detection.json @@ -0,0 +1,1199 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:55Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "e", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.npz", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.png", + "image_sha256": "d9465055b192acfccc2cb79885882693d4f0d01141ecc06177116dded5d564cb", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 12, + "num_rejected_candidates": 20 + }, + "detections": [ + { + "observation_id": "4a655031-b469-4978-a12e-d76e05aa61af", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 986.0, + 1027.0 + ], + [ + 1024.0, + 1012.0 + ], + [ + 1062.0, + 1033.0 + ], + [ + 1026.0, + 1050.0 + ] + ], + "center_px": [ + 1024.5, + 1030.5 + ], + "quality": { + "area_px": 1438.0, + "perimeter_px": 170.22312927246094, + "sharpness": { + "laplacian_var": 453.1861132150195 + }, + "contrast": { + "p05": 14.0, + "p95": 153.0, + "dynamic_range": 139.0, + "mean_gray": 72.75522388059701, + "std_gray": 50.64349874612125 + }, + "geometry": { + "distance_to_center_norm": 0.6414783596992493, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1589726701270886, + "edge_lengths_px": [ + 40.853397369384766, + 43.416587829589844, + 39.81205749511719, + 46.14108657836914 + ] + }, + "confidence": 0.4963016081621025 + }, + { + "observation_id": "aa707ec0-0d0b-4af4-9017-0ff61d46d00e", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1277.0, + 1049.0 + ], + [ + 1308.0, + 1032.0 + ], + [ + 1355.0, + 1053.0 + ], + [ + 1324.0, + 1071.0 + ] + ], + "center_px": [ + 1316.0, + 1051.25 + ], + "quality": { + "area_px": 1489.0, + "perimeter_px": 174.5745086669922, + "sharpness": { + "laplacian_var": 412.816421944627 + }, + "contrast": { + "p05": 13.0, + "p95": 145.0, + "dynamic_range": 132.0, + "mean_gray": 61.47008547008547, + "std_gray": 49.57416295951042 + }, + "geometry": { + "distance_to_center_norm": 0.8724822998046875, + "distance_to_border_px": 9.0 + }, + "edge_ratio": 1.46778745364521, + "edge_lengths_px": [ + 35.35533905029297, + 51.4781494140625, + 35.84689712524414, + 51.89412307739258 + ] + }, + "confidence": 0.12173424671007582 + }, + { + "observation_id": "9fb7e017-24d3-460d-9bfc-0e7c0e981598", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 780.0, + 466.0 + ], + [ + 811.0, + 497.0 + ], + [ + 790.0, + 533.0 + ], + [ + 759.0, + 507.0 + ] + ], + "center_px": [ + 785.0, + 500.75 + ], + "quality": { + "area_px": 1792.0, + "perimeter_px": 172.04298400878906, + "sharpness": { + "laplacian_var": 431.52108687263 + }, + "contrast": { + "p05": 4.0, + "p95": 86.0, + "dynamic_range": 82.0, + "mean_gray": 35.97742474916388, + "std_gray": 31.48995686460428 + }, + "geometry": { + "distance_to_center_norm": 0.08436811715364456, + "distance_to_border_px": 466.0 + }, + "edge_ratio": 1.138540089676814, + "edge_lengths_px": [ + 43.84062194824219, + 41.67733383178711, + 40.45985794067383, + 46.06517028808594 + ] + }, + "confidence": 0.8783177764815114 + }, + { + "observation_id": "0c3eba8b-3467-4f1a-8a4f-836712d67541", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 777.0, + 986.0 + ], + [ + 818.0, + 973.0 + ], + [ + 849.0, + 994.0 + ], + [ + 809.0, + 1009.0 + ] + ], + "center_px": [ + 813.25, + 990.5 + ], + "quality": { + "area_px": 1332.0, + "perimeter_px": 162.58305740356445, + "sharpness": { + "laplacian_var": 675.3602149959689 + }, + "contrast": { + "p05": 19.700000000000003, + "p95": 154.0, + "dynamic_range": 134.3, + "mean_gray": 93.49617486338798, + "std_gray": 46.101180438545676 + }, + "geometry": { + "distance_to_center_norm": 0.5111664533615112, + "distance_to_border_px": 71.0 + }, + "edge_ratio": 1.1487138651855313, + "edge_lengths_px": [ + 43.011627197265625, + 37.44329071044922, + 42.72002029418945, + 39.408119201660156 + ] + }, + "confidence": 0.7730384623298485 + }, + { + "observation_id": "6e07a6c8-faea-45be-a595-364fd7ebca3a", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 749.0, + 642.0 + ], + [ + 771.0, + 676.0 + ], + [ + 734.0, + 695.0 + ], + [ + 713.0, + 662.0 + ] + ], + "center_px": [ + 741.75, + 668.75 + ], + "quality": { + "area_px": 1642.0, + "perimeter_px": 162.38792037963867, + "sharpness": { + "laplacian_var": 92.67615631030367 + }, + "contrast": { + "p05": 7.0, + "p95": 101.0, + "dynamic_range": 94.0, + "mean_gray": 53.06440071556351, + "std_gray": 38.78329965301281 + }, + "geometry": { + "distance_to_center_norm": 0.14508245885372162, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0633526883983422, + "edge_lengths_px": [ + 40.49691390991211, + 41.59326934814453, + 39.11521530151367, + 41.18252182006836 + ] + }, + "confidence": 0.7262889453443055 + }, + { + "observation_id": "14722ea9-a1a7-4c94-a902-e6201ad103e3", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 865.0, + 314.0 + ], + [ + 896.0, + 337.0 + ], + [ + 879.0, + 373.0 + ], + [ + 847.0, + 352.0 + ] + ], + "center_px": [ + 871.75, + 344.0 + ], + "quality": { + "area_px": 1550.5, + "perimeter_px": 158.7354850769043, + "sharpness": { + "laplacian_var": 91.32963410546913 + }, + "contrast": { + "p05": 3.0, + "p95": 80.0, + "dynamic_range": 77.0, + "mean_gray": 29.31711880261927, + "std_gray": 30.16374856556423 + }, + "geometry": { + "distance_to_center_norm": 0.27542126178741455, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0985563073040754, + "edge_lengths_px": [ + 38.60051727294922, + 39.81205749511719, + 38.27531814575195, + 42.04759216308594 + ] + }, + "confidence": 0.6668204157436237 + }, + { + "observation_id": "a455b9b7-c577-43ea-b848-a5dbda184164", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 934.0 + ], + [ + 1105.0, + 922.0 + ], + [ + 1141.0, + 939.0 + ], + [ + 1107.0, + 953.0 + ] + ], + "center_px": [ + 1106.0, + 937.0 + ], + "quality": { + "area_px": 1080.0, + "perimeter_px": 153.34338760375977, + "sharpness": { + "laplacian_var": 1315.6913698207666 + }, + "contrast": { + "p05": 34.0, + "p95": 156.0, + "dynamic_range": 122.0, + "mean_gray": 112.49931224209078, + "std_gray": 38.505501664035826 + }, + "geometry": { + "distance_to_center_norm": 0.6152436137199402, + "distance_to_border_px": 127.0 + }, + "edge_ratio": 1.128988685253164, + "edge_lengths_px": [ + 36.055511474609375, + 39.81205749511719, + 36.769554138183594, + 40.70626449584961 + ] + }, + "confidence": 0.6377388980107869 + }, + { + "observation_id": "bec93da3-fed4-4235-bc58-c53cee32628e", + "type": "aruco", + "marker_id": 244, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 981.0, + 163.0 + ], + [ + 1000.0, + 190.0 + ], + [ + 982.0, + 224.0 + ], + [ + 962.0, + 201.0 + ] + ], + "center_px": [ + 981.25, + 194.5 + ], + "quality": { + "area_px": 1164.5, + "perimeter_px": 144.45070838928223, + "sharpness": { + "laplacian_var": 96.06874104557231 + }, + "contrast": { + "p05": 4.0, + "p95": 67.0, + "dynamic_range": 63.0, + "mean_gray": 33.3358024691358, + "std_gray": 25.95401112529325 + }, + "geometry": { + "distance_to_center_norm": 0.48128148913383484, + "distance_to_border_px": 163.0 + }, + "edge_ratio": 1.393897148047905, + "edge_lengths_px": [ + 33.0151481628418, + 38.470767974853516, + 30.479501724243164, + 42.48529052734375 + ] + }, + "confidence": 0.35113079528934743 + }, + { + "observation_id": "bb78444d-cb93-4fc4-ba59-3fe839d31cd1", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 674.0, + 619.0 + ], + [ + 703.0, + 624.0 + ], + [ + 700.0, + 664.0 + ], + [ + 672.0, + 658.0 + ] + ], + "center_px": [ + 687.25, + 641.25 + ], + "quality": { + "area_px": 1139.5, + "perimeter_px": 137.22710990905762, + "sharpness": { + "laplacian_var": 863.1978615203191 + }, + "contrast": { + "p05": 32.0, + "p95": 169.0, + "dynamic_range": 137.0, + "mean_gray": 80.9662775616083, + "std_gray": 55.08560868618617 + }, + "geometry": { + "distance_to_center_norm": 0.11823874711990356, + "distance_to_border_px": 416.0 + }, + "edge_ratio": 1.4007837305049835, + "edge_lengths_px": [ + 29.42787742614746, + 40.112342834472656, + 28.635643005371094, + 39.051246643066406 + ] + }, + "confidence": 0.542315455357842 + }, + { + "observation_id": "d9f03817-5aa6-4946-9972-e955a43d609e", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 517.0, + 788.0 + ], + [ + 550.0, + 780.0 + ], + [ + 575.0, + 794.0 + ], + [ + 540.0, + 802.0 + ] + ], + "center_px": [ + 545.5, + 791.0 + ], + "quality": { + "area_px": 668.0, + "perimeter_px": 125.43741798400879, + "sharpness": { + "laplacian_var": 1607.3082682839233 + }, + "contrast": { + "p05": 19.0, + "p95": 147.0, + "dynamic_range": 128.0, + "mean_gray": 65.39445628997868, + "std_gray": 47.873144952539 + }, + "geometry": { + "distance_to_center_norm": 0.33966439962387085, + "distance_to_border_px": 278.0 + }, + "edge_ratio": 1.3333908058760269, + "edge_lengths_px": [ + 33.95585250854492, + 28.65309715270996, + 35.902645111083984, + 26.925823211669922 + ] + }, + "confidence": 0.33398560374859715 + }, + { + "observation_id": "ab001242-c84a-43bd-b6bd-615beb1b279c", + "type": "aruco", + "marker_id": 114, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 846.0, + 444.0 + ], + [ + 854.0, + 462.0 + ], + [ + 835.0, + 496.0 + ], + [ + 827.0, + 477.0 + ] + ], + "center_px": [ + 840.5, + 469.75 + ], + "quality": { + "area_px": 619.5, + "perimeter_px": 117.34079360961914, + "sharpness": { + "laplacian_var": 515.9082048204126 + }, + "contrast": { + "p05": 13.0, + "p95": 77.0, + "dynamic_range": 64.0, + "mean_gray": 34.12249443207127, + "std_gray": 22.140483977294974 + }, + "geometry": { + "distance_to_center_norm": 0.15498033165931702, + "distance_to_border_px": 444.0 + }, + "edge_ratio": 1.977319866342296, + "edge_lengths_px": [ + 19.697715759277344, + 38.94868469238281, + 20.615528106689453, + 38.07886505126953 + ] + }, + "confidence": 0.16709486695806255 + }, + { + "observation_id": "f7fac6d5-2063-4096-b029-886b678188c3", + "type": "aruco", + "marker_id": 120, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 904.0, + 345.0 + ], + [ + 911.0, + 366.0 + ], + [ + 893.0, + 397.0 + ], + [ + 885.0, + 381.0 + ] + ], + "center_px": [ + 898.25, + 372.25 + ], + "quality": { + "area_px": 593.5, + "perimeter_px": 116.57765007019043, + "sharpness": { + "laplacian_var": 612.2280321521758 + }, + "contrast": { + "p05": 13.75, + "p95": 72.0, + "dynamic_range": 58.25, + "mean_gray": 30.091743119266056, + "std_gray": 19.626461861945877 + }, + "geometry": { + "distance_to_center_norm": 0.27196842432022095, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 2.2755493296600644, + "edge_lengths_px": [ + 22.135944366455078, + 35.84689712524414, + 17.8885440826416, + 40.70626449584961 + ] + }, + "confidence": 0.12660450288269692 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 955.0, + 949.0 + ], + [ + 989.0, + 936.0 + ], + [ + 1024.0, + 953.0 + ], + [ + 991.0, + 967.0 + ] + ], + "center_px": [ + 989.75, + 951.25 + ], + "area_px": 1065.5 + }, + { + "image_points_px": [ + [ + 727.0, + 881.0 + ], + [ + 763.0, + 870.0 + ], + [ + 792.0, + 891.0 + ], + [ + 756.0, + 904.0 + ] + ], + "center_px": [ + 759.5, + 886.5 + ], + "area_px": 1140.0 + }, + { + "image_points_px": [ + [ + 818.0, + 869.0 + ], + [ + 850.0, + 858.0 + ], + [ + 887.0, + 875.0 + ], + [ + 849.0, + 885.0 + ] + ], + "center_px": [ + 851.0, + 871.75 + ], + "area_px": 934.5 + }, + { + "image_points_px": [ + [ + 1115.0, + 909.0 + ], + [ + 1146.0, + 897.0 + ], + [ + 1182.0, + 914.0 + ], + [ + 1154.0, + 927.0 + ] + ], + "center_px": [ + 1149.25, + 911.75 + ], + "area_px": 985.0 + }, + { + "image_points_px": [ + [ + 1244.0, + 805.0 + ], + [ + 1274.0, + 794.0 + ], + [ + 1312.0, + 812.0 + ], + [ + 1282.0, + 821.0 + ] + ], + "center_px": [ + 1278.0, + 808.0 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 891.0, + 399.0 + ], + [ + 918.0, + 457.0 + ], + [ + 898.0, + 447.0 + ], + [ + 884.0, + 415.0 + ] + ], + "center_px": [ + 897.75, + 429.5 + ], + "area_px": 669.0 + }, + { + "image_points_px": [ + [ + 495.0, + 791.0 + ], + [ + 459.0, + 801.0 + ], + [ + 438.0, + 784.0 + ], + [ + 473.0, + 774.0 + ] + ], + "center_px": [ + 466.25, + 787.5 + ], + "area_px": 818.5 + }, + { + "image_points_px": [ + [ + 888.0, + 139.0 + ], + [ + 871.0, + 170.0 + ], + [ + 844.0, + 169.0 + ], + [ + 861.0, + 139.0 + ] + ], + "center_px": [ + 866.0, + 154.25 + ], + "area_px": 832.0 + }, + { + "image_points_px": [ + [ + 635.0, + 778.0 + ], + [ + 606.0, + 791.0 + ], + [ + 580.0, + 773.0 + ], + [ + 612.0, + 764.0 + ] + ], + "center_px": [ + 608.25, + 776.5 + ], + "area_px": 757.5 + }, + { + "image_points_px": [ + [ + 754.0, + 745.0 + ], + [ + 784.0, + 735.0 + ], + [ + 806.0, + 749.0 + ], + [ + 780.0, + 762.0 + ] + ], + "center_px": [ + 781.0, + 747.75 + ], + "area_px": 710.0 + }, + { + "image_points_px": [ + [ + 852.0, + 659.0 + ], + [ + 882.0, + 653.0 + ], + [ + 906.0, + 665.0 + ], + [ + 877.0, + 672.0 + ] + ], + "center_px": [ + 879.25, + 662.25 + ], + "area_px": 528.0 + }, + { + "image_points_px": [ + [ + 613.0, + 739.0 + ], + [ + 581.0, + 746.0 + ], + [ + 560.0, + 733.0 + ], + [ + 592.0, + 726.0 + ] + ], + "center_px": [ + 586.5, + 736.0 + ], + "area_px": 563.0 + }, + { + "image_points_px": [ + [ + 770.0, + 398.0 + ], + [ + 751.0, + 432.0 + ], + [ + 736.0, + 433.0 + ], + [ + 753.0, + 403.0 + ] + ], + "center_px": [ + 752.5, + 416.5 + ], + "area_px": 458.0 + }, + { + "image_points_px": [ + [ + 937.0, + 633.0 + ], + [ + 963.0, + 626.0 + ], + [ + 986.0, + 637.0 + ], + [ + 962.0, + 645.0 + ] + ], + "center_px": [ + 962.0, + 635.25 + ], + "area_px": 467.5 + }, + { + "image_points_px": [ + [ + 496.0, + 636.0 + ], + [ + 518.0, + 630.0 + ], + [ + 542.0, + 641.0 + ], + [ + 514.0, + 648.0 + ] + ], + "center_px": [ + 517.5, + 638.75 + ], + "area_px": 424.0 + }, + { + "image_points_px": [ + [ + 706.0, + 672.0 + ], + [ + 713.0, + 681.0 + ], + [ + 712.0, + 701.0 + ], + [ + 705.0, + 700.0 + ] + ], + "center_px": [ + 709.0, + 688.5 + ], + "area_px": 173.0 + }, + { + "image_points_px": [ + [ + 1270.0, + 652.0 + ], + [ + 1277.0, + 642.0 + ], + [ + 1299.0, + 649.0 + ], + [ + 1283.0, + 656.0 + ] + ], + "center_px": [ + 1282.25, + 649.75 + ], + "area_px": 212.0 + }, + { + "image_points_px": [ + [ + 1324.0, + 677.0 + ], + [ + 1334.0, + 678.0 + ], + [ + 1347.0, + 684.0 + ], + [ + 1327.0, + 680.0 + ] + ], + "center_px": [ + 1333.0, + 679.75 + ], + "area_px": 47.5 + }, + { + "image_points_px": [ + [ + 1335.0, + 615.0 + ], + [ + 1338.0, + 613.0 + ], + [ + 1347.0, + 613.0 + ], + [ + 1358.0, + 618.0 + ] + ], + "center_px": [ + 1344.5, + 614.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 779.0, + 642.0 + ], + [ + 777.0, + 658.0 + ], + [ + 774.0, + 665.0 + ], + [ + 773.0, + 659.0 + ] + ], + "center_px": [ + 775.75, + 656.0 + ], + "area_px": 43.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/render_e_camera_pose.json b/data/camera_study/Scene10/k4_cdeg/render_e_camera_pose.json new file mode 100644 index 0000000..6934645 --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/render_e_camera_pose.json @@ -0,0 +1,271 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:56Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_cdeg\\render_e_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "e", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 5, + "used_marker_ids": [ + 48, + 63, + 57, + 102, + 54 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.007197111808548965, + 0.001098276420089881, + 0.0009620344476883504, + 0.0009620205232011758 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 2.7281525726006493, + "residual_median_px": 2.5183121097354597, + "residual_max_px": 3.7576731420043146, + "sigma2_normalized": 2.3137087159701097e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.6321497559547424, + 0.7748407125473022, + 0.0029369741678237915 + ], + [ + 0.21024876832962036, + -0.16787971556186676, + -0.9631260633468628 + ], + [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + ], + "translation_m": [ + -0.056855153292417526, + -0.012442845851182938, + 1.5609862804412842 + ], + "rvec_rad": [ + 1.7048273936309237, + 0.8116750457158921, + -0.6120703769873145 + ] + }, + "camera_in_world": { + "position_m": [ + 1.2027034759521484, + -0.909389853477478, + 0.40814200043678284 + ], + "position_mm": [ + 1202.7034912109375, + -909.3898315429688, + 408.1419982910156 + ], + "orientation_deg": { + "roll": 113.81822204589844, + "pitch": 48.22581100463867, + "yaw": 18.396778106689453 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.00022441890537757206, + -7.963567536396464e-06, + -2.9398649194599163e-05, + -1.4795386871224034e-05, + -9.369620603686464e-05, + -1.2702492726669124e-05 + ], + [ + -7.963567536395407e-06, + 3.7068884464340944e-05, + -3.338378703660994e-05, + 2.6508530508930155e-05, + -6.804904795036776e-06, + -8.467045467073405e-06 + ], + [ + -2.939864919460005e-05, + -3.338378703660865e-05, + 0.00015704190560829434, + -5.550273740425191e-05, + 8.385195749589376e-06, + 3.13758938875245e-05 + ], + [ + -1.4795386871223326e-05, + 2.6508530508929867e-05, + -5.5502737404252506e-05, + 2.9231680266895845e-05, + 3.3812426915121855e-06, + -8.125563844390692e-06 + ], + [ + -9.369620603686502e-05, + -6.80490479503646e-06, + 8.385195749589481e-06, + 3.3812426915123345e-06, + 4.4878486349463374e-05, + 1.0425895360947247e-05 + ], + [ + -1.2702492726669507e-05, + -8.467045467073171e-06, + 3.137589388752461e-05, + -8.125563844390541e-06, + 1.0425895360947318e-05, + 2.9592030404347494e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.8583261662306342, + 0.3488408939722953, + 0.7180098641027528 + ], + "tvec_std_m": [ + 0.005406632987996859, + 0.006699140717246009, + 0.0054398557337807674 + ] + }, + "camera_center_std_m": [ + 0.006976893112270283, + 0.012106263892740327, + 0.01216157052134005 + ], + "camera_center_std_mm": [ + 6.976893112270283, + 12.106263892740326, + 12.16157052134005 + ], + "orientation_std_deg": { + "roll": 1.0513875130551562, + "pitch": 0.6166264667162378, + "yaw": 0.5162490597129769 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1024.5, + 1030.5 + ], + "projected_center_px": [ + 1023.4668579101562, + 1032.796630859375 + ], + "reprojection_error_px": 2.5183121097354597, + "confidence": 0.4963016081621025 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1316.0, + 1051.25 + ], + "projected_center_px": [ + 1318.0511474609375, + 1052.518798828125 + ], + "reprojection_error_px": 2.4118574528279497, + "confidence": 0.12173424671007582 + }, + { + "marker_id": 57, + "observed_center_px": [ + 813.25, + 990.5 + ], + "projected_center_px": [ + 814.3992309570312, + 987.8240966796875 + ], + "reprojection_error_px": 2.912248336295932, + "confidence": 0.7730384623298485 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1106.0, + 937.0 + ], + "projected_center_px": [ + 1103.0518798828125, + 934.6700439453125 + ], + "reprojection_error_px": 3.7576731420043146, + "confidence": 0.6377388980107869 + }, + { + "marker_id": 54, + "observed_center_px": [ + 545.5, + 791.0 + ], + "projected_center_px": [ + 546.1773071289062, + 792.4124755859375 + ], + "reprojection_error_px": 1.5664712661701496, + "confidence": 0.33398560374859715 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/render_g_aruco_detection.json b/data/camera_study/Scene10/k4_cdeg/render_g_aruco_detection.json new file mode 100644 index 0000000..283b297 --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/render_g_aruco_detection.json @@ -0,0 +1,2224 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:56Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "g", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.npz", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.png", + "image_sha256": "6f328ef148dd5b73d40dbd9254ac0545dbd7393ed4666dd8eee8d3e346b4448b", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 37, + "num_rejected_candidates": 7 + }, + "detections": [ + { + "observation_id": "bd62469e-d51c-4551-939e-fd84b9d3093f", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 361.0, + 538.0 + ], + [ + 334.0, + 513.0 + ], + [ + 364.0, + 489.0 + ], + [ + 391.0, + 513.0 + ] + ], + "center_px": [ + 362.5, + 513.25 + ], + "quality": { + "area_px": 1396.5, + "perimeter_px": 150.3915138244629, + "sharpness": { + "laplacian_var": 1014.5935798624517 + }, + "contrast": { + "p05": 15.0, + "p95": 168.0, + "dynamic_range": 153.0, + "mean_gray": 87.64736297828335, + "std_gray": 65.25681309567548 + }, + "geometry": { + "distance_to_center_norm": 0.3983326554298401, + "distance_to_border_px": 334.0 + }, + "edge_ratio": 1.0810098739215166, + "edge_lengths_px": [ + 36.79673767089844, + 38.41874694824219, + 36.12478256225586, + 39.051246643066406 + ] + }, + "confidence": 0.8612317264250932 + }, + { + "observation_id": "218c78f9-70dd-438c-9582-3e3969d02c2b", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 490.0, + 612.0 + ], + [ + 463.0, + 586.0 + ], + [ + 492.0, + 572.0 + ], + [ + 518.0, + 598.0 + ] + ], + "center_px": [ + 490.75, + 592.0 + ], + "quality": { + "area_px": 1112.0, + "perimeter_px": 137.76032066345215, + "sharpness": { + "laplacian_var": 1213.9038992326398 + }, + "contrast": { + "p05": 22.0, + "p95": 181.0, + "dynamic_range": 159.0, + "mean_gray": 82.85922974767597, + "std_gray": 68.84435047820993 + }, + "geometry": { + "distance_to_center_norm": 0.26119279861450195, + "distance_to_border_px": 463.0 + }, + "edge_ratio": 1.1973610126869798, + "edge_lengths_px": [ + 37.48332977294922, + 32.202484130859375, + 36.769554138183594, + 31.30495262145996 + ] + }, + "confidence": 0.619139361878602 + }, + { + "observation_id": "af88b386-47b2-4d58-8178-ed564a3695b7", + "type": "aruco", + "marker_id": 86, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 94.0, + 958.0 + ], + [ + 68.0, + 982.0 + ], + [ + 47.0, + 960.0 + ], + [ + 73.0, + 936.0 + ] + ], + "center_px": [ + 70.5, + 959.0 + ], + "quality": { + "area_px": 1076.0, + "perimeter_px": 131.59485244750977, + "sharpness": { + "laplacian_var": 500.4565883722073 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 68.66531713900135, + "std_gray": 56.437884581126355 + }, + "geometry": { + "distance_to_center_norm": 0.8588042259216309, + "distance_to_border_px": 47.0 + }, + "edge_ratio": 1.1634060487042286, + "edge_lengths_px": [ + 35.38361358642578, + 30.4138126373291, + 35.38361358642578, + 30.4138126373291 + ] + }, + "confidence": 0.5795855489013004 + }, + { + "observation_id": "ac199ad8-aba2-48c1-869f-5008ec08b5fe", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 944.0, + 859.0 + ], + [ + 923.0, + 881.0 + ], + [ + 899.0, + 859.0 + ], + [ + 921.0, + 837.0 + ] + ], + "center_px": [ + 921.75, + 859.0 + ], + "quality": { + "area_px": 990.0, + "perimeter_px": 125.91181182861328, + "sharpness": { + "laplacian_var": 1254.5651387199953 + }, + "contrast": { + "p05": 37.0, + "p95": 176.0, + "dynamic_range": 139.0, + "mean_gray": 94.86206896551724, + "std_gray": 57.98150599974307 + }, + "geometry": { + "distance_to_center_norm": 0.41938236355781555, + "distance_to_border_px": 199.0 + }, + "edge_ratio": 1.070488611997406, + "edge_lengths_px": [ + 30.4138126373291, + 32.557640075683594, + 31.11269760131836, + 31.827661514282227 + ] + }, + "confidence": 0.616540888528013 + }, + { + "observation_id": "d6001c3f-a5bf-42b7-b6dc-7ca761b9b1e4", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 442.0, + 549.0 + ], + [ + 415.0, + 524.0 + ], + [ + 437.0, + 520.0 + ], + [ + 464.0, + 545.0 + ] + ], + "center_px": [ + 439.5, + 534.5 + ], + "quality": { + "area_px": 658.0, + "perimeter_px": 118.31483459472656, + "sharpness": { + "laplacian_var": 2355.6744409733983 + }, + "contrast": { + "p05": 23.0, + "p95": 180.0, + "dynamic_range": 157.0, + "mean_gray": 108.16359918200409, + "std_gray": 61.881853788931394 + }, + "geometry": { + "distance_to_center_norm": 0.31172657012939453, + "distance_to_border_px": 415.0 + }, + "edge_ratio": 1.6456001465781875, + "edge_lengths_px": [ + 36.79673767089844, + 22.360679626464844, + 36.79673767089844, + 22.360679626464844 + ] + }, + "confidence": 0.2665694139483502 + }, + { + "observation_id": "d28cadc4-189e-4ae4-af3b-0b572c298669", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 565.0, + 714.0 + ], + [ + 544.0, + 692.0 + ], + [ + 568.0, + 672.0 + ], + [ + 589.0, + 694.0 + ] + ], + "center_px": [ + 566.5, + 693.0 + ], + "quality": { + "area_px": 948.0, + "perimeter_px": 123.30962371826172, + "sharpness": { + "laplacian_var": 948.7205075308444 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 87.45253164556962, + "std_gray": 63.36793023445192 + }, + "geometry": { + "distance_to_center_norm": 0.24080945551395416, + "distance_to_border_px": 366.0 + }, + "edge_ratio": 1.027197727372641, + "edge_lengths_px": [ + 30.4138126373291, + 31.240999221801758, + 30.4138126373291, + 31.240999221801758 + ] + }, + "confidence": 0.6152661587526339 + }, + { + "observation_id": "e3ad444d-1d81-4604-8fd0-a92842a16286", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 903.0, + 772.0 + ], + [ + 882.0, + 794.0 + ], + [ + 858.0, + 773.0 + ], + [ + 879.0, + 752.0 + ] + ], + "center_px": [ + 880.5, + 772.75 + ], + "quality": { + "area_px": 946.5, + "perimeter_px": 123.24373435974121, + "sharpness": { + "laplacian_var": 1446.0998691484099 + }, + "contrast": { + "p05": 34.0, + "p95": 175.0, + "dynamic_range": 141.0, + "mean_gray": 92.60221870047543, + "std_gray": 58.54318515049794 + }, + "geometry": { + "distance_to_center_norm": 0.31413766741752625, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 1.0738069198414777, + "edge_lengths_px": [ + 30.4138126373291, + 31.890438079833984, + 29.698484420776367, + 31.240999221801758 + ] + }, + "confidence": 0.5876289194459208 + }, + { + "observation_id": "8cf16795-74fe-4437-9557-9268ab8b7b05", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 138.0, + 787.0 + ], + [ + 113.0, + 809.0 + ], + [ + 93.0, + 789.0 + ], + [ + 118.0, + 767.0 + ] + ], + "center_px": [ + 115.5, + 788.0 + ], + "quality": { + "area_px": 940.0, + "perimeter_px": 123.17184448242188, + "sharpness": { + "laplacian_var": 604.4415315905076 + }, + "contrast": { + "p05": 6.0, + "p95": 133.0, + "dynamic_range": 127.0, + "mean_gray": 50.246422893481714, + "std_gray": 50.2390597357709 + }, + "geometry": { + "distance_to_center_norm": 0.725993812084198, + "distance_to_border_px": 93.0 + }, + "edge_ratio": 1.177391162675776, + "edge_lengths_px": [ + 33.30165100097656, + 28.284271240234375, + 33.30165100097656, + 28.284271240234375 + ] + }, + "confidence": 0.5322501871361803 + }, + { + "observation_id": "76321a8d-e1fb-4464-bc19-697a8342b314", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 999.0, + 755.0 + ], + [ + 978.0, + 776.0 + ], + [ + 955.0, + 755.0 + ], + [ + 976.0, + 734.0 + ] + ], + "center_px": [ + 977.0, + 755.0 + ], + "quality": { + "area_px": 924.0, + "perimeter_px": 121.68661499023438, + "sharpness": { + "laplacian_var": 1427.420428863967 + }, + "contrast": { + "p05": 40.0, + "p95": 177.0, + "dynamic_range": 137.0, + "mean_gray": 98.6042345276873, + "std_gray": 56.7245592071717 + }, + "geometry": { + "distance_to_center_norm": 0.37230345606803894, + "distance_to_border_px": 304.0 + }, + "edge_ratio": 1.0487007563440722, + "edge_lengths_px": [ + 29.698484420776367, + 31.14482307434082, + 29.698484420776367, + 31.14482307434082 + ] + }, + "confidence": 0.5873934926369923 + }, + { + "observation_id": "027e68c3-29e9-4852-a960-447b35496d91", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 76.0, + 765.0 + ], + [ + 50.0, + 785.0 + ], + [ + 32.0, + 764.0 + ], + [ + 58.0, + 744.0 + ] + ], + "center_px": [ + 54.0, + 764.5 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.92214965820312, + "sharpness": { + "laplacian_var": 1149.1764888888888 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 87.18, + "std_gray": 50.17918824904737 + }, + "geometry": { + "distance_to_center_norm": 0.7809113264083862, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.1859747094873558, + "edge_lengths_px": [ + 32.80244064331055, + 27.658634185791016, + 32.80244064331055, + 27.658634185791016 + ] + }, + "confidence": 0.32594286952973284 + }, + { + "observation_id": "bd9fd90a-ce51-455c-9d0b-96ac88fbf84d", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 823.0, + 743.0 + ], + [ + 803.0, + 765.0 + ], + [ + 779.0, + 745.0 + ], + [ + 799.0, + 724.0 + ] + ], + "center_px": [ + 801.0, + 744.25 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.58359336853027, + "sharpness": { + "laplacian_var": 1584.9415918166465 + }, + "contrast": { + "p05": 30.0, + "p95": 174.0, + "dynamic_range": 144.0, + "mean_gray": 126.23913043478261, + "std_gray": 56.63381767927601 + }, + "geometry": { + "distance_to_center_norm": 0.24413886666297913, + "distance_to_border_px": 315.0 + }, + "edge_ratio": 1.0772758352345433, + "edge_lengths_px": [ + 29.73213768005371, + 31.240999221801758, + 29.0, + 30.610456466674805 + ] + }, + "confidence": 0.5606734879266068 + }, + { + "observation_id": "291b35b3-bf55-44f0-aee1-0084f8726ca9", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 747.0, + 705.0 + ], + [ + 724.0, + 724.0 + ], + [ + 703.0, + 703.0 + ], + [ + 726.0, + 683.0 + ] + ], + "center_px": [ + 725.0, + 703.75 + ], + "quality": { + "area_px": 904.0, + "perimeter_px": 120.42466735839844, + "sharpness": { + "laplacian_var": 1425.730397310992 + }, + "contrast": { + "p05": 25.0, + "p95": 173.0, + "dynamic_range": 148.0, + "mean_gray": 88.02341137123746, + "std_gray": 60.58805571551177 + }, + "geometry": { + "distance_to_center_norm": 0.18202924728393555, + "distance_to_border_px": 356.0 + }, + "edge_ratio": 1.0262982208923905, + "edge_lengths_px": [ + 29.832868576049805, + 29.698484420776367, + 30.479501724243164, + 30.4138126373291 + ] + }, + "confidence": 0.5872237273710109 + }, + { + "observation_id": "7d97f8e1-70e5-46ae-a133-4afcfb28344f", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 119.0, + 710.0 + ], + [ + 94.0, + 730.0 + ], + [ + 76.0, + 709.0 + ], + [ + 102.0, + 690.0 + ] + ], + "center_px": [ + 97.75, + 709.75 + ], + "quality": { + "area_px": 864.0, + "perimeter_px": 118.12554931640625, + "sharpness": { + "laplacian_var": 968.3578168166666 + }, + "contrast": { + "p05": 6.0, + "p95": 136.0, + "dynamic_range": 130.0, + "mean_gray": 46.16981132075472, + "std_gray": 49.20730448013899 + }, + "geometry": { + "distance_to_center_norm": 0.7166538238525391, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.226816924595493, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 32.202484130859375, + 26.248809814453125 + ] + }, + "confidence": 0.46950770604173 + }, + { + "observation_id": "bec08167-6ac6-4856-a3ce-a441698e1f28", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 73.0, + 695.0 + ], + [ + 48.0, + 715.0 + ], + [ + 30.0, + 694.0 + ], + [ + 55.0, + 675.0 + ] + ], + "center_px": [ + 51.5, + 694.75 + ], + "quality": { + "area_px": 863.5, + "perimeter_px": 117.98213958740234, + "sharpness": { + "laplacian_var": 900.750086057507 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 80.92109777015438, + "std_gray": 51.03488818616118 + }, + "geometry": { + "distance_to_center_norm": 0.7624196410179138, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 31.400636672973633, + 26.90724754333496 + ] + }, + "confidence": 0.2902883953953809 + }, + { + "observation_id": "52336af6-b6d1-4044-830f-ad47aff9847c", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 50.0, + 652.0 + ], + [ + 25.0, + 672.0 + ], + [ + 7.0, + 652.0 + ], + [ + 31.0, + 632.0 + ] + ], + "center_px": [ + 28.25, + 652.0 + ], + "quality": { + "area_px": 860.0, + "perimeter_px": 117.75009727478027, + "sharpness": { + "laplacian_var": 765.5794806391044 + }, + "contrast": { + "p05": 6.0, + "p95": 138.0, + "dynamic_range": 132.0, + "mean_gray": 60.22508591065292, + "std_gray": 51.90037234016344 + }, + "geometry": { + "distance_to_center_norm": 0.778620183467865, + "distance_to_border_px": 7.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 26.90724754333496, + 31.240999221801758, + 27.58622932434082 + ] + }, + "confidence": 0.06745941479560678 + }, + { + "observation_id": "2b45d618-37b0-4580-b1fa-c0df52530757", + "type": "aruco", + "marker_id": 79, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 603.0, + 594.0 + ], + [ + 579.0, + 612.0 + ], + [ + 561.0, + 592.0 + ], + [ + 584.0, + 574.0 + ] + ], + "center_px": [ + 581.75, + 593.0 + ], + "quality": { + "area_px": 803.0, + "perimeter_px": 113.69964027404785, + "sharpness": { + "laplacian_var": 1656.0680687854385 + }, + "contrast": { + "p05": 12.0, + "p95": 161.0, + "dynamic_range": 149.0, + "mean_gray": 98.64845173041894, + "std_gray": 55.913593747198206 + }, + "geometry": { + "distance_to_center_norm": 0.16451223194599152, + "distance_to_border_px": 468.0 + }, + "edge_ratio": 1.1149412421944707, + "edge_lengths_px": [ + 30.0, + 26.90724754333496, + 29.20616340637207, + 27.58622932434082 + ] + }, + "confidence": 0.48014488393995497 + }, + { + "observation_id": "4b2d458b-d6df-44f7-bf3f-5167ce8a8158", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 532.0 + ], + [ + 698.0, + 550.0 + ], + [ + 678.0, + 531.0 + ], + [ + 700.0, + 513.0 + ] + ], + "center_px": [ + 699.0, + 531.5 + ], + "quality": { + "area_px": 778.0, + "perimeter_px": 112.02313995361328, + "sharpness": { + "laplacian_var": 1630.603042441958 + }, + "contrast": { + "p05": 23.0, + "p95": 174.0, + "dynamic_range": 151.0, + "mean_gray": 95.26275992438563, + "std_gray": 62.75795126376546 + }, + "geometry": { + "distance_to_center_norm": 0.025172246620059013, + "distance_to_border_px": 513.0 + }, + "edge_ratio": 1.0304177609146679, + "edge_lengths_px": [ + 28.42534065246582, + 27.58622932434082, + 28.42534065246582, + 27.58622932434082 + ] + }, + "confidence": 0.5033557129355607 + }, + { + "observation_id": "04062640-e850-4daf-bbad-86e8b8d24300", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 879.0, + 509.0 + ], + [ + 858.0, + 527.0 + ], + [ + 837.0, + 508.0 + ], + [ + 857.0, + 490.0 + ] + ], + "center_px": [ + 857.75, + 508.5 + ], + "quality": { + "area_px": 776.5, + "perimeter_px": 111.95437049865723, + "sharpness": { + "laplacian_var": 1308.7119920798898 + }, + "contrast": { + "p05": 28.0, + "p95": 174.0, + "dynamic_range": 146.0, + "mean_gray": 80.56060606060606, + "std_gray": 60.05184093458493 + }, + "geometry": { + "distance_to_center_norm": 0.1570063829421997, + "distance_to_border_px": 490.0 + }, + "edge_ratio": 1.0803365840024208, + "edge_lengths_px": [ + 27.658634185791016, + 28.319604873657227, + 26.90724754333496, + 29.068883895874023 + ] + }, + "confidence": 0.4791716529202595 + }, + { + "observation_id": "a25de482-813c-4b01-b846-4f07be28a397", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 692.0, + 463.0 + ], + [ + 670.0, + 480.0 + ], + [ + 650.0, + 462.0 + ], + [ + 672.0, + 445.0 + ] + ], + "center_px": [ + 671.0, + 462.5 + ], + "quality": { + "area_px": 736.0, + "perimeter_px": 109.42024993896484, + "sharpness": { + "laplacian_var": 1430.0492813475546 + }, + "contrast": { + "p05": 18.0, + "p95": 168.0, + "dynamic_range": 150.0, + "mean_gray": 84.02217741935483, + "std_gray": 61.295601129603824 + }, + "geometry": { + "distance_to_center_norm": 0.10187894850969315, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 1.0332858231363153, + "edge_lengths_px": [ + 27.80287742614746, + 26.90724754333496, + 27.80287742614746, + 26.90724754333496 + ] + }, + "confidence": 0.47486054263026106 + }, + { + "observation_id": "19cd65f6-7c12-40c9-a122-786504407a66", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 226.0, + 383.0 + ], + [ + 209.0, + 365.0 + ], + [ + 233.0, + 348.0 + ], + [ + 250.0, + 366.0 + ] + ], + "center_px": [ + 229.5, + 365.5 + ], + "quality": { + "area_px": 721.0, + "perimeter_px": 108.33943939208984, + "sharpness": { + "laplacian_var": 1811.1556224254036 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 72.70393374741201, + "std_gray": 58.0764945436627 + }, + "geometry": { + "distance_to_center_norm": 0.5784616470336914, + "distance_to_border_px": 209.0 + }, + "edge_ratio": 1.187894376916731, + "edge_lengths_px": [ + 24.75883674621582, + 29.4108829498291, + 24.75883674621582, + 29.4108829498291 + ] + }, + "confidence": 0.4046375469124394 + }, + { + "observation_id": "f66bcace-49c7-4da1-824c-0aac8847dfd8", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 437.0 + ], + [ + 765.0, + 454.0 + ], + [ + 745.0, + 436.0 + ], + [ + 767.0, + 419.0 + ] + ], + "center_px": [ + 765.75, + 436.5 + ], + "quality": { + "area_px": 718.5, + "perimeter_px": 107.90114212036133, + "sharpness": { + "laplacian_var": 1491.443337468285 + }, + "contrast": { + "p05": 22.0, + "p95": 171.0, + "dynamic_range": 149.0, + "mean_gray": 109.3970893970894, + "std_gray": 60.642148532506475 + }, + "geometry": { + "distance_to_center_norm": 0.12573395669460297, + "distance_to_border_px": 419.0 + }, + "edge_ratio": 1.0622933508624515, + "edge_lengths_px": [ + 27.018512725830078, + 26.90724754333496, + 27.80287742614746, + 26.172504425048828 + ] + }, + "confidence": 0.4509112286273005 + }, + { + "observation_id": "2c52a0be-d9fb-43e5-bcc5-a9bee2ec8b5e", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 730.0, + 434.0 + ], + [ + 708.0, + 452.0 + ], + [ + 689.0, + 434.0 + ], + [ + 710.0, + 417.0 + ] + ], + "center_px": [ + 709.25, + 434.25 + ], + "quality": { + "area_px": 717.5, + "perimeter_px": 107.86516761779785, + "sharpness": { + "laplacian_var": 1736.662652737497 + }, + "contrast": { + "p05": 19.0, + "p95": 167.0, + "dynamic_range": 148.0, + "mean_gray": 58.66320166320166, + "std_gray": 55.157409197074806 + }, + "geometry": { + "distance_to_center_norm": 0.11810554563999176, + "distance_to_border_px": 417.0 + }, + "edge_ratio": 1.0860764484296306, + "edge_lengths_px": [ + 28.42534065246582, + 26.172504425048828, + 27.018512725830078, + 26.248809814453125 + ] + }, + "confidence": 0.44042326304466006 + }, + { + "observation_id": "1f09afba-144b-4ab4-bd5d-ae1c702a9d15", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 576.0, + 320.0 + ], + [ + 550.0, + 337.0 + ], + [ + 536.0, + 319.0 + ], + [ + 558.0, + 303.0 + ] + ], + "center_px": [ + 555.0, + 319.75 + ], + "quality": { + "area_px": 684.0, + "perimeter_px": 105.82973670959473, + "sharpness": { + "laplacian_var": 2755.9650784771356 + }, + "contrast": { + "p05": 18.3, + "p95": 164.0, + "dynamic_range": 145.7, + "mean_gray": 118.58029978586724, + "std_gray": 53.53363006243584 + }, + "geometry": { + "distance_to_center_norm": 0.30577781796455383, + "distance_to_border_px": 303.0 + }, + "edge_ratio": 1.362266203821036, + "edge_lengths_px": [ + 31.064449310302734, + 22.803508758544922, + 27.20294189453125, + 24.75883674621582 + ] + }, + "confidence": 0.33473633767097827 + }, + { + "observation_id": "f02091a2-c666-49c1-90f2-bde950936015", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 146.0, + 302.0 + ], + [ + 128.0, + 284.0 + ], + [ + 151.0, + 268.0 + ], + [ + 168.0, + 285.0 + ] + ], + "center_px": [ + 148.25, + 284.75 + ], + "quality": { + "area_px": 682.5, + "perimeter_px": 105.31820297241211, + "sharpness": { + "laplacian_var": 1274.9818476124406 + }, + "contrast": { + "p05": 8.0, + "p95": 153.0, + "dynamic_range": 145.0, + "mean_gray": 78.65806451612903, + "std_gray": 55.65065056297059 + }, + "geometry": { + "distance_to_center_norm": 0.6957105398178101, + "distance_to_border_px": 128.0 + }, + "edge_ratio": 1.1653889989621362, + "edge_lengths_px": [ + 25.45584487915039, + 28.017850875854492, + 24.041629791259766, + 27.80287742614746 + ] + }, + "confidence": 0.3904275743165678 + }, + { + "observation_id": "3ed96195-178a-48a9-9f79-18bf37bf2a17", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 561.0, + 509.0 + ], + [ + 545.0, + 479.0 + ], + [ + 562.0, + 476.0 + ], + [ + 579.0, + 506.0 + ] + ], + "center_px": [ + 561.75, + 492.5 + ], + "quality": { + "area_px": 574.5, + "perimeter_px": 103.99284362792969, + "sharpness": { + "laplacian_var": 2618.6153012470177 + }, + "contrast": { + "p05": 28.0, + "p95": 182.0, + "dynamic_range": 154.0, + "mean_gray": 76.1413881748072, + "std_gray": 60.266572002236316 + }, + "geometry": { + "distance_to_center_norm": 0.18358337879180908, + "distance_to_border_px": 476.0 + }, + "edge_ratio": 1.997481717814946, + "edge_lengths_px": [ + 34.0, + 17.262676239013672, + 34.48188018798828, + 18.248287200927734 + ] + }, + "confidence": 0.19174142951303974 + }, + { + "observation_id": "296e0394-0642-4a37-934b-00692c441411", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 349.0, + 309.0 + ], + [ + 327.0, + 326.0 + ], + [ + 309.0, + 310.0 + ], + [ + 330.0, + 293.0 + ] + ], + "center_px": [ + 328.75, + 309.5 + ], + "quality": { + "area_px": 658.5, + "perimeter_px": 103.74406433105469, + "sharpness": { + "laplacian_var": 1094.0317657154478 + }, + "contrast": { + "p05": 9.0, + "p95": 158.0, + "dynamic_range": 149.0, + "mean_gray": 66.65924276169265, + "std_gray": 58.28183701574557 + }, + "geometry": { + "distance_to_center_norm": 0.5045555830001831, + "distance_to_border_px": 293.0 + }, + "edge_ratio": 1.1544516556294537, + "edge_lengths_px": [ + 27.80287742614746, + 24.083189010620117, + 27.018512725830078, + 24.83948516845703 + ] + }, + "confidence": 0.38026711457279644 + }, + { + "observation_id": "882ca2c1-7e8f-44cb-a416-a8ceee1d66f0", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 341.0 + ], + [ + 501.0, + 358.0 + ], + [ + 483.0, + 341.0 + ], + [ + 503.0, + 325.0 + ] + ], + "center_px": [ + 502.25, + 341.25 + ], + "quality": { + "area_px": 643.5, + "perimeter_px": 102.22933197021484, + "sharpness": { + "laplacian_var": 792.6312567894008 + }, + "contrast": { + "p05": 12.0, + "p95": 156.59999999999997, + "dynamic_range": 144.59999999999997, + "mean_gray": 44.28285077951002, + "std_gray": 50.37014613113326 + }, + "geometry": { + "distance_to_center_norm": 0.32757362723350525, + "distance_to_border_px": 325.0 + }, + "edge_ratio": 1.0912674534258815, + "edge_lengths_px": [ + 27.018512725830078, + 24.75883674621582, + 25.612497329711914, + 24.83948516845703 + ] + }, + "confidence": 0.3931208602008742 + }, + { + "observation_id": "38526777-1131-48ff-ad32-f1d255681166", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 378.0, + 281.0 + ], + [ + 356.0, + 296.0 + ], + [ + 340.0, + 278.0 + ], + [ + 362.0, + 263.0 + ] + ], + "center_px": [ + 359.0, + 279.5 + ], + "quality": { + "area_px": 636.0, + "perimeter_px": 101.42048645019531, + "sharpness": { + "laplacian_var": 1475.439773960402 + }, + "contrast": { + "p05": 12.0, + "p95": 159.0, + "dynamic_range": 147.0, + "mean_gray": 104.82805429864253, + "std_gray": 54.152686185461974 + }, + "geometry": { + "distance_to_center_norm": 0.49463948607444763, + "distance_to_border_px": 263.0 + }, + "edge_ratio": 1.1056282539133682, + "edge_lengths_px": [ + 26.62705421447754, + 24.083189010620117, + 26.62705421447754, + 24.083189010620117 + ] + }, + "confidence": 0.3834923705135548 + }, + { + "observation_id": "0f7895d1-92f9-4c43-bde8-a03fb8bcd266", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 444.0, + 258.0 + ], + [ + 425.0, + 275.0 + ], + [ + 406.0, + 259.0 + ], + [ + 427.0, + 243.0 + ] + ], + "center_px": [ + 425.5, + 258.75 + ], + "quality": { + "area_px": 607.0, + "perimeter_px": 99.40690803527832, + "sharpness": { + "laplacian_var": 1418.6926709234967 + }, + "contrast": { + "p05": 11.0, + "p95": 160.0, + "dynamic_range": 149.0, + "mean_gray": 106.14797136038186, + "std_gray": 57.2326997711296 + }, + "geometry": { + "distance_to_center_norm": 0.45247167348861694, + "distance_to_border_px": 243.0 + }, + "edge_ratio": 1.1644874731532113, + "edge_lengths_px": [ + 25.495098114013672, + 24.83948516845703, + 26.4007568359375, + 22.671567916870117 + ] + }, + "confidence": 0.3475062428717297 + }, + { + "observation_id": "c0905ccd-6076-4db2-b0d2-faf6b825d402", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 540.0, + 214.0 + ], + [ + 518.0, + 229.0 + ], + [ + 502.0, + 212.0 + ], + [ + 524.0, + 198.0 + ] + ], + "center_px": [ + 521.0, + 213.25 + ], + "quality": { + "area_px": 595.0, + "perimeter_px": 98.67651557922363, + "sharpness": { + "laplacian_var": 2376.767235312675 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 88.00492610837438, + "std_gray": 57.82609375178821 + }, + "geometry": { + "distance_to_center_norm": 0.425087571144104, + "distance_to_border_px": 198.0 + }, + "edge_ratio": 1.176760682519333, + "edge_lengths_px": [ + 26.62705421447754, + 23.34523582458496, + 26.07680892944336, + 22.627416610717773 + ] + }, + "confidence": 0.3370835485575886 + }, + { + "observation_id": "25fd0261-f375-402f-8d25-8d2e10b062e6", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 435.0, + 187.0 + ], + [ + 413.0, + 203.0 + ], + [ + 397.0, + 188.0 + ], + [ + 416.0, + 172.0 + ] + ], + "center_px": [ + 415.25, + 187.5 + ], + "quality": { + "area_px": 587.5, + "perimeter_px": 98.18157768249512, + "sharpness": { + "laplacian_var": 1963.1431301414739 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 65.73891625615764, + "std_gray": 57.77965459852634 + }, + "geometry": { + "distance_to_center_norm": 0.5177453756332397, + "distance_to_border_px": 172.0 + }, + "edge_ratio": 1.2403473347124077, + "edge_lengths_px": [ + 27.20294189453125, + 21.931713104248047, + 24.83948516845703, + 24.20743751525879 + ] + }, + "confidence": 0.3157717646545193 + }, + { + "observation_id": "046eb54f-6da2-416d-bf7e-2dba2bf98139", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 295.0, + 182.0 + ], + [ + 274.0, + 199.0 + ], + [ + 257.0, + 184.0 + ], + [ + 277.0, + 168.0 + ] + ], + "center_px": [ + 275.75, + 183.25 + ], + "quality": { + "area_px": 586.0, + "perimeter_px": 98.10608673095703, + "sharpness": { + "laplacian_var": 1004.0248132785243 + }, + "contrast": { + "p05": 8.0, + "p95": 152.0, + "dynamic_range": 144.0, + "mean_gray": 57.34663341645885, + "std_gray": 54.68788834886238 + }, + "geometry": { + "distance_to_center_norm": 0.6330687999725342, + "distance_to_border_px": 168.0 + }, + "edge_ratio": 1.1917355175830322, + "edge_lengths_px": [ + 27.018512725830078, + 22.671567916870117, + 25.612497329711914, + 22.803508758544922 + ] + }, + "confidence": 0.32781322776968225 + }, + { + "observation_id": "f4945d34-8e54-4bfe-821d-48583374b768", + "type": "aruco", + "marker_id": 65, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 330.0, + 124.0 + ], + [ + 309.0, + 139.0 + ], + [ + 292.0, + 125.0 + ], + [ + 312.0, + 109.0 + ] + ], + "center_px": [ + 310.75, + 124.25 + ], + "quality": { + "area_px": 568.5, + "perimeter_px": 96.87293815612793, + "sharpness": { + "laplacian_var": 1300.0755674364495 + }, + "contrast": { + "p05": 8.0, + "p95": 155.0, + "dynamic_range": 147.0, + "mean_gray": 86.9776119402985, + "std_gray": 55.68315657930573 + }, + "geometry": { + "distance_to_center_norm": 0.6482013463973999, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.1718344795212643, + "edge_lengths_px": [ + 25.806976318359375, + 22.022714614868164, + 25.612497329711914, + 23.430749893188477 + ] + }, + "confidence": 0.323424516536529 + }, + { + "observation_id": "2c11a2fa-b136-49ed-b385-7c09337b5db7", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 356.0, + 167.0 + ], + [ + 333.0, + 181.0 + ], + [ + 319.0, + 165.0 + ], + [ + 341.0, + 151.0 + ] + ], + "center_px": [ + 337.25, + 166.0 + ], + "quality": { + "area_px": 563.0, + "perimeter_px": 96.19463729858398, + "sharpness": { + "laplacian_var": 1894.9311071943598 + }, + "contrast": { + "p05": 9.0, + "p95": 156.0, + "dynamic_range": 147.0, + "mean_gray": 103.9113924050633, + "std_gray": 53.71344264563591 + }, + "geometry": { + "distance_to_center_norm": 0.5945987105369568, + "distance_to_border_px": 151.0 + }, + "edge_ratio": 1.266484164199827, + "edge_lengths_px": [ + 26.925823211669922, + 21.260292053222656, + 26.07680892944336, + 21.931713104248047 + ] + }, + "confidence": 0.2963584890699928 + }, + { + "observation_id": "cc742ebb-15ea-4ff7-b57b-46520fc2b050", + "type": "aruco", + "marker_id": 87, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 180.0, + 65.0 + ], + [ + 159.0, + 81.0 + ], + [ + 143.0, + 66.0 + ], + [ + 164.0, + 52.0 + ] + ], + "center_px": [ + 161.5, + 66.0 + ], + "quality": { + "area_px": 534.0, + "perimeter_px": 94.18685722351074, + "sharpness": { + "laplacian_var": 1427.9534499507668 + }, + "contrast": { + "p05": 8.0, + "p95": 150.0, + "dynamic_range": 142.0, + "mean_gray": 94.2133676092545, + "std_gray": 52.32608089294961 + }, + "geometry": { + "distance_to_center_norm": 0.8139207363128662, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.2806248134565528, + "edge_lengths_px": [ + 26.4007568359375, + 21.931713104248047, + 25.238859176635742, + 20.615528106689453 + ] + }, + "confidence": 0.27798930354872264 + }, + { + "observation_id": "86975eb6-64af-4856-863c-1c31c5d461af", + "type": "aruco", + "marker_id": 80, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 318.0, + 56.0 + ], + [ + 297.0, + 71.0 + ], + [ + 281.0, + 57.0 + ], + [ + 301.0, + 42.0 + ] + ], + "center_px": [ + 299.25, + 56.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 847.3843286787691 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 66.73007712082263, + "std_gray": 58.398961546954666 + }, + "geometry": { + "distance_to_center_norm": 0.7121544480323792, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.806976318359375, + 21.260292053222656, + 25.0, + 22.022714614868164 + ] + }, + "confidence": 0.24658567276025462 + }, + { + "observation_id": "12e4b788-fd15-43f6-8e19-e7ba9705bdf9", + "type": "aruco", + "marker_id": 78, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 352.0, + 82.0 + ], + [ + 332.0, + 97.0 + ], + [ + 315.0, + 83.0 + ], + [ + 336.0, + 68.0 + ] + ], + "center_px": [ + 333.75, + 82.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 1495.6557828150394 + }, + "contrast": { + "p05": 8.0, + "p95": 154.39999999999998, + "dynamic_range": 146.39999999999998, + "mean_gray": 80.43256997455471, + "std_gray": 54.727417597641875 + }, + "geometry": { + "distance_to_center_norm": 0.6652719378471375, + "distance_to_border_px": 68.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.0, + 22.022714614868164, + 25.806976318359375, + 21.260292053222656 + ] + }, + "confidence": 0.29355437233363646 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 486.0, + 719.0 + ], + [ + 454.0, + 799.0 + ], + [ + 418.0, + 837.0 + ], + [ + 463.0, + 740.0 + ] + ], + "center_px": [ + 455.25, + 773.75 + ], + "area_px": 1475.0 + }, + { + "image_points_px": [ + [ + 438.0, + 753.0 + ], + [ + 414.0, + 813.0 + ], + [ + 410.0, + 798.0 + ], + [ + 428.0, + 756.0 + ] + ], + "center_px": [ + 422.5, + 780.0 + ], + "area_px": 483.0 + }, + { + "image_points_px": [ + [ + 800.0, + 580.0 + ], + [ + 824.0, + 598.0 + ], + [ + 805.0, + 618.0 + ], + [ + 781.0, + 600.0 + ] + ], + "center_px": [ + 802.5, + 599.0 + ], + "area_px": 822.0 + }, + { + "image_points_px": [ + [ + 347.0, + 811.0 + ], + [ + 356.0, + 811.0 + ], + [ + 379.0, + 836.0 + ], + [ + 372.0, + 837.0 + ] + ], + "center_px": [ + 363.5, + 823.75 + ], + "area_px": 216.0 + }, + { + "image_points_px": [ + [ + 606.0, + 542.0 + ], + [ + 580.0, + 559.0 + ], + [ + 569.0, + 560.0 + ], + [ + 589.0, + 544.0 + ] + ], + "center_px": [ + 586.0, + 551.25 + ], + "area_px": 196.5 + }, + { + "image_points_px": [ + [ + 523.0, + 557.0 + ], + [ + 498.0, + 574.0 + ], + [ + 494.0, + 570.0 + ], + [ + 503.0, + 561.0 + ] + ], + "center_px": [ + 504.5, + 565.5 + ], + "area_px": 156.0 + }, + { + "image_points_px": [ + [ + 803.0, + 972.0 + ], + [ + 814.0, + 977.0 + ], + [ + 824.0, + 985.0 + ], + [ + 808.0, + 977.0 + ] + ], + "center_px": [ + 812.25, + 977.75 + ], + "area_px": 39.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/render_g_camera_pose.json b/data/camera_study/Scene10/k4_cdeg/render_g_camera_pose.json new file mode 100644 index 0000000..7b1ceba --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/render_g_camera_pose.json @@ -0,0 +1,663 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:57Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_cdeg\\render_g_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "g", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 33, + "used_marker_ids": [ + 86, + 64, + 215, + 58, + 72, + 69, + 53, + 103, + 51, + 56, + 46, + 68, + 79, + 55, + 66, + 47, + 217, + 97, + 54, + 85, + 205, + 92, + 105, + 102, + 59, + 57, + 48, + 63, + 65, + 71, + 87, + 80, + 78 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.009919110626502768, + 0.00131603695020182, + 0.001107937977321884, + 0.0011079307333379282 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.1533723108903047, + "residual_median_px": 2.642822899939481, + "residual_max_px": 5.712847334889287, + "sigma2_normalized": 1.3502615607878073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + -0.7068235278129578, + -0.7073897123336792, + 0.0005333506851457059 + ], + [ + -0.6407679319381714, + 0.6399352550506592, + -0.424145370721817 + ], + [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + ], + "translation_m": [ + -0.00025032571284100413, + 0.3299143314361572, + 1.3926880359649658 + ], + "rvec_rad": [ + 1.1160234227786252, + -2.692342329270323, + 0.5995714660194011 + ] + }, + "camera_in_world": { + "position_m": [ + -0.20615969598293304, + 0.20669731497764587, + 1.40114164352417 + ], + "position_mm": [ + -206.15969848632812, + 206.6973114013672, + 1401.1416015625 + ], + "orientation_deg": { + "roll": -161.66343688964844, + "pitch": -17.43927001953125, + "yaw": -137.80624389648438 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 4.975476294351241e-06, + -6.1997390444361685e-06, + 4.6125841623440254e-06, + 3.8792135706014886e-07, + 1.0177551175558624e-06, + 4.222247510549453e-06 + ], + [ + -6.199739044436152e-06, + 1.6975220993135513e-05, + -1.1554389240886986e-05, + -2.6694426951616535e-06, + -1.5071367865932754e-06, + -1.0044703768545779e-05 + ], + [ + 4.61258416234392e-06, + -1.1554389240886865e-05, + 4.305804556659614e-05, + 4.2916213343878956e-06, + -2.367994951969628e-06, + 1.1642827799058608e-07 + ], + [ + 3.8792135706013785e-07, + -2.66944269516164e-06, + 4.29162133438789e-06, + 8.873234421723078e-07, + -1.077878898019132e-07, + 5.938016020714988e-07 + ], + [ + 1.0177551175558734e-06, + -1.5071367865932949e-06, + -2.3679949519695885e-06, + -1.0778788980190919e-07, + 6.616834799099002e-07, + 1.592756267167381e-06 + ], + [ + 4.2222475105494726e-06, + -1.0044703768545826e-05, + 1.1642827799072875e-07, + 5.938016020715144e-07, + 1.5927562671673749e-06, + 1.016526335390813e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.12780268061910577, + 0.23606432019497975, + 0.37596705361655935 + ], + "tvec_std_m": [ + 0.0009419784722446197, + 0.0008134392908569761, + 0.0031883010136917957 + ] + }, + "camera_center_std_m": [ + 0.005660072460127804, + 0.007818574448214759, + 0.0036781658638248924 + ], + "camera_center_std_mm": [ + 5.660072460127804, + 7.8185744482147586, + 3.6781658638248924 + ], + "orientation_std_deg": { + "roll": 0.33214565947431973, + "pitch": 0.23919321283200756, + "yaw": 0.12115842919429226 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 86, + "observed_center_px": [ + 70.5, + 959.0 + ], + "projected_center_px": [ + 72.42671966552734, + 955.485107421875 + ], + "reprojection_error_px": 4.0083311371801615, + "confidence": 0.5795855489013004 + }, + { + "marker_id": 64, + "observed_center_px": [ + 921.75, + 859.0 + ], + "projected_center_px": [ + 922.7560424804688, + 862.7833251953125 + ], + "reprojection_error_px": 3.9148015283017963, + "confidence": 0.616540888528013 + }, + { + "marker_id": 215, + "observed_center_px": [ + 566.5, + 693.0 + ], + "projected_center_px": [ + 568.2459106445312, + 692.080322265625 + ], + "reprojection_error_px": 1.9733248880487617, + "confidence": 0.6152661587526339 + }, + { + "marker_id": 58, + "observed_center_px": [ + 880.5, + 772.75 + ], + "projected_center_px": [ + 879.3278198242188, + 769.2518310546875 + ], + "reprojection_error_px": 3.689334944735071, + "confidence": 0.5876289194459208 + }, + { + "marker_id": 72, + "observed_center_px": [ + 115.5, + 788.0 + ], + "projected_center_px": [ + 114.51494598388672, + 788.7781982421875 + ], + "reprojection_error_px": 1.2553580838966305, + "confidence": 0.5322501871361803 + }, + { + "marker_id": 69, + "observed_center_px": [ + 977.0, + 755.0 + ], + "projected_center_px": [ + 978.3434448242188, + 750.7787475585938 + ], + "reprojection_error_px": 4.429877669845791, + "confidence": 0.5873934926369923 + }, + { + "marker_id": 53, + "observed_center_px": [ + 54.0, + 764.5 + ], + "projected_center_px": [ + 57.76123046875, + 763.97119140625 + ], + "reprojection_error_px": 3.79822236946143, + "confidence": 0.32594286952973284 + }, + { + "marker_id": 103, + "observed_center_px": [ + 801.0, + 744.25 + ], + "projected_center_px": [ + 797.4358520507812, + 746.4951782226562 + ], + "reprojection_error_px": 4.212359891487205, + "confidence": 0.5606734879266068 + }, + { + "marker_id": 51, + "observed_center_px": [ + 725.0, + 703.75 + ], + "projected_center_px": [ + 724.1592407226562, + 705.2492065429688 + ], + "reprojection_error_px": 1.7188648640657866, + "confidence": 0.5872237273710109 + }, + { + "marker_id": 56, + "observed_center_px": [ + 97.75, + 709.75 + ], + "projected_center_px": [ + 94.510986328125, + 713.8988647460938 + ], + "reprojection_error_px": 5.263486320678788, + "confidence": 0.46950770604173 + }, + { + "marker_id": 46, + "observed_center_px": [ + 51.5, + 694.75 + ], + "projected_center_px": [ + 45.80540466308594, + 695.206298828125 + ], + "reprojection_error_px": 5.712847334889287, + "confidence": 0.2902883953953809 + }, + { + "marker_id": 68, + "observed_center_px": [ + 28.25, + 652.0 + ], + "projected_center_px": [ + 32.07790756225586, + 650.2508544921875 + ], + "reprojection_error_px": 4.20860859580411, + "confidence": 0.06745941479560678 + }, + { + "marker_id": 79, + "observed_center_px": [ + 581.75, + 593.0 + ], + "projected_center_px": [ + 580.7769775390625, + 592.564453125 + ], + "reprojection_error_px": 1.0660552470726525, + "confidence": 0.48014488393995497 + }, + { + "marker_id": 55, + "observed_center_px": [ + 699.0, + 531.5 + ], + "projected_center_px": [ + 701.2785034179688, + 531.0349731445312 + ], + "reprojection_error_px": 2.3254736726100407, + "confidence": 0.5033557129355607 + }, + { + "marker_id": 66, + "observed_center_px": [ + 857.75, + 508.5 + ], + "projected_center_px": [ + 857.27294921875, + 509.6018981933594 + ], + "reprojection_error_px": 1.200731891980841, + "confidence": 0.4791716529202595 + }, + { + "marker_id": 47, + "observed_center_px": [ + 671.0, + 462.5 + ], + "projected_center_px": [ + 669.33203125, + 463.6061096191406 + ], + "reprojection_error_px": 2.001399070783231, + "confidence": 0.47486054263026106 + }, + { + "marker_id": 217, + "observed_center_px": [ + 229.5, + 365.5 + ], + "projected_center_px": [ + 227.5244140625, + 361.9618225097656 + ], + "reprojection_error_px": 4.052362243044047, + "confidence": 0.4046375469124394 + }, + { + "marker_id": 97, + "observed_center_px": [ + 765.75, + 436.5 + ], + "projected_center_px": [ + 768.8408203125, + 437.7091064453125 + ], + "reprojection_error_px": 3.318901715968526, + "confidence": 0.4509112286273005 + }, + { + "marker_id": 54, + "observed_center_px": [ + 709.25, + 434.25 + ], + "projected_center_px": [ + 710.0586547851562, + 430.8271789550781 + ], + "reprojection_error_px": 3.5170479762317965, + "confidence": 0.44042326304466006 + }, + { + "marker_id": 85, + "observed_center_px": [ + 555.0, + 319.75 + ], + "projected_center_px": [ + 556.587158203125, + 321.8631591796875 + ], + "reprojection_error_px": 2.642822899939481, + "confidence": 0.33473633767097827 + }, + { + "marker_id": 205, + "observed_center_px": [ + 148.25, + 284.75 + ], + "projected_center_px": [ + 149.84744262695312, + 286.7835693359375 + ], + "reprojection_error_px": 2.5859673606741804, + "confidence": 0.3904275743165678 + }, + { + "marker_id": 92, + "observed_center_px": [ + 328.75, + 309.5 + ], + "projected_center_px": [ + 328.0833435058594, + 312.3528137207031 + ], + "reprojection_error_px": 2.929671825684897, + "confidence": 0.38026711457279644 + }, + { + "marker_id": 105, + "observed_center_px": [ + 502.25, + 341.25 + ], + "projected_center_px": [ + 498.5203857421875, + 341.1575622558594 + ], + "reprojection_error_px": 3.730759607455309, + "confidence": 0.3931208602008742 + }, + { + "marker_id": 102, + "observed_center_px": [ + 359.0, + 279.5 + ], + "projected_center_px": [ + 359.4945373535156, + 281.3692626953125 + ], + "reprojection_error_px": 1.9335744666573331, + "confidence": 0.3834923705135548 + }, + { + "marker_id": 59, + "observed_center_px": [ + 425.5, + 258.75 + ], + "projected_center_px": [ + 428.2454833984375, + 258.3636779785156 + ], + "reprojection_error_px": 2.7725302154132963, + "confidence": 0.3475062428717297 + }, + { + "marker_id": 57, + "observed_center_px": [ + 521.0, + 213.25 + ], + "projected_center_px": [ + 521.8204956054688, + 214.8630828857422 + ], + "reprojection_error_px": 1.8097650220036505, + "confidence": 0.3370835485575886 + }, + { + "marker_id": 48, + "observed_center_px": [ + 415.25, + 187.5 + ], + "projected_center_px": [ + 416.5931396484375, + 185.31541442871094 + ], + "reprojection_error_px": 2.564456713124472, + "confidence": 0.3157717646545193 + }, + { + "marker_id": 63, + "observed_center_px": [ + 275.75, + 183.25 + ], + "projected_center_px": [ + 273.6121826171875, + 182.2046661376953 + ], + "reprojection_error_px": 2.379702932287163, + "confidence": 0.32781322776968225 + }, + { + "marker_id": 65, + "observed_center_px": [ + 310.75, + 124.25 + ], + "projected_center_px": [ + 308.9479675292969, + 123.33204650878906 + ], + "reprojection_error_px": 2.022364862603867, + "confidence": 0.323424516536529 + }, + { + "marker_id": 71, + "observed_center_px": [ + 337.25, + 166.0 + ], + "projected_center_px": [ + 337.3795471191406, + 168.51844787597656 + ], + "reprojection_error_px": 2.52177757942458, + "confidence": 0.2963584890699928 + }, + { + "marker_id": 87, + "observed_center_px": [ + 161.5, + 66.0 + ], + "projected_center_px": [ + 160.9746551513672, + 64.77437591552734 + ], + "reprojection_error_px": 1.33346976209604, + "confidence": 0.27798930354872264 + }, + { + "marker_id": 80, + "observed_center_px": [ + 299.25, + 56.5 + ], + "projected_center_px": [ + 298.39697265625, + 58.612037658691406 + ], + "reprojection_error_px": 2.277796900716975, + "confidence": 0.24658567276025462 + }, + { + "marker_id": 78, + "observed_center_px": [ + 333.75, + 82.5 + ], + "projected_center_px": [ + 335.54010009765625, + 79.4444351196289 + ], + "reprojection_error_px": 3.5413182711789872, + "confidence": 0.29355437233363646 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/robot_state.eval.json b/data/camera_study/Scene10/k4_cdeg/robot_state.eval.json new file mode 100644 index 0000000..fe5369a --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 121.80784054016117, + "gt": 120.0, + "error": 1.8078405401611661, + "unit": "mm", + "observable": true, + "n_markers": 2 + }, + { + "joint": "y", + "estimate": 59.637406326679105, + "gt": 60.0, + "error": 0.36259367332090164, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "z", + "estimate": -109.30891047242753, + "gt": -110.0, + "error": 0.6910895275724727, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "a", + "estimate": 18.034427370205467, + "gt": 20.0, + "error": 1.9655726297945364, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "b", + "estimate": 31.349596815690653, + "gt": 30.0, + "error": 1.34959681569066, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "c", + "estimate": -177.9154556121151, + "gt": 180.0, + "error": 2.0845443878848755, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "e", + "estimate": 4.884583297389364, + "gt": 4.0, + "error": 0.8845832973893639, + "unit": "mm", + "observable": true, + "n_markers": 2 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 1.2906794068526892, + "max_abs_deg": 2.0845443878848755, + "mean_abs_mm": 1.346211918775265, + "max_abs_mm": 1.8078405401611661 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_cdeg/robot_state.json b/data/camera_study/Scene10/k4_cdeg/robot_state.json new file mode 100644 index 0000000..713ed8a --- /dev/null +++ b/data/camera_study/Scene10/k4_cdeg/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:20:00Z", + "method": "hybrid", + "movements": { + "x": { + "value": 121.80784054016117, + "unit": "mm", + "observable": true, + "confidence": "medium", + "n_markers": 2 + }, + "y": { + "value": 59.637406326679105, + "unit": "deg", + "observable": true, + "confidence": "medium", + "n_markers": 2 + }, + "z": { + "value": -109.30891047242753, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 2 + }, + "a": { + "value": 18.034427370205467, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "b": { + "value": 31.349596815690653, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "c": { + "value": -177.9154556121151, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "e": { + "value": 4.884583297389364, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 2 + } + }, + "residual_rms": 2.3317233790883836, + "num_markers": 19 +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/aruco_marker_poses.json b/data/camera_study/Scene10/k4_defg/aruco_marker_poses.json new file mode 100644 index 0000000..21d3280 --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/aruco_marker_poses.json @@ -0,0 +1,1418 @@ +{ + "schema_version": "1.1", + "stage": "corner_marker_poses", + "created_utc": "2026-06-02T21:19:19Z", + "summary": { + "num_cameras": 4, + "num_markers": 31 + }, + "cameras": [ + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "link": "FingerA", + "position_m": [ + 0.30676119089108084, + -0.2023041983961035, + 0.02574305979027837 + ], + "position_mm": [ + 306.76119089108084, + -202.30419839610352, + 25.74305979027837 + ], + "normal": [ + 0.10890673965520568, + -0.9813787734019289, + 0.15822460356657173 + ], + "corners_m": [ + [ + 0.2938773901067929, + -0.2022793007099742, + 0.03650912105933598 + ], + [ + 0.31755238832992977, + -0.19872524228279473, + 0.03876433439489378 + ], + [ + 0.31995476573599346, + -0.20282760840220718, + 0.015128243040855256 + ], + [ + 0.2956602193916073, + -0.20538464218943786, + 0.012570540666028467 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.230722635365897 + }, + { + "marker_id": 45, + "link": "FingerB", + "position_m": [ + 0.35447579037318544, + -0.19935550762815046, + 0.020565369613531267 + ], + "position_mm": [ + 354.4757903731854, + -199.35550762815046, + 20.565369613531267 + ], + "normal": [ + 0.7885158028445343, + -0.6071465518872282, + -0.09806066079671788 + ], + "corners_m": [ + [ + 0.3586662238839124, + -0.19750983800112829, + 0.03785882120717178 + ], + [ + 0.3641346938546112, + -0.18517736925129946, + 0.015507635303991157 + ], + [ + 0.35097836815506456, + -0.20210977518555653, + 0.004056947075731876 + ], + [ + 0.3441238755991537, + -0.21262504807461757, + 0.024838074867230258 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.845302391202424 + }, + { + "marker_id": 46, + "link": "Board", + "position_m": [ + 0.5348839313677058, + 0.18248827930854533, + -0.028329775906617814 + ], + "position_mm": [ + 534.8839313677058, + 182.48827930854534, + -28.329775906617815 + ], + "normal": [ + 0.012883936111433134, + -0.08089675465500801, + 0.9966392121909332 + ], + "corners_m": [ + [ + 0.5233215897416643, + 0.17094002326432559, + -0.02896325392247736 + ], + [ + 0.5229731544270956, + 0.19414640256343507, + -0.027384331705183448 + ], + [ + 0.5464252622786153, + 0.19371638751808895, + -0.027408740692494618 + ], + [ + 0.5468157190234477, + 0.17115030388833177, + -0.029562777306315836 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.22336011833314 + }, + { + "marker_id": 47, + "link": "Board", + "position_m": [ + 0.34392760223654334, + -0.28822712673086337, + -0.02716033475194136 + ], + "position_mm": [ + 343.92760223654335, + -288.22712673086335, + -27.16033475194136 + ], + "normal": [ + 0.03859322580117324, + -0.10443255994406445, + 0.9937828753534592 + ], + "corners_m": [ + [ + 0.33216233691876645, + -0.30013962152789125, + -0.02830830072761615 + ], + [ + 0.33238863561110865, + -0.2760581031820233, + -0.025088604728902883 + ], + [ + 0.3559324855248196, + -0.2764822678780206, + -0.02674415662077287 + ], + [ + 0.3552269508914787, + -0.30022851433551845, + -0.028500276930473533 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.697445051974984 + }, + { + "marker_id": 48, + "link": "Board", + "position_m": [ + 0.6876438813301919, + -0.3185980163387512, + -0.02729134285766872 + ], + "position_mm": [ + 687.6438813301919, + -318.59801633875117, + -27.29134285766872 + ], + "normal": [ + 0.029132493038135934, + 0.017486234998161154, + 0.9994225980209633 + ], + "corners_m": [ + [ + 0.6759252916051173, + -0.3304756327585794, + -0.02669423244581551 + ], + [ + 0.676847651856678, + -0.3068131732115735, + -0.02723369308680622 + ], + [ + 0.698656198745171, + -0.30724418299370815, + -0.027757855674612312 + ], + [ + 0.6991463831138015, + -0.3298590763911436, + -0.027479590223440833 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.842535044675618 + }, + { + "marker_id": 51, + "link": "Board", + "position_m": [ + 0.1681500562940063, + -0.17339476001268136, + -0.027095991100171826 + ], + "position_mm": [ + 168.1500562940063, + -173.39476001268136, + -27.095991100171826 + ], + "normal": [ + -0.006929446431457085, + -0.00851759103960492, + 0.9999397148903706 + ], + "corners_m": [ + [ + 0.15598934848340218, + -0.18446315356881943, + -0.027910324678300444 + ], + [ + 0.15698070985298238, + -0.16123072887144413, + -0.026438445217859517 + ], + [ + 0.18040880815324517, + -0.16217068294824014, + -0.027538753020782958 + ], + [ + 0.17922135868639552, + -0.1857144746622218, + -0.026496441483744387 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.419552221511367 + }, + { + "marker_id": 53, + "link": "Board", + "position_m": [ + 0.48860093452214415, + 0.21483772182745947, + -0.027876507029536736 + ], + "position_mm": [ + 488.60093452214414, + 214.83772182745946, + -27.876507029536736 + ], + "normal": [ + 0.0670186617365675, + -0.058470563469820616, + 0.9960369933825557 + ], + "corners_m": [ + [ + 0.4765721705864046, + 0.2034188838355537, + -0.02793027164749703 + ], + [ + 0.47689705061916854, + 0.2265439372882084, + -0.026209353028194726 + ], + [ + 0.5006234325681025, + 0.22618755532488607, + -0.028213166450377997 + ], + [ + 0.5003110843149011, + 0.20320051086118976, + -0.0291532369920772 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.446141458504894 + }, + { + "marker_id": 54, + "link": "Board", + "position_m": [ + 0.34002828137880914, + -0.32824737340461296, + -0.02759083073330129 + ], + "position_mm": [ + 340.02828137880914, + -328.247373404613, + -27.590830733301292 + ], + "normal": [ + 0.036775079395671616, + 0.03547480362833722, + 0.9986937127282683 + ], + "corners_m": [ + [ + 0.32823485132107605, + -0.33967917843491247, + -0.026705851876983065 + ], + [ + 0.32868576970190566, + -0.31669249758240975, + -0.027628360754826633 + ], + [ + 0.3517942480549486, + -0.31681652787414105, + -0.028385357493838498 + ], + [ + 0.35139825643730643, + -0.3398012897269887, + -0.027643752807556977 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.078412233887164 + }, + { + "marker_id": 55, + "link": "Board", + "position_m": [ + 0.28477842600539216, + -0.2611650589753979, + -0.027525185806588387 + ], + "position_mm": [ + 284.77842600539213, + -261.16505897539787, + -27.525185806588386 + ], + "normal": [ + 0.04974367674799338, + -0.016319395833623962, + 0.9986286817146887 + ], + "corners_m": [ + [ + 0.27265733835131517, + -0.27246884312007635, + -0.02728097019191235 + ], + [ + 0.2736909463935873, + -0.2488218421511797, + -0.02659619499397128 + ], + [ + 0.296862522187932, + -0.25007220938081587, + -0.028124104059557332 + ], + [ + 0.295902897088734, + -0.2732973412495196, + -0.02809947398091258 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.363673333190896 + }, + { + "marker_id": 56, + "link": "Board", + "position_m": [ + 0.5005522218504468, + 0.16524596347644882, + -0.02835240804549706 + ], + "position_mm": [ + 500.5522218504468, + 165.24596347644882, + -28.35240804549706 + ], + "normal": [ + 0.0527402827343598, + -0.05030602546449371, + 0.9973403463106592 + ], + "corners_m": [ + [ + 0.4886781269718622, + 0.1538432628221342, + -0.028113348573127635 + ], + [ + 0.4889499379348003, + 0.17709052906714923, + -0.027326576153834548 + ], + [ + 0.5125157561924402, + 0.17647036210029796, + -0.028231176020749253 + ], + [ + 0.5120650663026843, + 0.15357969991621392, + -0.029738531434276794 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.31074416442109 + }, + { + "marker_id": 57, + "link": "Board", + "position_m": [ + 0.6043014556076433, + -0.36522271977523946, + -0.027512117134979735 + ], + "position_mm": [ + 604.3014556076432, + -365.22271977523945, + -27.512117134979736 + ], + "normal": [ + 0.03495884584046278, + -0.005462497311808814, + 0.9993738240621581 + ], + "corners_m": [ + [ + 0.591968639923899, + -0.37591941696440434, + -0.02692398942041797 + ], + [ + 0.5940115776187654, + -0.35273718727345393, + -0.027299077808318407 + ], + [ + 0.6166315474518378, + -0.3547479630737979, + -0.02766687294690424 + ], + [ + 0.6145940574360705, + -0.3774863117893017, + -0.028158528364278318 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.88379257230473 + }, + { + "marker_id": 58, + "link": "Board", + "position_m": [ + 0.04760162186008221, + -0.21650619986728217, + -0.02677272699998955 + ], + "position_mm": [ + 47.60162186008221, + -216.50619986728216, + -26.77272699998955 + ], + "normal": [ + 0.006309275874434729, + 0.04051778376148621, + 0.9991588973917 + ], + "corners_m": [ + [ + 0.03603072326420602, + -0.22848435252703095, + -0.025990143627254922 + ], + [ + 0.03577529389163546, + -0.2051414276152632, + -0.027379940578314103 + ], + [ + 0.0593199417821514, + -0.2046101468460103, + -0.027106104806548518 + ], + [ + 0.05928052850233596, + -0.22778887248082422, + -0.026614718987840652 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.34761142616873 + }, + { + "marker_id": 63, + "link": "Board", + "position_m": [ + 0.7758681074652511, + -0.2364546663327315, + -0.027363799088751195 + ], + "position_mm": [ + 775.8681074652511, + -236.45466633273148, + -27.363799088751193 + ], + "normal": [ + 0.016512641877972543, + 0.015848793332588703, + 0.9997380398925064 + ], + "corners_m": [ + [ + 0.7650184393516647, + -0.24869024415251365, + -0.026893262316393118 + ], + [ + 0.764292751942433, + -0.22514738038218757, + -0.027448595673385347 + ], + [ + 0.7868041617433558, + -0.22463207704736096, + -0.027631538196366136 + ], + [ + 0.7873570768235513, + -0.24734896374886378, + -0.02748180016886017 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.7973387713386 + }, + { + "marker_id": 64, + "link": "Board", + "position_m": [ + -0.018899113160991923, + -0.1894400937861157, + -0.027047948748946622 + ], + "position_mm": [ + -18.899113160991924, + -189.4400937861157, + -27.047948748946624 + ], + "normal": [ + 0.003886812699000222, + 0.014061112664172705, + 0.9998935832365804 + ], + "corners_m": [ + [ + -0.03039617564282521, + -0.2010374094801404, + -0.02690691463886912 + ], + [ + -0.03057064370773021, + -0.17781175411017408, + -0.027099453753328492 + ], + [ + -0.007386039011948408, + -0.17781585634497613, + -0.027322654577319694 + ], + [ + -0.007243594281463863, + -0.20109535520917218, + -0.026862772026269195 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.21249016160114 + }, + { + "marker_id": 66, + "link": "Board", + "position_m": [ + 0.20990669716717614, + -0.3634472612804458, + -0.02588885696370904 + ], + "position_mm": [ + 209.90669716717613, + -363.4472612804458, + -25.888856963709042 + ], + "normal": [ + 0.012455509741676002, + -0.02534222775607698, + 0.9996012363785042 + ], + "corners_m": [ + [ + 0.1977338253291003, + -0.3750066398088528, + -0.025974374678080347 + ], + [ + 0.19864287958955043, + -0.35137598712177837, + -0.02550025569330157 + ], + [ + 0.22168255306184745, + -0.35211479413871305, + -0.02568935814285184 + ], + [ + 0.2215675306882064, + -0.3752916240524389, + -0.02639143934060241 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.43299493987875 + }, + { + "marker_id": 68, + "link": "Board", + "position_m": [ + 0.5754937488305435, + 0.1739026337658878, + -0.02814406128721321 + ], + "position_mm": [ + 575.4937488305435, + 173.9026337658878, + -28.14406128721321 + ], + "normal": [ + 0.010595298660023306, + -0.02949033806782853, + 0.9995089092183972 + ], + "corners_m": [ + [ + 0.563793520025014, + 0.1622208598839474, + -0.0282233351916166 + ], + [ + 0.5635350035300265, + 0.18535298012599644, + -0.02782569728221914 + ], + [ + 0.5868003879620242, + 0.1854698327902097, + -0.027775101859398948 + ], + [ + 0.5878460838051093, + 0.16256686226339764, + -0.02875211081561815 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.35280402637364 + }, + { + "marker_id": 69, + "link": "Board", + "position_m": [ + 0.006190011780080902, + -0.2775934499594336, + -0.026956424157633243 + ], + "position_mm": [ + 6.190011780080902, + -277.5934499594336, + -26.956424157633244 + ], + "normal": [ + 0.009496510435007023, + 0.013260488469026058, + 0.9998669790202699 + ], + "corners_m": [ + [ + -0.005607422806605138, + -0.28908295579162496, + -0.026670563642627227 + ], + [ + -0.00521807232706259, + -0.2657086745212481, + -0.027027249171129735 + ], + [ + 0.017921053190776866, + -0.26613465675779663, + -0.027198195044678523 + ], + [ + 0.01766448906321447, + -0.28944751276706465, + -0.026929688772097494 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.27898642790541 + }, + { + "marker_id": 72, + "link": "Board", + "position_m": [ + 0.441613256669648, + 0.19375047402920076, + -0.027945499783633698 + ], + "position_mm": [ + 441.613256669648, + 193.75047402920075, + -27.9454997836337 + ], + "normal": [ + 0.04220768065798484, + -0.007873810972323092, + 0.9990778322003976 + ], + "corners_m": [ + [ + 0.4305027624240687, + 0.18162223572143135, + -0.02796083196738758 + ], + [ + 0.4292931992664901, + 0.2048075097408415, + -0.026960055064253453 + ], + [ + 0.45303574262546853, + 0.205949769498186, + -0.028708120754145548 + ], + [ + 0.45362132236256464, + 0.18262238115634424, + -0.028152991348748213 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.388719820652703 + }, + { + "marker_id": 95, + "link": "Board", + "position_m": [ + 0.18712891463099013, + -0.27671375923892433, + -0.026561392492913942 + ], + "position_mm": [ + 187.12891463099012, + -276.71375923892435, + -26.561392492913942 + ], + "normal": [ + -0.01709885250366828, + -0.0011086743622704676, + 0.9998531892654123 + ], + "corners_m": [ + [ + 0.1757694282845372, + -0.28892866760466357, + -0.026739475434756917 + ], + [ + 0.17477833993332464, + -0.26573388286757516, + -0.026791089557394166 + ], + [ + 0.19813405428089184, + -0.2647096710924428, + -0.02632871067729068 + ], + [ + 0.19983383602520685, + -0.2874828153910159, + -0.026386294302214 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.38642366371569 + }, + { + "marker_id": 97, + "link": "Board", + "position_m": [ + 0.30677164259746004, + -0.3585092395303406, + -0.026846631840577458 + ], + "position_mm": [ + 306.77164259746, + -358.5092395303406, + -26.84663184057746 + ], + "normal": [ + 0.06135651527372787, + -0.06297425279623779, + 0.9961273119025602 + ], + "corners_m": [ + [ + 0.29478730754227783, + -0.36995221565412945, + -0.026943406977521914 + ], + [ + 0.2953709675227311, + -0.34626460095416045, + -0.02525987408991113 + ], + [ + 0.31885544888676287, + -0.34713502763295234, + -0.02698304796080108 + ], + [ + 0.31807284643806827, + -0.3706851138801202, + -0.028200198334075707 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.560920112321003 + }, + { + "marker_id": 102, + "link": "Board", + "position_m": [ + 0.6517295714590179, + -0.22378395786176808, + -0.027447714728502406 + ], + "position_mm": [ + 651.7295714590178, + -223.78395786176807, + -27.447714728502405 + ], + "normal": [ + -0.011856932918780372, + -0.008084638519855527, + 0.9998970205785008 + ], + "corners_m": [ + [ + 0.6393528676706781, + -0.23413234980278727, + -0.027543396825760274 + ], + [ + 0.6411178962348237, + -0.21161457276202672, + -0.027612287132815307 + ], + [ + 0.6639092499664809, + -0.21330120094591223, + -0.027082834577027898 + ], + [ + 0.6625382719640891, + -0.2360877079363461, + -0.027552340378406145 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.886753330749595 + }, + { + "marker_id": 103, + "link": "Board", + "position_m": [ + 0.10489946886276227, + -0.1906945797501611, + -0.02690533028303023 + ], + "position_mm": [ + 104.89946886276228, + -190.6945797501611, + -26.905330283030228 + ], + "normal": [ + 0.0051727157041366175, + 0.006019497647813178, + 0.9999685038341518 + ], + "corners_m": [ + [ + 0.09359156210681532, + -0.20269200257296158, + -0.026627501107785397 + ], + [ + 0.09274796726921886, + -0.1797138618832649, + -0.027056399277243397 + ], + [ + 0.11615549634017056, + -0.17877671615685575, + -0.02688645173862792 + ], + [ + 0.11710284973484433, + -0.20159573838756215, + -0.027050969008464217 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.201107660625283 + }, + { + "marker_id": 113, + "link": "Arm2", + "position_m": [ + 0.3097690719293074, + -0.15501967985110693, + 0.15684310743400726 + ], + "position_mm": [ + 309.7690719293074, + -155.01967985110693, + 156.84310743400727 + ], + "normal": [ + -0.3529574958449988, + -0.7255856728637542, + 0.5907168843546633 + ], + "corners_m": [ + [ + 0.29834484453762056, + -0.1442347378138432, + 0.16310616919866053 + ], + [ + 0.32065946773399057, + -0.1505514982154449, + 0.16899689450892133 + ], + [ + 0.32145546095546634, + -0.1657149652923207, + 0.15053300999569558 + ], + [ + 0.2986165144901522, + -0.15957751808281898, + 0.14473635603275165 + ] + ], + "num_cameras": 3, + "edge_length_mm": 24.029663308915435 + }, + { + "marker_id": 208, + "link": "Board", + "position_m": [ + 0.3526986120439106, + -0.08935622663652823, + 0.0011633686963663397 + ], + "position_mm": [ + 352.6986120439106, + -89.35622663652823, + 1.1633686963663397 + ], + "normal": [ + -0.013236583432435613, + -0.010806262932010705, + 0.9998539981119646 + ], + "corners_m": [ + [ + 0.34127711669572514, + -0.07725121047815589, + 0.0011521877714661302 + ], + [ + 0.3651368177784906, + -0.07831636687632855, + 0.0014382733997397425 + ], + [ + 0.364279559038811, + -0.10162031908373173, + 0.0011930850054520307 + ], + [ + 0.34010095466261564, + -0.10023701010789676, + 0.0008699286088074556 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.611020703742835 + }, + { + "marker_id": 214, + "link": "Board", + "position_m": [ + 0.3483781654423256, + -0.012088665219769534, + 0.0012657559299771276 + ], + "position_mm": [ + 348.3781654423256, + -12.088665219769535, + 1.2657559299771275 + ], + "normal": [ + 0.009175293463685447, + -0.0153270133248683, + 0.9998404355957978 + ], + "corners_m": [ + [ + 0.33685920759356713, + -0.0007801378859296221, + 0.0014790532266008506 + ], + [ + 0.36024224981704156, + -0.0012380354363556543, + 0.0013904374963473083 + ], + [ + 0.3602440694399177, + -0.023151776264811994, + 0.0009219547215010322 + ], + [ + 0.3361671349187759, + -0.023184711291980863, + 0.0012715782754593194 + ] + ], + "num_cameras": 2, + "edge_length_mm": 22.95053912664819 + }, + { + "marker_id": 218, + "link": "Arm2", + "position_m": [ + 0.355784648415568, + -0.10283234434645239, + 0.20138237246333923 + ], + "position_mm": [ + 355.78464841556803, + -102.83234434645239, + 201.38237246333924 + ], + "normal": [ + 0.9552063058573401, + -0.2836322625668953, + 0.08446095477531328 + ], + "corners_m": [ + [ + 0.3539548786099915, + -0.10709000360299145, + 0.21959608320130625 + ], + [ + 0.3592744556987462, + -0.0866002229890574, + 0.2042333413730749 + ], + [ + 0.35936228988663493, + -0.09983059602418945, + 0.18427762260002423 + ], + [ + 0.3505469694668995, + -0.11780855476957124, + 0.19742244267895157 + ] + ], + "num_cameras": 2, + "edge_length_mm": 24.72864314597877 + }, + { + "marker_id": 219, + "link": "Arm2", + "position_m": [ + 0.35403798082868027, + -0.1674204005690238, + 0.11578893450942986 + ], + "position_mm": [ + 354.03798082868025, + -167.4204005690238, + 115.78893450942985 + ], + "normal": [ + 0.9438406031763872, + -0.26875596023652243, + 0.19218519618581065 + ], + "corners_m": [ + [ + 0.350154511580764, + -0.16808411220930167, + 0.13463080220784515 + ], + [ + 0.35835754030197087, + -0.15116888978752502, + 0.11657507746962832 + ], + [ + 0.3580576649260679, + -0.166796993240444, + 0.09766966824516328 + ], + [ + 0.34958220650591837, + -0.18363160703882445, + 0.11428019011508266 + ] + ], + "num_cameras": 3, + "edge_length_mm": 25.33380475532953 + }, + { + "marker_id": 231, + "link": "Ellbow", + "position_m": [ + 0.31824921959028274, + -0.016035507600091033, + 0.3135986490437831 + ], + "position_mm": [ + 318.24921959028273, + -16.035507600091034, + 313.5986490437831 + ], + "normal": [ + 0.0005824365474253744, + -0.08099115372901211, + 0.9967146501307743 + ], + "corners_m": [ + [ + 0.30590463783433564, + -0.004474298298663191, + 0.31442391696499733 + ], + [ + 0.32989185023675466, + -0.0037498715444060854, + 0.31471253076414046 + ], + [ + 0.3305488397065397, + -0.027481821072554636, + 0.31253855017589033 + ], + [ + 0.30665155058350096, + -0.028436039484740216, + 0.3127195982701044 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.947789324562574 + }, + { + "marker_id": 243, + "link": "Arm1", + "position_m": [ + 0.2288375093319809, + -0.03698793229693551, + 0.30571489327307566 + ], + "position_mm": [ + 228.8375093319809, + -36.98793229693551, + 305.7148932730757 + ], + "normal": [ + -0.007591038067975075, + -0.4790926121079747, + 0.8777315336505852 + ], + "corners_m": [ + [ + 0.2170058865659937, + -0.026729828637070876, + 0.3111341094131878 + ], + [ + 0.24060914351356688, + -0.026776080654825948, + 0.31146634438312165 + ], + [ + 0.24074954426658332, + -0.04744227213791074, + 0.30003641975568396 + ], + [ + 0.21698546298177968, + -0.04700354775793448, + 0.3002226995403092 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.50371387800366 + }, + { + "marker_id": 246, + "link": "Ellbow", + "position_m": [ + 0.3188113421929445, + -0.046007932537774104, + 0.29722265094986233 + ], + "position_mm": [ + 318.8113421929445, + -46.0079325377741, + 297.2226509498623 + ], + "normal": [ + -0.02194360180434095, + -0.7647701336217101, + 0.6439294379511503 + ], + "corners_m": [ + [ + 0.30631338264338775, + -0.0385698692109438, + 0.30563948985772244 + ], + [ + 0.3306130157520603, + -0.03896855969608342, + 0.3059771481707415 + ], + [ + 0.33138791900513254, + -0.05411865223203164, + 0.2880264773729619 + ], + [ + 0.30693105137119725, + -0.05237464901203755, + 0.28924748839802333 + ] + ], + "num_cameras": 2, + "edge_length_mm": 23.449064513811763 + }, + { + "marker_id": 247, + "link": "Ellbow", + "position_m": [ + 0.2806477641488666, + -0.041428425627554825, + 0.3017828490801817 + ], + "position_mm": [ + 280.6477641488666, + -41.42842562755482, + 301.78284908018173 + ], + "normal": [ + 0.0019577263691324684, + -0.7674894903069932, + 0.6410585383377836 + ], + "corners_m": [ + [ + 0.2684605738522713, + -0.03405185057307935, + 0.31052688570020504 + ], + [ + 0.29210548508872874, + -0.03352590076021858, + 0.31133223513852387 + ], + [ + 0.2930999410152695, + -0.04875797047484281, + 0.2928491105526729 + ], + [ + 0.26892505663919697, + -0.04937798070207854, + 0.29242316492932485 + ] + ], + "num_cameras": 3, + "edge_length_mm": 23.886746304658868 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/aruco_positions_initial.json b/data/camera_study/Scene10/k4_defg/aruco_positions_initial.json new file mode 100644 index 0000000..55fed0d --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/aruco_positions_initial.json @@ -0,0 +1,675 @@ +{ + "schema_version": "1.2", + "stage": "initial_triangulation", + "created_utc": "2026-06-02T21:19:16Z", + "summary": { + "num_cameras": 4, + "num_markers": 31, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3068466900499258, + -0.20229325103683918, + 0.02576880988093605 + ], + "position_mm": [ + 306.8466900499258, + -202.29325103683917, + 25.76880988093605 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.35437894921135027, + -0.19928623710836776, + 0.020567426998382186 + ], + "position_mm": [ + 354.3789492113503, + -199.28623710836777, + 20.567426998382185 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 46, + "position_m": [ + 0.5349079942904118, + 0.18252164857567585, + -0.02842723749678798 + ], + "position_mm": [ + 534.9079942904118, + 182.52164857567584, + -28.42723749678798 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3439378056698193, + -0.2882251402059977, + -0.027252363811304914 + ], + "position_mm": [ + 343.9378056698193, + -288.2251402059977, + -27.252363811304914 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6876697828806948, + -0.3186006114330489, + -0.02736316925778259 + ], + "position_mm": [ + 687.6697828806948, + -318.6006114330489, + -27.36316925778259 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.1681498607745509, + -0.1733931351685966, + -0.027195535438267544 + ], + "position_mm": [ + 168.14986077455092, + -173.39313516859661, + -27.195535438267544 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.4886167926345748, + 0.2148715292403088, + -0.027973477565740586 + ], + "position_mm": [ + 488.6167926345748, + 214.8715292403088, + -27.973477565740588 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.34022600137938147, + -0.3287144924988329, + -0.027671883787346047 + ], + "position_mm": [ + 340.22600137938144, + -328.7144924988329, + -27.671883787346047 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.28478271028907015, + -0.2611695674782507, + -0.02762087551779145 + ], + "position_mm": [ + 284.78271028907017, + -261.1695674782507, + -27.62087551779145 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 56, + "position_m": [ + 0.5005702459128442, + 0.1652755130493694, + -0.02844878851727275 + ], + "position_mm": [ + 500.57024591284414, + 165.2755130493694, + -28.448788517272753 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 57, + "position_m": [ + 0.6043205419720532, + -0.3652268610664635, + -0.02758261014495349 + ], + "position_mm": [ + 604.3205419720532, + -365.2268610664635, + -27.58261014495349 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.047590227673648566, + -0.21651182831467572, + -0.02687041535464316 + ], + "position_mm": [ + 47.59022767364856, + -216.5118283146757, + -26.87041535464316 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7759056113265437, + -0.23645070279275476, + -0.027438199281543736 + ], + "position_mm": [ + 775.9056113265436, + -236.45070279275475, + -27.438199281543735 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.01884321403035284, + -0.1897498250154755, + -0.027136995944053673 + ], + "position_mm": [ + -18.84321403035284, + -189.7498250154755, + -27.136995944053673 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 66, + "position_m": [ + 0.20990747429586668, + -0.363458557506648, + -0.025984227806609046 + ], + "position_mm": [ + 209.90747429586668, + -363.458557506648, + -25.984227806609045 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 68, + "position_m": [ + 0.5755216018841531, + 0.1739311004631154, + -0.028243797921295614 + ], + "position_mm": [ + 575.5216018841531, + 173.9311004631154, + -28.243797921295613 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.006150609479969763, + -0.2777950294615375, + -0.027010644320756547 + ], + "position_mm": [ + 6.150609479969763, + -277.7950294615375, + -27.010644320756548 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4416282110583098, + 0.19377892494058815, + -0.028043346549176788 + ], + "position_mm": [ + 441.6282110583098, + 193.77892494058815, + -28.04334654917679 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.18712500986470557, + -0.27672814255121136, + -0.026652539900543178 + ], + "position_mm": [ + 187.12500986470556, + -276.72814255121136, + -26.65253990054318 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.306777022111503, + -0.35851600203924405, + -0.026940389443805817 + ], + "position_mm": [ + 306.77702211150296, + -358.51600203924403, + -26.940389443805817 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6517521811062535, + -0.22377333946988334, + -0.027512336599126174 + ], + "position_mm": [ + 651.7521811062536, + -223.77333946988335, + -27.512336599126176 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10497805201041903, + -0.19080856212389075, + -0.027006345982441688 + ], + "position_mm": [ + 104.97805201041903, + -190.80856212389074, + -27.006345982441687 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.3103743137123175, + -0.15428307632816093, + 0.15665617276472968 + ], + "position_mm": [ + 310.3743137123175, + -154.28307632816094, + 156.6561727647297 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 208, + "position_m": [ + 0.35272495834819445, + -0.089349745315892, + 0.0010874954950881295 + ], + "position_mm": [ + 352.72495834819443, + -89.34974531589201, + 1.0874954950881295 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.34840234712197526, + -0.012078013938502287, + 0.001202886251930221 + ], + "position_mm": [ + 348.40234712197525, + -12.078013938502286, + 1.202886251930221 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3556736217655971, + -0.10278014969865255, + 0.2013893867072845 + ], + "position_mm": [ + 355.6736217655971, + -102.78014969865255, + 201.3893867072845 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.3532496825723185, + -0.16754453874706673, + 0.1163962636425716 + ], + "position_mm": [ + 353.2496825723185, + -167.54453874706672, + 116.39626364257161 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.31826909720982144, + -0.016008708472818794, + 0.31349603415864846 + ], + "position_mm": [ + 318.26909720982144, + -16.008708472818796, + 313.49603415864846 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.23001007116575176, + -0.036080233689634644, + 0.30535428122393937 + ], + "position_mm": [ + 230.01007116575175, + -36.080233689634646, + 305.3542812239394 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.3188408154544438, + -0.04593866388972376, + 0.29717193224579 + ], + "position_mm": [ + 318.8408154544438, + -45.938663889723756, + 297.17193224579 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2818068163969561, + -0.04051140855357585, + 0.3014757489894613 + ], + "position_mm": [ + 281.8068163969561, + -40.51140855357585, + 301.4757489894613 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/aruco_positions_optimized.json b/data/camera_study/Scene10/k4_defg/aruco_positions_optimized.json new file mode 100644 index 0000000..57ce625 --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/aruco_positions_optimized.json @@ -0,0 +1,674 @@ +{ + "schema_version": "1.2", + "created_utc": "2026-06-02T21:19:19Z", + "summary": { + "num_cameras": 4, + "num_markers": 31, + "num_constraints": 94 + }, + "cameras": [ + { + "camera_id": "d", + "position_m": [ + 0.7026420377142895, + -0.794595122683283, + 0.4010946796990027 + ], + "position_mm": [ + 702.6420377142895, + -794.5951226832831, + 401.0946796990027 + ], + "direction": [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + }, + { + "camera_id": "e", + "position_m": [ + 1.2027035370578547, + -0.9093898126663549, + 0.4081419845112901 + ], + "position_mm": [ + 1202.7035370578546, + -909.3898126663548, + 408.1419845112901 + ], + "direction": [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + }, + { + "camera_id": "f", + "position_m": [ + 0.48447032537390755, + -0.3056860451708503, + 1.4030927838623561 + ], + "position_mm": [ + 484.47032537390754, + -305.6860451708503, + 1403.092783862356 + ], + "direction": [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + }, + { + "camera_id": "g", + "position_m": [ + -0.2061597004485399, + 0.2066972923859535, + 1.4011416040110074 + ], + "position_mm": [ + -206.1597004485399, + 206.6972923859535, + 1401.1416040110073 + ], + "direction": [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + } + ], + "markers": [ + { + "marker_id": 40, + "position_m": [ + 0.3069097344375246, + -0.20201774291868094, + 0.026139026263170256 + ], + "position_mm": [ + 306.9097344375246, + -202.01774291868094, + 26.139026263170255 + ], + "link": "FingerA", + "normal": [ + -0.4224220616915755, + 0.0, + -0.9063992507699015 + ] + }, + { + "marker_id": 45, + "position_m": [ + 0.3544028167535081, + -0.19916592177568762, + 0.02072055469881216 + ], + "position_mm": [ + 354.4028167535081, + -199.16592177568762, + 20.72055469881216 + ], + "link": "FingerB", + "normal": [ + -0.8830215713766957, + -0.3090575499818435, + -0.3532086285506783 + ] + }, + { + "marker_id": 46, + "position_m": [ + 0.536781781573731, + 0.18339778319339814, + -0.032431925053443174 + ], + "position_mm": [ + 536.781781573731, + 183.39778319339814, + -32.43192505344317 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 47, + "position_m": [ + 0.3439919337430339, + -0.28572253650563306, + -0.020069895042387945 + ], + "position_mm": [ + 343.9919337430339, + -285.72253650563306, + -20.069895042387945 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 48, + "position_m": [ + 0.6875617971404077, + -0.31872362394683407, + -0.02739239036351586 + ], + "position_mm": [ + 687.5617971404076, + -318.7236239468341, + -27.392390363515858 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 51, + "position_m": [ + 0.1676968768915163, + -0.1735356476039883, + -0.027269427617737364 + ], + "position_mm": [ + 167.6968768915163, + -173.53564760398828, + -27.269427617737364 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 53, + "position_m": [ + 0.48793668565304854, + 0.21131656786738193, + -0.024293808498101307 + ], + "position_mm": [ + 487.9366856530485, + 211.31656786738193, + -24.293808498101306 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 54, + "position_m": [ + 0.34114496308462444, + -0.3290547283677939, + -0.027715468869429712 + ], + "position_mm": [ + 341.14496308462446, + -329.0547283677939, + -27.715468869429714 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 55, + "position_m": [ + 0.2843063441668516, + -0.2609919106919509, + -0.02791632014255192 + ], + "position_mm": [ + 284.3063441668516, + -260.99191069195086, + -27.91632014255192 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 56, + "position_m": [ + 0.49882317485632766, + 0.16741029752124081, + -0.026859087740743234 + ], + "position_mm": [ + 498.8231748563277, + 167.4102975212408, + -26.859087740743234 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 57, + "position_m": [ + 0.6040255225633806, + -0.3655867425237555, + -0.027611459208953307 + ], + "position_mm": [ + 604.0255225633806, + -365.5867425237555, + -27.611459208953306 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 58, + "position_m": [ + 0.049274077999946146, + -0.2164626823598537, + -0.015180140524009735 + ], + "position_mm": [ + 49.274077999946144, + -216.4626823598537, + -15.180140524009735 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 63, + "position_m": [ + 0.7761506146496527, + -0.23619672232017555, + -0.027315011404149235 + ], + "position_mm": [ + 776.1506146496528, + -236.19672232017555, + -27.315011404149235 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 64, + "position_m": [ + -0.021367768952249407, + -0.18799883507396525, + -0.028766591355003198 + ], + "position_mm": [ + -21.367768952249406, + -187.99883507396527, + -28.766591355003197 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 66, + "position_m": [ + 0.21048892611014633, + -0.36448485080838855, + -0.02763083806123745 + ], + "position_mm": [ + 210.48892611014634, + -364.48485080838856, + -27.63083806123745 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 68, + "position_m": [ + 0.5752693901766617, + 0.17398873435719228, + -0.027994058662268947 + ], + "position_mm": [ + 575.2693901766617, + 173.98873435719227, + -27.994058662268948 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 69, + "position_m": [ + 0.005933028549541585, + -0.27780699409038456, + -0.027204495747975184 + ], + "position_mm": [ + 5.933028549541585, + -277.80699409038453, + -27.204495747975184 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 72, + "position_m": [ + 0.4426198066220421, + 0.19423204923131493, + -0.02920256740393211 + ], + "position_mm": [ + 442.61980662204206, + 194.23204923131493, + -29.202567403932107 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 95, + "position_m": [ + 0.1862365054575632, + -0.2754708891060067, + -0.02765225956351661 + ], + "position_mm": [ + 186.2365054575632, + -275.4708891060067, + -27.652259563516612 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 97, + "position_m": [ + 0.30503555236174007, + -0.36027921588792944, + -0.02988545771567615 + ], + "position_mm": [ + 305.0355523617401, + -360.2792158879294, + -29.88545771567615 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 102, + "position_m": [ + 0.6518917468365857, + -0.22362319522420526, + -0.027464164286636016 + ], + "position_mm": [ + 651.8917468365856, + -223.62319522420526, + -27.464164286636016 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 103, + "position_m": [ + 0.10604116127175975, + -0.19079457033336, + -0.026858439286728025 + ], + "position_mm": [ + 106.04116127175975, + -190.79457033336, + -26.858439286728025 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 113, + "position_m": [ + 0.31054358200670856, + -0.1545844188455266, + 0.1568441679379482 + ], + "position_mm": [ + 310.54358200670856, + -154.58441884552659, + 156.84416793794819 + ], + "link": "Arm2", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 208, + "position_m": [ + 0.35331211082907843, + -0.09039999704100614, + 0.0017657354791895423 + ], + "position_mm": [ + 353.31211082907845, + -90.39999704100615, + 1.7657354791895423 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 214, + "position_m": [ + 0.34794334844943875, + -0.010593262890899601, + 0.0003310010368781333 + ], + "position_mm": [ + 347.94334844943876, + -10.593262890899602, + 0.3310010368781333 + ], + "link": "Board", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 218, + "position_m": [ + 0.3556536670495354, + -0.10282665495548073, + 0.20119963249354694 + ], + "position_mm": [ + 355.6536670495354, + -102.82665495548072, + 201.19963249354694 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 219, + "position_m": [ + 0.35475219038364425, + -0.16759961385190542, + 0.11576981594715738 + ], + "position_mm": [ + 354.75219038364423, + -167.59961385190542, + 115.76981594715738 + ], + "link": "Arm2", + "normal": [ + 1.0, + 0.0, + 0.0 + ] + }, + { + "marker_id": 231, + "position_m": [ + 0.31856868844695724, + -0.01754178478103975, + 0.30839394046806384 + ], + "position_mm": [ + 318.56868844695725, + -17.541784781039752, + 308.3939404680638 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.7071067811865475, + 0.7071067811865475 + ] + }, + { + "marker_id": 243, + "position_m": [ + 0.22907703416992253, + -0.03689615563453885, + 0.3055584959009441 + ], + "position_mm": [ + 229.07703416992254, + -36.89615563453885, + 305.5584959009441 + ], + "link": "Arm1", + "normal": [ + 0.0, + -1.0, + 0.0 + ] + }, + { + "marker_id": 246, + "position_m": [ + 0.31850335218855774, + -0.04174174354096136, + 0.2969052011518063 + ], + "position_mm": [ + 318.50335218855776, + -41.74174354096136, + 296.9052011518063 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + }, + { + "marker_id": 247, + "position_m": [ + 0.2813097179594988, + -0.0411368252481122, + 0.301650443668577 + ], + "position_mm": [ + 281.30971795949876, + -41.1368252481122, + 301.650443668577 + ], + "link": "Ellbow", + "normal": [ + 0.0, + 0.0, + 1.0 + ] + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/render_d_aruco_detection.json b/data/camera_study/Scene10/k4_defg/render_d_aruco_detection.json new file mode 100644 index 0000000..5d1a58e --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/render_d_aruco_detection.json @@ -0,0 +1,1311 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:13Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "d", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.npz", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_d.png", + "image_sha256": "62e03d1a72df6ace64f3edf39f814b0e48c63c4b06cd21705bd69cd08afa442a", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 15, + "num_rejected_candidates": 18 + }, + "detections": [ + { + "observation_id": "a1f749e0-02bb-4bf2-9157-ea0367cc7415", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 742.0, + 906.0 + ], + [ + 797.0, + 913.0 + ], + [ + 796.0, + 973.0 + ], + [ + 741.0, + 965.0 + ] + ], + "center_px": [ + 769.0, + 939.25 + ], + "quality": { + "area_px": 3280.0, + "perimeter_px": 230.03924179077148, + "sharpness": { + "laplacian_var": 235.03135651883824 + }, + "contrast": { + "p05": 24.0, + "p95": 170.0, + "dynamic_range": 146.0, + "mean_gray": 71.34429223744293, + "std_gray": 60.34595999329839 + }, + "geometry": { + "distance_to_center_norm": 0.4469395875930786, + "distance_to_border_px": 107.0 + }, + "edge_ratio": 1.0823298168515911, + "edge_lengths_px": [ + 55.44366455078125, + 60.008331298828125, + 55.578773498535156, + 59.00847244262695 + ] + }, + "confidence": 0.9239327831777916 + }, + { + "observation_id": "a3e279ea-6b4f-458c-9e97-0e9a7a154f4d", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 889.0, + 943.0 + ], + [ + 916.0, + 987.0 + ], + [ + 864.0, + 1021.0 + ], + [ + 835.0, + 979.0 + ] + ], + "center_px": [ + 876.0, + 982.5 + ], + "quality": { + "area_px": 3259.0, + "perimeter_px": 229.6916618347168, + "sharpness": { + "laplacian_var": 61.572482510446996 + }, + "contrast": { + "p05": 8.0, + "p95": 102.0, + "dynamic_range": 94.0, + "mean_gray": 52.3137789904502, + "std_gray": 40.795642464164395 + }, + "geometry": { + "distance_to_center_norm": 0.5213257670402527, + "distance_to_border_px": 59.0 + }, + "edge_ratio": 1.2715701940712816, + "edge_lengths_px": [ + 51.62363815307617, + 62.12889862060547, + 51.03919982910156, + 64.8999252319336 + ] + }, + "confidence": 0.4035200127470337 + }, + { + "observation_id": "c47da33e-345a-4085-b18d-24c059706106", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 918.0, + 685.0 + ], + [ + 956.0, + 716.0 + ], + [ + 934.0, + 773.0 + ], + [ + 895.0, + 742.0 + ] + ], + "center_px": [ + 925.75, + 729.0 + ], + "quality": { + "area_px": 2892.0, + "perimeter_px": 221.4241943359375, + "sharpness": { + "laplacian_var": 65.75925962559084 + }, + "contrast": { + "p05": 5.0, + "p95": 83.0, + "dynamic_range": 78.0, + "mean_gray": 36.39875065070276, + "std_gray": 31.82755916882834 + }, + "geometry": { + "distance_to_center_norm": 0.31042397022247314, + "distance_to_border_px": 307.0 + }, + "edge_ratio": 1.2533531491081307, + "edge_lengths_px": [ + 49.04079818725586, + 61.09828186035156, + 49.81967544555664, + 61.46543884277344 + ] + }, + "confidence": 0.4262916519882062 + }, + { + "observation_id": "0e56d6d5-ad95-42df-aa49-c7d975b795e1", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1006.0, + 434.0 + ], + [ + 1040.0, + 464.0 + ], + [ + 1023.0, + 519.0 + ], + [ + 983.0, + 494.0 + ] + ], + "center_px": [ + 1013.0, + 477.75 + ], + "quality": { + "area_px": 2677.5, + "perimeter_px": 214.33768844604492, + "sharpness": { + "laplacian_var": 63.84585482864622 + }, + "contrast": { + "p05": 4.0, + "p95": 81.0, + "dynamic_range": 77.0, + "mean_gray": 29.46114864864865, + "std_gray": 31.00050238673812 + }, + "geometry": { + "distance_to_center_norm": 0.33282196521759033, + "distance_to_border_px": 400.0 + }, + "edge_ratio": 1.4171338730692165, + "edge_lengths_px": [ + 45.343135833740234, + 57.567352294921875, + 47.16990661621094, + 64.25729370117188 + ] + }, + "confidence": 0.3613610332351109 + }, + { + "observation_id": "3aa8d4c6-7dd8-41e5-9f7f-a4b303fc7e6c", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 994.0, + 187.0 + ], + [ + 1046.0, + 190.0 + ], + [ + 1029.0, + 238.0 + ], + [ + 978.0, + 230.0 + ] + ], + "center_px": [ + 1011.75, + 211.25 + ], + "quality": { + "area_px": 2434.0, + "perimeter_px": 200.51189422607422, + "sharpness": { + "laplacian_var": 737.7557921421737 + }, + "contrast": { + "p05": 56.0, + "p95": 183.0, + "dynamic_range": 127.0, + "mean_gray": 101.10567632850241, + "std_gray": 52.34786160983359 + }, + "geometry": { + "distance_to_center_norm": 0.48837676644325256, + "distance_to_border_px": 187.0 + }, + "edge_ratio": 1.1352691889411037, + "edge_lengths_px": [ + 52.08646774291992, + 50.9215087890625, + 51.62363815307617, + 45.880279541015625 + ] + }, + "confidence": 0.8808483571484285 + }, + { + "observation_id": "eec48f99-9f44-4e3b-bf9b-bfe70a9e986b", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 920.0, + 169.0 + ], + [ + 969.0, + 170.0 + ], + [ + 953.0, + 218.0 + ], + [ + 902.0, + 215.0 + ] + ], + "center_px": [ + 936.0, + 193.0 + ], + "quality": { + "area_px": 2384.0, + "perimeter_px": 200.09115982055664, + "sharpness": { + "laplacian_var": 675.8367068624159 + }, + "contrast": { + "p05": 58.0, + "p95": 184.0, + "dynamic_range": 126.0, + "mean_gray": 125.61893054701905, + "std_gray": 52.20639937589474 + }, + "geometry": { + "distance_to_center_norm": 0.4541509747505188, + "distance_to_border_px": 169.0 + }, + "edge_ratio": 1.042398381472962, + "edge_lengths_px": [ + 49.01020431518555, + 50.59644317626953, + 51.088157653808594, + 49.39635467529297 + ] + }, + "confidence": 0.9593261249954639 + }, + { + "observation_id": "11ea557f-13ea-407e-8d9b-1c434718991d", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 837.0, + 569.0 + ], + [ + 877.0, + 568.0 + ], + [ + 857.0, + 624.0 + ], + [ + 816.0, + 623.0 + ] + ], + "center_px": [ + 846.75, + 596.0 + ], + "quality": { + "area_px": 2227.5, + "perimeter_px": 198.4285888671875, + "sharpness": { + "laplacian_var": 456.8683277511788 + }, + "contrast": { + "p05": 43.0, + "p95": 185.0, + "dynamic_range": 142.0, + "mean_gray": 85.2088948787062, + "std_gray": 56.487417453665174 + }, + "geometry": { + "distance_to_center_norm": 0.15396633744239807, + "distance_to_border_px": 456.0 + }, + "edge_ratio": 1.486142577830794, + "edge_lengths_px": [ + 40.01249694824219, + 59.46427536010742, + 41.01219177246094, + 57.93962478637695 + ] + }, + "confidence": 0.6728829487273165 + }, + { + "observation_id": "a8ab61dd-9d9f-4c2b-a7da-b3b5dff16764", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 380.0, + 1053.0 + ], + [ + 418.0, + 1028.0 + ], + [ + 462.0, + 1043.0 + ], + [ + 426.0, + 1069.0 + ] + ], + "center_px": [ + 421.5, + 1048.25 + ], + "quality": { + "area_px": 1721.0, + "perimeter_px": 185.08320999145508, + "sharpness": { + "laplacian_var": 401.0408793146889 + }, + "contrast": { + "p05": 16.0, + "p95": 171.0, + "dynamic_range": 155.0, + "mean_gray": 91.72839506172839, + "std_gray": 64.0365880429505 + }, + "geometry": { + "distance_to_center_norm": 0.6549152135848999, + "distance_to_border_px": 11.0 + }, + "edge_ratio": 1.0967404836818018, + "edge_lengths_px": [ + 45.486263275146484, + 46.48655700683594, + 44.40720748901367, + 48.703182220458984 + ] + }, + "confidence": 0.20059440065661768 + }, + { + "observation_id": "b1782924-c606-42c8-a812-412a62f2dfaf", + "type": "aruco", + "marker_id": 242, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 839.0, + 266.0 + ], + [ + 854.0, + 309.0 + ], + [ + 811.0, + 306.0 + ], + [ + 796.0, + 265.0 + ] + ], + "center_px": [ + 825.0, + 286.5 + ], + "quality": { + "area_px": 1776.0, + "perimeter_px": 175.31510162353516, + "sharpness": { + "laplacian_var": 240.92017426523984 + }, + "contrast": { + "p05": 22.0, + "p95": 153.0, + "dynamic_range": 131.0, + "mean_gray": 74.06045751633987, + "std_gray": 53.6075481691311 + }, + "geometry": { + "distance_to_center_norm": 0.3048724830150604, + "distance_to_border_px": 265.0 + }, + "edge_ratio": 1.0588111649951575, + "edge_lengths_px": [ + 45.54119110107422, + 43.104522705078125, + 43.65776062011719, + 43.011627197265625 + ] + }, + "confidence": 0.9444554733275536 + }, + { + "observation_id": "cef66f7e-0a82-4bca-83e2-fa5b6fdd2240", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 992.0, + 902.0 + ], + [ + 1041.0, + 917.0 + ], + [ + 1015.0, + 938.0 + ], + [ + 966.0, + 922.0 + ] + ], + "center_px": [ + 1003.5, + 919.75 + ], + "quality": { + "area_px": 1407.5, + "perimeter_px": 169.01459884643555, + "sharpness": { + "laplacian_var": 202.21712799530312 + }, + "contrast": { + "p05": 11.0, + "p95": 135.0, + "dynamic_range": 124.0, + "mean_gray": 60.230610134436404, + "std_gray": 46.98590047860021 + }, + "geometry": { + "distance_to_center_norm": 0.5265568494796753, + "distance_to_border_px": 142.0 + }, + "edge_ratio": 1.5714104130928346, + "edge_lengths_px": [ + 51.244510650634766, + 33.42155075073242, + 51.54609680175781, + 32.80244064331055 + ] + }, + "confidence": 0.5971281121184089 + }, + { + "observation_id": "6ebed485-a5c8-4091-85b0-9182d0895f49", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 828.0, + 160.0 + ], + [ + 872.0, + 162.0 + ], + [ + 849.0, + 192.0 + ], + [ + 804.0, + 188.0 + ] + ], + "center_px": [ + 838.25, + 175.5 + ], + "quality": { + "area_px": 1361.0, + "perimeter_px": 163.9031524658203, + "sharpness": { + "laplacian_var": 634.8821505010796 + }, + "contrast": { + "p05": 22.0, + "p95": 179.0, + "dynamic_range": 157.0, + "mean_gray": 93.81072210065645, + "std_gray": 65.74062367039625 + }, + "geometry": { + "distance_to_center_norm": 0.4257793128490448, + "distance_to_border_px": 160.0 + }, + "edge_ratio": 1.2250450560973367, + "edge_lengths_px": [ + 44.04542922973633, + 37.80211639404297, + 45.17742919921875, + 36.878177642822266 + ] + }, + "confidence": 0.740653030529222 + }, + { + "observation_id": "e64288c7-b857-47a5-9185-3ca41f973a99", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 91.0, + 932.0 + ], + [ + 132.0, + 913.0 + ], + [ + 165.0, + 927.0 + ], + [ + 125.0, + 947.0 + ] + ], + "center_px": [ + 128.25, + 929.75 + ], + "quality": { + "area_px": 1240.5, + "perimeter_px": 162.91856002807617, + "sharpness": { + "laplacian_var": 640.6271417753217 + }, + "contrast": { + "p05": 17.0, + "p95": 172.0, + "dynamic_range": 155.0, + "mean_gray": 88.50410316529894, + "std_gray": 59.8365616473406 + }, + "geometry": { + "distance_to_center_norm": 0.7873013019561768, + "distance_to_border_px": 91.0 + }, + "edge_ratio": 1.2605971300139012, + "edge_lengths_px": [ + 45.18849563598633, + 35.84689712524414, + 44.72135925292969, + 37.161808013916016 + ] + }, + "confidence": 0.6560383014602613 + }, + { + "observation_id": "32725eb2-2fdd-4298-b8d1-0e1fafb0c3de", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 384.0, + 918.0 + ], + [ + 416.0, + 899.0 + ], + [ + 455.0, + 911.0 + ], + [ + 424.0, + 931.0 + ] + ], + "center_px": [ + 419.75, + 914.75 + ], + "quality": { + "area_px": 1164.0, + "perimeter_px": 156.97121810913086, + "sharpness": { + "laplacian_var": 1305.0180528018368 + }, + "contrast": { + "p05": 23.0, + "p95": 171.0, + "dynamic_range": 148.0, + "mean_gray": 125.7001287001287, + "std_gray": 50.591649190438574 + }, + "geometry": { + "distance_to_center_norm": 0.5335504412651062, + "distance_to_border_px": 149.0 + }, + "edge_ratio": 1.1400787327238997, + "edge_lengths_px": [ + 37.2155876159668, + 40.804412841796875, + 36.8917350769043, + 42.05948257446289 + ] + }, + "confidence": 0.6806547457875692 + }, + { + "observation_id": "cf11ab27-5624-4b5b-b158-932b1c3ff431", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1061.0, + 838.0 + ], + [ + 1107.0, + 851.0 + ], + [ + 1086.0, + 869.0 + ], + [ + 1038.0, + 855.0 + ] + ], + "center_px": [ + 1073.0, + 853.25 + ], + "quality": { + "area_px": 1119.5, + "perimeter_px": 154.0610065460205, + "sharpness": { + "laplacian_var": 699.1501103553894 + }, + "contrast": { + "p05": 27.0, + "p95": 147.0, + "dynamic_range": 120.0, + "mean_gray": 93.41610738255034, + "std_gray": 44.372659317587036 + }, + "geometry": { + "distance_to_center_norm": 0.5243862867355347, + "distance_to_border_px": 211.0 + }, + "edge_ratio": 1.8077537619585837, + "edge_lengths_px": [ + 47.801673889160156, + 27.658634185791016, + 50.0, + 28.600698471069336 + ] + }, + "confidence": 0.41285121294657384 + }, + { + "observation_id": "cb224f1e-7ed9-472d-8e1f-15485c774706", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 205.0, + 850.0 + ], + [ + 240.0, + 834.0 + ], + [ + 272.0, + 846.0 + ], + [ + 238.0, + 862.0 + ] + ], + "center_px": [ + 238.75, + 848.0 + ], + "quality": { + "area_px": 934.0, + "perimeter_px": 145.35046768188477, + "sharpness": { + "laplacian_var": 1079.742643238912 + }, + "contrast": { + "p05": 16.0, + "p95": 168.0, + "dynamic_range": 152.0, + "mean_gray": 86.53560830860535, + "std_gray": 57.948273841825284 + }, + "geometry": { + "distance_to_center_norm": 0.6348573565483093, + "distance_to_border_px": 205.0 + }, + "edge_ratio": 1.1260460248127115, + "edge_lengths_px": [ + 38.4837646484375, + 34.1760139465332, + 37.57658767700195, + 35.11410140991211 + ] + }, + "confidence": 0.5529673325477359 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 539.0, + 665.0 + ], + [ + 601.0, + 657.0 + ], + [ + 722.0, + 692.0 + ], + [ + 705.0, + 711.0 + ] + ], + "center_px": [ + 641.75, + 681.25 + ], + "area_px": 3537.0 + }, + { + "image_points_px": [ + [ + 513.0, + 939.0 + ], + [ + 547.0, + 920.0 + ], + [ + 585.0, + 935.0 + ], + [ + 554.0, + 954.0 + ] + ], + "center_px": [ + 549.75, + 937.0 + ], + "area_px": 1238.0 + }, + { + "image_points_px": [ + [ + 256.0, + 906.0 + ], + [ + 289.0, + 888.0 + ], + [ + 327.0, + 900.0 + ], + [ + 291.0, + 919.0 + ] + ], + "center_px": [ + 290.75, + 903.25 + ], + "area_px": 1106.5 + }, + { + "image_points_px": [ + [ + 1378.0, + 809.0 + ], + [ + 1388.0, + 794.0 + ], + [ + 1434.0, + 804.0 + ], + [ + 1425.0, + 819.0 + ] + ], + "center_px": [ + 1406.25, + 806.5 + ], + "area_px": 792.5 + }, + { + "image_points_px": [ + [ + 492.0, + 714.0 + ], + [ + 517.0, + 702.0 + ], + [ + 551.0, + 710.0 + ], + [ + 527.0, + 723.0 + ] + ], + "center_px": [ + 521.75, + 712.25 + ], + "area_px": 639.5 + }, + { + "image_points_px": [ + [ + 1357.0, + 753.0 + ], + [ + 1371.0, + 740.0 + ], + [ + 1413.0, + 751.0 + ], + [ + 1400.0, + 763.0 + ] + ], + "center_px": [ + 1385.25, + 751.75 + ], + "area_px": 673.0 + }, + { + "image_points_px": [ + [ + 861.0, + 864.0 + ], + [ + 906.0, + 866.0 + ], + [ + 914.0, + 872.0 + ], + [ + 888.0, + 873.0 + ] + ], + "center_px": [ + 892.25, + 868.75 + ], + "area_px": 257.5 + }, + { + "image_points_px": [ + [ + 910.0, + 411.0 + ], + [ + 902.0, + 436.0 + ], + [ + 884.0, + 439.0 + ], + [ + 897.0, + 405.0 + ] + ], + "center_px": [ + 898.25, + 422.75 + ], + "area_px": 473.0 + }, + { + "image_points_px": [ + [ + 926.0, + 925.0 + ], + [ + 927.0, + 944.0 + ], + [ + 919.0, + 968.0 + ], + [ + 918.0, + 955.0 + ] + ], + "center_px": [ + 922.5, + 948.0 + ], + "area_px": 155.0 + }, + { + "image_points_px": [ + [ + 848.0, + 907.0 + ], + [ + 854.0, + 911.0 + ], + [ + 859.0, + 937.0 + ], + [ + 857.0, + 945.0 + ] + ], + "center_px": [ + 854.5, + 925.0 + ], + "area_px": 142.0 + }, + { + "image_points_px": [ + [ + 973.0, + 589.0 + ], + [ + 977.0, + 595.0 + ], + [ + 965.0, + 626.0 + ], + [ + 962.0, + 618.0 + ] + ], + "center_px": [ + 969.25, + 607.0 + ], + "area_px": 185.5 + }, + { + "image_points_px": [ + [ + 946.0, + 260.0 + ], + [ + 928.0, + 294.0 + ], + [ + 936.0, + 270.0 + ], + [ + 942.0, + 260.0 + ] + ], + "center_px": [ + 938.0, + 271.0 + ], + "area_px": 100.0 + }, + { + "image_points_px": [ + [ + 831.0, + 639.0 + ], + [ + 795.0, + 649.0 + ], + [ + 796.0, + 645.0 + ], + [ + 812.0, + 640.0 + ] + ], + "center_px": [ + 808.5, + 643.25 + ], + "area_px": 106.5 + }, + { + "image_points_px": [ + [ + 957.0, + 355.0 + ], + [ + 971.0, + 365.0 + ], + [ + 967.0, + 381.0 + ], + [ + 961.0, + 372.0 + ] + ], + "center_px": [ + 964.0, + 368.25 + ], + "area_px": 165.0 + }, + { + "image_points_px": [ + [ + 1107.0, + 214.0 + ], + [ + 1106.0, + 229.0 + ], + [ + 1099.0, + 243.0 + ], + [ + 1103.0, + 219.0 + ] + ], + "center_px": [ + 1103.75, + 226.25 + ], + "area_px": 83.5 + }, + { + "image_points_px": [ + [ + 275.0, + 926.0 + ], + [ + 284.0, + 927.0 + ], + [ + 303.0, + 935.0 + ], + [ + 277.0, + 929.0 + ] + ], + "center_px": [ + 284.75, + 929.25 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 927.0, + 944.0 + ], + [ + 921.0, + 969.0 + ], + [ + 918.0, + 971.0 + ], + [ + 922.0, + 951.0 + ] + ], + "center_px": [ + 922.0, + 958.75 + ], + "area_px": 67.5 + }, + { + "image_points_px": [ + [ + 507.0, + 975.0 + ], + [ + 526.0, + 982.0 + ], + [ + 529.0, + 986.0 + ], + [ + 509.0, + 979.0 + ] + ], + "center_px": [ + 517.75, + 980.5 + ], + "area_px": 60.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/render_d_camera_pose.json b/data/camera_study/Scene10/k4_defg/render_d_camera_pose.json new file mode 100644 index 0000000..ded146f --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/render_d_camera_pose.json @@ -0,0 +1,285 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:15Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_defg\\render_d_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "d", + "camera_matrix": [ + [ + 1994.6785888671875, + 0.0, + 720.2863159179688 + ], + [ + 0.0, + 1997.283935546875, + 541.2328491210938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 6, + "used_marker_ids": [ + 95, + 208, + 69, + 103, + 214, + 64 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.010671415477997622, + 0.0018696542807179611, + 0.001824150025738836, + 0.0018241474426834877 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 5.164164330259058, + "residual_median_px": 5.398072385043921, + "residual_max_px": 7.027422341283123, + "sigma2_normalized": 6.6550277836154934e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.8166700601577759, + 0.5771039724349976, + -0.0010227123275399208 + ], + [ + 0.16298067569732666, + -0.2323361337184906, + -0.9588833451271057 + ], + [ + -0.5536129474639893, + 0.7829245924949646, + -0.2837987542152405 + ] + ], + "translation_m": [ + -0.11485252529382706, + 0.08547275513410568, + 1.1249300241470337 + ], + "rvec_rad": [ + 1.7923624327425687, + 0.5686287097896567, + -0.4261428430202902 + ] + }, + "camera_in_world": { + "position_m": [ + 0.7026420831680298, + -0.7945951223373413, + 0.4010946750640869 + ], + "position_mm": [ + 702.64208984375, + -794.5950927734375, + 401.09466552734375 + ], + "orientation_deg": { + "roll": 109.92484283447266, + "pitch": 33.615230560302734, + "yaw": 11.286093711853027 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.0003498424001015397, + 6.823486661029942e-05, + 4.142063730678703e-05, + -5.345001723379169e-06, + -7.396858110018478e-05, + -1.2641475041979003e-05 + ], + [ + 6.823486661029988e-05, + 0.00010295516106391171, + -9.137229494897015e-05, + 2.281178954254835e-05, + -1.979611332364414e-05, + -7.605354993482835e-06 + ], + [ + 4.142063730678625e-05, + -9.137229494897096e-05, + 0.0002702927022549336, + -4.213130837183371e-05, + -7.56149612726986e-06, + 9.26150663825411e-06 + ], + [ + -5.345001723379082e-06, + 2.281178954254845e-05, + -4.2131308371833616e-05, + 8.962887675732753e-06, + -2.575675434153523e-07, + -3.848871385514968e-06 + ], + [ + -7.396858110018466e-05, + -1.9796113323644056e-05, + -7.561496127270001e-06, + -2.575675434153093e-07, + 1.8000566759428326e-05, + 7.99389653027148e-06 + ], + [ + -1.2641475041978559e-05, + -7.605354993482897e-06, + 9.261506638254348e-06, + -3.848871385514858e-06, + 7.993896530271401e-06, + 2.7756310749504287e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 1.07166452425966, + 0.581362070062273, + 0.9419759016685776 + ], + "tvec_std_m": [ + 0.0029938082229382617, + 0.004242707479832698, + 0.005268425832210631 + ] + }, + "camera_center_std_m": [ + 0.01190826606439346, + 0.013088153786860686, + 0.01603645350806163 + ], + "camera_center_std_mm": [ + 11.90826606439346, + 13.088153786860685, + 16.03645350806163 + ], + "orientation_std_deg": { + "roll": 1.2477636245413861, + "pitch": 0.8325671808473429, + "yaw": 0.699613718760565 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 95, + "observed_center_px": [ + 421.5, + 1048.25 + ], + "projected_center_px": [ + 423.55438232421875, + 1045.9644775390625 + ], + "reprojection_error_px": 3.0731253885112206, + "confidence": 0.20059440065661768 + }, + { + "marker_id": 208, + "observed_center_px": [ + 1003.5, + 919.75 + ], + "projected_center_px": [ + 996.4899291992188, + 920.2435302734375 + ], + "reprojection_error_px": 7.027422341283123, + "confidence": 0.5971281121184089 + }, + { + "marker_id": 69, + "observed_center_px": [ + 128.25, + 929.75 + ], + "projected_center_px": [ + 123.95993041992188, + 934.0740966796875 + ], + "reprojection_error_px": 6.091182898025322, + "confidence": 0.6560383014602613 + }, + { + "marker_id": 103, + "observed_center_px": [ + 419.75, + 914.75 + ], + "projected_center_px": [ + 425.61590576171875, + 913.2058715820312 + ], + "reprojection_error_px": 6.065738452698394, + "confidence": 0.6806547457875692 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1073.0, + 853.25 + ], + "projected_center_px": [ + 1077.615234375, + 854.2874755859375 + ], + "reprojection_error_px": 4.730406317389448, + "confidence": 0.41285121294657384 + }, + { + "marker_id": 64, + "observed_center_px": [ + 238.75, + 848.0 + ], + "projected_center_px": [ + 237.76194763183594, + 846.0165405273438 + ], + "reprojection_error_px": 2.2159329777555143, + "confidence": 0.5529673325477359 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/render_e_aruco_detection.json b/data/camera_study/Scene10/k4_defg/render_e_aruco_detection.json new file mode 100644 index 0000000..7133c9f --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/render_e_aruco_detection.json @@ -0,0 +1,1199 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:13Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "e", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.npz", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_e.png", + "image_sha256": "d9465055b192acfccc2cb79885882693d4f0d01141ecc06177116dded5d564cb", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 12, + "num_rejected_candidates": 20 + }, + "detections": [ + { + "observation_id": "85bdd1a6-a062-4dc7-abee-d2b2266d3882", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 986.0, + 1027.0 + ], + [ + 1024.0, + 1012.0 + ], + [ + 1062.0, + 1033.0 + ], + [ + 1026.0, + 1050.0 + ] + ], + "center_px": [ + 1024.5, + 1030.5 + ], + "quality": { + "area_px": 1438.0, + "perimeter_px": 170.22312927246094, + "sharpness": { + "laplacian_var": 453.1861132150195 + }, + "contrast": { + "p05": 14.0, + "p95": 153.0, + "dynamic_range": 139.0, + "mean_gray": 72.75522388059701, + "std_gray": 50.64349874612125 + }, + "geometry": { + "distance_to_center_norm": 0.6414783596992493, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1589726701270886, + "edge_lengths_px": [ + 40.853397369384766, + 43.416587829589844, + 39.81205749511719, + 46.14108657836914 + ] + }, + "confidence": 0.4963016081621025 + }, + { + "observation_id": "a6436249-1bcf-4b7b-af79-d91e1b04836e", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1277.0, + 1049.0 + ], + [ + 1308.0, + 1032.0 + ], + [ + 1355.0, + 1053.0 + ], + [ + 1324.0, + 1071.0 + ] + ], + "center_px": [ + 1316.0, + 1051.25 + ], + "quality": { + "area_px": 1489.0, + "perimeter_px": 174.5745086669922, + "sharpness": { + "laplacian_var": 412.816421944627 + }, + "contrast": { + "p05": 13.0, + "p95": 145.0, + "dynamic_range": 132.0, + "mean_gray": 61.47008547008547, + "std_gray": 49.57416295951042 + }, + "geometry": { + "distance_to_center_norm": 0.8724822998046875, + "distance_to_border_px": 9.0 + }, + "edge_ratio": 1.46778745364521, + "edge_lengths_px": [ + 35.35533905029297, + 51.4781494140625, + 35.84689712524414, + 51.89412307739258 + ] + }, + "confidence": 0.12173424671007582 + }, + { + "observation_id": "4ea32e88-6b9f-4641-86b5-d8b907f3caf1", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 780.0, + 466.0 + ], + [ + 811.0, + 497.0 + ], + [ + 790.0, + 533.0 + ], + [ + 759.0, + 507.0 + ] + ], + "center_px": [ + 785.0, + 500.75 + ], + "quality": { + "area_px": 1792.0, + "perimeter_px": 172.04298400878906, + "sharpness": { + "laplacian_var": 431.52108687263 + }, + "contrast": { + "p05": 4.0, + "p95": 86.0, + "dynamic_range": 82.0, + "mean_gray": 35.97742474916388, + "std_gray": 31.48995686460428 + }, + "geometry": { + "distance_to_center_norm": 0.08436811715364456, + "distance_to_border_px": 466.0 + }, + "edge_ratio": 1.138540089676814, + "edge_lengths_px": [ + 43.84062194824219, + 41.67733383178711, + 40.45985794067383, + 46.06517028808594 + ] + }, + "confidence": 0.8783177764815114 + }, + { + "observation_id": "e73f481b-26d3-4a42-94d1-157023c47bca", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 777.0, + 986.0 + ], + [ + 818.0, + 973.0 + ], + [ + 849.0, + 994.0 + ], + [ + 809.0, + 1009.0 + ] + ], + "center_px": [ + 813.25, + 990.5 + ], + "quality": { + "area_px": 1332.0, + "perimeter_px": 162.58305740356445, + "sharpness": { + "laplacian_var": 675.3602149959689 + }, + "contrast": { + "p05": 19.700000000000003, + "p95": 154.0, + "dynamic_range": 134.3, + "mean_gray": 93.49617486338798, + "std_gray": 46.101180438545676 + }, + "geometry": { + "distance_to_center_norm": 0.5111664533615112, + "distance_to_border_px": 71.0 + }, + "edge_ratio": 1.1487138651855313, + "edge_lengths_px": [ + 43.011627197265625, + 37.44329071044922, + 42.72002029418945, + 39.408119201660156 + ] + }, + "confidence": 0.7730384623298485 + }, + { + "observation_id": "e126f545-496f-4cc8-b51c-78ed3a48b89b", + "type": "aruco", + "marker_id": 45, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 749.0, + 642.0 + ], + [ + 771.0, + 676.0 + ], + [ + 734.0, + 695.0 + ], + [ + 713.0, + 662.0 + ] + ], + "center_px": [ + 741.75, + 668.75 + ], + "quality": { + "area_px": 1642.0, + "perimeter_px": 162.38792037963867, + "sharpness": { + "laplacian_var": 92.67615631030367 + }, + "contrast": { + "p05": 7.0, + "p95": 101.0, + "dynamic_range": 94.0, + "mean_gray": 53.06440071556351, + "std_gray": 38.78329965301281 + }, + "geometry": { + "distance_to_center_norm": 0.14508245885372162, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0633526883983422, + "edge_lengths_px": [ + 40.49691390991211, + 41.59326934814453, + 39.11521530151367, + 41.18252182006836 + ] + }, + "confidence": 0.7262889453443055 + }, + { + "observation_id": "8df6f728-7d0b-44b4-bc5a-e19c699bdfa8", + "type": "aruco", + "marker_id": 218, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 865.0, + 314.0 + ], + [ + 896.0, + 337.0 + ], + [ + 879.0, + 373.0 + ], + [ + 847.0, + 352.0 + ] + ], + "center_px": [ + 871.75, + 344.0 + ], + "quality": { + "area_px": 1550.5, + "perimeter_px": 158.7354850769043, + "sharpness": { + "laplacian_var": 91.32963410546913 + }, + "contrast": { + "p05": 3.0, + "p95": 80.0, + "dynamic_range": 77.0, + "mean_gray": 29.31711880261927, + "std_gray": 30.16374856556423 + }, + "geometry": { + "distance_to_center_norm": 0.27542126178741455, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0985563073040754, + "edge_lengths_px": [ + 38.60051727294922, + 39.81205749511719, + 38.27531814575195, + 42.04759216308594 + ] + }, + "confidence": 0.6668204157436237 + }, + { + "observation_id": "27dd176b-2905-4f53-b58a-eff8541b6f73", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1071.0, + 934.0 + ], + [ + 1105.0, + 922.0 + ], + [ + 1141.0, + 939.0 + ], + [ + 1107.0, + 953.0 + ] + ], + "center_px": [ + 1106.0, + 937.0 + ], + "quality": { + "area_px": 1080.0, + "perimeter_px": 153.34338760375977, + "sharpness": { + "laplacian_var": 1315.6913698207666 + }, + "contrast": { + "p05": 34.0, + "p95": 156.0, + "dynamic_range": 122.0, + "mean_gray": 112.49931224209078, + "std_gray": 38.505501664035826 + }, + "geometry": { + "distance_to_center_norm": 0.6152436137199402, + "distance_to_border_px": 127.0 + }, + "edge_ratio": 1.128988685253164, + "edge_lengths_px": [ + 36.055511474609375, + 39.81205749511719, + 36.769554138183594, + 40.70626449584961 + ] + }, + "confidence": 0.6377388980107869 + }, + { + "observation_id": "2d7d1964-70d3-4ae7-889d-78da92326571", + "type": "aruco", + "marker_id": 244, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 981.0, + 163.0 + ], + [ + 1000.0, + 190.0 + ], + [ + 982.0, + 224.0 + ], + [ + 962.0, + 201.0 + ] + ], + "center_px": [ + 981.25, + 194.5 + ], + "quality": { + "area_px": 1164.5, + "perimeter_px": 144.45070838928223, + "sharpness": { + "laplacian_var": 96.06874104557231 + }, + "contrast": { + "p05": 4.0, + "p95": 67.0, + "dynamic_range": 63.0, + "mean_gray": 33.3358024691358, + "std_gray": 25.95401112529325 + }, + "geometry": { + "distance_to_center_norm": 0.48128148913383484, + "distance_to_border_px": 163.0 + }, + "edge_ratio": 1.393897148047905, + "edge_lengths_px": [ + 33.0151481628418, + 38.470767974853516, + 30.479501724243164, + 42.48529052734375 + ] + }, + "confidence": 0.35113079528934743 + }, + { + "observation_id": "d2dfcf73-acdd-4123-b6e2-36b1fbe1cf21", + "type": "aruco", + "marker_id": 40, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 674.0, + 619.0 + ], + [ + 703.0, + 624.0 + ], + [ + 700.0, + 664.0 + ], + [ + 672.0, + 658.0 + ] + ], + "center_px": [ + 687.25, + 641.25 + ], + "quality": { + "area_px": 1139.5, + "perimeter_px": 137.22710990905762, + "sharpness": { + "laplacian_var": 863.1978615203191 + }, + "contrast": { + "p05": 32.0, + "p95": 169.0, + "dynamic_range": 137.0, + "mean_gray": 80.9662775616083, + "std_gray": 55.08560868618617 + }, + "geometry": { + "distance_to_center_norm": 0.11823874711990356, + "distance_to_border_px": 416.0 + }, + "edge_ratio": 1.4007837305049835, + "edge_lengths_px": [ + 29.42787742614746, + 40.112342834472656, + 28.635643005371094, + 39.051246643066406 + ] + }, + "confidence": 0.542315455357842 + }, + { + "observation_id": "5ee5662f-1939-4c18-b1b3-16d6852ff4a3", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 517.0, + 788.0 + ], + [ + 550.0, + 780.0 + ], + [ + 575.0, + 794.0 + ], + [ + 540.0, + 802.0 + ] + ], + "center_px": [ + 545.5, + 791.0 + ], + "quality": { + "area_px": 668.0, + "perimeter_px": 125.43741798400879, + "sharpness": { + "laplacian_var": 1607.3082682839233 + }, + "contrast": { + "p05": 19.0, + "p95": 147.0, + "dynamic_range": 128.0, + "mean_gray": 65.39445628997868, + "std_gray": 47.873144952539 + }, + "geometry": { + "distance_to_center_norm": 0.33966439962387085, + "distance_to_border_px": 278.0 + }, + "edge_ratio": 1.3333908058760269, + "edge_lengths_px": [ + 33.95585250854492, + 28.65309715270996, + 35.902645111083984, + 26.925823211669922 + ] + }, + "confidence": 0.33398560374859715 + }, + { + "observation_id": "70239dd1-1a71-41be-92d1-f5a2a48600ea", + "type": "aruco", + "marker_id": 114, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 846.0, + 444.0 + ], + [ + 854.0, + 462.0 + ], + [ + 835.0, + 496.0 + ], + [ + 827.0, + 477.0 + ] + ], + "center_px": [ + 840.5, + 469.75 + ], + "quality": { + "area_px": 619.5, + "perimeter_px": 117.34079360961914, + "sharpness": { + "laplacian_var": 515.9082048204126 + }, + "contrast": { + "p05": 13.0, + "p95": 77.0, + "dynamic_range": 64.0, + "mean_gray": 34.12249443207127, + "std_gray": 22.140483977294974 + }, + "geometry": { + "distance_to_center_norm": 0.15498033165931702, + "distance_to_border_px": 444.0 + }, + "edge_ratio": 1.977319866342296, + "edge_lengths_px": [ + 19.697715759277344, + 38.94868469238281, + 20.615528106689453, + 38.07886505126953 + ] + }, + "confidence": 0.16709486695806255 + }, + { + "observation_id": "736712ba-751b-42cb-90ee-08a38f461f3e", + "type": "aruco", + "marker_id": 120, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 904.0, + 345.0 + ], + [ + 911.0, + 366.0 + ], + [ + 893.0, + 397.0 + ], + [ + 885.0, + 381.0 + ] + ], + "center_px": [ + 898.25, + 372.25 + ], + "quality": { + "area_px": 593.5, + "perimeter_px": 116.57765007019043, + "sharpness": { + "laplacian_var": 612.2280321521758 + }, + "contrast": { + "p05": 13.75, + "p95": 72.0, + "dynamic_range": 58.25, + "mean_gray": 30.091743119266056, + "std_gray": 19.626461861945877 + }, + "geometry": { + "distance_to_center_norm": 0.27196842432022095, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 2.2755493296600644, + "edge_lengths_px": [ + 22.135944366455078, + 35.84689712524414, + 17.8885440826416, + 40.70626449584961 + ] + }, + "confidence": 0.12660450288269692 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 955.0, + 949.0 + ], + [ + 989.0, + 936.0 + ], + [ + 1024.0, + 953.0 + ], + [ + 991.0, + 967.0 + ] + ], + "center_px": [ + 989.75, + 951.25 + ], + "area_px": 1065.5 + }, + { + "image_points_px": [ + [ + 727.0, + 881.0 + ], + [ + 763.0, + 870.0 + ], + [ + 792.0, + 891.0 + ], + [ + 756.0, + 904.0 + ] + ], + "center_px": [ + 759.5, + 886.5 + ], + "area_px": 1140.0 + }, + { + "image_points_px": [ + [ + 818.0, + 869.0 + ], + [ + 850.0, + 858.0 + ], + [ + 887.0, + 875.0 + ], + [ + 849.0, + 885.0 + ] + ], + "center_px": [ + 851.0, + 871.75 + ], + "area_px": 934.5 + }, + { + "image_points_px": [ + [ + 1115.0, + 909.0 + ], + [ + 1146.0, + 897.0 + ], + [ + 1182.0, + 914.0 + ], + [ + 1154.0, + 927.0 + ] + ], + "center_px": [ + 1149.25, + 911.75 + ], + "area_px": 985.0 + }, + { + "image_points_px": [ + [ + 1244.0, + 805.0 + ], + [ + 1274.0, + 794.0 + ], + [ + 1312.0, + 812.0 + ], + [ + 1282.0, + 821.0 + ] + ], + "center_px": [ + 1278.0, + 808.0 + ], + "area_px": 890.0 + }, + { + "image_points_px": [ + [ + 891.0, + 399.0 + ], + [ + 918.0, + 457.0 + ], + [ + 898.0, + 447.0 + ], + [ + 884.0, + 415.0 + ] + ], + "center_px": [ + 897.75, + 429.5 + ], + "area_px": 669.0 + }, + { + "image_points_px": [ + [ + 495.0, + 791.0 + ], + [ + 459.0, + 801.0 + ], + [ + 438.0, + 784.0 + ], + [ + 473.0, + 774.0 + ] + ], + "center_px": [ + 466.25, + 787.5 + ], + "area_px": 818.5 + }, + { + "image_points_px": [ + [ + 888.0, + 139.0 + ], + [ + 871.0, + 170.0 + ], + [ + 844.0, + 169.0 + ], + [ + 861.0, + 139.0 + ] + ], + "center_px": [ + 866.0, + 154.25 + ], + "area_px": 832.0 + }, + { + "image_points_px": [ + [ + 635.0, + 778.0 + ], + [ + 606.0, + 791.0 + ], + [ + 580.0, + 773.0 + ], + [ + 612.0, + 764.0 + ] + ], + "center_px": [ + 608.25, + 776.5 + ], + "area_px": 757.5 + }, + { + "image_points_px": [ + [ + 754.0, + 745.0 + ], + [ + 784.0, + 735.0 + ], + [ + 806.0, + 749.0 + ], + [ + 780.0, + 762.0 + ] + ], + "center_px": [ + 781.0, + 747.75 + ], + "area_px": 710.0 + }, + { + "image_points_px": [ + [ + 852.0, + 659.0 + ], + [ + 882.0, + 653.0 + ], + [ + 906.0, + 665.0 + ], + [ + 877.0, + 672.0 + ] + ], + "center_px": [ + 879.25, + 662.25 + ], + "area_px": 528.0 + }, + { + "image_points_px": [ + [ + 613.0, + 739.0 + ], + [ + 581.0, + 746.0 + ], + [ + 560.0, + 733.0 + ], + [ + 592.0, + 726.0 + ] + ], + "center_px": [ + 586.5, + 736.0 + ], + "area_px": 563.0 + }, + { + "image_points_px": [ + [ + 770.0, + 398.0 + ], + [ + 751.0, + 432.0 + ], + [ + 736.0, + 433.0 + ], + [ + 753.0, + 403.0 + ] + ], + "center_px": [ + 752.5, + 416.5 + ], + "area_px": 458.0 + }, + { + "image_points_px": [ + [ + 937.0, + 633.0 + ], + [ + 963.0, + 626.0 + ], + [ + 986.0, + 637.0 + ], + [ + 962.0, + 645.0 + ] + ], + "center_px": [ + 962.0, + 635.25 + ], + "area_px": 467.5 + }, + { + "image_points_px": [ + [ + 496.0, + 636.0 + ], + [ + 518.0, + 630.0 + ], + [ + 542.0, + 641.0 + ], + [ + 514.0, + 648.0 + ] + ], + "center_px": [ + 517.5, + 638.75 + ], + "area_px": 424.0 + }, + { + "image_points_px": [ + [ + 706.0, + 672.0 + ], + [ + 713.0, + 681.0 + ], + [ + 712.0, + 701.0 + ], + [ + 705.0, + 700.0 + ] + ], + "center_px": [ + 709.0, + 688.5 + ], + "area_px": 173.0 + }, + { + "image_points_px": [ + [ + 1270.0, + 652.0 + ], + [ + 1277.0, + 642.0 + ], + [ + 1299.0, + 649.0 + ], + [ + 1283.0, + 656.0 + ] + ], + "center_px": [ + 1282.25, + 649.75 + ], + "area_px": 212.0 + }, + { + "image_points_px": [ + [ + 1324.0, + 677.0 + ], + [ + 1334.0, + 678.0 + ], + [ + 1347.0, + 684.0 + ], + [ + 1327.0, + 680.0 + ] + ], + "center_px": [ + 1333.0, + 679.75 + ], + "area_px": 47.5 + }, + { + "image_points_px": [ + [ + 1335.0, + 615.0 + ], + [ + 1338.0, + 613.0 + ], + [ + 1347.0, + 613.0 + ], + [ + 1358.0, + 618.0 + ] + ], + "center_px": [ + 1344.5, + 614.75 + ], + "area_px": 50.0 + }, + { + "image_points_px": [ + [ + 779.0, + 642.0 + ], + [ + 777.0, + 658.0 + ], + [ + 774.0, + 665.0 + ], + [ + 773.0, + 659.0 + ] + ], + "center_px": [ + 775.75, + 656.0 + ], + "area_px": 43.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/render_e_camera_pose.json b/data/camera_study/Scene10/k4_defg/render_e_camera_pose.json new file mode 100644 index 0000000..127bc72 --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/render_e_camera_pose.json @@ -0,0 +1,271 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:15Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_defg\\render_e_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "e", + "camera_matrix": [ + [ + 2001.2965087890625, + 0.0, + 720.3994750976562 + ], + [ + 0.0, + 1994.771728515625, + 538.7074584960938 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 5, + "used_marker_ids": [ + 48, + 63, + 57, + 102, + 54 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.007197111808548965, + 0.001098276420089881, + 0.0009620344476883504, + 0.0009620205232011758 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 2.7281525726006493, + "residual_median_px": 2.5183121097354597, + "residual_max_px": 3.7576731420043146, + "sigma2_normalized": 2.3137087159701097e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.6321497559547424, + 0.7748407125473022, + 0.0029369741678237915 + ], + [ + 0.21024876832962036, + -0.16787971556186676, + -0.9631260633468628 + ], + [ + -0.7457762360572815, + 0.6094573736190796, + -0.26903441548347473 + ] + ], + "translation_m": [ + -0.056855153292417526, + -0.012442845851182938, + 1.5609862804412842 + ], + "rvec_rad": [ + 1.7048273936309237, + 0.8116750457158921, + -0.6120703769873145 + ] + }, + "camera_in_world": { + "position_m": [ + 1.2027034759521484, + -0.909389853477478, + 0.40814200043678284 + ], + "position_mm": [ + 1202.7034912109375, + -909.3898315429688, + 408.1419982910156 + ], + "orientation_deg": { + "roll": 113.81822204589844, + "pitch": 48.22581100463867, + "yaw": 18.396778106689453 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 0.00022441890537757206, + -7.963567536396464e-06, + -2.9398649194599163e-05, + -1.4795386871224034e-05, + -9.369620603686464e-05, + -1.2702492726669124e-05 + ], + [ + -7.963567536395407e-06, + 3.7068884464340944e-05, + -3.338378703660994e-05, + 2.6508530508930155e-05, + -6.804904795036776e-06, + -8.467045467073405e-06 + ], + [ + -2.939864919460005e-05, + -3.338378703660865e-05, + 0.00015704190560829434, + -5.550273740425191e-05, + 8.385195749589376e-06, + 3.13758938875245e-05 + ], + [ + -1.4795386871223326e-05, + 2.6508530508929867e-05, + -5.5502737404252506e-05, + 2.9231680266895845e-05, + 3.3812426915121855e-06, + -8.125563844390692e-06 + ], + [ + -9.369620603686502e-05, + -6.80490479503646e-06, + 8.385195749589481e-06, + 3.3812426915123345e-06, + 4.4878486349463374e-05, + 1.0425895360947247e-05 + ], + [ + -1.2702492726669507e-05, + -8.467045467073171e-06, + 3.137589388752461e-05, + -8.125563844390541e-06, + 1.0425895360947318e-05, + 2.9592030404347494e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.8583261662306342, + 0.3488408939722953, + 0.7180098641027528 + ], + "tvec_std_m": [ + 0.005406632987996859, + 0.006699140717246009, + 0.0054398557337807674 + ] + }, + "camera_center_std_m": [ + 0.006976893112270283, + 0.012106263892740327, + 0.01216157052134005 + ], + "camera_center_std_mm": [ + 6.976893112270283, + 12.106263892740326, + 12.16157052134005 + ], + "orientation_std_deg": { + "roll": 1.0513875130551562, + "pitch": 0.6166264667162378, + "yaw": 0.5162490597129769 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 48, + "observed_center_px": [ + 1024.5, + 1030.5 + ], + "projected_center_px": [ + 1023.4668579101562, + 1032.796630859375 + ], + "reprojection_error_px": 2.5183121097354597, + "confidence": 0.4963016081621025 + }, + { + "marker_id": 63, + "observed_center_px": [ + 1316.0, + 1051.25 + ], + "projected_center_px": [ + 1318.0511474609375, + 1052.518798828125 + ], + "reprojection_error_px": 2.4118574528279497, + "confidence": 0.12173424671007582 + }, + { + "marker_id": 57, + "observed_center_px": [ + 813.25, + 990.5 + ], + "projected_center_px": [ + 814.3992309570312, + 987.8240966796875 + ], + "reprojection_error_px": 2.912248336295932, + "confidence": 0.7730384623298485 + }, + { + "marker_id": 102, + "observed_center_px": [ + 1106.0, + 937.0 + ], + "projected_center_px": [ + 1103.0518798828125, + 934.6700439453125 + ], + "reprojection_error_px": 3.7576731420043146, + "confidence": 0.6377388980107869 + }, + { + "marker_id": 54, + "observed_center_px": [ + 545.5, + 791.0 + ], + "projected_center_px": [ + 546.1773071289062, + 792.4124755859375 + ], + "reprojection_error_px": 1.5664712661701496, + "confidence": 0.33398560374859715 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/render_f_aruco_detection.json b/data/camera_study/Scene10/k4_defg/render_f_aruco_detection.json new file mode 100644 index 0000000..3515ea0 --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/render_f_aruco_detection.json @@ -0,0 +1,2058 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:14Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "f", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.npz", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_f.png", + "image_sha256": "aa67ae34760d38a87903e73b4020db43742a978458949ff309a7b2527c548cd4", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 33, + "num_rejected_candidates": 9 + }, + "detections": [ + { + "observation_id": "42f65748-115d-4d76-a1c8-4718c95a9a8b", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1111.0, + 551.0 + ], + [ + 1128.0, + 590.0 + ], + [ + 1088.0, + 605.0 + ], + [ + 1071.0, + 566.0 + ] + ], + "center_px": [ + 1099.5, + 578.0 + ], + "quality": { + "area_px": 1815.0, + "perimeter_px": 170.52822875976562, + "sharpness": { + "laplacian_var": 705.4441714458114 + }, + "contrast": { + "p05": 20.0, + "p95": 169.0, + "dynamic_range": 149.0, + "mean_gray": 91.23937908496733, + "std_gray": 63.85244467612601 + }, + "geometry": { + "distance_to_center_norm": 0.4237752854824066, + "distance_to_border_px": 312.0 + }, + "edge_ratio": 1.0041351499491737, + "edge_lengths_px": [ + 42.54409408569336, + 42.72002029418945, + 42.54409408569336, + 42.72002029418945 + ] + }, + "confidence": 0.9958818790982638 + }, + { + "observation_id": "5ad2f4cb-27ba-4412-8e24-407824742188", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1016.0, + 419.0 + ], + [ + 1031.0, + 457.0 + ], + [ + 994.0, + 474.0 + ], + [ + 980.0, + 436.0 + ] + ], + "center_px": [ + 1005.25, + 446.5 + ], + "quality": { + "area_px": 1633.5, + "perimeter_px": 161.88091659545898, + "sharpness": { + "laplacian_var": 1206.2538238529316 + }, + "contrast": { + "p05": 64.0, + "p95": 184.0, + "dynamic_range": 120.0, + "mean_gray": 109.98129092609916, + "std_gray": 52.10421328381854 + }, + "geometry": { + "distance_to_center_norm": 0.33353662490844727, + "distance_to_border_px": 409.0 + }, + "edge_ratio": 1.0261563943133383, + "edge_lengths_px": [ + 40.853397369384766, + 40.71854782104492, + 40.49691390991211, + 39.81205749511719 + ] + }, + "confidence": 0.9745103237106064 + }, + { + "observation_id": "ef8c149c-77a4-4dec-b312-11ec93b3c979", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1036.0, + 506.0 + ], + [ + 1052.0, + 544.0 + ], + [ + 1022.0, + 561.0 + ], + [ + 1006.0, + 523.0 + ] + ], + "center_px": [ + 1029.0, + 533.5 + ], + "quality": { + "area_px": 1412.0, + "perimeter_px": 151.42587280273438, + "sharpness": { + "laplacian_var": 1012.7025030399973 + }, + "contrast": { + "p05": 38.0, + "p95": 183.0, + "dynamic_range": 145.0, + "mean_gray": 116.22860125260961, + "std_gray": 60.975378654093674 + }, + "geometry": { + "distance_to_center_norm": 0.34340929985046387, + "distance_to_border_px": 388.0 + }, + "edge_ratio": 1.1957310908974648, + "edge_lengths_px": [ + 41.231056213378906, + 34.48188018798828, + 41.231056213378906, + 34.48188018798828 + ] + }, + "confidence": 0.7872450089315723 + }, + { + "observation_id": "d14690a4-6f8c-4dfc-b872-a59e62412608", + "type": "aruco", + "marker_id": 246, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1052.0, + 572.0 + ], + [ + 1067.0, + 612.0 + ], + [ + 1037.0, + 628.0 + ], + [ + 1025.0, + 587.0 + ] + ], + "center_px": [ + 1045.25, + 599.75 + ], + "quality": { + "area_px": 1363.5, + "perimeter_px": 150.32693099975586, + "sharpness": { + "laplacian_var": 1006.0857327103973 + }, + "contrast": { + "p05": 35.0, + "p95": 182.0, + "dynamic_range": 147.0, + "mean_gray": 87.55157437567861, + "std_gray": 61.08527885104246 + }, + "geometry": { + "distance_to_center_norm": 0.3674362897872925, + "distance_to_border_px": 373.0 + }, + "edge_ratio": 1.38311172556412, + "edge_lengths_px": [ + 42.72002029418945, + 34.0, + 42.72002029418945, + 30.886890411376953 + ] + }, + "confidence": 0.6572137183127795 + }, + { + "observation_id": "8f572dfc-bb85-4904-bce2-c0bb992e4d99", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1373.0, + 931.0 + ], + [ + 1403.0, + 920.0 + ], + [ + 1417.0, + 952.0 + ], + [ + 1387.0, + 964.0 + ] + ], + "center_px": [ + 1395.0, + 941.75 + ], + "quality": { + "area_px": 1136.0, + "perimeter_px": 135.0394744873047, + "sharpness": { + "laplacian_var": 536.3795719450814 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 59.547588005215125, + "std_gray": 52.80020659255208 + }, + "geometry": { + "distance_to_center_norm": 0.8727903962135315, + "distance_to_border_px": 23.0 + }, + "edge_ratio": 1.1218600885282315, + "edge_lengths_px": [ + 31.95309066772461, + 34.928497314453125, + 32.31098937988281, + 35.84689712524414 + ] + }, + "confidence": 0.3105318897567382 + }, + { + "observation_id": "6392dff3-3665-44f5-9d81-d11a68152c99", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1361.0, + 872.0 + ], + [ + 1392.0, + 861.0 + ], + [ + 1405.0, + 893.0 + ], + [ + 1375.0, + 904.0 + ] + ], + "center_px": [ + 1383.25, + 882.5 + ], + "quality": { + "area_px": 1124.5, + "perimeter_px": 134.31518936157227, + "sharpness": { + "laplacian_var": 517.914546739087 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 76.5836627140975, + "std_gray": 53.471581821317514 + }, + "geometry": { + "distance_to_center_norm": 0.8294032216072083, + "distance_to_border_px": 35.0 + }, + "edge_ratio": 1.0931179608780046, + "edge_lengths_px": [ + 32.893768310546875, + 34.539833068847656, + 31.95309066772461, + 34.928497314453125 + ] + }, + "confidence": 0.480064078578645 + }, + { + "observation_id": "976912b8-f77f-4bc0-b159-c5489cf3d306", + "type": "aruco", + "marker_id": 208, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 948.0, + 734.0 + ], + [ + 958.0, + 766.0 + ], + [ + 926.0, + 775.0 + ], + [ + 916.0, + 742.0 + ] + ], + "center_px": [ + 937.0, + 754.25 + ], + "quality": { + "area_px": 1125.0, + "perimeter_px": 134.23437118530273, + "sharpness": { + "laplacian_var": 451.55598900708645 + }, + "contrast": { + "p05": 10.0, + "p95": 140.0, + "dynamic_range": 130.0, + "mean_gray": 60.31848852901484, + "std_gray": 51.76857091737675 + }, + "geometry": { + "distance_to_center_norm": 0.3388288915157318, + "distance_to_border_px": 305.0 + }, + "edge_ratio": 1.0453855707425852, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 34.48188018798828, + 32.98484420776367 + ] + }, + "confidence": 0.717438637944123 + }, + { + "observation_id": "23024242-6c7e-4fae-a308-285c0dbf6d1f", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 644.0, + 826.0 + ], + [ + 676.0, + 815.0 + ], + [ + 686.0, + 847.0 + ], + [ + 654.0, + 857.0 + ] + ], + "center_px": [ + 665.0, + 836.25 + ], + "quality": { + "area_px": 1113.0, + "perimeter_px": 133.4630584716797, + "sharpness": { + "laplacian_var": 852.4779615278809 + }, + "contrast": { + "p05": 29.0, + "p95": 169.0, + "dynamic_range": 140.0, + "mean_gray": 86.11354309165527, + "std_gray": 58.71854981961371 + }, + "geometry": { + "distance_to_center_norm": 0.334791362285614, + "distance_to_border_px": 223.0 + }, + "edge_ratio": 1.0388313835116465, + "edge_lengths_px": [ + 33.83784866333008, + 33.52610778808594, + 33.52610778808594, + 32.572994232177734 + ] + }, + "confidence": 0.714264135428559 + }, + { + "observation_id": "d2e3ef3a-e684-4aac-975c-77f529a3af54", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1320.0, + 833.0 + ], + [ + 1351.0, + 823.0 + ], + [ + 1363.0, + 855.0 + ], + [ + 1333.0, + 865.0 + ] + ], + "center_px": [ + 1341.75, + 844.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 451.19488172035136 + }, + "contrast": { + "p05": 7.0, + "p95": 137.0, + "dynamic_range": 130.0, + "mean_gray": 45.32476319350474, + "std_gray": 49.27193956190029 + }, + "geometry": { + "distance_to_center_norm": 0.7689892649650574, + "distance_to_border_px": 77.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.6720101269988878 + }, + { + "observation_id": "96972bf7-33dd-43f6-bc28-1d45ae9ae2c0", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1378.0, + 795.0 + ], + [ + 1409.0, + 785.0 + ], + [ + 1421.0, + 817.0 + ], + [ + 1391.0, + 827.0 + ] + ], + "center_px": [ + 1399.75, + 806.0 + ], + "quality": { + "area_px": 1101.0, + "perimeter_px": 132.91161727905273, + "sharpness": { + "laplacian_var": 495.05510317310643 + }, + "contrast": { + "p05": 8.0, + "p95": 139.0, + "dynamic_range": 131.0, + "mean_gray": 82.98646820027064, + "std_gray": 51.90790044031631 + }, + "geometry": { + "distance_to_center_norm": 0.8110472559928894, + "distance_to_border_px": 19.0 + }, + "edge_ratio": 1.0922454446898755, + "edge_lengths_px": [ + 32.572994232177734, + 34.1760139465332, + 31.62277603149414, + 34.539833068847656 + ] + }, + "confidence": 0.25536384825957736 + }, + { + "observation_id": "1c7ae425-97b4-4226-a5e6-b0500f60fe5c", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 534.0, + 807.0 + ], + [ + 566.0, + 797.0 + ], + [ + 575.0, + 829.0 + ], + [ + 544.0, + 839.0 + ] + ], + "center_px": [ + 554.75, + 818.0 + ], + "quality": { + "area_px": 1103.0, + "perimeter_px": 132.86674880981445, + "sharpness": { + "laplacian_var": 743.494629148182 + }, + "contrast": { + "p05": 35.0, + "p95": 172.0, + "dynamic_range": 137.0, + "mean_gray": 110.58367911479945, + "std_gray": 58.20082187769058 + }, + "geometry": { + "distance_to_center_norm": 0.35934022068977356, + "distance_to_border_px": 241.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 33.52610778808594, + 33.241539001464844, + 32.572994232177734, + 33.52610778808594 + ] + }, + "confidence": 0.7144285455619288 + }, + { + "observation_id": "f41e3d3e-b323-4b8c-971e-4300079d1c10", + "type": "aruco", + "marker_id": 62, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 824.0, + 853.0 + ], + [ + 854.0, + 841.0 + ], + [ + 867.0, + 872.0 + ], + [ + 836.0, + 884.0 + ] + ], + "center_px": [ + 845.25, + 862.5 + ], + "quality": { + "area_px": 1095.5, + "perimeter_px": 132.40953826904297, + "sharpness": { + "laplacian_var": 442.72637538104226 + }, + "contrast": { + "p05": 14.0, + "p95": 151.0, + "dynamic_range": 137.0, + "mean_gray": 42.81124497991968, + "std_gray": 45.242857765301586 + }, + "geometry": { + "distance_to_center_norm": 0.3844088017940521, + "distance_to_border_px": 196.0 + }, + "edge_ratio": 1.040372688406745, + "edge_lengths_px": [ + 32.31098937988281, + 33.61547088623047, + 33.241539001464844, + 33.241539001464844 + ] + }, + "confidence": 0.7019920279258633 + }, + { + "observation_id": "d86fa805-7003-4252-8992-6fef7a86b22d", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 590.0, + 838.0 + ], + [ + 621.0, + 828.0 + ], + [ + 631.0, + 859.0 + ], + [ + 600.0, + 870.0 + ] + ], + "center_px": [ + 610.5, + 848.75 + ], + "quality": { + "area_px": 1081.5, + "perimeter_px": 131.56586456298828, + "sharpness": { + "laplacian_var": 731.9229727377668 + }, + "contrast": { + "p05": 31.0, + "p95": 169.0, + "dynamic_range": 138.0, + "mean_gray": 66.63649222065064, + "std_gray": 51.73446481181097 + }, + "geometry": { + "distance_to_center_norm": 0.3639915883541107, + "distance_to_border_px": 210.0 + }, + "edge_ratio": 1.0292608517692443, + "edge_lengths_px": [ + 32.572994232177734, + 32.572994232177734, + 32.893768310546875, + 33.52610778808594 + ] + }, + "confidence": 0.7005026944924987 + }, + { + "observation_id": "1eda659d-1328-4954-94ad-8662bb067186", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 655.0, + 735.0 + ], + [ + 687.0, + 726.0 + ], + [ + 695.0, + 757.0 + ], + [ + 664.0, + 766.0 + ] + ], + "center_px": [ + 675.25, + 746.0 + ], + "quality": { + "area_px": 1053.0, + "perimeter_px": 129.81721115112305, + "sharpness": { + "laplacian_var": 717.9247585125308 + }, + "contrast": { + "p05": 30.0, + "p95": 171.0, + "dynamic_range": 141.0, + "mean_gray": 93.84776536312849, + "std_gray": 59.42619485270114 + }, + "geometry": { + "distance_to_center_norm": 0.23422729969024658, + "distance_to_border_px": 314.0 + }, + "edge_ratio": 1.0382912394254866, + "edge_lengths_px": [ + 33.241539001464844, + 32.015621185302734, + 32.280025482177734, + 32.280025482177734 + ] + }, + "confidence": 0.6761108765479277 + }, + { + "observation_id": "2faacc0f-765b-46e1-b147-bd73cdf707f3", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1325.0, + 744.0 + ], + [ + 1354.0, + 732.0 + ], + [ + 1368.0, + 763.0 + ], + [ + 1339.0, + 774.0 + ] + ], + "center_px": [ + 1346.5, + 753.25 + ], + "quality": { + "area_px": 1045.5, + "perimeter_px": 129.52142906188965, + "sharpness": { + "laplacian_var": 401.9192193180268 + }, + "contrast": { + "p05": 7.0, + "p95": 133.0, + "dynamic_range": 126.0, + "mean_gray": 49.76628895184136, + "std_gray": 49.769446320789825 + }, + "geometry": { + "distance_to_center_norm": 0.735332190990448, + "distance_to_border_px": 72.0 + }, + "edge_ratio": 1.096678006826234, + "edge_lengths_px": [ + 31.38471031188965, + 34.01470184326172, + 31.016124725341797, + 33.105892181396484 + ] + }, + "confidence": 0.63555573802114 + }, + { + "observation_id": "5b2da25f-5a95-476f-9dbd-7b58175aa43a", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 488.0, + 682.0 + ], + [ + 520.0, + 673.0 + ], + [ + 528.0, + 703.0 + ], + [ + 497.0, + 713.0 + ] + ], + "center_px": [ + 508.25, + 692.75 + ], + "quality": { + "area_px": 1041.5, + "perimeter_px": 129.14290809631348, + "sharpness": { + "laplacian_var": 854.9291926161701 + }, + "contrast": { + "p05": 39.0, + "p95": 174.0, + "dynamic_range": 135.0, + "mean_gray": 85.3946251768034, + "std_gray": 55.88886855913174 + }, + "geometry": { + "distance_to_center_norm": 0.2901056110858917, + "distance_to_border_px": 367.0 + }, + "edge_ratio": 1.070637881392484, + "edge_lengths_px": [ + 33.241539001464844, + 31.048349380493164, + 32.572994232177734, + 32.280025482177734 + ] + }, + "confidence": 0.6485230397697823 + }, + { + "observation_id": "07a2098f-819d-41c6-9c51-ff6b8aaa5e10", + "type": "aruco", + "marker_id": 214, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1047.0, + 694.0 + ], + [ + 1058.0, + 725.0 + ], + [ + 1029.0, + 735.0 + ], + [ + 1017.0, + 703.0 + ] + ], + "center_px": [ + 1037.75, + 714.25 + ], + "quality": { + "area_px": 1038.5, + "perimeter_px": 129.06642532348633, + "sharpness": { + "laplacian_var": 702.8589017712277 + }, + "contrast": { + "p05": 13.0, + "p95": 151.0, + "dynamic_range": 138.0, + "mean_gray": 91.26308139534883, + "std_gray": 55.34838633216663 + }, + "geometry": { + "distance_to_center_norm": 0.40265801548957825, + "distance_to_border_px": 345.0 + }, + "edge_ratio": 1.1141061874732403, + "edge_lengths_px": [ + 32.893768310546875, + 30.675724029541016, + 34.1760139465332, + 31.320919036865234 + ] + }, + "confidence": 0.62142490645665 + }, + { + "observation_id": "52eba5c2-6c1f-49c3-8759-5f55ab3ea30c", + "type": "aruco", + "marker_id": 95, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 592.0, + 617.0 + ], + [ + 622.0, + 606.0 + ], + [ + 633.0, + 635.0 + ], + [ + 604.0, + 647.0 + ] + ], + "center_px": [ + 612.75, + 626.25 + ], + "quality": { + "area_px": 1002.5, + "perimeter_px": 126.66491508483887, + "sharpness": { + "laplacian_var": 861.4333753048808 + }, + "contrast": { + "p05": 34.0, + "p95": 174.0, + "dynamic_range": 140.0, + "mean_gray": 97.54451038575668, + "std_gray": 59.64062956897272 + }, + "geometry": { + "distance_to_center_norm": 0.15292063355445862, + "distance_to_border_px": 433.0 + }, + "edge_ratio": 1.041748112183823, + "edge_lengths_px": [ + 31.95309066772461, + 31.016124725341797, + 31.38471031188965, + 32.31098937988281 + ] + }, + "confidence": 0.6415498386959416 + }, + { + "observation_id": "102c3015-7589-40f7-b688-5f9e654bb197", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 852.0, + 664.0 + ], + [ + 855.0, + 699.0 + ], + [ + 831.0, + 712.0 + ], + [ + 828.0, + 677.0 + ] + ], + "center_px": [ + 841.5, + 688.0 + ], + "quality": { + "area_px": 879.0, + "perimeter_px": 124.84605026245117, + "sharpness": { + "laplacian_var": 964.1437813663806 + }, + "contrast": { + "p05": 35.0, + "p95": 185.0, + "dynamic_range": 150.0, + "mean_gray": 80.50977198697069, + "std_gray": 59.04237755633671 + }, + "geometry": { + "distance_to_center_norm": 0.21276035904884338, + "distance_to_border_px": 368.0 + }, + "edge_ratio": 1.2870027603239267, + "edge_lengths_px": [ + 35.12833786010742, + 27.294687271118164, + 35.12833786010742, + 27.294687271118164 + ] + }, + "confidence": 0.45532147876086076 + }, + { + "observation_id": "f173870c-a70c-4bc1-9f9e-d3b28eff68f9", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 549.0 + ], + [ + 750.0, + 540.0 + ], + [ + 759.0, + 570.0 + ], + [ + 728.0, + 578.0 + ] + ], + "center_px": [ + 739.25, + 559.25 + ], + "quality": { + "area_px": 972.0, + "perimeter_px": 124.74067687988281, + "sharpness": { + "laplacian_var": 858.8311608781246 + }, + "contrast": { + "p05": 30.0, + "p95": 176.0, + "dynamic_range": 146.0, + "mean_gray": 89.6813509544787, + "std_gray": 60.460128160193484 + }, + "geometry": { + "distance_to_center_norm": 0.030248457565903664, + "distance_to_border_px": 502.0 + }, + "edge_ratio": 1.0642352686074992, + "edge_lengths_px": [ + 31.320919036865234, + 31.320919036865234, + 32.015621185302734, + 30.08321762084961 + ] + }, + "confidence": 0.6088879208521975 + }, + { + "observation_id": "cd7253ac-f3a6-4e34-bce7-057c4a927cc6", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 670.0, + 478.0 + ], + [ + 700.0, + 469.0 + ], + [ + 710.0, + 497.0 + ], + [ + 680.0, + 507.0 + ] + ], + "center_px": [ + 690.0, + 487.75 + ], + "quality": { + "area_px": 950.0, + "perimeter_px": 123.3515567779541, + "sharpness": { + "laplacian_var": 744.1718727855725 + }, + "contrast": { + "p05": 33.0, + "p95": 177.0, + "dynamic_range": 144.0, + "mean_gray": 123.30505952380952, + "std_gray": 58.57233093015588 + }, + "geometry": { + "distance_to_center_norm": 0.06694444268941879, + "distance_to_border_px": 469.0 + }, + "edge_ratio": 1.0635890487184443, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.62277603149414, + 30.675724029541016 + ] + }, + "confidence": 0.5954680843098741 + }, + { + "observation_id": "d73ee6a6-d2eb-4571-941a-a346e17aaa8b", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 519.0, + 393.0 + ], + [ + 550.0, + 385.0 + ], + [ + 558.0, + 413.0 + ], + [ + 527.0, + 421.0 + ] + ], + "center_px": [ + 538.5, + 403.0 + ], + "quality": { + "area_px": 932.0, + "perimeter_px": 122.27212142944336, + "sharpness": { + "laplacian_var": 797.3173110559737 + }, + "contrast": { + "p05": 38.0, + "p95": 176.19999999999993, + "dynamic_range": 138.19999999999993, + "mean_gray": 94.14307458143075, + "std_gray": 55.87143525094488 + }, + "geometry": { + "distance_to_center_norm": 0.2526678740978241, + "distance_to_border_px": 385.0 + }, + "edge_ratio": 1.0994209463411062, + "edge_lengths_px": [ + 32.015621185302734, + 29.120439529418945, + 32.015621185302734, + 29.120439529418945 + ] + }, + "confidence": 0.5651459847123547 + }, + { + "observation_id": "5bd8fbb6-6fbe-4e21-9b98-00d5018e18a1", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 613.0, + 419.0 + ], + [ + 643.0, + 410.0 + ], + [ + 653.0, + 438.0 + ], + [ + 623.0, + 447.0 + ] + ], + "center_px": [ + 633.0, + 428.5 + ], + "quality": { + "area_px": 930.0, + "perimeter_px": 122.10611343383789, + "sharpness": { + "laplacian_var": 823.1077646304283 + }, + "contrast": { + "p05": 33.0, + "p95": 175.0, + "dynamic_range": 142.0, + "mean_gray": 90.3810975609756, + "std_gray": 58.11551162536803 + }, + "geometry": { + "distance_to_center_norm": 0.15713976323604584, + "distance_to_border_px": 410.0 + }, + "edge_ratio": 1.0534364993835403, + "edge_lengths_px": [ + 31.320919036865234, + 29.73213768005371, + 31.320919036865234, + 29.73213768005371 + ] + }, + "confidence": 0.5885499509109636 + }, + { + "observation_id": "81980b92-7b2c-416f-bd99-695ed0e9870a", + "type": "aruco", + "marker_id": 82, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1336.0, + 420.0 + ], + [ + 1365.0, + 411.0 + ], + [ + 1377.0, + 439.0 + ], + [ + 1348.0, + 448.0 + ] + ], + "center_px": [ + 1356.5, + 429.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 492.47728625272765 + }, + "contrast": { + "p05": 8.0, + "p95": 144.0, + "dynamic_range": 136.0, + "mean_gray": 74.61658841940532, + "std_gray": 56.63950003540781 + }, + "geometry": { + "distance_to_center_norm": 0.7178005576133728, + "distance_to_border_px": 63.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.6113473409254715 + }, + { + "observation_id": "fb233017-73bd-48d1-8f00-7a5cc070ce89", + "type": "aruco", + "marker_id": 73, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1381.0, + 409.0 + ], + [ + 1410.0, + 400.0 + ], + [ + 1422.0, + 428.0 + ], + [ + 1393.0, + 437.0 + ] + ], + "center_px": [ + 1401.5, + 418.5 + ], + "quality": { + "area_px": 920.0, + "perimeter_px": 121.65509033203125, + "sharpness": { + "laplacian_var": 771.0965392424098 + }, + "contrast": { + "p05": 9.0, + "p95": 148.0, + "dynamic_range": 139.0, + "mean_gray": 87.07042253521126, + "std_gray": 52.83472667385498 + }, + "geometry": { + "distance_to_center_norm": 0.7691621780395508, + "distance_to_border_px": 18.0 + }, + "edge_ratio": 1.0032485500057224, + "edge_lengths_px": [ + 30.364452362060547, + 30.463092803955078, + 30.364452362060547, + 30.463092803955078 + ] + }, + "confidence": 0.22008504273316973 + }, + { + "observation_id": "7e902b3e-ed0e-4ee8-861a-4b2f7fa0726d", + "type": "aruco", + "marker_id": 210, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 881.0, + 288.0 + ], + [ + 892.0, + 316.0 + ], + [ + 863.0, + 326.0 + ], + [ + 852.0, + 298.0 + ] + ], + "center_px": [ + 872.0, + 307.0 + ], + "quality": { + "area_px": 922.0, + "perimeter_px": 121.51788330078125, + "sharpness": { + "laplacian_var": 865.0098318523201 + }, + "contrast": { + "p05": 22.0, + "p95": 172.0, + "dynamic_range": 150.0, + "mean_gray": 82.59908536585365, + "std_gray": 60.95016906391271 + }, + "geometry": { + "distance_to_center_norm": 0.30910664796829224, + "distance_to_border_px": 288.0 + }, + "edge_ratio": 1.0196955796470641, + "edge_lengths_px": [ + 30.08321762084961, + 30.675724029541016, + 30.08321762084961, + 30.675724029541016 + ] + }, + "confidence": 0.60279428383853 + }, + { + "observation_id": "030642ca-a437-4125-900c-acbbdc77ded5", + "type": "aruco", + "marker_id": 52, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1170.0, + 304.0 + ], + [ + 1198.0, + 294.0 + ], + [ + 1211.0, + 321.0 + ], + [ + 1182.0, + 331.0 + ] + ], + "center_px": [ + 1190.25, + 312.5 + ], + "quality": { + "area_px": 894.5, + "perimeter_px": 119.92108345031738, + "sharpness": { + "laplacian_var": 736.7821607663999 + }, + "contrast": { + "p05": 12.0, + "p95": 162.0, + "dynamic_range": 150.0, + "mean_gray": 73.56239870340356, + "std_gray": 59.95824921853181 + }, + "geometry": { + "distance_to_center_norm": 0.5804333686828613, + "distance_to_border_px": 229.0 + }, + "edge_ratio": 1.038215950330626, + "edge_lengths_px": [ + 29.73213768005371, + 29.96664810180664, + 30.675724029541016, + 29.546573638916016 + ] + }, + "confidence": 0.5743827506632194 + }, + { + "observation_id": "2bd53d1b-e502-4d14-a054-a39e1ef71303", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 621.0, + 329.0 + ], + [ + 651.0, + 320.0 + ], + [ + 660.0, + 347.0 + ], + [ + 630.0, + 356.0 + ] + ], + "center_px": [ + 640.5, + 338.0 + ], + "quality": { + "area_px": 891.0, + "perimeter_px": 119.56283569335938, + "sharpness": { + "laplacian_var": 820.498501862312 + }, + "contrast": { + "p05": 32.0, + "p95": 175.0, + "dynamic_range": 143.0, + "mean_gray": 89.84786053882726, + "std_gray": 58.95198554771998 + }, + "geometry": { + "distance_to_center_norm": 0.24120134115219116, + "distance_to_border_px": 320.0 + }, + "edge_ratio": 1.1005049224950472, + "edge_lengths_px": [ + 31.320919036865234, + 28.460498809814453, + 31.320919036865234, + 28.460498809814453 + ] + }, + "confidence": 0.5397522426826521 + }, + { + "observation_id": "5541c293-b91d-4fa4-bf15-6ebe8feb5617", + "type": "aruco", + "marker_id": 77, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1106.0, + 220.0 + ], + [ + 1135.0, + 213.0 + ], + [ + 1145.0, + 239.0 + ], + [ + 1116.0, + 248.0 + ] + ], + "center_px": [ + 1125.5, + 230.0 + ], + "quality": { + "area_px": 863.0, + "perimeter_px": 117.78623580932617, + "sharpness": { + "laplacian_var": 634.9850778546712 + }, + "contrast": { + "p05": 11.0, + "p95": 158.0, + "dynamic_range": 147.0, + "mean_gray": 69.19607843137256, + "std_gray": 58.47258547896745 + }, + "geometry": { + "distance_to_center_norm": 0.5671351552009583, + "distance_to_border_px": 213.0 + }, + "edge_ratio": 1.0900202903476583, + "edge_lengths_px": [ + 29.832868576049805, + 27.85677719116211, + 30.364452362060547, + 29.73213768005371 + ] + }, + "confidence": 0.5278189208292927 + }, + { + "observation_id": "f59d8a90-74f8-4dc1-bb83-dcd423bcef6f", + "type": "aruco", + "marker_id": 83, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1304.0, + 199.0 + ], + [ + 1332.0, + 191.0 + ], + [ + 1343.0, + 218.0 + ], + [ + 1314.0, + 226.0 + ] + ], + "center_px": [ + 1323.25, + 208.5 + ], + "quality": { + "area_px": 853.5, + "perimeter_px": 117.15077781677246, + "sharpness": { + "laplacian_var": 787.246986385212 + }, + "contrast": { + "p05": 11.0, + "p95": 159.19999999999993, + "dynamic_range": 148.19999999999993, + "mean_gray": 92.65964343598056, + "std_gray": 57.146865375444264 + }, + "geometry": { + "distance_to_center_norm": 0.7648148536682129, + "distance_to_border_px": 97.0 + }, + "edge_ratio": 1.0448333273602466, + "edge_lengths_px": [ + 29.120439529418945, + 29.154760360717773, + 30.08321762084961, + 28.792360305786133 + ] + }, + "confidence": 0.5445844663450473 + }, + { + "observation_id": "7be4f643-e9ba-4b83-9583-c4870cac2c4a", + "type": "aruco", + "marker_id": 75, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1089.0, + 172.0 + ], + [ + 1118.0, + 165.0 + ], + [ + 1127.0, + 192.0 + ], + [ + 1098.0, + 199.0 + ] + ], + "center_px": [ + 1108.0, + 182.0 + ], + "quality": { + "area_px": 846.0, + "perimeter_px": 116.58673477172852, + "sharpness": { + "laplacian_var": 840.0864058387932 + }, + "contrast": { + "p05": 18.0, + "p95": 165.0, + "dynamic_range": 147.0, + "mean_gray": 108.12054329371817, + "std_gray": 55.17911014115476 + }, + "geometry": { + "distance_to_center_norm": 0.5865867137908936, + "distance_to_border_px": 165.0 + }, + "edge_ratio": 1.048220158592656, + "edge_lengths_px": [ + 29.832868576049805, + 28.460498809814453, + 29.832868576049805, + 28.460498809814453 + ] + }, + "confidence": 0.5380549070504695 + }, + { + "observation_id": "218cb800-c59d-43bc-bf91-14b6ac292bb2", + "type": "aruco", + "marker_id": 61, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 1260.0, + 127.0 + ], + [ + 1287.0, + 117.0 + ], + [ + 1300.0, + 143.0 + ], + [ + 1273.0, + 153.0 + ] + ], + "center_px": [ + 1280.0, + 135.0 + ], + "quality": { + "area_px": 832.0, + "perimeter_px": 115.72248840332031, + "sharpness": { + "laplacian_var": 747.7801521890221 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 95.53195164075993, + "std_gray": 57.42506055833918 + }, + "geometry": { + "distance_to_center_norm": 0.7678935527801514, + "distance_to_border_px": 117.0 + }, + "edge_ratio": 1.0096040611867558, + "edge_lengths_px": [ + 28.792360305786133, + 29.068883895874023, + 28.792360305786133, + 29.068883895874023 + ] + }, + "confidence": 0.5493902887184056 + }, + { + "observation_id": "df268558-af90-4f13-b95a-1f9a97017d71", + "type": "aruco", + "marker_id": 219, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 842.0, + 759.0 + ], + [ + 869.0, + 767.0 + ], + [ + 844.0, + 778.0 + ], + [ + 816.0, + 770.0 + ] + ], + "center_px": [ + 842.75, + 768.5 + ], + "quality": { + "area_px": 506.5, + "perimeter_px": 112.82488250732422, + "sharpness": { + "laplacian_var": 927.7063988919667 + }, + "contrast": { + "p05": 19.0, + "p95": 83.0, + "dynamic_range": 64.0, + "mean_gray": 43.613157894736844, + "std_gray": 22.719116354348767 + }, + "geometry": { + "distance_to_center_norm": 0.2882038950920105, + "distance_to_border_px": 302.0 + }, + "edge_ratio": 1.0661750749552474, + "edge_lengths_px": [ + 28.160255432128906, + 27.312999725341797, + 29.120439529418945, + 28.23118782043457 + ] + }, + "confidence": 0.25336676844060735 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 1315.0, + 285.0 + ], + [ + 1328.0, + 312.0 + ], + [ + 1300.0, + 322.0 + ], + [ + 1287.0, + 295.0 + ] + ], + "center_px": [ + 1307.5, + 303.5 + ], + "area_px": 886.0 + }, + { + "image_points_px": [ + [ + 1003.0, + 394.0 + ], + [ + 972.0, + 415.0 + ], + [ + 973.0, + 410.0 + ], + [ + 985.0, + 400.0 + ] + ], + "center_px": [ + 983.25, + 404.75 + ], + "area_px": 121.0 + }, + { + "image_points_px": [ + [ + 780.0, + 278.0 + ], + [ + 783.0, + 279.0 + ], + [ + 797.0, + 300.0 + ], + [ + 795.0, + 302.0 + ] + ], + "center_px": [ + 788.75, + 289.75 + ], + "area_px": 63.5 + }, + { + "image_points_px": [ + [ + 1087.0, + 550.0 + ], + [ + 1063.0, + 565.0 + ], + [ + 1074.0, + 554.0 + ], + [ + 1082.0, + 550.0 + ] + ], + "center_px": [ + 1076.5, + 554.75 + ], + "area_px": 59.5 + }, + { + "image_points_px": [ + [ + 665.0, + 67.0 + ], + [ + 675.0, + 85.0 + ], + [ + 674.0, + 91.0 + ], + [ + 667.0, + 78.0 + ] + ], + "center_px": [ + 670.25, + 80.25 + ], + "area_px": 64.5 + }, + { + "image_points_px": [ + [ + 1107.0, + 93.0 + ], + [ + 1110.0, + 95.0 + ], + [ + 1120.0, + 115.0 + ], + [ + 1115.0, + 111.0 + ] + ], + "center_px": [ + 1113.0, + 103.5 + ], + "area_px": 49.0 + }, + { + "image_points_px": [ + [ + 735.0, + 232.0 + ], + [ + 745.0, + 254.0 + ], + [ + 742.0, + 252.0 + ], + [ + 736.0, + 239.0 + ] + ], + "center_px": [ + 739.5, + 244.25 + ], + "area_px": 37.5 + }, + { + "image_points_px": [ + [ + 1214.0, + 340.0 + ], + [ + 1219.0, + 346.0 + ], + [ + 1223.0, + 362.0 + ], + [ + 1216.0, + 349.0 + ] + ], + "center_px": [ + 1218.0, + 349.25 + ], + "area_px": 46.5 + }, + { + "image_points_px": [ + [ + 1121.0, + 562.0 + ], + [ + 1129.0, + 569.0 + ], + [ + 1131.0, + 577.0 + ], + [ + 1130.0, + 583.0 + ] + ], + "center_px": [ + 1127.75, + 572.75 + ], + "area_px": 62.5 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/render_f_camera_pose.json b/data/camera_study/Scene10/k4_defg/render_f_camera_pose.json new file mode 100644 index 0000000..1b8a739 --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/render_f_camera_pose.json @@ -0,0 +1,582 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:15Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_defg\\render_f_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "f", + "camera_matrix": [ + [ + 2003.446044921875, + 0.0, + 722.6578979492188 + ], + [ + 0.0, + 1992.1611328125, + 539.48974609375 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 27, + "used_marker_ids": [ + 68, + 46, + 208, + 47, + 56, + 53, + 97, + 62, + 54, + 55, + 72, + 66, + 214, + 95, + 51, + 103, + 69, + 58, + 82, + 73, + 210, + 52, + 64, + 77, + 83, + 75, + 61 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3, + 4 + ], + "rms": [ + 0.00918677717341902, + 0.0014933429518723808, + 0.001390373853667637, + 0.0013903699834861628, + 0.0013903699807887252 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125, + 6.25e-05 + ] + }, + "residual_rms_px": 3.941603533751138, + "residual_median_px": 3.7352373317630128, + "residual_max_px": 5.771900878439298, + "sigma2_normalized": 2.17476976890378e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + 0.31769248843193054, + 0.9481521248817444, + 0.008892479352653027 + ], + [ + 0.9206541180610657, + -0.30620789527893066, + -0.242141991853714 + ], + [ + -0.2268645018339157, + 0.08511359244585037, + -0.9702000617980957 + ] + ], + "translation_m": [ + 0.12344730645418167, + -0.19988536834716797, + 1.4972078800201416 + ], + "rvec_rad": [ + 2.378352663832453, + 1.7133801592888853, + -0.1998435821316908 + ] + }, + "camera_in_world": { + "position_m": [ + 0.48447033762931824, + -0.3056860566139221, + 1.4030927419662476 + ], + "position_mm": [ + 484.4703369140625, + -305.6860656738281, + 1403.0927734375 + ], + "orientation_deg": { + "roll": 174.98638916015625, + "pitch": 13.112541198730469, + "yaw": 70.96184539794922 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 3.2311819447272024e-05, + 1.8832577487974546e-05, + -4.656767371183097e-06, + -4.18150026429738e-07, + 2.6114865287331025e-07, + 2.406181848846857e-06 + ], + [ + 1.8832577487974533e-05, + 1.683541014579236e-05, + -7.3574856590594524e-06, + 4.5948447714477966e-07, + 3.095065254407523e-08, + 2.3847847067019377e-06 + ], + [ + -4.6567673711861375e-06, + -7.357485659062205e-06, + 0.00016783973036034415, + 1.5647826411604766e-06, + -1.729586622472892e-06, + -2.906231789157714e-05 + ], + [ + -4.1815002642977447e-07, + 4.594844771447391e-07, + 1.5647826411606013e-06, + 3.507815548304795e-07, + -2.7134564617847737e-08, + 2.4204791300702807e-07 + ], + [ + 2.611486528733672e-07, + 3.0950652544076366e-08, + -1.729586622472832e-06, + -2.7134564617850665e-08, + 1.9997327434023874e-07, + 4.1386012647726157e-07 + ], + [ + 2.4061818488473495e-06, + 2.384784706702394e-06, + -2.9062317891576876e-05, + 2.420479130070509e-07, + 4.138601264772586e-07, + 9.270646369219581e-06 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.3256891862833913, + 0.23509017702077495, + 0.7422838625560957 + ], + "tvec_std_m": [ + 0.0005922681443657758, + 0.00044718371430569644, + 0.003044773615430149 + ] + }, + "camera_center_std_m": [ + 0.011255169411300251, + 0.011919325044430497, + 0.004596769734438054 + ], + "camera_center_std_mm": [ + 11.255169411300251, + 11.919325044430497, + 4.5967697344380545 + ], + "orientation_std_deg": { + "roll": 0.5094522091773732, + "pitch": 0.4352540861263008, + "yaw": 0.1004884180203833 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 68, + "observed_center_px": [ + 1395.0, + 941.75 + ], + "projected_center_px": [ + 1389.3548583984375, + 940.5469970703125 + ], + "reprojection_error_px": 5.771900878439298, + "confidence": 0.3105318897567382 + }, + { + "marker_id": 46, + "observed_center_px": [ + 1383.25, + 882.5 + ], + "projected_center_px": [ + 1387.9061279296875, + 883.3380737304688 + ], + "reprojection_error_px": 4.7309507369362676, + "confidence": 0.480064078578645 + }, + { + "marker_id": 208, + "observed_center_px": [ + 937.0, + 754.25 + ], + "projected_center_px": [ + 934.9244995117188, + 751.2972412109375 + ], + "reprojection_error_px": 3.6092224568792584, + "confidence": 0.717438637944123 + }, + { + "marker_id": 47, + "observed_center_px": [ + 665.0, + 836.25 + ], + "projected_center_px": [ + 667.4868774414062, + 835.926025390625 + ], + "reprojection_error_px": 2.507891336580391, + "confidence": 0.714264135428559 + }, + { + "marker_id": 56, + "observed_center_px": [ + 1341.75, + 844.0 + ], + "projected_center_px": [ + 1344.8751220703125, + 839.613037109375 + ], + "reprojection_error_px": 5.386263209134431, + "confidence": 0.6720101269988878 + }, + { + "marker_id": 53, + "observed_center_px": [ + 1399.75, + 806.0 + ], + "projected_center_px": [ + 1394.572998046875, + 803.723388671875 + ], + "reprojection_error_px": 5.655467121468141, + "confidence": 0.25536384825957736 + }, + { + "marker_id": 97, + "observed_center_px": [ + 554.75, + 818.0 + ], + "projected_center_px": [ + 552.1571044921875, + 815.3113403320312 + ], + "reprojection_error_px": 3.7352373317630128, + "confidence": 0.7144285455619288 + }, + { + "marker_id": 62, + "observed_center_px": [ + 845.25, + 862.5 + ], + "projected_center_px": [ + 843.9764404296875, + 867.170166015625 + ], + "reprojection_error_px": 4.840702902743903, + "confidence": 0.7019920279258633 + }, + { + "marker_id": 54, + "observed_center_px": [ + 610.5, + 848.75 + ], + "projected_center_px": [ + 607.426025390625, + 853.0718994140625 + ], + "reprojection_error_px": 5.30359636891383, + "confidence": 0.7005026944924987 + }, + { + "marker_id": 55, + "observed_center_px": [ + 675.25, + 746.0 + ], + "projected_center_px": [ + 672.9774169921875, + 745.18359375 + ], + "reprojection_error_px": 2.4147779799470532, + "confidence": 0.6761108765479277 + }, + { + "marker_id": 72, + "observed_center_px": [ + 1346.5, + 753.25 + ], + "projected_center_px": [ + 1346.513671875, + 751.8689575195312 + ], + "reprojection_error_px": 1.381110152386584, + "confidence": 0.63555573802114 + }, + { + "marker_id": 66, + "observed_center_px": [ + 508.25, + 692.75 + ], + "projected_center_px": [ + 508.324951171875, + 692.6304321289062 + ], + "reprojection_error_px": 0.14111751827228045, + "confidence": 0.6485230397697823 + }, + { + "marker_id": 214, + "observed_center_px": [ + 1037.75, + 714.25 + ], + "projected_center_px": [ + 1041.2877197265625, + 715.8521118164062 + ], + "reprojection_error_px": 3.8835838005607632, + "confidence": 0.62142490645665 + }, + { + "marker_id": 95, + "observed_center_px": [ + 612.75, + 626.25 + ], + "projected_center_px": [ + 616.0951538085938, + 624.1017456054688 + ], + "reprojection_error_px": 3.975556683883667, + "confidence": 0.6415498386959416 + }, + { + "marker_id": 51, + "observed_center_px": [ + 739.25, + 559.25 + ], + "projected_center_px": [ + 740.84765625, + 558.3189086914062 + ], + "reprojection_error_px": 1.8491718465580436, + "confidence": 0.6088879208521975 + }, + { + "marker_id": 103, + "observed_center_px": [ + 690.0, + 487.75 + ], + "projected_center_px": [ + 694.0453491210938, + 487.8307800292969 + ], + "reprojection_error_px": 4.046155573463183, + "confidence": 0.5954680843098741 + }, + { + "marker_id": 69, + "observed_center_px": [ + 538.5, + 403.0 + ], + "projected_center_px": [ + 534.0264892578125, + 406.2565612792969 + ], + "reprojection_error_px": 5.5333073045225545, + "confidence": 0.5651459847123547 + }, + { + "marker_id": 58, + "observed_center_px": [ + 633.0, + 428.5 + ], + "projected_center_px": [ + 631.8712768554688, + 432.2906494140625 + ], + "reprojection_error_px": 3.9551281796337383, + "confidence": 0.5885499509109636 + }, + { + "marker_id": 82, + "observed_center_px": [ + 1356.5, + 429.5 + ], + "projected_center_px": [ + 1358.176025390625, + 429.6244201660156 + ], + "reprojection_error_px": 1.6806372266884486, + "confidence": 0.6113473409254715 + }, + { + "marker_id": 73, + "observed_center_px": [ + 1401.5, + 418.5 + ], + "projected_center_px": [ + 1403.8709716796875, + 418.31756591796875 + ], + "reprojection_error_px": 2.377980004156206, + "confidence": 0.22008504273316973 + }, + { + "marker_id": 210, + "observed_center_px": [ + 872.0, + 307.0 + ], + "projected_center_px": [ + 871.6832885742188, + 304.965087890625 + ], + "reprojection_error_px": 2.0594109400751965, + "confidence": 0.60279428383853 + }, + { + "marker_id": 52, + "observed_center_px": [ + 1190.25, + 312.5 + ], + "projected_center_px": [ + 1186.0579833984375, + 316.39373779296875 + ], + "reprojection_error_px": 5.7213807064526625, + "confidence": 0.5743827506632194 + }, + { + "marker_id": 64, + "observed_center_px": [ + 640.5, + 338.0 + ], + "projected_center_px": [ + 640.4821166992188, + 334.9952087402344 + ], + "reprojection_error_px": 3.0048444763765603, + "confidence": 0.5397522426826521 + }, + { + "marker_id": 77, + "observed_center_px": [ + 1125.5, + 230.0 + ], + "projected_center_px": [ + 1128.3472900390625, + 234.04983520507812 + ], + "reprojection_error_px": 4.950578325290361, + "confidence": 0.5278189208292927 + }, + { + "marker_id": 83, + "observed_center_px": [ + 1323.25, + 208.5 + ], + "projected_center_px": [ + 1319.932373046875, + 207.5139923095703 + ], + "reprojection_error_px": 3.461048940088533, + "confidence": 0.5445844663450473 + }, + { + "marker_id": 75, + "observed_center_px": [ + 1108.0, + 182.0 + ], + "projected_center_px": [ + 1111.3167724609375, + 182.71337890625 + ], + "reprojection_error_px": 3.392622734922916, + "confidence": 0.5380549070504695 + }, + { + "marker_id": 61, + "observed_center_px": [ + 1280.0, + 135.0 + ], + "projected_center_px": [ + 1282.8663330078125, + 133.39898681640625 + ], + "reprojection_error_px": 3.283155208898362, + "confidence": 0.5493902887184056 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/render_g_aruco_detection.json b/data/camera_study/Scene10/k4_defg/render_g_aruco_detection.json new file mode 100644 index 0000000..9ebe600 --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/render_g_aruco_detection.json @@ -0,0 +1,2224 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:14Z", + "vision_config": { + "MarkerType": "DICT_4X4_250", + "MarkerSize": 0.025 + }, + "camera": { + "camera_id": "g", + "intrinsics_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.npz", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "image": { + "image_file": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\simulation\\Scene10\\render_g.png", + "image_sha256": "6f328ef148dd5b73d40dbd9254ac0545dbd7393ed4666dd8eee8d3e346b4448b", + "width_px": 1440, + "height_px": 1080 + }, + "aruco": { + "dictionary": "DICT_4X4_250", + "num_detected_markers": 37, + "num_rejected_candidates": 7 + }, + "detections": [ + { + "observation_id": "a89b87ae-0535-42e7-8b26-ea9fe8963dc8", + "type": "aruco", + "marker_id": 231, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 361.0, + 538.0 + ], + [ + 334.0, + 513.0 + ], + [ + 364.0, + 489.0 + ], + [ + 391.0, + 513.0 + ] + ], + "center_px": [ + 362.5, + 513.25 + ], + "quality": { + "area_px": 1396.5, + "perimeter_px": 150.3915138244629, + "sharpness": { + "laplacian_var": 1014.5935798624517 + }, + "contrast": { + "p05": 15.0, + "p95": 168.0, + "dynamic_range": 153.0, + "mean_gray": 87.64736297828335, + "std_gray": 65.25681309567548 + }, + "geometry": { + "distance_to_center_norm": 0.3983326554298401, + "distance_to_border_px": 334.0 + }, + "edge_ratio": 1.0810098739215166, + "edge_lengths_px": [ + 36.79673767089844, + 38.41874694824219, + 36.12478256225586, + 39.051246643066406 + ] + }, + "confidence": 0.8612317264250932 + }, + { + "observation_id": "00c59fbb-be6a-49ec-8f33-2eaca3a8f45d", + "type": "aruco", + "marker_id": 243, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 490.0, + 612.0 + ], + [ + 463.0, + 586.0 + ], + [ + 492.0, + 572.0 + ], + [ + 518.0, + 598.0 + ] + ], + "center_px": [ + 490.75, + 592.0 + ], + "quality": { + "area_px": 1112.0, + "perimeter_px": 137.76032066345215, + "sharpness": { + "laplacian_var": 1213.9038992326398 + }, + "contrast": { + "p05": 22.0, + "p95": 181.0, + "dynamic_range": 159.0, + "mean_gray": 82.85922974767597, + "std_gray": 68.84435047820993 + }, + "geometry": { + "distance_to_center_norm": 0.26119279861450195, + "distance_to_border_px": 463.0 + }, + "edge_ratio": 1.1973610126869798, + "edge_lengths_px": [ + 37.48332977294922, + 32.202484130859375, + 36.769554138183594, + 31.30495262145996 + ] + }, + "confidence": 0.619139361878602 + }, + { + "observation_id": "5484127d-0079-464d-af78-3a63129fe621", + "type": "aruco", + "marker_id": 86, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 94.0, + 958.0 + ], + [ + 68.0, + 982.0 + ], + [ + 47.0, + 960.0 + ], + [ + 73.0, + 936.0 + ] + ], + "center_px": [ + 70.5, + 959.0 + ], + "quality": { + "area_px": 1076.0, + "perimeter_px": 131.59485244750977, + "sharpness": { + "laplacian_var": 500.4565883722073 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 68.66531713900135, + "std_gray": 56.437884581126355 + }, + "geometry": { + "distance_to_center_norm": 0.8588042259216309, + "distance_to_border_px": 47.0 + }, + "edge_ratio": 1.1634060487042286, + "edge_lengths_px": [ + 35.38361358642578, + 30.4138126373291, + 35.38361358642578, + 30.4138126373291 + ] + }, + "confidence": 0.5795855489013004 + }, + { + "observation_id": "d09d9731-170f-45ed-b52e-1b1698284499", + "type": "aruco", + "marker_id": 64, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 944.0, + 859.0 + ], + [ + 923.0, + 881.0 + ], + [ + 899.0, + 859.0 + ], + [ + 921.0, + 837.0 + ] + ], + "center_px": [ + 921.75, + 859.0 + ], + "quality": { + "area_px": 990.0, + "perimeter_px": 125.91181182861328, + "sharpness": { + "laplacian_var": 1254.5651387199953 + }, + "contrast": { + "p05": 37.0, + "p95": 176.0, + "dynamic_range": 139.0, + "mean_gray": 94.86206896551724, + "std_gray": 57.98150599974307 + }, + "geometry": { + "distance_to_center_norm": 0.41938236355781555, + "distance_to_border_px": 199.0 + }, + "edge_ratio": 1.070488611997406, + "edge_lengths_px": [ + 30.4138126373291, + 32.557640075683594, + 31.11269760131836, + 31.827661514282227 + ] + }, + "confidence": 0.616540888528013 + }, + { + "observation_id": "8c66c514-6e9a-4033-bfbb-dfa28607c4a9", + "type": "aruco", + "marker_id": 247, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 442.0, + 549.0 + ], + [ + 415.0, + 524.0 + ], + [ + 437.0, + 520.0 + ], + [ + 464.0, + 545.0 + ] + ], + "center_px": [ + 439.5, + 534.5 + ], + "quality": { + "area_px": 658.0, + "perimeter_px": 118.31483459472656, + "sharpness": { + "laplacian_var": 2355.6744409733983 + }, + "contrast": { + "p05": 23.0, + "p95": 180.0, + "dynamic_range": 157.0, + "mean_gray": 108.16359918200409, + "std_gray": 61.881853788931394 + }, + "geometry": { + "distance_to_center_norm": 0.31172657012939453, + "distance_to_border_px": 415.0 + }, + "edge_ratio": 1.6456001465781875, + "edge_lengths_px": [ + 36.79673767089844, + 22.360679626464844, + 36.79673767089844, + 22.360679626464844 + ] + }, + "confidence": 0.2665694139483502 + }, + { + "observation_id": "87f7c29a-189c-47dd-92ed-df38c90ba6f1", + "type": "aruco", + "marker_id": 215, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 565.0, + 714.0 + ], + [ + 544.0, + 692.0 + ], + [ + 568.0, + 672.0 + ], + [ + 589.0, + 694.0 + ] + ], + "center_px": [ + 566.5, + 693.0 + ], + "quality": { + "area_px": 948.0, + "perimeter_px": 123.30962371826172, + "sharpness": { + "laplacian_var": 948.7205075308444 + }, + "contrast": { + "p05": 21.0, + "p95": 170.0, + "dynamic_range": 149.0, + "mean_gray": 87.45253164556962, + "std_gray": 63.36793023445192 + }, + "geometry": { + "distance_to_center_norm": 0.24080945551395416, + "distance_to_border_px": 366.0 + }, + "edge_ratio": 1.027197727372641, + "edge_lengths_px": [ + 30.4138126373291, + 31.240999221801758, + 30.4138126373291, + 31.240999221801758 + ] + }, + "confidence": 0.6152661587526339 + }, + { + "observation_id": "fd6459c5-3b64-4678-9684-a9329d65c0b1", + "type": "aruco", + "marker_id": 58, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 903.0, + 772.0 + ], + [ + 882.0, + 794.0 + ], + [ + 858.0, + 773.0 + ], + [ + 879.0, + 752.0 + ] + ], + "center_px": [ + 880.5, + 772.75 + ], + "quality": { + "area_px": 946.5, + "perimeter_px": 123.24373435974121, + "sharpness": { + "laplacian_var": 1446.0998691484099 + }, + "contrast": { + "p05": 34.0, + "p95": 175.0, + "dynamic_range": 141.0, + "mean_gray": 92.60221870047543, + "std_gray": 58.54318515049794 + }, + "geometry": { + "distance_to_center_norm": 0.31413766741752625, + "distance_to_border_px": 286.0 + }, + "edge_ratio": 1.0738069198414777, + "edge_lengths_px": [ + 30.4138126373291, + 31.890438079833984, + 29.698484420776367, + 31.240999221801758 + ] + }, + "confidence": 0.5876289194459208 + }, + { + "observation_id": "56cfdbdb-2d44-4cb8-bd76-8ee2bacd6671", + "type": "aruco", + "marker_id": 72, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 138.0, + 787.0 + ], + [ + 113.0, + 809.0 + ], + [ + 93.0, + 789.0 + ], + [ + 118.0, + 767.0 + ] + ], + "center_px": [ + 115.5, + 788.0 + ], + "quality": { + "area_px": 940.0, + "perimeter_px": 123.17184448242188, + "sharpness": { + "laplacian_var": 604.4415315905076 + }, + "contrast": { + "p05": 6.0, + "p95": 133.0, + "dynamic_range": 127.0, + "mean_gray": 50.246422893481714, + "std_gray": 50.2390597357709 + }, + "geometry": { + "distance_to_center_norm": 0.725993812084198, + "distance_to_border_px": 93.0 + }, + "edge_ratio": 1.177391162675776, + "edge_lengths_px": [ + 33.30165100097656, + 28.284271240234375, + 33.30165100097656, + 28.284271240234375 + ] + }, + "confidence": 0.5322501871361803 + }, + { + "observation_id": "1b7b3f06-58ea-458d-9255-139e9233c709", + "type": "aruco", + "marker_id": 69, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 999.0, + 755.0 + ], + [ + 978.0, + 776.0 + ], + [ + 955.0, + 755.0 + ], + [ + 976.0, + 734.0 + ] + ], + "center_px": [ + 977.0, + 755.0 + ], + "quality": { + "area_px": 924.0, + "perimeter_px": 121.68661499023438, + "sharpness": { + "laplacian_var": 1427.420428863967 + }, + "contrast": { + "p05": 40.0, + "p95": 177.0, + "dynamic_range": 137.0, + "mean_gray": 98.6042345276873, + "std_gray": 56.7245592071717 + }, + "geometry": { + "distance_to_center_norm": 0.37230345606803894, + "distance_to_border_px": 304.0 + }, + "edge_ratio": 1.0487007563440722, + "edge_lengths_px": [ + 29.698484420776367, + 31.14482307434082, + 29.698484420776367, + 31.14482307434082 + ] + }, + "confidence": 0.5873934926369923 + }, + { + "observation_id": "80529ad6-4520-49e9-b508-3246757f7428", + "type": "aruco", + "marker_id": 53, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 76.0, + 765.0 + ], + [ + 50.0, + 785.0 + ], + [ + 32.0, + 764.0 + ], + [ + 58.0, + 744.0 + ] + ], + "center_px": [ + 54.0, + 764.5 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.92214965820312, + "sharpness": { + "laplacian_var": 1149.1764888888888 + }, + "contrast": { + "p05": 7.0, + "p95": 139.0, + "dynamic_range": 132.0, + "mean_gray": 87.18, + "std_gray": 50.17918824904737 + }, + "geometry": { + "distance_to_center_norm": 0.7809113264083862, + "distance_to_border_px": 32.0 + }, + "edge_ratio": 1.1859747094873558, + "edge_lengths_px": [ + 32.80244064331055, + 27.658634185791016, + 32.80244064331055, + 27.658634185791016 + ] + }, + "confidence": 0.32594286952973284 + }, + { + "observation_id": "b758ff43-00ab-4e37-a839-8d67e4155775", + "type": "aruco", + "marker_id": 103, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 823.0, + 743.0 + ], + [ + 803.0, + 765.0 + ], + [ + 779.0, + 745.0 + ], + [ + 799.0, + 724.0 + ] + ], + "center_px": [ + 801.0, + 744.25 + ], + "quality": { + "area_px": 906.0, + "perimeter_px": 120.58359336853027, + "sharpness": { + "laplacian_var": 1584.9415918166465 + }, + "contrast": { + "p05": 30.0, + "p95": 174.0, + "dynamic_range": 144.0, + "mean_gray": 126.23913043478261, + "std_gray": 56.63381767927601 + }, + "geometry": { + "distance_to_center_norm": 0.24413886666297913, + "distance_to_border_px": 315.0 + }, + "edge_ratio": 1.0772758352345433, + "edge_lengths_px": [ + 29.73213768005371, + 31.240999221801758, + 29.0, + 30.610456466674805 + ] + }, + "confidence": 0.5606734879266068 + }, + { + "observation_id": "aedbe54a-d185-4197-9792-77d7d519bb01", + "type": "aruco", + "marker_id": 51, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 747.0, + 705.0 + ], + [ + 724.0, + 724.0 + ], + [ + 703.0, + 703.0 + ], + [ + 726.0, + 683.0 + ] + ], + "center_px": [ + 725.0, + 703.75 + ], + "quality": { + "area_px": 904.0, + "perimeter_px": 120.42466735839844, + "sharpness": { + "laplacian_var": 1425.730397310992 + }, + "contrast": { + "p05": 25.0, + "p95": 173.0, + "dynamic_range": 148.0, + "mean_gray": 88.02341137123746, + "std_gray": 60.58805571551177 + }, + "geometry": { + "distance_to_center_norm": 0.18202924728393555, + "distance_to_border_px": 356.0 + }, + "edge_ratio": 1.0262982208923905, + "edge_lengths_px": [ + 29.832868576049805, + 29.698484420776367, + 30.479501724243164, + 30.4138126373291 + ] + }, + "confidence": 0.5872237273710109 + }, + { + "observation_id": "e0d97e83-ecef-4658-a943-10487048c80b", + "type": "aruco", + "marker_id": 56, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 119.0, + 710.0 + ], + [ + 94.0, + 730.0 + ], + [ + 76.0, + 709.0 + ], + [ + 102.0, + 690.0 + ] + ], + "center_px": [ + 97.75, + 709.75 + ], + "quality": { + "area_px": 864.0, + "perimeter_px": 118.12554931640625, + "sharpness": { + "laplacian_var": 968.3578168166666 + }, + "contrast": { + "p05": 6.0, + "p95": 136.0, + "dynamic_range": 130.0, + "mean_gray": 46.16981132075472, + "std_gray": 49.20730448013899 + }, + "geometry": { + "distance_to_center_norm": 0.7166538238525391, + "distance_to_border_px": 76.0 + }, + "edge_ratio": 1.226816924595493, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 32.202484130859375, + 26.248809814453125 + ] + }, + "confidence": 0.46950770604173 + }, + { + "observation_id": "4074342a-ec93-4db4-bf21-95a559983699", + "type": "aruco", + "marker_id": 46, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 73.0, + 695.0 + ], + [ + 48.0, + 715.0 + ], + [ + 30.0, + 694.0 + ], + [ + 55.0, + 675.0 + ] + ], + "center_px": [ + 51.5, + 694.75 + ], + "quality": { + "area_px": 863.5, + "perimeter_px": 117.98213958740234, + "sharpness": { + "laplacian_var": 900.750086057507 + }, + "contrast": { + "p05": 7.0, + "p95": 138.0, + "dynamic_range": 131.0, + "mean_gray": 80.92109777015438, + "std_gray": 51.03488818616118 + }, + "geometry": { + "distance_to_center_norm": 0.7624196410179138, + "distance_to_border_px": 30.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 27.658634185791016, + 31.400636672973633, + 26.90724754333496 + ] + }, + "confidence": 0.2902883953953809 + }, + { + "observation_id": "aec6f6e1-f863-4be7-86f6-670da880dfd6", + "type": "aruco", + "marker_id": 68, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 50.0, + 652.0 + ], + [ + 25.0, + 672.0 + ], + [ + 7.0, + 652.0 + ], + [ + 31.0, + 632.0 + ] + ], + "center_px": [ + 28.25, + 652.0 + ], + "quality": { + "area_px": 860.0, + "perimeter_px": 117.75009727478027, + "sharpness": { + "laplacian_var": 765.5794806391044 + }, + "contrast": { + "p05": 6.0, + "p95": 138.0, + "dynamic_range": 132.0, + "mean_gray": 60.22508591065292, + "std_gray": 51.90037234016344 + }, + "geometry": { + "distance_to_center_norm": 0.778620183467865, + "distance_to_border_px": 7.0 + }, + "edge_ratio": 1.1898512151323013, + "edge_lengths_px": [ + 32.015621185302734, + 26.90724754333496, + 31.240999221801758, + 27.58622932434082 + ] + }, + "confidence": 0.06745941479560678 + }, + { + "observation_id": "bdee0531-95ef-4e78-a2bc-5dd8985951cf", + "type": "aruco", + "marker_id": 79, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 603.0, + 594.0 + ], + [ + 579.0, + 612.0 + ], + [ + 561.0, + 592.0 + ], + [ + 584.0, + 574.0 + ] + ], + "center_px": [ + 581.75, + 593.0 + ], + "quality": { + "area_px": 803.0, + "perimeter_px": 113.69964027404785, + "sharpness": { + "laplacian_var": 1656.0680687854385 + }, + "contrast": { + "p05": 12.0, + "p95": 161.0, + "dynamic_range": 149.0, + "mean_gray": 98.64845173041894, + "std_gray": 55.913593747198206 + }, + "geometry": { + "distance_to_center_norm": 0.16451223194599152, + "distance_to_border_px": 468.0 + }, + "edge_ratio": 1.1149412421944707, + "edge_lengths_px": [ + 30.0, + 26.90724754333496, + 29.20616340637207, + 27.58622932434082 + ] + }, + "confidence": 0.48014488393995497 + }, + { + "observation_id": "f0b8ac06-21cf-40d4-925f-311854594c7d", + "type": "aruco", + "marker_id": 55, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 720.0, + 532.0 + ], + [ + 698.0, + 550.0 + ], + [ + 678.0, + 531.0 + ], + [ + 700.0, + 513.0 + ] + ], + "center_px": [ + 699.0, + 531.5 + ], + "quality": { + "area_px": 778.0, + "perimeter_px": 112.02313995361328, + "sharpness": { + "laplacian_var": 1630.603042441958 + }, + "contrast": { + "p05": 23.0, + "p95": 174.0, + "dynamic_range": 151.0, + "mean_gray": 95.26275992438563, + "std_gray": 62.75795126376546 + }, + "geometry": { + "distance_to_center_norm": 0.025172246620059013, + "distance_to_border_px": 513.0 + }, + "edge_ratio": 1.0304177609146679, + "edge_lengths_px": [ + 28.42534065246582, + 27.58622932434082, + 28.42534065246582, + 27.58622932434082 + ] + }, + "confidence": 0.5033557129355607 + }, + { + "observation_id": "9df91508-1493-48a2-9931-c456a8f96fe7", + "type": "aruco", + "marker_id": 66, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 879.0, + 509.0 + ], + [ + 858.0, + 527.0 + ], + [ + 837.0, + 508.0 + ], + [ + 857.0, + 490.0 + ] + ], + "center_px": [ + 857.75, + 508.5 + ], + "quality": { + "area_px": 776.5, + "perimeter_px": 111.95437049865723, + "sharpness": { + "laplacian_var": 1308.7119920798898 + }, + "contrast": { + "p05": 28.0, + "p95": 174.0, + "dynamic_range": 146.0, + "mean_gray": 80.56060606060606, + "std_gray": 60.05184093458493 + }, + "geometry": { + "distance_to_center_norm": 0.1570063829421997, + "distance_to_border_px": 490.0 + }, + "edge_ratio": 1.0803365840024208, + "edge_lengths_px": [ + 27.658634185791016, + 28.319604873657227, + 26.90724754333496, + 29.068883895874023 + ] + }, + "confidence": 0.4791716529202595 + }, + { + "observation_id": "bcc4b5e3-d686-49a9-b5af-09ff993162c6", + "type": "aruco", + "marker_id": 47, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 692.0, + 463.0 + ], + [ + 670.0, + 480.0 + ], + [ + 650.0, + 462.0 + ], + [ + 672.0, + 445.0 + ] + ], + "center_px": [ + 671.0, + 462.5 + ], + "quality": { + "area_px": 736.0, + "perimeter_px": 109.42024993896484, + "sharpness": { + "laplacian_var": 1430.0492813475546 + }, + "contrast": { + "p05": 18.0, + "p95": 168.0, + "dynamic_range": 150.0, + "mean_gray": 84.02217741935483, + "std_gray": 61.295601129603824 + }, + "geometry": { + "distance_to_center_norm": 0.10187894850969315, + "distance_to_border_px": 445.0 + }, + "edge_ratio": 1.0332858231363153, + "edge_lengths_px": [ + 27.80287742614746, + 26.90724754333496, + 27.80287742614746, + 26.90724754333496 + ] + }, + "confidence": 0.47486054263026106 + }, + { + "observation_id": "445a3c4c-8296-4f7d-ba3d-2bf4551290c5", + "type": "aruco", + "marker_id": 217, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 226.0, + 383.0 + ], + [ + 209.0, + 365.0 + ], + [ + 233.0, + 348.0 + ], + [ + 250.0, + 366.0 + ] + ], + "center_px": [ + 229.5, + 365.5 + ], + "quality": { + "area_px": 721.0, + "perimeter_px": 108.33943939208984, + "sharpness": { + "laplacian_var": 1811.1556224254036 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 72.70393374741201, + "std_gray": 58.0764945436627 + }, + "geometry": { + "distance_to_center_norm": 0.5784616470336914, + "distance_to_border_px": 209.0 + }, + "edge_ratio": 1.187894376916731, + "edge_lengths_px": [ + 24.75883674621582, + 29.4108829498291, + 24.75883674621582, + 29.4108829498291 + ] + }, + "confidence": 0.4046375469124394 + }, + { + "observation_id": "7266bc60-f269-4f1f-ba2d-6647b5f9f71f", + "type": "aruco", + "marker_id": 97, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 786.0, + 437.0 + ], + [ + 765.0, + 454.0 + ], + [ + 745.0, + 436.0 + ], + [ + 767.0, + 419.0 + ] + ], + "center_px": [ + 765.75, + 436.5 + ], + "quality": { + "area_px": 718.5, + "perimeter_px": 107.90114212036133, + "sharpness": { + "laplacian_var": 1491.443337468285 + }, + "contrast": { + "p05": 22.0, + "p95": 171.0, + "dynamic_range": 149.0, + "mean_gray": 109.3970893970894, + "std_gray": 60.642148532506475 + }, + "geometry": { + "distance_to_center_norm": 0.12573395669460297, + "distance_to_border_px": 419.0 + }, + "edge_ratio": 1.0622933508624515, + "edge_lengths_px": [ + 27.018512725830078, + 26.90724754333496, + 27.80287742614746, + 26.172504425048828 + ] + }, + "confidence": 0.4509112286273005 + }, + { + "observation_id": "9955aa87-a94a-408d-ab68-e0d3b5ca0faa", + "type": "aruco", + "marker_id": 54, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 730.0, + 434.0 + ], + [ + 708.0, + 452.0 + ], + [ + 689.0, + 434.0 + ], + [ + 710.0, + 417.0 + ] + ], + "center_px": [ + 709.25, + 434.25 + ], + "quality": { + "area_px": 717.5, + "perimeter_px": 107.86516761779785, + "sharpness": { + "laplacian_var": 1736.662652737497 + }, + "contrast": { + "p05": 19.0, + "p95": 167.0, + "dynamic_range": 148.0, + "mean_gray": 58.66320166320166, + "std_gray": 55.157409197074806 + }, + "geometry": { + "distance_to_center_norm": 0.11810554563999176, + "distance_to_border_px": 417.0 + }, + "edge_ratio": 1.0860764484296306, + "edge_lengths_px": [ + 28.42534065246582, + 26.172504425048828, + 27.018512725830078, + 26.248809814453125 + ] + }, + "confidence": 0.44042326304466006 + }, + { + "observation_id": "1c92c277-55d9-43f0-b0af-9ce5dc18852a", + "type": "aruco", + "marker_id": 85, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 576.0, + 320.0 + ], + [ + 550.0, + 337.0 + ], + [ + 536.0, + 319.0 + ], + [ + 558.0, + 303.0 + ] + ], + "center_px": [ + 555.0, + 319.75 + ], + "quality": { + "area_px": 684.0, + "perimeter_px": 105.82973670959473, + "sharpness": { + "laplacian_var": 2755.9650784771356 + }, + "contrast": { + "p05": 18.3, + "p95": 164.0, + "dynamic_range": 145.7, + "mean_gray": 118.58029978586724, + "std_gray": 53.53363006243584 + }, + "geometry": { + "distance_to_center_norm": 0.30577781796455383, + "distance_to_border_px": 303.0 + }, + "edge_ratio": 1.362266203821036, + "edge_lengths_px": [ + 31.064449310302734, + 22.803508758544922, + 27.20294189453125, + 24.75883674621582 + ] + }, + "confidence": 0.33473633767097827 + }, + { + "observation_id": "ff6b2bce-b991-4f38-9fe9-aada402ab945", + "type": "aruco", + "marker_id": 205, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 146.0, + 302.0 + ], + [ + 128.0, + 284.0 + ], + [ + 151.0, + 268.0 + ], + [ + 168.0, + 285.0 + ] + ], + "center_px": [ + 148.25, + 284.75 + ], + "quality": { + "area_px": 682.5, + "perimeter_px": 105.31820297241211, + "sharpness": { + "laplacian_var": 1274.9818476124406 + }, + "contrast": { + "p05": 8.0, + "p95": 153.0, + "dynamic_range": 145.0, + "mean_gray": 78.65806451612903, + "std_gray": 55.65065056297059 + }, + "geometry": { + "distance_to_center_norm": 0.6957105398178101, + "distance_to_border_px": 128.0 + }, + "edge_ratio": 1.1653889989621362, + "edge_lengths_px": [ + 25.45584487915039, + 28.017850875854492, + 24.041629791259766, + 27.80287742614746 + ] + }, + "confidence": 0.3904275743165678 + }, + { + "observation_id": "0e2d7780-31fb-4084-af71-f7a38ca9f46a", + "type": "aruco", + "marker_id": 113, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 561.0, + 509.0 + ], + [ + 545.0, + 479.0 + ], + [ + 562.0, + 476.0 + ], + [ + 579.0, + 506.0 + ] + ], + "center_px": [ + 561.75, + 492.5 + ], + "quality": { + "area_px": 574.5, + "perimeter_px": 103.99284362792969, + "sharpness": { + "laplacian_var": 2618.6153012470177 + }, + "contrast": { + "p05": 28.0, + "p95": 182.0, + "dynamic_range": 154.0, + "mean_gray": 76.1413881748072, + "std_gray": 60.266572002236316 + }, + "geometry": { + "distance_to_center_norm": 0.18358337879180908, + "distance_to_border_px": 476.0 + }, + "edge_ratio": 1.997481717814946, + "edge_lengths_px": [ + 34.0, + 17.262676239013672, + 34.48188018798828, + 18.248287200927734 + ] + }, + "confidence": 0.19174142951303974 + }, + { + "observation_id": "e3bd8018-688b-45a4-84f0-e86d624e98bf", + "type": "aruco", + "marker_id": 92, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 349.0, + 309.0 + ], + [ + 327.0, + 326.0 + ], + [ + 309.0, + 310.0 + ], + [ + 330.0, + 293.0 + ] + ], + "center_px": [ + 328.75, + 309.5 + ], + "quality": { + "area_px": 658.5, + "perimeter_px": 103.74406433105469, + "sharpness": { + "laplacian_var": 1094.0317657154478 + }, + "contrast": { + "p05": 9.0, + "p95": 158.0, + "dynamic_range": 149.0, + "mean_gray": 66.65924276169265, + "std_gray": 58.28183701574557 + }, + "geometry": { + "distance_to_center_norm": 0.5045555830001831, + "distance_to_border_px": 293.0 + }, + "edge_ratio": 1.1544516556294537, + "edge_lengths_px": [ + 27.80287742614746, + 24.083189010620117, + 27.018512725830078, + 24.83948516845703 + ] + }, + "confidence": 0.38026711457279644 + }, + { + "observation_id": "c83e8a5d-0218-4bca-8dd1-ac4cf0190cdd", + "type": "aruco", + "marker_id": 105, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 522.0, + 341.0 + ], + [ + 501.0, + 358.0 + ], + [ + 483.0, + 341.0 + ], + [ + 503.0, + 325.0 + ] + ], + "center_px": [ + 502.25, + 341.25 + ], + "quality": { + "area_px": 643.5, + "perimeter_px": 102.22933197021484, + "sharpness": { + "laplacian_var": 792.6312567894008 + }, + "contrast": { + "p05": 12.0, + "p95": 156.59999999999997, + "dynamic_range": 144.59999999999997, + "mean_gray": 44.28285077951002, + "std_gray": 50.37014613113326 + }, + "geometry": { + "distance_to_center_norm": 0.32757362723350525, + "distance_to_border_px": 325.0 + }, + "edge_ratio": 1.0912674534258815, + "edge_lengths_px": [ + 27.018512725830078, + 24.75883674621582, + 25.612497329711914, + 24.83948516845703 + ] + }, + "confidence": 0.3931208602008742 + }, + { + "observation_id": "c344bc5a-7690-456d-920f-a4139901317b", + "type": "aruco", + "marker_id": 102, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 378.0, + 281.0 + ], + [ + 356.0, + 296.0 + ], + [ + 340.0, + 278.0 + ], + [ + 362.0, + 263.0 + ] + ], + "center_px": [ + 359.0, + 279.5 + ], + "quality": { + "area_px": 636.0, + "perimeter_px": 101.42048645019531, + "sharpness": { + "laplacian_var": 1475.439773960402 + }, + "contrast": { + "p05": 12.0, + "p95": 159.0, + "dynamic_range": 147.0, + "mean_gray": 104.82805429864253, + "std_gray": 54.152686185461974 + }, + "geometry": { + "distance_to_center_norm": 0.49463948607444763, + "distance_to_border_px": 263.0 + }, + "edge_ratio": 1.1056282539133682, + "edge_lengths_px": [ + 26.62705421447754, + 24.083189010620117, + 26.62705421447754, + 24.083189010620117 + ] + }, + "confidence": 0.3834923705135548 + }, + { + "observation_id": "2f3f9ebe-a667-4a6c-b409-86086086a63a", + "type": "aruco", + "marker_id": 59, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 444.0, + 258.0 + ], + [ + 425.0, + 275.0 + ], + [ + 406.0, + 259.0 + ], + [ + 427.0, + 243.0 + ] + ], + "center_px": [ + 425.5, + 258.75 + ], + "quality": { + "area_px": 607.0, + "perimeter_px": 99.40690803527832, + "sharpness": { + "laplacian_var": 1418.6926709234967 + }, + "contrast": { + "p05": 11.0, + "p95": 160.0, + "dynamic_range": 149.0, + "mean_gray": 106.14797136038186, + "std_gray": 57.2326997711296 + }, + "geometry": { + "distance_to_center_norm": 0.45247167348861694, + "distance_to_border_px": 243.0 + }, + "edge_ratio": 1.1644874731532113, + "edge_lengths_px": [ + 25.495098114013672, + 24.83948516845703, + 26.4007568359375, + 22.671567916870117 + ] + }, + "confidence": 0.3475062428717297 + }, + { + "observation_id": "aa9147d1-0904-481d-ad5b-bf82fcd7ea15", + "type": "aruco", + "marker_id": 57, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 540.0, + 214.0 + ], + [ + 518.0, + 229.0 + ], + [ + 502.0, + 212.0 + ], + [ + 524.0, + 198.0 + ] + ], + "center_px": [ + 521.0, + 213.25 + ], + "quality": { + "area_px": 595.0, + "perimeter_px": 98.67651557922363, + "sharpness": { + "laplacian_var": 2376.767235312675 + }, + "contrast": { + "p05": 11.0, + "p95": 161.0, + "dynamic_range": 150.0, + "mean_gray": 88.00492610837438, + "std_gray": 57.82609375178821 + }, + "geometry": { + "distance_to_center_norm": 0.425087571144104, + "distance_to_border_px": 198.0 + }, + "edge_ratio": 1.176760682519333, + "edge_lengths_px": [ + 26.62705421447754, + 23.34523582458496, + 26.07680892944336, + 22.627416610717773 + ] + }, + "confidence": 0.3370835485575886 + }, + { + "observation_id": "91dcbda9-c721-434c-a4bf-b6eb34c482f3", + "type": "aruco", + "marker_id": 48, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 435.0, + 187.0 + ], + [ + 413.0, + 203.0 + ], + [ + 397.0, + 188.0 + ], + [ + 416.0, + 172.0 + ] + ], + "center_px": [ + 415.25, + 187.5 + ], + "quality": { + "area_px": 587.5, + "perimeter_px": 98.18157768249512, + "sharpness": { + "laplacian_var": 1963.1431301414739 + }, + "contrast": { + "p05": 9.0, + "p95": 157.0, + "dynamic_range": 148.0, + "mean_gray": 65.73891625615764, + "std_gray": 57.77965459852634 + }, + "geometry": { + "distance_to_center_norm": 0.5177453756332397, + "distance_to_border_px": 172.0 + }, + "edge_ratio": 1.2403473347124077, + "edge_lengths_px": [ + 27.20294189453125, + 21.931713104248047, + 24.83948516845703, + 24.20743751525879 + ] + }, + "confidence": 0.3157717646545193 + }, + { + "observation_id": "0a807718-ee7f-4a3e-baa4-59fa8190b575", + "type": "aruco", + "marker_id": 63, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 295.0, + 182.0 + ], + [ + 274.0, + 199.0 + ], + [ + 257.0, + 184.0 + ], + [ + 277.0, + 168.0 + ] + ], + "center_px": [ + 275.75, + 183.25 + ], + "quality": { + "area_px": 586.0, + "perimeter_px": 98.10608673095703, + "sharpness": { + "laplacian_var": 1004.0248132785243 + }, + "contrast": { + "p05": 8.0, + "p95": 152.0, + "dynamic_range": 144.0, + "mean_gray": 57.34663341645885, + "std_gray": 54.68788834886238 + }, + "geometry": { + "distance_to_center_norm": 0.6330687999725342, + "distance_to_border_px": 168.0 + }, + "edge_ratio": 1.1917355175830322, + "edge_lengths_px": [ + 27.018512725830078, + 22.671567916870117, + 25.612497329711914, + 22.803508758544922 + ] + }, + "confidence": 0.32781322776968225 + }, + { + "observation_id": "168eb10f-2145-4fa3-8a5c-76a836500d5f", + "type": "aruco", + "marker_id": 65, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 330.0, + 124.0 + ], + [ + 309.0, + 139.0 + ], + [ + 292.0, + 125.0 + ], + [ + 312.0, + 109.0 + ] + ], + "center_px": [ + 310.75, + 124.25 + ], + "quality": { + "area_px": 568.5, + "perimeter_px": 96.87293815612793, + "sharpness": { + "laplacian_var": 1300.0755674364495 + }, + "contrast": { + "p05": 8.0, + "p95": 155.0, + "dynamic_range": 147.0, + "mean_gray": 86.9776119402985, + "std_gray": 55.68315657930573 + }, + "geometry": { + "distance_to_center_norm": 0.6482013463973999, + "distance_to_border_px": 109.0 + }, + "edge_ratio": 1.1718344795212643, + "edge_lengths_px": [ + 25.806976318359375, + 22.022714614868164, + 25.612497329711914, + 23.430749893188477 + ] + }, + "confidence": 0.323424516536529 + }, + { + "observation_id": "660ba07f-f4bc-4684-9e5a-90bb970d25f4", + "type": "aruco", + "marker_id": 71, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 356.0, + 167.0 + ], + [ + 333.0, + 181.0 + ], + [ + 319.0, + 165.0 + ], + [ + 341.0, + 151.0 + ] + ], + "center_px": [ + 337.25, + 166.0 + ], + "quality": { + "area_px": 563.0, + "perimeter_px": 96.19463729858398, + "sharpness": { + "laplacian_var": 1894.9311071943598 + }, + "contrast": { + "p05": 9.0, + "p95": 156.0, + "dynamic_range": 147.0, + "mean_gray": 103.9113924050633, + "std_gray": 53.71344264563591 + }, + "geometry": { + "distance_to_center_norm": 0.5945987105369568, + "distance_to_border_px": 151.0 + }, + "edge_ratio": 1.266484164199827, + "edge_lengths_px": [ + 26.925823211669922, + 21.260292053222656, + 26.07680892944336, + 21.931713104248047 + ] + }, + "confidence": 0.2963584890699928 + }, + { + "observation_id": "9940e8a0-e007-43e5-8dee-e5486066e01a", + "type": "aruco", + "marker_id": 87, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 180.0, + 65.0 + ], + [ + 159.0, + 81.0 + ], + [ + 143.0, + 66.0 + ], + [ + 164.0, + 52.0 + ] + ], + "center_px": [ + 161.5, + 66.0 + ], + "quality": { + "area_px": 534.0, + "perimeter_px": 94.18685722351074, + "sharpness": { + "laplacian_var": 1427.9534499507668 + }, + "contrast": { + "p05": 8.0, + "p95": 150.0, + "dynamic_range": 142.0, + "mean_gray": 94.2133676092545, + "std_gray": 52.32608089294961 + }, + "geometry": { + "distance_to_center_norm": 0.8139207363128662, + "distance_to_border_px": 52.0 + }, + "edge_ratio": 1.2806248134565528, + "edge_lengths_px": [ + 26.4007568359375, + 21.931713104248047, + 25.238859176635742, + 20.615528106689453 + ] + }, + "confidence": 0.27798930354872264 + }, + { + "observation_id": "a55279ec-7db6-4d94-925d-2c4a51813162", + "type": "aruco", + "marker_id": 80, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 318.0, + 56.0 + ], + [ + 297.0, + 71.0 + ], + [ + 281.0, + 57.0 + ], + [ + 301.0, + 42.0 + ] + ], + "center_px": [ + 299.25, + 56.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 847.3843286787691 + }, + "contrast": { + "p05": 7.0, + "p95": 153.0, + "dynamic_range": 146.0, + "mean_gray": 66.73007712082263, + "std_gray": 58.398961546954666 + }, + "geometry": { + "distance_to_center_norm": 0.7121544480323792, + "distance_to_border_px": 42.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.806976318359375, + 21.260292053222656, + 25.0, + 22.022714614868164 + ] + }, + "confidence": 0.24658567276025462 + }, + { + "observation_id": "aa0ccaff-8b6b-4878-b600-ca2412c9f475", + "type": "aruco", + "marker_id": 78, + "marker_size_m": 0.025, + "image_points_px": [ + [ + 352.0, + 82.0 + ], + [ + 332.0, + 97.0 + ], + [ + 315.0, + 83.0 + ], + [ + 336.0, + 68.0 + ] + ], + "center_px": [ + 333.75, + 82.5 + ], + "quality": { + "area_px": 534.5, + "perimeter_px": 94.0899829864502, + "sharpness": { + "laplacian_var": 1495.6557828150394 + }, + "contrast": { + "p05": 8.0, + "p95": 154.39999999999998, + "dynamic_range": 146.39999999999998, + "mean_gray": 80.43256997455471, + "std_gray": 54.727417597641875 + }, + "geometry": { + "distance_to_center_norm": 0.6652719378471375, + "distance_to_border_px": 68.0 + }, + "edge_ratio": 1.2138580342054863, + "edge_lengths_px": [ + 25.0, + 22.022714614868164, + 25.806976318359375, + 21.260292053222656 + ] + }, + "confidence": 0.29355437233363646 + } + ], + "rejected_candidates": [ + { + "image_points_px": [ + [ + 486.0, + 719.0 + ], + [ + 454.0, + 799.0 + ], + [ + 418.0, + 837.0 + ], + [ + 463.0, + 740.0 + ] + ], + "center_px": [ + 455.25, + 773.75 + ], + "area_px": 1475.0 + }, + { + "image_points_px": [ + [ + 438.0, + 753.0 + ], + [ + 414.0, + 813.0 + ], + [ + 410.0, + 798.0 + ], + [ + 428.0, + 756.0 + ] + ], + "center_px": [ + 422.5, + 780.0 + ], + "area_px": 483.0 + }, + { + "image_points_px": [ + [ + 800.0, + 580.0 + ], + [ + 824.0, + 598.0 + ], + [ + 805.0, + 618.0 + ], + [ + 781.0, + 600.0 + ] + ], + "center_px": [ + 802.5, + 599.0 + ], + "area_px": 822.0 + }, + { + "image_points_px": [ + [ + 347.0, + 811.0 + ], + [ + 356.0, + 811.0 + ], + [ + 379.0, + 836.0 + ], + [ + 372.0, + 837.0 + ] + ], + "center_px": [ + 363.5, + 823.75 + ], + "area_px": 216.0 + }, + { + "image_points_px": [ + [ + 606.0, + 542.0 + ], + [ + 580.0, + 559.0 + ], + [ + 569.0, + 560.0 + ], + [ + 589.0, + 544.0 + ] + ], + "center_px": [ + 586.0, + 551.25 + ], + "area_px": 196.5 + }, + { + "image_points_px": [ + [ + 523.0, + 557.0 + ], + [ + 498.0, + 574.0 + ], + [ + 494.0, + 570.0 + ], + [ + 503.0, + 561.0 + ] + ], + "center_px": [ + 504.5, + 565.5 + ], + "area_px": 156.0 + }, + { + "image_points_px": [ + [ + 803.0, + 972.0 + ], + [ + 814.0, + 977.0 + ], + [ + 824.0, + 985.0 + ], + [ + 808.0, + 977.0 + ] + ], + "center_px": [ + 812.25, + 977.75 + ], + "area_px": 39.0 + } + ] +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/render_g_camera_pose.json b/data/camera_study/Scene10/k4_defg/render_g_camera_pose.json new file mode 100644 index 0000000..66c1200 --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/render_g_camera_pose.json @@ -0,0 +1,663 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:16Z", + "source": { + "detection_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\camera_study\\Scene10\\k4_defg\\render_g_aruco_detection.json", + "robot_json": "C:\\Users\\kech\\SynologyDrive\\2026-AppServer-AppRobot\\appRobotRendering\\data\\robot\\robot.json" + }, + "camera": { + "camera_id": "g", + "camera_matrix": [ + [ + 2006.321044921875, + 0.0, + 720.385009765625 + ], + [ + 0.0, + 2007.03759765625, + 541.6199340820312 + ], + [ + 0.0, + 0.0, + 1.0 + ] + ], + "distortion_coefficients": [ + 0.019999999552965164, + -0.009999999776482582, + 0.0, + 0.0, + 0.0 + ] + }, + "estimation": { + "method": "single_camera_marker_center_lm", + "description": "Rigid init from per-marker pose estimates, followed by LM on normalized marker-center reprojection residuals.", + "marker_size_m": 0.025, + "num_used_markers": 33, + "used_marker_ids": [ + 86, + 64, + 215, + 58, + 72, + 69, + 53, + 103, + 51, + 56, + 46, + 68, + 79, + 55, + 66, + 47, + 217, + 97, + 54, + 85, + 205, + 92, + 105, + 102, + 59, + 57, + 48, + 63, + 65, + 71, + 87, + 80, + 78 + ], + "history": { + "iters": [ + 0, + 1, + 2, + 3 + ], + "rms": [ + 0.009919110626502768, + 0.00131603695020182, + 0.001107937977321884, + 0.0011079307333379282 + ], + "lambda": [ + 0.001, + 0.0005, + 0.00025, + 0.000125 + ] + }, + "residual_rms_px": 3.1533723108903047, + "residual_median_px": 2.642822899939481, + "residual_max_px": 5.712847334889287, + "sigma2_normalized": 1.3502615607878073e-06 + }, + "camera_pose": { + "world_to_camera": { + "rotation_matrix": [ + [ + -0.7068235278129578, + -0.7073897123336792, + 0.0005333506851457059 + ], + [ + -0.6407679319381714, + 0.6399352550506592, + -0.424145370721817 + ], + [ + 0.2996947467327118, + -0.3001376986503601, + -0.9055939316749573 + ] + ], + "translation_m": [ + -0.00025032571284100413, + 0.3299143314361572, + 1.3926880359649658 + ], + "rvec_rad": [ + 1.1160234227786252, + -2.692342329270323, + 0.5995714660194011 + ] + }, + "camera_in_world": { + "position_m": [ + -0.20615969598293304, + 0.20669731497764587, + 1.40114164352417 + ], + "position_mm": [ + -206.15969848632812, + 206.6973114013672, + 1401.1416015625 + ], + "orientation_deg": { + "roll": -161.66343688964844, + "pitch": -17.43927001953125, + "yaw": -137.80624389648438 + } + }, + "uncertainty": { + "pose_covariance_6x6": [ + [ + 4.975476294351241e-06, + -6.1997390444361685e-06, + 4.6125841623440254e-06, + 3.8792135706014886e-07, + 1.0177551175558624e-06, + 4.222247510549453e-06 + ], + [ + -6.199739044436152e-06, + 1.6975220993135513e-05, + -1.1554389240886986e-05, + -2.6694426951616535e-06, + -1.5071367865932754e-06, + -1.0044703768545779e-05 + ], + [ + 4.61258416234392e-06, + -1.1554389240886865e-05, + 4.305804556659614e-05, + 4.2916213343878956e-06, + -2.367994951969628e-06, + 1.1642827799058608e-07 + ], + [ + 3.8792135706013785e-07, + -2.66944269516164e-06, + 4.29162133438789e-06, + 8.873234421723078e-07, + -1.077878898019132e-07, + 5.938016020714988e-07 + ], + [ + 1.0177551175558734e-06, + -1.5071367865932949e-06, + -2.3679949519695885e-06, + -1.0778788980190919e-07, + 6.616834799099002e-07, + 1.592756267167381e-06 + ], + [ + 4.2222475105494726e-06, + -1.0044703768545826e-05, + 1.1642827799072875e-07, + 5.938016020715144e-07, + 1.5927562671673749e-06, + 1.016526335390813e-05 + ] + ], + "parameter_std": { + "rvec_std_deg": [ + 0.12780268061910577, + 0.23606432019497975, + 0.37596705361655935 + ], + "tvec_std_m": [ + 0.0009419784722446197, + 0.0008134392908569761, + 0.0031883010136917957 + ] + }, + "camera_center_std_m": [ + 0.005660072460127804, + 0.007818574448214759, + 0.0036781658638248924 + ], + "camera_center_std_mm": [ + 5.660072460127804, + 7.8185744482147586, + 3.6781658638248924 + ], + "orientation_std_deg": { + "roll": 0.33214565947431973, + "pitch": 0.23919321283200756, + "yaw": 0.12115842919429226 + } + } + }, + "observations": { + "markers": [ + { + "marker_id": 86, + "observed_center_px": [ + 70.5, + 959.0 + ], + "projected_center_px": [ + 72.42671966552734, + 955.485107421875 + ], + "reprojection_error_px": 4.0083311371801615, + "confidence": 0.5795855489013004 + }, + { + "marker_id": 64, + "observed_center_px": [ + 921.75, + 859.0 + ], + "projected_center_px": [ + 922.7560424804688, + 862.7833251953125 + ], + "reprojection_error_px": 3.9148015283017963, + "confidence": 0.616540888528013 + }, + { + "marker_id": 215, + "observed_center_px": [ + 566.5, + 693.0 + ], + "projected_center_px": [ + 568.2459106445312, + 692.080322265625 + ], + "reprojection_error_px": 1.9733248880487617, + "confidence": 0.6152661587526339 + }, + { + "marker_id": 58, + "observed_center_px": [ + 880.5, + 772.75 + ], + "projected_center_px": [ + 879.3278198242188, + 769.2518310546875 + ], + "reprojection_error_px": 3.689334944735071, + "confidence": 0.5876289194459208 + }, + { + "marker_id": 72, + "observed_center_px": [ + 115.5, + 788.0 + ], + "projected_center_px": [ + 114.51494598388672, + 788.7781982421875 + ], + "reprojection_error_px": 1.2553580838966305, + "confidence": 0.5322501871361803 + }, + { + "marker_id": 69, + "observed_center_px": [ + 977.0, + 755.0 + ], + "projected_center_px": [ + 978.3434448242188, + 750.7787475585938 + ], + "reprojection_error_px": 4.429877669845791, + "confidence": 0.5873934926369923 + }, + { + "marker_id": 53, + "observed_center_px": [ + 54.0, + 764.5 + ], + "projected_center_px": [ + 57.76123046875, + 763.97119140625 + ], + "reprojection_error_px": 3.79822236946143, + "confidence": 0.32594286952973284 + }, + { + "marker_id": 103, + "observed_center_px": [ + 801.0, + 744.25 + ], + "projected_center_px": [ + 797.4358520507812, + 746.4951782226562 + ], + "reprojection_error_px": 4.212359891487205, + "confidence": 0.5606734879266068 + }, + { + "marker_id": 51, + "observed_center_px": [ + 725.0, + 703.75 + ], + "projected_center_px": [ + 724.1592407226562, + 705.2492065429688 + ], + "reprojection_error_px": 1.7188648640657866, + "confidence": 0.5872237273710109 + }, + { + "marker_id": 56, + "observed_center_px": [ + 97.75, + 709.75 + ], + "projected_center_px": [ + 94.510986328125, + 713.8988647460938 + ], + "reprojection_error_px": 5.263486320678788, + "confidence": 0.46950770604173 + }, + { + "marker_id": 46, + "observed_center_px": [ + 51.5, + 694.75 + ], + "projected_center_px": [ + 45.80540466308594, + 695.206298828125 + ], + "reprojection_error_px": 5.712847334889287, + "confidence": 0.2902883953953809 + }, + { + "marker_id": 68, + "observed_center_px": [ + 28.25, + 652.0 + ], + "projected_center_px": [ + 32.07790756225586, + 650.2508544921875 + ], + "reprojection_error_px": 4.20860859580411, + "confidence": 0.06745941479560678 + }, + { + "marker_id": 79, + "observed_center_px": [ + 581.75, + 593.0 + ], + "projected_center_px": [ + 580.7769775390625, + 592.564453125 + ], + "reprojection_error_px": 1.0660552470726525, + "confidence": 0.48014488393995497 + }, + { + "marker_id": 55, + "observed_center_px": [ + 699.0, + 531.5 + ], + "projected_center_px": [ + 701.2785034179688, + 531.0349731445312 + ], + "reprojection_error_px": 2.3254736726100407, + "confidence": 0.5033557129355607 + }, + { + "marker_id": 66, + "observed_center_px": [ + 857.75, + 508.5 + ], + "projected_center_px": [ + 857.27294921875, + 509.6018981933594 + ], + "reprojection_error_px": 1.200731891980841, + "confidence": 0.4791716529202595 + }, + { + "marker_id": 47, + "observed_center_px": [ + 671.0, + 462.5 + ], + "projected_center_px": [ + 669.33203125, + 463.6061096191406 + ], + "reprojection_error_px": 2.001399070783231, + "confidence": 0.47486054263026106 + }, + { + "marker_id": 217, + "observed_center_px": [ + 229.5, + 365.5 + ], + "projected_center_px": [ + 227.5244140625, + 361.9618225097656 + ], + "reprojection_error_px": 4.052362243044047, + "confidence": 0.4046375469124394 + }, + { + "marker_id": 97, + "observed_center_px": [ + 765.75, + 436.5 + ], + "projected_center_px": [ + 768.8408203125, + 437.7091064453125 + ], + "reprojection_error_px": 3.318901715968526, + "confidence": 0.4509112286273005 + }, + { + "marker_id": 54, + "observed_center_px": [ + 709.25, + 434.25 + ], + "projected_center_px": [ + 710.0586547851562, + 430.8271789550781 + ], + "reprojection_error_px": 3.5170479762317965, + "confidence": 0.44042326304466006 + }, + { + "marker_id": 85, + "observed_center_px": [ + 555.0, + 319.75 + ], + "projected_center_px": [ + 556.587158203125, + 321.8631591796875 + ], + "reprojection_error_px": 2.642822899939481, + "confidence": 0.33473633767097827 + }, + { + "marker_id": 205, + "observed_center_px": [ + 148.25, + 284.75 + ], + "projected_center_px": [ + 149.84744262695312, + 286.7835693359375 + ], + "reprojection_error_px": 2.5859673606741804, + "confidence": 0.3904275743165678 + }, + { + "marker_id": 92, + "observed_center_px": [ + 328.75, + 309.5 + ], + "projected_center_px": [ + 328.0833435058594, + 312.3528137207031 + ], + "reprojection_error_px": 2.929671825684897, + "confidence": 0.38026711457279644 + }, + { + "marker_id": 105, + "observed_center_px": [ + 502.25, + 341.25 + ], + "projected_center_px": [ + 498.5203857421875, + 341.1575622558594 + ], + "reprojection_error_px": 3.730759607455309, + "confidence": 0.3931208602008742 + }, + { + "marker_id": 102, + "observed_center_px": [ + 359.0, + 279.5 + ], + "projected_center_px": [ + 359.4945373535156, + 281.3692626953125 + ], + "reprojection_error_px": 1.9335744666573331, + "confidence": 0.3834923705135548 + }, + { + "marker_id": 59, + "observed_center_px": [ + 425.5, + 258.75 + ], + "projected_center_px": [ + 428.2454833984375, + 258.3636779785156 + ], + "reprojection_error_px": 2.7725302154132963, + "confidence": 0.3475062428717297 + }, + { + "marker_id": 57, + "observed_center_px": [ + 521.0, + 213.25 + ], + "projected_center_px": [ + 521.8204956054688, + 214.8630828857422 + ], + "reprojection_error_px": 1.8097650220036505, + "confidence": 0.3370835485575886 + }, + { + "marker_id": 48, + "observed_center_px": [ + 415.25, + 187.5 + ], + "projected_center_px": [ + 416.5931396484375, + 185.31541442871094 + ], + "reprojection_error_px": 2.564456713124472, + "confidence": 0.3157717646545193 + }, + { + "marker_id": 63, + "observed_center_px": [ + 275.75, + 183.25 + ], + "projected_center_px": [ + 273.6121826171875, + 182.2046661376953 + ], + "reprojection_error_px": 2.379702932287163, + "confidence": 0.32781322776968225 + }, + { + "marker_id": 65, + "observed_center_px": [ + 310.75, + 124.25 + ], + "projected_center_px": [ + 308.9479675292969, + 123.33204650878906 + ], + "reprojection_error_px": 2.022364862603867, + "confidence": 0.323424516536529 + }, + { + "marker_id": 71, + "observed_center_px": [ + 337.25, + 166.0 + ], + "projected_center_px": [ + 337.3795471191406, + 168.51844787597656 + ], + "reprojection_error_px": 2.52177757942458, + "confidence": 0.2963584890699928 + }, + { + "marker_id": 87, + "observed_center_px": [ + 161.5, + 66.0 + ], + "projected_center_px": [ + 160.9746551513672, + 64.77437591552734 + ], + "reprojection_error_px": 1.33346976209604, + "confidence": 0.27798930354872264 + }, + { + "marker_id": 80, + "observed_center_px": [ + 299.25, + 56.5 + ], + "projected_center_px": [ + 298.39697265625, + 58.612037658691406 + ], + "reprojection_error_px": 2.277796900716975, + "confidence": 0.24658567276025462 + }, + { + "marker_id": 78, + "observed_center_px": [ + 333.75, + 82.5 + ], + "projected_center_px": [ + 335.54010009765625, + 79.4444351196289 + ], + "reprojection_error_px": 3.5413182711789872, + "confidence": 0.29355437233363646 + } + ] + }, + "qa": { + "sanity_notes": [] + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/robot_state.eval.json b/data/camera_study/Scene10/k4_defg/robot_state.eval.json new file mode 100644 index 0000000..683da2b --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/robot_state.eval.json @@ -0,0 +1,74 @@ +{ + "rows": [ + { + "joint": "x", + "estimate": 119.75973678260355, + "gt": 120.0, + "error": 0.2402632173964463, + "unit": "mm", + "observable": true, + "n_markers": 1 + }, + { + "joint": "y", + "estimate": 59.81059139656074, + "gt": 60.0, + "error": 0.18940860343926147, + "unit": "deg", + "observable": true, + "n_markers": 1 + }, + { + "joint": "z", + "estimate": -109.32715934998875, + "gt": -110.0, + "error": 0.6728406500112669, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "a", + "estimate": 19.199523806130966, + "gt": 20.0, + "error": 0.8004761938690308, + "unit": "deg", + "observable": true, + "n_markers": 3 + }, + { + "joint": "b", + "estimate": 33.16053813296324, + "gt": 30.0, + "error": 3.1605381329632394, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "c", + "estimate": -178.64072719517293, + "gt": 180.0, + "error": 1.3592728048270715, + "unit": "deg", + "observable": true, + "n_markers": 2 + }, + { + "joint": "e", + "estimate": 4.4575273591975515, + "gt": 4.0, + "error": 0.4575273591975515, + "unit": "mm", + "observable": true, + "n_markers": 2 + } + ], + "summary": { + "n_joints": 7, + "mean_abs_deg": 1.236507277021974, + "max_abs_deg": 3.1605381329632394, + "mean_abs_mm": 0.3488952882969989, + "max_abs_mm": 0.4575273591975515 + } +} \ No newline at end of file diff --git a/data/camera_study/Scene10/k4_defg/robot_state.json b/data/camera_study/Scene10/k4_defg/robot_state.json new file mode 100644 index 0000000..325450e --- /dev/null +++ b/data/camera_study/Scene10/k4_defg/robot_state.json @@ -0,0 +1,58 @@ +{ + "schema_version": "1.0", + "created_utc": "2026-06-02T21:19:21Z", + "method": "hybrid", + "movements": { + "x": { + "value": 119.75973678260355, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "y": { + "value": 59.81059139656074, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 1 + }, + "z": { + "value": -109.32715934998875, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "a": { + "value": 19.199523806130966, + "unit": "deg", + "observable": true, + "confidence": "high", + "n_markers": 3 + }, + "b": { + "value": 33.16053813296324, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "c": { + "value": -178.64072719517293, + "unit": "deg", + "observable": true, + "confidence": "low", + "n_markers": 2 + }, + "e": { + "value": 4.4575273591975515, + "unit": "mm", + "observable": true, + "confidence": "low", + "n_markers": 2 + } + }, + "residual_rms": 2.389198404730668, + "num_markers": 31 +} \ No newline at end of file diff --git a/pipeline/run_pipeline.py b/pipeline/run_pipeline.py index bf12834..b5a69f2 100644 --- a/pipeline/run_pipeline.py +++ b/pipeline/run_pipeline.py @@ -51,6 +51,8 @@ def main() -> None: ap.add_argument("--robot", default=os.environ.get("ROBOT_JSON", str(ROOT / "data" / "robot" / "robot.json"))) ap.add_argument("--evalDir", default=None, help="Ausgabeordner (Default: data/evaluations/)") ap.add_argument("--lambdaWeight", default="100.0") + ap.add_argument("--cameras", default=None, + help="Kommagetrennte Kamera-IDs, z.B. a,b,d (Standard: alle)") args = ap.parse_args() scene = Path(args.scene).resolve() @@ -59,10 +61,14 @@ def main() -> None: robot = args.robot imgs = sorted(glob.glob(str(scene / "render_*.png"))) + if args.cameras: + wanted = set(args.cameras.split(",")) + imgs = [img for img in imgs if cam_id_of(img) in wanted] if not imgs: - print(f"[ERROR] keine render_*.png in {scene}") + print(f"[ERROR] keine passenden render_*.png in {scene}") sys.exit(1) - print(f"[INFO] Scene={scene.name} Bilder={len(imgs)} -> {eval_dir}") + cam_ids = [cam_id_of(i) for i in imgs] + print(f"[INFO] Scene={scene.name} Kameras={cam_ids} -> {eval_dir}") # ── Schritt 1: ArUco-Detektion (pro Bild seine EIGENE npz) ── print("\n[STEP 1] ArUco-Detektion") diff --git a/run/run_camera_study.bat b/run/run_camera_study.bat new file mode 100644 index 0000000..a2d1374 --- /dev/null +++ b/run/run_camera_study.bat @@ -0,0 +1,16 @@ +@echo off +REM run_camera_study.bat +REM Untersucht wie viele Kameras fuer die Pose-Schaetzung benoetigt werden. +REM +REM Einfacher Aufruf (alle Szenen mit pose.json, 10 Samples pro k): +REM run_camera_study.bat +REM +REM Mit Optionen: +REM run_camera_study.bat --scenes Scene7 Scene9 --k-min 3 --k-max 5 --samples 15 +REM run_camera_study.bat --force +REM +REM Auswertung danach: +REM python benchmark\camera_count\analyze.py + +cd /d "%~dp0.." +python benchmark\camera_count\run_camera_study.py %*