Homing Marker Rotation
36
test/homing/20260616_133151/aruco_marker_poses.csv
Normal 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
|
||||
|
1387
test/homing/20260616_133151/aruco_marker_poses.json
Normal file
BIN
test/homing/20260616_133151/cam0.jpg
Normal file
|
After Width: | Height: | Size: 79 KiB |
2431
test/homing/20260616_133151/cam0_aruco_detection.json
Normal file
313
test/homing/20260616_133151/cam0_camera_pose.json
Normal 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": []
|
||||
}
|
||||
}
|
||||
BIN
test/homing/20260616_133151/cam0_debug.jpg
Normal file
|
After Width: | Height: | Size: 194 KiB |
BIN
test/homing/20260616_133151/cam1.jpg
Normal file
|
After Width: | Height: | Size: 80 KiB |
3123
test/homing/20260616_133151/cam1_aruco_detection.json
Normal file
621
test/homing/20260616_133151/cam1_camera_pose.json
Normal 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": []
|
||||
}
|
||||
}
|
||||
BIN
test/homing/20260616_133151/cam1_debug.jpg
Normal file
|
After Width: | Height: | Size: 214 KiB |
BIN
test/homing/20260616_133151/cam2.jpg
Normal file
|
After Width: | Height: | Size: 278 KiB |
3356
test/homing/20260616_133151/cam2_aruco_detection.json
Normal file
649
test/homing/20260616_133151/cam2_camera_pose.json
Normal 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": []
|
||||
}
|
||||
}
|
||||
BIN
test/homing/20260616_133151/cam2_debug.jpg
Normal file
|
After Width: | Height: | Size: 451 KiB |
40
test/homing/20260616_133151/state_Arm1.json
Normal 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
|
||||
}
|
||||
}
|
||||
101
test/homing/20260616_133151/state_Arm2.json
Normal 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
|
||||
}
|
||||
}
|
||||
64
test/homing/20260616_133151/state_Ellbow.json
Normal 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
|
||||
}
|
||||
}
|
||||
38
test/homing/20260616_135403/aruco_marker_poses.csv
Normal 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
|
||||
|
1475
test/homing/20260616_135403/aruco_marker_poses.json
Normal file
BIN
test/homing/20260616_135403/cam0.jpg
Normal file
|
After Width: | Height: | Size: 78 KiB |
2252
test/homing/20260616_135403/cam0_aruco_detection.json
Normal file
341
test/homing/20260616_135403/cam0_camera_pose.json
Normal 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": []
|
||||
}
|
||||
}
|
||||
BIN
test/homing/20260616_135403/cam0_debug.jpg
Normal file
|
After Width: | Height: | Size: 188 KiB |
BIN
test/homing/20260616_135403/cam1.jpg
Normal file
|
After Width: | Height: | Size: 79 KiB |
2944
test/homing/20260616_135403/cam1_aruco_detection.json
Normal file
635
test/homing/20260616_135403/cam1_camera_pose.json
Normal 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": []
|
||||
}
|
||||
}
|
||||
BIN
test/homing/20260616_135403/cam1_debug.jpg
Normal file
|
After Width: | Height: | Size: 213 KiB |
BIN
test/homing/20260616_135403/cam2.jpg
Normal file
|
After Width: | Height: | Size: 276 KiB |
3289
test/homing/20260616_135403/cam2_aruco_detection.json
Normal file
649
test/homing/20260616_135403/cam2_camera_pose.json
Normal 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": []
|
||||
}
|
||||
}
|
||||
BIN
test/homing/20260616_135403/cam2_debug.jpg
Normal file
|
After Width: | Height: | Size: 450 KiB |
40
test/homing/20260616_135403/state_Arm1.json
Normal 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
|
||||
}
|
||||
}
|
||||
101
test/homing/20260616_135403/state_Arm2.json
Normal 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
|
||||
}
|
||||
}
|
||||
64
test/homing/20260616_135403/state_Ellbow.json
Normal 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
|
||||
}
|
||||
}
|
||||