Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Camera Calibration Tools

A desktop application for simplifying camera calibration workflows, built with Qt.

demo

Features

  • Camera calibration methods:
    • Manual
    • Line-based
    • Chessboard
  • Interactive visualization of calibrated data
  • Multiple input sources: files, built-in cameras, RTSP streams
  • Export of calibration results
  • Cross-platform: Linux and Windows

Motivation

This tool was developed to calibrate a large number of dome cameras mounted high on ceilings, where using a standard chessboard pattern is impractical. The cameras capture industrial spaces where many straight lines are present (e.g., floor tiles, structural beams).

The approach is to manually annotate curved lines and then optimize the camera parameters to straighten them. This program simplifies the process of manual annotation and line-based calibration. Over time, additional calibration methods were added for flexibility.

Supported Calibration Methods

Line-Based Calibration

Calibration is performed by optimizing camera parameters to straighten manually annotated curved lines in the scene.

Typical use cases:

  • Industrial environments
  • Scenes with prominent linear structures
  • Situations where chessboard patterns cannot be used

Camera parameters are optimized using the Ceres Solver.

Warning

This method allows you to adjust parameters to remove distortion but cannot determine the true focal length. Due to focal shift, the resulting parameter values may differ from the expected ones.

demo

Chessboard Calibration

Classic calibration using a planar chessboard pattern, leveraging standard OpenCV algorithms.

This method simplifies data collection and camera calibration in standard environments.

demo

Build

Linux

Recommended build script:

cd camera_calibration_tools
./scripts/build.sh

Build artifacts will be located in the artifacts folder. Required dependencies are listed in the dockerfile.

Docker-based build and run are also supported:

cd camera_calibration_tools
docker compose up build

# Run the application via Docker
xhost +local:root
docker compose up run

Windows

Dependencies are listed in the dockerfile and can be installed via MSYS2. Build is recommended using MinGW and the same build script:

cd camera_calibration_tools
./scripts/build.sh

Dependencies

This project relies on the following libraries:

  • Qt – cross-platform C++ GUI framework
  • OpenCV – computer vision and image processing
  • Ceres Solver – nonlinear least squares optimization

About

A desktop application for simplifying camera calibration workflows

Topics

Resources

Stars

Watchers

Forks

Releases

Contributors

Languages