Download
BoofCV is available from its central repository at Github or through periodic releases. Below are links to the latest stable release hosted on SourceForge.
Latest Stable Release:
Pre-Built Applications:
If you encounter any problems getting BoofCV up and running, please let us know! A bug might have slipped through testing or if the instructions are not clear we would like to know.
Maven Central
The easiest way to use boofcv is to reference its jars on Maven Central. See below for Maven and Gradle code. BoofCV is broken up into many modules. To make it easier to use BoofCV all of its core functionality can be referenced using the 'all' module. Individual modules in "integration" still must be referenced individually.
Artifact List
- boofcv-core : All the core functionality of BoofCV
- boofcv-all : All the core and integration packages in BoofCV. YOU PROBABLY WANT CORE AND NOT THIS
- boofcv-android : Android support
- boofcv-openkinect : Open Kinect support (The Kinect RGB-D sensor)
- boofcv-WebcamCapture : Webcam Capture support
- boofcv-javacv : JavaCV (Reading OpenCV files)
- boofcv-ffmpeg : javacpp-presets Reading videos
- boofcv-swing : Visualization using Java Swing
- boofcv-jcodec : jcodec Pure Java (and buggy) library for reading videos.
Gradle Dependencies
here's an example of how to add all the dependencies needed to run Example code in Gradle.
['boofcv-core','boofcv-swing','boofcv-WebcamCapture','demonstrations'].each { String a -> compile group: 'org.boofcv', name: a, version: 0.33.1 }
Bleeding Edge
The absolutely latest code is available on Github. This code should be considered developmental and may or may not work. Be wary if the link below shows the build is failing, since it's likely to fail for you too!
To check it out do the following.
git clone -b SNAPSHOT --recursive https://github.com/lessthanoptimal/BoofCV.git boofcv
You need to do '--recursive' to ensure that you grab the data submodule too. If you forgot to do it you can also invoke the following command.
git submodule update --init --recursive
You will probably need to build the dependencies too. Check out the developer page for more information.
Then Gradle can be used to build the project as is usual. YouTube Video.
Past Releases
Version | Link | Description |
---|---|---|
v0.33 | Link | Concurrency, SFM, QR Fixes |
v0.32 | Link | Uncalibrated Stereo |
v0.31 | Link | Sparse Bundle Adjustment |
v0.30 | Link | Android and SFM |
v0.29 | Link | BOverride, Background GMM, GVersion |
v0.28 | Link | Fisheye calibration, Hex target, QR Code, polyline |
v0.27 | Link | Module name changes, new calib target, new distortion |
v0.26 | Link | Critical bug fixes, more examples, improved asymmetric grid |
v0.25 | Link | 360 and fisheye support, Deep Learning, circle asym grid, ... etc |
v0.24.1 | Link | Fixed dependency on a SNAPSHOT |
v0.24 | Link | Replaced Xuggler with JavaCV |
v0.23 | Link | Refactoring of image names |