Build AR app using Vuforia

Feb 05 2019Written by Manektech Team

Augmented Reality: Augmented reality is really a broad concept that make many different forms. The thought can be connected to stimulation, science, military, training, and so on. What these applications all share for all intents and purpose, however, is a real time connection between the physical world and the digital. Games like Pokemon GO revealed the potential for commercial success of this technology.

 

Vuforia: Vuforia is an augmented reality software development kit (SDK) for mobile devices that enables the creation of augmented reality applications. It uses computer vision technology to recognize and track planar images (Image Targets). This allows putting virtual 3D objects in relation to real-world objects at the camera screen.

Initially created by Qualcomm and as of recently bought by PTC, Vuforia is on its 6th variant. Its SDK is always advancing and is good with Android, iOS, UWP, and Unity. Lamentably, Vuforia isn't open source, however its value extend is sensible, and there is no in advance expense for improvement or instruction. You can make practically any sort of AR encounter on the most well known versatile stages utilizing Vuforia. Latest, Vuforia Engine 8.0 is available now.

Brief Overview
Vuforia is designed around three main concepts: Device/Camera, Tracking, and Rendering.
(i)Device/Camera
Everything to do with managing the details about the hardware parts of an AR/VR system.
Device
EyewearDevice
CameraDevice

(ii)Tracking
Everything to do with detecting and tracking specific details in the world presented to the device via the camera or other external sensors.
TrackerManager, Tracker and subclasses, and Trackable and subclasses
TrackableResult
State

(iii)Rendering
Everything to do with creating visual representations of the world and doing visual augmentation (registered experiences).
Renderer
RenderingPrimitives (projection matrices and viewport).

Vuforia Features:
Vuforia Engine's acknowledgment and following abilities can be used on a variety of images and objects.
Model Targets are allow you to recognize objects by shape using pre-existing 3D models. Place AR content on a wide variety of items like industrial equipment, vehicles, toys, and home appliances.
Images Targets are way to put AR content onto flat images, such as print media and product packaging.
Object Targets are related by scanning an object. They are a good option for toys and other products with rich surface details and a consistent shape.
Multi-Targets are created using more than one Image Target and can be arranged into regular geometric shapes (e.g. boxes) or in any arbitrary arrangement of planar surfaces.
Cylinder Targets are recognize images wrapped onto objects that are approximately cylindrical in shape (e.g. beverage bottles, coffee cups, soda cans).
VuMarks These are customized markers that can encode a range of data formats. They support both unique identification and tracking for AR applications.
External Camera Access video data from a camera outside of the one in a phone or tablet when creating AR experiences.
Ground Plane Enables you to place content on horizontal surfaces in the environment like tables and floors.

Getting started with Vuforia
Make an application in Vuforia ,you have to create an account in Vuforia’s Developer Portal.
(i) Create License key : A license key is unique ID which is required to create an application. Go to Develop tab and press Get Development Key button. Create a new project and when it appears on the list, go into project details. You have to copy the license key of the app. It is required by Vuforia to work.

Now, Go to Target Manager subtab . There you can make a database of objects that Vuforia will be able to recognize. There are 3 types of Database 1)Device 2)Cloud 3)VuMark. Select Device database option (it is the only possible option in the free version of Vuforia)

Getting started with Vuforia Android & iOS:
We will create an Android app that will recognize an image in the real world and display its 3D model. To get started, Go to download tab and download android sdk.

As should be obvious the SDK is accessible for Android, iOS and Unity. You can discover more example from : https://developer.vuforia.com/downloads/tests . From the above page you have to download, in the "Center Features" segment, the Vuforia Sample Core for Android, check the page there are a great deal of material here: Digital Eyewear precedents (Google Carboard rules!), Advanced Topics and Vuforia Web Services.

Android: Unzip Vuforia Samples, we'll utilize the extricated envelope as base for our test, open Android Studio and pick "Import venture", select the Vuforia Samples organizer, set an Import Destination Directory, keeps all the import choices, you need to set Vuforia.jar way alter the field with the area of Vuforia.jar contained in the SDK recently downloaded tap on Finish.

You have to make a"libs"folder in "application" organizer of your venture and move Vuforia.jar record from the: /your_project_path/VuforiaSampleProject/application/src/principle/java/Vuforia.jar to "libs" envelope.

Presently you have to change your module build.gradle (not the task one!) record, include these lines toward the end:
dependencies {
implementation fileTree(dir: 'libs', include: '*.jar')
}
Upon startup of the Vuforia Engine Samples app, a main menu is shown, from which you can select a specific sample feature:

iOS: Vuforia Engine 4.0 fully supports iOS 8 and 64-bit ARM architecture, and the Vuforia Engine Samples for iOS have also been updated to correctly build and run in 64-bit mode. The newly released Vuforia Sample projects already come with the correct Xcode Build Settings to support both the 32-bit (armv7, armv7s) and the 64-bit (arm64) modes.
Vuforia Engine applications must be deployed to a device to run; they can't be kept running in the iOS simulator. You should select in the iOS Developer program to convey applications to an iOS devices. Download vuforia-sdk-ios-x-x-x.zip from the page .
When you have unarchived the document, Vuforia Engine will be introduced in an directory which will referred as the vuforia-sdk directory.

Requirement
Xcode 9.2
iOS 11.2
Vuforia SDK for iOS v7.5.20

Vuforia Engine Samples for iOS should be added to the examples registry of the Vuforia Engine for iOS establishment.
Download the Vuforia Tests that arrive in a compressed archive and extend these into their own directory.
Copy the examples into the Vuforia Engine installation directory so it would appear that this:

Setup

  • Download Vuforia SDK for iOS.
    Vuforia SDK
  • Put the SDK on your path as like bellow:
    VuforiaSampleSwift/VuforiaSampleSwift/vuforia-sdk-ios-7.5.20
  • Download Vuforiat Sample Targets.
    Vuforiat Sample
  • Put your targets on your path as like bellow:
    VuforiaSampleSwift/VuforiaSampleSwift/VuforiaAssets/ImageTargets
  • If you needs to fix to links to these files and settings in project, fix it.
  • If you failed to build, check Header Search Paths and Library Search Paths in Build Settings.
  • Set your license Key and data Set File in ViewController.swift.

Conclusion: There are lots of possibilities to explore with augmented reality, and we're simply beginning to scratch its surface. Many trust that AR will be a piece of our future and that we'll utilize it on an everyday basis. This is a field that guarantees to grow a ton in the coming years, and Vuforia gives us cool instruments to create engaging experiences.

Contact us

Here to Help ambitious people TRANSFORM the Digital Solutions!