This Augmented Reality application was built to showcase contactless shopping experience for customers.
It has been built using Untiy 3D engine + Vuforia SDK.
Unity enables you to build an android app and it integrates with Vuforia SDK which does the heavy lifting with Image and 3D Object recognition capabilities for the app. You can read more about it here: https://library.vuforia.com/getting-started/overview.html
All the apps mentioned below can be downloaded from this drive link: https://drive.google.com/drive/folders/1c0Ox4Ag_rkQGjc_RjZRiEJDhMQ9dEHMR?usp=sharing
For images, we need to train the model by uploading the image to Vuforia developer portal. It will extract relevant features (like SIFT) and train a binary classifier to detect the image. The trained model can be downloaded onto the system and packaged along with the unity app for offline detection.
Note: Below steps are applicable for Android devices only.
Steps:
- The model was trained to recognise the image in "Road1.tex.jpg" and overlay it with a 3D object (easily available in Unity store).
- Download and install the ARImgDemo.apk file. Open the app. Click on "Let's Start".
- Open the image "Road1.tex.jpg" and scan it using the app. You should be able to see a tiny 3D car overlaid on the image if the detection is successful.
For 3D objects, we need to scan the object full 360deg by placing it on a marker reference provided by Vuforia so that the object can be detected accurately from any viewing angle. The SDK also lets you know the quality of the scan and if it needs to be rescanned. Rest of the process is very similar to image recognition.
For detection of a 3D object through the ARObjDemo.apk file (another app), you need to have a (pre-scanned) 3D object with you which is not possible :(. So won't be able to showcase this.