JavaCV
======
[![Join the chat at https://gitter.im/bytedeco/javacv](https://badges.gitter.im/bytedeco/javacv.svg)](https://gitter.im/bytedeco/javacv?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.bytedeco/javacv/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.bytedeco/javacv)
Introduction
------------
JavaCV uses wrappers from the [JavaCPP Presets](https://github.com/bytedeco/javacpp-presets) of commonly used libraries by researchers in the field of computer vision ([OpenCV](http://opencv.org/), [FFmpeg](http://ffmpeg.org/), [libdc1394](http://damien.douxchamps.net/ieee1394/libdc1394/), [PGR FlyCapture](http://www.ptgrey.com/products/pgrflycapture/), [OpenKinect](http://openkinect.org/), [librealsense](https://github.com/IntelRealSense/librealsense), [CL PS3 Eye Driver](https://codelaboratories.com/downloads/), [videoInput](http://muonics.net/school/spring05/videoInput/), [ARToolKitPlus](http://studierstube.icg.tugraz.at/handheld_ar/artoolkitplus.php), and [flandmark](http://cmp.felk.cvut.cz/~uricamic/flandmark/)), and provides utility classes to make their functionality easier to use on the Java platform, including Android.
JavaCV also comes with hardware accelerated full-screen image display (`CanvasFrame` and `GLCanvasFrame`), easy-to-use methods to execute code in parallel on multiple cores (`Parallel`), user-friendly geometric and color calibration of cameras and projectors (`GeometricCalibrator`, `ProCamGeometricCalibrator`, `ProCamColorCalibrator`), detection and matching of feature points (`ObjectFinder`), a set of classes that implement direct image alignment of projector-camera systems (mainly `GNImageAligner`, `ProjectiveTransformer`, `ProjectiveColorTransformer`, `ProCamTransformer`, and `ReflectanceInitializer`), a blob analysis package (`Blobs`), as well as miscellaneous functionality in the `JavaCV` class. Some of these classes also have an OpenCL and OpenGL counterpart, their names ending with `CL` or starting with `GL`, i.e.: `JavaCVCL`, `GLCanvasFrame`, etc.
To learn how to use the API, since documentation currently lacks, please refer to the [Sample Usage](#sample-usage) section below as well as the [sample programs](https://github.com/bytedeco/javacv/tree/master/samples/), including two for Android (`FacePreview.java` and `RecordActivity.java`), also found in the `samples` directory. You may also find it useful to refer to the source code of [ProCamCalib](https://github.com/bytedeco/procamcalib) and [ProCamTracker](https://github.com/bytedeco/procamtracker) as well as [examples ported from OpenCV2 Cookbook](https://github.com/bytedeco/javacv-examples/) and the associated [wiki pages](https://github.com/bytedeco/javacv-examples/blob/master/OpenCV2_Cookbook).
Please keep me informed of any updates or fixes you make to the code so that I may integrate them into the next release. Thank you! And feel free to ask questions on [the mailing list](http://groups.google.com/group/javacv) if you encounter any problems with the software! I am sure it is far from perfect...
Downloads
---------
To install manually the JAR files, obtain the following archives and follow the instructions in the [Manual Installation](#manual-installation) section below.
* JavaCV 1.3 binary archive [javacv-platform-1.3-bin.zip](http://search.maven.org/remotecontent?filepath=org/bytedeco/javacv-platform/1.3/javacv-platform-1.3-bin.zip) (189 MB)
* JavaCV 1.3 source archive [javacv-platform-1.3-src.zip](http://search.maven.org/remotecontent?filepath=org/bytedeco/javacv-platform/1.3/javacv-platform-1.3-src.zip) (437 KB)
The binary archive contains builds for Android, Linux, Mac OS X, and Windows. The JAR files for specific child modules or platforms can also be obtained individually from the [Maven Central Repository](http://search.maven.org/#search|ga|1|bytedeco).
We can also have everything downloaded and installed automatically with:
* Maven (inside the `pom.xml` file)
```xml
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacv-platform</artifactId>
<version>1.3</version>
</dependency>
```
* Gradle (inside the `build.gradle` file)
```groovy
dependencies {
compile group: 'org.bytedeco', name: 'javacv-platform', version: '1.3'
}
```
* sbt (inside the `build.sbt` file)
```scala
libraryDependencies += "org.bytedeco" % "javacv-platform" % "1.3"
```
This downloads binaries for all platforms, but to get binaries for only one platform we can set the `javacpp.platform` system property (via the `-D` command line option) to something like `android-arm`, `linux-x86_64`, `macosx-x86_64`, `windows-x86_64`, etc. Please refer to the [README.md file of the JavaCPP Presets](https://github.com/bytedeco/javacpp-presets#downloads) for details. Another option available for Scala users is [sbt-javacv](https://github.com/bytedeco/sbt-javacv).
Required Software
-----------------
To use JavaCV, you will first need to download and install the following software:
* An implementation of Java SE 7 or newer:
* OpenJDK http://openjdk.java.net/install/ or
* Sun JDK http://www.oracle.com/technetwork/java/javase/downloads/ or
* IBM JDK http://www.ibm.com/developerworks/java/jdk/
Further, although not always required, some functionality of JavaCV also relies on:
* CL Eye Platform SDK (Windows only) http://codelaboratories.com/downloads/
* Android SDK API 14 or newer http://developer.android.com/sdk/
* JOCL and JOGL from JogAmp http://jogamp.org/
Finally, please make sure everything has the same bitness: **32-bit and 64-bit modules do not mix under any circumstances**.
Manual Installation
-------------------
Simply put all the desired JAR files (`opencv*.jar`, `ffmpeg*.jar`, etc.), in addition to `javacpp.jar` and `javacv.jar`, somewhere in your class path. Here are some more specific instructions for common cases:
NetBeans (Java SE 7 or newer):
1. In the Projects window, right-click the Libraries node of your project, and select "Add JAR/Folder...".
2. Locate the JAR files, select them, and click OK.
Eclipse (Java SE 7 or newer):
1. Navigate to Project > Properties > Java Build Path > Libraries and click "Add External JARs...".
2. Locate the JAR files, select them, and click OK.
IntelliJ IDEA (Android 4.0 or newer):
1. Follow the instructions on this page: http://developer.android.com/training/basics/firstapp/
2. Copy all the JAR files into the `app/libs` subdirectory.
3. Navigate to File > Project Structure > app > Dependencies, click `+`, and select "2 File dependency".
4. Select all the JAR files from the `libs` subdirectory.
After that, the wrapper classes for OpenCV and FFmpeg, for example, can automatically access all of their C/C++ APIs:
* [OpenCV documentation](http://docs.opencv.org/master/)
* [FFmpeg documentation](http://ffmpeg.org/doxygen/trunk/)
Sample Usage
------------
The class definitions are basically ports to Java of the original header files in C/C++, and I deliberately decided to keep as much of the original syntax as possible. For example, here is a method that tries to load an image file, smooth it, and save it back to disk:
```java
import static org.bytedeco.javacpp.opencv_core.*;
import static org.bytedeco.javacpp.opencv_imgproc.*;
import static org.bytedeco.javacpp.opencv_imgcodecs.*;
public class Smoother {
public static void smooth(String filename) {
IplImage image = cvLoadImage(filename);
if (image != null) {
cvSmooth(image, image);
cvSaveImage(filename, image);
cvReleaseImage(image);
}
}
}
```
JavaCV also comes with helper classes and methods on top of OpenCV and FFmpeg to facilitate their integration to the Java platform. Here is a small demo program demonstrating
没有合适的资源?快使用搜索试试~ 我知道了~
javacv-platform-1.3-bin.zip
共114个文件
jar:80个
java:19个
jpg:7个
5星 · 超过95%的资源 需积分: 1 1.1k 下载量 125 浏览量
2016-12-23
12:02:08
上传
评论 7
收藏 188.58MB ZIP 举报
温馨提示
javacv-platform-1.3-bin.zip包含javacv1.3版本所有依赖包
资源推荐
资源详情
资源评论
收起资源包目录
javacv-platform-1.3-bin.zip (114个子文件)
FaceApplet.html 677B
ffmpeg-linux-ppc64le.jar 12.97MB
ffmpeg-android-x86.jar 12.25MB
opencv-android-x86.jar 11.95MB
ffmpeg-windows-x86_64.jar 11.86MB
ffmpeg-linux-x86_64.jar 11.45MB
ffmpeg-windows-x86.jar 11.44MB
ffmpeg-android-arm.jar 11.08MB
ffmpeg-linux-x86.jar 10.65MB
ffmpeg-macosx-x86_64.jar 10.47MB
ffmpeg-linux-armhf.jar 10.08MB
opencv-windows-x86_64.jar 9.85MB
opencv-linux-ppc64le.jar 9.54MB
opencv-android-arm.jar 8.96MB
opencv-macosx-x86_64.jar 8.14MB
opencv-windows-x86.jar 8.08MB
opencv-linux-x86_64.jar 7.75MB
opencv-linux-armhf.jar 7.65MB
opencv-linux-x86.jar 7.59MB
opencv.jar 669KB
librealsense-linux-x86_64.jar 474KB
librealsense-linux-x86.jar 467KB
artoolkitplus-android-x86.jar 395KB
javacv.jar 367KB
artoolkitplus-android-arm.jar 311KB
javacpp.jar 306KB
flycapture-linux-x86_64.jar 236KB
flycapture-windows-x86_64.jar 236KB
ffmpeg.jar 231KB
flycapture-linux-x86.jar 216KB
libdc1394-linux-ppc64le.jar 212KB
libdc1394-windows-x86.jar 204KB
libdc1394-macosx-x86_64.jar 198KB
libdc1394-linux-x86_64.jar 193KB
artoolkitplus-linux-ppc64le.jar 189KB
libfreenect-windows-x86_64.jar 188KB
flycapture-windows-x86.jar 185KB
libdc1394-windows-x86_64.jar 184KB
flycapture-linux-armhf.jar 182KB
libdc1394-linux-x86.jar 181KB
artoolkitplus-linux-x86_64.jar 170KB
artoolkitplus-macosx-x86_64.jar 166KB
libfreenect-windows-x86.jar 164KB
artoolkitplus-linux-x86.jar 155KB
artoolkitplus-windows-x86_64.jar 152KB
artoolkitplus-linux-armhf.jar 140KB
flycapture.jar 139KB
libdc1394-linux-armhf.jar 125KB
artoolkitplus-windows-x86.jar 121KB
libfreenect-linux-x86_64.jar 114KB
libfreenect-linux-x86.jar 109KB
libfreenect-macosx-x86_64.jar 109KB
libfreenect-linux-ppc64le.jar 85KB
libfreenect-linux-armhf.jar 72KB
videoinput-windows-x86_64.jar 46KB
librealsense.jar 44KB
flandmark-linux-ppc64le.jar 44KB
flandmark-android-x86.jar 42KB
flandmark-linux-x86_64.jar 41KB
flandmark-windows-x86_64.jar 40KB
flandmark-linux-x86.jar 40KB
flandmark-macosx-x86_64.jar 40KB
videoinput-windows-x86.jar 37KB
flandmark-android-arm.jar 37KB
flandmark-linux-armhf.jar 34KB
flandmark-windows-x86.jar 32KB
libdc1394.jar 30KB
artoolkitplus.jar 24KB
libfreenect.jar 21KB
videoinput.jar 15KB
flandmark.jar 11KB
artoolkitplus-platform.jar 2KB
javacv-platform.jar 2KB
flandmark-platform.jar 2KB
libfreenect-platform.jar 2KB
libdc1394-platform.jar 2KB
ffmpeg-platform.jar 2KB
opencv-platform.jar 2KB
flycapture-platform.jar 2KB
librealsense-platform.jar 2KB
videoinput-platform.jar 2KB
RecordActivity.java 21KB
Square.java 13KB
BlobDemo.java 11KB
FacePreview.java 11KB
WebcamAndMicrophoneCapture.java 10KB
PrincipalComponentAnalysis.java 8KB
FaceApplet.java 6KB
HoughLines.java 5KB
TemplateMatching.java 5KB
CaffeGooglenet.java 4KB
ColoredObjectTrack.java 4KB
MotionDetector.java 4KB
FaceRecognizerInVideo.java 4KB
RLSA.java 4KB
OpticalFlowTracker.java 4KB
BioInspiredRetina.java 3KB
OpenCVFaceRecognizer.java 3KB
PacketRecorderTest.java 2KB
OpticalFlowDense.java 2KB
共 114 条
- 1
- 2
eguid_1
- 粉丝: 1w+
- 资源: 66
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
- 6
前往页