extrinsic_calibration - Motion Based Multi-Sensor Extrinsic Calibration

  •        17

To run the script, you need to install cppad (and its python wrapper pycppad ) for automatic differentiation. Please check demo_and_test function in calibration.py file for example usage.




Related Projects

camodocal - CamOdoCal: Automatic Intrinsic and Extrinsic Calibration of a Rig with Multiple Generic Cameras and Odometry

  •    C++

By default, the unified projection model is used since this model approximates a wide range of cameras from normal cameras to catadioptric cameras. Note that in our equidistant fish-eye model, we use 8 parameters: k2, k3, k4, k5, mu, mv, u0, v0. k1 is set to 1. Typically for a set of 4 cameras with 500 frames each, the extrinsic self-calibration takes 2 hours. In contrast, the extrinsic infrastructure-based calibration runs in near real-time, and is strongly recommended if you are calibrating multiple rigs in the same area.

VINS-Mono - A Robust and Versatile Monocular Visual-Inertial State Estimator

  •    C++

VINS-Mono is a real-time SLAM framework for Monocular Visual-Inertial Systems. It uses an optimization-based sliding window formulation for providing high-accuracy visual-inertial odometry. It features efficient IMU pre-integration with bias correction, automatic estimator initialization, online extrinsic calibration, failure detection and recovery, loop detection, and global pose graph optimization, map merge, pose graph reuse, online temporal calibration, rolling shutter support. VINS-Mono is primarily designed for state estimation and feedback control of autonomous drones, but it is also capable of providing accurate localization for AR applications. This code runs on Linux, and is fully integrated with ROS. For iOS mobile implementation, please go to VINS-Mobile.

easy_handeye - Automated, hardware-independent Hand-Eye Calibration

  •    Python

The intended result is to make it easy and straightforward to perform the calibration, and to keep it up-to-date throughout the system. Two launch files are provided to be run, respectively to perform the calibration and check its result. A further launch file can be integrated into your own launch files, to make use of the result of the calibration in a transparent way: if the calibration is performed again, the updated result will be used without further action required. You can try out this software in a simulator, through the easy_handeye_demo package. This package also serves as an example for integrating easy_handeye into your own launch scripts.

ProCamToolkit - Research and development of a new toolkit for projector-camera calibration at YCAM.

  •    C++

ProCamToolkit is a collection software and code for openFrameworks aimed at making high level projector-camera calibration more accessible. It provides examples manual projector calibration using a model of a scene, projector-camera calibration using a reference pattern and gray code scanning, and multi-projector calibration using gray code scanning. A program called "mapamok" has emerged from ProCamToolkit as the most user-friendly app of the collection, and it's useful for experimenting with extremely fast projection mapping in situations where the scene can be modeled quickly (e.g., a collection of cuboids) or where the scene is modeled in advance (e.g., a 3D print, or a manufactured object like a car). Most of ProCamToolkit is written in an extremely modular way, making it possible to borrow snippets of code, including some chunks that are written with the goal of being contributed to the openFrameworks core. ProCamToolkit also includes work in progress towards new installations being developed during Guest Research Projector v.1 at YCAM Interlab. This includes experiments with augmented shadows using multiple projectors, and projection mapping in the YCAM library.

lidar_camera_calibration - ROS package to find a rigid-body transformation between a LiDAR and a camera for "LiDAR-Camera Calibration using 3D-3D Point correspondences"

  •    C++

The package is used to calibrate a LiDAR (config to support Hesai and Velodyne hardware) with a camera (works for both monocular and stereo). The package finds a rotation and translation that transform all the points in the LiDAR frame to the (monocular) camera frame. Please see Usage for a video tutorial. The lidar_camera_calibration/pointcloud_fusion provides a script to fuse point clouds obtained from two stereo cameras. Both of which were extrinsically calibrated using a LiDAR and lidar_camera_calibration. We show the accuracy of the proposed pipeline by fusing point clouds, with near perfection, from multiple cameras kept in various positions. See Fusion using lidar_camera_calibration for results of the point cloud fusion (videos).

