Commit Graph

22 Commits

Author SHA1 Message Date
crosstyan 9d9e95de81 feat: implement refine_ground_plane.py CLI 2026-02-09 07:50:16 +00:00
crosstyan 0f7d7a9a63 feat: add Plotly diagnostic visualization for ground plane refinement 2026-02-09 07:41:44 +00:00
crosstyan bfb3421692 fix: implement per-camera ground plane correction 2026-02-09 07:36:27 +00:00
crosstyan 94d9a27724 feat: implement ground plane orchestration 2026-02-09 07:27:36 +00:00
crosstyan 83a74d293b feat: add HDF5 depth map persistence module
- Implement aruco/depth_save.py with save_depth_data/load_depth_data
- Add tests/test_depth_save.py covering roundtrip and edge cases
- Ensure type safety with basedpyright
- Support compression and metadata handling
2026-02-09 07:18:00 +00:00
crosstyan 43a441f2d4 fix: complete ground_plane.py implementation and tests 2026-02-09 07:16:14 +00:00
crosstyan 1d3266ec60 feat: implement ground_plane.py with floor detection and alignment primitives 2026-02-09 07:05:35 +00:00
crosstyan 15989195f1 feat: implement geometry-first auto-align heuristic 2026-02-07 16:54:21 +00:00
crosstyan 0d3e9e67ad feat: ignore boulder.json and update extrinsics visualizer 2026-02-07 15:35:48 +00:00
crosstyan 8f6aee7f22 fix: resolve basedpyright errors in aruco and tests 2026-02-07 09:00:07 +00:00
crosstyan 4fc8de4bdc feat(calibrate): integrate multi-frame depth pooling with --depth-pool-size flag 2026-02-07 08:10:01 +00:00
crosstyan dad1f2a69f feat(calibration): robust depth refinement pipeline with diagnostics and benchmarking 2026-02-07 05:51:07 +00:00
crosstyan ead3796cdb feat(refine): replace L-BFGS-B MSE with least_squares soft-L1 robust optimizer 2026-02-07 05:23:28 +00:00
crosstyan cdc4f9eec4 chore(metadata): update beads and sisyphus planning artifacts 2026-02-07 04:16:41 +00:00
crosstyan 446c02d42a feat(calibration): add data-driven ground alignment with debug and fast iteration flags 2026-02-07 03:20:16 +00:00
crosstyan 6d3c5cc5c1 feat(cli): add depth verify/refine outputs and tests
- Retrieve depth + confidence measures from SVOReader when depth enabled
- Compute depth residual metrics and attach to output JSON
- Optionally write per-corner residual CSV via --report-csv
- Post-process refinement: optimize final pose and report pre/post metrics
- Add unit tests for depth verification and refinement modules
- Add basedpyright dev dependency for diagnostics
2026-02-05 04:44:34 +00:00
crosstyan 73782a7c2d feat(aruco): add depth refinement module with bounded optimization
- Add extrinsics_to_params() and params_to_extrinsics() conversions
- Add depth_residual_objective() with regularization
- Add refine_extrinsics_with_depth() using L-BFGS-B
- Add scipy dependency for optimization
- Enforce bounds on rotation (±5°) and translation (±5cm)
2026-02-05 03:47:39 +00:00
crosstyan 78ebe9a32e feat(aruco): add depth verification module with residual computation
- Add DepthVerificationResult dataclass for metrics
- Add project_point_to_pixel() for 3D to 2D projection
- Add compute_depth_residual() with median window sampling
- Add verify_extrinsics_with_depth() for batch verification
- Support confidence-based filtering
2026-02-05 03:45:20 +00:00
crosstyan bd9ea1c795 feat(aruco): extend SVOReader with depth map support
- Add depth_mode parameter to SVOReader.__init__()
- Add enable_depth property
- Add depth_map field to FrameData dataclass
- Add _retrieve_depth(), get_depth_at(), get_depth_window_median() methods
- Update grab_all() and grab_synced() to retrieve depth when enabled
2026-02-05 03:43:21 +00:00
crosstyan aa08bb9c9f fix(aruco): add dist parameter and handle single-point case in compute_reprojection_error
- Add optional dist parameter to match test expectations
- Handle single-point case where squeeze() removes necessary dimension
- Fixes failing tests in test_pose_math.py
2026-02-05 03:35:09 +00:00
crosstyan 1025bcbd8a feat(aruco): add pose math utilities for transform operations 2026-02-05 03:19:13 +00:00
crosstyan 43e736faac Add ArUco detection and pose estimation modules
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-02-04 11:44:37 +00:00