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