Welcome to BoofCV! BoofCV is an open source Java computer vision library intended for developers. The following manual provides an introduction to development with BoofCV. It is assumed that the reader is familiar with development in the Java programming language and the basics of computer vision. This manual primarily takes the form of example code and tutorials.
Before you can do anything with BoofCV you will need to download it. The download page provides instructions on how to download pre-compiled jars, source code, add a Maven dependency, and checkout the latest source code. After you obtain the jar files browse through the examples below to get ideas on how you can use BoofCV.
Gradle is the preferred way to build BoofCV. Complete instructions are contained in the boofcv/README.md. To compile BoofCV and output all of its jars simply do the following:
cd boofcv ./gradlew createLibraryDirectory
It will download dependencies, compile, and save the jars to to boofcv/libraries directory. Dependencies for 'integration' are omitted since they can be quite large. If you don't have Gradle installed you can invoke the boofcv/gradlew or boofcv/gradle.bat scripts instead, depending if you're on Linux/MacOS or Windows.
This means the environmental variable 'JAVA_HOME' needs to point to the JDK.
Support is provided in the form of the documentation on this website and through its message board. See the left navigation board for a link to the message board. Please read through the documentation and FAQ (see below) first before posting a question there. You are much more likely to get a good response if you demonstrate due diligence.
If you find any mistakes in the documentation or library itself please submit a bug report or post a message about it! If you don't let us know about it we can't fix it.
Did you find BoofCV useful and use it on your project/work/research/thesis? Well let others know about it through your blog, twitter, or status message! Academics, please cite BoofCV in your papers and checkout the papers page to see if the specific algorithm you are using is mentioned there.
Examples and Tutorial
A few tutorials and examples are provided to provide the basic concepts of development with BoofCV. Data files used in these examples are stored in a separate GIT repository from the main code. See boofcv/examples/readme.txt or https://github.com/lessthanoptimal/BoofCV-Data
Want to quickly explore all the examples and run all the demonstrations? Checkout the source code and run the following applications:
cd boofcv ./gradlew examples java -jar examples/examples.jar ./gradlew demonstrations java -jar demonstrations/demonstrations.jar
YouTube Video showing the above applications being built and run.
- Quick Start
- Images in BoofCV
- Image Segmentation
- QR Codes
- Videos and Webcams
- Android Support
- Camera Calibration
- 3D Computer Vision / Structure from Motion
- Kinect RGB-D Sensor
List of simple examples which demonstrate a single capability of BoofCV.