Camera Intrinsic Calibration
Project description
camera-intrinsic-calibration
A pure rust camera intrinsic calibration tool.
Installation
# cargo install cli
cargo install camera-intrinsic-calibration
# Or pip install cli
pip install camera-intrinsic-calibration
# Or pip install cli with rerun
pip install 'camera-intrinsic-calibration[rerun]'
Or download from the latest release.
CLI Usage
# camera-calibration-rs
ccrs -h
# run intrinsic calibration on TUM vi dataset
# Download and untar
wget https://vision.in.tum.de/tumvi/exported/euroc/1024_16/dataset-calib-cam1_1024_16.tar
tar xf dataset-calib-cam1_1024_16.tar
# [Optional] export RUST_LOG=trace
ccrs dataset-calib-cam1_1024_16 --model eucm
Visualize details after calibration
# use cargo to install rerun
cargo install rerun-cli --version 0.27.2
# or use pip to install rerun
pip install rerun-sdk==0.27.2
# visualize result
rerun results/20YYMMDD_HH_MM_SS/logging.rrd
Supported formats
Dataset format
- Euroc (default)
dataset_root └── mav0 ├── cam0 │ └── data │ ├── {time_stamp}.png │ ├── {time_stamp}.png │ └── {time_stamp}.png └── cam1 └── data ├── {time_stamp}.png ├── {time_stamp}.png └── {time_stamp}.png - General
--dataset-format general
Images can be eitherdataset_root ├── cam0 │ ├── any_file_name.png │ ├── any_file_name.png │ └── any_file_name.png └── cam1 ├── any_file_name.png ├── any_file_name.png └── any_file_name.png.pngor.jpg, but.pngis preferred if possible. PNG is lossless compression, while JPG is not.
Camera models
- Extended Unified (EUCM)
- Extended Unified with Tangential (EUCMT)
- Unified Camera Model (UCM)
- Kannala Brandt (KB4) aka OpenCV Fisheye
- OpenCV (OPENCV5) aka
plumb_bobin ROS - F-theta (FTHETA) by NVidia
Examples
cargo run -r --example convert_model
Calibrate your own camera
Please follow the tutorial.
Acknowledgements
Links:
- https://cvg.cit.tum.de/data/datasets/visual-inertial-dataset
- https://github.com/itt-ustutt/num-dual
- https://github.com/sarah-quinones/faer-rs
Papers:
- Kukelova, Zuzana, et al. "Radial distortion homography." Proceedings of the IEEE conference on computer vision and pattern recognition. 2015.
TODO
- Multi-camera extrinsic
- More calibration info
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file camera_intrinsic_calibration-0.11.2-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: camera_intrinsic_calibration-0.11.2-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 5.5 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
162690ac74da3dc6a0ccfbb5b87566cec8962c0b2832d5ff9f0b7ecdf29b9f07
|
|
| MD5 |
42a3bdf8d49b5ec60efc5de6fc2bf6aa
|
|
| BLAKE2b-256 |
b53ea6b91c960730decd35dbe7a5eee83f785d494eb9ffe5ef7245ec44e4f8ac
|