January 21, 2022
APIs: scaling up AR capabilities
An API (Application Programming Interface) allows applications to communicate. Serving as an access point to an app, API enables users to access a database, request and retrieve information, or even alter data on other applications.
In this article, we get you familiar with the functionality of the Wikitude Studio and explain how you can benefit from using Studio API in your AR app.
Introduction to Wikitude Studio API
Wikitude’s Studio is an easy-to-use, drag and drop, web-based AR content manager. Using Studio, you can easily create two types of targets(image targets (2D items) and object targets (3D items)) to further augment for your JS-based app. On top of that, you can add simple augmentations to test your targets and their position.
Not sure if the image target quality is good enough? Use the rating indicating the quality of an image target as a guide. Wikitude Studio API also enables conversion of image target collections to cloud archives and their management, making it possible to work with cloud-based recognition instead of on-app recognition. You can create and host your AR projects in Studio and link them directly to your app without exporting and pushing app updates.
What does the Studio API do?
Studio API allows you to access all the functionality mentioned above without logging in to Wikitude Studio. You can have your app or system programmatically communicate with the engine behind Wikitude Studio. The keyword here is “programmatically,” meaning the flow enables simplified app development, design, and administration and provides more flexibility. In practical terms, it allows users to quickly scale up and integrate AR capabilities into existing architecture.
How can Studio API benefit your business: use cases
Now, let’s see some real situations where Studio API can come in handy.
- Create the project for each of the targets your customers upload in your CMS
Studio API can be integrated into your own CMS, making it easier to maintain collections and content automatically. Say you run a printing photo service and an accompanying app. The end-customer can upload pictures and add digital content associated with that photo: a video, a song, an animation, or GIF. By scanning a printed image with the app, the customer can access an AR experience that enhances a memory or a moment captured on the photo.
Creating the image targets, assigning augmentations to the targets, and publishing content can be managed programmatically, enabling you to design the user interaction the way you want to.
Similar functionality could be used by a postcard service, corporate merchandise producers, and other services.
- Easily manage image targets and have your app make updates in the background
When working with fast-changing content, numerous images, and heavy augmentations, we discourage storing your targets and augmentations in the app. Offline recognition will force you to redeploy the app frequently and make the size of the app massive. That’s where Wikitude cloud-based recognition comes to the rescue.
Imagine a publisher (just like PAPER.plus) issuing analog books and magazines with an extra AR layer. Such a service can have one app giving access to all the AR experiences associated with each printed item. As the new books and magazines are published, the publisher simply programmatically adds fresh digital content to the server, making it available for the users in the app via cloud-based recognition.
Wikitude cloud-based recognition provides an opportunity to work with a target collection containing up to 50,000 images. Otherwise, you are limited to 1,000 target images per active target collection, and only one group can be active at a time. This flow can lead to a longer recognition speed, and the end-user will need to switch manually between collections. The functionality could be extended to many other fields, such as education, tourism, art, and culture.
- Integrate the AR functionality with already existing architecture and automatically grab data from that closed system
The Studio API can also be used for 3D items. By having the 3D models and the material file of a machine, a robot, or part of an assembly line, you can use that information and render images of that specific machinery. The Studio engine will automatically process those images via the API to create object targets, while the API will help position augmentations.
Using such AR experience lets employees detect and precisely localize malfunctions on the production line by grabbing data from other parts of the system, such as live sensors, measurements, and machinery history. The factory can leverage its existing training material or repairment specifications and overlay AR instructions on the machines, reducing the time required to identify and fix issues.
Wikitude Plugins API
- Integrate with OCR and code readers
What else can you achieve? The Plugins API can trigger AR content via QR code and barcode reader or add text recognition. Our client Anyline‘s text recognition API allows apps to read text, gift cards codes, bank slips, numbers, energy meters, and much more. The company’s solutions have been used by Red Bull Mobile, PepsiCo, and The World Food Program.
Anyline barcode reader
- Build remote assistance app by leveraging Wikitude’s instant tracking
Typically, our engine is set up to recognize targets in the camera feed. With the Plugins API, you can set specific images as input rather than grab them from the camera feed. Where does that come in handy? That is an implementation-specific for remote support solutions, where one needs to broadcast a user screen to another user. Scope AR used this functionality when launching WorkLink Remote Assistance, their AR remote assistance tool. They required a markerless tracking provider to complement the plugin they created, and we were happy to support it with our technology.
- Augment the human body
Another use case that we’ve often encountered is adding face detection, hand detection, or body detection. To use it, you need a library specialized in one of those detection functions and plug Wikitude in it. It will take over the processing and rendering of AR content. Watch our detailed face detection sample to learn more.
Connecting with a face tracking library via the Plugins API is not the only way to create this type of AR experience in combination with Wikitude. Alternatively, you could access Face and Body tracking from ARKit or ARcore via AR Bridge in our Unity Expert Edition SDK.
Wikitude AR Bridge
As you already know, an API (Application Programming Interface) allows applications to communicate with one another. Wikitude’s AR Bridge, part of the Unity Expert Edition SDK, has similar functionality: it provides access to the tracking facilities of other native platforms, e.g., ARKit and ARCore. The AR Bridge enhances Wikitude’s image and object tracking by tapping into external tracking capabilities. There are two options:
- Internal: this is a direct communication to ARKit and ARCore maintained by Wikitude and, at the moment, it offers basic positional tracking (no plane detection or more advanced tracking);
- Plugin: allows an indirect connection to any tracking facility, pre-existing or written by developers. As an example, we provide integration with Unity’s AR Foundation plugin.
We provide a ready-made plugin for Unity’s AR Foundation that developers can use immediately. The plugin uses AR Bridge to inform the SDK about tracking. All current and future AR Foundation features work similarly to what we referred to as 3rd party libraries in the Plugins API context.
However, plugins can be developed by anyone, not just by Wikitude. For example, a company is building glasses with its tracking system and integrating with Wikitude. Since they are not using ARKit or ARCore, the internal AR Bridge won’t be a default. Instead, they can create their plugin and have this custom solution work fast inside our SDK.