kalibr - The Kalibr calibration toolbox

  •    C++

Please find more information on the wiki pages of this repository. For questions or comments, please use the user forum.

Color Clutch

  •    C++

Color Clutch is a solution to a color calibration problem found across various versions of Windows. Some full-screen applications (e.g. games) are unable to hold monitor color calibration, leading to incorrect color. Color Clutch prevents this.

Framework for Playstation Move on PC (Windows)


This framework gives you the possibility to use the Playstation Move on PC (Windows only). With the Calibration Tool you can calibrate your device, so the framework can track it very accurate. You can test it as well with Calibration Tool. With the Move Framework, you ca...


  •    C

xcalib is an open-source monitor calibration loader for applying the calibration stored in ICC color profiles to systems running Linux or MS-Windows.

PCN - Progressive Calibration Networks (PCN) is an accurate rotation-invariant face detector running at real-time speed on CPU, published in CVPR 2018

  •    C++

Progressive Calibration Networks (PCN) is an accurate rotation-invariant face detector running at real-time speed on CPU. This is a binary library for PCN (the networks in FastPCN is smaller than PCN). In this implementation, we don't use network quantization or compression, and the program runs on CPU with a single thread. PCN is designed aiming for low time-cost. We compare PCN's speed with other rotation-invariant face detectors' on standard VGA images(640x480) with 40x40 minimum face size. The detectors run on a desktop computer with 3.4GHz CPU, GTX Titan X. The speed results together with the recall rate at 100 false positives on multi-oriented FDDB are shown in the following table. Detailed experiment settings can be found in our paper.

viso2 - A ROS wrapper for libviso2, a library for visual odometry

  •    C++

ROS Stack containing a wrapper for libviso2, a visual odometry library. http://www.ros.org/wiki/viso2 for the list of contained packages. NOTE: We provide the camera calibration file for the fisheye camera ('data/calib_results.txt'). You have to set the correct path to the rosbag file in both launch files and the calibration text file in the fisheye.launch. We also provide a rviz configuration file to easy visualization of the results.

ILCC - Intensity-based_Lidar_Camera_Calibration

  •    Python

Make a folder for example named as DATA and make the image and point cloud folders DATA/img and DATA/pcd respectively. Put panoramic images into DATA/img and point cloud files into DATA/pcd. The files should be named like 00XX.png or 00XX.csv.

kalibr_allan - IMU Allan standard deviation charts for use with Kalibr and inertial kalman filters.

  •    MATLAB

This has some nice utility scripts and packages that allow for calculation of the noise values for use in both kalibr and IMU filters. The dataset of the manufacture can find the "white noise" values for the system, but the bias noises need to be found through experimental tests. The gyroscope_random_walk and accelerometer_random_walk values can normally be found on the IMU datasheet as either angular random walk or velocity random walk, respectively.


  •    Java

The free-vision project aims at creating a library for computer vision related functions, including camera capture interface, stereo, image processing, camera calibration and so on.


  •    VBNET

Color/Colour Calibration Tool for use with the ColorVision Spyder 2 hardware sensor.

BLIX - Blender Extensions

  •    C

BLIX is a cross-platform set of Python extension modules and Python scripts for Blender (www.blender.org). These scripts add camera calibration, 3D reconstruction and rigid body orientation to Blender.



Experimental Silverlight project to help understand system 8's behavior (mehod of calibration bottom-quark tagging).



vermillioBridge is a data acquisition system intended to provide students and home developers a cheap solution for sensor calibration and analysis. The hardware is based on the Arduino microprocessor board as it has a large following and cheap cost.

OpenCV - Open Source Computer Vision

  •    C++

OpenCV (Open Source Computer Vision) is a library of programming functions for real time computer vision. The library has more than 500 optimized algorithms. It is used to interactive art, to mine inspection, stitching maps on the web on through advanced robotics.

Calibration tools for linux/Pantone Huey

  •    C++

Tools to calibrate monitor on linux with Pantone Huey.

We have large collection of open source products. Follow the tags from Tag Cloud >>

Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.