This post will give you an insight of our experiments and results with AR tools like ARCore, ARKit and Vuforia in terms of features. To understand this blog better, kindly read our precursor to this one here. Since the features of these tools are largely familiar exploring and comparing them in terms of stability would give us new and better perspectives.
Table of contents
Google and Apple have made a giant leap into AR space with the release of ARCore and ARKit. Since, Vuforia has also released a version that supports Motion Tracking and Ground Plane Detection. With these features being relatively new, they also provided a way to integrate Vuforia with ARCore/ARKit, and they call it as Vuforia Fusion.
To setup Vuforia Fusion in the project, all that has to be done is configure settings and enable Fusion. Initially, it checks whether the device supports ARCore/ARKit and enables it automatically. If neither are supported, Vuforia uses its own AR features.
In our experiments with these tools, we used the following features and made some significant observations.
- Image Targets:
- Vuforia: It possesses standard techniques to recognise Image Targets and is accurate in augmentation. There is no drift in any angle, even with a change in device orientation.
- ARCore and ARKit: Fairly new to image recognition and not standardised. Augmentation had jerks and drifts many times. These issues occurred even in their sample demo application.
- Motion Tracking
- Vuforia: While walking around the augmentation, the object seemed to rotate to 90 degrees and the resultant camera imaging wasn’t stable.
- ARCore and ARKit: The augmentation drifts by a margin when we change the device orientation or calibrate the focus of the ground plane.
- Ground Plane Detection:
- Vuforia: It does not detect the ground dynamically, but instead it has a predefined plane, on which the model is placed and reacts to the camera angle and gyroscope - that gives an illusion of depth and placement on the ground. It is not compatible with certain iOS devices and versions.
- ARCore and ARKit: It detects the ground plane with the help of a feature points cloud. It is comparatively better and stable unless the the orientation of the device is altered. Augmentation drifts by a margin when we change the device orientation or refocus the ground plane.
- Vuforia Fusion: After following the integration steps mentioned in Vuforia ARcore integration, we couldn’t find any difference in the results. It is assumed that only Vuforia techniques were used over ARCore/ARKit.
|Tools / Techniques||Image Targets||Motion Tracking||Ground Plane Detection|
|Not Stable, unexpected high drifts.||Stable most of the times.||Stable, but drifts due to anchoring issues when we orient the screen.|
|Vuforia||Very Stable||Not Stable, disparity in orientation occurs.||Looks like it detects based on orientation and not with feature points.|
|Vuforia Fusion||Very Stable||Couldn’t see any significant improvement, results are as same as Vuforia.|
Check the sample application demo below for Image Based Augmentation on Vuforia and ARCore:
In all, each tool has its own pros and cons. It is rather advised to choose a tool with features that cater to specific requirements. Here are our inferences:
- Vuforia is the best tool for AR that is image based.
- ARCore/ARKit is apt for Motion Tracking and Ground Plane Detection.
- Vuforia Fusion does not seem to combine the techniques of Vuforia and ARCore/ARKit. We await the next release with improvised integration steps and techniques.