Top 12 augmented reality SDKs
The augmented reality (AR) ecosystem is thriving. If you are a company director or product development manager, now is the best time to consider how you can improve your current software with AR. But before you get started, there are a few things to keep in mind in terms of the right technical approach. Your choise of SDK must depend entirely on the exact requirements of your project. Demand for AR applications is expected to grow over the next three to five years. And when demand begins to thrive, sometimes it’s hard to know where to start finding the right SDK for augmented reality.
What is augmented reality SDK?
The Augmented Reality SDK (Software Development Kit) is the main technological engine of software that powers the development and creation of new AR applications. The role of the AR SDK is to perform the non-trivial task of merging digital content and information with the real world. SDK capabilities will ultimately implement the features of your AR program, so it’s important to choose the right platform based on your project requirements.
The AR SDK is responsible for many of the application components, which are currently available, including content rendering, AR tracking, and scene recognition. Content display refers to digital information and 3D objects that can be overlaid on the real world. Tracking is the “eyes of the program” and the scene recognition element acts as the central nervous system of the program. Each AR SDK has unique features that allow AR developers to recognize, render, and track their applications in the best way.
In 2017, Apple released iOS 11, and the next launch of ARKit became arguably the most significant event in the history of augmented reality technology. ARKit is a unique framework that allows brands and developers to develop and create unprecedented applications for compatible iPhones and iPads (compatible iPhones and iPads must have A9 processor or higher). The ARKit SDK works just like most other AR SDKs, allowing it to combine digital information and three-dimensional objects with the real world, but it offers largely unprecedented accessibility to the number of existing devices that it supports.
ARKit can be run on any device that has an Apple A9, A10, or A11 processor that uses VIO (Visual Inertial Odometry) to track the environment with uninterrupted accuracy. VIO enables ARKit to combine Core Motion data with camera sensor data and enables the development of applications that can define horizontal planes (floors and tables) and vertical planes (walls). This allows ARKit to understand the dynamics and staging of a particular scene, and allows 3D objects to be placed and digital information contextually relevant (for example, because ARKit understands the difference between floor and table, it knows that a bottle of wine is needed put it on the table, not on the floor).
Developers and companies can build applications using ARKit and through third-party 3D engines such as Unity, Unreal Engine and SceneKit.
ARKit provides the following features:
- SLAM tracking (simultaneous localization and mapping) and sensor synthesis
- Estimation of ambient light
- Estimation of sizes and distances
- Evaluation of vertical and horizontal planes with major boundaries
- Stable and fast motion tracking
ARCore is Google’s own augmented reality SDK. Like ARKit, it allows brands and developers to launch AR apps on compatible Google smartphones and tablets. One of the most notable features of ARCore is that it also supports iOS-enabled devices and gives developers unmatched user access on both platforms. ARCore has three significant features that allow developers to combine the real world with the virtual:
- Light estimation: Evaluates lighting conditions in the real world
- Understanding of the environment: Defines the size and location of vertical, horizontal and angular surfaces
- Motion Tracking: Understands the position of the phone in according to its surroundings.
All the benefits of ARCore are based on two key elements: real-time tracking and calculating of the placement of the device, combined with the integration of virtual objects into the real environment. It allows businesses and brands to develop large and diverse applications supported by mobile technology, and to add 3D objects, text and digital information directly to the real-world environment. ARCore is free for developers and supports a variety of Android (and iOS)-based smartphones and tablets, including the Samsung Galaxy and Google Pixel, as well as a lot of other devices.
Vuforia is an augmented reality SDK that enables businesses and developers to quickly create highly reliable AR-enabled mobile phone applications. The Vuforia SDK uses computer vision technology to identify and track targets and 3D objects in real time. This functionality allows businesses and AR development agencies to target and deploy virtual objects, including 3D models and other content, in a real-world environment. 3D models and digital information can be superimposed on a real scene and viewed with an AR-enabled smartphone or tablet.
Vuforia Augmented Reality SDK is capable of supporting a wide variety of 3D and 2D targets, including multi-purpose 3D configurations, non-marker targets, and fiducial markers called “VuMark”. Some additional features of the Vuforia SDK include localized occlusion detection with virtual buttons, the ability to design and calibrate goal sets while an application is running, and select a target image while the application is running.
Vuforia provides APIs for Java, C ++, and Objective C ++ and .NET through its work with Unity. It means, that with the Vuforia SDK you can develop apps for both iOS and Android, as well as develop Unity AR apps and prototypes that are easily portable on both platforms. This is a great option for businesses and brands, that want to develop applications that cover both iOS and Android, minimizing business and technical risks. This means that AR applications can be developed seamlessly for as many target mobile devices as possible in the shortest possible time.
Wikitude is an SDK specifically designed for the development of mobile applications and AR prototypes. The company was founded in 2008 in Salzburg, Austria. When the Wikitude SDK was first launched, the platform was designed with the primary purpose of allowing AR developers to create augmented reality based on a clear location through the Wikitude World Browser application. And in 2012, Wikitude changed its core technology by launching the Wikitude SDK with geolocation, image tracking and recognition features. All these features are built directly into the main platform.
The Wikitude SDK is now a core product of the company and promises developers the ability to create immersive AR mobile applications in the shortest possible time. The Wikitude SDK now also includes features such as 3D model rendering, placement-based AR, and video overlay. Also, the company implemented SLAM (simultaneous localization and mapping) technology, which facilitates seamless tracking and object recognition, along with instant tracking.
The Wikitude SDK runs on many platforms and is currently available on Windows, iOS, Android and a number of HUDs. Wikitude claims to be the first SDK that focused entirely on a local approach to augmented reality applications for all mobile phone and smart phone platforms.
EasyAR SDK is offered to businesses and developers in two different service packages: EasyAR SDK Basic and EasyAR SDK Pro. The core package promises developers advanced APIs, workspace, and enhanced compatibility. The Pro package is brand new and comes with exclusive features that are not available in the basic package. The basic package is free for developers seeking to develop AR applications and supports the Java API for Android, the Swift API for iOS, and also supports Windows. There are also some additional features supported by the basic package, including video playback, transparent background video playback, QR code scanning, and full integration of Unity.
EasyAR Pro is available with all the features available in the free package, plus SLAM support, 3D object tracking, screen capture, and multiple target detection and tracking.
The key features of EasyAR Pro include: SLAM, 3D object tracking (including real-time 3D object recognition and tracking), screen recording (providing an easy and efficient way to record content AR), planar image tracking (the ability to track and identify flat images in real time), a concise API that integrates with all major mobile AR platforms and content. The EasyAR website is packed with tons of useful information to get your AR application up and running quickly, with comprehensive information and support.
The Kudan AR SDK is a platform designed for AR developers who want to have it all at once. And it works both on the basis of markers and without markings. The main engine of the Kudan SDK is fully engineered by means of C ++ and has a specific architecture designed to provide the fastest and most reliable performance without affecting the memory of your computer or smartphone. This means that the Kudan AR SDK can be used in a variety of scenarios, from HUD specialized support to chipset integration. This means that the size and speed of data processing can be adjusted to the specific needs of the project AR on a case by case basis.
The Kudan AR SDK has a built-in API platform and supports both Objective C (iOS) and Java (Android). At the same time, thanks to the Unity game engine, you have cross-platform support. The Kudan SDK also supports both marker and non-marker tracking, which is great for those AR developers who want to create functionality without marker-based initialization.
The goal of the company is to accelerate the evolution of virtuality (it covers all aspects of augmented, virtual and mixed reality) and robotics (machines, drones and robots) by creating algorithms that are classified as artificial perception (AP). Kudan’s mission is to develop these AP algorithms, which are considered the machine equivalent of human eyes. Combining AI (artificial intellect) and AP, machines are almost at a stage where they can sense and interact with the outside world just like humans, using both eyes and brain.
Onirix promises hassle-free mobile application development with AR, and was designed primarily to offer developers a fast and intuitive experience. Onirix Studio enables businesses and brands to design, host and publish all visual elements of each new AR project that is created on this platform.
The Onirix platform provides a variety of features for each new AR project, including the ability to add specific points of interest based on location, routes, 3D models, and a variety of other information. Onirix uses a cloud-based platform that allows each project to receive the optimum level of resources and have good productivity. All of that provides the optimum level of experience for the mobile user. The Onirix AR SDK is tightly integrated with their native iOS and Android applications.
The Onirix SDK itself was designed specifically to interact with smartphones and tablets with AR support. The SDK offers utilities and libraries for easy and fast application development for Unity, iOS and Android. Their helper REST API makes it easy to use and work with existing datasets in new AR applications. The Onirix team doing a great job of constantly updating the documentation for all supported components and compatible devices. This includes support and documentation for iOS, Android, the ARKit and ARCore libraries. Magic Leap and HoloLens support is expected in the near future.
MaxST’s augmented reality SDK is a complete cross-platform AR-powered engine with all the features that brands and developers may need to build AR applications. The MaxST platform promises competitive prices, coupled with the fast and easy development of AR applications. The MaxST AR SDK provides the following features: instant tracking (providing horizontal and vertical planes to overlay relevant content), visual SLAM (using smartphone camera to create “virtual map” of environment), object tracking (import of map files, created using visual SLAM), image tracking (3D overlay, video and image overlay), marker tracking (overlay on top of 8192 markers provided), and QR / Barcode scanning feature.
The MaxST AR SDK also offers a number of useful features such as cross-platform development capabilities and work across all major platforms including Mac OS, iOS, Android, Windows and Unity 3D. The platform is also compatible with a wide range of HUDs and smart glasses.
9.) Pikkart AR SDK
The Pikkart SDK allows developers to create AR applications, that, they promise, will be easy, simple, fast, reliable, and with inexpensive detection and tracking. The Pikkart AR SDK has four major price levels, starting with the basic version, which is completely free. The free version of the Pikkart AR SDK provides developers with an unlimited number of local markers, one demo application (on iOS or Android) and twenty cloud markers. For a fixed fee of € 299, developers can access all the features available in the free SDK, with additional email support for help and instructions on how to use the platform for optimal effect. There are also two premium tiers, with Cloud Recognition and Cloud API (both cost € 99 per month), providing a wide range of features including unlimited databases, 1,500 cloud markers and email support.
The Pikkart SDK promises to allow developers to create an extremely engaging and immersive AR experience that can be launched on the device in minutes. The platform includes built-in plugins for iOS and Android, as well as integrates with existing Unity and Xamarin projects. The SDK also allows developers to add geolocated advanced markers to develop integrated navigation services.
The DeepAR SDK was originally designed for application developers seeking to create high-quality 3D lenses, masks and special effects that are fully mobile-optimized, in Facebook and Snapchat style via iOS, Android, HTML5 and Unity. The DeepAR SDK integrates seamlessly and quickly into existing projects and supports a huge range of different lenses, effects, masks, and filters to create high-value, consumer-oriented applications and prototypes. The DeepAR platform provides face recognition to detect face and facial features. This is achieved by combining a variety of data models with sophisticated machine learning in 3D. The DeepAR SDK has extremely accurate and fast face recognition combined with chin, eye and nose recognition and is capable of detecting over 68 face points at almost 60 frames per second. The platform is well optimized to detect multiple faces in real time with compatible smartphones and tablets.
DeepAR also has a real-time emotion detection feature that can detect all of a person’s basic emotions: anger, disgust, fear, happiness, sadness. This technology uses proprietary deep learning and neural network models.
11.) Lumin (Magic Leap)
Magic Leap is an American startup founded by Roni Abovitz in 2010. To date, the company has raised over $ 1.4 billion in investments, including investments from companies such as Google and China’s Alibaba. Magic Leap One HUD imposes computer 3D images on real-world objects, “projecting a digital light field into the eyes of the user.”
The Magic Leap Augmented Reality SDK is called the “Lumin SDK” and provides everything, that Unity developers need to get started with Magic Leap One. The Lumin SDK includes a simulator to start exploring the capabilities of the SDK without having to buy HUD in advance, a Unity package compatible with the Magic Leap Zero and Magic Leap Remote iterations to get started quickly, and also includes plenty of samples to demonstrate all the features available to AR developers.
12.) MixedReality Toolkit (HoloLens)
The MixedReality Toolkit consists of a number of components and scripts designed to accelerate the development of augmented reality applications focused on Microsoft HoloLens and other mixed reality headsets based on Windows. The latest version of the MixedReality Toolkit has advanced capabilities and a equipped with a number of new features, including the ability to support a wide variety of virtual and augmented reality platforms beyond their own Mixed Reality product range.
Mixed Reality Toolkit VNext includes numerous APIs to accelerate the development of augmented reality projects for a wide range of supported devices, including:
- Microsoft HoloLens
- Microsoft Immersive (IHMD) Headsets
- Steam VR (HTC Vive / Oculus Rift)
- OpenXR platforms
To start developing applications with the MixedReality Toolkit, you will need Windows 10 FCU, Unity 3D (supports augmented reality project development in Windows 10) and Visual Studio 2017 (You need it to edit code and deploy Universal Windows Platform software packages).
If you own a business or brand and are thinking of developing an augmented reality initiative, now is the best time to start. As technology becomes more sophisticated and the capabilities of new SDKs begin to expand rapidly, the number of AR-related commercial opportunities is also expanding exponentially. If you have not already done so, you should spend some time reviewing the commercial elements of your project and making some calculations based on your return on investment before deciding which SDK will be better for your next AR project.