Difference between revisions of "Download"
m |
m |
||
(39 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
'''Latest Stable Release:''' | '''Latest Stable Release:''' | ||
* [https://sourceforge.net/projects/boofcv/files/ | * [https://sourceforge.net/projects/boofcv/files/v1.0.0/ Jars and Source Code] | ||
* [https://github.com/lessthanoptimal/BoofCV/blob/v1.0.0/change.txt Change Log] | |||
* [https://github.com/lessthanoptimal/BoofCV/blob/ | |||
'''Pre-Built Applications:''' | |||
* [[Applications#Examples_and_Demonstrations| Examples and Demonstrations ]] | |||
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. | 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. | ||
= Java Version = | |||
To run BoofCV requires Java 11 and above. Building BoofCV requires Java 17, but if you use the build in Gradle script that is handled for you. | |||
Where to download the Java Virtual Machine | |||
* https://www.azul.com/downloads/zulu/ | |||
* https://adoptopenjdk.net/ | |||
NOTE: Version 0.39 and before maintained compatibility with Java 8. | |||
= Maven Central = | = 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. | The easiest way to use boofcv is to reference its jars on [https://search.maven.org/search?q=g:org.boofcv 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 | Artifact List | ||
* ''boofcv-core'' : All the core functionality of BoofCV | * ''boofcv-core'' : All the core functionality of BoofCV. | ||
* ''boofcv-all'' : All the core and integration packages in BoofCV. | * ''boofcv-all'' : All the core and integration packages in BoofCV. This can be very large. You probably want core! | ||
* ''boofcv-android'' : [http://developer.android.com/index.html Android] support | * ''boofcv-android'' : [http://developer.android.com/index.html Android] support | ||
* ''boofcv-WebcamCapture'' : [http://webcam-capture.sarxos.pl/ Webcam Capture support] | * ''boofcv-WebcamCapture'' : [http://webcam-capture.sarxos.pl/ Webcam Capture support] | ||
* ''boofcv-javacv'' : [https://github.com/bytedeco/javacv JavaCV] (Reading OpenCV files) | * ''boofcv-javacv'' : [https://github.com/bytedeco/javacv JavaCV] (Reading OpenCV files) | ||
Line 22: | Line 33: | ||
* ''boofcv-jcodec'' : [http://jcodec.org/ jcodec] Pure Java (and buggy) library for reading videos. | * ''boofcv-jcodec'' : [http://jcodec.org/ jcodec] Pure Java (and buggy) library for reading videos. | ||
== | == Gradle Dependencies == | ||
Here are some examples for how to add BoofCV to your Gradle project. You will need to replace $VERSION with the latest version of BoofCV, e.g. 1.0.0. If you just want image processing, with very few external dependencies, just include the following in your Gradle script: | |||
<pre> | <pre> | ||
api("org.boofcv:boofcv-core:$VERSION") | |||
</pre> | </pre> | ||
It is possible to include only the modules inside of core that you need. While not difficult, you will need to learn more about how BoofCV is structured. | |||
Since this does not include GUI or Webcam code most of the examples will not run! Here's how you can add them: | |||
<pre> | <pre> | ||
['boofcv-core','boofcv-swing','boofcv-WebcamCapture','demonstrations'].each | |||
{ String a -> compile group: 'org.boofcv', name: a, version: VERSION } | |||
</pre> | </pre> | ||
Deep Learning does add some external dependencies that most people don't need. In the future that might become an optional dependency. For now look at [[Optimizing BoofCV]] for more complex ways to reduce the jar size. | |||
= Bleeding Edge = | |||
The absolutely latest code is available on Github. This code should be considered developmental and may or may not work. Please follow build instructions included in the [https://github.com/lessthanoptimal/BoofCV#building-from-source README.MD] as those will be up to date. There is also a (slightly) out of date [https://youtu.be/qMTtdiujAtQ?t=67 YouTube Video]. | |||
= Past Releases = | = Past Releases = | ||
Line 56: | Line 57: | ||
{| border="1" width=600px cellpadding="4" | {| border="1" width=600px cellpadding="4" | ||
! Version !! Link !! Description | ! Version !! Link !! Description | ||
|- | |||
| v1.0.0 || [https://sourceforge.net/projects/boofcv/files/v1.0.0 Link] || New version number system. Camera state in bundle adjustment | |||
|- | |||
| v0.44 || [https://sourceforge.net/projects/boofcv/files/v0.44 Link] || Android Fragments, | |||
|- | |||
| v0.43.1 || [https://sourceforge.net/projects/boofcv/files/v0.43 Link] || Mesh viewer/rendering, STL files, bug fixes | |||
|- | |||
| v0.42 || [https://sourceforge.net/projects/boofcv/files/v0.42 Link] || Bug fixes, new filters, OBJ support | |||
|- | |||
| v0.41 || [https://sourceforge.net/projects/boofcv/files/v0.41 Link] || Aztec Code, Android cameras, multi camera calibration, mesh | |||
|- | |||
| v0.40.1 || [https://sourceforge.net/projects/boofcv/files/v0.40 Link] || Micro QR Code and strict null enforcement | |||
|- | |||
| v0.39.1 || [https://sourceforge.net/projects/boofcv/files/v0.39.1 Link] || Markers (ECoCheck, AruCo), Calibration Apps, Simulation | |||
|- | |||
| v0.38 || [https://sourceforge.net/projects/boofcv/files/v0.38 Link] || Better MVS and Scene Recognition | |||
|- | |||
| v0.37 || [https://sourceforge.net/projects/boofcv/files/v0.37 Link] || Mutli-View Stereo | |||
|- | |||
| v0.36 || [https://sourceforge.net/projects/boofcv/files/v0.36 Link] || Random dot markers, SBA in Visual odometry, visualization | |||
|- | |||
| v0.35 || [https://sourceforge.net/projects/boofcv/files/v0.35 Link] || Even better Chessboard, stereo, various | |||
|- | |||
| v0.34 || [https://sourceforge.net/projects/boofcv/files/v0.34 Link] || More Concurrency, Chessboard, Lines | |||
|- | |||
| v0.33 || [https://sourceforge.net/projects/boofcv/files/v0.33.1 Link] || Concurrency, SFM, QR Fixes | |||
|- | |||
| v0.32 || [https://sourceforge.net/projects/boofcv/files/v0.32 Link] || Uncalibrated Stereo | |||
|- | |||
| v0.31 || [https://sourceforge.net/projects/boofcv/files/v0.31 Link] || Sparse Bundle Adjustment | |||
|- | |- | ||
| v0.30 || [https://sourceforge.net/projects/boofcv/files/v0.30 Link] || Android and SFM | | v0.30 || [https://sourceforge.net/projects/boofcv/files/v0.30 Link] || Android and SFM |
Latest revision as of 07:37, 21 August 2023
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.
Java Version
To run BoofCV requires Java 11 and above. Building BoofCV requires Java 17, but if you use the build in Gradle script that is handled for you.
Where to download the Java Virtual Machine
NOTE: Version 0.39 and before maintained compatibility with Java 8.
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. This can be very large. You probably want core!
- boofcv-android : Android support
- 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 are some examples for how to add BoofCV to your Gradle project. You will need to replace $VERSION with the latest version of BoofCV, e.g. 1.0.0. If you just want image processing, with very few external dependencies, just include the following in your Gradle script:
api("org.boofcv:boofcv-core:$VERSION")
It is possible to include only the modules inside of core that you need. While not difficult, you will need to learn more about how BoofCV is structured.
Since this does not include GUI or Webcam code most of the examples will not run! Here's how you can add them:
['boofcv-core','boofcv-swing','boofcv-WebcamCapture','demonstrations'].each { String a -> compile group: 'org.boofcv', name: a, version: VERSION }
Deep Learning does add some external dependencies that most people don't need. In the future that might become an optional dependency. For now look at Optimizing BoofCV for more complex ways to reduce the jar size.
Bleeding Edge
The absolutely latest code is available on Github. This code should be considered developmental and may or may not work. Please follow build instructions included in the README.MD as those will be up to date. There is also a (slightly) out of date YouTube Video.
Past Releases
Version | Link | Description |
---|---|---|
v1.0.0 | Link | New version number system. Camera state in bundle adjustment |
v0.44 | Link | Android Fragments, |
v0.43.1 | Link | Mesh viewer/rendering, STL files, bug fixes |
v0.42 | Link | Bug fixes, new filters, OBJ support |
v0.41 | Link | Aztec Code, Android cameras, multi camera calibration, mesh |
v0.40.1 | Link | Micro QR Code and strict null enforcement |
v0.39.1 | Link | Markers (ECoCheck, AruCo), Calibration Apps, Simulation |
v0.38 | Link | Better MVS and Scene Recognition |
v0.37 | Link | Mutli-View Stereo |
v0.36 | Link | Random dot markers, SBA in Visual odometry, visualization |
v0.35 | Link | Even better Chessboard, stereo, various |
v0.34 | Link | More Concurrency, Chessboard, Lines |
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 |