Difference between revisions of "Manual"

From BoofCV
Jump to navigationJump to search
Line 79: Line 79:
*# [[Example_Morphological_Thinning|Morphological Thinning]]
*# [[Example_Morphological_Thinning|Morphological Thinning]]
*# [[Example Planar Image|Using Planar Images]]
*# [[Example Planar Image|Using Planar Images]]
*# [[Example_Key_Point_Based_Deformation|Point Based Deformation]]
*# [[Example Image Pyramid| Image Pyramid]]
*# [[Example Image Pyramid| Image Pyramid]]
*# [[Example RGB to Gray| Rgb To Gray]]
*# [[Example RGB to Gray| Rgb To Gray]]

Revision as of 23:58, 19 January 2018

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.

Getting Started

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.

Build

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
gradle 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.

Trouble Shooting:

This means the environmental variable 'JAVA_HOME' needs to point to the JDK.

Support

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.

http://boofcv.org/index.php?title=FAQ

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.

Propaganda

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.

BoofCV Papers and Tech Report

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
gradle examples
java -jar examples/examples.jar
gradle demonstrations
java -jar demonstrations/demonstrations.jar

YouTube Video showing the above applications being built and run.

Tutorials

  1. Quick Start
  2. Images in BoofCV
  3. Image Segmentation
  4. Fiducials
  5. Videos and Webcams
  6. Android Support
  7. Camera Calibration
  8. 3D Computer Vision / Structure from Motion
  9. Kinect RGB-D Sensor
  10. Processing

Example Code

List of simple examples which demonstrate a single capability of BoofCV.