feat(pose_3d): tag locator save, front-tag overlay, sidebar tabs, cloud params persist
- Sidebar a 3 tab verticali (POSE / CAMERAS / MISC) per ridurre lo scroll
- Tag locator: POST /api/pose_3d/tag_offset/{save,} salva crocetta nel
viewport con snapshot giunti, current.json + archive rotation
- Front-camera tag overlay (MISC):
- GET /api/pose_3d/front_tags scansiona ArUco sul D435i e per ogni tag
misura i 4 corner 3D via depth sensor (indipendente da solvePnP);
outlier rejection ±20% dalla mediana per ignorare corner che catturano
background sul bordo del marker
- Rendering quad cyan + label compatta (id, edge_mm, distanza camera)
agganciato al d435_link, segue la camera anche in modalita' hand-eye
- Trigger via pollState() quando il flag e' on, niente timer separato
- Cloud cross-camera: memorizza step/max_depth/sizes/scale_xy/flip/handeye
in pose_3d.cloud_params al click di Acquisisci, ripopola UI da config
al primo poll (state.cloud_params_populated guard)
- D435i front cloud: applica nuwa_to_cv_frame (il servizio ritorna native,
non OpenCV come si pensava)
- Cache-bust per pose_3d.js e pose_3d.css
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
ae8e609b7e
commit
fb0e9b9112
6 files changed
+816
-20
No files matched your search
+32
-15
@@ -82,6 +82,8 @@ tab_right_arm:
|
||||
- 0
|
||||
pose_3d:
|
||||
live_max_step_m: 0.15
|
||||
tag_offset:
|
||||
save_dir: /home/harry/robot/logging/wrist-tag-offset
|
||||
right_wrist_camera:
|
||||
enabled: true
|
||||
mesh_url: /static/assets/nuwa/nuwa-hp60c.stl
|
||||
@@ -107,25 +109,25 @@ pose_3d:
|
||||
d435:
|
||||
offset_m:
|
||||
- -0.01
|
||||
- 0
|
||||
- 0
|
||||
- 0.015
|
||||
- -0.005
|
||||
rpy_deg:
|
||||
- -90
|
||||
- 86
|
||||
- 90
|
||||
- 0
|
||||
transform_pelvis_4x4:
|
||||
- - -0.011344227963137242
|
||||
- -0.9974094742471121
|
||||
- -0.07103273311663486
|
||||
- 0.007340882385689307
|
||||
- - -0.5556320632728338
|
||||
- 0.06534842452974676
|
||||
- -0.8288561960163252
|
||||
- 0.3109738415126284
|
||||
- - 0.8313508998943191
|
||||
- 0.03006533042523672
|
||||
- -0.5549340115286931
|
||||
- 0.2869260834772309
|
||||
- - 0.03273746934835532
|
||||
- -0.9960477706629303
|
||||
- -0.0825657111522212
|
||||
- -0.00771413467718246
|
||||
- - -0.7734929889294071
|
||||
- 0.027067579810660346
|
||||
- -0.633226612043623
|
||||
- 0.37547513731967447
|
||||
- - 0.6329588092267278
|
||||
- 0.08459423550455474
|
||||
- -0.7695498431821574
|
||||
- 0.33337005199505626
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- 0.0
|
||||
@@ -142,6 +144,21 @@ pose_3d:
|
||||
- -0.047703617194205114
|
||||
- -0.005110044879619669
|
||||
- 0.9988341941293186
|
||||
cloud_params:
|
||||
step: 2
|
||||
max_depth_mm: 1000
|
||||
nuwa_size_mm: 5
|
||||
d435_size_mm: 5
|
||||
d435_scale_xy: 1
|
||||
flip_nuwa:
|
||||
- false
|
||||
- false
|
||||
- false
|
||||
flip_d435:
|
||||
- false
|
||||
- false
|
||||
- false
|
||||
d435_use_handeye: false
|
||||
grasp:
|
||||
approach_offset_m: 0.1
|
||||
pre_grasp_clearance_m: 0.05
|
||||
|
||||
Reference in new issue
Block a user