Camera Calibration with Rings Pattern and OpenCV

A method for camera calibration using rings pattern an OpenCV, based on:

  • [1] Zhengyou Zhang,“A Flexible New Technique for Camera Calibration”,2000.
  • [2] Ankur Datta, “Accurate Camera Calibration using Iterative Refinement of Control Points”, 2009.
  • [3] Prakash, Camera Calibration using Adaptive Segmentation and Ellipse Fitting for Localizing Control Points”, 2012.
  • [4] Open Source Computer Vision,“Camera calibration With OpenCV“.
  • [5] Burger, “Zhang’s Camera Calibration Algorithm:In-Depth Tutorial and Implementation“.

Web Page

[[https://davidgcr.github.io/CalibradorCamara/]]

Video Demo

<iframe width="800" height="500" src="https://www.youtube.com/embed/f9BiisoXgWY" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

Students:

  • Diego Javier Quispe
  • David Choqueluque Roman

Getting Started

Requirements:

  • OS: Ubuntu
  • Opencv 3.2.0 +
  • Compiler gcc, g++

To run the code:

1. Pipeline

Alt text

2. General View

Alt text

3. Results

3.1 Pre-processing, detection and tracking

Alt text

3.2 Distortion correction

Alt text

3.3 Time and Accuracy test

Our method improve the time and accuracy in pattern detection. Alt text

3.4 Compare with other OpenCV calibrations

Alt text

3.5 Control points refinements

Alt text

3.6 Refinement Comparison

Alt text Alt text

Zhang's Algorithm (Implementation)

Alt text Alt text