lessthanoptimal/BoofCV

Fast computer vision library for SFM, calibration, fiducials, tracking, image processing, and more.

What it solves

BoofCV provides a comprehensive set of tools for real-time computer vision tasks, allowing developers to implement image processing and spatial analysis without needing to write low-level vision algorithms from scratch.

How it works

It is a real-time computer vision library written entirely in Java. It offers a modular architecture consisting of a core library (boofcv-core) and several integration modules for Android, video reading (FFMPEG, JCodec), and visualization (Java Swing).

Who it’s for

Java and Kotlin developers who need to integrate computer vision capabilities—such as camera calibration, feature tracking, and object recognition—into their applications.

Highlights

  • Broad Functionality: Includes low-level image processing, camera calibration, feature detection/tracking, structure-from-motion, classification, and recognition.
  • Java-Native: Written entirely in Java, making it easy to integrate into JVM-based environments.
  • Modular Design: Offers specific modules for Android support and various video I/O wrappers (JavaCV, FFMPEG).
  • Extensive Examples: Provides a large set of easy-to-read example code and real-time demonstrations to help users get started quickly.

Related

  • Project
  • Project
  • Project
  • Project
  • Project