Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
org.boofcv:boofcv-javafx
Advanced tools
BoofCV is an open source Java library for real-time computer vision and robotics applications.
BoofCV is an open source real-time computer vision library written entirely in Java and released under the Apache License 2.0. Functionality includes low-level image processing, camera calibration, feature detection/tracking, structure-from-motion, classification, and recognition.
The bleeding edge source code can be obtained by cloning the git repository.
git clone -b SNAPSHOT --recursive https://github.com/lessthanoptimal/BoofCV.git boofcv
Is the data directory empty? That's because you didn't follow instructions and skipped --recursive. Fix that by doing the following.
cd boofcv
git submodule update --init --recursive
Know what you're doing and you just want to see something running? Then run the commands below! Each jar will open a window, then to run an application just double click on its name.
cd boofcv
./gradlew examples
java -jar examples/examples.jar
./gradlew demonstrations
java -jar demonstrations/demonstrations.jar
All the code for what you see is in boofcv/examples and boofcv/demonstrations. Example code is designed to be easy to understand so look there first.
BoofCV is on Maven Central and can be easily added to your Maven, Gradle, ...etc projects. It's divided up into many modules. The easiest way to include the critical modules is to have your project dependent on 'core'.
For Maven projects:
<dependency>
<groupId>org.boofcv</groupId>
<artifactId>boofcv-core</artifactId>
<version>0.31</version>
</dependency>
There are also several integration modules which help BoofCV interact with external projects. A list of those is included below:
Name | Description |
---|---|
boofcv-core | All the core libraries without any of the integration modules listed below |
boofcv-android | Useful functions for working inside of Android devices. |
boofcv-javacv | JavaCV is a wrapper around OpenCV mainly for file IO. |
boofcv-ffmpeg | javacpp-presets their ffmepg wrapper is used for reading video files. |
boofcv-jcodec | JCodec is a pure Java video reader/writer. |
boofcv-openkinect | Used the Kinect RGB-D sensor with BoofCV. |
boofcv-swing | Visualization using Java Swing |
boofcv-WebcamCapture | A few functions that make WebcamCapture even easier to use. |
Directory | Description |
---|---|
applications/ | Helpful applications |
data/ | Directory containing optional data used by applets and examples. |
demonstrations/ | Demonstration code which typically lets experiment by changing parameters in real-time |
examples/ | Set of example code designed to be easy to read and understand. |
integration/ | Contains code which allows BoofCV to be easily integrated with 3rd party libraries. Primary for video input/output. |
main/ | Contains the source code for BoofCV |
Building and installing BoofCV into your local Maven repository is easy[1] using the gradlew script:
cd boofcv
./gradlew assemble # Creates auto generated files
./gradlew install # Installs it into the local maven repository
If you wish to have jars instead, the following commands are provided.
./gradlew oneJarBin # Builds a single jar with all of BoofCV in it
./gradlew createLibraryDirectory # Puts all jars and dependencies into boofcv/library
./gradlew alljavadoc # Combines all JavaDoc from all sub-porjects into a single set
[1] A couple of the integration submodules have a custom build process that can't be performed by Gradle. The script is smart enough to ignore modules and tell you that it is doing so if you haven't configured it yet.
IntelliJ is the recommended IDE for use with BoofCV. With IntelliJ you can directly import the Gradle project.
The easiest way to import the project is to use Gradle to generate an Eclipse project.
cd boofcv
./gradlew eclipse
Then in Eclipse; 1) "import existing projects", 2) Select your BoofCV directory, 3) Click Finish. You can also install a Gradle plugin to Eclipse and import the project directory. That's left as an exercise for the reader.
Core BoofCV modules depends on the following libraries
The following is required for unit tests
Code from the following libraries has been integrated into BoofCV
The optional sub-projects in integration also have several dependencies. See those sub-projects for a list of their dependencies.
For questions or comments about BoofCV please use the message board. Only post a bug report after doing some due diligence to make sure it is really a bug and that it has not already been reported.
FAQs
BoofCV is an open source Java library for real-time computer vision and robotics applications.
We found that org.boofcv:boofcv-javafx demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.