Homing Marker Rotation

This commit is contained in:
chk
2026-06-16 16:01:32 +02:00
parent f929c19f4b
commit 08d1c21d1e
37 changed files with 23960 additions and 9 deletions

View File

@@ -0,0 +1,36 @@
marker_id,link,set,num_cameras,x_mm,y_mm,z_mm,nx,ny,nz,model_x_mm,model_y_mm,model_z_mm,dist_to_model_mm,delta_z_mm,edge_length_mm
47,Board,A0,3,344.07,-286.3,-27.25,-0.00046,0.04835,0.99883,344.23,-286.54,-27.3,0.29,0.049,23.64
48,Board,A0,2,689.52,-321.32,-28.55,0.01818,0.02703,0.99947,688.69,-320.72,-27.3,1.616,-1.254,23.78
50,Board,A0,2,571.33,211.68,-25.85,0.00822,0.04745,0.99884,573.41,211.86,-27.3,2.541,1.448,23.82
54,Board,A0,3,342.21,-330.38,-27.07,-0.0045,-0.03292,0.99945,342.27,-330.59,-27.3,0.316,0.232,23.88
55,Board,A0,2,283.85,-262.4,-26.76,-0.01527,0.02358,0.99961,283.72,-262.58,-27.3,0.584,0.539,23.51
56,Board,A0,2,497.11,168.6,-25.78,-0.01905,0.05595,0.99825,498.68,168.67,-27.3,2.185,1.521,23.56
57,Board,A0,2,601.71,-363.5,-26.19,0.08577,0.00861,0.99628,602.86,-364.05,-27.3,1.694,1.114,24.87
62,Board,A0,2,403.89,-175.17,-26.78,0.05288,0.02731,0.99823,404.7,-175.1,-27.3,0.961,0.516,23.82
65,Board,A0,2,804.08,-298.54,-28.26,0.00387,0.04132,0.99914,803.39,-297.37,-27.3,1.663,-0.96,23.39
68,Board,A0,2,571.76,170.66,-26.3,-0.02368,0.08555,0.99605,573.73,170.64,-27.3,2.214,1.002,23.99
71,Board,A0,2,749.94,-284.72,-27.83,-0.01828,-0.03647,0.99917,749.75,-284.01,-27.3,0.907,-0.531,23.66
76,Board,A0,2,682.81,166.72,-25.42,-0.05902,0.09056,0.99414,685.21,166.8,-27.3,3.051,1.881,23.55
78,Board,A0,2,823.93,-345.77,-28.33,-0.08861,0.04663,0.99497,823.11,-344.38,-27.3,1.915,-1.026,22.6
80,Board,A0,2,865.26,-337.13,-28.53,0.04092,0.04275,0.99825,863.59,-335.92,-27.3,2.401,-1.232,23.61
87,Board,A0,2,944.69,-246.96,-28.14,0.02302,0.04013,0.99893,943.63,-245.76,-27.3,1.81,-0.837,23.78
93,Board,A0,2,932.11,143.72,-23.95,0.06718,0.06443,0.99566,934.88,143.6,-27.3,4.343,3.346,25.06
94,Board,A0,2,873.49,174.05,-24.98,0.05325,0.0697,0.99615,875.7,173.65,-27.3,3.229,2.323,24.42
96,Board,A0,2,369.02,-186.37,-26.89,-0.04231,0.05761,0.99744,369.77,-186.49,-27.3,0.864,0.406,23.31
97,Board,A0,3,304.13,-359.31,-26.85,0.04194,0.01906,0.99894,304.35,-359.67,-27.3,0.616,0.45,23.99
99,Board,A0,2,961.74,-323.22,-29.1,0.04681,0.01859,0.99873,959.16,-321.55,-27.3,3.561,-1.797,24.0
129,Ellbow,,3,393.47,-110.57,207.56,0.00825,0.0056,0.99995,,,,,,23.63
132,Ellbow,,3,356.94,-110.62,208.02,0.00671,0.01225,0.9999,,,,,,24.03
143,Arm2,,3,371.09,-292.28,195.24,-0.70987,-0.0132,0.70421,,,,,,24.23
144,Arm2,,3,359.12,-222.05,171.29,-0.99909,0.03674,0.02153,,,,,,24.42
146,Arm2,,3,370.78,-222.38,195.96,-0.66898,-0.00514,0.74326,,,,,,24.13
148,Arm2,,3,360.2,-328.6,169.11,-0.99937,0.02225,0.02756,,,,,,24.15
198,Arm1,,2,300.76,-14.03,160.54,0.02386,0.50667,0.86181,,,,,,24.53
205,unknown,,2,934.74,-97.18,-5.56,-0.00513,0.04577,0.99894,,,,,,23.15
207,unknown,,2,933.91,-7.47,-5.45,-0.07244,0.04588,0.99632,,,,,,21.75
229,Arm1,,2,303.05,-92.5,205.63,0.01472,0.48131,0.87642,,,,,,24.21
camera_id,x_mm,y_mm,z_mm,dir_x,dir_y,dir_z
cam0,-162.87,22.94,405.51,0.8496,-0.39087,-0.35411
cam1,-231.98,-599.98,855.31,0.51773,0.43658,-0.73577
cam2,1.29,141.6,837.2,0.63268,-0.31236,-0.70863
1 marker_id link set num_cameras x_mm y_mm z_mm nx ny nz model_x_mm model_y_mm model_z_mm dist_to_model_mm delta_z_mm edge_length_mm
2 47 Board A0 3 344.07 -286.3 -27.25 -0.00046 0.04835 0.99883 344.23 -286.54 -27.3 0.29 0.049 23.64
3 48 Board A0 2 689.52 -321.32 -28.55 0.01818 0.02703 0.99947 688.69 -320.72 -27.3 1.616 -1.254 23.78
4 50 Board A0 2 571.33 211.68 -25.85 0.00822 0.04745 0.99884 573.41 211.86 -27.3 2.541 1.448 23.82
5 54 Board A0 3 342.21 -330.38 -27.07 -0.0045 -0.03292 0.99945 342.27 -330.59 -27.3 0.316 0.232 23.88
6 55 Board A0 2 283.85 -262.4 -26.76 -0.01527 0.02358 0.99961 283.72 -262.58 -27.3 0.584 0.539 23.51
7 56 Board A0 2 497.11 168.6 -25.78 -0.01905 0.05595 0.99825 498.68 168.67 -27.3 2.185 1.521 23.56
8 57 Board A0 2 601.71 -363.5 -26.19 0.08577 0.00861 0.99628 602.86 -364.05 -27.3 1.694 1.114 24.87
9 62 Board A0 2 403.89 -175.17 -26.78 0.05288 0.02731 0.99823 404.7 -175.1 -27.3 0.961 0.516 23.82
10 65 Board A0 2 804.08 -298.54 -28.26 0.00387 0.04132 0.99914 803.39 -297.37 -27.3 1.663 -0.96 23.39
11 68 Board A0 2 571.76 170.66 -26.3 -0.02368 0.08555 0.99605 573.73 170.64 -27.3 2.214 1.002 23.99
12 71 Board A0 2 749.94 -284.72 -27.83 -0.01828 -0.03647 0.99917 749.75 -284.01 -27.3 0.907 -0.531 23.66
13 76 Board A0 2 682.81 166.72 -25.42 -0.05902 0.09056 0.99414 685.21 166.8 -27.3 3.051 1.881 23.55
14 78 Board A0 2 823.93 -345.77 -28.33 -0.08861 0.04663 0.99497 823.11 -344.38 -27.3 1.915 -1.026 22.6
15 80 Board A0 2 865.26 -337.13 -28.53 0.04092 0.04275 0.99825 863.59 -335.92 -27.3 2.401 -1.232 23.61
16 87 Board A0 2 944.69 -246.96 -28.14 0.02302 0.04013 0.99893 943.63 -245.76 -27.3 1.81 -0.837 23.78
17 93 Board A0 2 932.11 143.72 -23.95 0.06718 0.06443 0.99566 934.88 143.6 -27.3 4.343 3.346 25.06
18 94 Board A0 2 873.49 174.05 -24.98 0.05325 0.0697 0.99615 875.7 173.65 -27.3 3.229 2.323 24.42
19 96 Board A0 2 369.02 -186.37 -26.89 -0.04231 0.05761 0.99744 369.77 -186.49 -27.3 0.864 0.406 23.31
20 97 Board A0 3 304.13 -359.31 -26.85 0.04194 0.01906 0.99894 304.35 -359.67 -27.3 0.616 0.45 23.99
21 99 Board A0 2 961.74 -323.22 -29.1 0.04681 0.01859 0.99873 959.16 -321.55 -27.3 3.561 -1.797 24.0
22 129 Ellbow 3 393.47 -110.57 207.56 0.00825 0.0056 0.99995 23.63
23 132 Ellbow 3 356.94 -110.62 208.02 0.00671 0.01225 0.9999 24.03
24 143 Arm2 3 371.09 -292.28 195.24 -0.70987 -0.0132 0.70421 24.23
25 144 Arm2 3 359.12 -222.05 171.29 -0.99909 0.03674 0.02153 24.42
26 146 Arm2 3 370.78 -222.38 195.96 -0.66898 -0.00514 0.74326 24.13
27 148 Arm2 3 360.2 -328.6 169.11 -0.99937 0.02225 0.02756 24.15
28 198 Arm1 2 300.76 -14.03 160.54 0.02386 0.50667 0.86181 24.53
29 205 unknown 2 934.74 -97.18 -5.56 -0.00513 0.04577 0.99894 23.15
30 207 unknown 2 933.91 -7.47 -5.45 -0.07244 0.04588 0.99632 21.75
31 229 Arm1 2 303.05 -92.5 205.63 0.01472 0.48131 0.87642 24.21
32 camera_id x_mm y_mm z_mm dir_x dir_y dir_z
33 cam0 -162.87 22.94 405.51 0.8496 -0.39087 -0.35411
34 cam1 -231.98 -599.98 855.31 0.51773 0.43658 -0.73577
35 cam2 1.29 141.6 837.2 0.63268 -0.31236 -0.70863

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,313 @@
{
"schema_version": "1.0",
"created_utc": "2026-06-16T13:31:56Z",
"source": {
"detection_json": "/app/data/homing/20260616_133151/cam0_aruco_detection.json",
"robot_json": "/app/scripts/robot_1781069752019.json"
},
"camera": {
"camera_id": "cam0",
"camera_matrix": [
[
1424.7584228515625,
0.0,
635.95947265625
],
[
0.0,
1421.5770263671875,
482.1744384765625
],
[
0.0,
0.0,
1.0
]
],
"distortion_coefficients": [
0.05634751915931702,
0.33765655755996704,
0.002130246954038739,
-0.004022662527859211,
-1.182201862335205
]
},
"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": 8,
"used_marker_ids": [
96,
97,
47,
54,
62,
85,
105,
57
],
"history": {
"iters": [
0,
1,
2,
3
],
"rms": [
0.003887444653024265,
0.0002937877072128,
0.0002404866802724321,
0.00024048508666086002
],
"lambda": [
0.001,
0.0005,
0.00025,
0.000125
]
},
"residual_rms_px": 0.49031638365688124,
"residual_median_px": 0.5013350027616654,
"residual_max_px": 0.6062763519311439,
"sigma2_normalized": 9.253292293692929e-08
},
"camera_pose": {
"world_to_camera": {
"rotation_matrix": [
[
-0.4343292713165283,
-0.8994036912918091,
-0.04930584505200386
],
[
-0.29921603202819824,
0.19569094479084015,
-0.9339029788970947
],
[
0.8496045470237732,
-0.39086830615997314,
-0.35411033034324646
]
],
"translation_m": [
-0.03010912984609604,
0.32548150420188904,
0.2909383177757263
],
"rvec_rad": [
1.1187772559005047,
-1.8519635596120632,
1.2365255960114159
]
},
"camera_in_world": {
"position_m": [
-0.16287051141262054,
0.022944524884223938,
0.4055078625679016
],
"position_mm": [
-162.87051391601562,
22.94452476501465,
405.50787353515625
],
"orientation_deg": {
"roll": -132.17526245117188,
"pitch": -58.16868209838867,
"yaw": -145.43643188476562
}
},
"uncertainty": {
"pose_covariance_6x6": [
[
1.446615004541035e-06,
-2.3750243241143832e-07,
5.813263188255589e-07,
-8.863593861370775e-09,
1.854753583118696e-07,
2.483118756120673e-07
],
[
-2.375024324114069e-07,
1.6848056153960325e-06,
4.5522840438908317e-07,
-4.2882786235818766e-07,
-7.198460805062003e-07,
-6.031524743678258e-07
],
[
5.813263188256213e-07,
4.5522840438904717e-07,
3.6098691381176423e-06,
5.380515895797557e-07,
-8.518199008797127e-07,
-6.107991066544038e-07
],
[
-8.86359386136767e-09,
-4.2882786235819084e-07,
5.380515895797531e-07,
2.6838864216504313e-07,
3.692099582285058e-08,
6.359201722744009e-08
],
[
1.8547535831184565e-07,
-7.198460805061971e-07,
-8.518199008797362e-07,
3.692099582284795e-08,
4.978035271371442e-07,
4.941045438616945e-07
],
[
2.483118756120473e-07,
-6.031524743678251e-07,
-6.107991066544345e-07,
6.359201722743617e-08,
4.941045438616975e-07,
7.922266489950106e-07
]
],
"parameter_std": {
"rvec_std_deg": [
0.06891267606855489,
0.0743699574610443,
0.10886000794288055
],
"tvec_std_m": [
0.0005180623921546932,
0.0007055519308577818,
0.0008900711482769288
]
},
"camera_center_std_m": [
0.000713244150286227,
0.0010694082952597134,
0.0011346670581527643
],
"camera_center_std_mm": [
0.713244150286227,
1.0694082952597133,
1.1346670581527643
],
"orientation_std_deg": {
"roll": 0.146033675708339,
"pitch": 0.07444664358168214,
"yaw": 0.10571491927224817
}
}
},
"observations": {
"markers": [
{
"marker_id": 96,
"observed_center_px": [
590.25,
907.5
],
"projected_center_px": [
590.2493896484375,
907.3632202148438
],
"reprojection_error_px": 0.1367811469334124,
"confidence": 0.4047568547615518
},
{
"marker_id": 97,
"observed_center_px": [
969.75,
871.25
],
"projected_center_px": [
969.3050537109375,
871.2380981445312
],
"reprojection_error_px": 0.4451054417933899,
"confidence": 0.8722907081171155
},
{
"marker_id": 47,
"observed_center_px": [
797.0,
872.5
],
"projected_center_px": [
797.1061401367188,
872.037353515625
],
"reprojection_error_px": 0.47466566984270314,
"confidence": 0.7759117848206195
},
{
"marker_id": 54,
"observed_center_px": [
873.75,
847.25
],
"projected_center_px": [
874.1572875976562,
847.6990966796875
],
"reprojection_error_px": 0.6062763519311439,
"confidence": 0.7360188268067743
},
{
"marker_id": 62,
"observed_center_px": [
540.75,
875.0
],
"projected_center_px": [
540.740966796875,
875.5213623046875
],
"reprojection_error_px": 0.521440554145685,
"confidence": 0.5424197481555236
},
{
"marker_id": 85,
"observed_center_px": [
691.5,
715.0
],
"projected_center_px": [
691.7570190429688,
714.4783325195312
],
"reprojection_error_px": 0.5815459987199515,
"confidence": 0.3363291739196003
},
{
"marker_id": 105,
"observed_center_px": [
607.25,
720.25
],
"projected_center_px": [
606.82470703125,
719.9483642578125
],
"reprojection_error_px": 0.521400259141854,
"confidence": 0.2839120657198857
},
{
"marker_id": 57,
"observed_center_px": [
690.75,
629.75
],
"projected_center_px": [
690.8707275390625,
630.2158813476562
],
"reprojection_error_px": 0.48126974638147696,
"confidence": 0.2029035186492315
}
]
},
"qa": {
"sanity_notes": []
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,621 @@
{
"schema_version": "1.0",
"created_utc": "2026-06-16T13:32:00Z",
"source": {
"detection_json": "/app/data/homing/20260616_133151/cam1_aruco_detection.json",
"robot_json": "/app/scripts/robot_1781069752019.json"
},
"camera": {
"camera_id": "cam1",
"camera_matrix": [
[
1367.5723876953125,
0.0,
672.1165771484375
],
[
0.0,
1372.3011474609375,
445.8396911621094
],
[
0.0,
0.0,
1.0
]
],
"distortion_coefficients": [
0.01016925647854805,
0.7656787633895874,
-0.0031530377455055714,
-0.00288817984983325,
-2.490830183029175
]
},
"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": 30,
"used_marker_ids": [
69,
64,
95,
97,
51,
54,
55,
75,
47,
77,
79,
81,
52,
96,
62,
101,
48,
71,
78,
65,
80,
72,
87,
99,
56,
68,
50,
76,
94,
93
],
"history": {
"iters": [
0,
1,
2,
3
],
"rms": [
0.017059307652513785,
0.0016226982371037653,
0.0008091568769327483,
0.0008091084072623325
],
"lambda": [
0.001,
0.0005,
0.00025,
0.000125
]
},
"residual_rms_px": 1.591651220099626,
"residual_median_px": 1.1314608533912125,
"residual_max_px": 3.508082949831542,
"sigma2_normalized": 7.273960149412246e-07
},
"camera_pose": {
"world_to_camera": {
"rotation_matrix": [
[
-0.8300905227661133,
0.048112522810697556,
-0.555549144744873
],
[
-0.20714415609836578,
0.8983761668205261,
0.38731324672698975
],
[
0.5177267789840698,
0.43658381700515747,
-0.7357673048973083
]
],
"translation_m": [
0.3114655017852783,
0.15968520939350128,
1.0113532543182373
],
"rvec_rad": [
0.11406865614087526,
-2.484791884456743,
-0.59095682803472
]
},
"camera_in_world": {
"position_m": [
-0.2319822609424591,
-0.5999832153320312,
0.85530686378479
],
"position_mm": [
-231.9822540283203,
-599.9832153320312,
855.306884765625
],
"orientation_deg": {
"roll": 149.3162841796875,
"pitch": -31.179889678955078,
"yaw": -165.98834228515625
}
},
"uncertainty": {
"pose_covariance_6x6": [
[
5.477901672381574e-07,
-3.0328172246138234e-07,
2.5074702293716926e-07,
1.1635888932922758e-08,
9.844840844154894e-08,
2.3043095712615458e-07
],
[
-3.0328172246138065e-07,
1.631287253876377e-06,
-8.315096854684708e-07,
-3.1882543010501927e-07,
1.103498744923981e-07,
-9.284867444682885e-07
],
[
2.507470229371721e-07,
-8.3150968546848e-07,
2.964857640789444e-06,
-8.919540977376378e-08,
-2.1352811236764262e-07,
4.725702525972594e-08
],
[
1.1635888932921985e-08,
-3.18825430105018e-07,
-8.919540977376616e-08,
1.2501721885555406e-07,
-1.613172618557695e-08,
2.3201998198006283e-07
],
[
9.844840844154898e-08,
1.1034987449239781e-07,
-2.1352811236764254e-07,
-1.6131726185576905e-08,
8.383963230163757e-08,
-2.923782662666793e-08
],
[
2.304309571261534e-07,
-9.284867444682864e-07,
4.725702525972108e-08,
2.3201998198006299e-07,
-2.9237826626668076e-08,
1.0432485061837312e-06
]
],
"parameter_std": {
"rvec_std_deg": [
0.04240623821424648,
0.0731792330905332,
0.09865623898195403
],
"tvec_std_m": [
0.0003535777408937871,
0.0002895507421880275,
0.0010213953721178353
]
},
"camera_center_std_m": [
0.0010713908530960352,
0.0012849722563859016,
0.0015667620668070794
],
"camera_center_std_mm": [
1.0713908530960352,
1.2849722563859016,
1.5667620668070794
],
"orientation_std_deg": {
"roll": 0.09772437240661272,
"pitch": 0.06095886695509779,
"yaw": 0.049296243086430984
}
}
},
"observations": {
"markers": [
{
"marker_id": 69,
"observed_center_px": [
1132.0,
285.75
],
"projected_center_px": [
1134.6839599609375,
286.1096496582031
],
"reprojection_error_px": 2.707949214546176,
"confidence": 0.7904374687348378
},
{
"marker_id": 64,
"observed_center_px": [
1160.0,
422.0
],
"projected_center_px": [
1163.491455078125,
422.3411560058594
],
"reprojection_error_px": 3.508082949831542,
"confidence": 0.6500113404865634
},
{
"marker_id": 95,
"observed_center_px": [
887.75,
261.0
],
"projected_center_px": [
888.0076904296875,
260.7122802734375
],
"reprojection_error_px": 0.3862473282829645,
"confidence": 0.5416630076500674
},
{
"marker_id": 97,
"observed_center_px": [
747.75,
130.0
],
"projected_center_px": [
747.2943115234375,
129.22381591796875
],
"reprojection_error_px": 0.9000631738220081,
"confidence": 0.46560622960207215
},
{
"marker_id": 51,
"observed_center_px": [
906.25,
392.75
],
"projected_center_px": [
906.7919311523438,
392.7587585449219
],
"reprojection_error_px": 0.5420019243413932,
"confidence": 0.5169701203055806
},
{
"marker_id": 54,
"observed_center_px": [
707.0,
163.0
],
"projected_center_px": [
706.23681640625,
162.77174377441406
],
"reprojection_error_px": 0.7965865315757626,
"confidence": 0.41781415708291797
},
{
"marker_id": 55,
"observed_center_px": [
773.25,
258.25
],
"projected_center_px": [
773.0390014648438,
257.7444763183594
],
"reprojection_error_px": 0.5477906302024298,
"confidence": 0.46078075075842734
},
{
"marker_id": 75,
"observed_center_px": [
1117.5,
857.75
],
"projected_center_px": [
1118.2747802734375,
858.220458984375
],
"reprojection_error_px": 0.906430432017286,
"confidence": 0.34860300393492594
},
{
"marker_id": 47,
"observed_center_px": [
707.25,
218.5
],
"projected_center_px": [
706.2413940429688,
218.0567626953125
],
"reprojection_error_px": 1.1017010868768187,
"confidence": 0.393117382864099
},
{
"marker_id": 77,
"observed_center_px": [
1063.75,
835.25
],
"projected_center_px": [
1064.5556640625,
835.51416015625
],
"reprojection_error_px": 0.8478650657705082,
"confidence": 0.3053994756620321
},
{
"marker_id": 79,
"observed_center_px": [
745.5,
374.75
],
"projected_center_px": [
744.8091430664062,
374.33917236328125
],
"reprojection_error_px": 0.8037802248043132,
"confidence": 0.4170494444576311
},
{
"marker_id": 81,
"observed_center_px": [
935.5,
766.25
],
"projected_center_px": [
934.7628173828125,
766.2487182617188
],
"reprojection_error_px": 0.7371837314648457,
"confidence": 0.2860351956805948
},
{
"marker_id": 52,
"observed_center_px": [
974.75,
818.25
],
"projected_center_px": [
974.4337158203125,
818.4750366210938
],
"reprojection_error_px": 0.38817156407172176,
"confidence": 0.2796614731725484
},
{
"marker_id": 96,
"observed_center_px": [
685.75,
331.75
],
"projected_center_px": [
684.9360961914062,
331.5043029785156
],
"reprojection_error_px": 0.8501802373671744,
"confidence": 0.35732025726956446
},
{
"marker_id": 62,
"observed_center_px": [
652.25,
337.25
],
"projected_center_px": [
651.2550048828125,
337.2922058105469
],
"reprojection_error_px": 0.9958898602108998,
"confidence": 0.3300725298396194
},
{
"marker_id": 101,
"observed_center_px": [
946.25,
889.25
],
"projected_center_px": [
945.4725952148438,
889.2578125
],
"reprojection_error_px": 0.7774440398768809,
"confidence": 0.24325060224251535
},
{
"marker_id": 48,
"observed_center_px": [
384.25,
132.0
],
"projected_center_px": [
383.9302062988281,
133.11631774902344
],
"reprojection_error_px": 1.1612206199056063,
"confidence": 0.21290195673550963
},
{
"marker_id": 71,
"observed_center_px": [
342.5,
165.25
],
"projected_center_px": [
342.3343505859375,
166.21542358398438
],
"reprojection_error_px": 0.9795317375626402,
"confidence": 0.20847213489647592
},
{
"marker_id": 78,
"observed_center_px": [
275.75,
91.5
],
"projected_center_px": [
275.9453125,
93.36688995361328
],
"reprojection_error_px": 1.8770788666325262,
"confidence": 0.19179473932902583
},
{
"marker_id": 65,
"observed_center_px": [
299.5,
144.25
],
"projected_center_px": [
299.65802001953125,
145.85562133789062
],
"reprojection_error_px": 1.6133785071279267,
"confidence": 0.18322050914606033
},
{
"marker_id": 80,
"observed_center_px": [
247.5,
97.0
],
"projected_center_px": [
248.37171936035156,
98.75518035888672
],
"reprojection_error_px": 1.9597328224616355,
"confidence": 0.17848787606848682
},
{
"marker_id": 72,
"observed_center_px": [
642.5,
684.5
],
"projected_center_px": [
641.4025268554688,
682.82861328125
],
"reprojection_error_px": 1.9994951529276588,
"confidence": 0.2422080426916935
},
{
"marker_id": 87,
"observed_center_px": [
211.0,
180.75
],
"projected_center_px": [
212.05128479003906,
182.29476928710938
],
"reprojection_error_px": 1.8685587655099003,
"confidence": 0.16084571531469055
},
{
"marker_id": 99,
"observed_center_px": [
185.0,
102.75
],
"projected_center_px": [
185.86073303222656,
105.08058166503906
],
"reprojection_error_px": 2.4844460650580005,
"confidence": 0.1317185948247831
},
{
"marker_id": 56,
"observed_center_px": [
594.0,
645.75
],
"projected_center_px": [
592.5604248046875,
644.4028930664062
],
"reprojection_error_px": 1.971566340120306,
"confidence": 0.21270906967235645
},
{
"marker_id": 68,
"observed_center_px": [
535.75,
626.5
],
"projected_center_px": [
534.0946655273438,
625.37353515625
],
"reprojection_error_px": 2.0022625353756327,
"confidence": 0.19837789393185037
},
{
"marker_id": 50,
"observed_center_px": [
539.5,
660.25
],
"projected_center_px": [
537.9456176757812,
658.9739990234375
],
"reprojection_error_px": 2.0110402537075522,
"confidence": 0.18966679166032716
},
{
"marker_id": 76,
"observed_center_px": [
453.25,
595.0
],
"projected_center_px": [
452.169921875,
593.6005859375
],
"reprojection_error_px": 1.7677467223633225,
"confidence": 0.16262023818955654
},
{
"marker_id": 94,
"observed_center_px": [
326.75,
556.5
],
"projected_center_px": [
326.852783203125,
554.8190307617188
],
"reprojection_error_px": 1.6841086564982917,
"confidence": 0.1361744433766225
},
{
"marker_id": 93,
"observed_center_px": [
285.5,
521.25
],
"projected_center_px": [
286.1008605957031,
519.3630981445312
],
"reprojection_error_px": 1.9802606059910715,
"confidence": 0.12409919873734558
}
]
},
"qa": {
"sanity_notes": []
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,649 @@
{
"schema_version": "1.0",
"created_utc": "2026-06-16T13:32:03Z",
"source": {
"detection_json": "/app/data/homing/20260616_133151/cam2_aruco_detection.json",
"robot_json": "/app/scripts/robot_1781069752019.json"
},
"camera": {
"camera_id": "cam2",
"camera_matrix": [
[
1388.99072265625,
0.0,
933.082763671875
],
[
0.0,
1394.8729248046875,
562.4996948242188
],
[
0.0,
0.0,
1.0
]
],
"distortion_coefficients": [
0.019531700760126114,
-0.11213663965463638,
0.0026758278254419565,
0.0007694826927036047,
0.05339815095067024
]
},
"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": 32,
"used_marker_ids": [
66,
56,
98,
55,
70,
46,
50,
68,
97,
47,
90,
54,
91,
76,
88,
104,
100,
92,
57,
59,
102,
94,
93,
48,
71,
49,
65,
78,
80,
87,
99,
89
],
"history": {
"iters": [
0,
1,
2,
3
],
"rms": [
0.008832538525142795,
0.0004865578415025546,
0.00032819879951119047,
0.0003281981652183564
],
"lambda": [
0.001,
0.0005,
0.00025,
0.000125
]
},
"residual_rms_px": 0.6441756715533189,
"residual_median_px": 0.5492520408741948,
"residual_max_px": 1.2897776382850825,
"sigma2_normalized": 1.1885686692316158e-07
},
"camera_pose": {
"world_to_camera": {
"rotation_matrix": [
[
-0.4496577978134155,
-0.8931671977043152,
-0.007761204615235329
],
[
-0.6304975152015686,
0.32354968786239624,
-0.7055412530899048
],
[
0.632677435874939,
-0.31235870718955994,
-0.7086263298988342
]
],
"translation_m": [
0.1335494965314865,
0.5456798076629639,
0.636671245098114
],
"rvec_rad": [
1.3494279062384578,
-2.198026754500526,
0.901499263158594
]
},
"camera_in_world": {
"position_m": [
0.001293778419494629,
0.14159730076789856,
0.8371981382369995
],
"position_mm": [
1.293778419494629,
141.59730529785156,
837.1981201171875
],
"orientation_deg": {
"roll": -156.2123565673828,
"pitch": -39.2479362487793,
"yaw": -125.49567413330078
}
},
"uncertainty": {
"pose_covariance_6x6": [
[
1.6015381552721338e-07,
-1.4837059058697122e-07,
3.6929360374737507e-09,
2.2758829309070173e-08,
8.934552870367817e-08,
1.0290980538631166e-07
],
[
-1.4837059058697112e-07,
3.4643173654494003e-07,
-1.095486801462903e-07,
-1.2433725931455158e-07,
-1.1671511572372629e-07,
-1.8401667376807757e-07
],
[
3.6929360374766454e-09,
-1.0954868014629436e-07,
7.273896060861517e-07,
1.9118374884632683e-07,
-7.329600774003173e-08,
1.0168020574304684e-09
],
[
2.2758829309070772e-08,
-1.2433725931455248e-07,
1.9118374884632598e-07,
8.744604871812883e-08,
9.627191197820863e-09,
4.401188149744796e-08
],
[
8.934552870367775e-08,
-1.167151157237258e-07,
-7.329600774003358e-08,
9.627191197820361e-09,
7.355401539411175e-08,
8.533100927242548e-08
],
[
1.0290980538631145e-07,
-1.8401667376807733e-07,
1.016802057427981e-09,
4.4011881497447365e-08,
8.533100927242568e-08,
1.489079976325586e-07
]
],
"parameter_std": {
"rvec_std_deg": [
0.02292932538456693,
0.03372340885164672,
0.04886593105418293
],
"tvec_std_m": [
0.00029571278078251677,
0.0002712084353299354,
0.00038588599045904555
]
},
"camera_center_std_m": [
0.0005289704989045807,
0.0008144586400828901,
0.00045608116615869596
],
"camera_center_std_mm": [
0.5289704989045807,
0.8144586400828902,
0.456081166158696
],
"orientation_std_deg": {
"roll": 0.041484506477778224,
"pitch": 0.034509621577427846,
"yaw": 0.03307538792320922
}
}
},
"observations": {
"markers": [
{
"marker_id": 66,
"observed_center_px": [
1492.5,
1050.5
],
"projected_center_px": [
1493.70947265625,
1050.947998046875
],
"reprojection_error_px": 1.2897776382850825,
"confidence": 0.08283072356273988
},
{
"marker_id": 56,
"observed_center_px": [
568.25,
1026.5
],
"projected_center_px": [
568.1932983398438,
1027.0657958984375
],
"reprojection_error_px": 0.5686300000467551,
"confidence": 0.4105118828043329
},
{
"marker_id": 98,
"observed_center_px": [
321.75,
1023.5
],
"projected_center_px": [
322.117919921875,
1023.1886596679688
],
"reprojection_error_px": 0.48197289473769694,
"confidence": 0.4150269083081866
},
{
"marker_id": 55,
"observed_center_px": [
1298.25,
1021.0
],
"projected_center_px": [
1298.544189453125,
1022.0004272460938
],
"reprojection_error_px": 1.042785744559596,
"confidence": 0.5099828684402014
},
{
"marker_id": 70,
"observed_center_px": [
337.25,
981.0
],
"projected_center_px": [
337.27288818359375,
981.1621704101562
],
"reprojection_error_px": 0.16377762630612144,
"confidence": 0.5716394535834378
},
{
"marker_id": 46,
"observed_center_px": [
528.0,
990.0
],
"projected_center_px": [
527.9961547851562,
990.034912109375
],
"reprojection_error_px": 0.03512322676245106,
"confidence": 0.6113473562364914
},
{
"marker_id": 50,
"observed_center_px": [
476.25,
962.0
],
"projected_center_px": [
475.98529052734375,
961.836181640625
],
"reprojection_error_px": 0.3112997908484145,
"confidence": 0.5940980546668021
},
{
"marker_id": 68,
"observed_center_px": [
535.0,
937.5
],
"projected_center_px": [
534.7505493164062,
936.9074096679688
],
"reprojection_error_px": 0.6429532993634113,
"confidence": 0.5510898086777466
},
{
"marker_id": 97,
"observed_center_px": [
1393.75,
936.25
],
"projected_center_px": [
1394.135498046875,
936.5591430664062
],
"reprojection_error_px": 0.4941438855753441,
"confidence": 0.6263523559153361
},
{
"marker_id": 47,
"observed_center_px": [
1272.5,
933.0
],
"projected_center_px": [
1272.794921875,
933.4520263671875
],
"reprojection_error_px": 0.5397284029826892,
"confidence": 0.6813102053703514
},
{
"marker_id": 90,
"observed_center_px": [
302.75,
942.0
],
"projected_center_px": [
303.13250732421875,
941.7984008789062
],
"reprojection_error_px": 0.4323818436368026,
"confidence": 0.4933910249582603
},
{
"marker_id": 54,
"observed_center_px": [
1325.5,
909.75
],
"projected_center_px": [
1325.8062744140625,
910.0460205078125
],
"reprojection_error_px": 0.4259485388575691,
"confidence": 0.5831923209596213
},
{
"marker_id": 91,
"observed_center_px": [
268.75,
860.0
],
"projected_center_px": [
268.9171447753906,
859.646240234375
],
"reprojection_error_px": 0.39125867110574997,
"confidence": 0.41635714573983174
},
{
"marker_id": 76,
"observed_center_px": [
500.0,
814.75
],
"projected_center_px": [
499.7842102050781,
814.5734252929688
],
"reprojection_error_px": 0.27882586457428343,
"confidence": 0.43164902465575705
},
{
"marker_id": 88,
"observed_center_px": [
276.5,
810.25
],
"projected_center_px": [
277.02392578125,
809.9246826171875
],
"reprojection_error_px": 0.6167087025641826,
"confidence": 0.3641103423762567
},
{
"marker_id": 104,
"observed_center_px": [
365.0,
716.75
],
"projected_center_px": [
365.2046813964844,
716.1290893554688
],
"reprojection_error_px": 0.6537771046457701,
"confidence": 0.31456974038753843
},
{
"marker_id": 100,
"observed_center_px": [
455.5,
707.0
],
"projected_center_px": [
455.77587890625,
706.6298217773438
],
"reprojection_error_px": 0.46167205616393603,
"confidence": 0.2990458462748869
},
{
"marker_id": 92,
"observed_center_px": [
944.5,
685.0
],
"projected_center_px": [
943.9740600585938,
684.959228515625
],
"reprojection_error_px": 0.5275179010275866,
"confidence": 0.3967703608745553
},
{
"marker_id": 57,
"observed_center_px": [
1160.5,
644.25
],
"projected_center_px": [
1160.0010986328125,
643.9444580078125
],
"reprojection_error_px": 0.5850286173953058,
"confidence": 0.3932990433348167
},
{
"marker_id": 59,
"observed_center_px": [
1057.0,
660.75
],
"projected_center_px": [
1056.5108642578125,
660.4798583984375
],
"reprojection_error_px": 0.5587756787657002,
"confidence": 0.3614809694286344
},
{
"marker_id": 102,
"observed_center_px": [
983.25,
665.0
],
"projected_center_px": [
982.9725952148438,
664.6309204101562
],
"reprojection_error_px": 0.46170678841318324,
"confidence": 0.36820843364733136
},
{
"marker_id": 94,
"observed_center_px": [
433.5,
646.5
],
"projected_center_px": [
434.1227722167969,
646.3070068359375
],
"reprojection_error_px": 0.651990487192067,
"confidence": 0.2645759511823127
},
{
"marker_id": 93,
"observed_center_px": [
453.5,
588.0
],
"projected_center_px": [
453.8638610839844,
588.4290161132812
],
"reprojection_error_px": 0.562538633245073,
"confidence": 0.24857011172701135
},
{
"marker_id": 48,
"observed_center_px": [
1062.0,
594.25
],
"projected_center_px": [
1061.968994140625,
594.0921020507812
],
"reprojection_error_px": 0.16091341051344735,
"confidence": 0.33737498855590825
},
{
"marker_id": 71,
"observed_center_px": [
991.0,
563.0
],
"projected_center_px": [
990.3995971679688,
562.8884887695312
],
"reprojection_error_px": 0.6106703818196851,
"confidence": 0.3010063191208027
},
{
"marker_id": 49,
"observed_center_px": [
418.5,
541.75
],
"projected_center_px": [
419.17529296875,
542.6862182617188
],
"reprojection_error_px": 1.154350565131263,
"confidence": 0.18572526481255427
},
{
"marker_id": 65,
"observed_center_px": [
976.0,
520.75
],
"projected_center_px": [
975.18896484375,
520.5609130859375
],
"reprojection_error_px": 0.8327856181173767,
"confidence": 0.2338696816856176
},
{
"marker_id": 78,
"observed_center_px": [
1011.0,
491.5
],
"projected_center_px": [
1010.1187744140625,
491.44244384765625
],
"reprojection_error_px": 0.8831031898841195,
"confidence": 0.23959378026474387
},
{
"marker_id": 80,
"observed_center_px": [
981.75,
468.5
],
"projected_center_px": [
981.3944702148438,
468.3933410644531
],
"reprojection_error_px": 0.37118399300783667,
"confidence": 0.19526343882223757
},
{
"marker_id": 87,
"observed_center_px": [
859.75,
448.25
],
"projected_center_px": [
858.9118041992188,
447.6842346191406
],
"reprojection_error_px": 1.0112678510791662,
"confidence": 0.16576166671752926
},
{
"marker_id": 99,
"observed_center_px": [
923.0,
415.25
],
"projected_center_px": [
922.5694580078125,
415.4199523925781
],
"reprojection_error_px": 0.4628717130910145,
"confidence": 0.16951111831691126
},
{
"marker_id": 89,
"observed_center_px": [
953.0,
385.0
],
"projected_center_px": [
952.1853637695312,
385.3843688964844
],
"reprojection_error_px": 0.900761697996174,
"confidence": 0.15606882836445
}
]
},
"qa": {
"sanity_notes": []
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 451 KiB

View File

@@ -0,0 +1,40 @@
{
"status": "ok",
"link": "Arm1",
"joint": "y",
"method": "primary",
"joint_origin_world_mm": [
302.92961386432523,
101.1,
71.2
],
"joint_axis_world": [
-1.0,
0.0,
0.0
],
"mean_angle_deg": 29.881507386797537,
"circular_variance": 0.0,
"circular_std_deg": 0.0,
"num_pairs_used": 1,
"num_markers_matched": 2,
"per_pair": [
{
"marker_ids": [
198,
229
],
"link": "Arm1",
"tier": "primary",
"skipped": false,
"angle_deg": 29.881507386797537,
"baseline_model_mm": 90.0,
"baseline_obs_mm": 90.50018670941252,
"weight": 8145.0168038471265
}
],
"accumulated_state": {
"x": 192.92961386432523,
"y": 29.881507386797537
}
}

View File

@@ -0,0 +1,101 @@
{
"status": "ok",
"link": "Arm2",
"joint": "a",
"method": "primary",
"joint_origin_world_mm": [
392.92961386432523,
-115.6643985452182,
195.75197920278026
],
"joint_axis_world": [
0.0,
-0.9998488482213078,
-0.0173862218588264
],
"mean_angle_deg": -1.6952207816710758,
"circular_variance": 0.00020602093543020672,
"circular_std_deg": 1.1630963101820437,
"num_pairs_used": 4,
"num_markers_matched": 4,
"per_pair": [
{
"marker_ids": [
143,
144
],
"link": "Arm2",
"tier": "primary",
"skipped": false,
"angle_deg": -2.918623083197913,
"baseline_model_mm": 26.788523662195328,
"baseline_obs_mm": 27.871929768865822,
"weight": 746.6478501243084
},
{
"marker_ids": [
143,
146
],
"link": "Arm2",
"tier": "primary",
"skipped": true,
"reason": "bl_model=0.0 bl_obs=0.6 < 15.0"
},
{
"marker_ids": [
143,
148
],
"link": "Arm2",
"tier": "primary",
"skipped": false,
"angle_deg": -0.6228465071838889,
"baseline_model_mm": 26.788523662195338,
"baseline_obs_mm": 27.73004804692106,
"weight": 742.8470482587584
},
{
"marker_ids": [
144,
146
],
"link": "Arm2",
"tier": "primary",
"skipped": false,
"angle_deg": -2.7850536051660586,
"baseline_model_mm": 26.78852366219535,
"baseline_obs_mm": 27.285879546928946,
"weight": 730.9484298867181
},
{
"marker_ids": [
144,
148
],
"link": "Arm2",
"tier": "primary",
"skipped": true,
"reason": "bl_model=0.0 bl_obs=1.1 < 15.0"
},
{
"marker_ids": [
146,
148
],
"link": "Arm2",
"tier": "primary",
"skipped": false,
"angle_deg": -0.43914752876333224,
"baseline_model_mm": 26.788523662195356,
"baseline_obs_mm": 27.14708174031441,
"weight": 727.230241559964
}
],
"accumulated_state": {
"x": 192.92961386432523,
"y": 29.881507386797537,
"z": -30.87771471432869,
"a": -1.6952207816710758
}
}

View File

@@ -0,0 +1,64 @@
{
"status": "ok",
"link": "Ellbow",
"joint": "z",
"method": "fallback_1_child_axis",
"joint_origin_world_mm": [
302.92961386432523,
-115.6643985452182,
195.75197920278026
],
"joint_axis_world": [
-1.0,
0.0,
0.0
],
"mean_angle_deg": -30.87771471432869,
"circular_variance": 1.106978232756628e-05,
"circular_std_deg": 0.2695928517499839,
"num_pairs_used": 2,
"num_markers_matched": 2,
"per_pair": [
{
"marker_ids": [
129,
132
],
"link": "Ellbow",
"tier": "primary",
"skipped": true,
"reason": "bl_model=0.0 bl_obs=0.5 < 15.0"
},
{
"marker_ids": [
143,
146
],
"link": "Arm2",
"tier": "fallback_1_child_axis",
"skipped": false,
"angle_deg": -30.466169791617776,
"baseline_model_mm": 69.99999999999999,
"baseline_obs_mm": 69.90371726257193,
"weight": 4893.260208380034
},
{
"marker_ids": [
144,
148
],
"link": "Arm2",
"tier": "fallback_1_child_axis",
"skipped": false,
"angle_deg": -31.054317392869034,
"baseline_model_mm": 107.00000000000003,
"baseline_obs_mm": 106.56913684356692,
"weight": 11402.897642261663
}
],
"accumulated_state": {
"x": 192.92961386432523,
"y": 29.881507386797537,
"z": -30.87771471432869
}
}

View File

@@ -0,0 +1,38 @@
marker_id,link,set,num_cameras,x_mm,y_mm,z_mm,nx,ny,nz,model_x_mm,model_y_mm,model_z_mm,dist_to_model_mm,delta_z_mm,edge_length_mm
47,Board,A0,2,344.58,-286.64,-27.6,0.04311,0.02757,0.99869,344.23,-286.54,-27.3,0.468,-0.296,24.33
48,Board,A0,2,688.84,-321.23,-28.04,-0.01123,0.01593,0.99981,688.69,-320.72,-27.3,0.916,-0.744,23.76
49,Board,A0,2,1003.44,158.28,-23.56,0.03712,0.16967,0.9848,1006.0,158.33,-27.3,4.532,3.742,25.38
50,Board,A0,2,571.4,211.86,-26.17,-0.03364,0.09267,0.99513,573.41,211.86,-27.3,2.306,1.126,23.73
54,Board,A0,3,342.32,-330.29,-27.2,-0.00623,-0.01398,0.99988,342.27,-330.59,-27.3,0.324,0.101,23.63
55,Board,A0,2,283.67,-262.3,-26.44,-0.01462,0.02484,0.99958,283.72,-262.58,-27.3,0.907,0.86,23.52
57,Board,A0,3,602.8,-364.19,-27.67,0.04107,0.01127,0.99909,602.86,-364.05,-27.3,0.4,-0.369,24.09
59,Board,A0,3,625.74,-278.96,-27.4,0.00129,-0.00613,0.99998,626.21,-278.75,-27.3,0.524,-0.095,23.65
62,Board,A0,2,404.33,-175.23,-27.01,0.03141,0.00796,0.99947,404.7,-175.1,-27.3,0.488,0.292,23.63
65,Board,A0,2,803.76,-298.28,-27.61,0.00345,-0.00657,0.99997,803.39,-297.37,-27.3,1.029,-0.31,23.61
71,Board,A0,2,749.25,-284.72,-27.22,0.01682,-0.04064,0.99903,749.75,-284.01,-27.3,0.87,0.078,24.04
78,Board,A0,2,823.49,-345.92,-27.85,-0.03052,0.05345,0.9981,823.11,-344.38,-27.3,1.681,-0.546,23.2
79,Board,A0,2,312.04,-158.99,-26.74,0.00171,-0.01259,0.99992,312.3,-159.11,-27.3,0.633,0.564,23.78
80,Board,A0,2,865.63,-337.32,-28.92,0.01227,-0.02517,0.99961,863.59,-335.92,-27.3,2.957,-1.618,23.64
90,Board,A0,2,639.67,316.26,-24.64,0.04449,0.06811,0.99669,643.17,316.43,-27.3,4.401,2.664,24.37
93,Board,A0,2,932.92,143.9,-24.6,0.05916,0.07316,0.99556,934.88,143.6,-27.3,3.349,2.696,24.89
96,Board,A0,2,368.69,-186.25,-26.59,-0.01104,0.04799,0.99879,369.77,-186.49,-27.3,1.314,0.71,23.46
97,Board,A0,3,304.1,-359.23,-26.58,0.04968,-0.00156,0.99876,304.35,-359.67,-27.3,0.876,0.718,24.07
98,Board,A0,2,572.36,314.55,-25.25,0.02528,0.07501,0.99686,575.27,315.06,-27.3,3.592,2.046,23.83
99,Board,A0,2,961.91,-323.25,-29.4,0.05592,-0.01506,0.99832,959.16,-321.55,-27.3,3.857,-2.097,23.76
102,Board,A0,3,649.16,-223.32,-27.42,0.03375,0.00827,0.9994,649.69,-223.0,-27.3,0.631,-0.12,23.93
121,Ellbow,,2,390.15,-69.52,242.3,0.03439,0.41089,0.91104,,,,,,24.28
129,Ellbow,,2,393.15,-98.82,239.84,0.02674,-0.30142,0.95312,,,,,,23.87
132,Ellbow,,2,356.51,-98.86,240.22,0.01444,-0.33104,0.94351,,,,,,23.49
143,Arm2,,3,368.86,-264.52,166.84,-0.69002,-0.25968,0.6756,,,,,,24.07
144,Arm2,,3,357.75,-190.4,168.63,-0.99893,0.00677,0.0458,,,,,,24.07
146,Arm2,,3,369.04,-199.37,191.89,-0.6848,-0.23781,0.68884,,,,,,23.91
148,Arm2,,3,357.62,-289.69,130.25,-0.99986,0.00281,0.01658,,,,,,24.53
180,unknown,,2,378.21,-389.74,142.15,-0.87295,-0.36214,0.32681,,,,,,23.72
217,unknown,,2,734.78,-6.24,-7.48,0.02233,0.05488,0.99824,,,,,,23.1
229,Arm1,,2,301.97,-63.1,238.71,0.02138,0.63249,0.77428,,,,,,24.66
243,Arm1,,2,304.37,-113.71,230.69,0.01932,-0.7752,0.63143,,,,,,23.8
camera_id,x_mm,y_mm,z_mm,dir_x,dir_y,dir_z
cam0,-163.33,21.56,407.19,0.84979,-0.38898,-0.35573
cam1,-232.11,-598.65,855.46,0.51811,0.43562,-0.73607
cam2,1.65,142.16,837.04,0.63237,-0.31273,-0.70873
1 marker_id link set num_cameras x_mm y_mm z_mm nx ny nz model_x_mm model_y_mm model_z_mm dist_to_model_mm delta_z_mm edge_length_mm
2 47 Board A0 2 344.58 -286.64 -27.6 0.04311 0.02757 0.99869 344.23 -286.54 -27.3 0.468 -0.296 24.33
3 48 Board A0 2 688.84 -321.23 -28.04 -0.01123 0.01593 0.99981 688.69 -320.72 -27.3 0.916 -0.744 23.76
4 49 Board A0 2 1003.44 158.28 -23.56 0.03712 0.16967 0.9848 1006.0 158.33 -27.3 4.532 3.742 25.38
5 50 Board A0 2 571.4 211.86 -26.17 -0.03364 0.09267 0.99513 573.41 211.86 -27.3 2.306 1.126 23.73
6 54 Board A0 3 342.32 -330.29 -27.2 -0.00623 -0.01398 0.99988 342.27 -330.59 -27.3 0.324 0.101 23.63
7 55 Board A0 2 283.67 -262.3 -26.44 -0.01462 0.02484 0.99958 283.72 -262.58 -27.3 0.907 0.86 23.52
8 57 Board A0 3 602.8 -364.19 -27.67 0.04107 0.01127 0.99909 602.86 -364.05 -27.3 0.4 -0.369 24.09
9 59 Board A0 3 625.74 -278.96 -27.4 0.00129 -0.00613 0.99998 626.21 -278.75 -27.3 0.524 -0.095 23.65
10 62 Board A0 2 404.33 -175.23 -27.01 0.03141 0.00796 0.99947 404.7 -175.1 -27.3 0.488 0.292 23.63
11 65 Board A0 2 803.76 -298.28 -27.61 0.00345 -0.00657 0.99997 803.39 -297.37 -27.3 1.029 -0.31 23.61
12 71 Board A0 2 749.25 -284.72 -27.22 0.01682 -0.04064 0.99903 749.75 -284.01 -27.3 0.87 0.078 24.04
13 78 Board A0 2 823.49 -345.92 -27.85 -0.03052 0.05345 0.9981 823.11 -344.38 -27.3 1.681 -0.546 23.2
14 79 Board A0 2 312.04 -158.99 -26.74 0.00171 -0.01259 0.99992 312.3 -159.11 -27.3 0.633 0.564 23.78
15 80 Board A0 2 865.63 -337.32 -28.92 0.01227 -0.02517 0.99961 863.59 -335.92 -27.3 2.957 -1.618 23.64
16 90 Board A0 2 639.67 316.26 -24.64 0.04449 0.06811 0.99669 643.17 316.43 -27.3 4.401 2.664 24.37
17 93 Board A0 2 932.92 143.9 -24.6 0.05916 0.07316 0.99556 934.88 143.6 -27.3 3.349 2.696 24.89
18 96 Board A0 2 368.69 -186.25 -26.59 -0.01104 0.04799 0.99879 369.77 -186.49 -27.3 1.314 0.71 23.46
19 97 Board A0 3 304.1 -359.23 -26.58 0.04968 -0.00156 0.99876 304.35 -359.67 -27.3 0.876 0.718 24.07
20 98 Board A0 2 572.36 314.55 -25.25 0.02528 0.07501 0.99686 575.27 315.06 -27.3 3.592 2.046 23.83
21 99 Board A0 2 961.91 -323.25 -29.4 0.05592 -0.01506 0.99832 959.16 -321.55 -27.3 3.857 -2.097 23.76
22 102 Board A0 3 649.16 -223.32 -27.42 0.03375 0.00827 0.9994 649.69 -223.0 -27.3 0.631 -0.12 23.93
23 121 Ellbow 2 390.15 -69.52 242.3 0.03439 0.41089 0.91104 24.28
24 129 Ellbow 2 393.15 -98.82 239.84 0.02674 -0.30142 0.95312 23.87
25 132 Ellbow 2 356.51 -98.86 240.22 0.01444 -0.33104 0.94351 23.49
26 143 Arm2 3 368.86 -264.52 166.84 -0.69002 -0.25968 0.6756 24.07
27 144 Arm2 3 357.75 -190.4 168.63 -0.99893 0.00677 0.0458 24.07
28 146 Arm2 3 369.04 -199.37 191.89 -0.6848 -0.23781 0.68884 23.91
29 148 Arm2 3 357.62 -289.69 130.25 -0.99986 0.00281 0.01658 24.53
30 180 unknown 2 378.21 -389.74 142.15 -0.87295 -0.36214 0.32681 23.72
31 217 unknown 2 734.78 -6.24 -7.48 0.02233 0.05488 0.99824 23.1
32 229 Arm1 2 301.97 -63.1 238.71 0.02138 0.63249 0.77428 24.66
33 243 Arm1 2 304.37 -113.71 230.69 0.01932 -0.7752 0.63143 23.8
34 camera_id x_mm y_mm z_mm dir_x dir_y dir_z
35 cam0 -163.33 21.56 407.19 0.84979 -0.38898 -0.35573
36 cam1 -232.11 -598.65 855.46 0.51811 0.43562 -0.73607
37 cam2 1.65 142.16 837.04 0.63237 -0.31273 -0.70873

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,341 @@
{
"schema_version": "1.0",
"created_utc": "2026-06-16T13:54:06Z",
"source": {
"detection_json": "/app/data/homing/20260616_135403/cam0_aruco_detection.json",
"robot_json": "/app/scripts/robot_1781069752019.json"
},
"camera": {
"camera_id": "cam0",
"camera_matrix": [
[
1424.7584228515625,
0.0,
635.95947265625
],
[
0.0,
1421.5770263671875,
482.1744384765625
],
[
0.0,
0.0,
1.0
]
],
"distortion_coefficients": [
0.05634751915931702,
0.33765655755996704,
0.002130246954038739,
-0.004022662527859211,
-1.182201862335205
]
},
"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": 10,
"used_marker_ids": [
97,
96,
47,
54,
62,
85,
105,
102,
57,
59
],
"history": {
"iters": [
0,
1,
2,
3
],
"rms": [
0.00297150987668363,
0.0002461940604502246,
0.00022805923674527905,
0.0002280590512991819
],
"lambda": [
0.001,
0.0005,
0.00025,
0.000125
]
},
"residual_rms_px": 0.46309374817158255,
"residual_median_px": 0.4260383419221694,
"residual_max_px": 0.8110471927822179,
"sigma2_normalized": 7.430132982639082e-08
},
"camera_pose": {
"world_to_camera": {
"rotation_matrix": [
[
-0.4332370162010193,
-0.8998357057571411,
-0.0510035902261734
],
[
-0.3002627193927765,
0.19745959341526031,
-0.9331945180892944
],
[
0.8497928977012634,
-0.3889799416065216,
-0.3557339012622833
]
],
"translation_m": [
-0.03059636428952217,
0.3266908526420593,
0.29203665256500244
],
"rvec_rad": [
1.119242299194618,
-1.8525955991141305,
1.2330935082472974
]
},
"camera_in_world": {
"position_m": [
-0.16333305835723877,
0.021556459367275238,
0.4071928858757019
],
"position_mm": [
-163.3330535888672,
21.556459426879883,
407.19287109375
],
"orientation_deg": {
"roll": -132.44384765625,
"pitch": -58.189151763916016,
"yaw": -145.275390625
}
},
"uncertainty": {
"pose_covariance_6x6": [
[
7.227588006323877e-07,
2.9303920656916736e-08,
5.384671063273605e-07,
7.605882237904871e-10,
1.680441654688309e-08,
1.1426051605294841e-07
],
[
2.930392065691868e-08,
1.1003513442219108e-06,
5.565209626759047e-07,
-2.652519045621451e-07,
-5.340853554657626e-07,
-5.226176231579231e-07
],
[
5.384671063273979e-07,
5.565209626759146e-07,
2.319354687285001e-06,
2.551507946650087e-07,
-5.787929262591489e-07,
-2.912661805714844e-07
],
[
7.605882237987269e-10,
-2.652519045621417e-07,
2.551507946650191e-07,
1.5790856417639881e-07,
5.5121833627792086e-08,
1.1160408874634451e-07
],
[
1.6804416546875622e-08,
-5.340853554657651e-07,
-5.787929262591501e-07,
5.512183362779438e-08,
3.44928133359627e-07,
3.443723010303455e-07
],
[
1.1426051605294808e-07,
-5.226176231579226e-07,
-2.9126618057147984e-07,
1.1160408874634589e-07,
3.443723010303443e-07,
5.551732669825882e-07
]
],
"parameter_std": {
"rvec_std_deg": [
0.04871013426631951,
0.06010191660883742,
0.0872581932849214
],
"tvec_std_m": [
0.00039737710575270794,
0.0005873058260903147,
0.0007450995013973558
]
},
"camera_center_std_m": [
0.0004380589515914775,
0.0008600663979125257,
0.0008421001328967693
],
"camera_center_std_mm": [
0.4380589515914775,
0.8600663979125257,
0.8421001328967692
],
"orientation_std_deg": {
"roll": 0.09163914629805689,
"pitch": 0.04946121940390761,
"yaw": 0.07431542255357135
}
}
},
"observations": {
"markers": [
{
"marker_id": 97,
"observed_center_px": [
969.75,
871.25
],
"projected_center_px": [
969.1539916992188,
871.4326782226562
],
"reprojection_error_px": 0.623375671351553,
"confidence": 0.8722907081171155
},
{
"marker_id": 96,
"observed_center_px": [
590.5,
908.0
],
"projected_center_px": [
590.39501953125,
907.824951171875
],
"reprojection_error_px": 0.20411514164046116,
"confidence": 0.39473089942559886
},
{
"marker_id": 47,
"observed_center_px": [
796.75,
872.75
],
"projected_center_px": [
797.0742797851562,
872.3286743164062
],
"reprojection_error_px": 0.5316697383872101,
"confidence": 0.7545277738933825
},
{
"marker_id": 54,
"observed_center_px": [
874.0,
847.75
],
"projected_center_px": [
874.1162109375,
847.8966674804688
],
"reprojection_error_px": 0.18712651287746498,
"confidence": 0.7740240946534177
},
{
"marker_id": 62,
"observed_center_px": [
541.0,
875.5
],
"projected_center_px": [
541.011474609375,
875.953857421875
],
"reprojection_error_px": 0.4540024515917624,
"confidence": 0.5296335300596272
},
{
"marker_id": 85,
"observed_center_px": [
691.5,
715.0
],
"projected_center_px": [
692.12548828125,
714.4837036132812
],
"reprojection_error_px": 0.8110471927822179,
"confidence": 0.3363291739196003
},
{
"marker_id": 105,
"observed_center_px": [
607.25,
720.0
],
"projected_center_px": [
607.2650756835938,
720.0259399414062
],
"reprojection_error_px": 0.03000261315249967,
"confidence": 0.29801288537668325
},
{
"marker_id": 102,
"observed_center_px": [
469.0,
653.75
],
"projected_center_px": [
468.6142272949219,
653.6883544921875
],
"reprojection_error_px": 0.390667055965505,
"confidence": 0.17455168671479393
},
{
"marker_id": 57,
"observed_center_px": [
691.0,
629.75
],
"projected_center_px": [
691.397216796875,
630.0008544921875
],
"reprojection_error_px": 0.46979693482427437,
"confidence": 0.20110305644698828
},
{
"marker_id": 59,
"observed_center_px": [
561.0,
647.0
],
"projected_center_px": [
560.620849609375,
647.1212768554688
],
"reprojection_error_px": 0.39807423225257643,
"confidence": 0.20130952501608368
}
]
},
"qa": {
"sanity_notes": []
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,635 @@
{
"schema_version": "1.0",
"created_utc": "2026-06-16T13:54:13Z",
"source": {
"detection_json": "/app/data/homing/20260616_135403/cam1_aruco_detection.json",
"robot_json": "/app/scripts/robot_1781069752019.json"
},
"camera": {
"camera_id": "cam1",
"camera_matrix": [
[
1367.5723876953125,
0.0,
672.1165771484375
],
[
0.0,
1372.3011474609375,
445.8396911621094
],
[
0.0,
0.0,
1.0
]
],
"distortion_coefficients": [
0.01016925647854805,
0.7656787633895874,
-0.0031530377455055714,
-0.00288817984983325,
-2.490830183029175
]
},
"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": [
69,
64,
95,
97,
51,
54,
55,
75,
77,
79,
52,
96,
57,
81,
62,
101,
59,
48,
71,
102,
78,
65,
80,
99,
87,
67,
50,
98,
90,
93,
49
],
"history": {
"iters": [
0,
1,
2,
3
],
"rms": [
0.0166526002104434,
0.001547861856607491,
0.0009010954140942989,
0.0009010670474135007
],
"lambda": [
0.001,
0.0005,
0.00025,
0.000125
]
},
"residual_rms_px": 1.772902101262499,
"residual_median_px": 1.078829411239929,
"residual_max_px": 4.132896609973797,
"sigma2_normalized": 8.989134466205308e-07
},
"camera_pose": {
"world_to_camera": {
"rotation_matrix": [
[
-0.8299428224563599,
0.047987256199121475,
-0.5557806491851807
],
[
-0.2067878544330597,
0.8988499641418457,
0.38640326261520386
],
[
0.5181058645248413,
0.4356212913990021,
-0.7360709309577942
]
],
"translation_m": [
0.3115391731262207,
0.15955179929733276,
1.010721206665039
],
"rvec_rad": [
0.11388470361679144,
-2.484845661051424,
-0.5895193293685591
]
},
"camera_in_world": {
"position_m": [
-0.2321075201034546,
-0.5986547470092773,
0.8554586172103882
],
"position_mm": [
-232.10751342773438,
-598.6547241210938,
855.4586181640625
],
"orientation_deg": {
"roll": 149.38209533691406,
"pitch": -31.20528221130371,
"yaw": -166.0091094970703
}
},
"uncertainty": {
"pose_covariance_6x6": [
[
6.177429611549712e-07,
-3.271435310513194e-07,
2.0826038527175038e-07,
1.1745289691018253e-08,
1.246399175351463e-07,
2.5938496303806914e-07
],
[
-3.2714353105131786e-07,
1.818745262675688e-06,
-7.758187179653276e-07,
-3.7391240334935067e-07,
1.2355085126162834e-07,
-1.0480837144134802e-06
],
[
2.0826038527175115e-07,
-7.758187179653164e-07,
3.196631325051651e-06,
-1.4226982133415135e-07,
-2.472220165745438e-07,
-5.7071288101408645e-08
],
[
1.1745289691017904e-08,
-3.73912403349352e-07,
-1.422698213341482e-07,
1.5450238837808334e-07,
-1.8371188573627686e-08,
2.69737538270126e-07
],
[
1.246399175351462e-07,
1.2355085126162715e-07,
-2.472220165745455e-07,
-1.8371188573627196e-08,
1.0508537079793492e-07,
-3.375059213526172e-08
],
[
2.5938496303806766e-07,
-1.048083714413481e-06,
-5.707128810140133e-08,
2.697375382701256e-07,
-3.375059213526283e-08,
1.1991223310707593e-06
]
],
"parameter_std": {
"rvec_std_deg": [
0.04503254951204292,
0.07726958326123887,
0.10243984387203064
],
"tvec_std_m": [
0.00039306791827632454,
0.00032416873815643436,
0.0010950444425094168
]
},
"camera_center_std_m": [
0.0011416833258602707,
0.001399943682910595,
0.0016242027716662328
],
"camera_center_std_mm": [
1.1416833258602708,
1.3999436829105951,
1.6242027716662328
],
"orientation_std_deg": {
"roll": 0.10912552250951364,
"pitch": 0.06634826995916507,
"yaw": 0.05269160994227188
}
}
},
"observations": {
"markers": [
{
"marker_id": 69,
"observed_center_px": [
1132.25,
285.75
],
"projected_center_px": [
1135.0460205078125,
285.681884765625
],
"reprojection_error_px": 2.796850079153695,
"confidence": 0.7848853204330548
},
{
"marker_id": 64,
"observed_center_px": [
1159.75,
422.0
],
"projected_center_px": [
1163.8828125,
422.0263671875
],
"reprojection_error_px": 4.132896609973797,
"confidence": 0.6665931083934911
},
{
"marker_id": 95,
"observed_center_px": [
888.25,
260.75
],
"projected_center_px": [
888.2636108398438,
260.42254638671875
],
"reprojection_error_px": 0.32773636327420036,
"confidence": 0.532721681679907
},
{
"marker_id": 97,
"observed_center_px": [
747.75,
130.0
],
"projected_center_px": [
747.532470703125,
128.94332885742188
],
"reprojection_error_px": 1.078829411239929,
"confidence": 0.46560622960207215
},
{
"marker_id": 51,
"observed_center_px": [
907.0,
393.0
],
"projected_center_px": [
907.0470581054688,
392.5666809082031
],
"reprojection_error_px": 0.4358668381581427,
"confidence": 0.51593747520078
},
{
"marker_id": 54,
"observed_center_px": [
707.25,
163.0
],
"projected_center_px": [
706.4639892578125,
162.5380096435547
],
"reprojection_error_px": 0.9117280166160364,
"confidence": 0.39406543798060945
},
{
"marker_id": 55,
"observed_center_px": [
773.25,
258.25
],
"projected_center_px": [
773.2633666992188,
257.52667236328125
],
"reprojection_error_px": 0.7234511308230408,
"confidence": 0.46078075075842734
},
{
"marker_id": 75,
"observed_center_px": [
1118.0,
858.25
],
"projected_center_px": [
1118.6734619140625,
858.496826171875
],
"reprojection_error_px": 0.7172685053835789,
"confidence": 0.31814404623997206
},
{
"marker_id": 77,
"observed_center_px": [
1064.25,
835.25
],
"projected_center_px": [
1064.912109375,
835.7826538085938
],
"reprojection_error_px": 0.8497699125482838,
"confidence": 0.2764879183628208
},
{
"marker_id": 79,
"observed_center_px": [
745.5,
374.75
],
"projected_center_px": [
745.0097045898438,
374.2278137207031
],
"reprojection_error_px": 0.7162877211750871,
"confidence": 0.4170494444576311
},
{
"marker_id": 52,
"observed_center_px": [
975.0,
818.5
],
"projected_center_px": [
974.7210083007812,
818.7593383789062
],
"reprojection_error_px": 0.38091043961368026,
"confidence": 0.28365791942355234
},
{
"marker_id": 96,
"observed_center_px": [
686.0,
332.0
],
"projected_center_px": [
685.1288452148438,
331.39532470703125
],
"reprojection_error_px": 1.0604446565603864,
"confidence": 0.34158615574582396
},
{
"marker_id": 57,
"observed_center_px": [
450.5,
91.0
],
"projected_center_px": [
449.3786926269531,
91.75985717773438
],
"reprojection_error_px": 1.3545158380040203,
"confidence": 0.2640566098051195
},
{
"marker_id": 81,
"observed_center_px": [
935.5,
766.25
],
"projected_center_px": [
935.0217895507812,
766.4747314453125
],
"reprojection_error_px": 0.5283838152841586,
"confidence": 0.2860351956805948
},
{
"marker_id": 62,
"observed_center_px": [
652.0,
337.0
],
"projected_center_px": [
651.4396362304688,
337.208251953125
],
"reprojection_error_px": 0.5978096939525563,
"confidence": 0.29846808668025543
},
{
"marker_id": 101,
"observed_center_px": [
947.0,
889.5
],
"projected_center_px": [
945.738037109375,
889.663818359375
],
"reprojection_error_px": 1.272551292554812,
"confidence": 0.2368447831748287
},
{
"marker_id": 59,
"observed_center_px": [
442.75,
186.75
],
"projected_center_px": [
441.92218017578125,
187.2548065185547
],
"reprojection_error_px": 0.9695954220936,
"confidence": 0.2403878054047415
},
{
"marker_id": 48,
"observed_center_px": [
384.5,
132.25
],
"projected_center_px": [
384.16497802734375,
133.0881805419922
],
"reprojection_error_px": 0.9026551629148323,
"confidence": 0.2302842308363423
},
{
"marker_id": 71,
"observed_center_px": [
342.75,
165.5
],
"projected_center_px": [
342.5614929199219,
166.22940063476562
],
"reprojection_error_px": 0.7533659172248751,
"confidence": 0.19446237400059435
},
{
"marker_id": 102,
"observed_center_px": [
431.5,
243.5
],
"projected_center_px": [
430.61041259765625,
244.0597686767578
],
"reprojection_error_px": 1.0510502927490641,
"confidence": 0.21383444473187546
},
{
"marker_id": 78,
"observed_center_px": [
275.75,
91.5
],
"projected_center_px": [
276.2151794433594,
93.39916229248047
],
"reprojection_error_px": 1.955302873649964,
"confidence": 0.19179473932902583
},
{
"marker_id": 65,
"observed_center_px": [
299.5,
144.75
],
"projected_center_px": [
299.9003601074219,
145.89024353027344
],
"reprojection_error_px": 1.2084881149375393,
"confidence": 0.18371428147783359
},
{
"marker_id": 80,
"observed_center_px": [
248.0,
96.75
],
"projected_center_px": [
248.6451873779297,
98.80813598632812
],
"reprojection_error_px": 2.15689371338938,
"confidence": 0.16263927873225353
},
{
"marker_id": 99,
"observed_center_px": [
185.25,
102.75
],
"projected_center_px": [
186.1451873779297,
105.17755889892578
],
"reprojection_error_px": 2.5873543725895725,
"confidence": 0.1267190569190249
},
{
"marker_id": 87,
"observed_center_px": [
211.0,
180.5
],
"projected_center_px": [
212.29312133789062,
182.40245056152344
],
"reprojection_error_px": 2.300321919547106,
"confidence": 0.12012255629388194
},
{
"marker_id": 67,
"observed_center_px": [
582.75,
719.5
],
"projected_center_px": [
580.64990234375,
717.6641845703125
],
"reprojection_error_px": 2.789377790415892,
"confidence": 0.18948869009626315
},
{
"marker_id": 50,
"observed_center_px": [
539.75,
660.5
],
"projected_center_px": [
538.0208129882812,
659.2553100585938
],
"reprojection_error_px": 2.1305728740727727,
"confidence": 0.17725945005388774
},
{
"marker_id": 98,
"observed_center_px": [
547.25,
741.0
],
"projected_center_px": [
545.20556640625,
739.264404296875
],
"reprojection_error_px": 2.6817906637095117,
"confidence": 0.15986546546769564
},
{
"marker_id": 90,
"observed_center_px": [
498.75,
723.0
],
"projected_center_px": [
496.80267333984375,
720.6588134765625
],
"reprojection_error_px": 3.045198755234322,
"confidence": 0.15986546546769564
},
{
"marker_id": 93,
"observed_center_px": [
285.5,
521.25
],
"projected_center_px": [
286.17669677734375,
519.6380004882812
],
"reprojection_error_px": 1.7482737069031569,
"confidence": 0.12409919873734558
},
{
"marker_id": 49,
"observed_center_px": [
244.75,
518.25
],
"projected_center_px": [
246.22958374023438,
516.4528198242188
],
"reprojection_error_px": 2.3278798569915646,
"confidence": 0.12349013493926465
}
]
},
"qa": {
"sanity_notes": []
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 213 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 276 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,649 @@
{
"schema_version": "1.0",
"created_utc": "2026-06-16T13:54:15Z",
"source": {
"detection_json": "/app/data/homing/20260616_135403/cam2_aruco_detection.json",
"robot_json": "/app/scripts/robot_1781069752019.json"
},
"camera": {
"camera_id": "cam2",
"camera_matrix": [
[
1388.99072265625,
0.0,
933.082763671875
],
[
0.0,
1394.8729248046875,
562.4996948242188
],
[
0.0,
0.0,
1.0
]
],
"distortion_coefficients": [
0.019531700760126114,
-0.11213663965463638,
0.0026758278254419565,
0.0007694826927036047,
0.05339815095067024
]
},
"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": 32,
"used_marker_ids": [
66,
79,
56,
98,
55,
70,
46,
50,
47,
68,
97,
90,
54,
91,
76,
88,
104,
100,
102,
92,
59,
57,
94,
48,
93,
71,
49,
65,
78,
80,
99,
89
],
"history": {
"iters": [
0,
1,
2,
3
],
"rms": [
0.008550789594314975,
0.00045373090039006124,
0.0003190410648876359,
0.0003190403707802743
],
"lambda": [
0.001,
0.0005,
0.00025,
0.000125
]
},
"residual_rms_px": 0.626368910138774,
"residual_median_px": 0.5961997903192752,
"residual_max_px": 1.3067638413247398,
"sigma2_normalized": 1.1231642281994808e-07
},
"camera_pose": {
"world_to_camera": {
"rotation_matrix": [
[
-0.449922114610672,
-0.8930371999740601,
-0.0073920562863349915
],
[
-0.6306139826774597,
0.3235495984554291,
-0.705437183380127
],
[
0.6323733329772949,
-0.3127302825450897,
-0.708733856678009
]
],
"translation_m": [
0.1338866800069809,
0.5455181002616882,
0.6366544365882874
],
"rvec_rad": [
1.349480297992647,
-2.198460889345346,
0.9017792032946432
]
},
"camera_in_world": {
"position_m": [
0.0016466081142425537,
0.14216473698616028,
0.8370369672775269
],
"position_mm": [
1.6466081142425537,
142.16473388671875,
837.0369873046875
],
"orientation_deg": {
"roll": -156.19041442871094,
"pitch": -39.225440979003906,
"yaw": -125.506591796875
}
},
"uncertainty": {
"pose_covariance_6x6": [
[
1.4849414393769387e-07,
-1.4240380921300118e-07,
-1.2729418557956881e-10,
2.2091987446935928e-08,
8.2905909888743e-08,
9.837994947994132e-08
],
[
-1.424038092130027e-07,
3.3055803639260066e-07,
-7.21239223506363e-08,
-1.0929630274807451e-07,
-1.150185748138138e-07,
-1.8060634186505822e-07
],
[
-1.2729418557402184e-10,
-7.212392235064104e-08,
6.47873152834935e-07,
1.561383497117808e-07,
-6.815040811984151e-08,
-1.5243012171916859e-09
],
[
2.2091987446937626e-08,
-1.0929630274807578e-07,
1.5613834971178012e-07,
7.216729604962e-08,
1.1563414877868103e-08,
4.303836385840717e-08
],
[
8.29059098887427e-08,
-1.1501857481381275e-07,
-6.815040811984441e-08,
1.156341487786719e-08,
6.864195938949862e-08,
8.21476149744511e-08
],
[
9.837994947994174e-08,
-1.8060634186505764e-07,
-1.5243012171946075e-09,
4.303836385840626e-08,
8.214761497445146e-08,
1.4386634085355377e-07
]
],
"parameter_std": {
"rvec_std_deg": [
0.0220788930578102,
0.0329417367623057,
0.04611769833945156
],
"tvec_std_m": [
0.000268639714207747,
0.00026199610567620776,
0.0003792971669463849
]
},
"camera_center_std_m": [
0.0005069549028542055,
0.0007540595500202172,
0.00042129810324603365
],
"camera_center_std_mm": [
0.5069549028542054,
0.7540595500202172,
0.4212981032460337
],
"orientation_std_deg": {
"roll": 0.03877837514008846,
"pitch": 0.03559501730728608,
"yaw": 0.019333959001429417
}
}
},
"observations": {
"markers": [
{
"marker_id": 66,
"observed_center_px": [
1493.0,
1050.25
],
"projected_center_px": [
1494.0186767578125,
1050.6241455078125
],
"reprojection_error_px": 1.0852129735326888,
"confidence": 0.08368267584972333
},
{
"marker_id": 79,
"observed_center_px": [
1142.5,
1052.5
],
"projected_center_px": [
1142.43701171875,
1052.92236328125
],
"reprojection_error_px": 0.4270342666848829,
"confidence": 0.06288522219119905
},
{
"marker_id": 56,
"observed_center_px": [
568.5,
1026.25
],
"projected_center_px": [
568.430419921875,
1026.8428955078125
],
"reprojection_error_px": 0.5969643795538586,
"confidence": 0.3964459016633029
},
{
"marker_id": 98,
"observed_center_px": [
322.5,
1023.25
],
"projected_center_px": [
322.2366638183594,
1022.9930419921875
],
"reprojection_error_px": 0.36793119239884114,
"confidence": 0.4222467925074662
},
{
"marker_id": 55,
"observed_center_px": [
1298.75,
1021.0
],
"projected_center_px": [
1298.875732421875,
1021.7003784179688
],
"reprojection_error_px": 0.7115747116550462,
"confidence": 0.5099828684402014
},
{
"marker_id": 70,
"observed_center_px": [
337.25,
980.75
],
"projected_center_px": [
337.37994384765625,
980.953125
],
"reprojection_error_px": 0.24113309430418445,
"confidence": 0.5822711562236141
},
{
"marker_id": 46,
"observed_center_px": [
528.25,
990.0
],
"projected_center_px": [
528.1993408203125,
989.808837890625
],
"reprojection_error_px": 0.19776072549247456,
"confidence": 0.608327148176666
},
{
"marker_id": 50,
"observed_center_px": [
476.25,
962.0
],
"projected_center_px": [
476.15234375,
961.6090087890625
],
"reprojection_error_px": 0.4030023203338104,
"confidence": 0.5940980546668021
},
{
"marker_id": 47,
"observed_center_px": [
1273.0,
933.0
],
"projected_center_px": [
1273.08642578125,
933.1593017578125
],
"reprojection_error_px": 0.18123593933551163,
"confidence": 0.6783989990234374
},
{
"marker_id": 68,
"observed_center_px": [
534.75,
936.75
],
"projected_center_px": [
534.9307861328125,
936.669921875
],
"reprojection_error_px": 0.1977274182323092,
"confidence": 0.5476861321035912
},
{
"marker_id": 97,
"observed_center_px": [
1394.0,
935.75
],
"projected_center_px": [
1394.4114990234375,
936.25732421875
],
"reprojection_error_px": 0.6532299053321993,
"confidence": 0.6020873966469932
},
{
"marker_id": 90,
"observed_center_px": [
302.75,
942.0
],
"projected_center_px": [
303.2016906738281,
941.5814208984375
],
"reprojection_error_px": 0.6158189093298251,
"confidence": 0.4933910249582603
},
{
"marker_id": 54,
"observed_center_px": [
1325.25,
909.25
],
"projected_center_px": [
1326.080322265625,
909.7511596679688
],
"reprojection_error_px": 0.9698433263116166,
"confidence": 0.5932304176674892
},
{
"marker_id": 91,
"observed_center_px": [
268.5,
859.75
],
"projected_center_px": [
268.9271545410156,
859.4078369140625
],
"reprojection_error_px": 0.5472993507108722,
"confidence": 0.43401712608969617
},
{
"marker_id": 76,
"observed_center_px": [
499.75,
814.75
],
"projected_center_px": [
499.89013671875,
814.3128662109375
],
"reprojection_error_px": 0.45904711030803236,
"confidence": 0.4224323772427831
},
{
"marker_id": 88,
"observed_center_px": [
276.5,
810.0
],
"projected_center_px": [
277.01470947265625,
809.6713256835938
],
"reprojection_error_px": 0.6106984914892051,
"confidence": 0.3880318146180246
},
{
"marker_id": 104,
"observed_center_px": [
364.75,
716.25
],
"projected_center_px": [
365.1983947753906,
715.8483276367188
],
"reprojection_error_px": 0.6019954833896626,
"confidence": 0.3149312141934442
},
{
"marker_id": 100,
"observed_center_px": [
456.0,
706.5
],
"projected_center_px": [
455.809326171875,
706.3466186523438
],
"reprojection_error_px": 0.2447086973131308,
"confidence": 0.29985477912268665
},
{
"marker_id": 102,
"observed_center_px": [
983.75,
664.75
],
"projected_center_px": [
983.1326904296875,
664.3472900390625
],
"reprojection_error_px": 0.7370525206779271,
"confidence": 0.35537153494120666
},
{
"marker_id": 92,
"observed_center_px": [
944.5,
684.75
],
"projected_center_px": [
944.1395874023438,
684.6761474609375
],
"reprojection_error_px": 0.36790139721847215,
"confidence": 0.3581280715917397
},
{
"marker_id": 59,
"observed_center_px": [
1057.0,
660.75
],
"projected_center_px": [
1056.674560546875,
660.1974487304688
],
"reprojection_error_px": 0.6412672945900915,
"confidence": 0.3614809694286344
},
{
"marker_id": 57,
"observed_center_px": [
1160.25,
644.0
],
"projected_center_px": [
1160.1585693359375,
643.6640625
],
"reprojection_error_px": 0.3481573929089539,
"confidence": 0.36601105131705447
},
{
"marker_id": 94,
"observed_center_px": [
434.0,
646.0
],
"projected_center_px": [
434.1164855957031,
646.009765625
],
"reprojection_error_px": 0.11689423184209098,
"confidence": 0.23999999517474713
},
{
"marker_id": 48,
"observed_center_px": [
1062.5,
594.25
],
"projected_center_px": [
1062.1007080078125,
593.8082885742188
],
"reprojection_error_px": 0.5954352010846917,
"confidence": 0.3288921382047948
},
{
"marker_id": 93,
"observed_center_px": [
453.25,
587.75
],
"projected_center_px": [
453.8382873535156,
588.1190795898438
],
"reprojection_error_px": 0.6944794841790854,
"confidence": 0.22185058085409132
},
{
"marker_id": 71,
"observed_center_px": [
991.5,
562.75
],
"projected_center_px": [
990.5108032226562,
562.600341796875
],
"reprojection_error_px": 1.0004538180595166,
"confidence": 0.2952868952338828
},
{
"marker_id": 49,
"observed_center_px": [
418.75,
541.75
],
"projected_center_px": [
419.1109313964844,
542.364013671875
],
"reprojection_error_px": 0.712238908104283,
"confidence": 0.1827933144037421
},
{
"marker_id": 65,
"observed_center_px": [
976.0,
520.25
],
"projected_center_px": [
975.2779541015625,
520.2697143554688
],
"reprojection_error_px": 0.7223149834123371,
"confidence": 0.2338696816856176
},
{
"marker_id": 78,
"observed_center_px": [
1011.5,
491.25
],
"projected_center_px": [
1010.1968994140625,
491.1522216796875
],
"reprojection_error_px": 1.3067638413247398,
"confidence": 0.23480971509885154
},
{
"marker_id": 80,
"observed_center_px": [
981.75,
468.0
],
"projected_center_px": [
981.4586181640625,
468.0997619628906
],
"reprojection_error_px": 0.30798672626283524,
"confidence": 0.21560517841254084
},
{
"marker_id": 99,
"observed_center_px": [
923.0,
415.25
],
"projected_center_px": [
922.6004028320312,
415.1175231933594
],
"reprojection_error_px": 0.42098456141091795,
"confidence": 0.18206985328647093
},
{
"marker_id": 89,
"observed_center_px": [
953.0,
384.75
],
"projected_center_px": [
952.2056274414062,
385.0829162597656
],
"reprojection_error_px": 0.8613135305236496,
"confidence": 0.18206985328647093
}
]
},
"qa": {
"sanity_notes": []
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 KiB

View File

@@ -0,0 +1,40 @@
{
"status": "ok",
"link": "Arm1",
"joint": "y",
"method": "primary",
"joint_origin_world_mm": [
302.7293528438215,
101.1,
71.2
],
"joint_axis_world": [
-1.0,
0.0,
0.0
],
"mean_angle_deg": 35.99125404126597,
"circular_variance": 0.0,
"circular_std_deg": 0.0,
"num_pairs_used": 1,
"num_markers_matched": 2,
"per_pair": [
{
"marker_ids": [
229,
243
],
"link": "Arm1",
"tier": "primary",
"skipped": false,
"angle_deg": 35.99125404126596,
"baseline_model_mm": 49.49747468305833,
"baseline_obs_mm": 51.238902220972605,
"weight": 2536.1962654702925
}
],
"accumulated_state": {
"x": 192.72935284382152,
"y": 35.99125404126597
}
}

View File

@@ -0,0 +1,101 @@
{
"status": "ok",
"link": "Arm2",
"joint": "a",
"method": "primary",
"joint_origin_world_mm": [
392.7293528438215,
-101.1766769713254,
218.11543810450308
],
"joint_axis_world": [
0.0,
-0.8915707801303708,
-0.4528813796323736
],
"mean_angle_deg": -3.593602085604554,
"circular_variance": 0.007103593831153776,
"circular_std_deg": 6.841482910070501,
"num_pairs_used": 4,
"num_markers_matched": 4,
"per_pair": [
{
"marker_ids": [
143,
144
],
"link": "Arm2",
"tier": "primary",
"skipped": false,
"angle_deg": 3.320663295151834,
"baseline_model_mm": 26.788523662195356,
"baseline_obs_mm": 33.84171710449189,
"weight": 906.5696394230024
},
{
"marker_ids": [
143,
146
],
"link": "Arm2",
"tier": "primary",
"skipped": true,
"reason": "bl_model=0.0 bl_obs=7.2 < 15.0"
},
{
"marker_ids": [
143,
148
],
"link": "Arm2",
"tier": "primary",
"skipped": false,
"angle_deg": -5.41540861073131,
"baseline_model_mm": 26.788523662195345,
"baseline_obs_mm": 24.016486953619907,
"weight": 643.3662290398527
},
{
"marker_ids": [
144,
146
],
"link": "Arm2",
"tier": "primary",
"skipped": false,
"angle_deg": -1.9878159055548217,
"baseline_model_mm": 26.788523662195335,
"baseline_obs_mm": 27.246309858551403,
"weight": 729.8884163533103
},
{
"marker_ids": [
144,
148
],
"link": "Arm2",
"tier": "primary",
"skipped": true,
"reason": "bl_model=0.0 bl_obs=10.7 < 15.0"
},
{
"marker_ids": [
146,
148
],
"link": "Arm2",
"tier": "primary",
"skipped": false,
"angle_deg": -16.595084006319954,
"baseline_model_mm": 26.788523662195324,
"baseline_obs_mm": 18.108584778091874,
"weight": 485.10225181678425
}
],
"accumulated_state": {
"x": 192.72935284382152,
"y": 35.99125404126597,
"z": -62.91995514975685,
"a": -3.593602085604554
}
}

View File

@@ -0,0 +1,64 @@
{
"status": "ok",
"link": "Ellbow",
"joint": "z",
"method": "primary",
"joint_origin_world_mm": [
302.7293528438215,
-101.1766769713254,
218.11543810450308
],
"joint_axis_world": [
-1.0,
0.0,
0.0
],
"mean_angle_deg": -62.91995514975685,
"circular_variance": 2.1123632454655983e-05,
"circular_std_deg": 0.3724124787779045,
"num_pairs_used": 2,
"num_markers_matched": 3,
"per_pair": [
{
"marker_ids": [
121,
129
],
"link": "Ellbow",
"tier": "primary",
"skipped": false,
"angle_deg": -63.2924549345884,
"baseline_model_mm": 26.788523662195352,
"baseline_obs_mm": 29.39944917497193,
"weight": 787.5678398792452
},
{
"marker_ids": [
121,
132
],
"link": "Ellbow",
"tier": "primary",
"skipped": false,
"angle_deg": -62.547632578212095,
"baseline_model_mm": 26.788523662195352,
"baseline_obs_mm": 29.413442147810667,
"weight": 787.9426909632401
},
{
"marker_ids": [
129,
132
],
"link": "Ellbow",
"tier": "primary",
"skipped": true,
"reason": "bl_model=0.0 bl_obs=0.4 < 15.0"
}
],
"accumulated_state": {
"x": 192.72935284382152,
"y": 35.99125404126597,
"z": -62.91995514975685
}
}