- simulator.py: flux JSONL réaliste (Ping360 angle/dist, IMU, heading, depth, altitude) + vérité terrain - slam.py: dead-reckoning + scan-to-map ICP 2D (cKDTree) + fermeture de boucle - process.py: ingestion streaming ligne-par-ligne → trajectory.csv + map_2d.csv + cloud.ply - stream_replay.py: rejoue le flux (vision streaming remote) - SCHEMA.md: contrat format données ROV réel↔sim - RMS dead-reckoning 0.386m → scan-matching 0.188m (2x)
32 lines
1.1 KiB
CSV
32 lines
1.1 KiB
CSV
t,x_dr,y_dr,x_corr,y_corr
|
|
4.0000,0.0052,1.2770,0.0052,1.2770
|
|
8.0000,0.0099,2.5682,0.0186,2.5028
|
|
12.0000,0.0150,3.7379,0.0032,3.5944
|
|
16.0000,-0.0363,3.7869,-0.0636,3.5496
|
|
20.0000,-1.2863,3.7897,-1.2616,3.5461
|
|
24.0000,-2.5763,3.7952,-2.4599,3.5471
|
|
28.0000,-2.7656,3.8377,-2.6040,3.5255
|
|
32.0000,-2.7679,4.8392,-2.5176,4.4853
|
|
36.0000,-2.7505,6.1210,-2.5054,5.5785
|
|
40.0000,-2.7465,7.0774,-2.4440,6.4784
|
|
44.0000,-2.8020,7.1050,-2.3972,6.2123
|
|
48.0000,-2.8469,7.0197,-2.4795,6.0262
|
|
52.0000,-2.8601,5.7395,-2.5417,4.6874
|
|
56.0000,-2.8680,4.4624,-2.5370,3.4324
|
|
60.0000,-2.8839,3.1747,-2.3394,2.7384
|
|
64.0000,-2.8918,1.8854,-2.4141,1.5799
|
|
68.0000,-2.8906,1.1199,-2.4494,0.8736
|
|
72.0000,-2.4417,1.0912,-2.0733,1.0443
|
|
76.0000,-1.1468,1.0653,-0.8350,1.0251
|
|
80.0000,0.1292,1.0489,0.3113,0.9984
|
|
84.0000,1.4097,1.0307,1.5811,0.9940
|
|
88.0000,1.4998,1.0806,1.6091,1.0336
|
|
92.0000,1.5174,2.1988,1.5662,2.1307
|
|
96.0000,1.5338,3.4865,1.6061,3.3106
|
|
100.0000,1.5112,3.8156,1.5762,3.6191
|
|
104.0000,0.6588,3.8443,0.8076,3.6364
|
|
108.0000,-0.1266,3.8464,0.0730,3.6349
|
|
112.0000,-0.1646,3.4383,0.1422,3.2418
|
|
116.0000,-0.1861,2.1536,0.1467,1.9940
|
|
120.0000,-0.2090,0.8700,0.1515,0.7458
|