The app is underpinned by 3 software development kits (SDK), ARCore, Tenserflow and Android Studio.
ARCore
ARCore is a platform which streamlines the development of AR apps. The SDK combines 3 features which significantly reduces the complexity in programming an AR app. These 3 features are: 1) Motion tracking, 2) Environmental understanding and 3) Light estimation. These components allow the app to project objects onto the real world and tracks environmental changes from the user’s point of view.
Tensorflow / Tensorflow Lite
To track the user’s progress, machine learning is used to identity the object in camera’s field of view. Coding how an object looks like from every angle, light intensity etc is not possible. Hence, machine learning would allow the phone to infer if the object is present using past experience. However, tensorflow-lite is used instead due to a phone’s limited processing power. Nonetheless, tensorflow lite provides good inferences despite the lack of computational power.
Android Studio
Android studio is an integrated development environment where developers are able to design the application. It provides an android emulator for developers to test on a variety of devices. The built-in profilers would help us optimise the app’s performance and identify any bottle necks present in the application.
Images taken from:
- https://www.androidguys.com/wp-content/uploads/2018/06/Google-ARCore.png
- https://www.tensorflow.org
- https://developer.android.com/studio