Wild + multiple sparse
- When use this: sparse cameras, hard to calibrate for colmap;
- Idea: Use an extra phone to record the scene.
- Here you can find the example data.
Capture
background
ground
scan
Place the data as follows:
<calib_data>
├── background1f
│ ├── images
│ └── scan.mp4
└── ground1f
└── images
Calibration
1. Detect the chessboard
# detect the chessboard
python3 apps/calibration/detect_chessboard.py ${root}/ground1f --out ${root}/ground1f/output --pattern 9,6 --grid 0.1
# check the chessboard detection
python3 apps/annotation/annot_calib.py ${root}/ground1f --annot chessboard --mode chessboard
2. Calibrate by colmap
python3 apps/calibration/calib_static_dynamic_by_colmap.py ${root}/background1f ${root}/colmap --colmap ${colmap} --step 4
# check with colmap
${colmap} gui --database_path ${root}/colmap/database.db --image_path ${root}/colmap/images --import_path ${root}/colmap/sparse/0
3. Align to the chessboard
python3 apps/calibration/align_colmap_ground.py ${root}/colmap/sparse/0 ${root}/colmap/align --plane_by_chessboard ${root}/ground1f --prefix static/