All Projects → ErfanFathi → camera-calibration

ErfanFathi / camera-calibration

Licence: MIT license
This repository include implementation of calibrating intrinsic and extrinsic camera parameter for distance calculation

Programming Languages

C++
36643 projects - #6 most used programming language
CMake
9771 projects

Projects that are alternatives of or similar to camera-calibration

babelcalib
BabelCalib: A Universal Approach to Calibrating Central Cameras. In ICCV (2021)
Stars: ✭ 43 (+126.32%)
Mutual labels:  camera-calibration, camera-geometry
Extrinsic lidar camera calibration
This is a package for extrinsic calibration between a 3D LiDAR and a camera, described in paper: Improvements to Target-Based 3D LiDAR to Camera Calibration. This package is used for Cassie Blue's 3D LiDAR semantic mapping and automation.
Stars: ✭ 149 (+684.21%)
Mutual labels:  camera-calibration, calibration
Handeye calib camodocal
Easy to use and accurate hand eye calibration which has been working reliably for years (2016-present) with kinect, kinectv2, rgbd cameras, optical trackers, and several robots including the ur5 and kuka iiwa.
Stars: ✭ 364 (+1815.79%)
Mutual labels:  camera-calibration, calibration
calico
code for: Calibration of Asynchronous Camera Networks: CALICO
Stars: ✭ 52 (+173.68%)
Mutual labels:  camera-calibration, calibration
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"
Stars: ✭ 734 (+3763.16%)
Mutual labels:  camera-calibration, calibration
Robotlib.jl
Robotics library written in the Julia programming language
Stars: ✭ 32 (+68.42%)
Mutual labels:  calibration, rotation-matrix
CalibrationErrors.jl
Estimation of calibration errors.
Stars: ✭ 13 (-31.58%)
Mutual labels:  calibration
yac
YAC - Yet Another Calibrator
Stars: ✭ 19 (+0%)
Mutual labels:  calibration
sportsfield release
Code release for WACV 2020, "Optimizing Through Learned Errors for Accurate Sports Field Registration"
Stars: ✭ 49 (+157.89%)
Mutual labels:  camera-calibration
hexrdgui
Qt5 PySide2 based GUI for the HEXRD library.
Stars: ✭ 15 (-21.05%)
Mutual labels:  calibration
OpenCV-CameraCalibration-Example
OpenCVを用いたカメラキャリブレーションのサンプルです。2021/06/21時点でPython実装のある3種類(通常カメラ向け、魚眼レンズ向け(fisheyeモジュール)、全方位カメラ向け(omnidirモジュール))について用意しています。
Stars: ✭ 25 (+31.58%)
Mutual labels:  camera-calibration
AdvancedLaneLines
Lane identification system for camera based systems.
Stars: ✭ 61 (+221.05%)
Mutual labels:  camera-calibration
DistCorr-lib
Optical distortion calculation and correction; open source C, C++ library
Stars: ✭ 30 (+57.89%)
Mutual labels:  calibration
glm
OpenGL Mathematics (GLM)
Stars: ✭ 6,667 (+34989.47%)
Mutual labels:  quaternion
vincenty
Calculate the geographical distance between 2 points with extreme accuracy.
Stars: ✭ 53 (+178.95%)
Mutual labels:  distance-calculation
ecPoint-Calibrate
Interactive GUI (developed in Python) for calibration and conditional verification of numerical weather prediction model outputs.
Stars: ✭ 19 (+0%)
Mutual labels:  calibration
AndroidMarkerARDemo
a simple demo of android marker ar with opencv
Stars: ✭ 17 (-10.53%)
Mutual labels:  calibration
axxb calibration
A Comprehensive AX = XB Calibration Solvers in Matlab
Stars: ✭ 19 (+0%)
Mutual labels:  quaternion
erkir
Երկիր (Erkir) - a C++ library for geodesic and trigonometric calculations
Stars: ✭ 26 (+36.84%)
Mutual labels:  distance-calculation
uoais
Codes of paper "Unseen Object Amodal Instance Segmentation via Hierarchical Occlusion Modeling", ICRA 2022
Stars: ✭ 77 (+305.26%)
Mutual labels:  robot-vision

Camera Calibration

Implementation of calibrating intrinsic and extrinsic camera parameter with pso optimization and quaternion rotation for distance calculation .

Dependencies

sudo apt install libopencv-dev cmake

Environment Setup

First, set the camera in a fixed position then place the chessboard in front of it at a fixed distance, as shown below :

Compilation

cmake .
make all
./Calibration

Code Setup

In "main.cpp" file i write some comments which that helps you ...

1) Input Real Points :

generally you should first set the actual distance in "realPoint" array in main.cpp file just note that the array is as follows :

2) Set Optimization Parameter :

This part of process very important because pso algorithm highly parameter based so pay attention to the parameters.

How To Use ?

After the setup environment and code, compile and run code . if print "pattern not found" there is a problem in your chessboard check that if print "pattern found" that's ok . after calibration process you have 10 parameter . now you can use that and calculate distance or pixel . for this work there is two function :

F1) Field2Image

Field2Image function get distance "milimeter" and calculate pixel .

F2) Image2Field

vice versa :)

Detected Corners

Projected Corners After Calibration

Euler angles and quaternions

If you want read more about euler angles and quaternions i suggest you read the following paper :
A Tutorial on Euler Angles and Quaternions

License

This project is licensed under the MIT License - see the LICENSE file for details

Finale

Report any comment or bugs or question to:
[email protected]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].