Computer Vision and AR libraries availabe for Android?
I am starting out as an Android Developer, and I would like to know if there are any Computer vision libraries or Augmented Reality libraries for the Android SDK, as I am planning to use these libraries for a mobile app.
I have read that if I download the NDK, I might be able to "开发者_高级运维import/use" the C openCV, and ARtoolkit libraries, but I am wondering if this is possible, or if there is a better and easier way of using these tools.
Android apps are programmed in Java, yet OpenCV & ARtoolkit use C/C++. Is there any way to use these libraries?
There are a number of wrappers for OpenCV available. For Java you might check JavaCV out.
To my knowledge, there is GSoC activity on AR with OpenCV on Android, but they seem to use C++.
Qualcomm is working on an Augmented Library for Android. As was mentioned opencv is also an option.
I would like to know if there are any Computer vision libraries or Augmented Reality libraries for the Android SDK
In the SDK? No. There are existing AR applications for Android (Layar, WIKITUDE) that you may wish to use as your foundation.
Is there any way to use these libraries?
A quick search via Google turns up this and this.
Layar has made Layar Vision available to developers:
Layar Vision uses detection, tracking and computer vision techniques to augment objects in the physical world. We can tell which objects in the real world are augmented because the fingerprints of the object are preloaded into the application based upon the user’s layer selection. When a user aims their device at an object that matches the fingerprint, we can quickly return the associated AR experience.
[...]
Layar Vision will be applied to the following Layar products:
- 6.0 version of Layar Reality browser on Android and iPhone iOS platforms.
- iPhone Layar Player SDK v2.0.
- The first release of an Android Layar Player SDK.
- Layar Connect v2.0.
The simplest solution is to create a Vision layer, then use launcher creator for Android to create a layer launching app.
You can code in Java using OpenCV4Android, the official Android port of OpenCV. If you want to use native C++ OpenCV code, check out the Android NDK instead.
There's a new option for CV on Android, the Google Mobile Vision API. The API is exposed through com.google.android.gms.vision
and lets you detect various types of objects (faces, barcodes, and facial features) given an arbitrary image bitmap.
In addition, Google provides the Cardboard VR library and a Unity plugin to make it easier for you to develop VR applications - such applications could include AR based on Mobile Vision if you integrated the phone's camera.
Now Google offers us 2 powerful SDKs: ARCore and ML Kit.
ARCore
API has such important features as Augmented Images, Augmented Faces and Cloud Anchors. It supports Kotlin/Java languages, debugging apps on Emulator (AVD) and physically based rendering (PBR) with a help of Sceneform.
ML Kit
API brings Google’s machine learning expertise to mobile developers in a powerful and easy-to-use package. Although ML Kit is still in beta stage it allows you to work with such important features as: Image Labelling, Text Recognition, Face Detection, Barcode Scanning, and Landmark Detection.
精彩评论