Camera intrinsics checker: cameracalibrate --check (checkerboard reprojection)
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- python
- Domain
- computer-vision, robotics
Research direction
Start in dimos/utils/cli/cameracalibrate/cameracalibrate.py and inspect the existing dimos cameracalibrate entry point. Trace how calibration data is read for live topics and recorded folders, then define the --check flow around deployed-versus-fresh calibration. Done means both input modes produce an OK/DEGRADED verdict, reprojection evidence, intrinsic deltas, and a recalibration recommendation.
Written by the indexing model from the issue text.
Description
Problem
No way to check whether a camera's intrinsics are still good.
Why
The AprilTags on the Go2 camera gave bad poses (sf_office marker poses 20-48 deg off, with low per-detection reprojection). The suspect is the intrinsics: the Go2 uses one static front_camera_720.yaml for every unit, not per-unit. Redoing the calibration should improve marker and relocalization accuracy by some amount X. We need to measure X to know if per-unit calibration is worth it.
Solution
A --check mode on dimos cameracalibrate: checkerboard reprojection under the deployed CameraInfo, plus drift vs a fresh calibration on the same frames. A full grid has no mirror ambiguity, so reprojection RMS is a valid signal (unlike a single AprilTag). Runs on a live topic and a recorded folder. Output: OK/DEGRADED verdict + evidence (median/p90 reprojection RMS, fresh-vs-deployed intrinsic deltas) + a recalibrate recommendation.
Find X (validation)
Capture a checkerboard on the Go2, calibrate, then re-survey the markers and re-run the held-out relocalization, and measure the delta: marker orientation error (gated tag 2 was 88->22 deg, tag 6 stuck at 48), fiducial candidate fitness vs ransac (currently ~0.05-0.15 short), and whether the prior starts winning. X = what per-unit calibration buys.
Extends DIM-1308. Lives in dimos/utils/cli/cameracalibrate/cameracalibrate.py.
Synced from DIM-1309 by aaryan
- Dominant language
- Python
- Stars
- 4.5k
- Forks
- 808
- Avg merge
- 3d 5h
- Merged PRs (30d)
- 233
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from dimensionalOS/dimos
-
bug mac
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
dimensionalOS/dimos#4134 ·
-
bug rust
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
dimensionalOS/dimos#4055 ·
-
bug install
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
dimensionalOS/dimos#3971 ·
-
bug mac
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
dimensionalOS/dimos#3918 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
dimensionalOS/dimos#3898 · 1 comment ·
All issues in dimensionalOS/dimos
Similar issues
-
area/auth bug comp/agent P3 platform/discord type/security
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
NousResearch/hermes-agent#117848 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
bancolombia/sentinel#23 ·
-
test md OpenCI
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
langchain-ai/deepagents#6450 ·
-
bug client
Difficulty 2/5 1-3 hours Newbie friendliness 88/100